{"version":3,"file":"js/app.165f65d183f3ffbd4fa3.js","mappings":"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","sources":["webpack:///./resources/area/web/default/js/components/catalog/product/ProductConfiguration.vue?8363","webpack:///./resources/area/web/default/js/shared/helpers/catalog-helper/index.ts","webpack:///./resources/area/web/default/js/shared/helpers/enhanced-ecommerce/index.ts","webpack:///./resources/area/web/default/js/components/catalog/product/ProductConfiguration.vue?2b57","webpack:///./resources/area/web/default/js/components/catalog/product/ProductConfiguration.vue?2c89","webpack:///./resources/area/web/default/js/components/catalog/product/ProductConfiguration.vue?8fe0"],"sourcesContent":["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue, Prop } from 'vue-property-decorator';\nimport ServiceContainer from '@flashpointbv/solar-service-container';\nimport { catalogHelper } from '../../../shared/helpers/catalog-helper';\nimport { enhancedEcommerce } from '../../../shared/helpers/enhanced-ecommerce';\nimport VueI18n from 'vue-i18n';\nimport TranslateResult = VueI18n.TranslateResult;\n\n@Component(\n  {\n    name: 'catalog-product-configuration',\n    components: ServiceContainer().getComponents()\n  }\n)\n\nexport default class extends Vue {\n  $refs!: {\n    addToCart: HTMLElement;\n    offcanvasTrigger: HTMLElement;\n  }\n\n  @Prop({ default: false }) private readonly enableTooltip: boolean;\n  @Prop() private readonly productData: object;\n  @Prop() private readonly productBundleData: { selections: {}[] }[];\n  @Prop({ default: '' }) private readonly activeCategoryPath: String;\n  @Prop({ default: null }) private recommendation: null | object;\n\n  private _throttle: number;\n  private showTooltip: boolean = false;\n  private addToCartIsLoading: boolean = false;\n  private hasAddToCartSuccess: boolean = false;\n  private hasAddToCartSuccessMessage: TranslateResult = '';\n  private hasAddToCartError: boolean = false;\n  private addToCartErrorMessage: TranslateResult = '';\n\n  private get showCartMessage(): boolean {\n    return this.hasAddToCartError || this.showInputValidationMessage || this.showInputMaxStockValidationMessage;\n  }\n\n  private get minQtyStepSize(): number {\n    return this.$store.state.ProductQuantity.minQtyStepSize || 1;\n  }\n\n  private get showInputValidationMessage(): boolean {\n    return this.$store.state.ProductQuantity.showInputValidationMessage || false;\n  }\n\n  private get showInputMaxStockValidationMessage(): boolean {\n    return this.$store.state.ProductQuantity.showInputMaxStockValidationMessage || false;\n  }\n\n  private get productPrices(): object {\n    return catalogHelper.getProductPrice(this.productData);\n  }\n\n  private get productImage(): string {\n    return catalogHelper.resolveProductImage(this.productData, 95);\n  }\n\n  private get selectedQuantity(): number {\n    return this.$store.getters['ProductQuantity/selectedQuantity'];\n  }\n\n  private addToCartTooltip(e): void {\n    if (!this.isSaleable && this.enableTooltip && this.productData['product_type'] === 'configurable') {\n      if (e.type === 'mouseenter') {\n        this.showTooltip = true;\n        if (this.$mobileDetect.mobile()) {\n          (document.getElementsByClassName('product__option')[0] as HTMLElement).scrollIntoView({\n            behavior: 'smooth',\n            block: 'center'\n          });\n        }\n      } else {\n        clearTimeout(this._throttle);\n        this._throttle = window.setTimeout(() => {\n          this.showTooltip = false;\n        }, 1000);\n      }\n    }\n  }\n\n  private get isSaleable(): boolean {\n    return this.$store.getters['CatalogProduct/isSaleable']\n      && (this.productData['in_stock'] || !this.productData['manage_stock'])\n      && !(this.productData['show_as_sold_out'] || false)\n      && !this.$store.state.ProductQuantity.disableAddToCart;\n  }\n\n  private async productAddToCart(): Promise<void> {\n    this.addToCartIsLoading = true;\n\n    try {\n      let productPayload = {\n        sku: this.productData['sku'],\n        qty: this.selectedQuantity,\n        extension_attributes: {\n          origin_category_path: this.activeCategoryPath\n        },\n      };\n\n      await this.$store.dispatch('CheckoutQuote/addProductToQuote', productPayload);\n\n      this.addToCartIsLoading = false;\n      this.hasAddToCartSuccessMessage = this.$t('Product has been added to your shopping cart');\n      this.hasAddToCartSuccess = true;\n\n      enhancedEcommerce.addProductAddToCart(this.productData, this.selectedQuantity);\n      this.$refs.offcanvasTrigger.click();\n    } catch (e) {\n      const errorMessage = e.response.data['message'] || this.$t('Unable to add product to cart, try again later.');\n      this.addToCartIsLoading = false;\n      this.hasAddToCartError = true;\n      this.hasAddToCartSuccess = false;\n      this.addToCartErrorMessage = errorMessage;\n      this.$refs.offcanvasTrigger.click();\n    }\n  }\n\n  private created(): void {\n    this.$store.dispatch('CatalogProduct/getProductData', this.productData);\n\n    if (this.productBundleData.length > 0) {\n      this.$store.dispatch('CatalogBundleProduct/getAvailableOptions', this.productBundleData);\n    }\n    this.$store.dispatch('ProductQuantity/initialize', this.productData);\n    enhancedEcommerce.addProductDetail(this.productData);\n\n    const placeholder = document.getElementById('addToCartPlaceholder');\n    if (placeholder) {\n      placeholder.style.display = 'none';\n    }\n  }\n}\n","import Environment from '@flashpointbv/solar-ui-environment';\n\nclass CatalogHelper {\n  getProductPrice(product: object, customerGroupId: number = 0): object {\n    let priceObject = {\n      productPrice: product[`price_incl_tax`] || 0,\n      specialPrice: product[`final_price_incl_tax`] || 0,\n      discountPrice: product[`price_incl_tax`] || 0\n    };\n\n    if (priceObject.productPrice !== priceObject.specialPrice) {\n      priceObject.discountPrice = priceObject.specialPrice;\n    }\n\n    return priceObject;\n  }\n\n  resolveProductImage(product: object, size: number): string {\n    const env = window.Config.hasOwnProperty('environment') ? window.Config['environment'] : 'production';\n\n    if (env !== 'production') {\n      return `https://www.xenos.nl/pub/cdn/${product['sku']}/${size}/${product['sku']}.jpg`;\n    }\n\n    return this.resolveGalleryImage(product, size);\n  }\n\n  resolveGalleryImage(product: object, size: number, index: number = 0): string {\n    if(Object.keys(product).length === 0) {\n        return '';\n    }\n\n    const selectedItem = product['media_gallery'][index] || false;\n\n    if (false === selectedItem) {\n      return '';\n    }\n\n    if (selectedItem['type'] === 'video') {\n      return selectedItem['thumbnail'] || '';\n    }\n\n    if (Environment().get('environment') !== 'production') {\n      return `https://www.xenos.nl/pub/cdn/${product['sku']}/${size}/${product['sku']}.jpg`;\n    }\n\n    return selectedItem['placeholder_url'].replace(/\\{size}/, size);\n  }\n\n  getProductLabel(product: object): object | null {\n    if (product.hasOwnProperty('action_labels')) {\n      return {\n        label: product['action_labels'][0]['name'],\n        color: product['action_labels'][0]['color']\n      };\n    }\n\n    if (product['promotion']) {\n      let backgroundColor = '#ec008c';\n\n      switch (product['promotion']) {\n        case '50% korting':\n          backgroundColor = '#1a9bdb';\n          break;\n        case '30% korting':\n          backgroundColor = '#75ad3f';\n          break;\n      }\n\n      return {\n        label: product['promotion'],\n        color: backgroundColor\n      };\n    }\n\n    if (product['discount_amount'] > 0) {\n      return {\n        label: `${Math.round(product['discount_percentage'])}% korting`,\n        color: '#ec008c'\n      };\n    }\n\n    return null;\n  }\n}\n\nconst catalogHelper = new CatalogHelper();\n\nexport {catalogHelper};\n","class EnhancedEcommerce {\n  addProductImpressions(products: Array<object>, listType: string = 'product-list', startIndex: number = 0): void {\n    const impressions: Array<object> = [];\n    const hasImpressionView = window.dataLayer.filter(e => e['event'] === 'ImpressionView').length;\n\n    products.forEach((p, i) => {\n      impressions.push({\n        'name': p['name'],\n        'id': p['product_id'],\n        'price': p['final_price_incl_tax'],\n        'sku': p['sku'],\n        'ean': p['erp_ean'] || '',\n        'brand': p['xenos_merk'] || 'Xenos',\n        'category': p.hasOwnProperty('category_names') ? p['category_names'].join(' | ') : '',\n        'variant': p['xen_kleur'] || '',\n        'dimension20': p['gses_durability_score_rating'] || null,\n        'list': listType,\n        'position': ((startIndex + i) + 1)\n      });\n    });\n\n    window.dataLayer.push({\n      'event': startIndex !== 0 && hasImpressionView > 0 ? 'ImpressionsPushed' : 'ImpressionView',\n      'ecommerce': {\n        'currencyCode': 'EUR',\n        'impressions': impressions\n      }\n    });\n  }\n\n  addProductClick(product: object, index: string | number | boolean | symbol): void {\n    window.dataLayer.push({\n      'event': 'productClick',\n      'ecommerce': {\n        'click': {\n          'actionField': {\n            'list': 'product-list'\n          },\n          'products': [{\n            'name': product['name'],\n            'id': product['product_id'],\n            'price': product['final_price_incl_tax'],\n            'sku': product['sku'],\n            'ean': product['erp_ean'] || '',\n            'brand': product['xenos_merk'] || 'Xenos',\n            'category': product.hasOwnProperty('category_names') ? product['category_names'].join(' | ') : '',\n            'variant': product['xen_kleur'] || '',\n            'dimension20': product['gses_durability_score_rating'] || null,\n            'position': (index as number) + 1\n          }]\n        }\n      }\n    });\n  }\n\n  addProductDetail(product: object): void {\n    window.dataLayer.push({\n      'ecommerce': {\n        'detail': {\n          'products': [{\n            'name': product['name'],\n            'id': product['product_id'],\n            'price': product['final_price_incl_tax'],\n            'sku': product['sku'],\n            'ean': product['erp_ean'] || '',\n            'brand': product['xenos_merk'] || 'Xenos',\n            'category': product.hasOwnProperty('category_names') ? product['category_names'].join(' | ') : '',\n            'variant': product['xen_kleur'] || '',\n            'dimension20': product['gses_durability_score_rating'] || null,\n          }]\n        }\n      }\n    });\n  }\n\n  addProductAddToCart(product: object, qty: number = 1): void {\n    window.dataLayer.push({\n      'event': 'addToCart',\n      'ecommerce': {\n        'currencyCode': 'EUR',\n        'add': {\n          'products': [{\n            'name': product['name'],\n            'id': product['product_id'],\n            'price': product['final_price_incl_tax'],\n            'sku': product['sku'],\n            'ean': product['erp_ean'] || '',\n            'brand': product['xenos_merk'] || 'Xenos',\n            'category': product.hasOwnProperty('category_names') ? product['category_names'].join(' | ') : '',\n            'variant': product['xen_kleur'] || '',\n            'dimension20': product['gses_durability_score_rating'] || null,\n            'quantity': qty\n          }]\n        }\n      }\n    });\n  }\n\n  addCrossSellDatalayer(product: object, qty: number = 1): void {\n    window.dataLayer.push({\n      'event': 'addtocart-checkout',\n      'ecommerce': {\n        'currencyCode': 'EUR',\n        'add': {\n          'products': [{\n            'name': product['name'],\n            'id': product['product_id'],\n            'price': product['final_price_incl_tax'],\n            'sku': product['sku'],\n            'ean': product['erp_ean'] || '',\n            'brand': product['xenos_merk'] || 'Xenos',\n            'category': product.hasOwnProperty('category_names') ? product['category_names'].join(' | ') : '',\n            'variant': product['xen_kleur'] || '',\n            'dimension20': product['gses_durability_score_rating'] || null,\n            'quantity': qty\n          }]\n        }\n      }\n    });\n  }\n\n  addCheckout(products: Array<object>, step: number, option: string = ''): void {\n    const productList: Array<object> = [];\n\n    if (step === 1) {\n      window.dataLayer.push({\n        'event': 'checkout',\n        'ecommerce': {\n          'checkout': {\n            'actionField': {'step': step, 'option': option},\n            'products': productList\n          }\n        }\n      });\n\n      products.forEach(p => {\n        productList.push({\n          'name': p['name'],\n          'id': p['item_id'],\n          'price': p['row_total_incl_tax'],\n          'sku': p['extension_attributes']['sku'] || '',\n          'ean': p['extension_attributes']['ean'] || '',\n          'brand': p['extension_attributes']['brand'] || 'Xenos',\n          'category': '',\n          'variant': p['extension_attributes']['variant'] || '',\n          'dimension20': p['gses_durability_score_rating'] || null,\n          'quantity': p['qty']\n        });\n      });\n    } else {\n      window.dataLayer.push({\n        'event': 'checkoutOption',\n        'ecommerce': {\n          'checkout_option': {\n            'actionField': {'step': step, 'option': option}\n          }\n        }\n      });\n    }\n  }\n\n  addShopByLookDatalayer(shopByLook: object, product: object | null = null): void {\n    if (typeof window.dataLayer === 'undefined') {\n      return;\n    }\n\n    window.dataLayer.push({\n      event: `${shopByLook['title'].toLowerCase()}-click`,\n      category: shopByLook['title'],\n      action: 'click',\n      label: shopByLook['title'],\n      price: product ? product['final_price_incl_tax'] : shopByLook['final_price'],\n      value: product ? `Add to cart: ${product['name']}` : `Add to cart`\n    });\n  }\n}\n\nconst enhancedEcommerce = new EnhancedEcommerce();\n\nexport {enhancedEcommerce};\n","import { render, staticRenderFns } from \"./ProductConfiguration.vue?vue&type=template&id=4a5c7746&scoped=true&\"\nimport script from \"./ProductConfiguration.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProductConfiguration.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ProductConfiguration.vue?vue&type=style&index=0&id=4a5c7746&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"4a5c7746\",\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/ts-loader/index.js??clonedRuleSet-5[0].rules[0].use[0]!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProductConfiguration.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../../../../node_modules/ts-loader/index.js??clonedRuleSet-5[0].rules[0].use[0]!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProductConfiguration.vue?vue&type=script&lang=ts&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"product__configuration\"},[_c('div',{staticClass:\"product__option\"},[_c('transition',{attrs:{\"name\":\"fade\"}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showTooltip),expression:\"showTooltip\"}],staticClass:\"product-options__tooltip\"},[_vm._v(\"\\n        \"+_vm._s(_vm.$t('Choose an option'))+\"\\n      \")])]),_vm._v(\" \"),_c((\"catalog-product-\" + (_vm.productData['product_type'])),{tag:\"component\",attrs:{\"product-data\":_vm.productData}})],1),_vm._v(\" \"),_c('form',{attrs:{\"id\":\"product_addtocart_form\",\"enctype\":\"multipart/form-data\",\"method\":\"post\"},on:{\"submit\":function($event){$event.preventDefault();return _vm.productAddToCart()}}},[_c('div',{ref:\"addToCart\",staticClass:\"product__add-to-cart-container\",on:{\"mouseenter\":function($event){return _vm.addToCartTooltip($event)},\"mouseleave\":function($event){return _vm.addToCartTooltip($event)}}},[_c('catalog-product-quantity'),_vm._v(\" \"),_c('div',{staticClass:\"add-to-cart__holder\"},[_c('button',{staticClass:\"--button --rounded\",class:{ '--cart-loading': _vm.addToCartIsLoading },attrs:{\"disabled\":!_vm.isSaleable || _vm.addToCartIsLoading || _vm.selectedQuantity <= 0},domProps:{\"textContent\":_vm._s(_vm.$t('Add to cart'))}})])],1),_vm._v(\" \"),(_vm.minQtyStepSize > 1)?_c('div',{staticClass:\"add-to-cart__notices\"},[_c('span',[_vm._v(_vm._s(_vm.$t('This product can only be ordered per {minimumQtyStepSize} pieces', { 'minimumQtyStepSize': _vm.minQtyStepSize })))])]):_vm._e(),_vm._v(\" \"),(_vm.showCartMessage)?_c('div',{staticClass:\"add-to-cart__message\"},[_c('transition',{attrs:{\"name\":\"fade\"}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.hasAddToCartError),expression:\"hasAddToCartError\"}],staticClass:\"global__message --error\",domProps:{\"textContent\":_vm._s(_vm.addToCartErrorMessage)}})]),_vm._v(\" \"),_c('transition',{attrs:{\"name\":\"fade\"}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showInputValidationMessage),expression:\"showInputValidationMessage\"}],staticClass:\"global__message --error\",domProps:{\"textContent\":_vm._s(_vm.$t('Enter a plural of {minQtyStepSize}', { minQtyStepSize: _vm.minQtyStepSize }))}})]),_vm._v(\" \"),_c('transition',{attrs:{\"name\":\"fade\"}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showInputMaxStockValidationMessage),expression:\"showInputMaxStockValidationMessage\"}],staticClass:\"global__message --error\",domProps:{\"textContent\":_vm._s(_vm.$t('The requested amount is currently not available'))}})])],1):_vm._e()]),_vm._v(\" \"),_c('button',{ref:\"offcanvasTrigger\",attrs:{\"data-toggle\":\"addToCart-offCanvas\"}}),_vm._v(\" \"),_c('div',{staticClass:\"off-canvas position-left is-closed\",attrs:{\"id\":\"addToCart-offCanvas\",\"data-off-canvas\":\"\"}},[_vm._m(0),_vm._v(\" \"),_c('div',{staticClass:\"off-canvas__container --gray\"},[_c('span',{staticClass:\"modal__header\"},[_c('i',{staticClass:\"fa fa-check\"}),_vm._v(\" \"),_c('span',{staticClass:\"--title\"},[_vm._v(_vm._s(_vm.$t('Product has been added to your shopping cart')))]),_vm._v(\" \"),_vm._m(1)]),_vm._v(\" \"),_c('section',[_c('div',{staticClass:\"product__information\"},[_c('section',[_c('div',{staticClass:\"image__holder\"},[_c('img',{attrs:{\"src\":_vm.productImage,\"width\":\"95\",\"height\":\"95\",\"alt\":this.productData['name']}})]),_vm._v(\" \"),_c('div',{staticClass:\"item__details\"},[_c('span',{staticClass:\"--title\"},[_vm._v(_vm._s(_vm.selectedQuantity)+\"x \"+_vm._s(this.productData['name']))]),_vm._v(\" \"),_c('div',{staticClass:\"price__holder\"},[(_vm.productPrices['discountPrice'] !== _vm.productPrices['productPrice'])?_c('span',{staticClass:\"old__price\"},[_vm._v(\"\\n                  \"+_vm._s((_vm.productPrices['productPrice'] * _vm.selectedQuantity).priceFormat())+\"\\n                \")]):_vm._e(),_vm._v(\" \"),_c('span',{staticClass:\"price\"},[_vm._v(_vm._s((_vm.productPrices['discountPrice'] * _vm.selectedQuantity).priceFormat()))])])])])]),_vm._v(\" \"),_c('div',{staticClass:\"--actions\"},[_c('a',{staticClass:\"--button --rounded\",attrs:{\"href\":\"/checkout/cart\"}},[_vm._v(_vm._s(_vm.$t('To shopping cart')))]),_vm._v(\" \"),_c('button',{staticClass:\"--button --rounded --secondary --inverted --no-padding\",attrs:{\"aria-label\":\"Close menu\",\"type\":\"button\",\"data-close\":\"\"}},[_c('span',{staticClass:\"--inner\",attrs:{\"aria-hidden\":\"true\"}},[_vm._v(_vm._s(_vm.$t('Continue shopping')))])])])])]),_vm._v(\" \"),_c('div',{staticClass:\"divider\"}),_vm._v(\" \"),_c('div',{staticClass:\"off-canvas__container --upsell\"},[_c('section',[_vm._t(\"recommendation\")],2)])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:\"close-button hide-medium\",attrs:{\"aria-label\":\"Close menu\",\"type\":\"button\",\"data-close\":\"\"}},[_c('span',{attrs:{\"aria-hidden\":\"true\"}},[_vm._v(\"×\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:\"close-button hide-small\",attrs:{\"aria-label\":\"Close menu\",\"type\":\"button\",\"data-close\":\"\"}},[_c('span',{attrs:{\"aria-hidden\":\"true\"}},[_vm._v(\"×\")])])}]\n\nexport { render, staticRenderFns }"],"names":["Vue","showTooltip","addToCartIsLoading","hasAddToCartSuccess","hasAddToCartSuccessMessage","hasAddToCartError","addToCartErrorMessage","showCartMessage","this","showInputValidationMessage","showInputMaxStockValidationMessage","minQtyStepSize","$store","state","ProductQuantity","productPrices","catalogHelper","getProductPrice","productData","productImage","resolveProductImage","selectedQuantity","getters","addToCartTooltip","e","isSaleable","enableTooltip","type","$mobileDetect","mobile","document","getElementsByClassName","scrollIntoView","behavior","block","clearTimeout","_throttle","window","setTimeout","disableAddToCart","productAddToCart","productPayload","sku","qty","extension_attributes","origin_category_path","activeCategoryPath","dispatch","$t","enhancedEcommerce","addProductAddToCart","$refs","offcanvasTrigger","click","errorMessage","response","data","created","productBundleData","length","addProductDetail","placeholder","getElementById","style","display","Prop","default","String","Component","name","components","getComponents","CatalogHelper","product","customerGroupId","priceObject","productPrice","specialPrice","discountPrice","size","Config","hasOwnProperty","resolveGalleryImage","index","Object","keys","selectedItem","get","replace","getProductLabel","label","color","backgroundColor","Math","round","EnhancedEcommerce","addProductImpressions","products","listType","startIndex","impressions","hasImpressionView","dataLayer","filter","forEach","p","i","push","join","addProductClick","addCrossSellDatalayer","addCheckout","step","option","productList","addShopByLookDatalayer","shopByLook","event","toLowerCase","category","action","price","value","render","_vm","_h","$createElement","_c","_self","staticClass","attrs","directives","rawName","expression","_v","_s","tag","on","$event","preventDefault","ref","class","domProps","_e","_m","priceFormat","_t","staticRenderFns"],"sourceRoot":""}