!function(e){"use strict";window._EntitySelectorMixins=window._EntitySelectorMixins||{};var t=null,i={account_tree:"icon-sitemap",add:"icon-plus",add_box:"icon-plus-square",arrow_downward:"icon-sort-desc",arrow_drop_down:"icon-caret-down",arrow_right:"icon-chevron-right",arrow_upward:"icon-sort-asc",block:"icon-ban",brush:"icon-paint-brush",business:"icon-building",check:"icon-check",check_box:"icon-check-square",check_box_outline_blank:"icon-square-o",check_circle:"icon-check-circle",close:"icon-times",delete:"icon-trash",description:"icon-file-text",error:"icon-exclamation-circle",event:"icon-calendar",event_busy:"icon-calendar-times-o",expand_less:"icon-chevron-up",expand_more:"icon-chevron-down",filter_list:"icon-filter",flag:"icon-flag",folder:"icon-folder",folder_open:"icon-folder-open",indeterminate_check_box:"icon-minus-square",info:"icon-info-circle",inventory_2:"icon-archive",label:"icon-tag",language:"icon-globe",lightbulb:"icon-lightbulb-o",list:"icon-list",list_alt:"icon-list-alt",local_shipping:"icon-truck",lock:"icon-lock",my_location:"icon-crosshairs",open_in_full:"icon-expand",payments:"icon-credit-card",progress_activity:"icon-circle-o-notch",schedule:"icon-clock-o",search:"icon-search",shopping_cart:"icon-shopping-cart",shuffle:"icon-random",sort:"icon-sort",sort_by_alpha:"icon-sort-alpha-asc",star:"icon-star",sync:"icon-refresh",tune:"icon-sliders",visibility:"icon-eye",warning:"icon-warning",widgets:"icon-th-large"},a=null,s={"icon-cube":"inventory","icon-folder-o":"folder","icon-file-text-o":"description","icon-briefcase":"work","icon-user":"person","icon-users":"group","icon-money":"payments","icon-tasks":"checklist","icon-calculator":"calculate","icon-asterisk":"star","icon-bar-chart":"bar_chart","icon-cogs":"settings","icon-cog":"settings","icon-tags":"label","icon-list-ul":"list","icon-th":"grid_view","icon-certificate":"verified","icon-power-off":"power_settings_new","icon-circle-o":"radio_button_unchecked"};function o(e,t){var o="";if(0===e.indexOf("icon-")){var n=e.indexOf(" "),r=-1!==n?e.substring(0,n):e;if(-1!==n&&(o=e.substring(n+1)),"material"===t){var l=function(){if(null!==a)return a;for(var e in a={},i)if(i.hasOwnProperty(e)){var t=i[e];a[t]||(a[t]=e)}for(var o in s)s.hasOwnProperty(o)&&!a[o]&&(a[o]=s[o]);return a}(),c=l[r];return c?{name:c,extra:o,rawFa4:!1}:{name:r.substring(5).replace(/-/g,"_"),extra:o,rawFa4:!1}}return{name:r,extra:o,rawFa4:!0}}return{name:e,extra:o,rawFa4:!1}}function n(){if(null!==t)return t;var i=e(".entity-selector-trait[data-icon-mode], .target-conditions-trait[data-icon-mode]").first();if(i.length&&i.data("icon-mode"))return t=i.data("icon-mode");var a=document.createElement("i");a.className="material-icons",a.style.cssText="position:absolute;left:-9999px;top:-9999px;font-size:16px;pointer-events:none",a.textContent="check",(document.body||document.documentElement).appendChild(a);var s=(window.getComputedStyle(a).fontFamily||"").toLowerCase();return a.parentNode.removeChild(a),t=-1!==s.indexOf("material")?"material":"fa4"}window._EntitySelectorMixins.utils={debounce:function(e,t){var i;return function(){var a=this,s=arguments;clearTimeout(i),i=setTimeout(function(){e.apply(a,s)},t)}},escapeHtml:function(e){return null==e?"":String(e).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},escapeAttr:function(e){return null==e?"":String(e).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},esIcon:function(e,t){var a=n(),s=o(e,a),r=s.name;if(s.extra&&(t=t?t+" "+s.extra:s.extra),"material"===a){var l="material-icons es-icon";return t&&(l+=" "+t),''+r+" "}return l=s.rawFa4?r+" es-icon":(i[r]||"icon-circle")+" es-icon",t&&(l+=" "+t),' '},esIconUpdate:function(e,t,a){var s=n(),r=o(t,s),l=r.name;if(r.extra&&(a=a?a+" "+r.extra:r.extra),"material"===s){var c="material-icons es-icon";a&&(c+=" "+a),e.attr("class",c).text(l)}else c=r.rawFa4?l+" es-icon":(i[l]||"icon-circle")+" es-icon",a&&(c+=" "+a),e.attr("class",c).text("")},getEntityTypeIcon:function(e){return{products:"shopping_cart",categories:"folder_open",manufacturers:"business",suppliers:"local_shipping",attributes:"list_alt",features:"label",cms:"description",cms_categories:"folder"}[e]||"widgets"},getEntityTypeLabel:function(e){var t=this.config.trans||{};return{products:t.product||"Product",categories:t.category||"Category",manufacturers:t.manufacturer||"Manufacturer",suppliers:t.supplier||"Supplier",attributes:t.attribute||"Attribute",features:t.feature||"Feature",cms:t.cms_page||"CMS Page",cms_categories:t.cms_category||"CMS Category"}[e]||e},validate:function(){if(1!==this.$wrapper.data("required")&&"1"!==this.$wrapper.data("required"))return!0;var t=!1;return this.$wrapper.find(".target-block").each(function(){if(e(this).find(".selection-group").length>0)return t=!0,!1}),t?(this.clearValidationError(),!0):(this.showValidationError(),!1)},showValidationError:function(){this.$wrapper.addClass("has-validation-error");var t=this.$wrapper.data("required-message")||"Please select at least one item";this.$wrapper.find(".trait-validation-error").remove();var i=e("
",{class:"trait-validation-error",html:this.esIcon("warning")+" "+t});this.$wrapper.find(".condition-trait-header").after(i),e("html, body").animate({scrollTop:this.$wrapper.offset().top-100},300),this.$wrapper.find(".condition-trait-body").is(":visible")||(this.$wrapper.find(".condition-trait-body").slideDown(200),this.$wrapper.removeClass("collapsed"))},clearValidationError:function(){this.$wrapper.removeClass("has-validation-error"),this.$wrapper.find(".trait-validation-error").remove()},getBlockMode:function(e){var t=this.config.blocks[e];return t&&t.mode?t.mode:"multi"},isBlockSingleMode:function(e){return"single"===this.getBlockMode(e)},getCurrentSingleSelection:function(){if("single"!==(this.config.mode||"multi"))return null;var e=this.$wrapper.find(".entity-chips .entity-chip").first();if(e.length){var t=e.closest(".target-block");return{name:e.find(".chip-name").text()||e.data("id"),entityType:t.data("block-type")||"item"}}return null},supportsTreeBrowsing:function(e){return"categories"===e||"cms_categories"===e}}}(jQuery),function(e){"use strict";window._EntitySelectorMixins=window._EntitySelectorMixins||{},window._EntitySelectorMixins.events={bindEvents:function(){var t=this;this.$wrapper.on("click",".target-block-tab",function(i){i.preventDefault();var a=e(this).data("blockType");t.switchToBlock(a)}),this.$wrapper.on("click",".target-block-tab .tab-badge",function(i){i.stopPropagation(),i.preventDefault();var a=e(this).closest(".target-block-tab");e(this).hasClass("popover-open")?t.hidePreviewPopover():t.showPreviewPopover(a)}),this.$wrapper.on("click",".condition-match-count.clickable",function(i){i.stopPropagation(),i.preventDefault();var a=e(this);a.hasClass("popover-open")?t.hidePreviewPopover():t.showConditionPreviewPopover(a)}),this.$wrapper.on("click",".group-count-badge.clickable",function(i){i.stopPropagation(),i.preventDefault();var a=e(this);a.hasClass("popover-open")?t.hidePreviewPopover():t.showGroupPreviewPopover(a)}),this.$wrapper.on("click",".trait-total-count",function(i){i.stopPropagation(),i.preventDefault();var a=e(this);a.hasClass("popover-open")?t.hidePreviewPopover():t.showTotalPreviewPopover(a)}),e(document).on("click",function(i){e(i.target).closest(".target-preview-popover").length||e(i.target).closest(".holiday-preview-popover").length||e(i.target).closest(".tab-badge").length||e(i.target).closest(".condition-match-count").length||e(i.target).closest(".group-count-badge").length||e(i.target).closest(".group-modifiers").length||e(i.target).closest(".group-preview-badge").length||e(i.target).closest(".toggle-count.clickable").length||e(i.target).closest(".trait-total-count").length||e(i.target).closest(".chip-preview-holidays").length||(t.hidePreviewPopover(),e(".holiday-preview-popover").remove())}),this.$wrapper.on("click",".condition-trait-header",function(i){if(!(e(i.target).closest(".target-block-tabs").length||e(i.target).closest(".trait-header-actions").length||e(i.target).closest(".prestashop-switch").length||e(i.target).closest(".trait-total-count").length)){var a=t.$wrapper.find(".condition-trait-body");a.stop(!0,!0),a.is(":visible")?(a.slideUp(200),t.$wrapper.addClass("collapsed")):(a.slideDown(200),t.$wrapper.removeClass("collapsed"))}}),this.$wrapper.on("click",".btn-toggle-blocks",function(i){i.preventDefault();var a=t.$wrapper.find(".entity-selector-blocks-content"),s=e(this).find(".es-icon");a.stop(!0,!0),a.is(":visible")?(a.slideUp(200),t.$wrapper.addClass("blocks-collapsed"),s.text("expand_more")):(a.slideDown(200),t.$wrapper.removeClass("blocks-collapsed"),s.text("expand_less"))}),this.$wrapper.on("input change",".custom-block-content input, .custom-block-content textarea, .custom-block-content select",function(){t.updateTabBadges()}),this.$wrapper.on("click",".group-header",function(i){e(i.target).closest(".btn-remove-group, .group-name-input").length||"single"!==t.$wrapper.data("mode")&&e(this).closest(".selection-group").toggleClass("collapsed")}),this.$wrapper.on("click",".btn-toggle-groups",function(i){i.preventDefault(),i.stopPropagation();var a=e(this),s=a.attr("data-state")||"collapsed",o=t.config.trans||{};"collapsed"===s?(t.$wrapper.find(".selection-group").removeClass("collapsed"),a.attr("data-state","expanded"),a.attr("title",o.collapse_all||"Collapse all groups"),a.find("i").text("close_fullscreen")):(t.$wrapper.find(".selection-group").addClass("collapsed"),a.attr("data-state","collapsed"),a.attr("title",o.expand_all||"Expand all groups"),a.find("i").text("open_in_full"))}),this.$wrapper.on("change",".trait-show-all-toggle .show-all-checkbox",function(i){i.stopPropagation(),e(this).prop("checked")&&t.clearAllConditions()}),this.$wrapper.on("change",".target-switch-toggle",function(i){i.stopPropagation(),"1"===e(this).val()?(t.clearAllConditions(),t.$wrapper.find(".condition-trait-body").slideUp(200),t.$wrapper.addClass("collapsed")):(t.$wrapper.find(".condition-trait-body").slideDown(200),t.$wrapper.removeClass("collapsed"))}),this.$wrapper.on("click",".btn-add-group",function(i){i.preventDefault();var a=e(this).closest(".target-block"),s=a.data("blockType");t.addGroup(a,s)}),this.$wrapper.on("click",".btn-remove-group",function(i){i.preventDefault();var a=e(this).closest(".selection-group"),s=e(this).closest(".target-block");t.removeGroup(a,s)}),this.$wrapper.on("click focus",".group-name-input",function(e){e.stopPropagation()}),this.$wrapper.on("change blur",".group-name-input",function(){var i=e(this),a=i.closest(".selection-group"),s=e.trim(i.val());a.attr("data-group-name",s),t.serializeAllBlocks()}),this.$wrapper.on("click",".btn-add-exclude",function(i){i.preventDefault();var a=e(this).closest(".selection-group"),s=e(this).closest(".target-block");t.addFirstExcludeRow(a,s)}),this.$wrapper.on("click",".btn-add-another-exclude",function(i){i.preventDefault();var a=e(this).closest(".selection-group"),s=e(this).closest(".target-block");t.addExcludeRow(a,s)}),this.$wrapper.on("click",".btn-remove-exclude-row",function(i){i.preventDefault();var a=e(this).closest(".exclude-row"),s=e(this).closest(".selection-group"),o=e(this).closest(".target-block");t.removeExcludeRow(a,s,o)}),this.$wrapper.on("change",".include-method-select",function(){t.hideDropdown();var i=e(this).closest(".selection-group"),a=e(this).closest(".target-block"),s=i.find(".group-include"),o=a.data("blockType"),n=(t.config.blocks[o]||{}).selection_methods||{},r=e(this).find("option:selected"),l=r.data("valueType")||"none",c=r.data("searchEntity")||"",d=r.data("options")||null,p=i.find(".include-picker"),u=t.buildValuePickerHtml("include",l,c,n);if(p.replaceWith(u),"select"===l&&d){var h=(f=i.find(".include-picker")).find(".select-value-input");h.empty(),e.each(d,function(e,i){h.append('
'+t.escapeHtml(i)+" ")})}if("multi_select_tiles"===l&&d){var f=i.find(".include-picker"),v=!0===r.data("exclusive");t.populateTiles(f,d,v)}if("multi_numeric_range"===l){f=i.find(".include-picker");var g=r.data("step"),m=r.data("min");t.applyRangeInputConstraints(f,g,m)}"combination_attributes"===l&&(f=i.find(".include-picker"),t.loadCombinationAttributeGroups(f));var b=e(this).val();t.updateMethodInfoPlaceholder(i.find(".method-selector-wrapper"),b,o),t.updateBlockStatus(a),t.serializeAllBlocks(s)}),this.$wrapper.on("change",".exclude-method-select",function(){t.hideDropdown();var i=e(this).closest(".exclude-row"),a=(e(this).closest(".selection-group"),e(this).closest(".target-block").data("blockType")),s=(t.config.blocks[a]||{}).selection_methods||{},o=e(this).find("option:selected"),n=o.data("valueType")||"entity_search",r=o.data("searchEntity")||a,l=o.data("options")||null,c=i.find(".exclude-picker"),d=t.buildValuePickerHtml("exclude",n,r,s);if(c.replaceWith(d),"select"===n&&l){var p=(u=i.find(".exclude-picker")).find(".select-value-input");p.empty(),e.each(l,function(e,i){p.append('
'+t.escapeHtml(i)+" ")})}if("multi_select_tiles"===n&&l){var u=i.find(".exclude-picker"),h=!0===o.data("exclusive");t.populateTiles(u,l,h)}if("multi_numeric_range"===n){u=i.find(".exclude-picker");var f=o.data("step"),v=o.data("min");t.applyRangeInputConstraints(u,f,v)}"combination_attributes"===n&&(u=i.find(".exclude-picker"),t.loadCombinationAttributeGroups(u));var g=e(this).val();t.updateMethodInfoPlaceholder(i.find(".exclude-header-row"),g,a),t.serializeAllBlocks(i)}),this.$wrapper.on("keydown",".pattern-input",function(t){13===t.keyCode&&(t.preventDefault(),e(this).closest(".draft-tag").find(".btn-add-pattern").click())}),this.$wrapper.on("click",".draft-tag .btn-add-pattern",function(i){i.preventDefault(),i.stopPropagation();var a=e(this).closest(".draft-tag"),s=a.closest(".value-picker"),o=a.closest(".group-include, .exclude-row"),n=a.find(".pattern-input"),r=e.trim(n.val());if(r){var l="1"===a.attr("data-case-sensitive");t.addPatternTag(s,r,l),n.val("").focus(),a.find(".pattern-match-count").removeClass("count-found count-zero").hide(),a.find(".pattern-match-count .count-value").text(""),t.serializeAllBlocks(o)}}),this.$wrapper.on("input",".pattern-input",function(){var i=e(this),a=i.closest(".draft-tag");if(a.length){var s=e.trim(i.val());i.data("countTimeout")&&clearTimeout(i.data("countTimeout"));var o=a.find(".pattern-match-count");if(s){var n=setTimeout(function(){var e="1"===a.attr("data-case-sensitive");t.updateDraftTagCount(a,s,e)},300);i.data("countTimeout",n)}else{o.removeClass("count-found count-zero").hide(),o.find(".count-value").text("");var r=a.closest(".selection-group");r.length&&t.updateGroupTotalCount(r)}}}),this.$wrapper.on("click",".pattern-tag .btn-remove-pattern",function(i){i.preventDefault(),i.stopPropagation();var a=e(this).closest(".group-include, .exclude-row");e(this).closest(".pattern-tag").remove(),t.serializeAllBlocks(a)}),this.$wrapper.on("click",".pattern-tag .btn-toggle-case",function(i){i.preventDefault(),i.stopPropagation();var a=e(this).closest(".pattern-tag"),s=e(this),o=t.config.trans||{},n=a.hasClass("draft-tag"),r=!(1===a.data("caseSensitive")||"1"===a.data("caseSensitive")||"1"===a.attr("data-case-sensitive"));a.data("caseSensitive",r?1:0),a.attr("data-case-sensitive",r?"1":"0"),a.toggleClass("case-sensitive",r),s.find(".case-icon").text(r?"Aa":"aa");var l=r?o.case_sensitive||"Case sensitive - click to toggle":o.case_insensitive||"Case insensitive - click to toggle";if(s.attr("title",l),n){var c=e.trim(a.find(".pattern-input").val());c&&t.updateDraftTagCount(a,c,r)}else{var d=a.closest(".group-include, .exclude-row");t.serializeAllBlocks(d)}}),this.$wrapper.on("click",".pattern-match-count",function(i){i.preventDefault(),i.stopPropagation();var a=e(this),s=a.data("count"),o=a.data("pattern"),n=a.data("entityType"),r=a.data("caseSensitive");!s||s<=0||!o||t.showPatternPreviewModal(o,n,r,s)}),this.$wrapper.on("click",".pattern-tag .pattern-tag-text",function(t){t.preventDefault();var i=e(this).closest(".pattern-tag");if(!i.hasClass("editing")){var a=i.data("pattern"),s=e('
').val(a),o=e('
'+this.esIcon("check")+" "),n=e('
'+this.esIcon("close")+" "),r=e('
').append(o,n);i.addClass("editing").find(".pattern-tag-text").hide(),i.find(".btn-remove-pattern").hide(),i.prepend(r).prepend(s),s.focus().select(),s.on("keydown",function(e){13===e.keyCode?(e.preventDefault(),o.click()):27===e.keyCode&&(e.preventDefault(),n.click())})}}),this.$wrapper.on("click",".pattern-tag .btn-pattern-save",function(i){i.preventDefault(),i.stopPropagation();var a=e(this).closest(".pattern-tag"),s=a.find(".pattern-tag-edit"),o=a.data("pattern"),n=e.trim(s.val());n&&n!==o&&(a.data("pattern",n),a.find(".pattern-tag-text").text(n)),s.remove(),a.find(".pattern-edit-actions").remove(),a.removeClass("editing").find(".pattern-tag-text, .btn-remove-pattern").show();var r=a.closest(".group-include, .exclude-row");t.serializeAllBlocks(r)}),this.$wrapper.on("click",".pattern-tag .btn-pattern-cancel",function(t){t.preventDefault(),t.stopPropagation();var i=e(this).closest(".pattern-tag");i.find(".pattern-tag-edit").remove(),i.find(".pattern-edit-actions").remove(),i.removeClass("editing").find(".pattern-tag-text, .btn-remove-pattern").show()}),this.$wrapper.on("change",".range-min-input, .range-max-input",function(){var i=e(this).closest(".group-include, .exclude-row");t.serializeAllBlocks(i)}),this.$wrapper.on("change",".date-from-input, .date-to-input",function(){var i=e(this).closest(".group-include, .exclude-row");t.serializeAllBlocks(i)}),this.$wrapper.on("change",".select-value-input",function(){var i=e(this).closest(".group-include, .exclude-row");t.serializeAllBlocks(i)}),this.$wrapper.on("click",".btn-add-range",function(i){i.preventDefault();var a=e(this).closest(".value-picker"),s=e(this).closest(".group-include, .exclude-row"),o=a.find(".multi-range-container"),n=o.find(".multi-range-chips"),r=o.find(".range-min-input"),l=o.find(".range-max-input"),c=r.val().trim(),d=l.val().trim();if(""!==c||""!==d){var p=parseFloat(r.attr("step"))||.01,u=r.attr("min"),h=void 0!==u&&""!==u;u=h?parseFloat(u):null;var f=""!==c?parseFloat(c):null,v=""!==d?parseFloat(d):null;if(h){if(null!==f&&f
v)t.showRangeInputError(r,t.config.trans.min_greater_than_max||"Min cannot be greater than max");else{var g,m=p<1?String(p).split(".")[1].length:0;null!==f&&(f=p>=1?Math.round(f):parseFloat(f.toFixed(m)),c=String(f)),null!==v&&(v=p>=1?Math.round(v):parseFloat(v.toFixed(m)),d=String(v)),g=""!==c&&""!==d?c+" - "+d:""!==c?"≥ "+c:"≤ "+d;var b=e("",{class:"range-chip","data-min":c,"data-max":d});b.append(e("",{class:"range-chip-text",text:g})),b.append(e("",{type:"button",class:"btn-remove-range",html:t.esIcon("close")})),n.append(b),r.val(""),l.val(""),t.serializeAllBlocks(s)}}}),this.$wrapper.on("click",".btn-remove-range",function(i){i.preventDefault(),i.stopPropagation();var a=e(this).closest(".range-chip"),s=a.closest(".group-include, .exclude-row");a.remove(),t.serializeAllBlocks(s)}),this.$wrapper.on("keydown",".multi-range-container .range-min-input, .multi-range-container .range-max-input",function(t){13===t.keyCode&&(t.preventDefault(),e(this).closest(".multi-range-container").find(".btn-add-range").click())}),this.$wrapper.on("click",".tile-option",function(i){i.preventDefault();var a=e(this),s=a.closest(".multi-select-tiles"),o=a.closest(".group-include, .exclude-row");"true"===s.attr("data-exclusive")?a.hasClass("selected")?a.removeClass("selected"):(s.find(".tile-option").removeClass("selected"),a.addClass("selected")):a.toggleClass("selected"),t.serializeAllBlocks(o)}),this.$wrapper.on("click",".comb-attr-value",function(i){i.preventDefault();var a=e(this),s=a.closest(".group-include, .exclude-row"),o=a.closest(".value-picker");a.toggleClass("selected"),t.updateCombinationData(o),t.serializeAllBlocks(s)}),this.$wrapper.on("change",".comb-mode-radio",function(){var i=e(this).closest(".value-picker"),a=e(this).closest(".group-include, .exclude-row");t.updateCombinationData(i),t.serializeAllBlocks(a)}),this.$wrapper.on("click",".comb-select-all",function(i){i.preventDefault();var a=e(this).closest(".comb-attr-group"),s=e(this).closest(".value-picker"),o=e(this).closest(".group-include, .exclude-row");a.find(".comb-attr-value:visible").addClass("selected"),t.updateCombinationData(s),t.serializeAllBlocks(o)}),this.$wrapper.on("click",".comb-select-none",function(i){i.preventDefault();var a=e(this).closest(".comb-attr-group"),s=e(this).closest(".value-picker"),o=e(this).closest(".group-include, .exclude-row");a.find(".comb-attr-value").removeClass("selected"),t.updateCombinationData(s),t.serializeAllBlocks(o)}),this.$wrapper.on("input",".comb-attr-search",function(){var t=e(this).val().toLowerCase().trim();e(this).closest(".comb-attr-group").find(".comb-attr-value").each(function(){var i=e(this).data("name")||"";t&&-1===i.indexOf(t)?e(this).hide():e(this).show()})}),this.$wrapper.on("click",".btn-toggle-modifiers",function(t){t.preventDefault();var i=e(this).closest(".group-modifiers"),a=i.find(".group-modifiers-content");a.slideToggle(150,function(){i.toggleClass("expanded",a.is(":visible"))})}),this.$wrapper.on("change input",".group-modifier-limit",function(){var i=e(this).closest(".selection-group"),a=e(this),s=parseInt(a.val(),10),o=i.find(".group-header .group-count-badge").data("finalCount")||0,n=i.find(".group-preview-badge .preview-count");if(n.length&&o>0){var r=s>0&&s0&&(d=((t.config.trans||{}).items_skipped_conflicts||"{count} item(s) were skipped due to conflicts.").replace("{count}",s),t.showValidationError(d));var c=o.find(".entity-chips");t.updateChipsVisibility(c),t.serializeAllBlocks(n)}else{if(t.pendingSelections||(t.pendingSelections=[]),t.$dropdown.find(".tree-item:not(.filtered-out)").each(function(){var i=e(this),o=parseInt(i.data("id"),10),n=i.data("name");if(!i.hasClass("selected")){if(!t.validateSelection(o,n,a,i.data()).valid)return void s++;i.addClass("selected"),t.pendingSelections.some(function(e){return parseInt(e.id,10)===o})||t.pendingSelections.push({id:o,name:n,data:i.data()})}}),s>0){var d=((t.config.trans||{}).items_skipped_conflicts||"{count} item(s) were skipped due to conflicts.").replace("{count}",s);t.showValidationError(d)}var p=t.$dropdown.find(".tree-item.selected").length,u=t.$dropdown.find(".tree-item").length,h="cms_categories"===(t.$dropdown.find(".category-tree").data("entity-type")||"categories")?"CMS categories":"categories";t.$dropdown.find(".results-count").text(u+" "+h+" ("+p+" selected)")}}}),this.$dropdown.on("click",".btn-clear-selection",function(e){if(e.preventDefault(),t.activeGroup)if("tree"!==t.viewMode){var i,a,s=t.$wrapper.find('.target-block[data-block-type="'+t.activeGroup.blockType+'"]').find('.selection-group[data-group-index="'+t.activeGroup.groupIndex+'"]');if("include"===t.activeGroup.section)i=s.find(".include-picker"),a=s.find(".group-include");else{var o=s.find('.exclude-row[data-exclude-index="'+t.activeGroup.excludeIndex+'"]');i=o.find(".exclude-picker"),a=o}t.pendingSelections=[],i.find(".entity-chips").empty().removeClass("chips-expanded chips-collapsed"),t.$dropdown.find(".dropdown-item").removeClass("selected"),t.serializeAllBlocks(a)}else{t.pendingSelections=[],t.$dropdown.find(".tree-item").removeClass("selected");var n=t.$dropdown.find(".tree-item").length,r="cms_categories"===(t.$dropdown.find(".category-tree").data("entity-type")||"categories")?"CMS categories":"categories";t.$dropdown.find(".results-count").text(n+" "+r)}}),this.$dropdown.on("click",".btn-save",function(e){if(e.preventDefault(),t.pendingPicker&&t.pendingSelections){var i=t.pendingPicker.find(".entity-chips");i.empty(),t.pendingSelections.forEach(function(e){t.addSelectionNoUpdate(t.pendingPicker,e.id,e.name,e.data)}),t.updateChipsVisibility(i),t.pendingRow&&t.serializeAllBlocks(t.pendingRow)}t.pendingSelections=null,t.pendingPicker=null,t.pendingRow=null,t.hideDropdown()}),this.$dropdown.on("click",".btn-cancel",function(e){e.preventDefault(),t.pendingSelections=null,t.pendingPicker=null,t.pendingRow=null,t.hideDropdown()}),this.$dropdown.on("click",".btn-load-more",function(e){if(e.preventDefault(),!t.isLoading){var i=parseInt(t.$dropdown.find(".load-more-select").val(),10)||20;t.searchOffset=t.searchResults.length,t.loadMoreCount=i,t.performSearch(!0)}}),this.$dropdown.on("change",".sort-field-select",function(){t.currentSort.field=e(this).val(),t.refreshSearch()}),this.$dropdown.on("click",".btn-sort-dir",function(i){i.preventDefault();var a=e(this),s="ASC"===a.data("dir")?"DESC":"ASC";a.data("dir",s),a.find("i").replaceWith(this.esIcon("sort_by_alpha")),t.currentSort.dir=s,t.refreshSearch()}),this.$dropdown.on("click",".category-tree .tree-toggle",function(i){i.stopPropagation();var a=e(this).closest(".tree-item"),s=t.$dropdown.find(".tree-item");a.toggleClass("collapsed");var o=a.hasClass("collapsed");e(this).find("i").text(o?"arrow_right":"arrow_drop_down");for(var n=t.findTreeDescendants(a,s),r=0;r0?" ("+r+" selected)":"")),t.updateSelectChildrenButtons(d)}}}),this.$dropdown.on("click",".category-tree .tree-count.clickable",function(i){i.preventDefault(),i.stopPropagation();var a=e(this),s=a.data("category-id"),o=a.closest(".tree-item").data("name"),n=t.$dropdown.find(".category-tree").data("entity-type")||"categories";a.hasClass("popover-open")?t.hidePreviewPopover():t.showCategoryItemsPreview(a,s,o,n)}),this.$dropdown.on("click",".category-tree .btn-select-children",function(i){i.stopPropagation();var a=e(this),s=a.closest(".tree-item"),o=t.$dropdown.find(".tree-item");if(t.activeGroup){var n,r,l=t.$wrapper.find('.target-block[data-block-type="'+t.activeGroup.blockType+'"]').find('.selection-group[data-group-index="'+t.activeGroup.groupIndex+'"]');if("include"===t.activeGroup.section)n=l.find(".include-picker"),r=l.find(".group-include");else{var c=l.find('.exclude-row[data-exclude-index="'+t.activeGroup.excludeIndex+'"]');n=c.find(".exclude-picker"),r=c}for(var d=t.findTreeDescendants(s,o),p=s.hasClass("selected"),u=0;u0){var _=(h.children_skipped_conflicts||"{count} child item(s) were skipped due to conflicts.").replace("{count}",m);t.showValidationError(_)}a.find("i").replaceWith(t.esIcon("indeterminate_check_box")),a.attr("title",h.deselect_with_children||"Deselect with all children")}var x=n.find(".entity-chips");t.updateChipsVisibility(x),t.serializeAllBlocks(r),t.updateSelectChildrenButtons(o);var k=t.$dropdown.find(".tree-item.selected").length,C=t.$dropdown.find(".tree-item").length,S="cms_categories"===(t.$dropdown.find(".category-tree").data("entity-type")||"categories")?"CMS categories":"categories";t.$dropdown.find(".results-count").text(C+" "+S+(k>0?" ("+k+" selected)":""))}}),this.$dropdown.on("click",".category-tree .btn-expand-all",function(e){e.preventDefault(),t.$dropdown.find(".tree-item").removeClass("collapsed").show(),t.$dropdown.find(".tree-toggle i").replaceWith(this.esIcon("arrow_drop_down"))}),this.$dropdown.on("click",".category-tree .btn-collapse-all",function(i){i.preventDefault();var a=1/0;t.$dropdown.find(".tree-item").each(function(){var t=parseInt(e(this).data("level"),10);t0),clearTimeout(t.refineTimeout),t.refineTimeout=setTimeout(function(){"tree"!==t.viewMode?t.refreshSearch():t.filterCategoryTree(i)},300)}),this.$dropdown.on("click",".btn-clear-refine",function(i){i.preventDefault(),t.refineQuery="",t.$dropdown.find(".refine-input").val(""),e(this).hide(),"tree"!==t.viewMode?t.refreshSearch():t.filterCategoryTree("")}),this.$dropdown.on("click",".btn-refine-negate",function(i){i.preventDefault(),t.refineNegate=!t.refineNegate,e(this).toggleClass("active",t.refineNegate);var a=t.config.trans||{},s=t.refineNegate?a.refine_exclude||"Exclude...":a.refine_short||"Refine...";t.$dropdown.find(".refine-input").attr("placeholder",s),t.refineQuery&&t.refreshSearch()}),this.$dropdown.on("click",".btn-toggle-filters",function(i){i.preventDefault();var a=t.$dropdown.find(".filter-panel");a.toggleClass("show"),e(this).toggleClass("active",a.hasClass("show")),a.hasClass("show")&&t.activeGroup&&t.updateFilterPanelForEntity(t.activeGroup.searchEntity)}),this.$dropdown.on("click",".btn-show-history",function(i){i.preventDefault(),e(this).toggleClass("active"),e(this).hasClass("active")&&t.activeGroup?t.showSearchHistory(t.activeGroup.searchEntity):t.performSearch()}),this.$dropdown.on("change",".filter-in-stock",function(){t.filters.inStock=e(this).is(":checked"),t.refreshSearch()}),this.$dropdown.on("change",".filter-discounted",function(){t.filters.discounted=e(this).is(":checked"),t.refreshSearch()}),this.$dropdown.on("change",".filter-price-min, .filter-price-max",function(){var e=t.$dropdown.find(".filter-panel");t.filters.priceMin=e.find(".filter-price-min").val()||null,t.filters.priceMax=e.find(".filter-price-max").val()||null,t.refreshSearch()}),this.$dropdown.on("change",".filter-product-count-min, .filter-product-count-max",function(){var i=e(this).closest(".filter-row");t.filters.productCountMin=i.find(".filter-product-count-min").val()||null,t.filters.productCountMax=i.find(".filter-product-count-max").val()||null,t.refreshSearch()}),this.$dropdown.on("change",".filter-sales-min, .filter-sales-max",function(){var i=e(this).closest(".filter-row");t.filters.salesMin=i.find(".filter-sales-min").val()||null,t.filters.salesMax=i.find(".filter-sales-max").val()||null,t.refreshSearch()}),this.$dropdown.on("change",".filter-turnover-min, .filter-turnover-max",function(){var i=e(this).closest(".filter-row");t.filters.turnoverMin=i.find(".filter-turnover-min").val()||null,t.filters.turnoverMax=i.find(".filter-turnover-max").val()||null,t.refreshSearch()}),this.$dropdown.on("change",".filter-date-add-from, .filter-date-add-to",function(){var i=e(this).closest(".filter-row");t.filters.dateAddFrom=i.find(".filter-date-add-from").val()||null,t.filters.dateAddTo=i.find(".filter-date-add-to").val()||null,t.refreshSearch()}),this.$dropdown.on("change",".filter-last-product-from, .filter-last-product-to",function(){var i=e(this).closest(".filter-row");t.filters.lastProductFrom=i.find(".filter-last-product-from").val()||null,t.filters.lastProductTo=i.find(".filter-last-product-to").val()||null,t.refreshSearch()}),this.$dropdown.on("change",".filter-depth-select",function(){t.filters.depth=e(this).val()||null,t.refreshSearch()}),this.$dropdown.on("change",".filter-has-products",function(){t.filters.hasProducts=e(this).is(":checked"),t.refreshSearch()}),this.$dropdown.on("change",".filter-has-description",function(){t.filters.hasDescription=e(this).is(":checked"),t.refreshSearch()}),this.$dropdown.on("change",".filter-has-image",function(){t.filters.hasImage=e(this).is(":checked"),t.refreshSearch()}),this.$dropdown.on("change",".filter-active-only",function(){t.filters.activeOnly=e(this).is(":checked"),t.refreshSearch()}),this.$dropdown.on("change",".filter-attribute-group-select",function(){t.filters.attributeGroup=e(this).val()||null,t.refreshSearch()}),this.$dropdown.on("change",".filter-feature-group-select",function(){t.filters.featureGroup=e(this).val()||null,t.refreshSearch()}),this.$dropdown.on("change",".filter-is-color",function(){t.filters.isColor=e(this).is(":checked"),t.refreshSearch()}),this.$dropdown.on("change",".filter-is-custom",function(){t.filters.isCustom=e(this).is(":checked"),t.refreshSearch()}),this.$dropdown.on("change",".filter-indexable",function(){t.filters.indexable=e(this).is(":checked"),t.refreshSearch()}),this.$dropdown.on("change",".filter-has-holidays",function(){t.filters.hasHolidays=e(this).is(":checked"),t.refreshSearch()}),this.$dropdown.on("change",".filter-contains-states",function(){t.filters.containsStates=e(this).is(":checked"),t.refreshSearch()}),this.$dropdown.on("change",".filter-zone-select",function(){t.filters.zone=e(this).val()||null,t.refreshSearch()}),this.$dropdown.on("click",".filter-row-entity-categories .btn-clear-filters, .filter-row-entity-manufacturers .btn-clear-filters, .filter-row-entity-suppliers .btn-clear-filters, .filter-row-entity-attributes .btn-clear-filters, .filter-row-entity-features .btn-clear-filters, .filter-row-entity-cms .btn-clear-filters, .filter-row-entity-cms-categories .btn-clear-filters, .filter-row-entity-countries .btn-clear-filters",function(i){i.preventDefault();var a=e(this).closest(".filter-row");a.find('input[type="number"]').val(""),a.find('input[type="date"]').val(""),a.find("select").val(""),a.find('input[type="checkbox"]').prop("checked",!1),a.find(".filter-active-only").prop("checked",!0),t.filters.productCountMin=null,t.filters.productCountMax=null,t.filters.salesMin=null,t.filters.salesMax=null,t.filters.turnoverMin=null,t.filters.turnoverMax=null,t.filters.depth=null,t.filters.hasProducts=!1,t.filters.hasDescription=!1,t.filters.hasImage=!1,t.filters.activeOnly=!0,t.filters.attributeGroup=null,t.filters.featureGroup=null,t.filters.isColor=!1,t.filters.isCustom=!1,t.filters.indexable=!1,t.filters.dateAddFrom=null,t.filters.dateAddTo=null,t.filters.lastProductFrom=null,t.filters.lastProductTo=null,t.filters.hasHolidays=!1,t.filters.containsStates=!1,t.filters.zone=null,t.refreshSearch()}),this.$dropdown.on("click",".filter-group-toggle",function(i){if(!e(i.target).closest(".toggle-count.clickable").length){i.preventDefault();var a=e(this),s=a.data("group-id"),o=a.data("type"),n=a.hasClass("active");t.$dropdown.find(".filter-group-toggle").removeClass("active"),n?t.hideFilterGroupValues():(a.addClass("active"),t.showFilterGroupValues(s,o))}}),this.$dropdown.on("click",".filter-group-toggle .toggle-count.clickable",function(i){i.stopPropagation(),i.preventDefault();var a=e(this),s=a.data("groupId"),o=a.data("type"),n=a.data("groupName");a.hasClass("popover-open")?t.hidePreviewPopover():t.showFilterGroupPreviewPopover(a,s,o,n)}),this.$dropdown.on("change",".view-mode-select",function(){var i=e(this).val(),a=t.viewMode;t.viewMode=i,t.$dropdown.removeClass("view-list view-tree view-cols-2 view-cols-3 view-cols-4 view-cols-5 view-cols-6 view-cols-7 view-cols-8").addClass("view-"+i.replace("cols-","cols-"));var s=t.activeGroup?t.activeGroup.searchEntity:"";"tree"!==i||"categories"!==s&&"cms_categories"!==s?"tree"!==i&&("tree"===a?t.refreshSearch():t.renderSearchResults(!1)):t.loadCategoryTree()}),this.$dropdown.on("click",".btn-close-values",function(e){e.preventDefault(),e.stopPropagation(),t.hideFilterGroupValues()}),this.$dropdown.on("click",".filter-chip",function(i){i.preventDefault(),i.stopPropagation();var a=e(this),s=parseInt(a.data("id"),10),o=a.hasClass("filter-attr-chip")?t.filters.attributes:t.filters.features,n=o.indexOf(s);-1===n?(o.push(s),a.addClass("active")):(o.splice(n,1),a.removeClass("active")),t.updateFilterToggleStates(),t.refreshSearch()}),this.$dropdown.on("click",".filter-row-quick .btn-clear-filters",function(e){e.preventDefault(),t.clearFilters()}),e(document).on("click",function(i){e(i.target).closest(".value-picker").length||e(i.target).closest(".target-search-dropdown").length||e(i.target).closest(".target-preview-popover").length||t.hideDropdown()}),e(document).on("keydown",function(i){if(t.$dropdown&&t.$dropdown.hasClass("show")){var a=e(document.activeElement).is("input, textarea");if((i.ctrlKey||i.metaKey)&&65===i.keyCode){if(a)return;return i.preventDefault(),i.stopPropagation(),t.$dropdown.find(".btn-select-all").trigger("click"),!1}if((i.ctrlKey||i.metaKey)&&68===i.keyCode){if(a)return;return i.preventDefault(),i.stopPropagation(),t.$dropdown.find(".btn-clear-selection").trigger("click"),!1}("Escape"===i.key||"Enter"===i.key)&&(i.preventDefault(),t.hideDropdown())}})}}}(jQuery),function(e){"use strict";window._EntitySelectorMixins=window._EntitySelectorMixins||{},window._EntitySelectorMixins.dropdown={createDropdown:function(){this.$wrapper.find(".target-search-dropdown").remove();var t=this.config.trans||{},i='';i+='",i+='
',i+='
',i+='
'+(t.in_stock||"In stock")+"",i+='
'+(t.discounted||"On sale")+"",i+='
',i+=''+(t.price||"Price")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+='
',i+=this.esIcon("close"),i+=" ",i+="
",i+='
',i+='
'+this.esIcon("label")+" "+(t.attributes||"Attributes")+": ",i+='
',i+="
",i+='
",i+='
',i+='
'+this.esIcon("list")+" "+(t.features||"Features")+": ",i+='
',i+="
",i+='
",i+='
',i+='
',i+='
',i+=''+this.esIcon("inventory_2")+" "+(t.product_count||"Products")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+='
',i+=''+this.esIcon("shopping_cart")+" "+(t.total_sales||"Sales")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+='
',i+=''+this.esIcon("payments")+" "+(t.turnover||"Revenue")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+='
'+(t.active_only||"Active only")+"",i+="
",i+='
',i+='
',i+=''+this.esIcon("account_tree")+" "+(t.depth||"Depth")+": ",i+='',i+=''+(t.all_levels||"All levels")+" ",i+=''+(t.level||"Level")+" 1 ("+(t.root||"Root")+") ",i+=''+(t.level||"Level")+" 2 ",i+=''+(t.level||"Level")+" 3 ",i+=''+(t.level||"Level")+" 4+ ",i+=" ",i+="
",i+='
'+(t.has_products||"Has products")+"",i+='
'+(t.has_description||"Has description")+"",i+='
'+(t.has_image||"Has image")+"",i+='
'+this.esIcon("close")+" ",i+="
",i+="
",i+='
',i+='
',i+='
',i+=''+this.esIcon("inventory_2")+" "+(t.product_count||"Products")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+='
',i+=''+this.esIcon("shopping_cart")+" "+(t.total_sales||"Sales")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+='
',i+=''+this.esIcon("payments")+" "+(t.turnover||"Revenue")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+='
'+(t.active_only||"Active only")+"",i+="
",i+='
',i+='
',i+=''+this.esIcon("event")+" "+(t.date_added||"Added")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+='
',i+=''+this.esIcon("schedule")+" "+(t.last_product||"Last product")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+='
'+this.esIcon("close")+" ",i+="
",i+="
",i+='
',i+='
',i+='
',i+=''+this.esIcon("inventory_2")+" "+(t.product_count||"Products")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+='
',i+=''+this.esIcon("shopping_cart")+" "+(t.total_sales||"Sales")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+='
',i+=''+this.esIcon("payments")+" "+(t.turnover||"Revenue")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+='
'+(t.active_only||"Active only")+"",i+="
",i+='
',i+='
',i+=''+this.esIcon("event")+" "+(t.date_added||"Added")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+='
',i+=''+this.esIcon("schedule")+" "+(t.last_product||"Last product")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+='
'+this.esIcon("close")+" ",i+="
",i+="
",i+='
',i+='
',i+='
',i+=''+this.esIcon("inventory_2")+" "+(t.product_count||"Products")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+='
',i+=''+this.esIcon("shopping_cart")+" "+(t.total_sales||"Sales")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+='
',i+=''+this.esIcon("payments")+" "+(t.turnover||"Revenue")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+="
",i+='
',i+='
',i+=''+this.esIcon("label")+" "+(t.attribute_group||"Group")+": ",i+='',i+=''+(t.all_groups||"All groups")+" ",i+=" ",i+="
",i+='
'+(t.color_only||"Color attributes")+"",i+='
'+this.esIcon("close")+" ",i+="
",i+="
",i+='
',i+='
',i+='
',i+=''+this.esIcon("inventory_2")+" "+(t.product_count||"Products")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+='
',i+=''+this.esIcon("shopping_cart")+" "+(t.total_sales||"Sales")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+='
',i+=''+this.esIcon("payments")+" "+(t.turnover||"Revenue")+": ",i+=' ',i+='- ',i+=' ',i+="
",i+="
",i+='
',i+='
',i+=''+this.esIcon("list")+" "+(t.feature_group||"Group")+": ",i+='',i+=''+(t.all_groups||"All groups")+" ",i+=" ",i+="
",i+='
'+(t.custom_only||"Custom values")+"",i+='
'+this.esIcon("close")+" ",i+="
",i+="
",i+='
',i+=' '+(t.active_only||"Active only")+" ",i+=' '+(t.indexable||"Indexable")+" ",i+=''+this.esIcon("close")+" ",i+="
",i+='
',i+=' '+(t.active_only||"Active only")+" ",i+=''+this.esIcon("close")+" ",i+="
",i+='
',i+='
'+(t.active_only||"Active only")+"",i+='
'+(t.has_holidays||"Has holidays")+"",i+='
'+(t.contains_states||"Has states")+"",i+='
',i+=''+this.esIcon("language")+" "+(t.zone||"Zone")+": ",i+='',i+=''+(t.all_zones||"All zones")+" ",i+=" ",i+="
",i+='
'+this.esIcon("close")+" ",i+="
",i+="
",i+='",i+='
',i+='",i+="
",this.$dropdown=e(i),e("body").append(this.$dropdown)},hideDropdown:function(){this.$dropdown&&this.$dropdown.removeClass("show"),this.activeGroup=null},positionDropdown:function(t){if(this.$dropdown){var i=t.closest(".value-picker"),a=t.closest(".entity-search-box"),s=a.offset(),o=a.outerHeight(),n=i.offset(),r=i.outerWidth(),l=s.top+o+4,c=n.left,d=Math.max(r,400),p=e(window).width();c+d>p-10&&(d=p-c-10);var u=e(window).height()-(l-e(window).scrollTop())-20;u=Math.max(u,400),this.$dropdown.css({position:"absolute",top:l,left:c,width:d,maxHeight:u,zIndex:1e4}),this.$dropdown.addClass("show")}}}}(jQuery),function(e){"use strict";window._EntitySelectorMixins=window._EntitySelectorMixins||{},window._EntitySelectorMixins.search={categoryTreeCache:null,performSearch:function(t){var i=this;if(this.activeGroup){this.isLoading=!0;var a=this.activeGroup.searchEntity,s=t&&this.loadMoreCount?this.loadMoreCount:20,o={ajax:1,action:"searchTargetEntities",trait:"EntitySelector",entity_type:a,q:this.searchQuery,limit:s,offset:t?this.searchOffset:0,sort_by:this.currentSort?this.currentSort.field:"name",sort_dir:this.currentSort?this.currentSort.dir:"ASC"};this.refineQuery&&(o.refine=this.refineQuery,this.refineNegate&&(o.refine_negate=1)),"products"===a&&this.filters&&(this.filters.inStock&&(o.filter_in_stock=1),this.filters.discounted&&(o.filter_discounted=1),null!==this.filters.priceMin&&""!==this.filters.priceMin&&(o.filter_price_min=this.filters.priceMin),null!==this.filters.priceMax&&""!==this.filters.priceMax&&(o.filter_price_max=this.filters.priceMax),this.filters.attributes&&this.filters.attributes.length>0&&(o.filter_attributes=JSON.stringify(this.filters.attributes)),this.filters.features&&this.filters.features.length>0&&(o.filter_features=JSON.stringify(this.filters.features))),"products"!==a&&this.filters&&(null!==this.filters.productCountMin&&""!==this.filters.productCountMin&&(o.filter_product_count_min=this.filters.productCountMin),null!==this.filters.productCountMax&&""!==this.filters.productCountMax&&(o.filter_product_count_max=this.filters.productCountMax),"categories"===a&&(this.filters.depth&&(o.filter_depth=this.filters.depth),this.filters.hasProducts&&(o.filter_has_products=1),this.filters.hasDescription&&(o.filter_has_description=1),this.filters.hasImage&&(o.filter_has_image=1),null!==this.filters.salesMin&&""!==this.filters.salesMin&&(o.filter_sales_min=this.filters.salesMin),null!==this.filters.salesMax&&""!==this.filters.salesMax&&(o.filter_sales_max=this.filters.salesMax),null!==this.filters.turnoverMin&&""!==this.filters.turnoverMin&&(o.filter_turnover_min=this.filters.turnoverMin),null!==this.filters.turnoverMax&&""!==this.filters.turnoverMax&&(o.filter_turnover_max=this.filters.turnoverMax),this.filters.activeOnly&&(o.filter_active=1)),"manufacturers"===a&&(null!==this.filters.salesMin&&""!==this.filters.salesMin&&(o.filter_sales_min=this.filters.salesMin),null!==this.filters.salesMax&&""!==this.filters.salesMax&&(o.filter_sales_max=this.filters.salesMax),null!==this.filters.turnoverMin&&""!==this.filters.turnoverMin&&(o.filter_turnover_min=this.filters.turnoverMin),null!==this.filters.turnoverMax&&""!==this.filters.turnoverMax&&(o.filter_turnover_max=this.filters.turnoverMax),this.filters.dateAddFrom&&(o.filter_date_add_from=this.filters.dateAddFrom),this.filters.dateAddTo&&(o.filter_date_add_to=this.filters.dateAddTo),this.filters.lastProductFrom&&(o.filter_last_product_from=this.filters.lastProductFrom),this.filters.lastProductTo&&(o.filter_last_product_to=this.filters.lastProductTo),this.filters.activeOnly&&(o.filter_active=1)),"suppliers"===a&&(null!==this.filters.salesMin&&""!==this.filters.salesMin&&(o.filter_sales_min=this.filters.salesMin),null!==this.filters.salesMax&&""!==this.filters.salesMax&&(o.filter_sales_max=this.filters.salesMax),null!==this.filters.turnoverMin&&""!==this.filters.turnoverMin&&(o.filter_turnover_min=this.filters.turnoverMin),null!==this.filters.turnoverMax&&""!==this.filters.turnoverMax&&(o.filter_turnover_max=this.filters.turnoverMax),this.filters.dateAddFrom&&(o.filter_date_add_from=this.filters.dateAddFrom),this.filters.dateAddTo&&(o.filter_date_add_to=this.filters.dateAddTo),this.filters.lastProductFrom&&(o.filter_last_product_from=this.filters.lastProductFrom),this.filters.lastProductTo&&(o.filter_last_product_to=this.filters.lastProductTo),this.filters.activeOnly&&(o.filter_active=1)),"attributes"===a&&(null!==this.filters.salesMin&&""!==this.filters.salesMin&&(o.filter_sales_min=this.filters.salesMin),null!==this.filters.salesMax&&""!==this.filters.salesMax&&(o.filter_sales_max=this.filters.salesMax),null!==this.filters.turnoverMin&&""!==this.filters.turnoverMin&&(o.filter_turnover_min=this.filters.turnoverMin),null!==this.filters.turnoverMax&&""!==this.filters.turnoverMax&&(o.filter_turnover_max=this.filters.turnoverMax),this.filters.attributeGroup&&(o.filter_attribute_group=this.filters.attributeGroup),this.filters.isColor&&(o.filter_is_color=1)),"features"===a&&(null!==this.filters.salesMin&&""!==this.filters.salesMin&&(o.filter_sales_min=this.filters.salesMin),null!==this.filters.salesMax&&""!==this.filters.salesMax&&(o.filter_sales_max=this.filters.salesMax),null!==this.filters.turnoverMin&&""!==this.filters.turnoverMin&&(o.filter_turnover_min=this.filters.turnoverMin),null!==this.filters.turnoverMax&&""!==this.filters.turnoverMax&&(o.filter_turnover_max=this.filters.turnoverMax),this.filters.featureGroup&&(o.filter_feature_group=this.filters.featureGroup),this.filters.isCustom&&(o.filter_is_custom=1)),"cms"===a&&(this.filters.activeOnly&&(o.filter_active=1),this.filters.indexable&&(o.filter_indexable=1)),"cms_categories"===a&&this.filters.activeOnly&&(o.filter_active=1),"countries"===a&&(this.filters.activeOnly&&(o.filter_active=1),this.filters.hasHolidays&&(o.filter_has_holidays=1),this.filters.containsStates&&(o.filter_contains_states=1),this.filters.zone&&(o.filter_zone=this.filters.zone))),e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:o,success:function(e){i.isLoading=!1,e.success&&(i.searchQuery&&i.searchQuery.length>=2&&e.total>0&&i.addToSearchHistory(a,i.searchQuery),i.searchResults=t?i.searchResults.concat(e.results||[]):e.results||[],i.searchTotal=e.total||0,i.searchOffset=t?i.searchOffset+(e.results||[]).length:(e.results||[]).length,i.renderSearchResults(t),i.$dropdown.addClass("show"))},error:function(){i.isLoading=!1}})}},renderSearchResults:function(t){var i=this,a=this.config.trans||{},s=this.$dropdown.find(".dropdown-results"),o=[],n=[];if(this.activeGroup){var r=this.$wrapper.find('.target-block[data-block-type="'+this.activeGroup.blockType+'"]').find('.selection-group[data-group-index="'+this.activeGroup.groupIndex+'"]'),l=this.activeGroup.searchEntity,c=this.activeGroup.excludeIndex;"include"===this.activeGroup.section?r.find(".include-picker").find(".entity-chip").each(function(){o.push(String(e(this).data("id")))}):(r.find('.exclude-row[data-exclude-index="'+c+'"]').find(".exclude-picker").find(".entity-chip").each(function(){o.push(String(e(this).data("id")))}),r.find(".exclude-row").each(function(){var t=e(this);if(parseInt(t.data("excludeIndex"),10)!==c){var a=t.find(".exclude-picker");(a.attr("data-search-entity")||i.activeGroup.blockType)===l&&a.find(".entity-chip").each(function(){n.push(String(e(this).data("id")))})}}))}var d=this.activeGroup&&"products"===this.activeGroup.searchEntity,p="list"===this.viewMode;this.$dropdown.find(".results-header").toggle(d&&p);var u=this.searchResults.filter(function(e){return-1===n.indexOf(String(e.id))}),h=this.searchResults.length-u.length,f=u.length+" / "+this.searchTotal+" results";h>0&&(f+=" ("+h+" hidden)"),this.$dropdown.find(".results-count").text(f);var v="";0!==u.length||t?u.forEach(function(e){var t="dropdown-item"+(-1!==o.indexOf(String(e.id))?" selected":"");"product"===e.type&&(t+=" result-item-product"),v+='",v+='
'+i.esIcon("check")+" ";var a=i.activeGroup?i.activeGroup.searchEntity:null;if("countries"===a&&e.iso_code){var s="https://flagcdn.com/w40/"+e.iso_code.toLowerCase()+".png";v+='
'+i.esIcon("flag")+" "}else if(e.image)v+='
';else{var n="widgets";"categories"===a?n="folder":"manufacturers"===a?n="business":"suppliers"===a?n="local_shipping":"attributes"===a?n="brush":"features"===a?n="list":"cms"===a?n="description":"cms_categories"===a&&(n="folder"),v+='
'+i.esIcon(n)+"
"}if(v+='
',v+='
'+i.escapeHtml(e.name)+"
",e.subtitle){var r=e.subtitle.split("\n");v+='
',r.forEach(function(e,t){v+='
'+i.escapeHtml(e)+"
"}),v+="
"}if(v+="
","product"===e.type)if(p){v+='
',v+=''+(e.regular_price_formatted||e.price_formatted||"")+" ",v+="
",e.has_discount?(v+='
',v+=''+(e.price_formatted||"")+" ",v+="
"):v+='
';var l="out_of_stock"===e.stock_status?"stock-out":"low_stock"===e.stock_status?"stock-low":"stock-ok";v+='
',v+=''+(void 0!==e.stock_qty?e.stock_qty:"")+" ",v+="
",v+='
',v+=''+(void 0!==e.sales_qty?e.sales_qty:"0")+" ",v+="
"}else{var c="out_of_stock"===e.stock_status?"stock-out":"low_stock"===e.stock_status?"stock-low":"";v+='
',v+=''+(e.price_formatted||"")+" ",void 0!==e.stock_qty&&(v+=''+e.stock_qty+" qty "),e.has_discount&&(v+='-'+(e.discount_percent||"")+"% "),v+="
"}v+="
"}):v=''+this.esIcon("search")+" "+(a.no_results||"No results found")+"
",t?s.append(v):s.html(v);var g=this.searchResults.length'+(a.all||"All")+" ("+b+")")}this.$dropdown.find(".dropdown-actions").show(),this.$dropdown.find(".btn-show-history").removeClass("active");var _=this.activeGroup?this.activeGroup.searchEntity:null,x=_&&this.getSearchHistory(_).length>0;this.$dropdown.find(".btn-show-history").prop("disabled",!x)},loadSearchHistory:function(){try{var e=localStorage.getItem(this.searchHistoryKey);this.searchHistory=e?JSON.parse(e):{}}catch(e){this.searchHistory={}}},saveSearchHistory:function(){try{localStorage.setItem(this.searchHistoryKey,JSON.stringify(this.searchHistory))}catch(e){}},addToSearchHistory:function(e,t){if(t&&!(t.length<2)){this.searchHistory[e]||(this.searchHistory[e]=[]);var i=this.searchHistory[e],a=i.indexOf(t);-1!==a&&i.splice(a,1),i.unshift(t),i.length>this.searchHistoryMax&&(i=i.slice(0,this.searchHistoryMax)),this.searchHistory[e]=i,this.saveSearchHistory()}},removeFromSearchHistory:function(e,t){if(this.searchHistory[e]){var i=this.searchHistory[e].indexOf(t);-1!==i&&(this.searchHistory[e].splice(i,1),this.saveSearchHistory())}},getSearchHistory:function(e){return this.searchHistory[e]||[]},showSearchHistory:function(e){var t=this.getSearchHistory(e),i=this.config.trans||{},a=this.$dropdown.find(".dropdown-results");if(this.$dropdown.find(".results-count").text(i.recent_searches||"Recent searches"),this.$dropdown.find(".dropdown-actions").hide(),this.$dropdown.find(".filter-panel").removeClass("show"),this.$dropdown.find(".btn-toggle-filters").removeClass("active"),this.$dropdown.find(".results-header").hide(),t.length){for(var s='',o=0;o',s+=this.esIcon("schedule"),s+=''+this.escapeHtml(n)+" ",s+='',s+=this.esIcon("close"),s+=" ",s+="
"}s+=" ",a.html(s),this.$dropdown.addClass("show")}else this.performSearch()},refreshSearch:function(){"tree"!==this.viewMode?(this.searchOffset=0,this.loadMoreCount=20,this.$dropdown&&(this.$dropdown.find(".load-more-select").val("20"),this.$dropdown.find('.load-more-select option[data-all="true"]').remove()),this.performSearch(!1)):this.filterCategoryTree(this.searchQuery||"")},clearFilters:function(){if(this.refineQuery="",this.refineNegate=!1,this.filters={inStock:!1,discounted:!1,priceMin:null,priceMax:null,attributes:[],features:[],productCountMin:null,productCountMax:null,salesMin:null,salesMax:null,turnoverMin:null,turnoverMax:null,depth:null,hasProducts:!1,hasDescription:!1,hasImage:!1,activeOnly:!0,attributeGroup:null,featureGroup:null,dateAddFrom:null,dateAddTo:null,lastProductFrom:null,lastProductTo:null,hasHolidays:!1,containsStates:!1,zone:null},this.$dropdown){var e=this.config.trans||{};this.$dropdown.find(".refine-input").val("").attr("placeholder",e.refine_short||"Refine..."),this.$dropdown.find(".btn-clear-refine").hide(),this.$dropdown.find(".btn-refine-negate").removeClass("active"),this.$dropdown.find(".filter-in-stock").prop("checked",!1),this.$dropdown.find(".filter-discounted").prop("checked",!1),this.$dropdown.find(".filter-price-min").val(""),this.$dropdown.find(".filter-price-max").val(""),this.$dropdown.find(".filter-attr-chip").removeClass("active"),this.$dropdown.find(".filter-feat-chip").removeClass("active"),this.$dropdown.find(".filter-group-toggle").removeClass("active has-selection"),this.$dropdown.find(".filter-row-values").hide(),this.$dropdown.find(".filter-product-count-min, .filter-product-count-max").val(""),this.$dropdown.find(".filter-sales-min, .filter-sales-max").val(""),this.$dropdown.find(".filter-turnover-min, .filter-turnover-max").val(""),this.$dropdown.find(".filter-date-add-from, .filter-date-add-to").val(""),this.$dropdown.find(".filter-last-product-from, .filter-last-product-to").val(""),this.$dropdown.find(".filter-depth-select").val(""),this.$dropdown.find(".filter-has-products").prop("checked",!1),this.$dropdown.find(".filter-has-description").prop("checked",!1),this.$dropdown.find(".filter-has-image").prop("checked",!1),this.$dropdown.find(".filter-active-only").prop("checked",!0),this.$dropdown.find(".filter-attribute-group-select, .filter-feature-group-select").val(""),this.$dropdown.find(".filter-has-holidays").prop("checked",!1),this.$dropdown.find(".filter-contains-states").prop("checked",!1),this.$dropdown.find(".filter-zone-select").val("")}this.refreshSearch()},resetFiltersWithoutSearch:function(){if(this.refineQuery="",this.refineNegate=!1,this.filters={inStock:!1,discounted:!1,priceMin:null,priceMax:null,attributes:[],features:[],productCountMin:null,productCountMax:null,salesMin:null,salesMax:null,turnoverMin:null,turnoverMax:null,depth:null,hasProducts:!1,hasDescription:!1,hasImage:!1,activeOnly:!0,attributeGroup:null,featureGroup:null,dateAddFrom:null,dateAddTo:null,lastProductFrom:null,lastProductTo:null,hasHolidays:!1,containsStates:!1,zone:null},this.$dropdown){var e=this.config.trans||{};this.$dropdown.find(".refine-input").val("").attr("placeholder",e.refine_short||"Refine..."),this.$dropdown.find(".btn-clear-refine").hide(),this.$dropdown.find(".btn-refine-negate").removeClass("active"),this.$dropdown.find(".filter-in-stock").prop("checked",!1),this.$dropdown.find(".filter-discounted").prop("checked",!1),this.$dropdown.find(".filter-price-min").val(""),this.$dropdown.find(".filter-price-max").val(""),this.$dropdown.find(".filter-attr-chip").removeClass("active"),this.$dropdown.find(".filter-feat-chip").removeClass("active"),this.$dropdown.find(".filter-group-toggle").removeClass("active has-selection"),this.$dropdown.find(".filter-row-values").hide(),this.$dropdown.find(".filter-product-count-min, .filter-product-count-max").val(""),this.$dropdown.find(".filter-sales-min, .filter-sales-max").val(""),this.$dropdown.find(".filter-turnover-min, .filter-turnover-max").val(""),this.$dropdown.find(".filter-date-add-from, .filter-date-add-to").val(""),this.$dropdown.find(".filter-last-product-from, .filter-last-product-to").val(""),this.$dropdown.find(".filter-depth-select").val(""),this.$dropdown.find(".filter-has-products").prop("checked",!1),this.$dropdown.find(".filter-has-description").prop("checked",!1),this.$dropdown.find(".filter-has-image").prop("checked",!1),this.$dropdown.find(".filter-active-only").prop("checked",!0),this.$dropdown.find(".filter-attribute-group-select, .filter-feature-group-select").val(""),this.$dropdown.find(".filter-has-holidays").prop("checked",!1),this.$dropdown.find(".filter-contains-states").prop("checked",!1),this.$dropdown.find(".filter-zone-select").val("")}},updateFilterPanelForEntity:function(e){if(this.$dropdown){var t=this.$dropdown.find(".filter-panel");t.find(".filter-row").hide();var i=this.$dropdown.find(".view-mode-select option.tree-view-option");"categories"===e||"cms_categories"===e?(i.prop("disabled",!1).prop("hidden",!1),"tree"!==this.viewMode?(this.viewMode="tree",this.$dropdown.find(".view-mode-select").val("tree"),this.$dropdown.removeClass("view-list view-cols-2 view-cols-3 view-cols-4 view-cols-5 view-cols-6 view-cols-7 view-cols-8").addClass("view-tree"),this.loadCategoryTree()):this.loadCategoryTree()):(i.prop("disabled",!0).prop("hidden",!0),"tree"===this.viewMode&&(this.viewMode="list",this.$dropdown.find(".view-mode-select").val("list"),this.$dropdown.removeClass("view-tree").addClass("view-list"))),"products"===e?(t.find(".filter-row-quick").show(),this.filterableData&&(this.filterableData.attributes&&this.filterableData.attributes.length>0&&this.$dropdown.find(".filter-row-attributes").show(),this.filterableData.features&&this.filterableData.features.length>0&&this.$dropdown.find(".filter-row-features").show())):"categories"===e?t.find(".filter-row-entity-categories").show():"manufacturers"===e?t.find(".filter-row-entity-manufacturers").show():"suppliers"===e?t.find(".filter-row-entity-suppliers").show():"attributes"===e?(t.find(".filter-row-entity-attributes").show(),this.loadAttributeGroups()):"features"===e?t.find(".filter-row-entity-features").show():"cms"===e?t.find(".filter-row-entity-cms").show():"cms_categories"===e?t.find(".filter-row-entity-cms-categories").show():"countries"===e&&(t.find(".filter-row-entity-countries").show(),this.loadZonesForCountryFilter())}},loadAttributeGroups:function(){var t=this,i=this.$dropdown.find(".filter-attribute-group-select");i.find("option").length>1||e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"getAttributeGroups",trait:"EntitySelector"},success:function(a){a.success&&a.groups&&e.each(a.groups,function(e,a){i.append(''+t.escapeHtml(a.name)+" ("+a.count+") ")})}})},loadFeatureGroups:function(){var t=this,i=this.$dropdown.find(".filter-feature-group-select");i.find("option").length>1||e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"getFeatureGroups",trait:"EntitySelector"},success:function(a){a.success&&a.groups&&e.each(a.groups,function(e,a){i.append(''+t.escapeHtml(a.name)+" ("+a.count+") ")})}})}}}(jQuery),function(e){"use strict";window._EntitySelectorMixins=window._EntitySelectorMixins||{},window._EntitySelectorMixins.filters={clearFilters:function(){this.refineQuery="",this.refineNegate=!1,this.filters={inStock:!1,discounted:!1,priceMin:null,priceMax:null,attributes:[],features:[],productCountMin:null,productCountMax:null,salesMin:null,salesMax:null,turnoverMin:null,turnoverMax:null,depth:null,hasProducts:!1,hasDescription:!1,hasImage:!1,activeOnly:!0,attributeGroup:null,featureGroup:null,dateAddFrom:null,dateAddTo:null,lastProductFrom:null,lastProductTo:null,hasHolidays:!1,containsStates:!1,zone:null},this.$dropdown&&(this.config.trans,this.$dropdown.find(".refine-input").val(""),this.$dropdown.find(".btn-refine-negate").removeClass("active"),this.$dropdown.find(".filter-in-stock").prop("checked",!1),this.$dropdown.find(".filter-discounted").prop("checked",!1),this.$dropdown.find(".filter-price-min, .filter-price-max").val(""),this.$dropdown.find(".filter-attr-chip, .filter-feat-chip").removeClass("active"),this.$dropdown.find(".filter-product-count-min, .filter-product-count-max").val(""),this.$dropdown.find(".filter-sales-min, .filter-sales-max").val(""),this.$dropdown.find(".filter-depth-select").val(""),this.$dropdown.find(".filter-has-products").prop("checked",!1),this.$dropdown.find(".filter-active-only").prop("checked",!0),this.$dropdown.find(".filter-has-holidays").prop("checked",!1),this.$dropdown.find(".filter-contains-states").prop("checked",!1),this.$dropdown.find(".filter-zone-select").val("")),this.refreshSearch()},resetFiltersWithoutSearch:function(){this.refineQuery="",this.refineNegate=!1,this.filters={inStock:!1,discounted:!1,priceMin:null,priceMax:null,attributes:[],features:[],productCountMin:null,productCountMax:null,salesMin:null,salesMax:null,turnoverMin:null,turnoverMax:null,depth:null,hasProducts:!1,hasDescription:!1,hasImage:!1,activeOnly:!0,attributeGroup:null,featureGroup:null,dateAddFrom:null,dateAddTo:null,lastProductFrom:null,lastProductTo:null,hasHolidays:!1,containsStates:!1,zone:null}},updateFilterPanelForEntity:function(e){if(this.$dropdown){var t=this.$dropdown.find(".filter-panel");t.find(".filter-row").hide(),t.find('.filter-row[data-entity="'+e+'"]').show(),t.find(".filter-row-entity-"+e.replace("_","-")).show();var i="categories"===e||"cms_categories"===e;this.$dropdown.find(".tree-view-option").toggle(i),i&&"list"===this.viewMode?(this.viewMode="tree",this.$dropdown.find(".view-mode-select").val("tree"),this.$dropdown.removeClass("view-list view-cols-2 view-cols-3 view-cols-4 view-cols-5 view-cols-6 view-cols-7 view-cols-8").addClass("view-tree")):i||"tree"!==this.viewMode||(this.viewMode="list",this.$dropdown.find(".view-mode-select").val("list"),this.$dropdown.removeClass("view-tree view-cols-2 view-cols-3 view-cols-4 view-cols-5 view-cols-6 view-cols-7 view-cols-8").addClass("view-list")),"countries"===e&&this.loadZonesForCountryFilter(),this.updateSortOptionsForEntity(e)}},updateSortOptionsForEntity:function(t){if(this.$dropdown){var i=this.$dropdown.find(".sort-field-select"),a=i.val(),s=!1;i.find("option").each(function(){var i=e(this),o=i.data("entities");if(!o)return i.show(),void(i.val()===a&&(s=!0));var n=-1!==o.split(",").indexOf(t);i.toggle(n),n&&i.val()===a&&(s=!0)}),s||(i.val("name"),this.currentSort.field="name")}},loadFilterableData:function(){var t=this;this.filterableData?this.renderFilterDropdowns():e.ajax({url:this.config.ajaxUrl,type:"POST",data:{ajax:1,action:"getTargetFilterableAttributes",trait:"EntitySelector"},dataType:"json",success:function(e){e.success&&e.data&&(t.filterableData=e.data,t.renderFilterDropdowns())}})},renderFilterDropdowns:function(){if(this.$dropdown&&this.filterableData){var e=this,t=this.$dropdown.find(".filter-attributes-container");t.empty(),this.filterableData.attributes&&this.filterableData.attributes.length>0&&(this.filterableData.attributes.forEach(function(i){var a='';a+=''+i.name+" ",void 0!==i.count&&(a+=''+e.esIcon("visibility")+" "+i.count+" "),a+=" ",t.append(a)}),this.$dropdown.find(".filter-row-attributes").show());var i=this.$dropdown.find(".filter-features-container");i.empty(),this.filterableData.features&&this.filterableData.features.length>0&&(this.filterableData.features.forEach(function(t){var a='';a+=''+t.name+" ",void 0!==t.count&&(a+=''+e.esIcon("visibility")+" "+t.count+" "),a+=" ",i.append(a)}),this.$dropdown.find(".filter-row-features").show())}},showFilterGroupValues:function(e,t){if(this.filterableData){var i=this,a=("attribute"===t?this.filterableData.attributes:this.filterableData.features).find(function(t){return t.id==e});if(a){this.$dropdown.find(".filter-row-values").hide();var s="attribute"===t?".filter-row-attr-values":".filter-row-feat-values",o=this.$dropdown.find(s),n=o.find(".filter-values-container");n.empty();var r=''+a.name+": ";a.values.forEach(function(a){var s=("attribute"===t?-1!==i.filters.attributes.indexOf(a.id):-1!==i.filters.features.indexOf(a.id))?" active":"",o="attribute"===t?"filter-attr-chip":"filter-feat-chip",n=a.color?' style="--chip-color: '+a.color+'"':"",l=a.color?" has-color":"";r+='",a.color&&(r+=' '),r+=''+a.name+" ",void 0!==a.count&&(r+='('+a.count+") "),r+=" "}),n.html(r),o.find(".btn-close-values").remove(),o.append(''+this.esIcon("close")+" "),o.show();var l=o[0];l&&l.scrollIntoView({behavior:"smooth",block:"nearest"})}}},hideFilterGroupValues:function(){this.$dropdown.find(".filter-row-values").hide(),this.$dropdown.find(".filter-group-toggle").removeClass("active")},updateFilterToggleStates:function(){if(this.$dropdown&&this.filterableData){var e=this;this.filterableData.attributes&&this.filterableData.attributes.forEach(function(t){var i=e.$dropdown.find('.filter-group-toggle[data-group-id="'+t.id+'"][data-type="attribute"]'),a=t.values.some(function(t){return-1!==e.filters.attributes.indexOf(t.id)});i.toggleClass("has-selection",a)}),this.filterableData.features&&this.filterableData.features.forEach(function(t){var i=e.$dropdown.find('.filter-group-toggle[data-group-id="'+t.id+'"][data-type="feature"]'),a=t.values.some(function(t){return-1!==e.filters.features.indexOf(t.id)});i.toggleClass("has-selection",a)})}},loadZonesForCountryFilter:function(){var t=this;if(!this.zonesLoaded&&this.$dropdown){var i=this.$dropdown.find(".filter-zone-select");i.length&&e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"getZonesForFilter",trait:"EntitySelector"},success:function(e){if(e.success&&e.zones&&e.zones.length>0){var a=t.config.trans||{};i.empty(),i.append(''+(a.all_zones||"All zones")+" "),e.zones.forEach(function(e){i.append(''+t.escapeHtml(e.name)+" ")}),t.zonesLoaded=!0}}})}}}}(jQuery),function(e){"use strict";window._EntitySelectorMixins=window._EntitySelectorMixins||{},window._EntitySelectorMixins.chips={addSelection:function(e,t,i,a){this.addSelectionNoUpdate(e,t,i,a);var s=e.find(".entity-chips");this.updateChipsVisibility(s)},addSelectionNoUpdate:function(e,t,i,a){var s=e.find(".entity-chips"),o=e.closest(".target-block");if("single"===(this.config.mode||"multi")?(this.$wrapper.find(".entity-chips .entity-chip").remove(),this.$dropdown&&this.$dropdown.find(".dropdown-item.selected, .tree-item.selected").removeClass("selected"),this.$wrapper.find(".target-block-tab .tab-badge").remove(),this.$wrapper.find(".target-block-tab").removeClass("has-data")):"single"===(o.data("mode")||"multi")&&(s.find(".entity-chip").remove(),this.$dropdown&&this.$dropdown.find(".dropdown-item.selected, .tree-item.selected").removeClass("selected")),!s.find('.entity-chip[data-id="'+t+'"]').length){var n=o.data("blockType")||"",r="countries"===(e.attr("data-search-entity")||n),l='",r&&a&&a.iso_code?l+=' "+this.esIcon("flag","flag-fallback").replace(">",' style="display:none">')+" ":a&&a.image&&(l+=' '),l+=''+this.escapeHtml(i)+" ",r&&(l+=''+this.esIcon("visibility")+" "),l+=''+this.esIcon("close")+" ",l+=" ",s.append(l)}},removeSelection:function(e,t){var i=e.find(".entity-chips");e.find('.entity-chip[data-id="'+t+'"]').remove(),this.updateChipsVisibility(i)},updateChipsVisibility:function(t){var i=this.config.trans||{},a=(t.closest(".value-picker"),t.find(".entity-chip")),s=a.length,o=t.closest(".chips-wrapper");if(0!==s){this.ensureChipsWrapper(t);var n=t.closest(".chips-wrapper"),r=n.find(".chips-toolbar"),l=n.find(".chips-load-more"),c=r.find(".chips-search-input").val()||"";c=c.toLowerCase().trim();var d=0,p=0,u=t.hasClass("chips-expanded"),h=u?999999:this.maxVisibleChips||12;a.each(function(){var t=e(this),i=(t.find(".chip-name").text()||"").toLowerCase(),a=!c||-1!==i.indexOf(c);t.removeClass("chip-filtered-out chip-paginated-out"),a?++p>h?t.addClass("chip-paginated-out"):d++:t.addClass("chip-filtered-out")}),r.addClass("has-chips"),this.updateChipsToolbar(r,s,p,c);var f=p-d;if(f>0&&!u){var v=i.load||"Load",g=(i.remaining||"{count} remaining").replace("{count}",f),m=''+v+' 20 50 100 '+(i.all||"All")+" ("+f+') '+g+" ";l.html(m).show()}else if(u&&p>(this.maxVisibleChips||12)){var b=i.collapse||"Collapse";l.html(''+this.esIcon("expand_less")+" "+b+" ").show()}else l.hide()}else o.length&&(o.before(t),o.remove())},ensureChipsWrapper:function(t){if(!t.closest(".chips-wrapper").length){var i=this.config.trans||{},a=(t.closest(".value-picker"),''),s=e(a);t.before(s),s.find(".chips-toolbar").after(t),s.append(s.find(".chips-load-more")),this.bindChipsToolbarEvents(s)}},bindChipsToolbarEvents:function(t){var i,a=this,s=t.find(".entity-chips");t.on("input",".chips-search-input",function(){clearTimeout(i),i=setTimeout(function(){s.removeClass("chips-expanded"),a.updateChipsVisibility(s)},150)}),t.on("change",".chips-sort-select",function(){var t=e(this).val();a.sortChips(s,t)}),t.on("click",".btn-chips-clear",function(){((t.find(".chips-search-input").val()||"").trim()?s.find(".entity-chip:not(.chip-filtered-out)"):s.find(".entity-chip")).each(function(){e(this).find(".chip-remove").trigger("click")}),t.find(".chips-search-input").val(""),a.updateChipsVisibility(s)}),t.on("change",".load-more-select",function(){var t=e(this).val();"all"===t?(s.addClass("chips-expanded"),a.maxVisibleChips=999999):a.maxVisibleChips=(a.maxVisibleChips||12)+parseInt(t,10),a.updateChipsVisibility(s)}),t.on("click",".btn-collapse-chips",function(){s.removeClass("chips-expanded"),a.maxVisibleChips=12,a.updateChipsVisibility(s)})},sortChips:function(t,i){var a=t.find(".entity-chip");if(!(a.length<2)){var s=a.toArray().sort(function(t,a){var s=e(t),o=e(a);switch(i){case"name_asc":var n=(s.find(".chip-name").text()||"").toLowerCase(),r=(o.find(".chip-name").text()||"").toLowerCase();return n.localeCompare(r);case"name_desc":var l=(s.find(".chip-name").text()||"").toLowerCase();return(o.find(".chip-name").text()||"").toLowerCase().localeCompare(l);default:return 0}});e.each(s,function(e,i){t.append(i)}),this.updateChipsVisibility(t)}},updateChipsToolbar:function(e,t,i,a){var s=this.config.trans||{},o=e.find(".chips-count"),n=e.find(".btn-chips-clear"),r=n.find(".clear-text");a?(o.addClass("has-filter").html(''+i+' / '+t+" "),r.text((s.clear||"Clear")+" "+i)):(o.removeClass("has-filter").html(t),r.text(s.clear_all||"Clear all")),a&&0===i?n.hide():t>0?n.show():n.hide()},loadExistingSelections:function(){var t=this,i={};this.$wrapper.find(".selection-group").each(function(){var a=e(this),s=a.closest(".target-block").data("blockType"),o=a.find(".include-picker");t.collectPickerEntities(o,s,i),t.enhanceMethodSelect(a.find(".include-method-select")),a.find(".exclude-row").each(function(){var a=e(this);t.collectPickerEntities(a.find(".exclude-picker"),s,i),t.enhanceMethodSelect(a.find(".exclude-method-select"))}),a.find(".group-excludes.has-excludes").length>0&&t.updateMethodSelectorLock(a,!0)});var a={},s=!1;Object.keys(i).forEach(function(e){var t=i[e];if(0!==t.ids.length){var o=t.ids.filter(function(e,t,i){return i.indexOf(e)===t});a[e]=o,s=!0}}),s&&e.ajax({url:t.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"getTargetEntitiesByIdsBulk",trait:"EntitySelector",entities:JSON.stringify(a)},success:function(e){if(e.success&&e.entities)try{Object.keys(i).forEach(function(a){var s=i[a],o=e.entities[a]||[],n={};o.forEach(function(e){n[e.id]=e}),s.pickers.forEach(function(e){var i=e.$picker,s=i.find(".entity-chips"),o=i.find(".include-values-data, .exclude-values-data"),r=[],l="countries"===a;e.ids.forEach(function(e){var i=s.find('.entity-chip-loading[data-id="'+e+'"]');if(n[e]){var a=n[e];r.push(a.id);var o='",l&&a.iso_code?o+=' "+t.esIcon("flag","flag-fallback").replace(">",' style="display:none">')+" ":a.image&&(o+=' '),o+=''+t.escapeHtml(a.name)+" ",l&&(o+=''+t.esIcon("visibility")+" "),o+=''+t.esIcon("close")+" ",o+=" ",i.replaceWith(o)}else i.remove()}),t.updateChipsVisibility(s),r.length!==e.ids.length&&(o.val(JSON.stringify(r)),t.serializeAllBlocks()),t.updateBlockStatus(i.closest(".target-block"))})}),t.updateAllConditionCounts()}catch(e){}},error:function(e,t,i){}})},collectPickerEntities:function(t,i,a){if(t.length){var s=this,o=t.find(".include-values-data, .exclude-values-data");if(o.length){var n=t.attr("data-value-type"),r=o.val()||"[]",l=[];try{l=JSON.parse(r)}catch(e){return}if("multi_numeric_range"!==n)if("multi_select_tiles"!==n){if("combination_attributes"===n)return"object"!=typeof l||null===l||0===Object.keys(l).length||o.val(JSON.stringify(l)),void s.loadCombinationAttributeGroups(t);if(l.length)if("pattern"!==n){var c=t.attr("data-search-entity")||i,d=t.find(".entity-chips"),p=this.getEntityTypeIcon(c);l.forEach(function(e){var t='';t+=''+s.esIcon(p,"es-spin-pulse")+" ",t+='Loading... ',t+=" ",d.append(t)}),a[c]||(a[c]={ids:[],pickers:[]}),a[c].ids=a[c].ids.concat(l),a[c].pickers.push({$picker:t,ids:l})}else l.forEach(function(e){"string"==typeof e&&e?s.addPatternTag(t,e,!1):e&&e.pattern&&s.addPatternTag(t,e.pattern,!0===e.caseSensitive)})}else{if(!Array.isArray(l)||0===l.length)return;l.forEach(function(e){t.find('.tile-option[data-value="'+e+'"]').addClass("selected")})}else{if(!Array.isArray(l)||0===l.length)return;var u=t.find(".multi-range-chips");l.forEach(function(t){if(t&&(null!==t.min||null!==t.max)){var i;i=null!==t.min&&null!==t.max?t.min+" - "+t.max:null!==t.min?"≥ "+t.min:"≤ "+t.max;var a=e("",{class:"range-chip","data-min":null!==t.min?t.min:"","data-max":null!==t.max?t.max:""});a.append(e("",{class:"range-chip-text",text:i})),a.append(e("",{type:"button",class:"btn-remove-range",html:s.esIcon("close")})),u.append(a)}})}}}},loadPickerValues:function(t,i){if(t.length){var a=this,s=t.find(".include-values-data, .exclude-values-data");if(s.length){var o=t.attr("data-value-type"),n=[];try{n=JSON.parse(s.val()||"[]")}catch(e){return}if("multi_numeric_range"!==o)if("multi_select_tiles"!==o){if("combination_attributes"===o)return"object"!=typeof n||null===n||0===Object.keys(n).length||s.val(JSON.stringify(n)),void a.loadCombinationAttributeGroups(t);if(n.length)if("pattern"!==o){var r=t.attr("data-search-entity")||i;e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"getTargetEntitiesByIds",trait:"EntitySelector",entity_type:r,ids:JSON.stringify(n)},success:function(e){if(e.success&&e.entities){var i=[];e.entities.forEach(function(e){a.addSelectionNoUpdate(t,e.id,e.name,e),i.push(e.id)});var o=t.find(".entity-chips");a.updateChipsVisibility(o),i.length!==n.length&&(s.val(JSON.stringify(i)),a.serializeAllBlocks()),a.updateBlockStatus(t.closest(".target-block"))}}})}else n.forEach(function(e){"string"==typeof e&&e?a.addPatternTag(t,e,!1):e&&e.pattern&&a.addPatternTag(t,e.pattern,!0===e.caseSensitive)})}else{if(!Array.isArray(n)||0===n.length)return;n.forEach(function(e){t.find('.tile-option[data-value="'+e+'"]').addClass("selected")})}else{if(!Array.isArray(n)||0===n.length)return;var l=t.find(".multi-range-chips");n.forEach(function(t){if(t&&(null!==t.min||null!==t.max)){var i;i=null!==t.min&&null!==t.max?t.min+" - "+t.max:null!==t.min?"≥ "+t.min:"≤ "+t.max;var s=e("",{class:"range-chip","data-min":null!==t.min?t.min:"","data-max":null!==t.max?t.max:""});s.append(e("",{class:"range-chip-text",text:i})),s.append(e("",{type:"button",class:"btn-remove-range",html:a.esIcon("close")})),l.append(s)}})}}}},addPatternTag:function(e,t,i){var a=this.config.trans||{},s=e.find(".pattern-chips"),o=!0===i,n=o?a.case_sensitive||"Case sensitive - click to toggle":a.case_insensitive||"Case insensitive - click to toggle",r='';r+='',r+=''+(o?"Aa":"aa")+" ",r+=" ",r+=''+this.escapeHtml(t)+" ",r+=''+this.esIcon("delete")+" ",r+="
",s.append(r)},getPatternTags:function(t){var i=[];return t.find(".pattern-tag:not(.draft-tag)").each(function(){var t=e(this).data("pattern"),a=1===e(this).data("caseSensitive")||"1"===e(this).data("caseSensitive");t&&i.push({pattern:t,caseSensitive:a})}),i},updateDraftTagCount:function(t,i,a){var s=this,o=t.find(".pattern-match-count"),n=o.find(".count-value"),r=t.closest(".target-block").data("blockType")||"products";n.html(this.esIcon("progress_activity","es-spin")),o.show(),o.data("pattern",i),o.data("caseSensitive",a),o.data("entityType",r),e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"countPatternMatches",trait:"EntitySelector",pattern:i,field:"name",entity_type:r,case_sensitive:a?1:0},success:function(e){if(e.success){var i=parseInt(e.count,10)||0;n.text(i),o.show(),o.removeClass("count-zero count-found"),o.addClass(0===i?"count-zero":"count-found"),o.data("count",i);var a=t.closest(".selection-group");a.length&&s.updateGroupTotalCount(a)}else n.text("?"),o.show()},error:function(){n.text("?"),o.show()}})},updateConditionCountWithPendingPattern:function(t,i){this.config.trans;var a=t.find(".method-selector-wrapper > .condition-match-count, > .exclude-header-row > .condition-match-count").first();if(a.length){var s=t.hasClass("exclude-row"),o=(s?t.find(".exclude-method-select"):t.find(".include-method-select")).val();if(o){var n=s?t.find(".exclude-picker"):t.find(".include-picker");if("pattern"===(n.data("valueType")||"none")){var r=this.getPatternTags(n);if(i&&r.push({pattern:i,caseSensitive:!1}),0!==r.length){var l=t.closest(".target-block").data("blockType")||"products";a.find(".preview-count").html(this.esIcon("progress_activity","es-spin")),a.removeClass("clickable no-matches").show(),a.data("conditionData",{method:o,values:r,blockType:l,isExclude:s}),e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"countConditionMatches",trait:"EntitySelector",method:o,values:JSON.stringify(r),block_type:l},success:function(e){if(e&&e.success){var t=e.count||0;a.removeClass("no-matches clickable"),0===t?(a.find(".preview-count").text(t),a.addClass("no-matches").show()):(a.find(".preview-count").text(t),a.addClass("clickable").show())}else a.hide().removeClass("clickable")},error:function(){a.hide().removeClass("clickable")}})}else a.hide()}}else a.hide()}},fetchPatternMatchCount:function(t,i,a){var s=t.closest(".exclude-row"),o=-1!==((s.length?s.find(".exclude-method-select"):t.closest(".selection-group").find(".include-method-select")).val()||"").indexOf("reference")?"reference":"name",n=t.closest(".target-block").data("blockType")||"products";a.find(".preview-count").html(this.esIcon("progress_activity","es-spin")),a.removeClass("clickable no-matches").show(),e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"countPatternMatches",trait:"EntitySelector",pattern:i,field:o,entity_type:n,case_sensitive:0},success:function(e){if(e&&e.success){var t=e.count||0;a.find(".preview-count").text(t),a.removeClass("no-matches clickable").show(),0===t?a.addClass("no-matches"):a.addClass("clickable")}else a.hide()},error:function(){a.hide()}})},getPickerValues:function(t,i){switch(i){case"entity_search":var a=[];return t.find(".entity-chip").each(function(){var t=e(this).data("id");t&&a.push(t)}),a;case"pattern":var s=this.getPatternTags(t),o=t.find(".draft-tag .pattern-input"),n=e.trim(o.val());if(n){var r="1"===o.closest(".draft-tag").attr("data-case-sensitive");s.push({pattern:n,caseSensitive:r})}return s;case"numeric_range":return{min:t.find(".range-min-input").val()||null,max:t.find(".range-max-input").val()||null};case"date_range":return{from:t.find(".date-from-input").val()||null,to:t.find(".date-to-input").val()||null};case"select":return[t.find(".select-value-input").val()];case"boolean":return[!0];default:return[]}},updateConditionCount:function(t){this.config.trans;var i=t.find(".method-selector-wrapper > .condition-match-count, > .exclude-header-row > .condition-match-count").first();if(i.length){var a=t.hasClass("exclude-row"),s=(a?t.find(".exclude-method-select"):t.find(".include-method-select")).val();if(s){var o=a?t.find(".exclude-picker"):t.find(".include-picker"),n=o.data("valueType")||"none",r=this.getPickerValues(o,n),l=!r||Array.isArray(r)&&0===r.length||"object"==typeof r&&!Array.isArray(r)&&("combination_attributes"===n&&void 0!==r.attributes&&0===Object.keys(r.attributes).length||"combination_attributes"!==n&&0===Object.keys(r).length);if("none"!==n&&"boolean"!==n&&l)i.hide();else{var c=t.closest(".target-block").data("blockType")||"products";i.find(".preview-count").html(this.esIcon("progress_activity","es-spin")),i.removeClass("clickable no-matches").show(),i.data("conditionData",{method:s,values:r,blockType:c,isExclude:a}),e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"countConditionMatches",trait:"EntitySelector",method:s,values:JSON.stringify(r),block_type:c},success:function(e){if(e&&e.success){var t=e.count||0;i.removeClass("no-matches clickable"),0===t?(i.find(".preview-count").text(t),i.addClass("no-matches").show()):(i.find(".preview-count").text(t),i.addClass("clickable").show())}else i.hide().removeClass("clickable")},error:function(){i.hide().removeClass("clickable")}})}}else i.hide()}},updateGroupCounts:function(t){var i=this,a=t.find(".group-include");a.length&&this.updateConditionCount(a),t.find(".exclude-row").each(function(){i.updateConditionCount(e(this))}),this.updateGroupTotalCount(t)},updateGroupTotalCount:function(t){var i=this,a=t.closest(".target-block").data("blockType")||"products",s=t.find(".group-header .group-count-badge"),o=t.find(".group-modifier-limit"),n=this.serializeGroup(t,a);if(!n.include||!n.include.method)return s.hide(),void o.attr("placeholder","–");s.html(this.esIcon("progress_activity","es-spin")).show(),e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"countGroupItems",trait:"EntitySelector",group_data:JSON.stringify(n),block_type:a},success:function(e){if(e&&e.success){var r=e.final_count||0,l=e.exclude_count||0,c=i.esIcon("visibility")+" "+r;l>0&&(c+=' (-'+l+") "),s.html(c),s.addClass("clickable").show(),s.data("groupData",n),s.data("blockType",a),s.data("finalCount",r),o.attr("placeholder",r);var d=t.find(".group-preview-badge .preview-count");if(d.length){var p=parseInt(o.val(),10),u=p>0&&pn&&(n=t)});var r=n+1,l=this.buildMethodOptions(o,!1),c=(this.buildMethodOptions(o,!0),(s.group||"Group")+" "+(r+1)),d='';d+='",d+='
',d+='
',d+='
',d+='
',d+=''+l+" ",d+=''+this.esIcon("visibility")+' 0 ',d+=' ',d+="
",d+='
',d+='
',d+='
',d+=this.esIcon("search","entity-search-icon"),d+=' ',d+=''+this.esIcon("progress_activity","es-spin")+" ",d+="
",d+='
',d+="
",d+="
",d+="
",d+='
',d+='',d+=this.esIcon("add")+" "+(s.add_exceptions||"Add exceptions"),d+=" ",d+="
",d+='
',d+='',d+=''+(s.limit||"Limit")+" ",d+=' ',d+=" ",d+='',d+=''+(s.sort||"Sort")+" ",d+='',d+=''+(s.sort_bestsellers||"Best sellers")+" ",d+=''+(s.sort_newest||"Newest")+" ",d+=''+(s.sort_price||"Price")+" ",d+=''+(s.sort_name||"Name")+" ",d+=''+(s.sort_position||"Position")+" ",d+=''+(s.sort_stock||"Stock quantity")+" ",d+=''+(s.sort_random||"Random")+" ",d+=" ",d+='',d+=this.esIcon("sort"),d+=" ",d+=" ",d+='',d+=this.esIcon("visibility")+' ',d+=" ",d+="
",d+="
",d+="
",a.append(d);var p=a.find('.selection-group[data-group-index="'+r+'"]');this.enhanceMethodSelect(p.find(".include-method-select")),p.find(".include-method-select").val("all").trigger("change"),this.updateBlockStatus(t),this.serializeAllBlocks()},removeGroup:function(e,t){e.remove();var i=t.find(".groups-container");if(0===i.find(".selection-group").length){var a='';a+=''+this.getEmptyStateText(t)+" ",a+="
",i.html(a)}this.updateBlockStatus(t),this.serializeAllBlocks(),this.updateTabBadges()},clearAllConditions:function(){var t=this;this.$wrapper.find(".target-block").each(function(){var i=e(this),a=i.find(".groups-container");a.find(".selection-group").remove();var s='';s+=''+t.getEmptyStateText(i)+" ",s+="
",a.html(s),t.updateBlockStatus(i)}),this.serializeAllBlocks(),this.updateTabBadges(),this.updateHeaderTotalCount()},switchToBlock:function(e){this.$wrapper.find(".target-block-tab").removeClass("active"),this.$wrapper.find('.target-block-tab[data-block-type="'+e+'"]').addClass("active"),this.$wrapper.find(".target-block").removeClass("active").hide(),this.$wrapper.find('.target-block[data-block-type="'+e+'"]').addClass("active").show(),this.hideDropdown()},updateTabBadges:function(){var t=this,i=[];this.$wrapper.find(".target-block-tab").each(function(){var a=e(this),s=a.data("blockType"),o=t.$wrapper.find('.target-block[data-block-type="'+s+'"]'),n=o.find(".selection-group").length,r=a.find(".tab-badge");if(n>0)r.length?r.addClass("loading").html(t.esIcon("progress_activity","es-spin")):a.append(''+t.esIcon("progress_activity","es-spin")+" "),a.addClass("has-data"),i.push(s);else if(o.hasClass("custom-block")){var l=!1;o.find(".custom-block-content").find("input, textarea, select").each(function(){if(e(this).val()&&""!==e(this).val().trim())return l=!0,!1}),l?(r.length?r.removeClass("loading").html(t.esIcon("check")):a.append(''+t.esIcon("check")+" "),a.addClass("has-data")):(r.remove(),a.removeClass("has-data"))}else r.remove(),a.removeClass("has-data")}),this.updateTargetSwitchState(),i.length>0&&this.fetchAllCounts(i)},updateTargetSwitchState:function(){var t=this.$wrapper.find(".prestashop-switch");if(t.length){var i=!1;this.$wrapper.find(".target-block").each(function(){if(e(this).find(".selection-group").length>0)return i=!0,!1}),i?t.find('input[value="0"]').prop("checked",!0):t.find('input[value="1"]').prop("checked",!0)}},fetchAllCounts:function(t){var i=this,a=this.$wrapper.find('input[name="'+this.config.name+'"]'),s={};try{s=JSON.parse(a.val()||"{}")}catch(e){s={}}var o={};t.forEach(function(e){var t=s[e]&&s[e].groups?s[e].groups:[];t.length>0&&(o[e]={groups:t})}),0!==Object.keys(o).length?e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"previewEntitySelectorBulk",trait:"EntitySelector",conditions:JSON.stringify(o)},success:function(e){e.success&&e.counts?(Object.keys(e.counts).forEach(function(t){var a=e.counts[t],s=i.$wrapper.find('.target-block-tab[data-block-type="'+t+'"]'),o=s.find(".tab-badge");o.length&&(o.removeClass("loading").html(i.esIcon("visibility")+" "+a),s.data("previewData",{count:a,success:!0}))}),t.forEach(function(t){if(!(t in e.counts)){var a=i.$wrapper.find('.target-block-tab[data-block-type="'+t+'"]');a.find(".tab-badge").remove(),a.removeClass("has-data")}}),i.updateHeaderTotalCount()):t.forEach(function(e){i.$wrapper.find('.target-block-tab[data-block-type="'+e+'"]').find(".tab-badge").remove()})},error:function(e,a,s){t.forEach(function(e){i.$wrapper.find('.target-block-tab[data-block-type="'+e+'"]').find(".tab-badge").remove()})}}):t.forEach(function(e){var t=i.$wrapper.find('.target-block-tab[data-block-type="'+e+'"]');t.find(".tab-badge").remove(),t.removeClass("has-data")})},fetchProductCount:function(t,i){var a=this,s={},o=this.$wrapper.find('input[name="'+this.config.name+'"]'),n={};try{n=JSON.parse(o.val()||"{}")}catch(e){n={}}var r=n[t]&&n[t].groups?n[t].groups:[];if(0===r.length)return i.find(".tab-badge").remove(),i.removeClass("has-data"),void i.removeData("previewData");var l=i.find(".tab-badge");l.length?l.addClass("loading").html(this.esIcon("progress_activity","es-spin")):(l=e(''+this.esIcon("progress_activity","es-spin")+" "),i.append(l)),i.addClass("has-data"),s[t]={groups:r},e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"previewEntitySelector",trait:"EntitySelector",conditions:JSON.stringify(s),block_type:t,limit:10},success:function(e){e.success?(i.find(".tab-badge").removeClass("loading").html(a.esIcon("visibility")+" "+e.count),i.data("previewData",e),a.updateHeaderTotalCount()):i.find(".tab-badge").remove()},error:function(e,t,s){i.find(".tab-badge").remove(),a.updateHeaderTotalCount()}})},updateHeaderTotalCount:function(){var t=0;this.$wrapper.find(".target-block-tab .tab-badge").each(function(){var i=e(this);if(!i.hasClass("loading")){var a=parseInt(i.text(),10);isNaN(a)||(t+=a)}});var i=this.$wrapper.find(".trait-total-count");t>0?(i.find(".count-value").text(t),i.show()):i.hide(),this.updateShowAllToggle()},updateShowAllToggle:function(){var e=this.$wrapper.find(".trait-show-all-toggle");if(e.length){var t=e.find(".show-all-checkbox"),i=this.$wrapper.find(".target-block-tab.has-data").length>0;t.prop("checked",!i)}},updateBlockStatus:function(e){var t=e.find(".block-status"),i=e.data("blockType"),a=this.config.blocks[i]||{},s=this.config.trans||{},o=this.getBlockGroups(e);0===o.length?!1!==this.config.emptyMeansAll?t.text((s.all||"All")+" "+(a.entity_label_plural||"items")):t.text(s.nothing_selected||"Nothing selected"):t.text(o.length+" "+(1===o.length?s.group||"group":s.groups||"groups"))},getEmptyStateText:function(e){var t=e.data("blockType"),i=e.data("mode")||"multi",a=this.config.blocks[t]||{},s=this.config.trans||{},o=!1!==this.config.emptyMeansAll;return"single"===i?s.no_item_selected||"No item selected":o?(s.all||"All")+" "+(a.entity_label_plural||"items")+" "+(s.included||"included"):s.nothing_selected||"Nothing selected"},serializeGroup:function(t,i){var a=this,s=t.find(".include-method-select").val()||"all",o=t.find(".include-picker"),n=this.getPickerValues(o),r=[];t.find(".group-excludes.has-excludes").length&&t.find(".exclude-row").each(function(){var t=e(this),i=t.find(".exclude-method-select").val()||null,s=t.find(".exclude-picker"),o=a.getPickerValues(s);i&&o&&(!Array.isArray(o)||o.length>0)&&r.push({method:i,values:o})});var l={include:{method:s,values:n}};r.length>0&&(l.excludes=r);var c=this.getGroupModifiers(t);return(c.limit||c.sort_by)&&(l.modifiers=c),l},serializeAllBlocks:function(t){var i=this,a={};this.$wrapper.find(".target-block").each(function(){var t=e(this),s=t.data("blockType"),o=i.getBlockGroups(t);o.length>0&&(a[s]={groups:o}),i.updateBlockStatus(t)});var s=this.$wrapper.find('input[name="'+this.config.name+'"]'),o=JSON.stringify(a);s.val(o),this.updateTabBadges(),this.countUpdateTimeout&&clearTimeout(this.countUpdateTimeout),this.countUpdateTimeout=setTimeout(function(){if(t&&t.length){i.updateConditionCount(t);var e=t.closest(".selection-group");e.length&&i.updateGroupTotalCount(e)}else i.updateAllConditionCounts()},500)},getBlockGroups:function(t){var i=this,a=[];return t.find(".selection-group").each(function(){var t=e(this),s=t.find(".include-method-select").val()||"all",o=t.find(".include-picker"),n=i.getPickerValues(o);if(!i.isConditionValid(s,n,o))return!0;var r=[];t.find(".group-excludes.has-excludes").length&&t.find(".exclude-row").each(function(){var t=e(this),a=t.find(".exclude-method-select").val()||null,s=t.find(".exclude-picker"),o=i.getPickerValues(s);a&&i.isConditionValid(a,o,s)&&r.push({method:a,values:o})});var l={include:{method:s,values:n}},c=e.trim(t.attr("data-group-name")||"");c&&(l.name=c),r.length>0&&(l.excludes=r);var d=i.getGroupModifiers(t);(d.limit||d.sort_by)&&(l.modifiers=d),a.push(l)}),a},getGroupModifiers:function(e){var t=e.find(".group-modifier-limit").val(),i=e.find(".group-modifier-sort").val()||"sales",a=e.find(".group-modifiers .btn-sort-dir").data("dir")||"DESC";return{limit:t?parseInt(t,10):null,sort_by:i||null,sort_dir:a||"DESC"}},getPickerValues:function(t){var i=t.attr("data-value-type")||"entity_search",a=[];switch(i){case"entity_search":t.find(".entity-chip").each(function(){var t=e(this).data("id");a.push(isNaN(t)?t:Number(t))});break;case"pattern":a=this.getPatternTags(t);var s=t.find(".draft-tag .pattern-input"),o=e.trim(s.val());if(o){var n="1"===s.closest(".draft-tag").attr("data-case-sensitive");a.push({pattern:o,caseSensitive:n})}break;case"numeric_range":var r=t.find(".range-min-input").val(),l=t.find(".range-max-input").val();""===r&&""===l||(a={min:""!==r?parseFloat(r):null,max:""!==l?parseFloat(l):null});break;case"date_range":var c=t.find(".date-from-input").val(),d=t.find(".date-to-input").val();(c||d)&&(a={from:c||null,to:d||null});break;case"select":var p=t.find(".select-value-input").val();p&&(a=[p]);break;case"boolean":a=[!0];break;case"multi_numeric_range":var u=[];t.find(".range-chip").each(function(){var t=e(this),i=t.data("min"),a=t.data("max");u.push({min:""!==i&&void 0!==i?parseFloat(i):null,max:""!==a&&void 0!==a?parseFloat(a):null})}),u.length>0&&(a=u);break;case"multi_select_tiles":t.find(".tile-option.selected").each(function(){a.push(e(this).data("value"))});break;case"combination_attributes":var h={};if(t.find(".comb-attr-value.selected").each(function(){var t=e(this).data("groupId").toString(),i=e(this).data("valueId");h[t]||(h[t]=[]),h[t].push(i)}),Object.keys(h).length>0){var f,v=t.find(".combination-attributes-picker").data("combinationMode")||this.config.combinationMode||"products";f="toggle"===v?t.find(".comb-mode-radio:checked").val()||"products":v,a={mode:f,attributes:h}}}return a},isConditionValid:function(e,t,i){if("all"===e)return!0;var a=i.attr("data-value-type")||"entity_search";return"boolean"===a||(Array.isArray(t)?t.length>0:"object"==typeof t&&null!==t&&("combination_attributes"===a&&void 0!==t.attributes?Object.keys(t.attributes).length>0:Object.keys(t).some(function(e){return null!==t[e]&&""!==t[e]})))},updateAllConditionCounts:function(){var t=this,i={},a={},s=0;this.$wrapper.find(".target-block.active .selection-group").each(function(){var o=e(this),n=o.closest(".target-block").data("blockType")||"products",r=o.find(".group-include");if(r.length){var l=t.getConditionData(r,n);if(l){var c="c"+s++;i[c]=l.condition,a[c]=l.$countEl}}o.find(".exclude-row").each(function(){var o=t.getConditionData(e(this),n);if(o){var r="c"+s++;i[r]=o.condition,a[r]=o.$countEl}})}),0!==Object.keys(i).length&&e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"countConditionMatchesBulk",trait:"EntitySelector",conditions:JSON.stringify(i)},success:function(e){e&&e.success&&e.counts&&Object.keys(e.counts).forEach(function(t){var i=e.counts[t]||0,s=a[t];s&&s.length&&(s.removeClass("no-matches clickable"),0===i?(s.find(".preview-count").text(i),s.addClass("no-matches").show()):(s.find(".preview-count").text(i),s.addClass("clickable").show()))})},error:function(){Object.keys(a).forEach(function(e){var t=a[e];t&&t.length&&t.hide().removeClass("clickable")})}})},getConditionData:function(e,t){var i=e.find(".method-selector-wrapper > .condition-match-count, > .exclude-header-row .condition-match-count").first();if(!i.length)return null;var a=e.hasClass("exclude-row"),s=(a?e.find(".exclude-method-select"):e.find(".include-method-select")).val();if(!s)return i.hide(),null;var o=a?e.find(".exclude-picker"):e.find(".include-picker"),n=o.data("valueType")||o.attr("data-value-type")||"none";if("none"===n&&"countries"===t&&"all"===s){var r=this;return setTimeout(function(){r.updateConditionCount(e,t)},0),null}var l=o.attr("data-search-entity")||"";if("countries"===t&&"entity_search"===n&&"countries"===l)return r=this,setTimeout(function(){r.updateConditionCount(e,t)},0),null;if("none"===n)return i.hide(),null;var c=this.getPickerValues(o,n),d=!c||Array.isArray(c)&&0===c.length||"object"==typeof c&&!Array.isArray(c)&&("combination_attributes"===n&&void 0!==c.attributes&&0===Object.keys(c.attributes).length||"combination_attributes"!==n&&0===Object.keys(c).length);return"boolean"!==n&&d?(i.hide(),null):(i.find(".preview-count").html(this.esIcon("progress_activity","es-spin")),i.removeClass("clickable no-matches").show(),i.data("conditionData",{method:s,values:c,blockType:t,isExclude:a}),{condition:{method:s,values:c,block_type:t},$countEl:i})},updateGroupCounts:function(t){var i=this,a=t.closest(".target-block").data("blockType")||"products",s=t.find(".group-include");s.length&&this.updateConditionCount(s,a),t.find(".exclude-row").each(function(){i.updateConditionCount(e(this),a)}),this.updateGroupTotalCount(t)},updateConditionCount:function(t,i){var a=this,s=t.find(".method-selector-wrapper > .condition-match-count, > .exclude-header-row .condition-match-count").first();if(s.length){var o=t.hasClass("exclude-row"),n=(o?t.find(".exclude-method-select"):t.find(".include-method-select")).val();if(n){var r=o?t.find(".exclude-picker"):t.find(".include-picker"),l=r.data("valueType")||"none",c=r.attr("data-search-entity")||"";if(!i){var d=t.closest(".target-block");i=d.data("blockType")||"products"}if("none"===l&&"countries"===i&&"all"===n)return s.find(".preview-count").html(this.esIcon("progress_activity","es-spin")),s.removeClass("clickable no-matches country-holidays").show(),void e.ajax({url:a.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"searchTargetEntities",trait:"EntitySelector",entity_type:"countries",query:"",limit:500},success:function(t){var r=t.results||t.items||[];if(t&&t.success&&r.length>0){var l=r.map(function(e){return e.id});s.data("conditionData",{method:n,values:l,blockType:i,isExclude:o,isCountryHolidays:!0,countryIds:l,isAllCountries:!0}),e.ajax({url:a.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"getHolidaysForCountries",trait:"EntitySelector",country_ids:l.join(","),count_only:1},success:function(e){if(e&&e.success){var t=e.total_count||0;s.removeClass("no-matches clickable"),s.addClass("country-holidays"),0===t?(s.find(".preview-count").text(t),s.addClass("no-matches").show()):(s.find(".preview-count").text(t),s.addClass("clickable").show()),s.data("countriesInfo",e.countries||[])}else s.hide().removeClass("clickable")},error:function(){s.hide().removeClass("clickable")}})}else s.hide().removeClass("clickable")},error:function(){s.hide().removeClass("clickable")}});if("none"!==l){var p=this.getPickerValues(r,l),u=!p||Array.isArray(p)&&0===p.length||"object"==typeof p&&!Array.isArray(p)&&("combination_attributes"===l&&void 0!==p.attributes&&0===Object.keys(p.attributes).length||"combination_attributes"!==l&&0===Object.keys(p).length);if("boolean"!==l&&u)s.hide();else{i||(d=t.closest(".target-block"),i=d.data("blockType")||"products");var h="countries"===c&&"entity_search"===l;if(s.find(".preview-count").html(this.esIcon("progress_activity","es-spin")),s.removeClass("clickable no-matches country-holidays").show(),h&&Array.isArray(p)&&p.length>0)return s.data("conditionData",{method:n,values:p,blockType:i,isExclude:o,isCountryHolidays:!0,countryIds:p}),void e.ajax({url:a.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"getHolidaysForCountries",trait:"EntitySelector",country_ids:p.join(","),count_only:1},success:function(e){if(e&&e.success){var t=e.total_count||0;s.removeClass("no-matches clickable"),s.addClass("country-holidays"),0===t?(s.find(".preview-count").text(t),s.addClass("no-matches").show()):(s.find(".preview-count").text(t),s.addClass("clickable").show()),s.data("countriesInfo",e.countries||[])}else s.hide().removeClass("clickable")},error:function(){s.hide().removeClass("clickable")}});s.data("conditionData",{method:n,values:p,blockType:i,isExclude:o}),e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"countConditionMatches",trait:"EntitySelector",method:n,values:JSON.stringify(p),block_type:i},success:function(e){if(e&&e.success){var t=e.count||0;s.removeClass("no-matches clickable"),0===t?(s.find(".preview-count").text(t),s.addClass("no-matches").show()):(s.find(".preview-count").text(t),s.addClass("clickable").show())}else s.hide().removeClass("clickable")},error:function(){s.hide().removeClass("clickable")}})}}else s.hide()}else s.hide()}},updateGroupTotalCount:function(t){var i=this,a=t.closest(".target-block").data("blockType")||"products",s=t.find(".group-header .group-count-badge"),o=t.find(".group-modifier-limit"),n=this.serializeGroup(t,a);if(!n.include||!n.include.method)return s.hide(),void o.attr("placeholder","–");s.html(this.esIcon("progress_activity","es-spin")).show(),e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"countGroupItems",trait:"EntitySelector",group_data:JSON.stringify(n),block_type:a},success:function(e){if(e&&e.success){var r=e.final_count||0,l=e.exclude_count||0,c=i.esIcon("visibility")+" "+r;l>0&&(c+=' (-'+l+") "),s.html(c),s.addClass("clickable").show(),s.data("groupData",n),s.data("blockType",a),s.data("finalCount",r),o.attr("placeholder",r);var d=t.find(".group-preview-badge .preview-count");if(d.length){var p=parseInt(o.val(),10),u=p>0&&p';s+=''+this.esIcon("block")+" "+(a.except||"EXCEPT")+" ",s+="",s+='',s+=this.buildExcludeRowHtml(t,0),s+="
",s+='',s+=this.esIcon("add")+" "+(a.add_another_exception||"Add another exception"),s+=" ",i.addClass("has-excludes").html(s);var o=i.find('.exclude-row[data-exclude-index="0"]'),n=o.find(".exclude-method-select");this.enhanceMethodSelect(n);var r=t.data("blockType"),l=n.val();this.updateMethodInfoPlaceholder(o.find(".method-selector-wrapper"),l,r),this.updateMethodSelectorLock(e,!0),this.serializeAllBlocks()},addExcludeRow:function(t,i){var a=t.find(".exclude-rows-container"),s=-1;a.find(".exclude-row").each(function(){var t=parseInt(e(this).data("excludeIndex"),10);t>s&&(s=t)});var o=s+1,n=this.buildExcludeRowHtml(i,o);a.append(n);var r=a.find('.exclude-row[data-exclude-index="'+o+'"]'),l=r.find(".exclude-method-select");this.enhanceMethodSelect(l);var c=i.data("blockType"),d=l.val();this.updateMethodInfoPlaceholder(r.find(".method-selector-wrapper"),d,c),this.serializeAllBlocks()},buildExcludeRowHtml:function(t,i){var a=t.data("blockType"),s=(this.config.blocks[a]||{}).selection_methods||{},o=this.config.trans||{},n=this.buildMethodOptions(s,!0),r=a,l="entity_search";e.each(s,function(e,t){return"all"===e||(r=t.search_entity||a,l=t.value_type||"entity_search",!1)});var c='';return c+='",(c+=this.buildValuePickerHtml("exclude",l,r,s))+"
"},removeExcludeRow:function(e,t,i){var a=t.find(".exclude-rows-container"),s=this.config.trans||{};e.remove(),0===a.find(".exclude-row").length&&(t.find(".group-excludes").removeClass("has-excludes").html(''+this.esIcon("add")+" "+(s.add_exceptions||"Add exceptions")+" "),this.updateMethodSelectorLock(t,!1)),this.serializeAllBlocks()},buildMethodOptions:function(t,i){var a=this,s=this.config.trans||{},o="",n={select_by:s.select_by||"Select by...",filter_by:s.filter_by||"Filter by..."},r={},l={};return e.each(t,function(e,t){if(i&&"all"===e)return!0;var a=t.group||"";a?(r[a]||(r[a]={}),r[a][e]=t):l[e]=t}),e.each(l,function(e,t){o+=a.buildMethodOption(e,t)}),e.each(r,function(t,i){var s=n[t]||t.replace(/_/g," ");o+='',e.each(i,function(e,t){o+=a.buildMethodOption(e,t)}),o+=" "}),o},buildMethodOption:function(e,t){var i='"+this.escapeHtml(t.label)+" "},buildValuePickerHtml:function(e,t,i,a){var s=this.config.trans||{},o=e+"-picker",n=e+"-chips",r=e+"-values-data",l="";if("none"===t)return l='',(l+=' ')+"
";switch(l='',t){case"entity_search":var c=s.no_items_selected||"No items selected - use search below";l+='
',l+='
',l+=this.esIcon("search","entity-search-icon"),l+=' ',l+=''+this.esIcon("progress_activity","es-spin")+" ",l+="
",l+='
';break;case"pattern":var d="
"+this.escapeHtml(s.pattern_help_title||"Pattern Syntax")+" ";d+='
',d+='
* '+this.escapeHtml(s.pattern_help_wildcard||"any text (wildcard)")+"
",d+='
{number} '+this.escapeHtml(s.pattern_help_number||"any number (e.g. 100, 250)")+"
",d+='
{letter} '+this.escapeHtml(s.pattern_help_letter||"single letter (A-Z)")+"
",d+="
",d+='
',d+="
"+this.escapeHtml(s.pattern_help_examples||"Examples:")+" ",d+='
*cotton* '+this.escapeHtml(s.pattern_example_1||'contains "cotton"')+"
",d+='
iPhone {number} Pro* '+this.escapeHtml(s.pattern_example_2||'matches "iPhone 15 Pro Max"')+"
",d+='
Size {letter} '+this.escapeHtml(s.pattern_example_3||'matches "Size M", "Size L"')+"
",d+="
";var p=s.no_patterns||"No patterns - press Enter to add";l+='
',l+='
",l+='
';break;case"numeric_range":l+='
',l+=' ',l+='- ',l+=' ',l+="
",l+='
';break;case"multi_numeric_range":l+='
",l+='
';break;case"multi_select_tiles":l+='
',l+="
",l+='
';break;case"date_range":l+='
',l+=' ',l+='- ',l+=' ',l+="
",l+='
';break;case"select":l+='
',l+=' ',l+="
",l+='
';break;case"boolean":l+='
',l+=''+this.escapeHtml(s.yes||"Yes")+" ",l+="
",l+='
';break;case"combination_attributes":this.escapeHtml(s.combination_help_title||"Combination Targeting"),this.escapeHtml(s.combination_help_desc||"Select attributes to target specific product combinations."),this.escapeHtml(s.combination_help_logic||"Logic:"),this.escapeHtml(s.combination_help_within||"Within group: OR (Red OR Blue)"),this.escapeHtml(s.combination_help_between||"Between groups: AND (Color AND Size)");var u=this.config.combinationMode||"products",h="toggle"===u,f=h?"products":u;l+='
',h&&(l+='
',l+='',l+=' ',l+=''+this.escapeHtml(s.comb_mode_products||"Products with these combinations")+" ",l+=" ",l+='',l+=' ',l+=''+this.escapeHtml(s.comb_mode_combinations||"Only these exact combinations")+" ",l+=" ",l+="
"),l+='
',l+=''+this.esIcon("progress_activity","es-spin")+" "+this.escapeHtml(s.loading||"Loading...")+" ",l+="
",l+="
",l+='
';break;default:l+='
'}return l+"
"},getSortOptionsArray:function(e){var t=this.config.trans||{};switch(e){case"products":return[{value:"sales",label:t.sort_bestsellers||"Best sellers"},{value:"date_add",label:t.sort_newest||"Newest"},{value:"price",label:t.sort_price||"Price"},{value:"name",label:t.sort_name||"Name"},{value:"position",label:t.sort_position||"Position"},{value:"quantity",label:t.sort_stock||"Stock quantity"},{value:"random",label:t.sort_random||"Random"}];case"categories":return[{value:"name",label:t.sort_name||"Name"},{value:"position",label:t.sort_position||"Position"},{value:"product_count",label:t.sort_products||"Products count"},{value:"date_add",label:t.sort_newest||"Newest"}];default:return[{value:"name",label:t.sort_name||"Name"},{value:"date_add",label:t.sort_newest||"Newest"}]}},getSortIconName:function(e,t){switch(e){case"name":return"sort_by_alpha";case"random":return"shuffle";default:return"sort"}},cycleSortOption:function(e,t){for(var i,a,s,o=this.getSortOptionsArray(t),n=e.data("sort")||"sales",r=e.data("dir")||"DESC",l=-1,c=0;c0)return t=!0,!1}),t?(this.clearValidationError(),!0):(this.showValidationError(),!1)},showValidationError:function(){this.$wrapper.addClass("has-validation-error");var t=this.$wrapper.data("required-message")||"Please select at least one item";this.$wrapper.find(".trait-validation-error").remove();var i=e("",{class:"trait-validation-error",html:this.esIcon("warning")+" "+t});this.$wrapper.find(".condition-trait-header").after(i),e("html, body").animate({scrollTop:this.$wrapper.offset().top-100},300),this.$wrapper.find(".condition-trait-body").is(":visible")||(this.$wrapper.find(".condition-trait-body").slideDown(200),this.$wrapper.removeClass("collapsed"))},clearValidationError:function(){this.$wrapper.removeClass("has-validation-error"),this.$wrapper.find(".trait-validation-error").remove()}}}(jQuery),function(e){"use strict";window._EntitySelectorMixins=window._EntitySelectorMixins||{},window._EntitySelectorMixins.methods={initMethodDropdowns:function(){var t=this;this.$wrapper.find(".include-method-select").each(function(){t.enhanceMethodSelect(e(this))}),this.$wrapper.find(".exclude-method-select").each(function(){t.enhanceMethodSelect(e(this))}),this.initMethodInfoPlaceholders()},initMethodInfoPlaceholders:function(){var t=this;this.$wrapper.find(".selection-group").each(function(){var i=e(this),a=i.closest(".target-block").data("blockType")||"products",s=i.find(".include-method-select").val()||"all";t.updateMethodInfoPlaceholder(i.find(".method-selector-wrapper"),s,a),i.find(".exclude-row").each(function(){var i=e(this),s=i.find(".exclude-method-select").val();s&&t.updateMethodInfoPlaceholder(i.find(".method-selector-wrapper"),s,a)})})},enhanceMethodSelect:function(t){var i=this;if(t.length&&!t.data("methodDropdownInit")){t.data("methodDropdownInit",!0),t.addClass("method-select-hidden");var a=t.find("option:selected"),s=a.data("icon")||"arrow_drop_down",o=a.text(),n='
';n+=this.esIcon(s,"method-trigger-icon"),n+=''+this.escapeHtml(o)+" ",n+=this.esIcon("arrow_drop_down","method-trigger-caret");var r=e(n+="
");t.after(r),r.on("click",function(e){e.preventDefault(),e.stopPropagation(),t.closest(".method-selector-wrapper").hasClass("selector-locked")||i.showMethodDropdownMenu(t,r)}),t.on("change.methodDropdown",function(){i.updateMethodTrigger(t,r)})}},updateMethodTrigger:function(e,t){var i=e.find("option:selected"),a=i.data("icon")||"arrow_drop_down",s=i.text();t.find(".method-trigger-icon").replaceWith(this.esIcon(a,"method-trigger-icon")),t.find(".method-trigger-label").text(s)},showMethodDropdownMenu:function(t,i){var a=this;this.closeMethodDropdownMenu();var s=this.buildMethodDropdownMenuHtml(t),o=e(s),n=i.offset(),r=i.outerWidth(),l=i.outerHeight();o.css({position:"absolute",top:n.top+l+2,left:n.left,minWidth:r,zIndex:10001}),e("body").append(o),this.$methodDropdownMenu=o,this.$methodDropdownSelect=t,this.$methodDropdownTrigger=i,o.on("click",".method-dropdown-item",function(i){i.preventDefault(),i.stopPropagation();var s=e(this).data("value");t.val(s).trigger("change"),a.closeMethodDropdownMenu()}),e(document).on("click.methodDropdown",function(t){e(t.target).closest(".method-dropdown-menu, .method-dropdown-trigger").length||a.closeMethodDropdownMenu()}),e(document).on("keydown.methodDropdown",function(e){27===e.keyCode&&a.closeMethodDropdownMenu()})},buildMethodDropdownMenuHtml:function(t){var i=this,a='"},closeMethodDropdownMenu:function(){this.$methodDropdownMenu&&(this.$methodDropdownMenu.remove(),this.$methodDropdownMenu=null),this.$methodDropdownSelect=null,this.$methodDropdownTrigger=null,e(document).off("click.methodDropdown keydown.methodDropdown")},populateTiles:function(t,i,a){var s=t.find(".multi-select-tiles");s.empty(),a?s.attr("data-exclusive","true"):s.removeAttr("data-exclusive"),e.each(i,function(t,i){var a="object"==typeof i?i.label:i,o="object"==typeof i&&i.icon?i.icon:null,n="object"==typeof i&&i.color?i.color:null,r="tile-option";n&&(r+=" tile-color-"+n);var l=e("
",{type:"button",class:r,"data-value":t});o&&l.append(e("",{class:o})),l.append(e("",{class:"tile-label",text:a})),s.append(l)})},applyRangeInputConstraints:function(e,t,i){var a=e.find(".range-min-input, .range-max-input");null!=t?a.attr("step",t):a.attr("step","any"),null!=i?a.attr("min",i):a.removeAttr("min")},showRangeInputError:function(t,i){var a=t.closest(".multi-range-input-row");a.find(".range-input-error").remove(),a.find(".range-min-input, .range-max-input").removeClass("has-error"),t.addClass("has-error");var s=e("",{class:"range-input-error",text:i});a.append(s),setTimeout(function(){t.removeClass("has-error"),s.fadeOut(200,function(){e(this).remove()})},3e3)},loadCombinationAttributeGroups:function(t){var i=this,a=this.config.trans||{},s=t.find(".combination-groups-container");e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"getAttributeGroups",trait:"TargetConditions"},success:function(o){s.empty(),o.success&&o.groups&&0!==o.groups.length?o.groups.forEach(function(o){var n=e("",{class:"comb-attr-group","data-group-id":o.id}),r=e("
",{class:"comb-attr-group-header"});r.append(e("
",{class:"comb-attr-group-name",text:o.name})),r.append(e("",{class:"comb-attr-group-count",text:"0"}));var l=e("",{class:"comb-attr-toolbar"});l.append(e("
",{type:"button",class:"comb-toolbar-btn comb-select-all",title:a.select_all||"Select all",html:i.esIcon("check_box")})),l.append(e("",{type:"button",class:"comb-toolbar-btn comb-select-none",title:a.clear||"Clear",html:i.esIcon("check_box_outline_blank")})),l.append(e(" ",{type:"text",class:"comb-attr-search",placeholder:a.filter_results||"Filter..."}));var c=e("",{class:"comb-attr-values","data-loaded":"false"});c.append(e("
",{class:"comb-attr-loading",html:i.esIcon("progress_activity","es-spin")})),n.append(r),n.append(l),n.append(c),s.append(n),i.loadCombinationAttributeValues(t,o.id,c)}):s.html(''+i.escapeHtml(a.no_attribute_groups||"No attribute groups found")+" ")},error:function(){s.html(''+i.escapeHtml(a.error_loading||"Error loading attribute groups")+" ")}})},loadCombinationAttributeValues:function(t,i,a){var s=this,o=this.config.trans||{};e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"getAttributeValues",trait:"TargetConditions",id_attribute_group:i},success:function(n){a.empty(),a.attr("data-loaded","true"),n.success&&n.values&&0!==n.values.length?(n.values.forEach(function(t){var s=parseInt(t.product_count)||0,o=e("",{type:"button",class:"comb-attr-value","data-value-id":t.id,"data-group-id":i,"data-name":t.name.toLowerCase()});o.append(e("",{class:"comb-attr-value-name",text:t.name})),s>0&&o.append(e("",{class:"comb-attr-value-count",text:s})),a.append(o)}),s.restoreCombinationSelections(t)):a.html(''+s.escapeHtml(o.no_values||"No values")+" ")},error:function(){a.html(''+s.escapeHtml(o.error_loading||"Error")+" ")}})},restoreCombinationSelections:function(t){var i,a=t.find(".include-values-data, .exclude-values-data").first().val()||"{}";try{i=JSON.parse(a)}catch(e){return}var s=i.attributes||i,o=i.mode||"products";t.find('.comb-mode-radio[value="'+o+'"]').prop("checked",!0),e.each(s,function(e,i){Array.isArray(i)&&i.forEach(function(i){t.find('.comb-attr-value[data-group-id="'+e+'"][data-value-id="'+i+'"]').addClass("selected")})}),this.updateCombinationGroupCounts(t)},updateCombinationData:function(t){var i={};t.find(".comb-attr-value.selected").each(function(){var t=e(this).data("groupId").toString(),a=e(this).data("valueId");i[t]||(i[t]=[]),i[t].push(a)});var a=t.find(".combination-attributes-picker").data("combinationMode")||this.config.combinationMode||"products",s={mode:"toggle"===a?t.find(".comb-mode-radio:checked").val()||"products":a,attributes:i};t.find(".include-values-data, .exclude-values-data").first().val(JSON.stringify(s)),this.updateCombinationGroupCounts(t)},updateCombinationGroupCounts:function(t){t.find(".comb-attr-group").each(function(){var t=e(this),i=t.find(".comb-attr-value.selected").length;t.find(".comb-attr-group-count").text(i),i>0?t.addClass("has-selections"):t.removeClass("has-selections")})},updateMethodInfoPlaceholder:function(t,i,a){var s=t.find(".method-info-placeholder");if(s.length){s.empty();var o=this.config.methodHelp||{},n=(o[a]||o.products||{})[i]||this.getBuiltInMethodHelp(i);if(n){var r=e("",{class:"mpr-info-wrapper","data-details":n});r.append(e(this.esIcon("info"))),s.append(r),window.MPRInfoTooltip&&window.MPRInfoTooltip.init()}}},getBuiltInMethodHelp:function(e){var t=this.config.trans||{},i="";switch(e){case"all":i=""+this.escapeHtml(t.help_all_title||"All Items")+" ",i+=""+this.escapeHtml(t.help_all_desc||"Selects all items without any filtering.")+"
";break;case"specific":i=""+this.escapeHtml(t.help_specific_title||"Specific Items")+" ",i+=""+this.escapeHtml(t.help_specific_desc||"Search and select individual items by name, reference, or ID.")+"
";break;case"by_category":i=""+this.escapeHtml(t.help_category_title||"By Category")+" ",i+=""+this.escapeHtml(t.help_category_desc||"Select items belonging to specific categories. Includes subcategories.")+"
";break;case"by_manufacturer":i=""+this.escapeHtml(t.help_manufacturer_title||"By Manufacturer")+" ",i+=""+this.escapeHtml(t.help_manufacturer_desc||"Select items from specific manufacturers/brands.")+"
";break;case"by_supplier":i=""+this.escapeHtml(t.help_supplier_title||"By Supplier")+" ",i+=""+this.escapeHtml(t.help_supplier_desc||"Select items from specific suppliers.")+"
";break;case"by_tag":i=""+this.escapeHtml(t.help_tag_title||"By Tag")+" ",i+=""+this.escapeHtml(t.help_tag_desc||"Select items with specific tags assigned.")+"
";break;case"by_attribute":i=""+this.escapeHtml(t.help_attribute_title||"By Attribute")+" ",i+=""+this.escapeHtml(t.help_attribute_desc||"Select items with specific attribute values (e.g., Color: Red).")+"
";break;case"by_feature":i=""+this.escapeHtml(t.help_feature_title||"By Feature")+" ",i+=""+this.escapeHtml(t.help_feature_desc||"Select items with specific feature values (e.g., Material: Cotton).")+"
";break;case"by_combination":i=""+this.escapeHtml(t.help_combination_title||"Combination Targeting")+" ",i+=""+this.escapeHtml(t.help_combination_desc||"Select items by combination attributes.")+"
",i+=""+this.escapeHtml(t.help_combination_logic||"Logic:")+"
",i+="",i+=""+this.escapeHtml(t.help_combination_within||"Within group: OR (Red OR Blue)")+" ",i+=""+this.escapeHtml(t.help_combination_between||"Between groups: AND (Color AND Size)")+" ",i+=" ";break;case"by_carrier":i=""+this.escapeHtml(t.help_carrier_title||"By Carrier")+" ",i+=""+this.escapeHtml(t.help_carrier_desc||"Select items available with specific carriers.")+"
";break;case"by_condition":i=""+this.escapeHtml(t.help_condition_title||"By Condition")+" ",i+=""+this.escapeHtml(t.help_condition_desc||"Filter by product condition: New, Used, or Refurbished.")+"
";break;case"by_visibility":i=""+this.escapeHtml(t.help_visibility_title||"By Visibility")+" ",i+=""+this.escapeHtml(t.help_visibility_desc||"Filter by where products are visible in the store.")+"
";break;case"by_active_status":i=""+this.escapeHtml(t.help_active_title||"By Active Status")+" ",i+=""+this.escapeHtml(t.help_active_desc||"Filter by whether products are enabled or disabled.")+"
";break;case"by_stock_status":i=""+this.escapeHtml(t.help_stock_title||"By Stock Status")+" ",i+=""+this.escapeHtml(t.help_stock_desc||"Filter by stock availability: In stock, Out of stock, or Low stock.")+"
";break;case"by_on_sale":case"by_has_specific_price":case"by_is_virtual":case"by_is_pack":case"by_has_combinations":case"by_available_for_order":case"by_online_only":case"by_has_related":case"by_has_customization":case"by_has_attachments":case"by_has_additional_shipping":i=""+this.escapeHtml(t.help_boolean_title||"Yes/No Filter")+" ",i+=""+this.escapeHtml(t.help_boolean_desc||"Filter products by this property.")+"
";break;case"by_name_pattern":case"by_reference_pattern":case"by_description_pattern":case"by_long_description_pattern":case"by_ean13_pattern":case"by_upc_pattern":case"by_isbn_pattern":case"by_mpn_pattern":case"by_meta_title_pattern":case"by_meta_description_pattern":i=""+this.escapeHtml(t.help_pattern_title||"Pattern Matching")+" ",i+=""+this.escapeHtml(t.help_pattern_desc||"Match text using patterns with wildcards.")+"
",i+="* "+this.escapeHtml(t.help_pattern_wildcard||"any text")+"
",i+="{number} "+this.escapeHtml(t.help_pattern_number||"any number")+"
",i+="{letter} "+this.escapeHtml(t.help_pattern_letter||"single letter A-Z")+"
";break;case"by_id_range":case"by_price_range":case"by_weight_range":case"by_quantity_range":case"by_position_range":i=""+this.escapeHtml(t.help_range_title||"Numeric Range")+" ",i+=""+this.escapeHtml(t.help_range_desc||"Filter by numeric values within specified ranges.")+"
",i+=""+this.escapeHtml(t.help_range_tip||"Leave min or max empty for open-ended ranges.")+"
";break;case"by_date_added":case"by_date_updated":i=""+this.escapeHtml(t.help_date_title||"Date Range")+" ",i+=""+this.escapeHtml(t.help_date_desc||"Filter by date within a specific period.")+"
"}return i},buildSortOptions:function(e){var t=[];switch(e){case"products":t=[{value:"sales",label:"Best sellers"},{value:"date_add",label:"Newest"},{value:"price",label:"Price"},{value:"name",label:"Name"},{value:"position",label:"Position"},{value:"quantity",label:"Stock quantity"},{value:"random",label:"Random"}];break;case"categories":t=[{value:"name",label:"Name"},{value:"position",label:"Position"},{value:"product_count",label:"Product count"},{value:"total_sales",label:"Best sellers"},{value:"newest_products",label:"Newest products"},{value:"date_add",label:"Creation date"},{value:"random",label:"Random"}];break;case"manufacturers":case"suppliers":t=[{value:"name",label:"Name"},{value:"product_count",label:"Product count"},{value:"total_sales",label:"Best sellers"},{value:"newest_products",label:"Newest products"},{value:"random",label:"Random"}];break;case"cms":case"cms_categories":t=[{value:"name",label:"Name"},{value:"position",label:"Position"},{value:"random",label:"Random"}];break;default:t=[{value:"name",label:"Name"},{value:"random",label:"Random"}]}for(var i="",a=0;a'+this.escapeHtml(t[a].label)+"";return i},updateModifierButtonState:function(t){var i=t.find(".group-modifier-limit").val(),a=t.find(".group-modifier-sort").val(),s=t.find(".group-modifiers"),o=t.find(".btn-toggle-modifiers"),n=this.config.trans||{};if(o.find(".modifier-summary").remove(),i||a){s.addClass("has-values");var r=[];if(i&&r.push((n.top||"Top")+" "+i),a){var l=t.find(".group-modifier-sort option:selected").text();r.push(l)}var c=o.find(".toggle-arrow");e(''+this.escapeHtml(r.join(", "))+" ").insertBefore(c)}else s.removeClass("has-values")},updateMethodSelectorLock:function(e,t){var i=e.find(".include-method-select"),a=i.closest(".method-selector-wrapper"),s=this.config.trans||{};if(t){if(i.prop("disabled",!0),a.length||(i.wrap('
'),a=i.parent(".method-selector-wrapper")),a.addClass("selector-locked"),!a.find(".lock-indicator").length){var o=''+this.esIcon("lock")+''+(s.remove_excludes_first||"Remove all exceptions to change selection type")+" ",n=a.find(".condition-match-count");n.length?n.before(o):a.append(o)}}else i.prop("disabled",!1),a.length?(a.removeClass("selector-locked"),a.find(".mpr-info-wrapper.lock-indicator").remove()):i.siblings(".mpr-info-wrapper.lock-indicator").remove()}}}(jQuery),function(e){"use strict";window._EntitySelectorMixins=window._EntitySelectorMixins||{},window._EntitySelectorMixins.preview={updateHeaderTotalCount:function(){var t=0;this.$wrapper.find(".target-block-tab .tab-badge").each(function(){var i=e(this);if(!i.hasClass("loading")){var a=parseInt(i.text(),10);isNaN(a)||(t+=a)}});var i=this.$wrapper.find(".trait-total-count");if(t>0){var a=i.find(".count-value");a.length?a.text(t):i.html(this.esIcon("visibility")+' '+t+" "),i.show()}else i.hide();this.updateShowAllToggle()},updateShowAllToggle:function(){var e=this.$wrapper.find(".trait-show-all-toggle");if(e.length){var t=e.find(".show-all-checkbox"),i=this.$wrapper.find(".target-block-tab.has-data").length>0;t.prop("checked",!i)}},createPreviewPopover:function(t){var i=this,a=this.config.trans||{},s=t.$badge,o=t.items||[],n=t.totalCount||0,r=t.hasMore||!1,l=t.entityLabel||"products",c='';if(c+='",c+='
',c+=' ',c+="
",o.length>0){if(c+='
',c+=this.renderPreviewItems(o),c+="
",r){var d=n-o.length;c+='"}}else c+='
'+(a.no_preview||"No items to preview")+"
";var p=e(c+="
");e("body").append(p),this.$previewPopover=p,this.$previewList=p.find(".preview-list"),this.previewLoadedCount=o.length,this.previewTotalCount=n,this.previewContext=t.context||{},this.previewOnLoadMore=t.onLoadMore||null,this.previewOnFilter=t.onFilter||null,this.previewCurrentFilter="",this.previewEntityLabel=l,p.find(".preview-close").on("click",function(){i.hidePreviewPopover()});var u=p.find(".preview-filter-input");if(t.onFilter){var h=this.debounce(function(e){i.previewCurrentFilter=e,i.showFilterLoading(!0),t.onFilter.call(i,e)},300);u.on("input",function(){var t=e(this).val().trim();t!==i.previewCurrentFilter&&h(t)})}else u.on("input",function(){var t=e(this).val().toLowerCase().trim();i.filterPreviewItems(t)});t.onLoadMore&&p.find(".btn-load-more").on("click",function(){var a=e(this),s=a.closest(".load-more-controls").find(".load-more-select");if(!a.hasClass("loading")){a.addClass("loading"),a.find("i").replaceWith(i.esIcon("progress_activity","es-spin")),s.prop("disabled",!0);var o=parseInt(s.val(),10)||20;i.previewLoadCount=o,t.onLoadMore.call(i,a)}});var f=s.offset(),v=s.outerHeight(),g=s.outerWidth(),m=p.outerWidth(),b=f.left+g/2-m/2,y=e(window).width()-m-10;return b=Math.max(10,Math.min(b,y)),p.css({position:"absolute",top:f.top+v+8,left:b,zIndex:1e4}),p.addClass("show"),p},updatePreviewPopover:function(e,t){var i=this.config.trans||{};this.$previewList.html(this.renderPreviewItems(e)),this.previewLoadedCount=e.length;var a=this.$previewPopover.find(".preview-footer");if(t){var s=this.previewTotalCount-e.length,o=a.find(".load-more-controls"),n=o.find(".btn-load-more"),r=o.find(".load-more-select");n.removeClass("loading"),n.find("i").replaceWith(this.esIcon("add")),r.prop("disabled",!1),o.find(".remaining-count").text(s),r.empty(),s>=10&&r.append('10 '),s>=20&&r.append('20 '),s>=50&&r.append('50 '),s>=100&&r.append('100 '),r.append(''+(i.all||"All")+" ("+s+") ")}else a.remove();var l=this.$previewPopover.find(".preview-filter-input").val();l&&this.filterPreviewItems(l.toLowerCase().trim())},renderPreviewItems:function(e){for(var t="",i=0;i",a.image?t+=' ':t+=''+this.esIcon("inventory_2")+"
",t+='',t+='
'+this.escapeHtml(a.name||"Unnamed")+"
";var n=[];a.reference&&n.push("Ref: "+a.reference),a.manufacturer&&n.push(a.manufacturer),a.category&&n.push(a.category),a.attributes&&n.push(a.attributes),n.length>0&&(t+='
'+this.escapeHtml(n.join(" • "))+"
"),t+="
",void 0!==a.price&&null!==a.price?t+=''+this.formatPrice(a.price)+"
":a.price_formatted&&(t+=''+this.escapeHtml(a.price_formatted)+"
"),void 0===a.active||a.active||(t+='Inactive '),t+=" "}return t},filterPreviewItems:function(t){if(this.$previewList){var i=this.$previewList.find(".preview-item");t?i.each(function(){var i=e(this),a=i.data("name")||"",s=i.data("ref")||"",o=i.data("attrs")||"",n=-1!==a.indexOf(t)||-1!==s.indexOf(t)||-1!==o.indexOf(t);i.toggle(n)}):i.show()}},showFilterLoading:function(e){if(this.$previewPopover){var t=this.$previewList;t&&(e?(this.previewLockedWidth||(this.previewLockedWidth=this.$previewPopover.outerWidth(),this.$previewPopover.css("width",this.previewLockedWidth+"px")),t.addClass("filtering"),t.find(".filter-loading-overlay").length||t.append(''+this.esIcon("progress_activity","es-spin")+"
")):(t.removeClass("filtering"),t.find(".filter-loading-overlay").remove()))}},updatePreviewPopoverFiltered:function(t){var i=this.config.trans||{};if(this.showFilterLoading(!1),t.success){var a=t.items||[],s=t.count||0,o=t.hasMore||!1,n=this.$previewPopover.find(".preview-header"),r=this.previewEntityLabel||"items";if(n.find(".preview-count").text(s+" "+r),a.length>0)this.$previewList.html(this.renderPreviewItems(a)),this.previewLoadedCount=a.length,this.previewTotalCount=s;else{var l=i.no_filter_results||"No matching items found";this.$previewList.html(''+l+"
"),this.previewLoadedCount=0,this.previewTotalCount=0}var c=this.$previewPopover.find(".preview-footer");if(o&&a.length>0){var d=s-a.length;if(c.length){var p=c.find(".load-more-controls"),u=p.find(".btn-load-more"),h=p.find(".load-more-select");u.removeClass("loading"),u.find("i").replaceWith(g.esIcon("add")),h.prop("disabled",!1),p.find(".remaining-count").text(d),h.empty(),d>=10&&h.append('10 '),d>=20&&h.append('20 '),d>=50&&h.append('50 '),d>=100&&h.append('100 '),h.append(''+(i.all||"All")+" ("+d+") ")}else{var f='");this.$previewList.after(v);var g=this;this.previewOnLoadMore&&v.find(".btn-load-more").on("click",function(){var t=e(this),i=t.closest(".load-more-controls").find(".load-more-select");if(!t.hasClass("loading")){t.addClass("loading"),t.find("i").replaceWith(g.esIcon("progress_activity","es-spin")),i.prop("disabled",!0);var a=parseInt(i.val(),10)||20;g.previewLoadCount=a,g.previewOnLoadMore.call(g,t)}})}}else c.remove()}},formatPrice:function(e){"number"!=typeof e&&(e=parseFloat(e)||0);var t=this.config&&this.config.currency_sign||"€",i=this.config&&this.config.currency_format||"right",a=e.toFixed(2);return"left"===i?t+" "+a:a+" "+t},hidePreviewPopover:function(){this.$activeBadge&&(this.$activeBadge.removeClass("popover-open loading"),this.$activeBadge=null),this.$previewPopover&&(this.$previewPopover.remove(),this.$previewPopover=null),this.$previewList=null,this.previewContext=null,this.previewOnLoadMore=null,this.previewOnFilter=null,this.previewCurrentFilter="",this.previewEntityLabel=null,this.previewLockedWidth=null},showPreviewPopover:function(e){var t=this,i=e.data("previewData");if(i){this.hidePreviewPopover();var a=e.find(".tab-badge");a.addClass("popover-open"),this.$activeBadge=a;var s=i.items||i.products||[],o=e.data("blockType"),n=(this.config.blocks&&this.config.blocks[o]?this.config.blocks[o]:{}).entity_label_plural||"items";if(this.previewBlockType=o,0===s.length&&i.count>0)return a.addClass("loading"),void this.fetchTabPreviewItems(e,function(s,r){a.removeClass("loading"),t.createPreviewPopover({$badge:a,items:s,totalCount:i.count,hasMore:r,entityLabel:n,previewType:"tab",context:{$tab:e,blockType:o},onLoadMore:function(i){t.loadMoreTabPreviewItems(e,i)},onFilter:function(i){t.filterTabPreviewItems(e,i)}})});this.createPreviewPopover({$badge:a,items:s,totalCount:i.count,hasMore:i.hasMore,entityLabel:n,previewType:"tab",context:{$tab:e,blockType:o},onLoadMore:function(i){t.loadMoreTabPreviewItems(e,i)},onFilter:function(i){t.filterTabPreviewItems(e,i)}})}},fetchTabPreviewItems:function(t,i){var a=t.data("blockType"),s=this.$wrapper.find('input[name="'+this.config.name+'"]'),o={};try{o=JSON.parse(s.val()||"{}")}catch(e){return void i([],!1)}var n=o[a]&&o[a].groups?o[a].groups:[];if(0!==n.length){var r={};r[a]={groups:n},e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"previewEntitySelector",trait:"EntitySelector",conditions:JSON.stringify(r),block_type:a,limit:20,offset:0},success:function(e){var a=e.items||e.products||[],s=e.hasMore||e.count>a.length;t.data("previewData",e),i(a,s)},error:function(){i([],!1)}})}else i([],!1)},filterTabPreviewItems:function(t,i){var a=this,s=this.previewBlockType,o=this.$wrapper.find('input[name="'+this.config.name+'"]'),n={};try{n=JSON.parse(o.val()||"{}")}catch(e){return void a.showFilterLoading(!1)}var r=n[s]&&n[s].groups?n[s].groups:[];if(0!==r.length){var l={};l[s]={groups:r},e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"previewTargetConditions",trait:"TargetConditions",conditions:JSON.stringify(l),block_type:s,filter:i,limit:20,offset:0},success:function(e){a.updatePreviewPopoverFiltered(e)},error:function(){a.showFilterLoading(!1)}})}else a.showFilterLoading(!1)},loadMoreTabPreviewItems:function(t,i){var a=this,s=this.previewBlockType,o=this.$wrapper.find('input[name="'+this.config.name+'"]'),n={};try{n=JSON.parse(o.val()||"{}")}catch(e){return}var r=n[s]&&n[s].groups?n[s].groups:[];if(0!==r.length){var l={};l[s]={groups:r};var c=this.previewLoadCount||20,d={ajax:1,action:"previewTargetConditions",trait:"TargetConditions",conditions:JSON.stringify(l),block_type:s,limit:a.previewLoadedCount+c,offset:0};a.previewCurrentFilter&&(d.filter=a.previewCurrentFilter),e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:d,success:function(e){var i=e.items||e.products||[];e.success&&i.length>0&&(t.data("previewData",e),a.previewTotalCount=e.count,a.updatePreviewPopover(i,e.hasMore))},error:function(){var e=i.closest(".load-more-controls").find(".load-more-select");i.removeClass("loading"),i.find("i").replaceWith(a.esIcon("add")),e.prop("disabled",!1)}})}},showConditionPreviewPopover:function(t){var i=this,a=t.data("conditionData");if(a)if(a.isCountryHolidays&&a.countryIds)this.showCountriesHolidayPreview(t,a.countryIds);else{this.hidePreviewPopover(),t.addClass("popover-open loading"),this.$activeBadge=t;var s=a.blockType||"products",o=(this.config.blocks&&this.config.blocks[s]?this.config.blocks[s]:{}).entity_label_plural||"products";e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"previewConditionItems",trait:"EntitySelector",method:a.method,values:JSON.stringify(a.values),block_type:s,limit:10},success:function(e){t.removeClass("loading"),e.success?i.createPreviewPopover({$badge:t,items:e.items||[],totalCount:e.count,hasMore:e.hasMore,entityLabel:o,previewType:"condition",context:{conditionData:a,blockType:s},onLoadMore:function(e){i.loadMoreConditionItems(e)},onFilter:function(e){i.filterConditionItems(e)}}):(t.removeClass("popover-open"),i.$activeBadge=null)},error:function(){t.removeClass("loading popover-open"),i.$activeBadge=null}})}},filterConditionItems:function(t){var i=this,a=this.previewContext;a&&a.conditionData?e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"previewConditionItems",trait:"EntitySelector",method:a.conditionData.method,values:JSON.stringify(a.conditionData.values),block_type:a.blockType,filter:t,limit:20},success:function(e){i.updatePreviewPopoverFiltered(e)},error:function(){i.showFilterLoading(!1)}}):i.showFilterLoading(!1)},loadMoreConditionItems:function(t){var i=this,a=this.previewContext;if(a&&a.conditionData){var s=this.previewLoadCount||20,o={ajax:1,action:"previewConditionItems",trait:"EntitySelector",method:a.conditionData.method,values:JSON.stringify(a.conditionData.values),block_type:a.blockType,limit:i.previewLoadedCount+s};i.previewCurrentFilter&&(o.filter=i.previewCurrentFilter),e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:o,success:function(e){e.success&&(i.previewTotalCount=e.count,i.updatePreviewPopover(e.items||[],e.hasMore))},error:function(){var e=t.closest(".load-more-controls").find(".load-more-select");t.removeClass("loading"),t.find("i").replaceWith(i.esIcon("add")),e.prop("disabled",!1)}})}},showGroupPreviewPopover:function(t,i,a){var s=this;if(i||(i=t.closest(".selection-group")),!a){var o=t.closest(".target-block");a=o.data("blockType")||"products"}var n=t.data("groupData");if(n||(n=this.serializeGroup(i,a)),n&&n.include){this.hidePreviewPopover(),t.addClass("popover-open loading"),this.$activeBadge=t;var r=(this.config.blocks&&this.config.blocks[a]?this.config.blocks[a]:{}).entity_label_plural||"products";e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"previewGroupItems",trait:"EntitySelector",group_data:JSON.stringify(n),block_type:a,limit:10},success:function(e){t.removeClass("loading"),e.success?s.createPreviewPopover({$badge:t,items:e.items||[],totalCount:e.count,hasMore:e.hasMore,entityLabel:r,previewType:"group",context:{groupData:n,blockType:a,$group:i},onLoadMore:function(e){s.loadMoreGroupItems(e)},onFilter:function(e){s.filterGroupItems(e)}}):(t.removeClass("popover-open"),s.$activeBadge=null)},error:function(){t.removeClass("loading popover-open"),s.$activeBadge=null}})}},filterGroupItems:function(t){var i=this,a=this.previewContext;a&&a.groupData?e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"previewGroupItems",trait:"EntitySelector",group_data:JSON.stringify(a.groupData),block_type:a.blockType,filter:t,limit:20},success:function(e){i.updatePreviewPopoverFiltered(e)},error:function(){i.showFilterLoading(!1)}}):i.showFilterLoading(!1)},loadMoreGroupItems:function(t){var i=this,a=this.previewContext;if(a&&a.groupData){var s=this.previewLoadCount||20,o={ajax:1,action:"previewGroupItems",trait:"EntitySelector",group_data:JSON.stringify(a.groupData),block_type:a.blockType,limit:i.previewLoadedCount+s};i.previewCurrentFilter&&(o.filter=i.previewCurrentFilter),e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:o,success:function(e){e.success&&(i.previewTotalCount=e.count,i.updatePreviewPopover(e.items||[],e.hasMore))},error:function(){t.removeClass("loading"),t.find(".load-more-text").show(),t.find(".load-more-loading").hide()}})}},showFilterGroupPreviewPopover:function(t,i,a,s){var o=this;this.hidePreviewPopover(),t.addClass("popover-open loading"),this.$activeBadge=t,e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"previewFilterGroupProducts",trait:"EntitySelector",group_id:i,group_type:a,limit:10},success:function(e){t.removeClass("loading"),e.success?o.createPreviewPopover({$badge:t,items:e.items||[],totalCount:e.count||0,hasMore:e.hasMore||!1,entityLabel:"products",previewType:"filter-group",context:{groupId:i,groupType:a,groupName:s},onLoadMore:function(e){o.loadMoreFilterGroupItems(e)},onFilter:function(e){o.filterFilterGroupItems(e)}}):(t.removeClass("popover-open"),o.$activeBadge=null)},error:function(){t.removeClass("loading popover-open"),o.$activeBadge=null}})},filterFilterGroupItems:function(t){var i=this,a=this.previewContext;a&&a.groupId?e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"previewFilterGroupProducts",trait:"EntitySelector",group_id:a.groupId,group_type:a.groupType,filter:t,limit:20},success:function(e){i.updatePreviewPopoverFiltered(e)},error:function(){i.showFilterLoading(!1)}}):i.showFilterLoading(!1)},loadMoreFilterGroupItems:function(t){var i=this,a=this.previewContext;if(a&&a.groupId){var s=this.previewLoadCount||20,o={ajax:1,action:"previewFilterGroupProducts",trait:"EntitySelector",group_id:a.groupId,group_type:a.groupType,limit:i.previewLoadedCount+s};i.previewCurrentFilter&&(o.filter=i.previewCurrentFilter),e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:o,success:function(e){e.success&&(i.previewTotalCount=e.count,i.updatePreviewPopover(e.items||[],e.hasMore))},error:function(){t.removeClass("loading"),t.find(".load-more-text").show(),t.find(".load-more-loading").hide()}})}},showCategoryItemsPreview:function(t,i,a,s){var o=this;this.hidePreviewPopover(),t.addClass("popover-open loading"),this.$activeBadge=t;var n="categories"===s,r=n?"products":"pages",l=n?"previewCategoryProducts":"previewCategoryPages";e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:l,trait:"EntitySelector",category_id:i,limit:10},success:function(e){t.removeClass("loading"),e.success?o.createPreviewPopover({$badge:t,items:e.items||[],totalCount:e.count||0,hasMore:e.hasMore||!1,entityLabel:r,previewType:"category-items",context:{categoryId:i,categoryName:a,entityType:s},onLoadMore:function(e){o.loadMoreCategoryItems(e)},onFilter:function(e){o.filterCategoryItems(e)}}):(t.removeClass("popover-open"),o.$activeBadge=null)},error:function(){t.removeClass("loading popover-open"),o.$activeBadge=null}})},loadMoreCategoryItems:function(t){var i=this,a=this.previewContext;if(a&&a.categoryId){var s="categories"===a.entityType?"previewCategoryProducts":"previewCategoryPages";t.prop("disabled",!0).find("i").addClass("es-spin"),e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:s,trait:"EntitySelector",category_id:a.categoryId,offset:this.previewOffset,limit:10,query:this.previewFilterQuery||""},success:function(e){t.prop("disabled",!1).find("i").removeClass("es-spin"),e.success&&e.items&&(i.appendPreviewItems(e.items),i.previewOffset+=e.items.length,e.hasMore||t.hide())},error:function(){t.prop("disabled",!1).find("i").removeClass("es-spin")}})}},filterCategoryItems:function(t){var i=this,a=this.previewContext;if(a&&a.categoryId){var s="categories"===a.entityType?"previewCategoryProducts":"previewCategoryPages";e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:s,trait:"EntitySelector",category_id:a.categoryId,query:t,limit:10},success:function(e){i.showFilterLoading(!1),e.success&&(i.replacePreviewItems(e.items||[],e.count||0,e.hasMore||!1),i.previewOffset=e.items?e.items.length:0,i.previewFilterQuery=t)},error:function(){i.showFilterLoading(!1)}})}else i.showFilterLoading(!1)},showPatternPreviewModal:function(t,i,a,s){var o=this,n=this.config.trans||{},r=this.config.blocks&&this.config.blocks[i]?this.config.blocks[i]:{},l=r.entity_label_plural||"items",c=r.entity_label||"item",d='';d+='
',d+='",d+='
',d+='
'+this.esIcon("progress_activity","es-spin")+" "+(n.loading||"Loading...")+"
",d+="
",d+="
";var p=e(d+="
");e("body").append(p),p.find(".pattern-preview-close").on("click",function(){p.remove()}),p.on("click",function(t){e(t.target).hasClass("pattern-preview-modal-overlay")&&p.remove()}),e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"previewPatternMatches",trait:"TargetConditions",pattern:t,entity_type:i,case_sensitive:a?1:0,limit:50},success:function(e){if(e.success&&e.items){var t=e.items,i='';if(0===t.length)i+='
'+(n.no_matches||"No matches found")+"
";else{for(var a=0;a
',r.image&&(i+=' '),i+=''+o.escapeHtml(r.name)+" ",r.id&&(i+='#'+r.id+" "),i+=" "}s>t.length&&(i+='... '+(n.and||"and")+" "+(s-t.length)+" "+(n.more||"more")+"
")}i+=" ",p.find(".pattern-preview-content").html(i)}else p.find(".pattern-preview-content").html(''+(n.error_loading||"Error loading preview")+"
")},error:function(){p.find(".pattern-preview-content").html(''+(n.error_loading||"Error loading preview")+"
")}})},refreshGroupPreviewIfOpen:function(e){this.$activeBadge&&this.$previewPopover},escapeHtml:function(e){return e?String(e).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'"):""},escapeAttr:function(e){return e?String(e).replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'"):""},showTotalPreviewPopover:function(t){var i=this,a=this.config.trans||{};this.hidePreviewPopover(),t.addClass("popover-open"),this.$activeBadge=t;var s=[];this.$wrapper.find(".target-block-tab.has-data").each(function(){var t=e(this),a=t.data("blockType"),o=t.find(".tab-badge").text().replace(/[^0-9]/g,""),n=parseInt(o,10)||0;if(n>0){i.config.blocks&&i.config.blocks[a]&&i.config.blocks[a];var r=t.find(".tab-label").prev("i").text()||"widgets",l=t.find(".tab-label").text()||a;s.push({blockType:a,label:l,icon:r,count:n})}});var o=parseInt(t.find(".count-value").text(),10)||0,n='';n+='",n+='
',n+='
';for(var r=0;r',n+=this.esIcon(l.icon),n+=''+i.escapeHtml(l.label)+" ",n+=''+l.count+" ",n+=""}n+=" ",n+="
";var c=e(n+="
");this.$previewPopover=c,c.on("click",".total-summary-item",function(){var t=e(this).data("blockType");i.hidePreviewPopover(),i.switchToBlock(t)}),e("body").append(c);var d=t.offset(),p=t.outerHeight(),u=c.outerWidth();c.css({position:"absolute",top:d.top+p+5,left:d.left-u/2+t.outerWidth()/2,zIndex:1e4});var h=e(window).width();c.offset().left+u>h-10&&c.css("left",h-u-10),c.offset().left<10&&c.css("left",10),c.hide().fadeIn(150)},showHolidayPreview:function(t,i,a,s){var o=this,n=this.config.trans||{};e(".holiday-preview-popover").remove();var r='';r+='",r+='
',r+='
'+this.esIcon("sync","es-spin")+" "+(n.loading||"Loading...")+"
",r+="
";var l=e(r+="
");e("body").append(l);var c=s[0].getBoundingClientRect(),d=e(window).scrollTop(),p=e(window).scrollLeft(),u=l.outerWidth(),h=l.outerHeight(),f=e(window).width(),v=e(window).height(),g=c.bottom+d+8,m=c.left+p;m+u>f-10&&(m=f-u-10),m<10&&(m=10),c.bottom+h>v-10&&(g=c.top+d-h-8),l.css({position:"absolute",top:g,left:m,zIndex:10001}),l.find(".popover-close").on("click",function(){l.remove()}),e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"getHolidaysPreview",trait:"EntitySelector",id_country:t},success:function(e){if(e.success&&e.holidays&&e.holidays.length>0){for(var t='',i=0;i
',t+='',t+=''+o.escapeHtml(a.date_formatted||a.date)+" ",a.day_of_week&&(t+=''+o.escapeHtml(a.day_of_week)+" "),t+="
",t+='',t+=''+o.escapeHtml(a.name)+" ",a.type&&(t+=''+o.escapeHtml(a.type)+" "),t+="
",t+=" "}t+=" ",e.total_count&&(t+='
'+e.total_count+" "+(n.upcoming_holidays||"upcoming holidays")+"
"),l.find(".popover-body").html(t)}else{var s='
';s+=o.esIcon("event_busy"),s+="
"+(n.no_holidays||"No holidays found")+"
",s+="
",l.find(".popover-body").html(s)}var r=l.outerHeight();if(c.bottom+r>v-10){var p=c.top+d-r-8;p>10&&l.css("top",p)}},error:function(){var e='
';e+=o.esIcon("error"),e+="
"+(n.error_loading||"Error loading holidays")+"
",e+="
",l.find(".popover-body").html(e)}})},showCountriesHolidayPreview:function(t,i){var a=this,s=this.config.trans||{};this.hidePreviewPopover(),e(".holiday-preview-popover").remove();var o='
';o+='",o+='
',o+=this.esIcon("search"),o+=' ',o+="
",o+='
',o+='
'+this.esIcon("sync","es-spin")+" "+(s.loading||"Loading...")+"
",o+="
";var n=e(o+="
");e("body").append(n);var r=t[0].getBoundingClientRect(),l=e(window).scrollTop(),c=e(window).scrollLeft(),d=n.outerWidth(),p=n.outerHeight(),u=e(window).width(),h=e(window).height(),f=r.bottom+l+8,v=r.left+c;v+d>u-10&&(v=u-d-10),v<10&&(v=10),r.bottom+p>h-10&&(f=r.top+l-p-8),n.css({position:"absolute",top:f,left:v,zIndex:10001}),t.addClass("popover-open"),this.$activeBadge=t,n.find(".popover-close").on("click",function(){n.remove(),t.removeClass("popover-open"),a.$activeBadge=null}),e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"getHolidaysForCountries",trait:"EntitySelector",country_ids:i.join(","),count_only:0},success:function(t){if(t.success&&t.holidays&&t.holidays.length>0){var o={},c={};if(t.countries)for(var d=0;d
')}else{for(var w=0;w<2;w++){var _=v[w];_&&_.iso_code&&(g+=' ')}g+="+"+(m-2)+" "}g+=t.total_count+" "+(s.holidays||"Holidays"),n.find(".popover-title").html(g);for(var x='',k=0;k
',x+='',x+=''+a.escapeHtml(C.date_formatted||C.date)+" ",C.day_of_week&&(x+=''+a.escapeHtml(C.day_of_week)+" "),x+="
",x+='',C.country_iso&&i.length>1&&(x+='
'),x+='
'+a.escapeHtml(C.name)+" ",C.type&&(x+='
'+a.escapeHtml(C.type)+" "),x+="
",x+=" "}x+=" ",t.total_count&&i.length>1&&(x+=''+(s.across_countries||"across")+" "+i.length+" "+(s.countries||"countries")+"
"),n.find(".popover-body").html(x),n.find(".holiday-filter-input").on("input",function(){var t=e(this).val().toLowerCase().trim(),a=n.find(".holiday-item"),o=0;a.each(function(){var i=e(this).attr("data-search")||"";t&&-1===i.indexOf(t)?e(this).hide():(e(this).show(),o++)});var r=n.find(".holiday-preview-note");if(t&&r.length)r.text(o+" "+(s.matches||"matches"));else if(r.length&&i.length>1){var l=(s.across_countries||"across")+" "+i.length+" "+(s.countries||"countries");r.text(l)}})}else{n.find(".popover-title").html("0 "+(s.holidays||"Holidays"));var I='';I+=a.esIcon("event_busy"),I+="
"+(s.no_holidays||"No holidays found")+"
",I+="
",n.find(".popover-body").html(I)}var M=n.outerHeight();if(r.bottom+M>h-10){var T=r.top+l-M-8;T>10&&n.css("top",T)}},error:function(){n.find(".popover-title").html(a.esIcon("error")+" "+(s.error||"Error"));var e='';e+=a.esIcon("error"),e+="
"+(s.error_loading||"Error loading holidays")+"
",e+="
",n.find(".popover-body").html(e)}})}}}(jQuery),function(e){"use strict";window._EntitySelectorMixins=window._EntitySelectorMixins||{},window._EntitySelectorMixins.tree={treeData:null,treeFlatData:null,loadCategoryTree:function(){var t=this,i=this.$dropdown.find(".dropdown-results"),a=this.config.trans||{},s=this.activeGroup?this.activeGroup.searchEntity:"categories";i.html(''+this.esIcon("progress_activity","es-spin")+" "+this.escapeHtml(a.loading||"Loading...")+"
"),e.ajax({url:this.config.ajaxUrl,type:"POST",dataType:"json",data:{ajax:1,action:"getCategoryTree",trait:"EntitySelector",entity_type:s},success:function(e){e.success&&e.categories&&e.categories.length>0?(t.treeFlatData=e.categories,t.treeData=t.buildTreeStructure(e.categories),t.renderCategoryTree(i,s)):i.html(''+t.escapeHtml(a.no_categories||"No categories found")+"
")},error:function(){i.html(''+t.escapeHtml(a.error_loading||"Failed to load categories")+"
")}})},buildTreeStructure:function(t){var i={},a=[];return t.forEach(function(t){i[t.id]=e.extend({},t,{children:[]})}),t.forEach(function(e){var t=i[e.id],s=parseInt(e.parent_id,10);s&&i[s]?i[s].children.push(t):a.push(t)}),a},renderCategoryTree:function(e,t){var i=this.config.trans||{},a=this.getSelectedIdsFromChips(),s='';s+='
',s+='',s+=this.esIcon("add_box")+" "+this.escapeHtml(i.expand_all||"Expand all"),s+=" ",s+='',s+=this.esIcon("indeterminate_check_box")+" "+this.escapeHtml(i.collapse_all||"Collapse all"),s+=" ",s+="
",s+='
',s+=this.renderTreeItems(this.treeData,0,a),s+="
",s+="
",e.html(s);var o=this.treeFlatData?this.treeFlatData.length:0,n=a.length,r=o+" "+("cms_categories"===t?"CMS categories":"categories");n>0&&(r+=" ("+n+" selected)"),this.$dropdown.find(".results-count").text(r),this.updateSelectChildrenButtons(this.$dropdown.find(".tree-item"))},renderTreeItems:function(e,t,i){var a=this,s="",o=this.config.trans||{};return e.forEach(function(e){var n=e.children&&e.children.length>0,r=-1!==i.indexOf(parseInt(e.id,10)),l=20*t,c="tree-item";n&&(c+=" has-children"),r&&(c+=" selected"),e.active||(c+=" inactive"),s+='',s+=' ',n?(s+=''+a.esIcon("arrow_drop_down")+" ",s+='',s+=a.esIcon("check_box"),s+=" "):s+=' ',s+=''+a.esIcon("check")+" ",s+=''+a.esIcon("folder")+" ",s+=''+a.escapeHtml(e.name)+" ";var d=e.product_count||e.page_count||0;if(d>0){var p=e.page_count?o.pages||"pages":o.products||"products";s+='',s+=a.esIcon("visibility")+" "+d,s+=" "}e.active||(s+=''+a.escapeHtml(o.inactive||"Inactive")+" "),s+="
",n&&(s+='',s+=a.renderTreeItems(e.children,t+1,i),s+="
")}),s},getSelectedIdsFromChips:function(){var t=[];if(!this.activeGroup)return t;var i=this.$wrapper.find('.target-block[data-block-type="'+this.activeGroup.blockType+'"]').find('.selection-group[data-group-index="'+this.activeGroup.groupIndex+'"]');return("include"===this.activeGroup.section?i.find(".include-picker"):i.find('.exclude-row[data-exclude-index="'+this.activeGroup.excludeIndex+'"]').find(".exclude-picker")).find(".entity-chip").each(function(){t.push(parseInt(e(this).data("id"),10))}),t},filterCategoryTree:function(t){var i=this.$dropdown.find(".category-tree");if(i.length){var a=i.find(".tree-item"),s=i.find(".tree-children");if(t=(t||"").toLowerCase().trim(),a.css("display",""),!t)return a.removeClass("filtered-out filter-match"),void s.removeClass("filter-expanded");a.addClass("filtered-out").removeClass("filter-match"),a.each(function(){var i=e(this);-1!==(i.data("name")||"").toLowerCase().indexOf(t)&&(i.removeClass("filtered-out"),i.parents(".tree-children").addClass("filter-expanded"),i.parents(".tree-item").removeClass("filtered-out"),i.next(".tree-children").find(".tree-item").removeClass("filtered-out"),i.next(".tree-children").addClass("filter-expanded"))})}},findTreeDescendants:function(e,t){var i=[],a=(parseInt(e.data("id"),10),parseInt(e.data("level"),10),e.next(".tree-children"));return a.length&&a.find(".tree-item").each(function(){i.push(this)}),i},updateSelectChildrenButtons:function(t){var i=this,a=this.config.trans||{};t.filter(".has-children").each(function(){var t=e(this),s=t.find(".btn-select-children");if(s.length){var o=t.next(".tree-children");if(o.length){var n=o.find(".tree-item"),r=t.hasClass("selected"),l=!0;n.each(function(){if(!e(this).hasClass("selected"))return l=!1,!1}),r&&l?(s.find("i").replaceWith(i.esIcon("indeterminate_check_box")),s.attr("title",a.deselect_with_children||"Deselect with all children")):(s.find("i").replaceWith(i.esIcon("add_box")),s.attr("title",a.select_with_children||"Select with all children"))}}})}}}(jQuery),function(e){"use strict";window._EntitySelectorMixins=window._EntitySelectorMixins||{},window._EntitySelectorMixins.validation={validateSelection:function(t,i,a,s){if(!this.activeGroup)return{valid:!0};var o=this.config.trans||{};t=parseInt(t,10);var n=this.$wrapper.find('.target-block[data-block-type="'+this.activeGroup.blockType+'"]').find('.selection-group[data-group-index="'+this.activeGroup.groupIndex+'"]'),r=this.getChipIds(n.find(".include-picker")),l=[];n.find(".exclude-row").each(function(){var t=e(this).find(".exclude-picker"),i=[];t.find(".entity-chip").each(function(){i.push(parseInt(e(this).data("id"),10))}),l=l.concat(i)});var c=this.checkIncludeExcludeConflict(t,i,a,r,l,o);if(!c.valid)return c;var d=this.checkRedundantSelection(t,i,a,r,l,o);if(!d.valid)return d;var p=this.activeGroup.searchEntity;if("categories"===p||"cms_categories"===p){var u=this.checkTreeConflicts(t,i,a,s,r,l,o);if(!u.valid)return u}return{valid:!0}},checkIncludeExcludeConflict:function(e,t,i,a,s,o){return"include"===i&&-1!==s.indexOf(e)?{valid:!1,type:"include_exclude_conflict",error:(o.error_in_exclude||'"{name}" is already in the exclude list. Remove it from exclude first.').replace("{name}",t)}:"exclude"===i&&-1!==a.indexOf(e)?{valid:!1,type:"include_exclude_conflict",error:(o.error_in_include||'"{name}" is already in the include list. Remove it from include first.').replace("{name}",t)}:{valid:!0}},checkRedundantSelection:function(e,t,i,a,s,o){return"include"===i&&-1!==a.indexOf(e)?{valid:!1,type:"redundant",error:(o.error_already_selected||'"{name}" is already selected.').replace("{name}",t)}:"exclude"===i&&-1!==s.indexOf(e)?{valid:!1,type:"redundant",error:(o.error_already_excluded||'"{name}" is already in an exclude list.').replace("{name}",t)}:{valid:!0}},checkTreeConflicts:function(e,t,i,a,s,o,n){if(!this.treeFlatData)return{valid:!0};a&&a.parentId&&parseInt(a.parentId,10);var r={};this.treeFlatData.forEach(function(e){r[parseInt(e.id,10)]=e});var l=this.getAncestorIds(e,r),c=this.getDescendantIds(e,r);if("include"===i){for(var d=0;d0)return{valid:!1,type:"children_included",error:(n.error_children_included||'Cannot exclude "{name}" because its children ({children}) are included. Remove them from include first.').replace("{name}",t).replace("{children}",g.slice(0,3).join(", ")+(g.length>3?"...":""))}}return{valid:!0}},getAncestorIds:function(e,t){for(var i=[],a=t[e];a&&a.parent_id;){var s=parseInt(a.parent_id,10);if(!s||!t[s])break;i.push(s),a=t[s]}return i},getDescendantIds:function(e,t){var i=[],a=this;return Object.keys(t).forEach(function(s){var o=t[s];if(parseInt(o.parent_id,10)===e){var n=parseInt(o.id,10);i.push(n);var r=a.getDescendantIds(n,t);i=i.concat(r)}}),i},getChipIds:function(t){var i=[];return t.find(".entity-chip").each(function(){i.push(parseInt(e(this).data("id"),10))}),i},validatePendingSelections:function(e,t){var i=this,a=[];return e&&e.length?(e.forEach(function(e){var s=i.validateSelection(e.id,e.name,t,e.data||{});s.valid||a.push({id:e.id,name:e.name,error:s.error,type:s.type})}),a):a},showValidationError:function(t){var i=(this.config.trans||{}).validation_error||"Selection Conflict";e(".es-validation-toast").remove();var a='';a+='
'+this.esIcon("warning")+"
",a+='
',a+='
'+this.escapeHtml(i)+"
",a+='
'+this.escapeHtml(t)+"
",a+="
",a+='
'+this.esIcon("close")+" ";var s=e(a+="
");if(e("body").append(s),this.$dropdown&&this.$dropdown.hasClass("show")){var o=this.$dropdown.offset();s.css({position:"fixed",top:o.top-s.outerHeight()-10,left:o.left,zIndex:10001})}else s.css({position:"fixed",top:20,right:20,zIndex:10001});s.hide().fadeIn(200),setTimeout(function(){s.fadeOut(200,function(){e(this).remove()})},5e3),s.on("click",".es-toast-close",function(){s.fadeOut(200,function(){e(this).remove()})})},validateAndAddSelection:function(e,t,i,a,s){var o=this.validateSelection(t,i,s,a||{});return o.valid?(this.addSelection(e,t,i,a),!0):(this.showValidationError(o.error),!1)}}}(jQuery),function(e){"use strict";var t={instances:[],create:function(t){var i=function(){var t={config:{},$wrapper:null,$dropdown:null,activeGroup:null,searchTimeout:null,searchResults:[],searchTotal:0,searchOffset:0,searchQuery:"",isLoading:!1,loadMoreCount:20,viewMode:"list",currentSort:{field:"name",dir:"ASC"},refineQuery:"",refineNegate:!1,filters:{inStock:!1,discounted:!1,priceMin:null,priceMax:null,attributes:[],features:[],productCountMin:null,productCountMax:null,salesMin:null,salesMax:null,turnoverMin:null,turnoverMax:null,depth:null,hasProducts:!1,hasDescription:!1,hasImage:!1,activeOnly:!0,attributeGroup:null,featureGroup:null,dateAddFrom:null,dateAddTo:null,lastProductFrom:null,lastProductTo:null,hasHolidays:!1,containsStates:!1,zone:null},filterableData:null,searchHistory:{},searchHistoryMax:10,searchHistoryKey:"targetConditionsSearchHistory",maxVisibleChips:20,$methodDropdownMenu:null,$methodDropdownSelect:null,$methodDropdownTrigger:null,$previewPopover:null,$activeBadge:null,$previewList:null,previewLoadedCount:0,previewBlockType:null,allPreviewData:null,countUpdateTimeout:null,init:function(t){if(this.config=e.extend({id:"target-conditions",name:"target_conditions",namePrefix:"target_",mode:"multi",blocks:{},ajaxUrl:"",trans:{}},t),this.$wrapper=e('[data-entity-selector-id="'+this.config.id+'"]'),this.$wrapper.length){"single"===this.config.mode&&(this.$wrapper.find(".btn-add-group").hide(),this.$wrapper.find(".group-excludes").hide(),this.$wrapper.find(".group-modifiers").hide());var i=this.$wrapper.hasClass("layout-form-group"),a=this.$wrapper.closest(".entity-selector-form-group");if(!i&&!a.length){var s=this.$wrapper.closest(".form-group");s.addClass("condition-trait-fullwidth"),s.find(".col-lg-offset-3").removeClass("col-lg-offset-3")}this.createDropdown(),this.bindEvents(),this.loadExistingSelections(),this.loadSearchHistory(),this.initMethodDropdowns(),this.observeNewSelects();var o=this;setTimeout(function(){o.updateTabBadges(),o.updateAllConditionCounts()},100)}},observeNewSelects:function(){var t=this;"undefined"!=typeof MutationObserver&&new MutationObserver(function(i){i.forEach(function(i){i.addedNodes.length&&e(i.addedNodes).find(".include-method-select, .exclude-method-select").each(function(){t.enhanceMethodSelect(e(this))})})}).observe(this.$wrapper[0],{childList:!0,subtree:!0})},loadExistingSelections:function(){}},i=window._EntitySelectorMixins||{};return i.utils&&e.extend(t,i.utils),i.events&&e.extend(t,i.events),i.dropdown&&e.extend(t,i.dropdown),i.search&&e.extend(t,i.search),i.filters&&e.extend(t,i.filters),i.chips&&e.extend(t,i.chips),i.groups&&e.extend(t,i.groups),i.methods&&e.extend(t,i.methods),i.preview&&e.extend(t,i.preview),i.tree&&e.extend(t,i.tree),i.validation&&e.extend(t,i.validation),t}();return i.init(t),this.instances.push(i),i},init:function(e){return this.create(e)},validateAll:function(){for(var e=!0,t=0;t0&&!t.validateAll())return i.preventDefault(),!1})})}(jQuery);
//# sourceMappingURL=entity-selector.min.js.map