PageSourceSearch

https://www.compass24.fr/theme/f6169a3127adf85c5ac92c3e7a5aedce/js…ension.filter-multi-select.plugin.802e91.js

js compass24.fr collected 2026-09-27 07:17:02 UTC 9,743 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[59631],{156:e=>{var t=function(e){var t;return!!e&&"object"==typeof e&&"[object RegExp]"!==(t=Object.prototype.toString.call(e))&&"[object Date]"!==t&&e.$$typeof!==i},i="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function s(e,t){return!1!==t.clone&&t.isMergeableObject(e)?o(Array.isArray(e)?[]:{},e,t):e}function r(e,t,i){return e.concat(t).map(function(e){return s(e,i)})}function n(e){return Object.keys(e).concat(Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[])}function l(e,t){try{return t in e}catch(e){return!1}}function o(e,i,a){(a=a||{}).arrayMerge=a.arrayMerge||r,a.isMergeableObject=a.isMergeableObject||t,a.cloneUnlessOtherwiseSpecified=s;var c,h,u=Array.isArray(i);return u!==Array.isArray(e)?s(i,a):u?a.arrayMerge(e,i,a):(h={},(c=a).isMergeableObject(e)&&n(e).forEach(function(t){h[t]=s(e[t],c)}),n(i).forEach(function(t){(!l(e,t)||Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))&&(l(e,t)&&c.isMergeableObject(i[t])?h[t]=(function(e,t){if(!t.customMerge)return o;var i=t.customMerge(e);return"function"==typeof i?i:o})(t,c)(e[t],i[t],c):h[t]=s(i[t],c))}),h)}o.all=function(e,t){if(!Array.isArray(e))throw Error("first argument should be an array");return e.reduce(function(e,i){return o(e,i,t)},{})},e.exports=o},631:(e,t,i)=>{i.r(t),i.d(t,{default:()=>l});var s=i(156),r=i.n(s),n=i(970);class l extends n.A{static #e=this.options=r()(n.A.options,{selectedValuesClass:"ap-filter-selected-values-container"});_updateCount(){super._updateCount();let e=this.el.querySelector(`.${this.options.selectedValuesClass}`);e&&e.parentElement.removeChild(e);let t=this.getLabels().map(e=>e.label).join(", ");this.el.querySelector(this.options.mainFilterButtonSelector).insertAdjacentHTML("beforeend",`<div class="${this.options.selectedValuesClass}">${t}</div>`)}}},373:(e,t,i)=>{i.d(t,{A:()=>o});var s=i(156),r=i.n(s);class n{static ucFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}static lcFirst(e){return e.charAt(0).toLowerCase()+e.slice(1)}static toDashCase(e){return e.replace(/([A-Z])/g,"-$1").replace(/^-/,"").toLowerCase()}static toLowerCamelCase(e,t){let i=n.toUpperCamelCase(e,t);return n.lcFirst(i)}static toUpperCamelCase(e,t){return t?e.split(t).map(e=>n.ucFirst(e.toLowerCase())).join(""):n.ucFirst(e.toLowerCase())}static parsePrimitive(e){try{return/^\d+(.|,)\d+$/.test(e)&&(e=e.replace(",",".")),JSON.parse(e)}catch(t){return e.toString()}}}class l{constructor(e=document){this._el=e,e.$emitter=this,this._listeners=[]}publish(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],s=new CustomEvent(e,{detail:t,cancelable:i});return this.el.dispatchEvent(s),s}subscribe(e,t){let i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=this,r=e.split("."),n=i.scope?t.bind(i.scope):t;if(i.once&&!0===i.once){let t=n;n=function(i){s.unsubscribe(e),t(i)}}return this.el.addEventListener(r[0],n),this.listeners.push({splitEventName:r,opts:i,cb:n}),!0}unsubscribe(e){let t=e.split(".");return this.listeners=this.listeners.reduce((e,i)=>([...i.splitEventName].sort().toString()===t.sort().toString()?this.el.removeEventListener(i.splitEventName[0],i.cb):e.push(i),e),[]),!0}reset(){return this.listeners.forEach(e=>{this.el.removeEventListener(e.splitEventName[0],e.cb)}),this.listeners=[],!0}get el(){return this._el}set el(e){this._el=e}get listeners(){return this._listeners}set listeners(e){this._listeners=e}}class o{constructor(e,t={},i=!1){if(!(e instanceof Node)){console.warn(`There is no valid element given while trying to create a plugin instance for "${i}".`);return}this.el=e,this.$emitter=new l(this.el),this._pluginName=this._getPluginName(i),this.options=this._mergeOptions(t),this._initialized=!1,this._registerInstance(),this._init()}init(){console.warn(`The "init" method for the plugin "${this._pluginName}" is not defined. The plugin will not be initialized.`)}update(){}_init(){this._initialized||(this.init(),this._initialized=!0)}
1_update(){this._initialized&&this.update()}_mergeOptions(e){let t=[this.constructor.options,this.options,e];return t.push(this._getConfigFromDataAttribute()),t.push(this._getOptionsFromDataAttribute()),r().all(t.filter(e=>e instanceof Object&&!(e instanceof Array)).map(e=>e||{}))}_getConfigFromDataAttribute(){let e={};if("function"!=typeof this.el.getAttribute)return e;let t=n.toDashCase(this._pluginName),i=this.el.getAttribute(`data-${t}-config`);return i?window.PluginConfigManager.get(this._pluginName,i):e}_getOptionsFromDataAttribute(){let e={};if("function"!=typeof this.el.getAttribute)return e;let t=n.toDashCase(this._pluginName),i=this.el.getAttribute(`data-${t}-options`);if(i)try{return JSON.parse(i)}catch(e){console.error(`The data attribute "data-${t}-options" could not be parsed to json: ${e.message}`)}return e}_registerInstance(){window.PluginManager.getPluginInstancesFromElement(this.el).set(this._pluginName,this),window.PluginManager.getPlugin(this._pluginName,!1).get("instances").push(this)}_getPluginName(e){return e||(e=this.constructor.name),e}}},701:(e,t,i)=>{i.d(t,{A:()=>r});var s=i(373);class r extends s.A{static #e=this.options={parentFilterPanelSelector:".cms-element-product-listing-wrapper",dropdownSelector:".filter-panel-item-dropdown"};_init(){super._init(),this._validateMethods();let e=document.querySelector(this.options.parentFilterPanelSelector);this.listing=window.PluginManager.getPluginInstanceFromElement(e,"Listing"),this.listing.registerFilter(this),this._preventDropdownClose()}_preventDropdownClose(){let e=this.el.querySelector(this.options.dropdownSelector);e&&e.addEventListener("click",e=>{e.stopPropagation()})}_validateMethods(){if("function"!=typeof this.getValues)throw Error(`[${this._pluginName}] Needs the method "getValues"'`);if("function"!=typeof this.getLabels)throw Error(`[${this._pluginName}] Needs the method "getLabels"'`);if("function"!=typeof this.reset)throw Error(`[${this._pluginName}] Needs the method "reset"'`);if("function"!=typeof this.resetAll)throw Error(`[${this._pluginName}] Needs the method "resetAll"'`)}}},970:(e,t,i)=>{i.d(t,{A:()=>l});var s=i(701),r=i(156),n=i.n(r);class l extends s.A{static #e=this.options=n()(s.A.options,{checkboxSelector:".filter-multi-select-checkbox",countSelector:".filter-multi-select-count",listItemSelector:".filter-multi-select-list-item",snippets:{disabledFilterText:"Filter not active",ariaLabel:"",ariaLabelCount:""},mainFilterButtonSelector:".filter-panel-item-toggle"});init(){this.selection=[],this.counter=this.el.querySelector(this.options.countSelector),this.mainFilterButton=this.el.querySelector(this.options.mainFilterButtonSelector),this._registerEvents()}_registerEvents(){this.el.querySelectorAll(this.options.checkboxSelector).forEach(e=>{e.addEventListener("change",this._onChangeFilter.bind(this))})}getValues(){let e=this.el.querySelectorAll(`${this.options.checkboxSelector}:checked`),t=[];e?e.forEach(e=>{t.push(e.id)}):t=[],this.selection=t,this._updateCount();let i={};return i[this.options.name]=t,i}getLabels(){let e=this.el.querySelectorAll(`${this.options.checkboxSelector}:checked`),t=[];return e?e.forEach(e=>{t.push({label:e.dataset.label,id:e.id})}):t=[],t}setValuesFromUrl(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=!1,i=e[this.options.name],s=i?i.split("|"):[],r=this.selection.filter(e=>!s.includes(e)),n=s.filter(e=>!this.selection.includes(e));return(r.length>0||n.length>0)&&(t=!0),n.forEach(e=>{let t=this.el.querySelector(`[id="${e}"]`);t&&(t.checked=!0,this.selection.push(t.id))}),r.forEach(e=>{this.reset(e),this.selection=this.selection.filter(t=>t!==e)}),this._updateCount(),t}_onChangeFilter(){this.listing.changeListing(!0,{p:1})}reset(e){let t=this.el.querySelector(`[id="${e}"]`);t&&(t.checked=!1)}resetAll(){this.selection.filter=[];let e=this.el.querySelectorAll(`${this.options.checkboxSelector}:checked`);e&&e.forEach(e=>{e.checked=!1})}refreshDisabledState(e){let t=e[this.options.name];if(!t.entities||t.entities.length<1){this.disableFilter();return}this.enableFilter(),this._disableInactiveFilterOptions(t.entities.map(e=>e.id))}_disableInactiveFilterOptions(e){this.el.querySelectorAll(this.options.checkboxSelector).forEach(t=>{!0!==t.checked&&(e.includes(t.id)?this.enableOption(t):this.disableOption(t))})}disableOption(e){let t=e.closest(this.options.listItemSelector);t.classList.add("disabled"),t.setAttribute("title",this.options.snippets.disabledFilterText),e.disabled=!0}enableOption(e){let t=e.closest(this.options.listItemSelector);t.removeAttribute("title"),t.classList.remove("disabled"),e.disabled=!1}enableAllOptions(){this.el.querySelectorAll(this.options.checkboxSelector).forEach(e
1=>{this.enableOption(e)})}disableFilter(){let e=this.el.querySelector(this.options.mainFilterButtonSelector);e.classList.add("disabled"),e.setAttribute("disabled","disabled"),e.setAttribute("title",this.options.snippets.disabledFilterText)}enableFilter(){let e=this.el.querySelector(this.options.mainFilterButtonSelector);e.classList.remove("disabled"),e.removeAttribute("disabled"),e.removeAttribute("title")}_updateCount(){this.counter.textContent=this.selection.length?`(${this.selection.length})`:"",this._updateAriaLabel()}_updateAriaLabel(){if(this.options.snippets.ariaLabel){if(0===this.selection.length){this.mainFilterButton.setAttribute("aria-label",this.options.snippets.ariaLabel);return}this.mainFilterButton.setAttribute("aria-label",`${this.options.snippets.ariaLabel} (${this.options.snippets.ariaLabelCount.replace("%count%",this.selection.length.toString())})`)}}}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.