{"version":3,"names":["AvailabilityValue","props","value","facet","bindings","getLabel","bundle","i18n","getResourceBundle","language","_a","state","field","h","class","onClick","toggleSelect","type","checked","id","numberOfResults","customFacetManagerCss","CustomFacetManagerStyle0","CustomFacetManager","connectedCallback","waitForAtomic","this","commerceBindings","initializeBindings","host","controller","interfaceElement","buildSearch","engine","buildProductListing","_b","summary","facetController","facetGenerator","subscribe","deliveryFacet","facets","find","f","_c","deliveryFacetState","pickupFacet","_e","_d","_f","pickupFacetState","specialOffersFacet","_h","_g","brandFacet","_k","_j","categoryFacet","_m","_l","priceFacet","_p","_o","observeFacet","error","console","JSON","stringify","returnAvailabilityFacet","deliveryValues","values","filter","pickupValues","length","map","waitForElement","catDiv","shadowRoot","querySelector","resultsList","applyClearanceLogic","observer","MutationObserver","observe","childList","subtree","attributes","selector","timeout","Promise","resolve","reject","document","disconnect","body","setTimeout","Error","searchResults","Array","from","querySelectorAll","forEach","result","pathDiv","textContent","includes","pathSpans","i","style","setProperty","render","warn","sss","Host","exportparts","searchParameters","authenticated"],"sources":["src/components/custom-facet-manager/availability-value.tsx","src/components/custom-facet-manager/custom-facet-manager.css?tag=custom-facet-manager&encapsulation=shadow","src/components/custom-facet-manager/custom-facet-manager.tsx"],"sourcesContent":["import { CommerceBindings } from \"@coveo/atomic\";\r\nimport {\r\n RegularFacet,\r\n RegularFacetValue,\r\n} from \"@coveo/headless/commerce\";\r\nimport { FunctionalComponent, h } from \"@stencil/core\";\r\nexport interface AvailabilityValueProps {\r\n value: RegularFacetValue;\r\n facet: RegularFacet | undefined;\r\n bindings: CommerceBindings | undefined;\r\n}\r\nexport const AvailabilityValue: FunctionalComponent = (\r\n props\r\n) => {\r\n const { value, facet, bindings } = props;\r\n\r\n const getLabel = () => {\r\n const bundle = bindings?.i18n.getResourceBundle(\r\n bindings?.i18n.language,\r\n \"caption-\" + facet?.state?.field\r\n );\r\n return bundle ? bundle[value.value] : value.value;\r\n };\r\n\r\n return (\r\n
facet?.toggleSelect(value)}>\r\n \r\n \r\n {getLabel()}\r\n \r\n ({value.numberOfResults})\r\n
\r\n );\r\n};\r\n",":host {\r\n display: block;\r\n}\r\n\r\n.availability-facet > div {\r\n cursor: pointer;\r\n display: flex;\r\n align-items: center;\r\n font-size: 16px;\r\n}\r\n.value-label {\r\n text-wrap: wrap;\r\n display: block;\r\n overflow: hidden;\r\n}\r\n.value-count{\r\n margin-left: 0.375rem;\r\n color: var(--atomic-neutral-dark);\r\n}\r\n\r\n.availability-facet input[type=\"checkbox\"] {\r\n appearance: none;\r\n}\r\n\r\n.availability-facet input[type=\"checkbox\"]:before {\r\n font-family: \"FontAwesome\";\r\n content: \"\\f00c\";\r\n text-align: center;\r\n font-size: 11px;\r\n color: transparent !important;\r\n background: transparent;\r\n display: block;\r\n width: 13px;\r\n height: 13px;\r\n border: 1px solid black;\r\n border-radius: var(--atomic-border-radius);\r\n margin-right: 7px;\r\n}\r\n\r\n.availability-facet input[type=\"checkbox\"]:checked:before {\r\n border-color: var(--atomic-primary) !important;\r\n color: white !important;\r\n background: var(--atomic-primary) !important;\r\n}\r\n\r\n.availability-facet > div:hover > input[type=\"checkbox\"]:before{\r\n border-color: var(--atomic-primary-light) !important;\r\n}\r\n\r\n.availability-facet > div:hover > input[type=\"checkbox\"]:checked:before{\r\n background: var(--atomic-primary-light) !important; \r\n border-color: var(--atomic-primary-light) !important;\r\n color: white !important;\r\n}\r\n\r\n.availability-facet {\r\n color: var(--main-color);\r\n font-family: LinFont, helvetica-neue-medium, sans-serif;\r\n font-weight: 600;\r\n font-size: 13px;\r\n line-height: 1.7;\r\n background-color: #eaf0f3;\r\n padding: 15px 10px;\r\n border-radius: 0;\r\n margin: 1rem 0;\r\n}\r\n\r\n.availability-facet > div {\r\n border-bottom: 1px solid #b9cdd7;\r\n padding: 10px 5px;\r\n}\r\n\r\natomic-commerce-category-facet::part(active-parent) {\r\n cursor: default;\r\n pointer-events: none;\r\n}\r\natomic-commerce-category-facet::part(facet),\r\natomic-commerce-facet::part(facet),\r\natomic-commerce-numeric-facet::part(facet) {\r\n color: var(--main-color);\r\n font-family: LinFont, helvetica-neue-medium, sans-serif;\r\n font-weight: 600;\r\n font-size: 13px;\r\n line-height: 1.7;\r\n background-color: #eaf0f3;\r\n padding: 15px 10px;\r\n border-radius: 0;\r\n margin: 1rem 0;\r\n}\r\n\r\natomic-commerce-category-facet::part(values),\r\natomic-commerce-category-facet::part(parents) {\r\n background-color: #eaf0f3;\r\n}\r\n\r\n.availability-facet > h4,\r\natomic-commerce-category-facet::part(label-button),\r\natomic-commerce-facet::part(label-button),\r\natomic-commerce-numeric-facet::part(label-button) {\r\n border-bottom: var(--facet-label-border-bottom);\r\n padding-bottom: var(--facet-label-padding-bottom);\r\n color: var(--main-color);\r\n font-weight: var(--facet-label-font-weight);\r\n font-size: var(--facet-label-font-size);\r\n margin: var(--facet-label-margin);\r\n background-color: var(--facet-label-background-color);\r\n}\r\n\r\natomic-commerce-category-facet::part(value-link),\r\natomic-commerce-category-facet::part(active-parent),\r\natomic-commerce-category-facet::part(all-categories-button),\r\natomic-commerce-category-facet::part(parent-button),\r\natomic-commerce-facet::part(value-checkbox-label),\r\natomic-commerce-numeric-facet::part(value-checkbox-label) {\r\n border-bottom: 1px solid #b9cdd7;\r\n color: var(--main-color);\r\n font-family: LinFont, helvetica-neue-medium, sans-serif;\r\n font-weight: 600;\r\n font-size: 16px;\r\n line-height: 1.7;\r\n background-color: #eaf0f3;\r\n}\r\n\r\natomic-numeric-facet::part(clear-button),\r\natomic-category-facet::part(clear-button),\r\natomic-facet::part(clear-button),\r\natomic-commerce-numeric-facet::part(clear-button),\r\natomic-commerce-category-facet::part(clear-button),\r\natomic-commerce-facet::part(clear-button) {\r\n color: #0077cc;\r\n}\r\n\r\natomic-numeric-facet::part(value-checkbox-checked),\r\natomic-category-facet::part(value-checkbox-checked),\r\natomic-facet::part(value-checkbox-checked),\r\natomic-commerce-numeric-facet::part(value-checkbox-checked),\r\natomic-commerce-category-facet::part(value-checkbox-checked),\r\natomic-commerce-facet::part(value-checkbox-checked) {\r\n background-color: #0077cc;\r\n}\r\n\r\natomic-numeric-facet::part(show-more),\r\natomic-category-facet::part(show-more),\r\natomic-facet::part(show-more),\r\natomic-commerce-numeric-facet::part(show-more),\r\natomic-commerce-category-facet::part(show-more),\r\natomic-commerce-facet::part(show-more),\r\natomic-numeric-facet::part(show-less),\r\natomic-category-facet::part(show-less),\r\natomic-facet::part(show-less),\r\natomic-commerce-numeric-facet::part(show-less),\r\natomic-commerce-category-facet::part(show-less),\r\natomic-commerce-facet::part(show-less) {\r\n color: #0077cc;\r\n font-size: 14px;\r\n font-weight: 600;\r\n text-transform: capitalize;\r\n background-color: transparent;\r\n}\r\n\r\natomic-commerce-facet::part(value-label),\r\natomic-commerce-category-facet::part(value-label){\r\n text-overflow: initial;\r\n text-wrap: wrap !important;\r\n}\r\n","import { Component, Host, h, State, Prop, Element } from \"@stencil/core\";\r\nimport { waitForAtomic } from \"../../utils/atomic\";\r\nimport { CommerceBindings, initializeBindings } from \"@coveo/atomic\";\r\nimport {\r\n CategoryFacet,\r\n FacetGenerator,\r\n ProductListingSummaryState,\r\n NumericFacet,\r\n RegularFacet,\r\n RegularFacetState,\r\n RegularFacetValue,\r\n SearchSummaryState,\r\n Summary,\r\n buildProductListing,\r\n buildSearch,\r\n} from \"@coveo/headless/commerce\";\r\nimport { AvailabilityValue } from \"./availability-value\";\r\n\r\n@Component({\r\n tag: \"custom-facet-manager\",\r\n shadow: true,\r\n styleUrl: \"custom-facet-manager.css\",\r\n})\r\nexport class CustomFacetManager {\r\n @Prop({ reflect: true, mutable: false }) facetOrder: string[] = [];\r\n\r\n private commerceBindings?: CommerceBindings;\r\n private facetController?: FacetGenerator;\r\n\r\n private summary?:\r\n | Summary\r\n | Summary;\r\n\r\n private deliveryFacet?: RegularFacet;\r\n private pickupFacet?: RegularFacet;\r\n private specialOffersFacet?: RegularFacet;\r\n private brandFacet?: RegularFacet;\r\n private categoryFacet?: CategoryFacet;\r\n private priceFacet?: NumericFacet;\r\n\r\n @State() private deliveryFacetState?: RegularFacetState;\r\n @State() private pickupFacetState?: RegularFacetState;\r\n\r\n @Element() private host!: Element;\r\n\r\n public async connectedCallback() {\r\n try {\r\n await waitForAtomic();\r\n this.commerceBindings = await initializeBindings(this.host);\r\n let controller =\r\n this.commerceBindings.interfaceElement.type == \"search\"\r\n ? buildSearch(this.commerceBindings?.engine)\r\n : buildProductListing(this.commerceBindings?.engine);\r\n\r\n this.summary = controller.summary();\r\n\r\n this.facetController = controller.facetGenerator();\r\n this.facetController.subscribe(() => {\r\n if (!this.deliveryFacet) {\r\n this.deliveryFacet = this.facetController?.facets?.find(\r\n (f) => f.state.field == \"ec_linde_status_delivery\"\r\n ) as RegularFacet;\r\n this.deliveryFacet?.subscribe(() => {\r\n this.deliveryFacetState = this.deliveryFacet?.state;\r\n });\r\n }\r\n if (!this.pickupFacet) {\r\n this.pickupFacet = this.facetController?.facets?.find(\r\n (f) => f.state.field == \"ec_linde_status_pickup\"\r\n ) as RegularFacet;\r\n this.pickupFacet?.subscribe(() => {\r\n this.pickupFacetState = this.pickupFacet?.state;\r\n });\r\n }\r\n if (!this.specialOffersFacet) {\r\n this.specialOffersFacet = this.facetController?.facets?.find(\r\n (f) => f.state.field == \"ec_linde_special_offer\"\r\n ) as RegularFacet;\r\n }\r\n\r\n if (!this.brandFacet) {\r\n this.brandFacet = this.facetController?.facets?.find(\r\n (f) => f.state.field == \"ec_brand\"\r\n ) as RegularFacet;\r\n }\r\n\r\n if (!this.categoryFacet) {\r\n this.categoryFacet = this.facetController?.facets?.find(\r\n (f) => f.state.field == \"ec_category\"\r\n ) as CategoryFacet;\r\n }\r\n\r\n if (!this.priceFacet) {\r\n this.priceFacet = this.facetController?.facets?.find(\r\n (f) => f.state.field == \"ec_price\"\r\n ) as NumericFacet;\r\n }\r\n });\r\n\r\n this.observeFacet();\r\n } catch (error) {\r\n console.error(`customfacetmanager error: ${JSON.stringify(error)}`);\r\n }\r\n }\r\n\r\n private returnAvailabilityFacet() {\r\n let deliveryValues =\r\n this.deliveryFacetState?.values.filter(\r\n (value: RegularFacetValue) => value.value == \"in_stock\"\r\n ) || [];\r\n let pickupValues =\r\n this.pickupFacetState?.values.filter(\r\n (value: RegularFacetValue) => value.value == \"in_stock\"\r\n ) || [];\r\n if (deliveryValues?.length > 0 || pickupValues?.length > 0) {\r\n return (\r\n
\r\n

Availability

\r\n {deliveryValues.map((value: RegularFacetValue) => {\r\n return (\r\n \r\n );\r\n })}\r\n {pickupValues.map((value: RegularFacetValue) => {\r\n return (\r\n \r\n );\r\n })}\r\n
\r\n );\r\n }\r\n }\r\n\r\n async observeFacet() {\r\n try {\r\n await this.waitForElement('atomic-commerce-category-facet');\r\n \r\n const catDiv = this.host.shadowRoot?.querySelector('atomic-commerce-category-facet');\r\n \r\n if (catDiv) {\r\n const resultsList = catDiv.shadowRoot?.querySelector('[part=\"search-results\"]');\r\n \r\n if (resultsList) {\r\n this.applyClearanceLogic();\r\n }\r\n const observer = new MutationObserver(() => this.applyClearanceLogic());\r\n observer.observe(catDiv, { childList: true, subtree: true, attributes: true });\r\n }\r\n } catch (error) {\r\n console.error('Error waiting for atomic-commerce-category-facet:', error);\r\n }\r\n }\r\n\r\n private async waitForElement(selector: string, timeout = 10000): Promise {\r\n return new Promise((resolve, reject) => {\r\n if (document.querySelector(selector)) {\r\n return resolve();\r\n }\r\n\r\n const observer = new MutationObserver(() => {\r\n if (document.querySelector(selector)) {\r\n observer.disconnect();\r\n resolve();\r\n }\r\n });\r\n\r\n observer.observe(document.body, { childList: true, subtree: true });\r\n\r\n // Set a timeout to reject the promise if the element is not found\r\n setTimeout(() => {\r\n observer.disconnect();\r\n reject(new Error(`Element with selector \"${selector}\" was not found within ${timeout}ms`));\r\n }, timeout);\r\n });\r\n }\r\n\r\n applyClearanceLogic() {\r\n try {\r\n const catDiv = this.host.shadowRoot?.querySelector('atomic-commerce-category-facet');\r\n if (!catDiv) return;\r\n\r\n const resultsList = catDiv.shadowRoot?.querySelector('[part=\"search-results\"]');\r\n if (!resultsList) return;\r\n\r\n const searchResults = Array.from(resultsList.querySelectorAll('li')); // Get all
  • elements\r\n if (searchResults.length === 0) return;\r\n\r\n searchResults.forEach(result => {\r\n const pathDiv = result.querySelector('div[part=\"search-result-path\"]');\r\n if (pathDiv && pathDiv.textContent && pathDiv.textContent.includes('Clearance')) {\r\n const pathSpans = pathDiv.querySelectorAll('span');\r\n for (let i = 2; i < pathSpans.length; i++) {\r\n pathSpans[i].style.setProperty('display', 'none', 'important');\r\n }\r\n (pathDiv as HTMLElement).style.setProperty('display', 'inline', 'important');\r\n (pathDiv as HTMLElement).style.setProperty('text-align', 'start', 'important');\r\n }\r\n });\r\n } catch (error) {\r\n console.error('Error in applyClearanceLogic:', error);\r\n }\r\n }\r\n\r\n\r\n render() {\r\n if(typeof(searchParameters)=='undefined'){\r\n /*Defect 384975: Attributes Not Always Displaying Correctly\r\n Stencil JS sometimes lazyloads components and even calls render BEFORE we actually initialized the commrce engine\r\n Seems sometimes the delay to call sc_getSearchParameters is too long (??)\r\n So if this happens, let's just dont render.\r\n */\r\n console.warn(`searchParameters: ${typeof(searchParameters)}`)\r\n return\r\n }\r\n \r\n /*to resolve the compilation error at lines 125 and 126, \r\n take the version of components.d.ts at the path src/localmodules/@coveo/atomic/distributable/types\r\n overwrite at node_modules/@coveo/atomic/dist/types */\r\n\r\n //NOTE: putting field=\"ec_price\" on ensure currenc/dollary sign is displayed\r\n\r\n const sss = `\r\n atomic-commerce-category-facet::part(active-parent node-value),\r\n atomic-commerce-category-facet::part(active-parent leaf-value){\r\n background-color: #fff !important;\r\n font-weight: 700 !important;\r\n padding-left: 1.75rem !important;\r\n }\r\n atomic-commerce-category-facet::part(values){\r\n padding-left: 1.75rem;\r\n }\r\n atomic-commerce-category-facet::part(value-link leaf-value),\r\n atomic-commerce-category-facet::part(value-link node-value){\r\n padding-left: 0px;\r\n }\r\n atomic-commerce-category-facet::part(all-categories-button),\r\n atomic-commerce-category-facet::part(parent-button),\r\n atomic-commerce-category-facet::part(active-parent node-value),\r\n atomic-commerce-category-facet::part(active-parent leaf-value),\r\n atomic-commerce-category-facet::part(value-link node-value),\r\n atomic-commerce-category-facet::part(value-link leaf-value),\r\n atomic-commerce-facet::part(value-checkbox-label),\r\n atomic-commerce-numeric-facet::part(value-checkbox-label){\r\n padding-bottom: 0.3rem;\r\n padding-top: 0.3rem;\r\n }\r\n atomic-commerce-category-facet::part(parents),\r\n atomic-commerce-category-facet::part(values),\r\n atomic-commerce-numeric-facet::part(values),\r\n atomic-commerce-facet::part(values){\r\n margin-top: 0px;\r\n }\r\n `\r\n return (\r\n \r\n {(this.deliveryFacetState || this.pickupFacetState) &&\r\n this.returnAvailabilityFacet()}\r\n {this.specialOffersFacet && this.summary && (\r\n \r\n )}\r\n {this.brandFacet && this.summary && (\r\n \r\n )}\r\n {this.categoryFacet && this.summary && (\r\n \r\n \r\n \r\n\r\n \r\n )}\r\n {!searchParameters.authenticated && this.priceFacet && this.summary && (\r\n \r\n )}\r\n \r\n );\r\n }\r\n}\r\n"],"mappings":"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","ignoreList":[]}