{"version":3,"sources":["webpack:///./src/client/default/js/components/appFlyerComponent.js","webpack:///./src/client/default/js/base/baseComponent.js","webpack:///./src/client/default/js/libs/Axios.js","webpack:///./node_modules/@babel/runtime/helpers/get.js","webpack:///./node_modules/@babel/runtime/helpers/superPropBase.js"],"names":["appFlyerComponent","element","$options","onClick","mountClick","modal","sendPostMsg","this","CUSTOM_MESSAGES","TRACKING_EVENTS","myAccountPromoClick","trackingModal","myAccountPromoClickClose","trackingModalClose","eventName","event","evName","obj","eventValues","getFlyerObject","getPdpObject","getPurchaseObject","getCouponObject","currentTarget","classList","contains","getWishlistObject","getAddCartObject","appPostMessage","Appsflyer","targetClick","target","document","querySelector","$el","addEventListener","trid","eventNameClose","addToCart","updateQty","querySelectorAll","addToWishlist","length","af_flyer_name","name","af_flyer_store","parseInt","store","af_flyer_brand","brand","toLowerCase","price","productPrice","product","JSON","parse","dataset","productJson","categories","productBreadcrumbs","category","type","categoryId","mountAllPdpClick","savedObj","af_price","sales","value","af_content","af_content_id","id","af_content_type","af_currency","currency","af_market_type","items","idList","nameList","catList","typeList","forEach","pr","push","productName","primaryCat","isfood","formattedPrice","replace","af_revenue","parseFloat","af_quantity","qty","af_order_id","orderNumber","af_order_cap","cap","af_order_store_id","af_order_store_city","city","af_order_service_selected","service","af_order_payment_method","payment","promotion_name","couponName","BaseComponent","_componentElement","setAttribute","_checkMessages","compOptions","options","Object","keys","filter","entry","includes","optionValue","cleanEntry","cleanOptionKey","convertType","deepFreeze","getAttribute","events","cb","elements","Bean","on","e","stopPropagation","one","off","fire","container","message","_loading","EMIT","LOADER_EVENTS","show","body","error","icon","setTimeout","hide","option","optionReturn","key","str","charAt","toLocaleLowerCase","slice","BaseGiaComponent","axios","Axios","create","transformRequest","data","headers","skiptransform","entries","formData","FormData","append","recaptchaToken","a","googleRecaptchaAction","googleRecaptchaClientSide","Promise","resolve","reject","window","grecaptcha","ready","execute","action","then","token","defaults","common","interceptors","request","use","config","googleRecaptchaToken","response","commonInterface","CommonInterface","pushState","replaceState","history","redirectUrl","location","href","hrefUrl","paybackParam","isPaybackPopupActive","indexOf","trialParam","subscriptionTrialModalNotEligibleAfterLogin","fromEntries","res","notificationPush","showNotification","pushPromoPre","orderedPush","sort","promoA","promoB","rank","notifications","pushPromoPost","CancelToken","get","post","all","spread","superPropBase","_get","Reflect","module","exports","__esModule","property","receiver","base","desc","getOwnPropertyDescriptor","call","arguments","apply","getPrototypeOf","object","prototype","hasOwnProperty"],"mappings":"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","file":"js/component-appFlyerComponent-js.chunks.js","sourcesContent":["import BaseComponent from '../base/baseComponent';\nimport { appPostMessage } from '../utilities/postMessage';\nimport { get } from '../libs/Axios';\n\nexport default class appFlyerComponent extends BaseComponent {\n  get Messages() {\n    return {\n      [this.CUSTOM_MESSAGES.TRACKING_EVENTS.myAccountPromoClick]: this.trackingModal,\n      [this.CUSTOM_MESSAGES.TRACKING_EVENTS.myAccountPromoClickClose]: this.trackingModalClose\n    };\n  }\n\n  get SELECTORS() {\n    return {\n      ...super.SELECTORS\n    };\n  }\n\n  constructor(element) {\n    super(element);\n    if (this.$options.onClick) {\n      this.mountClick(null, null);\n    } else if (!this.$options.modal) {\n      this.sendPostMsg();\n    }\n  }\n\n  sendPostMsg(eventName, event) {\n    let evName = eventName || this.$options.eventName;\n    var obj = { eventName: evName };\n    switch (evName) {\n      case 'af_flyer_view':\n        obj.eventValues = this.getFlyerObject();\n        break;\n\n      case 'af_content_view':\n        obj.eventValues = this.getPdpObject();\n        break;\n\n      case 'af_purchase':\n        obj.eventValues = this.getPurchaseObject();\n        break;\n\n      case 'promozioni_spesa_online_open':\n        obj.eventValues = this.getCouponObject();\n        break;\n      case 'promozioni_spesa_online_close':\n        obj.eventValues = this.getCouponObject();\n        break;\n      case 'promozioni_spesa_negozio_close':\n        obj.eventValues = this.getCouponObject();\n        break;\n\n      case 'promozioni_spesa_negozio_open':\n        obj.eventValues = this.getCouponObject();\n        break;\n\n      case 'promozioni_spesa_online_copy':\n        obj.eventValues = this.getCouponObject();\n        break;\n\n      case 'promozioni_spesa_negozio_zoom':\n        obj.eventValues = this.getCouponObject();\n        break;\n\n      case 'af_add_to_wishlist':\n        var remove = (event && event.currentTarget && event.currentTarget.classList.contains('is-full')) || false;\n        if (remove) {\n          obj.eventName = 'af_remove_from_wishlist';\n        }\n        obj.eventValues = this.getWishlistObject();\n        break;\n\n      case 'coupon_selection':\n        obj.eventValues = this.getCouponObject();\n        break;\n\n      case 'af_add_to_cart':\n        obj.eventValues = this.getAddCartObject();\n        break;\n\n      case 'remove_from_cart':\n        obj.eventValues = this.getAddCartObject();\n        break;\n\n      default:\n        obj.eventValues = {};\n        break;\n    }\n    appPostMessage({ Appsflyer: obj });\n  }\n\n  mountClick(targetClick, eventName) {\n    let target = targetClick || (this.$options.target ? document.querySelector(this.$options.target) : this.$el);\n    let evName = eventName || this.$options.eventName;\n    target.addEventListener('click', (event) => {\n      this.sendPostMsg(evName, event);\n    });\n  }\n\n  trackingModal({ element, trid }) {\n    if (trid && trid == this.$options.element) {\n      this.sendPostMsg(this.$options.eventName);\n    }\n  }\n\n  trackingModalClose({ element, trid }) {\n    if (trid && trid == this.$options.element) {\n      this.sendPostMsg(this.$options.eventNameClose);\n    }\n  }\n\n  mountAllPdpClick() {\n    var addToCart = this.$el.querySelector('.js-add-to-cart');\n    var updateQty = this.$el.querySelectorAll('.js-update-quantity');\n    var addToWishlist = this.$el.querySelector('.btn-add-to-wishlist ');\n    if (addToCart) {\n      this.mountClick(addToCart, 'af_add_to_cart');\n    }\n    if (updateQty && updateQty.length > 1) {\n      this.mountClick(updateQty[1], 'af_add_to_cart');\n      this.mountClick(updateQty[0], 'remove_from_cart');\n    }\n    if (addToWishlist) {\n      this.mountClick(addToWishlist, 'af_add_to_wishlist');\n    }\n  }\n\n  getFlyerObject() {\n    return {\n      af_flyer_name: this.$options.name, // nome volantino\n\n      af_flyer_store: parseInt(this.$options.store), // store selezionato\n\n      af_flyer_brand: this.$options.brand.toLowerCase() // insegna (express, market, iper)\n    };\n  }\n\n  getPdpObject() {\n    var price = this.$options.productPrice;\n    var product = JSON.parse(this.$el.dataset.productJson);\n    var categories = this.$options.productBreadcrumbs;\n    var category = categories && categories.length > 0 ? categories[categories.length - 1] : null;\n    var type = categories && categories.length > 0 && categories[0].categoryId == 'FOOD' ? 'food' : 'nofood';\n    this.mountAllPdpClick();\n    this.savedObj = {\n      af_price: price && price.sales ? price.sales.value : '', // product price\n\n      af_content: product ? product.name : '', // product name\n\n      af_content_id: product ? product.id : '', // product id\n\n      af_content_type: category ? category.categoryId : '', // product category\n\n      af_currency: price && price.sales ? price.sales.currency : '', // currency in the product details page\n\n      af_market_type: type ? type : '' // type of product (food, nofood)\n    };\n    return this.savedObj;\n  }\n\n  getPurchaseObject() {\n    var items = this.$options.items || null;\n    var idList = [];\n    var nameList = [];\n    var catList = [];\n    var typeList = [];\n    if (items) {\n      items.forEach((pr) => {\n        idList.push(pr.id);\n        nameList.push(pr.productName);\n        catList.push(pr.primaryCat);\n        typeList.push(pr.isfood);\n      });\n    }\n    var formattedPrice = null;\n    if (this.$options.price) {\n      formattedPrice = this.$options.price.replace(/[^0-9.,-]/g, '').replace(',', '.');\n    }\n    return {\n      af_revenue: formattedPrice ? parseFloat(formattedPrice) : '', // estimated revenue from the purchase. The revenue value should not contain comma separators, currency, special characters, or text.\n\n      af_price: formattedPrice ? parseFloat(formattedPrice) : '', // overall purchase sum\n\n      af_content: nameList, // product name\n\n      af_content_id: idList, // item id\n\n      af_content_type: catList, // item category\n\n      af_currency: 'EUR', // currency code\n\n      af_quantity: this.$options.qty ? parseInt(this.$options.qty) : '', // number of items in the cart\n\n      af_order_id: this.$options.orderNumber || '', // id of the order that is generated after the purchase\n\n      af_order_cap: this.$options.cap || '', // cap selected for the order\n\n      af_order_store_id: this.$options.store || '', // id of the store selected for the order\n\n      af_order_store_city: this.$options.city || '', // city of store selected\n\n      af_order_service_selected: this.$options.service || '', // order service selected (click_and_collect,  click_and_collect_drive, home_delivery_same_day, home_delivery_next_day)\n\n      af_order_payment_method: this.$options.payment || '', // payment method\n\n      af_market_type: typeList // type of product (food, nofood)\n    };\n  }\n\n  getCouponObject() {\n    return {\n      promotion_name: this.$options.couponName || '' // identificativo coupon\n    };\n  }\n\n  getWishlistObject() {\n    return this.savedObj;\n  }\n\n  getAddCartObject() {\n    let obj = this.savedObj;\n    obj.af_quantity = 1;\n    return obj;\n  }\n}\n","/* eslint-disable new-cap */\n/* eslint-disable valid-jsdoc */\n/* eslint-disable no-underscore-dangle */\n\nimport Bean from 'bean';\nimport deepFreeze from '../utilities/freeze';\nimport BaseGiaComponent from './baseGiaComponent';\n\nexport default class BaseComponent extends BaseGiaComponent {\n  /**\n   * @returns {HTMLElement}\n   */\n  get $el() {\n    return /** @type {HTMLElement} */ (this._componentElement);\n  }\n\n  get $options() {\n    const compOptions = {};\n    const options = { ...this.$el.dataset };\n    const optionsEntires = Object.keys(options).filter((entry) => entry.includes('option'));\n    optionsEntires.forEach((entry) => {\n      const cleanEntry = BaseComponent.cleanOptionKey(entry);\n      let optionValue;\n      if (options[entry].includes('{') && options[entry].includes('}')) {\n        optionValue = JSON.parse(options[entry].replace(/'/g, '\"'));\n      } else {\n        optionValue = BaseComponent.convertType(options[entry]);\n      }\n      compOptions[cleanEntry] = optionValue;\n    });\n    return deepFreeze(compOptions);\n  }\n\n  get COMPONENT_NAME() {\n    return this.$el.getAttribute('data-component');\n  }\n\n  /**\n   *\n   * constructor\n   *\n   * @param {Element} element\n   */\n  constructor(element) {\n    super(element);\n    this._componentElement = element;\n    this._componentElement.setAttribute('data-component-init', 'true');\n    this._checkMessages();\n  }\n\n  static convertType(option) {\n    let optionReturn;\n    switch (option) {\n      case 'false':\n        optionReturn = false;\n        break;\n      case 'true':\n        optionReturn = true;\n        break;\n      case 'null':\n        optionReturn = null;\n        break;\n      default:\n        optionReturn = option;\n        break;\n    }\n\n    return optionReturn;\n  }\n\n  static cleanOptionKey(key) {\n    const str = key.replace('option', '');\n    return `${str.charAt(0).toLocaleLowerCase()}${str.slice(1)}`;\n  }\n\n  /**\n   *\n   * $on\n   *\n   * @param {String} events\n   * @param {Function} cb\n   * @param {Element} [element = this.$el]\n   * @param {Array|String|Element} [elements = null]\n   */\n  $on(events, cb, element = this.$el, elements = null) {\n    if (!element || !events || !cb) return;\n    if (!elements) {\n      Bean.on(element, events, (e) => {\n        if (e) e.stopPropagation();\n        cb(e);\n      });\n    } else {\n      Bean.on(element, events, elements, (e) => {\n        if (e) e.stopPropagation();\n        cb(e);\n      });\n    }\n  }\n\n  /**\n   *\n   * $one\n   *\n   * @param {String} events\n   * @param {Function} cb\n   * @param {Element} [element = this.$el]\n   */\n  $one(events, cb, element = this.$el) {\n    Bean.one(element, events, cb);\n  }\n\n  /**\n   *\n   * $off\n   *\n   * @param {String} events\n   * @param {Element} [element = this.$el]\n   */\n  $off(events, element = this.$el) {\n    Bean.off(element, events);\n  }\n\n  /**\n   *\n   * $fire\n   *\n   * @param {String} events\n   * @param {Element} [element = this.$el]\n   */\n  $fire(events, element = this.$el) {\n    Bean.fire(element, events);\n  }\n\n  /**\n   *\n   * Activate loader\n   *\n   * @param {HTMLElement} [container]\n   * @param {String} [message]\n   */\n  loading(container, message) {\n    this._loading = true;\n    this.EMIT(this.CUSTOM_MESSAGES.LOADER_EVENTS.show, {\n      container: container || document.body,\n      message: message ?? null\n    });\n  }\n\n  /**\n   *\n   * Deactivate loader\n   *\n   * @param {HTMLElement} [container]\n   * @param {String} [message]\n   * @param {Boolean} [error=false]\n   * @param {String} [icon]\n   */\n  endLoading(container, message, error = false, icon) {\n    this._loading = false;\n    setTimeout(() => {\n      if (!this._loading) {\n        this.EMIT(this.CUSTOM_MESSAGES.LOADER_EVENTS.hide, {\n          container: container || document.body,\n          message,\n          error,\n          icon\n        });\n      }\n    }, 400);\n  }\n}\n","import Axios from 'axios';\nimport CommonInterface from '../base/commonInterface';\nimport CustomMessages from '../constants/customMessages';\n\n\nconst axios = Axios.create({\n  transformRequest: [function (data, headers) {\n    if (headers && headers.skiptransform) {\n      delete headers.skiptransform;\n      return data;\n    }\n    if (data && Object.entries(data)) {\n      const formData = new FormData();\n      for (const [key, value] of Object.entries(data)) {\n        formData.append(key, value);\n      }\n      return formData;\n    }\n  }],\n});\n\nconst recaptchaToken = async ({ googleRecaptchaAction, googleRecaptchaClientSide }) => new Promise((resolve, reject) => {\n  window.grecaptcha.ready(() => {\n    window.grecaptcha.execute(googleRecaptchaClientSide, { action: googleRecaptchaAction }).then((token) => {\n      resolve(token);\n    });\n  });\n});\n\naxios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';\n\n// Add a request interceptor\naxios.interceptors.request.use(async (config) => {\n  // Do something before request is sent\n  if (config.data && config.data.googleRecaptchaAction && config.data.googleRecaptchaClientSide && window.grecaptcha) {\n    const token = await recaptchaToken(config.data);\n    config.data.googleRecaptchaToken = token;\n    return config;\n  }\n  return config;\n}, function (error) {\n  // Do something with request error\n  return Promise.reject(error);\n});\n\n// Add a response interceptor\naxios.interceptors.response.use(function (response) {\n  let commonInterface = new CommonInterface();\n  if (response.data && response.data.pushState || response.data.replaceState) {\n    response.data.pushState && history.pushState({}, '', response.data.pushState);\n    response.data.replaceState && history.replaceState({}, '', response.data.replaceState);\n    if (response.data.redirectUrl) {\n      setTimeout(() => {\n        location.href = response.data.redirectUrl;\n      }, 500);\n    }\n  }\n  else if (response.data && response.data.redirectUrl) {\n    let hrefUrl=response.data.redirectUrl;\n    let paybackParam = '';\n    if (response.data.isPaybackPopupActive) {\n      paybackParam = hrefUrl.indexOf('?') > -1 ? '&isPaybackPopupActive=true' : '?isPaybackPopupActive=true';\n    }\n    hrefUrl =hrefUrl+paybackParam;\n    let trialParam = '';\n    if (response.data.subscriptionTrialModalNotEligibleAfterLogin) {\n      trialParam = hrefUrl.indexOf('?') > -1 ? '&subscriptionTrialModalNotEligibleAfterLogin=true' : '?subscriptionTrialModalNotEligibleAfterLogin=true';\n    } \n    location.href = hrefUrl+trialParam;\n  }\n  if (response.data && response.data.error) {\n    if(response.config.data instanceof FormData) {\n      response.config.data = Object.fromEntries(response.config.data);\n      response.config.headers['Content-Type'] = \"application/json\"\n    }\n    commonInterface.EMIT(`error.${response.data.error}`, {res: response});\n  }\n\n  if (response.data && response.data.notificationPush && response.data.notificationPush.showNotification) {\n    commonInterface.EMIT(`notification:push`, response.data.notificationPush);\n  }\n\n  if (response.data && response.data.pushPromoPre && response.data.pushPromoPre.length > 0) {\n    const orderedPush = response.data.pushPromoPre.sort(function(promoA, promoB) {\n      return promoA.rank > promoB.rank ? -1 : promoB.rank > promoA.rank ? 1 : 0;\n    });\n    commonInterface.EMIT(`notification:pushFirstAvailable`, { notifications: orderedPush });\n  }\n  \n  if (response.data && response.data.pushPromoPost) {\n    commonInterface.EMIT(`notification:pushall`, response.data.pushPromoPost);\n  }\n\n\n  // Any status code that lie within the range of 2xx cause this function to trigger\n  // Do something with response data\n  return response;\n}, function (error) {\n  if (error.response?.data && error.response?.data?.redirectUrl) {\n    location.href = error.response.data.redirectUrl;\n  }\n\n  // Any status codes that falls outside the range of 2xx cause this function to trigger\n  // Do something with response error\n  return Promise.reject(error);\n});\n\nexport const { CancelToken } = Axios;\n\nexport const {\n  get, post, all, spread, request\n} = axios;\n","var superPropBase = require(\"./superPropBase.js\");\n\nfunction _get() {\n  if (typeof Reflect !== \"undefined\" && Reflect.get) {\n    module.exports = _get = Reflect.get, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n  } else {\n    module.exports = _get = function _get(target, property, receiver) {\n      var base = superPropBase(target, property);\n      if (!base) return;\n      var desc = Object.getOwnPropertyDescriptor(base, property);\n\n      if (desc.get) {\n        return desc.get.call(arguments.length < 3 ? target : receiver);\n      }\n\n      return desc.value;\n    }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n  }\n\n  return _get.apply(this, arguments);\n}\n\nmodule.exports = _get, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var getPrototypeOf = require(\"./getPrototypeOf.js\");\n\nfunction _superPropBase(object, property) {\n  while (!Object.prototype.hasOwnProperty.call(object, property)) {\n    object = getPrototypeOf(object);\n    if (object === null) break;\n  }\n\n  return object;\n}\n\nmodule.exports = _superPropBase, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;"],"sourceRoot":""}