{"version":3,"file":"js/aas-bundle.js","mappings":"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","sources":["webpack://ESCID.ESPP2.AlternativeArticles.Service/./scripts/typescript/ajax-loader-request.ts","webpack://ESCID.ESPP2.AlternativeArticles.Service/./scripts/typescript/sticky-header.ts","webpack://ESCID.ESPP2.AlternativeArticles.Service/./scripts/typescript/carousels.ts","webpack://ESCID.ESPP2.AlternativeArticles.Service/./scripts/typescript/collapse.ts","webpack://ESCID.ESPP2.AlternativeArticles.Service/./scripts/typescript/sub-features-equal-height.ts","webpack://ESCID.ESPP2.AlternativeArticles.Service/./scripts/typescript/ajax-loader.ts","webpack://ESCID.ESPP2.AlternativeArticles.Service/./scripts/typescript/tooltip-manager-mobile.ts","webpack://ESCID.ESPP2.AlternativeArticles.Service/./scripts/typescript/tooltip-manager-web.ts","webpack://ESCID.ESPP2.AlternativeArticles.Service/./scripts/typescript/index.ts"],"sourcesContent":["var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nexport class AjaxLoaderRequest {\n constructor(apiUrl, isMobileShop) {\n this.apiUrl = apiUrl;\n this.isMobileShop = isMobileShop;\n }\n requestFor(savKeyToLoad_1, content_1) {\n return __awaiter(this, arguments, void 0, function* (savKeyToLoad, content, itemOrigin = null, detailsCanBeHidden = false, displayedInCategoryNavKey = '', showHeader = true) {\n const url = this.getAjaxUrl(savKeyToLoad, content, itemOrigin, detailsCanBeHidden, displayedInCategoryNavKey, showHeader);\n const controller = new AbortController();\n const timeout = 30000;\n const timeoutId = setTimeout(() => controller.abort(), timeout);\n try {\n const response = yield fetch(url, { method: 'GET' });\n clearTimeout(timeoutId);\n if (!response.ok || response.status === 204) {\n return '';\n }\n return yield response.text();\n }\n catch (_error) {\n return '';\n }\n });\n }\n getAjaxUrl(savKey, content, itemOrigin, detailsCanBeHidden, displayedInCategoryNavKey, showHeader) {\n const params = new URLSearchParams({\n viewMode: 'ajax',\n maxNumberOfAlternativeArticles: '3',\n isMobileShop: String(this.isMobileShop),\n content,\n detailsCanBeHidden: String(detailsCanBeHidden),\n showHeader: String(showHeader),\n });\n if (itemOrigin) {\n params.append('itemorigin', itemOrigin);\n }\n if (displayedInCategoryNavKey) {\n params.append('displayedInCategoryNavKey', displayedInCategoryNavKey);\n }\n return `${this.apiUrl}articles/${savKey}?${params.toString()}`;\n }\n}\n","export class StickyHeader {\n constructor(savKey, content, shouldSticky = false) {\n var _a, _b, _c, _d;\n this.savKey = savKey;\n this.content = content;\n this.originalSalesDesignationOffSetTop = 0;\n this.didScroll = false;\n this.consumerCssModification = '';\n this.shouldSticky = shouldSticky;\n this.isPDP = !!document.getElementById('product-details-page-entry');\n this.aasScope = document.querySelector(`.scope-aas[data-sav-key=\"${savKey}\"][data-content=\"${content}\"]`);\n this.aasSalesDesignationHeader = (_a = this.aasScope) === null || _a === void 0 ? void 0 : _a.querySelector('.aas-salesdesignation-header-container');\n this.aasContent = (_b = this.aasScope) === null || _b === void 0 ? void 0 : _b.querySelector('.aas-content');\n const salesDesignation = (_c = this.aasScope) === null || _c === void 0 ? void 0 : _c.querySelector('.aas-grid .index-product .sav-salesdesignation');\n this.originalSalesDesignationOffSetTop = (_d = salesDesignation === null || salesDesignation === void 0 ? void 0 : salesDesignation.offsetTop) !== null && _d !== void 0 ? _d : 0;\n this.bindEvents();\n }\n bindEvents() {\n document.addEventListener('scroll', () => {\n this.didScroll = true;\n }, true);\n this.trackScrollChanges();\n window.shell.subscribeTo('AAS.view.shown', this.rebindScrollContainer.bind(this), 'AAS.view.shown.sticky.header');\n window.shell.subscribeTo('AAS.view.changed', this.saveConsumerViewChange.bind(this), 'AAS.view.changed.sticky.header');\n }\n trackScrollChanges() {\n const update = () => {\n if (this.didScroll && this.shouldSticky) {\n this.didScroll = false;\n this.setHeaderSticky();\n }\n requestAnimationFrame(update);\n };\n requestAnimationFrame(update);\n }\n rebindScrollContainer(payload) {\n var _a, _b;\n if (payload.detail.useStickyHeader != null) {\n this.shouldSticky = payload.detail.useStickyHeader;\n if (this.isPDP) {\n const salesDesignation = (_a = this.aasScope) === null || _a === void 0 ? void 0 : _a.querySelector('.aas-grid .index-product .sav-salesdesignation');\n this.originalSalesDesignationOffSetTop = (_b = salesDesignation === null || salesDesignation === void 0 ? void 0 : salesDesignation.offsetTop) !== null && _b !== void 0 ? _b : 0;\n }\n }\n }\n saveConsumerViewChange(payload) {\n var _a, _b;\n this.consumerCssModification = (_b = (_a = payload.detail.cssModification) === null || _a === void 0 ? void 0 : _a.salesdesignationHeaderViewSticky) !== null && _b !== void 0 ? _b : '';\n this.setConsumerViewChange();\n }\n setConsumerViewChange() {\n if (this.aasSalesDesignationHeader.classList.contains('sticky')) {\n this.aasSalesDesignationHeader.style.cssText = this.consumerCssModification;\n }\n else {\n this.aasSalesDesignationHeader.style.cssText = '';\n }\n }\n setHeaderSticky() {\n const topPosition = this.originalSalesDesignationOffSetTop - this.scrollPosition();\n const shouldStick = topPosition <= 10;\n this.aasSalesDesignationHeader.classList.toggle('sticky', shouldStick);\n this.setConsumerViewChange();\n }\n scrollPosition() {\n var _a, _b;\n return (_b = (_a = this.aasContent) === null || _a === void 0 ? void 0 : _a.scrollTop) !== null && _b !== void 0 ? _b : window.scrollY;\n }\n}\n","export class Carousels {\n constructor(aasScope, savKey) {\n this.aasScope = aasScope;\n this.savKey = savKey;\n this.cardsCount = 0;\n this.currentIndex = 0;\n this.initCarousel();\n this.bindEvents();\n this.updatePager();\n }\n initCarousel() {\n var _a;\n this.currentIndex = 0;\n const currentIndexSelector = this.getSelectorFromCardIndex(this.currentIndex);\n this.aasScope.querySelectorAll('.wrapper').forEach((element) => {\n element.classList.add(currentIndexSelector);\n });\n (_a = this.aasScope.querySelector('.aas-card')) === null || _a === void 0 ? void 0 : _a.classList.add(currentIndexSelector);\n this.cardsCount = this.aasScope.querySelectorAll('.aas-pager-container .pager-dot').length;\n }\n bindEvents() {\n this.bindNext();\n this.bindPrev();\n const aasContent = this.aasScope.querySelector('.aas-content');\n if (aasContent) {\n const hammertime = new Hammer.Manager(aasContent, {\n domEvents: true,\n recognizers: [\n [Hammer.Swipe, { direction: Hammer.DIRECTION_HORIZONTAL, threshold: 5, velocity: 0.1 }],\n ],\n drag_block_vertical: true\n });\n hammertime.on('swipe', (event) => {\n const gestureAngle = Math.abs(event.angle);\n if (gestureAngle >= 0 && gestureAngle <= 45) {\n this.goPrev();\n }\n else if (gestureAngle >= 135 && gestureAngle <= 180) {\n this.goNext();\n }\n });\n }\n }\n getSelectorFromCardIndex(index) {\n return `card-${index}`;\n }\n bindNext() {\n var _a;\n (_a = this.aasScope.querySelector('.pager-arrow-right')) === null || _a === void 0 ? void 0 : _a.addEventListener('click', (event) => {\n event.preventDefault();\n event.stopPropagation();\n this.goNext();\n });\n }\n goNext() {\n if (this.currentIndex + 1 < this.cardsCount) {\n this.updateIndexSelector(this.currentIndex + 1);\n }\n }\n bindPrev() {\n var _a;\n (_a = this.aasScope.querySelector('.pager-arrow-left')) === null || _a === void 0 ? void 0 : _a.addEventListener('click', (event) => {\n event.preventDefault();\n event.stopPropagation();\n this.goPrev();\n });\n }\n goPrev() {\n if (this.currentIndex - 1 >= 0) {\n this.updateIndexSelector(this.currentIndex - 1);\n }\n }\n updateIndexSelector(newIndex) {\n var _a;\n if (newIndex === this.currentIndex)\n return;\n const currentIndexSelector = this.getSelectorFromCardIndex(this.currentIndex);\n const newIndexSelector = this.getSelectorFromCardIndex(newIndex);\n this.aasScope.querySelectorAll('.wrapper').forEach((element) => {\n element.classList.remove(currentIndexSelector);\n element.classList.add(newIndexSelector);\n });\n (_a = this.aasScope.querySelector('.aas-card')) === null || _a === void 0 ? void 0 : _a.classList.replace(currentIndexSelector, newIndexSelector);\n this.currentIndex = newIndex;\n this.updatePager();\n }\n updatePager() {\n this.aasScope.querySelectorAll('.pager-dot-wrapper').forEach((element) => {\n element.querySelectorAll('.pager-dot').forEach((dot, index) => {\n dot.classList.toggle('current-dot', index === this.currentIndex);\n });\n });\n const prevButton = this.aasScope.querySelector('.pager-arrow-left');\n const nextButton = this.aasScope.querySelector('.pager-arrow-right');\n prevButton === null || prevButton === void 0 ? void 0 : prevButton.classList.toggle('hidden', this.currentIndex === 0);\n nextButton === null || nextButton === void 0 ? void 0 : nextButton.classList.toggle('hidden', this.currentIndex === this.cardsCount - 1);\n }\n}\n","var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nexport class Collapse {\n constructor(scope, subFeatureEqualHeightCalculator, savKey) {\n this.scope = scope;\n this.subFeatureEqualHeightCalculator = subFeatureEqualHeightCalculator;\n this.savKey = savKey;\n this.rowHeight = {};\n this.separatorArray = [];\n this.detailElements = [];\n if (!scope)\n return;\n this.separatorArray = Array.from(scope.querySelectorAll('.separator'));\n if (!this.separatorArray.length)\n return;\n this.detailElements = Array.from(scope.querySelectorAll('.details-hidden'));\n this.saveRowHeight();\n this.bindCollapseEvents();\n this.bindToggleOnlyDifferences();\n this.bindToggleShowDetails();\n this.adjustFallbackIconContainerHeight();\n }\n saveRowHeight() {\n const collapseAbleArray = Array.from(this.scope.querySelectorAll('.collapse-able'));\n collapseAbleArray.forEach((row) => {\n const rowIndex = row.classList[0];\n const rowWrapper = this.scope.querySelector(`.${rowIndex}.wrapper`);\n row.style.height = 'auto';\n let height = row.clientHeight;\n if (rowWrapper) {\n rowWrapper.style.removeProperty('height');\n height = Math.max(height, rowWrapper.clientHeight);\n }\n this.rowHeight[rowIndex] = height;\n row.style.height = `${height}px`;\n if (rowWrapper)\n rowWrapper.style.height = `${height}px`;\n });\n }\n bindCollapseEvents() {\n this.bindToggleRow();\n this.bindToggleAllRows();\n }\n bindToggleRow() {\n this.scope.addEventListener('click', (event) => {\n const clickedElement = event.target;\n const clickedSeparator = clickedElement.closest('.separator');\n if (!clickedSeparator)\n return;\n const shouldFold = !clickedSeparator.classList.contains('folded');\n this.setRowHeight(clickedSeparator, shouldFold);\n });\n }\n bindToggleAllRows() {\n const collapseAllButton = this.scope.querySelector('.collapse-all');\n if (!collapseAllButton)\n return;\n collapseAllButton.addEventListener('click', () => {\n const shouldFold = !collapseAllButton.classList.contains('folded');\n this.separatorArray.forEach((separator) => this.setRowHeight(separator, shouldFold));\n collapseAllButton.classList.toggle('folded');\n });\n }\n bindToggleOnlyDifferences() {\n const button = this.scope.querySelector('.only-differences');\n if (!button)\n return;\n button.addEventListener('click', () => __awaiter(this, void 0, void 0, function* () {\n button.classList.toggle('checked');\n const showOnlyDifferences = button.classList.contains('checked');\n yield this.loadingSpinner(true);\n this.toggleSameFeatures(showOnlyDifferences);\n this.updateSameSubFeatures();\n yield this.loadingSpinner(false);\n }));\n }\n bindToggleShowDetails() {\n const button = this.scope.querySelector('.collapse-details');\n if (!button)\n return;\n const collapseAllButton = this.scope.querySelector('.collapse-all');\n const showOnlyDifferencesButton = this.scope.querySelector('.only-differences');\n const subFeaturesArray = Array.from(this.scope.querySelectorAll('.sub-features'));\n button.addEventListener('click', () => {\n button.classList.toggle('folded');\n this.detailElements.forEach((detail) => {\n detail.classList.toggle('details-hidden');\n detail.classList.remove('hide-feature');\n detail.style.removeProperty('height');\n });\n collapseAllButton === null || collapseAllButton === void 0 ? void 0 : collapseAllButton.classList.remove('folded');\n this.separatorArray.forEach((separator) => separator.classList.remove('folded'));\n showOnlyDifferencesButton === null || showOnlyDifferencesButton === void 0 ? void 0 : showOnlyDifferencesButton.classList.remove('checked');\n subFeaturesArray.forEach((subFeature) => {\n subFeature.style.removeProperty('height');\n subFeature.classList.remove('hide-feature');\n });\n this.subFeatureEqualHeightCalculator.setEqualHeightForEachSubFeature();\n this.saveRowHeight();\n });\n }\n loadingSpinner(open) {\n return __awaiter(this, void 0, void 0, function* () {\n this.scope.classList.toggle('open-overlay', open);\n return new Promise((resolve) => setTimeout(resolve, 1000));\n });\n }\n toggleSameFeatures(showOnlyDifferences) {\n const sameFeaturesArray = Array.from(this.scope.querySelectorAll('.same-features'));\n sameFeaturesArray.forEach((sameFeature) => {\n var _a;\n sameFeature.classList.toggle('hide-feature', showOnlyDifferences);\n if (sameFeature.classList.contains('extras')) {\n (_a = sameFeature.parentElement) === null || _a === void 0 ? void 0 : _a.classList.toggle('hide-feature', showOnlyDifferences);\n }\n });\n }\n updateSameSubFeatures() {\n const featureWithSameSubFeaturesArray = Array.from(this.scope.querySelectorAll('.same-sub-features'));\n featureWithSameSubFeaturesArray.forEach((feature) => {\n const index = feature.classList[0];\n const rowWithSubFeaturesArray = Array.from(this.scope.querySelectorAll(`.${index}:not(.separator)`));\n const featureRowIsFolded = feature.classList.contains('folded');\n rowWithSubFeaturesArray.forEach((row) => {\n this.adjustSubFeatureStyles(row);\n this.updateRowHeight(row, index, featureRowIsFolded);\n });\n if (!featureRowIsFolded) {\n this.setRowHeight(feature, false);\n }\n });\n }\n adjustSubFeatureStyles(row) {\n Array.from(row.querySelectorAll('.sav-filters')).forEach((container) => this.adjustLastSubFeatureDividerVisibility(container));\n }\n adjustLastSubFeatureDividerVisibility(container) {\n var _a, _b;\n (_a = container.querySelector('.sub-features.last-visible')) === null || _a === void 0 ? void 0 : _a.classList.remove('last-visible');\n const visibleNow = container.querySelectorAll('.sub-features:not(.hide-feature)');\n (_b = visibleNow[visibleNow.length - 1]) === null || _b === void 0 ? void 0 : _b.classList.add('last-visible');\n }\n updateRowHeight(row, index, isFolded) {\n row.style.height = 'auto';\n this.rowHeight[index] = row.clientHeight;\n if (isFolded)\n row.style.height = '0';\n }\n setRowHeight(separator, fold) {\n const rowIndex = separator.classList[0];\n const rowElementsArray = Array.from(this.scope.querySelectorAll(`.${rowIndex}:not(.separator)`));\n const rowHeight = fold ? 0 : this.rowHeight[rowIndex];\n rowElementsArray.forEach((element) => (element.style.height = `${rowHeight}px`));\n separator.classList.toggle('folded', fold);\n }\n adjustFallbackIconContainerHeight() {\n const featureValueRowToAdjust = [];\n this.scope.querySelectorAll('.sav-filters').forEach((savFilterValue) => {\n savFilterValue.querySelectorAll('.aas-feature-value-distance[data-feature-value-row]').forEach((feature) => {\n const featureElement = feature;\n if (featureElement.clientHeight >= 48) {\n const featureRowIdentifier = `${featureElement.dataset.featureIndex}#${featureElement.dataset.featureValueRow}#${featureElement.clientHeight}`;\n if (!featureValueRowToAdjust.includes(featureRowIdentifier)) {\n featureValueRowToAdjust.push(featureRowIdentifier);\n }\n }\n });\n });\n featureValueRowToAdjust.forEach((identifier) => {\n const [featureIndex, featureRow, height] = identifier.split('#');\n this.scope.querySelectorAll(`.aas-feature-value-fallback-icon[data-feature-index='${featureIndex}'][data-feature-value-row='${featureRow}']`)\n .forEach((icon) => (icon.style.height = `${height}px`));\n });\n }\n}\n","import { Collapse } from './collapse';\nexport class SubFeaturesEqualHeight {\n constructor(scope) {\n this.scope = scope;\n this.subFeatureImageArray = [];\n this.selectedSubFeatureArray = [];\n this.imageLoadingCounter = 0;\n this.textModulesTextOnly = 0;\n if (!scope)\n return;\n this.selectedSubFeatureArray = Array.from(scope.querySelectorAll('.selected.has-sub-features'));\n this.subFeatureImageArray = Array.from(scope.querySelectorAll('.sub-features img.feature-image'));\n this.textModulesTextOnly = scope.querySelectorAll('.sub-features.extras div.feature-textbaustein-noimage').length;\n this.setImageLoadingMonitor();\n }\n setImageLoadingMonitor() {\n if (!this.subFeatureImageArray.length) {\n if (this.textModulesTextOnly > 0) {\n this.setEqualHeightForEachSubFeature();\n }\n new Collapse(this.scope, this);\n return;\n }\n this.imageLoadingCounter = 0;\n this.subFeatureImageArray.forEach((image) => {\n if (image.complete) {\n this.imageLoadFinished();\n }\n else {\n image.addEventListener('load', () => this.imageLoadFinished());\n image.addEventListener('error', () => this.imageLoadFinished());\n }\n });\n }\n imageLoadFinished() {\n this.imageLoadingCounter += 1;\n if (this.imageLoadingCounter === this.subFeatureImageArray.length) {\n this.setEqualHeightForEachSubFeature();\n new Collapse(this.scope, this);\n }\n }\n setEqualHeightForEachSubFeature() {\n this.selectedSubFeatureArray.forEach((rowSelected) => {\n const rowIndex = rowSelected.classList[0];\n const rowWrapperSelector = `.${rowIndex}.wrapper`;\n const rowWrapperElement = this.scope.querySelector(rowWrapperSelector);\n if (!rowWrapperElement)\n return;\n const subFeatureSelectedRows = Array.from(rowSelected.querySelectorAll('.sub-features'));\n const subFeatureWrapperRows = Array.from(rowWrapperElement.querySelectorAll('.sub-features'));\n subFeatureSelectedRows.forEach((subFeatureRow) => {\n const subFeatureIndex = subFeatureRow.classList[1];\n const matchingSubFeatures = subFeatureWrapperRows.filter((sf) => sf.classList.contains(subFeatureIndex));\n matchingSubFeatures.unshift(subFeatureRow);\n const maxOfHeight = this.getMaxOfHeight(matchingSubFeatures);\n this.setSubFeatureHeight(matchingSubFeatures, maxOfHeight);\n });\n });\n }\n getMaxOfHeight(subFeatures) {\n return Math.max(...subFeatures.map((sf) => sf.clientHeight));\n }\n setSubFeatureHeight(subFeatures, height) {\n subFeatures.forEach((sf) => (sf.style.height = `${height}px`));\n }\n}\n","var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n};\nvar __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n};\nvar _AjaxLoader_ajaxLoader;\nimport { AjaxLoaderRequest } from './ajax-loader-request';\nimport { StickyHeader } from './sticky-header';\nimport { Carousels } from './carousels';\nimport { SubFeaturesEqualHeight } from './sub-features-equal-height';\nexport class AjaxLoader {\n constructor() {\n _AjaxLoader_ajaxLoader.set(this, void 0);\n __classPrivateFieldSet(this, _AjaxLoader_ajaxLoader, new AjaxLoaderRequest(this.getApiUrl(), this.isMobileShop()), \"f\");\n window.shell.subscribeTo('AAS.update', this.update.bind(this), 'AAS.update');\n }\n getApiUrl() {\n var _a, _b;\n return (_b = (_a = document.querySelector('.scope-aas')) === null || _a === void 0 ? void 0 : _a.dataset.apiurl) !== null && _b !== void 0 ? _b : '';\n }\n isMobileShop() {\n return document.documentElement.classList.contains('mobileshop');\n }\n queryAas(content) {\n return document.querySelectorAll(`.scope-aas${content ? `[data-content=\"${content}\"]` : ''}`);\n }\n update(event) {\n return __awaiter(this, void 0, void 0, function* () {\n const { savKeyToLoad, content: targetContent } = event.detail;\n const scopesToUpdate = this.queryAas(targetContent);\n scopesToUpdate.forEach((scope) => this.updateOneScope(scope, savKeyToLoad));\n });\n }\n isTrue(value) {\n return (value === null || value === void 0 ? void 0 : value.toLowerCase()) === 'true';\n }\n updateOneScope(scope, savKeyToLoad) {\n return __awaiter(this, void 0, void 0, function* () {\n var _a, _b, _c;\n const content = (_a = scope.dataset.content) !== null && _a !== void 0 ? _a : '';\n const ajaxResponse = yield __classPrivateFieldGet(this, _AjaxLoader_ajaxLoader, \"f\").requestFor(savKeyToLoad, content, (_b = scope.dataset.itemOrigin) !== null && _b !== void 0 ? _b : '', this.isTrue(scope.dataset.detailsCanBeHidden), (_c = scope.dataset.displayedInCategoryNavkey) !== null && _c !== void 0 ? _c : '', this.isTrue(scope.dataset.showHeader));\n if (!ajaxResponse) {\n window.shell.publishTo('AAS.updateError', {\n detail: {\n content,\n message: `Error loading AAS for ${savKeyToLoad}`,\n savKeyToLoad,\n },\n });\n return;\n }\n this.replace(ajaxResponse, content);\n this.initJsComponents(savKeyToLoad, content);\n const payload = {\n detail: { queryString: `.scope-aas[data-sav-key=\"${savKeyToLoad}\"][data-content=\"${content}\"]` },\n };\n window.shell.publishTo('AAS.updateFinished', payload);\n if (content === 'full') {\n const newAas = this.queryAas(content)[0];\n window.shell.publishTo('ManualProductComparison.CreateTouchPoints', newAas);\n newAas.querySelectorAll('a[data-quick-order-modal]').forEach((basketLink) => basketLink.addEventListener('click', this.redesignOrderModalLinkCallback.bind(this)));\n }\n if (document.documentElement.classList.contains('desktop')) {\n this.addTabNavigationEvents(content);\n setTimeout(() => this.addTabNavigationToMpcButtons(content), 300);\n }\n });\n }\n redesignOrderModalLinkCallback(event) {\n const target = event.currentTarget;\n window.shell.publishTo('ESPP.OrderModal.Open', {\n salesArticleNo: target.dataset.salesarticleno,\n masterArticleNo: target.dataset.masterarticleno,\n colorCode: target.dataset.colorcode,\n sizeCode: target.dataset.sizecode,\n itemOrigin: target.dataset.itemorigin,\n });\n }\n initJsComponents(savKey, content) {\n const newAas = this.queryAas(content)[0];\n if (this.isMobileShop()) {\n new StickyHeader(savKey, content);\n window.shell.once('AAS.view.shown', () => {\n new Carousels(newAas);\n new SubFeaturesEqualHeight(newAas);\n });\n }\n else {\n new SubFeaturesEqualHeight(newAas);\n }\n newAas.querySelectorAll('a[data-itemorigin]').forEach((link) => {\n const isOrderModalLink = link.hasAttribute('data-quick-order-modal');\n if (!isOrderModalLink) {\n ['mouseover', 'touchstart'].forEach((event) => link.addEventListener(event, () => {\n if (!link.href.includes('itemorigin')) {\n const containsQueryParameter = link.href.includes('?');\n link.href += `${containsQueryParameter ? '&' : '?'}itemorigin=${link.dataset.itemorigin}`;\n }\n }));\n }\n });\n }\n addTabNavigationToMpcButtons(content) {\n const newAas = this.queryAas(content)[0];\n newAas.querySelectorAll('.mpc-scope.scale-tile-container').forEach((button) => {\n button.setAttribute('role', 'button');\n button.setAttribute('focusable', 'true');\n button.addEventListener('keydown', (event) => {\n if (event.key === 'Enter')\n button.click();\n });\n });\n }\n addTabNavigationEvents(content) {\n const newAas = this.queryAas(content)[0];\n newAas.addEventListener('keydown', (event) => {\n if (event.code === 'Space')\n event.preventDefault();\n });\n ['.view-button', '.separator'].forEach((selector) => newAas.querySelectorAll(selector).forEach((div) => div.addEventListener('keydown', (event) => {\n if (event.key === 'Enter')\n div.click();\n })));\n ['.index-product a', '.aas-button.basket a'].forEach((selector) => newAas.querySelectorAll(selector).forEach((anchor) => anchor.addEventListener('keydown', (event) => {\n if (event.code === 'Space')\n anchor.click();\n })));\n }\n replace(response, content) {\n var _a;\n const newAas = new DOMParser().parseFromString(response, 'text/html').querySelector('.scope-aas');\n const aasToReplace = document.querySelector(`.scope-aas[data-content=\"${content}\"]`);\n (_a = aasToReplace === null || aasToReplace === void 0 ? void 0 : aasToReplace.parentNode) === null || _a === void 0 ? void 0 : _a.replaceChild(newAas, aasToReplace);\n }\n triggerAppShellUpdate(savKeyToReplace, savKeyToLoad, content, target) {\n const payload = { detail: { savKeyToReplace, savKeyToLoad, content, target } };\n window.shell.publishTo('AAS.update', payload);\n }\n}\n_AjaxLoader_ajaxLoader = new WeakMap();\n","export class ToolTipManagerMobile {\n constructor() {\n if (this.isMobileShop()) {\n this.bindEvents();\n this.triggerInitToolTips();\n }\n }\n bindEvents() {\n window.shell.subscribeTo('AAS.updateFinished', (payload) => {\n this.triggerInitToolTips(payload.querySelector);\n }, 'AAS.update');\n }\n isMobileShop() {\n return document.documentElement.classList.contains('mobileshop');\n }\n triggerInitToolTips(selector = '.scope-aas') {\n const scopeAas = document.querySelector(selector);\n if (scopeAas) {\n this.initToolTips(scopeAas);\n }\n }\n initToolTips(scopeAas) {\n const tooltipContainers = Array.from(scopeAas.querySelectorAll('.aas-tooltip-container'));\n const modal = scopeAas.querySelector('.aas-modal');\n if (!modal)\n return;\n const closeButtons = Array.from(modal.querySelectorAll('.aas-modal-close'));\n closeButtons.forEach((button) => {\n button.addEventListener('click', () => modal.style.display = 'none');\n });\n tooltipContainers.forEach((container) => {\n const infoIcons = Array.from(container.querySelectorAll('svg'));\n const tooltipContent = container.querySelector('.aas-tooltip-content');\n if (!tooltipContent)\n return;\n infoIcons.forEach((icon) => {\n icon.addEventListener('click', () => {\n const modalContent = modal.querySelector('.aas-modal-content');\n if (modalContent) {\n modalContent.innerHTML = tooltipContent.innerHTML;\n modal.style.display = 'block';\n }\n });\n });\n });\n window.addEventListener('click', (event) => {\n if (event.target === modal) {\n modal.style.display = 'none';\n }\n });\n }\n}\nnew ToolTipManagerMobile();\n","export class ToolTipManagerWeb {\n constructor() {\n this.closeDelay = 2000;\n if (!this.isMobileShop()) {\n this.bindEvents();\n }\n }\n bindEvents() {\n window.shell.subscribeTo('AAS.updateFinished', (payload) => {\n this.triggerInitToolTips(payload.querySelector);\n }, 'AAS.update');\n }\n triggerInitToolTips(selector = '.scope-aas.aas-full') {\n const scopeAas = document.querySelector(selector);\n if (!scopeAas)\n return;\n this.scope = scopeAas;\n this.registerEvents();\n }\n isMobileShop() {\n return document.documentElement.classList.contains('mobileshop');\n }\n registerEvents() {\n if (!this.scope)\n return;\n const tooltipContainers = Array.from(this.scope.querySelectorAll('.aas-tooltip-container'));\n tooltipContainers.forEach((container) => {\n const tooltip = container.querySelector('.aas-tooltip');\n if (!tooltip)\n return;\n container.addEventListener('mouseenter', () => this.handleMouseOverTooltipEvent(tooltip));\n container.addEventListener('mouseleave', () => this.handleMouseLeaveTooltipEvent(tooltip));\n });\n }\n handleMouseOverTooltipEvent(tooltip) {\n this.closeOpenTooltips();\n tooltip.classList.add('show-aas-tooltip');\n this.scrollTooltipIntoViewportIfNeeded(tooltip);\n }\n closeOpenTooltips() {\n if (!this.scope)\n return;\n const openTooltips = Array.from(this.scope.querySelectorAll('.aas-tooltip-container .aas-tooltip.show-aas-tooltip'));\n openTooltips.forEach((tooltip) => tooltip.classList.remove('show-aas-tooltip'));\n }\n scrollTooltipIntoViewportIfNeeded(tooltip) {\n const rect = tooltip.getBoundingClientRect();\n const tooltipBottom = rect.top + tooltip.clientHeight;\n if (this.shouldScrollUp(rect.top) || this.shouldScrollDown(tooltipBottom)) {\n tooltip.classList.add('scrollingToViewport');\n const scrollTo = this.shouldScrollUp(rect.top)\n ? rect.top - 20\n : tooltipBottom - window.innerHeight + 20;\n window.scrollBy({ behavior: 'smooth', top: scrollTo });\n setTimeout(() => tooltip.classList.remove('scrollingToViewport'), this.closeDelay);\n }\n }\n shouldScrollUp(top) {\n return top < 0;\n }\n shouldScrollDown(bottom) {\n return bottom > window.innerHeight;\n }\n handleMouseLeaveTooltipEvent(tooltip) {\n if (tooltip.classList.contains('scrollingToViewport')) {\n setTimeout(() => tooltip.classList.remove('show-aas-tooltip'), this.closeDelay);\n }\n else {\n tooltip.classList.remove('show-aas-tooltip');\n }\n tooltip.classList.remove('scrollingToViewport');\n }\n}\nnew ToolTipManagerWeb();\n","import { AjaxLoader } from './ajax-loader';\nimport './tooltip-manager-mobile';\nimport './tooltip-manager-web';\nimport '../../Styles/main.scss';\nnew AjaxLoader();\n"],"names":["__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","AjaxLoaderRequest","constructor","apiUrl","isMobileShop","this","requestFor","savKeyToLoad_1","content_1","arguments","savKeyToLoad","content","itemOrigin","detailsCanBeHidden","displayedInCategoryNavKey","showHeader","url","getAjaxUrl","controller","AbortController","timeoutId","setTimeout","abort","response","fetch","method","clearTimeout","ok","status","text","_error","savKey","params","URLSearchParams","viewMode","maxNumberOfAlternativeArticles","String","append","toString","StickyHeader","shouldSticky","_a","_b","_c","_d","originalSalesDesignationOffSetTop","didScroll","consumerCssModification","isPDP","document","getElementById","aasScope","querySelector","aasSalesDesignationHeader","aasContent","salesDesignation","offsetTop","bindEvents","addEventListener","trackScrollChanges","window","shell","subscribeTo","rebindScrollContainer","bind","saveConsumerViewChange","update","setHeaderSticky","requestAnimationFrame","payload","detail","useStickyHeader","cssModification","salesdesignationHeaderViewSticky","setConsumerViewChange","classList","contains","style","cssText","shouldStick","scrollPosition","toggle","scrollTop","scrollY","Carousels","cardsCount","currentIndex","initCarousel","updatePager","currentIndexSelector","getSelectorFromCardIndex","querySelectorAll","forEach","element","add","length","bindNext","bindPrev","Hammer","Manager","domEvents","recognizers","Swipe","direction","DIRECTION_HORIZONTAL","threshold","velocity","drag_block_vertical","on","event","gestureAngle","Math","abs","angle","goPrev","goNext","index","preventDefault","stopPropagation","updateIndexSelector","newIndex","newIndexSelector","remove","replace","dot","prevButton","nextButton","Collapse","scope","subFeatureEqualHeightCalculator","rowHeight","separatorArray","detailElements","Array","from","saveRowHeight","bindCollapseEvents","bindToggleOnlyDifferences","bindToggleShowDetails","adjustFallbackIconContainerHeight","row","rowIndex","rowWrapper","height","clientHeight","removeProperty","max","bindToggleRow","bindToggleAllRows","clickedSeparator","target","closest","shouldFold","setRowHeight","collapseAllButton","separator","button","showOnlyDifferences","loadingSpinner","toggleSameFeatures","updateSameSubFeatures","showOnlyDifferencesButton","subFeaturesArray","subFeature","setEqualHeightForEachSubFeature","open","sameFeature","parentElement","feature","rowWithSubFeaturesArray","featureRowIsFolded","adjustSubFeatureStyles","updateRowHeight","container","adjustLastSubFeatureDividerVisibility","visibleNow","isFolded","fold","rowElementsArray","featureValueRowToAdjust","savFilterValue","featureElement","featureRowIdentifier","dataset","featureIndex","featureValueRow","includes","push","identifier","featureRow","split","icon","SubFeaturesEqualHeight","subFeatureImageArray","selectedSubFeatureArray","imageLoadingCounter","textModulesTextOnly","setImageLoadingMonitor","image","complete","imageLoadFinished","rowSelected","rowWrapperSelector","rowWrapperElement","subFeatureSelectedRows","subFeatureWrapperRows","subFeatureRow","subFeatureIndex","matchingSubFeatures","filter","sf","unshift","maxOfHeight","getMaxOfHeight","setSubFeatureHeight","subFeatures","map","_AjaxLoader_ajaxLoader","__classPrivateFieldSet","receiver","state","kind","f","TypeError","has","call","set","__classPrivateFieldGet","get","WeakMap","triggerInitToolTips","documentElement","selector","scopeAas","initToolTips","tooltipContainers","modal","display","infoIcons","tooltipContent","modalContent","innerHTML","closeDelay","registerEvents","tooltip","handleMouseOverTooltipEvent","handleMouseLeaveTooltipEvent","closeOpenTooltips","scrollTooltipIntoViewportIfNeeded","rect","getBoundingClientRect","tooltipBottom","top","shouldScrollUp","shouldScrollDown","scrollTo","innerHeight","scrollBy","behavior","bottom","getApiUrl","apiurl","queryAas","targetContent","updateOneScope","isTrue","toLowerCase","ajaxResponse","displayedInCategoryNavkey","publishTo","message","initJsComponents","queryString","newAas","basketLink","redesignOrderModalLinkCallback","addTabNavigationEvents","addTabNavigationToMpcButtons","currentTarget","salesArticleNo","salesarticleno","masterArticleNo","masterarticleno","colorCode","colorcode","sizeCode","sizecode","itemorigin","once","link","hasAttribute","href","containsQueryParameter","setAttribute","key","click","code","div","anchor","DOMParser","parseFromString","aasToReplace","parentNode","replaceChild","triggerAppShellUpdate","savKeyToReplace"],"sourceRoot":""}