{"version":3,"sources":["webpack:///./src/project/search/navigation/CategoryNameAndCount.vue?ba44","webpack:///./src/project/search/navigation/CategoryNameAndCount.vue","webpack:///./src/project/search/navigation/CategoryNameAndCount.vue?b23a","webpack:///./src/project/search/navigation/CategoryNameAndCount.vue?040d","webpack:///./src/core/ui-components/Accordion.vue?5df3","webpack:///./src/core/ui-components/Accordion.vue","webpack:///./src/core/ui-components/Accordion.vue?4890","webpack:///./src/core/ui-components/Accordion.vue?e423","webpack:///./src/project/search/navigation/CategoryNameAndCount.vue?e9dc","webpack:///./src/project/search/navigation/CategoryNavigationV1.vue?c6cc","webpack:///./src/project/search/navigation/CategoryNavigationV1.vue","webpack:///./src/project/search/navigation/CategoryNavigationV1.vue?40fd","webpack:///./src/project/search/navigation/CategoryNavigationV1.vue?7820","webpack:///./src/core/ui-components/Accordion.vue?c71e","webpack:///./src/project/app/client-pages/CategoryPageV1.vue?e8df","webpack:///./src/project/app/client-pages/CategoryPageV1.vue","webpack:///./src/project/app/client-pages/CategoryPageV1.vue?2263","webpack:///./src/project/app/client-pages/CategoryPageV1.vue?b055","webpack:///./src/core/ui-components/AnimateValue.vue?0eb1","webpack:///./src/core/ui-components/AnimateValue.vue","webpack:///./src/core/ui-components/AnimateValue.vue?eac7","webpack:///./src/core/ui-components/AnimateValue.vue?6864"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","nameTag","tag","class","nameClass","menuItem","_v","_s","$dictionary","get","displayLabel","name","attrs","value","_e","staticRenderFns","$localeNumberFilter","productCount","hideProductCount","type","Object","default","Boolean","String","components","AnimateValue","component","disabled","hideHeader","headerClass","on","toggle","_t","isExpanded","icon","setFixedHeight","setAutoHeight","bodyTag","directives","rawName","expression","expanded","e","allowToggle","multiple","$parent","$children","forEach","child","el","style","height","scrollHeight","campaignName","campaignCode","activeMenuItem","rootMenuItem","path","url","query","$route","_l","key","id","children","menuItems","required","Array","CategoryNameAndCount","accordion","categoryId","pageDataUrl","handlePageDataCallback","handleSearchResultCallback","scopedSlots","_u","fn","ref","SearchProductControl","isFeatureEnabled","ProductListingPageV2","previousCategoryId","isFirstRequest","delayLoaderTimer","searchResult","seoInformation","seoCategoryName","seoBreadcrumb","settings","departmentPage","pageUrl","pageData","activeCategory","getCategoryById","page","getPage","includes","pageKey","location","getLocationForPage","paramString","entries","map","val","join","setCanonicalUrl","window","servercontext","culture","setOpenGraphUrl","expectedCategoryUrl","siteInfo","setPrerenderRedirectUrlsIfLocationIsWrong","delay","uaIsPrerender","uaIsBot","setTimeout","loadMetadataForPage","category","getCategorySeoInformation","then","result","updatePageTitleAndDescription","getBreadCrumbForCategory","categoryValues","cat","catIndex","length","totalHits","seofyNumbers","totalResults","undefined","toString","labelValues","brand","brandName","results","titleLabelKey","title","titleFromPage","seoTitle","titleWithParams","getWithNamedValues","setTitle","descriptionLabelKey","description","descriptionFromPage","seoDescription","descriptionWithParams","setDescription","to","from","isSearching","trackGenericPageView","clearTimeout","immediate","CategoryTileBlock","CategoryNavigation"],"mappings":"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","file":"js/chunk-50548dca.8d25a0c2.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex w-full\"},[_c(_vm.nameTag,{tag:\"component\",staticClass:\"text-left flex-1\",class:_vm.nameClass},[(_vm.menuItem.displayLabel)?[_vm._v(\" \"+_vm._s(_vm.$dictionary.get(_vm.menuItem.displayLabel))+\" \")]:[_vm._v(\" \"+_vm._s(_vm.menuItem.name)+\" \")]],2),(_vm.showValue)?_c('AnimateValue',{staticClass:\"text-gray-800 ml-3\",attrs:{\"value\":_vm.value}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from 'vue';\r\nimport { Component, Prop } from 'vue-property-decorator';\r\nimport { MenuItem } from '@/types/apiServerContract';\r\nimport AnimateValue from '@/core/ui-components/AnimateValue.vue';\r\n\r\n@Component({\r\n components: { AnimateValue }\r\n})\r\nexport default class CategoryNameAndCount extends Vue {\r\n @Prop({\r\n type: Object,\r\n default: 'string'\r\n })\r\n menuItem!: MenuItem;\r\n\r\n @Prop({\r\n type: Boolean,\r\n default: false\r\n })\r\n hideProductCount!: boolean;\r\n\r\n @Prop({\r\n type: String,\r\n default: 'span'\r\n })\r\n nameTag!: string;\r\n\r\n @Prop({\r\n type: String\r\n })\r\n nameClass!: string;\r\n\r\n get value() {\r\n return `(${this.$localeNumberFilter.get(this.menuItem.productCount)})`;\r\n }\r\n\r\n get showValue() {\r\n return !this.hideProductCount && typeof this.menuItem.productCount === 'number';\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CategoryNameAndCount.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CategoryNameAndCount.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CategoryNameAndCount.vue?vue&type=template&id=09190ff6&scoped=true&\"\nimport script from \"./CategoryNameAndCount.vue?vue&type=script&lang=ts&\"\nexport * from \"./CategoryNameAndCount.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CategoryNameAndCount.vue?vue&type=style&index=0&id=09190ff6&lang=less&scoped=true&\"\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 \"09190ff6\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(_vm.tag,{tag:\"component\",staticClass:\"accordion\",class:{ disabled: _vm.disabled }},[(!_vm.hideHeader)?_c('div',{staticClass:\"accordion-header\",class:_vm.headerClass,on:{\"click\":_vm.toggle}},[_vm._t(\"header\",null,{\"active\":_vm.isExpanded}),(_vm.icon)?_c('CIcon',{class:{ 'accordion-rotate': _vm.isExpanded },attrs:{\"height\":\"11\",\"width\":\"11\",\"name\":_vm.icon}}):_vm._e()],2):_vm._e(),_c('transition',{attrs:{\"appear\":\"\",\"name\":\"accordion\"},on:{\"enter\":_vm.setFixedHeight,\"after-enter\":_vm.setAutoHeight,\"before-leave\":_vm.setFixedHeight}},[(_vm.keepAlive)?[_c(_vm.bodyTag,{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isExpanded),expression:\"isExpanded\"}],tag:\"component\",staticClass:\"accordion-body\"},[_c('div',{staticClass:\"accordion-body-inner\"},[_vm._t(\"default\")],2)])]:[(_vm.isExpanded)?_c(_vm.bodyTag,{tag:\"component\",staticClass:\"accordion-body\"},[_c('div',{staticClass:\"accordion-body-inner\"},[_vm._t(\"default\")],2)]):_vm._e()]],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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\r\nimport { Vue, Component, Prop } from 'vue-property-decorator';\r\nimport IAccordion from '@/core/ui-components/IAccordion';\r\n\r\n@Component\r\nexport default class Accordion extends Vue implements IAccordion {\r\n @Prop({ type: String, default: 'div' }) tag!: string;\r\n @Prop({ type: String, default: 'div' }) bodyTag!: string;\r\n @Prop({ type: String, default: '' }) headerClass!: string;\r\n @Prop({ type: String, default: 'arrow-down' }) icon!: string;\r\n\r\n @Prop({ type: Boolean, default: false }) multiple!: boolean;\r\n @Prop({ type: Boolean, default: false }) disabled!: boolean;\r\n @Prop({ type: Boolean, default: false }) expanded!: boolean;\r\n @Prop({ type: Boolean, default: false }) hideHeader!: boolean;\r\n @Prop({ type: Boolean, default: false }) keepAlive!: boolean;\r\n @Prop({ type: Boolean, default: false }) allowToggle!: boolean;\r\n\r\n isExpanded: boolean = false;\r\n\r\n created() {\r\n this.isExpanded = this.expanded;\r\n }\r\n\r\n close() {\r\n this.isExpanded = false;\r\n }\r\n\r\n open(): void {\r\n this.isExpanded = true;\r\n }\r\n\r\n toggle(e: any) {\r\n if (this.disabled) return;\r\n\r\n this.allowToggle && (this.isExpanded = !this.isExpanded);\r\n\r\n if (this.multiple) return;\r\n\r\n // Close the rest\r\n this.$parent!.$children.forEach(child => {\r\n if (child instanceof Accordion && child !== this) {\r\n child.isExpanded = false;\r\n }\r\n });\r\n }\r\n\r\n setFixedHeight(el: HTMLElement) {\r\n el.style.height = el.scrollHeight + 'px';\r\n }\r\n\r\n setAutoHeight(el: HTMLElement) {\r\n el.style.height = 'auto';\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Accordion.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Accordion.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Accordion.vue?vue&type=template&id=9adab3c0&\"\nimport script from \"./Accordion.vue?vue&type=script&lang=ts&\"\nexport * from \"./Accordion.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Accordion.vue?vue&type=style&index=0&lang=less&\"\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/mini-css-extract-plugin/dist/loader.js??ref--11-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--11-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--11-oneOf-1-2!../../../../node_modules/less-loader/dist/cjs.js??ref--11-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CategoryNameAndCount.vue?vue&type=style&index=0&id=09190ff6&lang=less&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--11-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--11-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--11-oneOf-1-2!../../../../node_modules/less-loader/dist/cjs.js??ref--11-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CategoryNameAndCount.vue?vue&type=style&index=0&id=09190ff6&lang=less&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('nav',{staticClass:\"bg-white p-20 relative\"},[(_vm.campaignCode)?_c('h2',{staticClass:\"capitalize text-14 md:text-16 mb-5 md:mb-10 font-medium\"},[_vm._v(\" \"+_vm._s(_vm.campaignName || _vm.campaignCode)+\" \")]):_vm._e(),(_vm.rootMenuItem)?_c('CultureAwareRouterLink',{staticClass:\"mb-5 md:mb-10 last:mb-0 hover:underline font-medium\",class:{'font-bold' : _vm.activeMenuItem === _vm.rootMenuItem, 'text-12' : _vm.campaignCode, 'text-14 md:text-16' : !_vm.campaignCode },attrs:{\"to\":{ path: _vm.rootMenuItem.url, query: _vm.$route.query }}},[_c('CategoryNameAndCount',{attrs:{\"menu-item\":_vm.rootMenuItem,\"hide-product-count\":\"\"}})],1):_vm._e(),_vm._l((_vm.menuItemsOrRoot),function(menuItem){return _c('NavigationTree',{key:menuItem.id,staticClass:\"font-medium\",attrs:{\"menu-item\":menuItem,\"selected-menu-item\":_vm.activeMenuItem,\"use-route-navigation\":\"\"}})})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport Vue from 'vue';\r\nimport { Component, Prop } from 'vue-property-decorator';\r\nimport accordion from '@/core/ui-components/Accordion.vue';\r\nimport { MenuItem } from '@/types/apiServerContract';\r\nimport CategoryNameAndCount from '@/project/search/navigation/CategoryNameAndCount.vue';\r\n\r\n@Component({\r\n components: { CategoryNameAndCount, accordion }\r\n})\r\nexport default class CategoryNavigationV2 extends Vue {\r\n @Prop({ required: false, type: Object })\r\n readonly rootMenuItem!: MenuItem | null;\r\n\r\n @Prop({ required: false, type: Object })\r\n activeMenuItem!: MenuItem | null;\r\n\r\n @Prop({ required: false, type: String })\r\n campaignCode!: string | null;\r\n\r\n @Prop({ required: false, type: String })\r\n campaignName!: string | null;\r\n\r\n @Prop({ type: Array, required: true })\r\n menuItems!: readonly MenuItem[];\r\n\r\n get menuItemsOrRoot() {\r\n return this.rootMenuItem ? this.rootMenuItem.children : this.menuItems;\r\n }\r\n\r\n get query() {\r\n return this.$route.query;\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CategoryNavigationV1.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CategoryNavigationV1.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CategoryNavigationV1.vue?vue&type=template&id=eeaec742&\"\nimport script from \"./CategoryNavigationV1.vue?vue&type=script&lang=ts&\"\nexport * from \"./CategoryNavigationV1.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/mini-css-extract-plugin/dist/loader.js??ref--11-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--11-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--11-oneOf-1-2!../../../node_modules/less-loader/dist/cjs.js??ref--11-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Accordion.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--11-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--11-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--11-oneOf-1-2!../../../node_modules/less-loader/dist/cjs.js??ref--11-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Accordion.vue?vue&type=style&index=0&lang=less&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('SearchProductControl',{attrs:{\"category-id\":_vm.categoryId,\"page-data-url\":_vm.pageDataUrl,\"page-data-result-callback\":_vm.handlePageDataCallback,\"search-result-callback\":_vm.handleSearchResultCallback,\"context-key\":\"category\",\"with-results-breadcrumb\":\"\"},scopedSlots:_vm._u([{key:\"navigation\",fn:function(ref){\nvar activeMenuItem = ref.activeMenuItem;\nvar rootMenuItem = ref.rootMenuItem;\nvar menuItems = ref.menuItems;\nreturn [_c('CategoryNavigation',{attrs:{\"active-menu-item\":activeMenuItem,\"root-menu-item\":rootMenuItem,\"menu-items\":menuItems}})]}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator';\r\nimport gtmService from '@/project/tracking/gtm/GTM.service';\r\nimport { Route } from 'vue-router';\r\nimport megaMenuService from '@/project/shared/megaMenu.service';\r\nimport dictionaryService, { NamedLabelArgument } from '@/core/translation/dictionary.service';\r\nimport domService from '@/core/dom/dom.service';\r\nimport { upperFirst } from 'lodash';\r\nimport CategoryNavigation from '@/project/search/navigation/CategoryNavigationV1.vue';\r\nimport { PageData } from '@/types/contentServerContract';\r\nimport CategoryTileBlock from '@/project/app/blocks/categories/CategoryTileBlock.vue';\r\nimport botService from '@/project/site/bot.service';\r\nimport { CategorySeoInformationViewModel, Feature, MenuItem, SearchViewModel } from '@/types/apiServerContract';\r\nimport Api from '@/project/http/Api.service';\r\nimport urlHelper from '@/core/urlHelper.service';\r\nimport { UrlQueryKey } from '@/core/urlQueryKey';\r\nimport serverContextService from '@/core/serverContext.service';\r\nconst SearchProductControl = () => serverContextService.isFeatureEnabled(Feature.ProductListingPageV2)\r\n ? import('@/project/search/SearchProductControl.vue')\r\n : import('@/project/search/SearchProductControlV1.vue');\r\n@Component({\r\n components: { CategoryTileBlock, SearchProductControl, CategoryNavigation }\r\n})\r\nexport default class CategoryPage extends Vue {\r\n @Prop(String)\r\n categoryId!: string;\r\n\r\n previousCategoryId: string = '';\r\n isFirstRequest: boolean = true;\r\n delayLoaderTimer: number = 0;\r\n\r\n searchResult: SearchViewModel | null = null;\r\n seoInformation: CategorySeoInformationViewModel | null = null;\r\n seoCategoryName: null | string = null;\r\n seoBreadcrumb: MenuItem[] = [];\r\n\r\n get pageDataUrl() {\r\n if (serverContextService.settings?.departmentPage) {\r\n const pageUrl = `${serverContextService.settings?.departmentPage}?categoryId=${this.categoryId}`;\r\n return pageUrl;\r\n }\r\n }\r\n\r\n async handlePageDataCallback(pageData?: PageData) {\r\n const activeCategory = this.categoryId ? await megaMenuService.getCategoryById(this.categoryId) : null;\r\n\r\n const page = urlHelper.getPage();\r\n if (activeCategory?.url && page > 1 && !activeCategory?.url.includes(`${UrlQueryKey.pageKey}=`)) {\r\n const location = urlHelper.getLocationForPage(page) as any;\r\n const query = location.query || {};\r\n const paramString = Object.entries(query).map(([key, val]) => `${key}=${val}`).join('&');\r\n activeCategory.url = `${activeCategory.url}${(activeCategory.url.includes('?') ? '&' : '?')}${paramString}`;\r\n }\r\n\r\n domService.setCanonicalUrl(window.servercontext.culture + activeCategory?.url ?? '', true);\r\n domService.setOpenGraphUrl(window.servercontext.culture + activeCategory?.url ?? '', true);\r\n const expectedCategoryUrl = activeCategory?.url ? `${serverContextService.siteInfo.url}${activeCategory.url}` : null;\r\n botService.setPrerenderRedirectUrlsIfLocationIsWrong(expectedCategoryUrl);\r\n }\r\n\r\n async handleSearchResultCallback(searchResult: SearchViewModel) {\r\n const delay = (botService.uaIsPrerender() || botService.uaIsBot()) ? 0 : this.isFirstRequest ? 1500 : 750;\r\n this.isFirstRequest = false;\r\n this.searchResult = searchResult;\r\n this.delayLoaderTimer = setTimeout(() => {\r\n this.loadMetadataForPage();\r\n }, delay);\r\n }\r\n\r\n async loadMetadataForPage() {\r\n if (this.categoryId !== this.previousCategoryId) {\r\n Api.category.getCategorySeoInformation(this.categoryId).then(result => {\r\n this.seoInformation = result;\r\n this.updatePageTitleAndDescription();\r\n });\r\n megaMenuService.getBreadCrumbForCategory(this.categoryId).then(result => {\r\n this.seoBreadcrumb = result || [];\r\n this.updatePageTitleAndDescription();\r\n });\r\n this.previousCategoryId = this.categoryId;\r\n }\r\n }\r\n\r\n updatePageTitleAndDescription() {\r\n const categoryValues = {};\r\n this.seoBreadcrumb.map((cat, catIndex) => {\r\n categoryValues[`categoryLevel${catIndex + 1}`] = cat.name;\r\n });\r\n const activeCategory = this.categoryId && this.seoBreadcrumb.length > 0 ? this.seoBreadcrumb[this.seoBreadcrumb.length - 1] : null;\r\n this.seoCategoryName = upperFirst(activeCategory?.name ?? 'Unknown');\r\n\r\n const totalHits = dictionaryService.seofyNumbers(this.searchResult?.totalHits);\r\n const totalResults = totalHits !== undefined ? totalHits.toString(10) : undefined;\r\n const labelValues: NamedLabelArgument = {\r\n brand: this.searchResult?.brandName || undefined,\r\n totalResults: totalResults,\r\n results: totalResults,\r\n category: this.seoCategoryName,\r\n ...categoryValues\r\n };\r\n\r\n const titleLabelKey = 'Category.SEO.Title';\r\n const title = dictionaryService.get(titleLabelKey, [this.seoCategoryName]);\r\n const titleFromPage = this.seoInformation?.seoTitle;\r\n const titleWithParams = dictionaryService.getWithNamedValues(titleFromPage || titleLabelKey, labelValues, true, !!titleFromPage);\r\n domService.setTitle(titleWithParams || title);\r\n\r\n const descriptionLabelKey = 'Category.SEO.Description';\r\n const description = dictionaryService.get(descriptionLabelKey, [this.seoCategoryName]);\r\n const descriptionFromPage = this.seoInformation?.seoDescription;\r\n const descriptionWithParams = dictionaryService.getWithNamedValues(descriptionFromPage || descriptionLabelKey, labelValues, true, !!descriptionFromPage);\r\n domService.setDescription(descriptionWithParams || description);\r\n }\r\n\r\n @Watch('$route', {\r\n immediate: true\r\n })\r\n onRouteChange(to: Route, from?: Route) {\r\n const isSearching = urlHelper.isSearching(to) || urlHelper.isSearching(from);\r\n if (isSearching) return;\r\n\r\n if (this.$route.name) {\r\n gtmService.trackGenericPageView(this.$route.name);\r\n }\r\n }\r\n\r\n destroyed() {\r\n if (this.delayLoaderTimer) {\r\n clearTimeout(this.delayLoaderTimer);\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CategoryPageV1.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CategoryPageV1.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CategoryPageV1.vue?vue&type=template&id=6d78c9f8&\"\nimport script from \"./CategoryPageV1.vue?vue&type=script&lang=ts&\"\nexport * from \"./CategoryPageV1.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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('transition',{attrs:{\"mode\":\"out-in\",\"enter-active-class\":\"animated fadeIn u-anim-dur-200\",\"leave-active-class\":\"animated fadeOut u-anim-dur-400\"}},[_c('span',{key:_vm.value},[_vm._v(\" \"+_vm._s(_vm.value)+\" \")])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\r\nimport { Vue, Component, Prop } from 'vue-property-decorator';\r\n\r\n@Component\r\nexport default class AnimateValue extends Vue {\r\n @Prop()\r\n value!: any\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AnimateValue.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AnimateValue.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AnimateValue.vue?vue&type=template&id=6adf84b2&\"\nimport script from \"./AnimateValue.vue?vue&type=script&lang=ts&\"\nexport * from \"./AnimateValue.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"],"sourceRoot":""}