/home/preegmxb/bricks.theoriginalsstudios.com/wp-content/themes/bricks/assets/js/filters.min.js
window.bricksUtils&&(window.bricksUtils.updateLiveSearchTerm=function(e,t){document.querySelectorAll(`span[data-brx-ls-term="${e}"]`).forEach((e=>{e.innerHTML=t}))},window.bricksUtils.hideLiveSearchWrapper=function(e){document.querySelectorAll(`[data-brx-ls-wrapper="${e}"]`).forEach((e=>{e.classList.remove("brx-ls-active")}))},window.bricksUtils.showLiveSearchWrapper=function(e){document.querySelectorAll(`[data-brx-ls-wrapper="${e}"]`).forEach((e=>{e.classList.add("brx-ls-active")}))},window.bricksUtils.debounce=function(e,t,r){let n;return function(){let i=this,a=arguments,c=r&&!n;clearTimeout(n),n=setTimeout((function(){n=null,r||e.apply(i,a)}),t),c&&e.apply(i,a)}},window.bricksUtils.buildTaxonomyQueryArgs=function(e,t,r){if(e.hasOwnProperty("tax_query")){if(e.tax_query.some((e=>e.taxonomy===t&&e.terms===r)))return e;e.tax_query.push({taxonomy:t,field:"slug",terms:r})}else e.tax_query=[{taxonomy:t,field:"slug",terms:r}];return e},window.bricksUtils.buildMetaQueryArgs=function(e,t){return e.hasOwnProperty("meta_query")?e.meta_query.push(t):e.meta_query=[t],e},window.bricksUtils.buildDateQueryArgs=function(e,t){return e.hasOwnProperty("date_query")?e.date_query.push(t):e.date_query=[t],e},window.bricksUtils.buildSortQueryArgs=function(e,t,r,n,i){return e.hasOwnProperty("orderby")||(e.orderby={}),n&&(e.meta_key=t),i?(e.meta_type="NUMERIC",e.orderby.meta_value_num=r):e.orderby[t]=r,e});const bricksFiltersFn=new BricksFunction({parentNode:document,selector:"[data-brx-filter]",frontEndOnly:!0,eachElement:e=>{const t=JSON.parse(e.dataset?.brxFilter)||!1;if(!t)return;const r=t?.filterId||!1,n=t?.targetQueryId||!1,i=t?.filterType||!1;if(r&&n&&i&&(t?.filterAction||!1)){if(window.bricksData.filterInstances||(window.bricksData.filterInstances={}),!window.bricksData.filterInstances[r]){switch(t.filterElement=e,t.currentValue="",t.originalValue="",i){case"search":case"select":case"datepicker":e.value&&(t.currentValue=e.value,t.originalValue=e.value);break;case"reset":case"apply":break;case"radio":let r=e.querySelector("input:checked");r&&(r=r.value,t.currentValue=r,t.originalValue=r);break;case"checkbox":const n=e.querySelectorAll("input:checked");if(n.length){let e=Array.from(n).map((e=>e.value));t.currentValue=e,t.originalValue=e}else t.currentValue=[],t.originalValue=[];const i=e.querySelector("input");i&&(t.name=i.name);break;case"pagination":t.currentValue=0,t.originalValue=1;break;case"range":const a=e.querySelector('input.min[type="number"]')||0,c=e.querySelector('input.max[type="number"]')||0;let s=[t.min,t.max];a&&(s[0]=a.value),c&&(s[1]=c.value),t.currentValue=[...s],t.originalValue=[...s]}window.bricksData.filterInstances[r]=t}e.dataset.brxFilter=!0}}});function bricksFilters(){bricksFiltersFn.run()}const bricksSearchFilterFn=new BricksFunction({parentNode:document,selector:".brxe-filter-search[data-brx-filter]",frontEndOnly:!0,eachElement:e=>{const t=Object.values(window.bricksData.filterInstances).find((t=>t.filterElement===e))||!1;if(!t)return;const r=t?.filterId||!1,n=t?.targetQueryId||!1,i=t?.filterMethod||"ajax",a=t?.filterApplyOn||"change",c=t?.filterInputDebounce||500,s=t?.filterMinChars||3;if("ajax"===i){const i=e=>{const i=e.target.value,c="Enter"===e.key;if(!c&&i===t.currentValue)return;t.currentValue=i;const l=window.bricksData.queryLoopInstances[n]||!1;if(!l)return;if(l?.isLiveSearch&&""===i)return void bricksUtils.hideLiveSearchWrapper(n);if(!c&&i.length&&i.length<s)return;if(!(c||n&&"click"!==a))return;bricksUtils.updateLiveSearchTerm(n,i);const u=bricksGetFiltersArgs(n);bricksGetQueryResult(n,u).then((e=>{bricksDisplayQueryResult(r,n,e)})).catch((e=>{console.log("Error",e)}))};"change"===a?e.addEventListener("keyup",bricksUtils.debounce(i,c)):(e.addEventListener("input",i),e.addEventListener("keyup",(e=>{"Enter"===e.key&&i(e)}))),e.addEventListener("focus",(e=>{const t=e.target.value,r=window.bricksData.queryLoopInstances[n]||!1;r&&r?.isLiveSearch&&""!==t&&bricksUtils.showLiveSearchWrapper(n)}))}}});function bricksSearchFilter(){bricksSearchFilterFn.run()}const bricksSelectFilterFn=new BricksFunction({parentNode:document,selector:".brxe-filter-select[data-brx-filter]",frontEndOnly:!0,eachElement:e=>{const t=Object.values(window.bricksData.filterInstances).find((t=>t.filterElement===e))||!1;if(!t)return;const r=t?.filterId||!1,n=t?.targetQueryId||!1,i=t?.filterMethod||"ajax",a=t?.filterApplyOn||"change";n&&"ajax"===i&&e.addEventListener("change",(function(e){const i=e.target.value;if(i===t.currentValue)return;if(t.currentValue=i,"change"!==a)return;if(!(window.bricksData.queryLoopInstances[n]||!1))return;const c=bricksGetFiltersArgs(n);bricksGetQueryResult(n,c).then((e=>{bricksDisplayQueryResult(r,n,e)})).catch((e=>{console.log("Error",e)}))}))}});function bricksSelectFilter(){bricksSelectFilterFn.run()}const bricksRadioFilterFn=new BricksFunction({parentNode:document,selector:".brxe-filter-radio[data-brx-filter] input",frontEndOnly:!0,eachElement:e=>{const t=e.closest("[data-brx-filter]")||!1;if(!t)return;const r=Object.values(window.bricksData.filterInstances).find((e=>e.filterElement===t))||!1;if(!r)return;const n=r?.filterId||!1,i=r?.targetQueryId||!1,a=r?.filterMethod||"ajax",c=r?.filterApplyOn||"change";i&&"ajax"===a&&e.addEventListener("change",(function(t){const a=t.target.value;if(a===r.currentValue)return;if(r.currentValue=a,r.filterElement.name=e.name,"change"!==c)return;if(!(window.bricksData.queryLoopInstances[i]||!1))return;const s=bricksGetFiltersArgs(i);bricksGetQueryResult(i,s).then((e=>{bricksDisplayQueryResult(n,i,e)})).catch((e=>{console.log("Error",e)}))}))}});function bricksRadioFilter(){bricksRadioFilterFn.run()}const bricksRangeFilterFn=new BricksFunction({parentNode:document,selector:'.brxe-filter-range[data-brx-filter] input[type="number"]',frontEndOnly:!0,eachElement:e=>{const t=e.closest("[data-brx-filter]")||!1;if(!t)return;const r=Object.values(window.bricksData.filterInstances).find((e=>e.filterElement===t))||!1;if(!r)return;const n=r?.filterId||!1,i=r?.targetQueryId||!1,a=r?.filterMethod||"ajax",c=r?.filterApplyOn||"change";i&&"ajax"===a&&e.addEventListener("change",(function(a){const s=e.classList.contains("min")?"min":"max";let l="min"===s?e.value:t.querySelector('input.min[type="number"]').value||0,u="max"===s?e.value:t.querySelector('input.max[type="number"]').value||0;if(l=parseInt(l),u=parseInt(u),isNaN(l)||isNaN(u))return;l>u&&("min"===s?(l=u,e.value=l):(u=l,e.value=u)),l<r.min?(l=r.min,e.value=l):l>r.max&&(l=r.max,e.value=l);let o=[l,u];if(o===r.currentValue)return;if(r.currentValue=[...o],"change"!==c)return;if(!(window.bricksData.queryLoopInstances[i]||!1))return;const d=bricksGetFiltersArgs(i);bricksGetQueryResult(i,d).then((e=>{bricksDisplayQueryResult(n,i,e)})).catch((e=>{console.log("Error",e)}))}))}});function bricksRangeFilter(){bricksRangeFilterFn.run()}const bricksRangeSliderUIFn=new BricksFunction({parentNode:document,selector:'.brxe-filter-range[data-brx-filter] input[type="range"]',frontEndOnly:!0,eachElement:e=>{const t=e.closest("[data-brx-filter]")||!1;if(!t)return;const r=Object.values(window.bricksData.filterInstances).find((e=>e.filterElement===t))||!1;if(!r)return;const n=(e,n)=>{const i=t.querySelector(`.value-wrap .${e} .value`);i&&(n=parseInt(n)||0,r?.thousands&&r?.separator?n=n.toLocaleString("en-US").replaceAll(",",r?.separator):r?.thousands&&(n=n.toLocaleString("en-US")),i.innerText=n)};e.addEventListener("input",(function(t){const r=parseInt(t.target.value)||0,i=e.classList.contains("min")?"lower":"upper";n(i,r)})),e.addEventListener("change",(function(i){const a=e.classList.contains("min")?"lower":"upper";let c="lower"===a?e.value:t.querySelector('input.min[type="range"]').value||0,s="upper"===a?e.value:t.querySelector('input.max[type="range"]').value||0;c=parseInt(c),s=parseInt(s),c>s&&("lower"===a?(c=s,e.value=c):(s=c,e.value=s)),(c<r.min||c>r.max)&&(e.value=c),n(a,e.value);const l=t.querySelector('input.min[type="number"]');l&&(l.value=c);const u=t.querySelector('input.max[type="number"]');u&&(u.value=s),"lower"===a?l.dispatchEvent(new Event("change")):u.dispatchEvent(new Event("change"))}))}});function bricksRangeSliderUI(){bricksRangeSliderUIFn.run()}const bricksCheckboxFilterFn=new BricksFunction({parentNode:document,selector:".brxe-filter-checkbox[data-brx-filter] input",frontEndOnly:!0,eachElement:e=>{const t=e.closest("[data-brx-filter]")||!1;if(!t)return;const r=Object.values(window.bricksData.filterInstances).find((e=>e.filterElement===t))||!1;if(!r)return;const n=r?.filterId||!1,i=r?.targetQueryId||!1,a=r?.filterMethod||"ajax",c=r?.filterApplyOn||"change";i&&"ajax"===a&&e.addEventListener("change",(function(t){const a=t.target.value,s=[...r.currentValue]||[],l=s.indexOf(a);if(!t.target.checked&&l>-1&&l>-1&&s.splice(l,1),t.target.checked&&-1===l&&s.push(a),r.currentValue=[...s],r.filterElement.name=e.name,"change"!==c)return;if(!(window.bricksData.queryLoopInstances[i]||!1))return;const u=bricksGetFiltersArgs(i);bricksGetQueryResult(i,u).then((e=>{bricksDisplayQueryResult(n,i,e)})).catch((e=>{console.log("Error",e)}))}))}});function bricksCheckboxFilter(){bricksCheckboxFilterFn.run()}const bricksDatePickerFilterFn=new BricksFunction({parentNode:document,selector:".brxe-filter-datepicker[data-brx-filter]",frontEndOnly:!0,eachElement:e=>{const t=Object.values(window.bricksData.filterInstances).find((t=>t.filterElement===e))||!1;if(!t)return;const r=t?.filterId||!1,n=t?.targetQueryId||!1,i=t?.filterMethod||"ajax",a=t?.filterApplyOn||"change";if(n&&"ajax"===i){let i=e.dataset?.bricksDatepickerOptions||!1;i&&(t.datepicker&&t.datepicker.destroy(),i=JSON.parse(i),i.disableMobile=!0,i.onReady=(t,r,n)=>{const i=e.getAttribute("aria-label")||"Date";n.altInput.setAttribute("aria-label",i),e.id&&(n.altInput.setAttribute("id",e.id),e.removeAttribute("id"))},i.onChange=(e,i,c)=>{const s=c.config.mode;if("single"===s){if(!Array.isArray(e)||1!==e.length)return}else if("range"===s&&(!Array.isArray(e)||2!==e.length))return;if(i===t.currentValue)return;if(t.currentValue=i,"change"!==a)return;if(!(window.bricksData.queryLoopInstances[n]||!1))return;const l=bricksGetFiltersArgs(n);bricksGetQueryResult(n,l).then((e=>{bricksDisplayQueryResult(r,n,e)})).catch((e=>{console.log("Error",e)}))},t.datepicker=flatpickr(e,i))}}});function bricksDatePickerFilter(){bricksDatePickerFilterFn.run()}const bricksResetFilterFn=new BricksFunction({parentNode:document,selector:".brxe-filter-submit[type='reset'][data-brx-filter]",frontEndOnly:!0,eachElement:e=>{const t=Object.values(window.bricksData.filterInstances).find((t=>t.filterElement===e))||!1;if(!t)return;const r=t?.filterId||!1,n=t?.targetQueryId||!1;n&&"ajax"===(t?.filterMethod||"ajax")&&e.addEventListener("click",(function(e){const t=Object.values(window.bricksData.filterInstances).filter((e=>e.targetQueryId===n)),i=window.bricksData.queryLoopInstances[n]||!1;if(!t.length)return;if(t.forEach((e=>{const t=e.filterType,r=e.filterElement,i=e.originalValue;switch(t){case"search":r.value=i,e.currentValue=i,bricksUtils.updateLiveSearchTerm(n,i);break;case"select":r.value=i,e.currentValue=i;break;case"pagination":e.currentValue=0;break;case"radio":r.value=i,e.currentValue=i;r.querySelectorAll("input").forEach((e=>{e.value!==i?e.checked=!1:e.checked=!0}));break;case"checkbox":e.currentValue=[...i];r.querySelectorAll("input").forEach((e=>{-1===i.indexOf(e.value)?e.checked=!1:e.checked=!0}));break;case"datepicker":const t=e.datepicker||!1;if(!t)return;t.clear(),t.setDate(i,!1),e.currentValue=i;break;case"range":e.currentValue=[...i]}})),i?.isLiveSearch)return void bricksUtils.hideLiveSearchWrapper(n);const a=bricksGetFiltersArgs(n);bricksGetQueryResult(n,a).then((e=>{bricksDisplayQueryResult(r,n,e)})).catch((e=>{console.log("Error",e)}))}))}});function bricksResetFilter(){bricksResetFilterFn.run()}const bricksApplyFilterFn=new BricksFunction({parentNode:document,selector:".brxe-filter-submit[type='submit'][data-brx-filter]",frontEndOnly:!0,eachElement:e=>{const t=Object.values(window.bricksData.filterInstances).find((t=>t.filterElement===e))||!1;if(!t)return;const r=t?.filterId||!1,n=t?.targetQueryId||!1;n&&"ajax"===(t?.filterMethod||"ajax")&&e.addEventListener("click",(function(e){if(!(window.bricksData.queryLoopInstances[n]||!1))return;const t=bricksGetFiltersArgs(n);bricksGetQueryResult(n,t).then((e=>{bricksDisplayQueryResult(r,n,e)})).catch((e=>{console.log("Error",e)}))}))}});function bricksApplyFilter(){bricksApplyFilterFn.run()}const bricksPaginationFilterFn=new BricksFunction({parentNode:document,selector:".brxe-pagination[data-brx-filter] a",frontEndOnly:!0,eachElement:e=>{const t=e.closest("[data-brx-filter]")||!1;if(!t)return;const r=Object.values(window.bricksData.filterInstances).find((e=>e.filterElement===t))||!1;if(!r)return;const n=r?.filterId||!1,i=r?.targetQueryId||!1;"ajax"===(r?.filterMethod||"ajax")&&e.addEventListener("click",(function(e){e.preventDefault();const t=e.currentTarget;if(!(window.bricksData.queryLoopInstances[i]||!1))return;const r=t.href||!1;if(!r)return;let a=1;const c=new URL(r);if(c.searchParams.has("paged"))a=parseInt(c.searchParams.get("paged"));else{const e=c.pathname.split("/").filter((e=>""!==e));a=parseInt(e[e.length-1]),isNaN(a)&&(a=1)}if(a<1)return;((e,t)=>{const r=Object.values(window.bricksData.filterInstances).filter((t=>t.targetQueryId===e&&"pagination"===t.filterType));r.length&&r.forEach((e=>{e.currentValue=t}))})(i,a);const s=bricksGetFiltersArgs(i);bricksGetQueryResult(i,s).then((e=>{bricksDisplayQueryResult(n,i,e),r&&window.history.pushState({},"",t.href)})).catch((e=>{console.log("Error",e)}))}))}});function bricksPaginationFilter(){bricksPaginationFilterFn.run()}function bricksGetFiltersArgs(e){if(!e)return!1;const t=Object.values(window.bricksData.filterInstances).filter((t=>t.targetQueryId===e));if(!t.length)return!1;let r={};return window.bricksData.pageFilters&&Object.keys(window.bricksData.pageFilters).length>0&&window.bricksData.pageFilters.constructor===Object&&Object.keys(window.bricksData.pageFilters).forEach((e=>{r=bricksUtils.buildTaxonomyQueryArgs(r,e,window.bricksData.pageFilters[e])})),t.forEach((e=>{const t=e.filterType;let n=e.filterElement;const i=e.filterSource||!1,a=e.filterAction||!1;let c=e.currentValue;if("sort"===a){if(!["select","radio"].includes(t))return;if("radio"===t&&(c=e.currentValue||!1,n=e.filterElement.querySelector("input:checked")),!c||!n)return;let i="",a="",s=!1,l=!1;c.startsWith("brx_meta_")?(c=c.replace("brx_meta_",""),s=!0):c.startsWith("brx_metanum_")&&(c=c.replace("brx_metanum_",""),s=!0,l=!0),c.endsWith("_ASC")?(i=c.replace("_ASC",""),a="ASC"):c.endsWith("_DESC")&&(i=c.replace("_DESC",""),a="DESC"),""!==i&&""!==a&&(r=bricksUtils.buildSortQueryArgs(r,i,a,s,l))}else if("filter"===a)switch(t){case"search":if(!c.length)return;r[n.name]=c;break;case"select":if(!c.length)return;if("taxonomy"===i)r=bricksUtils.buildTaxonomyQueryArgs(r,n.name,c);else if("customField"===i){let e=c.split("|");r.hasOwnProperty("meta_query")?r.meta_query.push({key:e[0],value:e[1],compare:e[2]||"="}):r.meta_query=[{key:e[0],value:e[1],compare:e[2]||"="}]}else r[n.name]=c;break;case"datepicker":{if(!c.length)return;const t=e.fieldInfo||!1;if(!t)return;t.field_type;let n=t.field_key||"date",a=t.operator||"is";const s=c.split(e.datepicker?.l10n?.rangeSeparator||" - ");let l=[],u=[];if(s.forEach(((t,r)=>{let n=e.datepicker.parseDate(t,e.datepicker.config.altFormat),i=n.getMonth()+1,a=n.getDate(),c=n.getFullYear();if(u[r]={year:c,month:i,day:a},i<10&&(i="0"+i),a<10&&(a="0"+a),l[r]=`${c}-${i}-${a}`,e.datepicker.config.enableTime){let e=n.getHours(),t=n.getMinutes();e<10&&(e="0"+e),t<10&&(t="0"+t),u[r].hour=e,u[r].minute=t,l[r]+=` ${e}:${t}`}})),"wpField"===i){let e={};1===u.length?e="is"===a?u[0]:{[a]:u[0]}:2===u.length&&(e={after:u[0],before:u[1],inclusive:!0}),r=bricksUtils.buildDateQueryArgs(r,e)}else if("customField"===i){let t={};1===l.length?(t={key:n,value:l[0],compare:"=",type:e.datepicker.config.enableTime?"DATETIME":"DATE"},"is"!==a&&(t.compare="before"===a?"<=":">=")):2===l.length&&l.forEach(((r,i)=>{t[i]={key:n,value:r,compare:0===i?">=":"<=",type:e.datepicker.config.enableTime?"DATETIME":"DATE"}})),r=bricksUtils.buildMetaQueryArgs(r,t)}break}case"radio":if(c=e.currentValue||!1,!c)return;if(n=e.filterElement.querySelector(`input[value="${c}"]`),!n)return;if("taxonomy"===i)r=bricksUtils.buildTaxonomyQueryArgs(r,n.name,c);else if("customField"===i&&""!==c){let e=c.split("|"),t={key:e[0],value:e[1],compare:e[2]||"="};"EXISTS"!==e[2]&&"NOT EXISTS"!==e[2]||(t={key:e[0],compare:e[2]}),r.hasOwnProperty("meta_query")?r.meta_query.push(t):r.meta_query=[t]}else r[n.name]=c;break;case"range":{if(!c.length&&2!==c.length)return;let t=parseInt(c[0]),n=parseInt(c[1]);if(isNaN(t)||isNaN(n)||t>n)return;if(t===e.min&&n===e.max)return;const a=e.fieldInfo||!1;if(!a)return;a.field_type;let s=a.field_key??!1;if(!s)return;if("customField"===i){let e={key:s,value:[t,n],compare:"BETWEEN",type:"NUMERIC"};r=bricksUtils.buildMetaQueryArgs(r,e)}break}case"checkbox":if(c=e.currentValue||!1,!c.length)return;if("taxonomy"===i)r=bricksUtils.buildTaxonomyQueryArgs(r,e.name,c);else if("customField"===i&&c.length>0)c.forEach((e=>{let t=e.split("|");if(r.hasOwnProperty("meta_query")){let e=r.meta_query.findIndex((e=>e.key===t[0]));e>-1?r.meta_query[e].value.push(t[1]):r.meta_query.push({key:t[0],value:[t[1]],compare:t[2]||"IN"})}else r.meta_query=[{key:t[0],value:[t[1]],compare:t[2]||"IN"}]}));else switch(n.name){case"p":r.post__in=c;break;case"author":r.author__in=c;break;default:r[n.name]=c}break;case"pagination":if(c=e.currentValue||1,c<1)return;r.paged=c}})),r}function bricksLiveSearchWrappersInit(){document.addEventListener("bricks/ajax/start",(function(e){const t=e.detail.queryId||!1;if(!t)return;const r=window.bricksData.queryLoopInstances[t]||!1;r?.isLiveSearch?(bricksUtils.showLiveSearchWrapper(t),window.bricksData.lastActiveLiveSearchQueryId=t):window.bricksData.lastActiveLiveSearchQueryId=!1})),document.addEventListener("click",(e=>{const t=e.target,r=window.bricksData.lastActiveLiveSearchQueryId||!1;if(!r)return;if(Object.values(window.bricksData.filterInstances).filter((e=>e.targetQueryId===r&&e.filterElement===t)).length)return;const n=t.closest("[data-brx-ls-wrapper]");n?.dataset?.brxLsWrapper!==r&&bricksUtils.hideLiveSearchWrapper(r)}))}function bricksDisableFiltersOnLoad(){document.addEventListener("bricks/ajax/start",(function(e){const t=e.detail.queryId||!1;if(!t)return;if(!(window.bricksData.queryLoopInstances[t]||!1))return;const r=Object.values(window.bricksData.filterInstances).filter((e=>e.targetQueryId===t));r.length&&r.forEach((e=>{if("search"===e.filterType)return;const t=e.filterElement;t.disabled=!0,t.classList.add("brx-filter-disabled"),t.querySelectorAll("input").forEach((e=>{e.disabled=!0}))}))})),document.addEventListener("bricks/ajax/end",(function(e){const t=e.detail.queryId||!1;if(!t)return;if(!(window.bricksData.queryLoopInstances[t]||!1))return;const r=Object.values(window.bricksData.filterInstances).filter((e=>e.targetQueryId===t));r.length&&r.forEach((e=>{const t=e.filterElement;t.disabled=!1,t.classList.remove("brx-filter-disabled"),t.querySelectorAll("input").forEach((e=>{e.disabled=!1}))}))}))}document.addEventListener("DOMContentLoaded",(function(e){bricksFilters(),bricksLiveSearchWrappersInit(),bricksSearchFilter(),bricksSelectFilter(),bricksResetFilter(),bricksApplyFilter(),bricksPaginationFilter(),bricksRadioFilter(),bricksRangeFilter(),bricksRangeSliderUI(),bricksCheckboxFilter(),bricksDatePickerFilter(),bricksDisableFiltersOnLoad()}));