{"version":3,"file":"js/app.2d952bbc3974f41bf606.js","mappings":"0pBAOe,8BAAc,EAAAA,IAIfC,iBACV,OAAOC,KAAKC,QAAc,MAAK,EACjC,CAEYC,wBACV,OAAOF,KAAKD,WAAWI,QAAOC,IAAMJ,KAAKC,QAAwB,gBAAK,IAAII,QAAQD,IAAM,GAC1F,CAEQE,mBAAmBC,GACzB,MAAMC,GAAaR,KAAKC,QAAc,MAAK,IAAII,QAAQE,GACjDE,EAAeT,KAAKC,QAAyB,gBAAEO,GACrD,MAAO,GAAGR,KAAKC,QAAiB,gBAAUQ,GAC5C,CAEQC,eAAeC,GACrB,MAAMC,EAAe,CAAC,MAAO,MAAO,MAAO,MAAO,OAC5CC,EAAgB,CAAC,IAAK,IAAK,IAAK,IAAK,KAE3C,IAAK,IAAIC,EAAI,EAAGA,EAAIF,EAAaG,OAAQD,IACvCH,EAAQA,EAAMK,QAAQ,GAAGJ,EAAaE,KAAM,GAAGD,EAAcC,MAG/D,OAAOH,CACT,CAEYM,uBACV,MAAwC,WAAjCjB,KAAKC,QAAsB,cACK,IAAlCD,KAAKE,kBAAkBa,QAA8C,aAA9Bf,KAAKE,kBAAkB,MAC9DF,KAAKC,QAAQiB,eAAe,qBACrBlB,KAAKC,QAA0B,iBAAEE,QAAOgB,GAAKA,EAAO,IAAEC,SAAS,YAAWL,OAAS,CAGjG,GAnCA,IAAC,IAAAM,MAAK,CAACC,UAAU,I,uDACjB,IAAC,IAAAD,MAAK,CAACC,UAAU,EAAOC,QAAS,K,wDAFpB,MAJd,IAAAC,WAAU,CACTC,KAAM,gC,yMCcR,SAXgB,E,SAAA,GACd,UACA,IACA,KACA,EACA,KACA,KACA,MAI8B,O,mJClBsM,QAAe,G,wDCArP,IAAIC,EAAS,SAASA,SAAS,IAAIC,EAAI3B,KAAK4B,EAAGD,EAAIE,MAAMD,GAAUD,EAAIE,MAAMC,YAAY,OAAQH,EAAIzB,kBAAkBa,QAAUY,EAAIV,iBAAkBW,EAAG,OAAO,CAACG,YAAY,kBAAkB,CAAEJ,EAAoB,iBAAEC,EAAG,OAAO,CAACG,YAAY,YAAY,CAACJ,EAAIK,GAAGL,EAAIM,GAAGN,EAAIO,GAAG,gCAAgC,CAACN,EAAG,OAAO,CAACD,EAAIK,GAAGL,EAAIM,GAAGN,EAAIO,GAAG,uBAAuBP,EAAIK,GAAG,KAAKJ,EAAG,KAAK,CAACD,EAAIQ,GAAIR,EAAqB,mBAAE,SAASS,EAAUC,GAAO,OAAQA,GAASV,EAAIW,SAAUV,EAAG,KAAK,CAACW,MAAM,CAAE,YAA4B,aAAdH,IAA4B,CAACR,EAAG,IAAI,CAACY,MAAM,CAAC,KAAOb,EAAIrB,mBAAmB8B,IAAYK,SAAS,CAAC,YAAcd,EAAIM,GAAGN,EAAIjB,eAAe0B,SAAiBT,EAAIe,IAAI,IAAGf,EAAIK,GAAG,KAAOL,EAAIzB,kBAAkBa,OAAS,EAAKY,EAAIW,SAAUV,EAAG,KAAK,CAACA,EAAG,IAAI,CAACG,YAAY,QAAQS,MAAM,CAAC,KAAOb,EAAI1B,QAAiB,UAAI,CAAC0B,EAAIK,GAAG,IAAIL,EAAIM,GAAIN,EAAI5B,WAAWgB,OAAS,EAAKY,EAAIW,eAAeX,EAAIe,MAAM,KAAK,GAAGf,EAAIe,IAC/3B,EACIC,EAAkB,E","sources":["webpack:///./resources/area/web/default/js/components/catalog/list/ProductListSizes.vue?ab3b","webpack:///./resources/area/web/default/js/components/catalog/list/ProductListSizes.vue","webpack:///./resources/area/web/default/js/components/catalog/list/ProductListSizes.vue?a74a","webpack:///./resources/area/web/default/js/components/catalog/list/ProductListSizes.vue?eb64"],"sourcesContent":["\nimport {Component, Vue, Prop} from 'vue-property-decorator';\n\n@Component({\n  name: 'catalog-product-list-sizes'\n})\n\nexport default class extends Vue {\n  @Prop({required: true}) readonly product: object;\n  @Prop({required: false, default: 10}) readonly maxItems: number;\n\n  private get variations(): Array<string> {\n    return this.product['size'] || [];\n  }\n\n  private get salableVariations(): Array<string> {\n    return this.variations.filter(v => (this.product['in_stock_sizes'] || []).indexOf(v) >= 0);\n  }\n\n  private getVariationUrlKey(size: string): string {\n    const sizeIndex = (this.product['size'] || []).indexOf(size);\n    const sizeOptionId = this.product['size_option_ids'][sizeIndex];\n    return `${this.product['url_key']}?size=${sizeOptionId}`;\n  }\n\n  private getOptionLabel(label): string {\n    const searchChunks = ['1/2', '2/3', '1/3', '1/4', '3/4'];\n    const replaceChunks = ['½', '⅔', '⅓', '¼', '¾'];\n\n    for (let i = 0; i < searchChunks.length; i++) {\n      label = label.replace(`${searchChunks[i]}`, `${replaceChunks[i]}`);\n    }\n\n    return label;\n  }\n\n  private get showStockMessage(): boolean {\n    return this.product['product_type'] === 'bundle' ||\n        (this.salableVariations.length === 1 && this.salableVariations[0] === 'ONE-SIZE') ||\n        (this.product.hasOwnProperty('virtual_products') ?\n                this.product['virtual_products'].filter(p => p['mpn'].includes('-DUMMY')).length > 0 :\n                false\n        );\n  }\n}\n","import { render, staticRenderFns } from \"./ProductListSizes.vue?vue&type=template&id=0e3d595c&\"\nimport script from \"./ProductListSizes.vue?vue&type=script&lang=ts&\"\nexport * from \"./ProductListSizes.vue?vue&type=script&lang=ts&\"\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  null,\n  null\n  \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[0]!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProductListSizes.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[0]!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProductListSizes.vue?vue&type=script&lang=ts&\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.salableVariations.length || _vm.showStockMessage)?_c('span',{staticClass:\"product__sizes\"},[(_vm.showStockMessage)?_c('span',{staticClass:\"in-stock\"},[_vm._v(_vm._s(_vm.$t('This product is in stock')))]):[_c('span',[_vm._v(_vm._s(_vm.$t('Available sizes')))]),_vm._v(\" \"),_c('ul',[_vm._l((_vm.salableVariations),function(variation,index){return (index <= _vm.maxItems)?_c('li',{class:{ '_one-size' : variation === 'ONE-SIZE' }},[_c('a',{attrs:{\"href\":_vm.getVariationUrlKey(variation)},domProps:{\"textContent\":_vm._s(_vm.getOptionLabel(variation))}})]):_vm._e()}),_vm._v(\" \"),((_vm.salableVariations.length - 1) > _vm.maxItems)?_c('li',[_c('a',{staticClass:\"_more\",attrs:{\"href\":_vm.product['url_key']}},[_vm._v(\"+\"+_vm._s((_vm.variations.length - 1) - _vm.maxItems))])]):_vm._e()],2)]],2):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }"],"names":["Vue","variations","this","product","salableVariations","filter","v","indexOf","getVariationUrlKey","size","sizeIndex","sizeOptionId","getOptionLabel","label","searchChunks","replaceChunks","i","length","replace","showStockMessage","hasOwnProperty","p","includes","Prop","required","default","Component","name","render","_vm","_c","_self","_setupProxy","staticClass","_v","_s","$t","_l","variation","index","maxItems","class","attrs","domProps","_e","staticRenderFns"],"sourceRoot":""}