@dcupl/common 1.10.2 → 1.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/common.umd.js +1 -1
- package/dist/browser/common.umd.js.map +1 -1
- package/dist/esm/changeDetection.d.ts +9 -5
- package/dist/esm/changeDetection.js +45 -16
- package/dist/esm/changeDetection.js.map +1 -1
- package/dist/esm/helper.d.ts +15 -0
- package/dist/esm/helper.js +39 -0
- package/dist/esm/helper.js.map +1 -1
- package/dist/esm/performance.js +1 -1
- package/dist/esm/performance.js.map +1 -1
- package/dist/esm/query-builder.d.ts +5 -0
- package/dist/esm/query-builder.js +51 -1
- package/dist/esm/query-builder.js.map +1 -1
- package/dist/esm/types/app-loader.types.d.ts +1 -0
- package/dist/node/index.cjs.js +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var r=t();for(var n in r)("object"==typeof exports?exports:e)[n]=r[n]}}(this,(()=>(()=>{"use strict";var e={d:(t,r)=>{for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};function r(e){return function(e){let t=0;for(let r=0;r<e.length;r++)t=(t<<5)-t+e.charCodeAt(r),t|=0;return t.toString(16)}(n(e))}function n(e){if("object"!=typeof e||null===e)return String(e);if(Array.isArray(e))return"["+e.map(n).join(",")+"]";const t=Object.keys(e).sort();let r="{";for(let o=0;o<t.length;o++){const u=t[o];r+=u+":"+n(e[u]),o<t.length-1&&(r+=",")}return r+="}",r}e.r(t),e.d(t,{AnalyticsController:()=>u,CacheController:()=>kt,ChangeDetector:()=>zt,DatePropertyTypes:()=>go,DcuplQueryBuilder:()=>rn,DcuplQueryOperatorsAsArray:()=>vo,DependencyGraph:()=>Gt,IndicesController:()=>sn,NumberPropertyTypes:()=>ho,PropertyTypesAsArray:()=>yo,QueryManager:()=>co,ScriptController:()=>fo,clone:()=>Nt,computeSuggestions:()=>Rt,escapeRegExp:()=>Ft,evaluateTemplate:()=>lo,generateBooleanQuery:()=>gn,generateKey:()=>Tt,generateNumberAndDateQuery:()=>vn,generateReferenceQuery:()=>bn,generateTextQuery:()=>dn,getAggregation:()=>Lt,getDateConstraintUid:()=>Mt,getDcuplPropertyTypeForNativeType:()=>hn,getDistinct:()=>Jt,getFacets:()=>on,getFilterEntryId:()=>St,getNumberConstraintUid:()=>Ct,getPropertiesForData:()=>ln,groupBy:()=>Et,isFloat:()=>yn,isInt:()=>pn,isValidQueryStatement:()=>mn,parseTemplate:()=>po,perf:()=>o,pivot:()=>cn,removeTrailingSlash:()=>$t,trigger:()=>Bt,unescapeRegExp:()=>Dt,uniqBy:()=>It});const o={now:()=>"undefined"!=typeof performance&&performance.now?performance.now():(new Date).getTime(),mark:e=>{"undefined"!=typeof performance&&performance.mark&&performance.mark(e)},measure:(e,t,r)=>{"undefined"!=typeof performance&&performance.measure&&performance.measure(e,t,r)},getEntriesByName(e){if("undefined"!=typeof performance&&performance.getEntriesByName)return performance.getEntriesByName(e)},getEntriesByType(e){if("undefined"!=typeof performance&&performance.getEntriesByType)return performance.getEntriesByType(e)}};class u{data;enabled=!1;constructor(){}init(e){this.data=new Map,this.enabled=e}set(e){if(!this.enabled)return e.value;const t=this.getKey(e.value.name,e.context);return this.data.set(t,e.value),this.data.get(t)}mark(e){if(!this.enabled)return;const t=this.getKey(e.name,e.context),r={name:e.name,type:"mark",value:o.now(),createdAt:Date.now()};return this.data.set(t,r),r}measure(e){if(!this.enabled)return;const t=this.getKey(e.name,e.context),r=this.data.get(this.getKey(e.start,e.context)),n=this.data.get(this.getKey(e.end,e.context));if(!r||!n)return;const o=n.value-r.value,u=Math.round(100*o)/100,i=this.data.get(t);if(i&&e.sum){const e=i.value+u,r={...i,value:e};return this.data.set(t,r),r}const s={name:e.name,type:"measure",value:u,createdAt:Date.now()};return e.detail&&(s.detail=e.detail),this.data.set(t,s),s}update(e){if(!this.enabled)return e.value;const t=this.getKey(e.value.name,e.context),r=this.data.get(t);if(r){const n={...r,...e.value};this.data.set(t,n)}else this.data.set(t,e.value);return this.data.get(t)}getResourceInfosFromPerformanceAPI(){return"undefined"==typeof performance?[]:o.getEntriesByType("resource")}get(e){const t=this.getKey(e.name,e.context);return this.data.get(t)}getByType(e){return Array.from(this.data.values()).filter((t=>t.type===e))}getByName(e){return Array.from(this.data.values()).filter((t=>t.name===e))}clear(){this.data.clear()}getKey(e,t){return t?e+"_"+r(t):e}}const i=function(e,t){return e===t||e!=e&&t!=t},s=function(e,t){for(var r=e.length;r--;)if(i(e[r][0],t))return r;return-1};var a=Array.prototype.splice;function c(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}c.prototype.clear=function(){this.__data__=[],this.size=0},c.prototype.delete=function(e){var t=this.__data__,r=s(t,e);return!(r<0||(r==t.length-1?t.pop():a.call(t,r,1),--this.size,0))},c.prototype.get=function(e){var t=this.__data__,r=s(t,e);return r<0?void 0:t[r][1]},c.prototype.has=function(e){return s(this.__data__,e)>-1},c.prototype.set=function(e,t){var r=this.__data__,n=s(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this};const f=c,l="object"==typeof global&&global&&global.Object===Object&&global;var p="object"==typeof self&&self&&self.Object===Object&&self;const y=l||p||Function("return this")(),h=y.Symbol;var d=Object.prototype,g=d.hasOwnProperty,v=d.toString,b=h?h.toStringTag:void 0;var m=Object.prototype.toString;var j=h?h.toStringTag:void 0;const _=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":j&&j in Object(e)?function(e){var t=g.call(e,b),r=e[b];try{e[b]=void 0;var n=!0}catch(e){}var o=v.call(e);return n&&(t?e[b]=r:delete e[b]),o}(e):function(e){return m.call(e)}(e)},w=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)},A=function(e){if(!w(e))return!1;var t=_(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t},q=y["__core-js_shared__"];var x,O=(x=/[^.]+$/.exec(q&&q.keys&&q.keys.IE_PROTO||""))?"Symbol(src)_1."+x:"";var K=Function.prototype.toString;const Q=function(e){if(null!=e){try{return K.call(e)}catch(e){}try{return e+""}catch(e){}}return""};var k=/^\[object .+?Constructor\]$/,S=Function.prototype,C=Object.prototype,M=S.toString,I=C.hasOwnProperty,E=RegExp("^"+M.call(I).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");const T=function(e){return!(!w(e)||(t=e,O&&O in t))&&(A(e)?E:k).test(Q(e));var t},$=function(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return T(r)?r:void 0},F=$(y,"Map"),D=$(Object,"create");var z=Object.prototype.hasOwnProperty;var N=Object.prototype.hasOwnProperty;function P(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}P.prototype.clear=function(){this.__data__=D?D(null):{},this.size=0},P.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},P.prototype.get=function(e){var t=this.__data__;if(D){var r=t[e];return"__lodash_hash_undefined__"===r?void 0:r}return z.call(t,e)?t[e]:void 0},P.prototype.has=function(e){var t=this.__data__;return D?void 0!==t[e]:N.call(t,e)},P.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=D&&void 0===t?"__lodash_hash_undefined__":t,this};const B=P,R=function(e,t){var r,n,o=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?o["string"==typeof t?"string":"hash"]:o.map};function G(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}G.prototype.clear=function(){this.size=0,this.__data__={hash:new B,map:new(F||f),string:new B}},G.prototype.delete=function(e){var t=R(this,e).delete(e);return this.size-=t?1:0,t},G.prototype.get=function(e){return R(this,e).get(e)},G.prototype.has=function(e){return R(this,e).has(e)},G.prototype.set=function(e,t){var r=R(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this};const U=G;function V(e){var t=this.__data__=new f(e);this.size=t.size}V.prototype.clear=function(){this.__data__=new f,this.size=0},V.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},V.prototype.get=function(e){return this.__data__.get(e)},V.prototype.has=function(e){return this.__data__.has(e)},V.prototype.set=function(e,t){var r=this.__data__;if(r instanceof f){var n=r.__data__;if(!F||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new U(n)}return r.set(e,t),this.size=r.size,this};const L=V,W=function(){try{var e=$(Object,"defineProperty");return e({},"",{}),e}catch(e){}}(),H=function(e,t,r){"__proto__"==t&&W?W(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r};var Z=Object.prototype.hasOwnProperty;const J=function(e,t,r){var n=e[t];Z.call(e,t)&&i(n,r)&&(void 0!==r||t in e)||H(e,t,r)},X=function(e,t,r,n){var o=!r;r||(r={});for(var u=-1,i=t.length;++u<i;){var s=t[u],a=n?n(r[s],e[s],s,r,e):void 0;void 0===a&&(a=e[s]),o?H(r,s,a):J(r,s,a)}return r},Y=function(e){return null!=e&&"object"==typeof e},ee=function(e){return Y(e)&&"[object Arguments]"==_(e)};var te=Object.prototype,re=te.hasOwnProperty,ne=te.propertyIsEnumerable;const oe=ee(function(){return arguments}())?ee:function(e){return Y(e)&&re.call(e,"callee")&&!ne.call(e,"callee")},ue=Array.isArray;var ie="object"==typeof exports&&exports&&!exports.nodeType&&exports,se=ie&&"object"==typeof module&&module&&!module.nodeType&&module,ae=se&&se.exports===ie?y.Buffer:void 0;const ce=(ae?ae.isBuffer:void 0)||function(){return!1};var fe=/^(?:0|[1-9]\d*)$/;const le=function(e,t){var r=typeof e;return!!(t=null==t?9007199254740991:t)&&("number"==r||"symbol"!=r&&fe.test(e))&&e>-1&&e%1==0&&e<t},pe=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991};var ye={};ye["[object Float32Array]"]=ye["[object Float64Array]"]=ye["[object Int8Array]"]=ye["[object Int16Array]"]=ye["[object Int32Array]"]=ye["[object Uint8Array]"]=ye["[object Uint8ClampedArray]"]=ye["[object Uint16Array]"]=ye["[object Uint32Array]"]=!0,ye["[object Arguments]"]=ye["[object Array]"]=ye["[object ArrayBuffer]"]=ye["[object Boolean]"]=ye["[object DataView]"]=ye["[object Date]"]=ye["[object Error]"]=ye["[object Function]"]=ye["[object Map]"]=ye["[object Number]"]=ye["[object Object]"]=ye["[object RegExp]"]=ye["[object Set]"]=ye["[object String]"]=ye["[object WeakMap]"]=!1;const he=function(e){return function(t){return e(t)}};var de="object"==typeof exports&&exports&&!exports.nodeType&&exports,ge=de&&"object"==typeof module&&module&&!module.nodeType&&module,ve=ge&&ge.exports===de&&l.process;const be=function(){try{return ge&&ge.require&&ge.require("util").types||ve&&ve.binding&&ve.binding("util")}catch(e){}}();var me=be&&be.isTypedArray;const je=me?he(me):function(e){return Y(e)&&pe(e.length)&&!!ye[_(e)]};var _e=Object.prototype.hasOwnProperty;const we=function(e,t){var r=ue(e),n=!r&&oe(e),o=!r&&!n&&ce(e),u=!r&&!n&&!o&&je(e),i=r||n||o||u,s=i?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],a=s.length;for(var c in e)!t&&!_e.call(e,c)||i&&("length"==c||o&&("offset"==c||"parent"==c)||u&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||le(c,a))||s.push(c);return s};var Ae=Object.prototype;const qe=function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Ae)},xe=function(e,t){return function(r){return e(t(r))}},Oe=xe(Object.keys,Object);var Ke=Object.prototype.hasOwnProperty;const Qe=function(e){if(!qe(e))return Oe(e);var t=[];for(var r in Object(e))Ke.call(e,r)&&"constructor"!=r&&t.push(r);return t},ke=function(e){return null!=e&&pe(e.length)&&!A(e)},Se=function(e){return ke(e)?we(e):Qe(e)};var Ce=Object.prototype.hasOwnProperty;const Me=function(e){if(!w(e))return function(e){var t=[];if(null!=e)for(var r in Object(e))t.push(r);return t}(e);var t=qe(e),r=[];for(var n in e)("constructor"!=n||!t&&Ce.call(e,n))&&r.push(n);return r},Ie=function(e){return ke(e)?we(e,!0):Me(e)};var Ee="object"==typeof exports&&exports&&!exports.nodeType&&exports,Te=Ee&&"object"==typeof module&&module&&!module.nodeType&&module,$e=Te&&Te.exports===Ee?y.Buffer:void 0,Fe=$e?$e.allocUnsafe:void 0;const De=function(){return[]};var ze=Object.prototype.propertyIsEnumerable,Ne=Object.getOwnPropertySymbols;const Pe=Ne?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var r=-1,n=null==e?0:e.length,o=0,u=[];++r<n;){var i=e[r];t(i,r,e)&&(u[o++]=i)}return u}(Ne(e),(function(t){return ze.call(e,t)})))}:De,Be=function(e,t){for(var r=-1,n=t.length,o=e.length;++r<n;)e[o+r]=t[r];return e},Re=xe(Object.getPrototypeOf,Object),Ge=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)Be(t,Pe(e)),e=Re(e);return t}:De,Ue=function(e,t,r){var n=t(e);return ue(e)?n:Be(n,r(e))},Ve=function(e){return Ue(e,Se,Pe)},Le=function(e){return Ue(e,Ie,Ge)},We=$(y,"DataView"),He=$(y,"Promise"),Ze=$(y,"Set"),Je=$(y,"WeakMap");var Xe="[object Map]",Ye="[object Promise]",et="[object Set]",tt="[object WeakMap]",rt="[object DataView]",nt=Q(We),ot=Q(F),ut=Q(He),it=Q(Ze),st=Q(Je),at=_;(We&&at(new We(new ArrayBuffer(1)))!=rt||F&&at(new F)!=Xe||He&&at(He.resolve())!=Ye||Ze&&at(new Ze)!=et||Je&&at(new Je)!=tt)&&(at=function(e){var t=_(e),r="[object Object]"==t?e.constructor:void 0,n=r?Q(r):"";if(n)switch(n){case nt:return rt;case ot:return Xe;case ut:return Ye;case it:return et;case st:return tt}return t});const ct=at;var ft=Object.prototype.hasOwnProperty;const lt=y.Uint8Array,pt=function(e){var t=new e.constructor(e.byteLength);return new lt(t).set(new lt(e)),t};var yt=/\w*$/;var ht=h?h.prototype:void 0,dt=ht?ht.valueOf:void 0;const gt=function(e,t,r){var n,o,u,i=e.constructor;switch(t){case"[object ArrayBuffer]":return pt(e);case"[object Boolean]":case"[object Date]":return new i(+e);case"[object DataView]":return function(e,t){var r=t?pt(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}(e,r);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return function(e,t){var r=t?pt(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}(e,r);case"[object Map]":case"[object Set]":return new i;case"[object Number]":case"[object String]":return new i(e);case"[object RegExp]":return(u=new(o=e).constructor(o.source,yt.exec(o))).lastIndex=o.lastIndex,u;case"[object Symbol]":return n=e,dt?Object(dt.call(n)):{}}};var vt=Object.create;const bt=function(){function e(){}return function(t){if(!w(t))return{};if(vt)return vt(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();var mt=be&&be.isMap;const jt=mt?he(mt):function(e){return Y(e)&&"[object Map]"==ct(e)};var _t=be&&be.isSet;const wt=_t?he(_t):function(e){return Y(e)&&"[object Set]"==ct(e)};var At="[object Arguments]",qt="[object Function]",xt="[object Object]",Ot={};Ot[At]=Ot["[object Array]"]=Ot["[object ArrayBuffer]"]=Ot["[object DataView]"]=Ot["[object Boolean]"]=Ot["[object Date]"]=Ot["[object Float32Array]"]=Ot["[object Float64Array]"]=Ot["[object Int8Array]"]=Ot["[object Int16Array]"]=Ot["[object Int32Array]"]=Ot["[object Map]"]=Ot["[object Number]"]=Ot[xt]=Ot["[object RegExp]"]=Ot["[object Set]"]=Ot["[object String]"]=Ot["[object Symbol]"]=Ot["[object Uint8Array]"]=Ot["[object Uint8ClampedArray]"]=Ot["[object Uint16Array]"]=Ot["[object Uint32Array]"]=!0,Ot["[object Error]"]=Ot[qt]=Ot["[object WeakMap]"]=!1;const Kt=function e(t,r,n,o,u,i){var s,a=1&r,c=2&r,f=4&r;if(n&&(s=u?n(t,o,u,i):n(t)),void 0!==s)return s;if(!w(t))return t;var l=ue(t);if(l){if(s=function(e){var t=e.length,r=new e.constructor(t);return t&&"string"==typeof e[0]&&ft.call(e,"index")&&(r.index=e.index,r.input=e.input),r}(t),!a)return function(e,t){var r=-1,n=e.length;for(t||(t=Array(n));++r<n;)t[r]=e[r];return t}(t,s)}else{var p=ct(t),y=p==qt||"[object GeneratorFunction]"==p;if(ce(t))return function(e,t){if(t)return e.slice();var r=e.length,n=Fe?Fe(r):new e.constructor(r);return e.copy(n),n}(t,a);if(p==xt||p==At||y&&!u){if(s=c||y?{}:function(e){return"function"!=typeof e.constructor||qe(e)?{}:bt(Re(e))}(t),!a)return c?function(e,t){return X(e,Ge(e),t)}(t,function(e,t){return e&&X(t,Ie(t),e)}(s,t)):function(e,t){return X(e,Pe(e),t)}(t,function(e,t){return e&&X(t,Se(t),e)}(s,t))}else{if(!Ot[p])return u?t:{};s=gt(t,p,a)}}i||(i=new L);var h=i.get(t);if(h)return h;i.set(t,s),wt(t)?t.forEach((function(o){s.add(e(o,r,n,o,t,i))})):jt(t)&&t.forEach((function(o,u){s.set(u,e(o,r,n,u,t,i))}));var d=l?void 0:(f?c?Le:Ve:c?Ie:Se)(t);return function(e,t){for(var r=-1,n=null==e?0:e.length;++r<n&&!1!==t(e[r],r,e););}(d||t,(function(o,u){d&&(o=t[u=o]),J(s,u,e(o,r,n,u,t,i))})),s},Qt=function(e){return Kt(e,5)};class kt{enabled;cache;constructor(e){this.enabled=e,this.cache=new Map}get(e,t){if(this.enabled)return this.cache.get(this.getCacheName(e,t))}set(e,t,r){this.enabled&&this.cache.set(this.getCacheName(e,t),r)}has(e,t){return this.cache.has(this.getCacheName(e,t))}clear(){this.cache.clear()}generateContext(e){try{return Qt(e)}catch(t){return console.log("error in cache generateContext",t),e}}getCacheName(e,t){return e+"_"+r(t)}}const St=(e,t="")=>`${e}#${t}`,Ct=e=>`${e.gt}_${e.gte}_${e.lt}_${e.lte}_${e.eq}_${e.ne}`,Mt=e=>`${e.gt}_${e.gte}_${e.lt}_${e.lte}_${e.eq}_${e.ne}`,It=(e,t)=>{const r="function"==typeof t?t:e=>e[t];return[...e.reduce(((e,t)=>{const n=null==t?t:r(t);return e.has(n)||e.set(n,t),e}),new Map).values()]},Et=(e,t)=>e.reduce((function(e,r){const n="function"==typeof t?t(r):r[t];return e.hasOwnProperty(n)||(e[n]=[]),e[n].push(r),e}),{});function Tt(e=10){let t="";for(let r=0;r<e;r++)t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".charAt(Math.floor(62*Math.random()));return t}const $t=e=>e.replace(/\/+$/,""),Ft=e=>"string"!=typeof e?"":e.replace(/[[\]{}()*+?.,\\^$|#]/g,"\\$&"),Dt=e=>"string"!=typeof e?"":e.replace(/\\([[\]{}()*+?.,\\^$|#])/g,"$1");class zt{key;parentCd;dcuplInitOptions;analyticsController;off;updateListener=new Set;constructor(){}_init(e){this.key=e.cdRefKey,this.analyticsController=e.analyticsController,this.parentCd=e.parentCd,this.dcuplInitOptions=e.dcuplInitOptions,this.parentCd&&(this.off=this.parentCd.on((e=>{"update"===e.action&&e.originCdRefKey===this.parentCd?.key&&this.trigger(e)})))}destroy(){this.off&&this.off()}trigger(e){e.originCdRefKey||(e.originCdRefKey=this.key),this.updateListener.forEach((t=>{t(e)}))}on(e){return this.updateListener.add(e),()=>{this.updateListener.delete(e)}}}const Nt=(e,t)=>t?"undefined"!=typeof structuredClone?structuredClone(e):Qt(e):e,Pt=(e,t,r,n,u)=>{try{const i=!!e.dcuplInitOptions.performance?.clone?.enabled&&!!t.cloneResult,s=Nt(u,i),a=o.now();t.duration=a-r,e?.trigger(t);const c={duration:t.duration};return t.modelKey&&(c.model=t.modelKey),t.args&&(c.args=t.args),e.analyticsController.mark({name:`${t.name}:end`,context:n}),e.analyticsController.measure({name:`${t.name}`,start:`${t.name}:start`,end:`${t.name}:end`,context:n,detail:c}),s}catch(e){return u}},Bt=e=>(t,r,n)=>{const u=n.value;return n.value=function(...t){const n=this.cdRef,i=o.now();let s="";e.mergeAnalytics||(s=Tt()),n.analyticsController.mark({name:`${e.name}:start`,context:s});const a=this.model?.key;!e.originCdRefKey&&n.key&&(e.originCdRefKey=n.key),a&&(e.modelKey=a);try{const o=u.apply(this,t);return e.method=r,e.args=t,o&&"then"in o?o.then((t=>Pt(n,e,i,s,t))):Pt(n,e,i,s,o)}catch(e){throw e}},n};function Rt(e,t,r,n){r.max||(r.max=20);const o=[],u=r.transform?n.transformValue(r.value,r.transform):r.value;for(const[i,s]of t.entries()){const t=s.some((t=>e.has(t))),a=r.transform?n.transformValue(i,r.transform):i;if(!(r.excludeUndefineds&&void 0===i||r.excludeNulls&&null===i)){if(!t||""!==u&&"//"!==u){if(t&&n.queryFind(a,u,"some")){const e={value:i,keys:r.calculateResultKeys?s:[]};o.push(e)}}else{const e={value:i,keys:r.calculateResultKeys?s:[]};o.push(e)}if(o.length===r.max)break}}return o}class Gt{nodes;edges;constructor(){this.nodes=new Set,this.edges=new Map}addNode(e){this.nodes.has(e)||(this.nodes.add(e),this.edges.set(e,new Set))}addDependency(e,t){if(!this.nodes.has(e)||!this.nodes.has(t))throw new Error("Both nodes must exist before adding a dependency.");this.edges.get(e).add(t)}removeNode(e){if(!this.nodes.has(e))throw new Error("Node does not exist.");this.nodes.delete(e),this.edges.delete(e);for(let t of this.edges.values())t.delete(e)}removeDependency(e,t){if(!this.edges.has(e))throw new Error("From node does not exist.");this.edges.get(e).delete(t)}hasNode(e){return this.nodes.has(e)}hasDependency(e,t){return!!this.edges.has(e)&&this.edges.get(e).has(t)}getDependencies(e){if(!this.edges.has(e))throw new Error("Node does not exist.");return Array.from(this.edges.get(e))}getDependents(e){const t=[];for(let[r,n]of this.edges)n.has(e)&&t.push(r);return t}isCyclic(){const e=new Set,t=new Set,r=n=>{if(e.has(n))return!1;if(t.has(n))return!0;t.add(n);const o=this.edges.get(n);if(o)for(let e of o)if(r(e))return!0;return t.delete(n),e.add(n),!1};for(let e of this.nodes)if(r(e))return!0;return!1}order(){const e=new Set,t=new Set,r=[],n=o=>{if(e.has(o))return;if(t.has(o))throw new Error("Graph has a cycle.");t.add(o);const u=this.edges.get(o);if(u)for(let e of u)n(e);t.delete(o),e.add(o),r.push(o)};for(let t of this.nodes)e.has(t)||n(t);return r}clear(){this.nodes.clear(),this.edges.clear()}getNodes(){return Array.from(this.nodes)}getAllEdges(){const e=[];for(let[t,r]of this.edges)for(let n of r)e.push([t,n]);return e}}function Ut(e){let t=0;for(let r of e){const e=r.toString().split(".")[1];e&&(t=Math.max(t,e.length))}return Math.pow(10,t)}function Vt(e,t,r){return(e*r+t*r)/r}const Lt=(e,t,r,n)=>{if(!n)throw new Error("Attribute not found");const o={attribute:n,types:e.types};let u,i;return(o.types.includes("sum")||o.types.includes("avg")||o.types.includes("count"))&&(u=Zt(n,t)),(o.types.includes("min")||o.types.includes("max"))&&(i=Wt(e.attribute,t)),e.types.forEach((n=>{"sum"===n?o.sum=u?.sum:"avg"===n?o.avg=u?.average:"count"===n?o.count=u?.count:"min"===n?o.min=i&&i[0]:"max"===n?o.max=i&&i[1]:"distinct"===n?o.distinct=Jt(e,t,r):"group"===n&&(o.group=Ht(e,t))})),o},Wt=(e,t)=>{let r,n;for(const o of t.values())if(o){const t=o[e];(void 0===r||t<r)&&(r=t),(void 0===n||t>n)&&(n=t)}if(void 0!==r&&void 0!==n)return[r,n]},Ht=(e,t)=>{const r=[];e.groupOptions?.groups?.forEach((e=>{r.push({option:e,count:0,keys:[]})}));const n={option:{value:["$dcupl_not_found"]},count:0,keys:[]};for(const o of t.values()){const t=o[e.attribute];for(const u of r)void 0!==u.option.value&&u.option.value.includes(t)||void 0!==u.option.from&&u.option.from<t&&void 0!==u.option.to&&u.option.to>t?(u.count++,u.keys.push(o.key)):e?.groupOptions?.calculateNotFound&&(n.count++,n.keys.push(o.key))}return e?.groupOptions?.calculateNotFound&&r.push(n),r},Zt=(e,t)=>{let r=0,n=0;for(const o of t.values()){if(!o)continue;const t=o[e];if(Array.isArray(t))for(const e of t)"number"==typeof e&&(r=Vt(r,e,Ut([r,e])),n++);else"number"==typeof t&&(r=Vt(r,t,Ut([r,t])),n++)}var o,u,i;if(0!==n)return{average:(o=r,u=n,i=Ut([r,n]),o*i/(u*i)),count:t.size,sum:r}},Jt=(e,t,r)=>{const n=[];for(const[o,u]of r)if((!e.excludeUndefineds||void 0!==o)&&u.find((e=>t.has(e)))){const t={value:o,count:u.length};if(e.distinctOptions?.skipKeys||(t.keys=u),n.push(t),e.distinctOptions?.limit&&n.length>=e.distinctOptions.limit)break}return n},Xt=function(e,t,r,n){for(var o=e.length,u=r+(n?1:-1);n?u--:++u<o;)if(t(e[u],u,e))return u;return-1};function Yt(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new U;++t<r;)this.add(e[t])}Yt.prototype.add=Yt.prototype.push=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},Yt.prototype.has=function(e){return this.__data__.has(e)};const er=Yt,tr=function(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1},rr=function(e,t){return e.has(t)},nr=function(e,t,r,n,o,u){var i=1&r,s=e.length,a=t.length;if(s!=a&&!(i&&a>s))return!1;var c=u.get(e),f=u.get(t);if(c&&f)return c==t&&f==e;var l=-1,p=!0,y=2&r?new er:void 0;for(u.set(e,t),u.set(t,e);++l<s;){var h=e[l],d=t[l];if(n)var g=i?n(d,h,l,t,e,u):n(h,d,l,e,t,u);if(void 0!==g){if(g)continue;p=!1;break}if(y){if(!tr(t,(function(e,t){if(!rr(y,t)&&(h===e||o(h,e,r,n,u)))return y.push(t)}))){p=!1;break}}else if(h!==d&&!o(h,d,r,n,u)){p=!1;break}}return u.delete(e),u.delete(t),p},or=function(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r},ur=function(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r};var ir=h?h.prototype:void 0,sr=ir?ir.valueOf:void 0;var ar=Object.prototype.hasOwnProperty;var cr="[object Arguments]",fr="[object Array]",lr="[object Object]",pr=Object.prototype.hasOwnProperty;const yr=function(e,t,r,n,o,u){var s=ue(e),a=ue(t),c=s?fr:ct(e),f=a?fr:ct(t),l=(c=c==cr?lr:c)==lr,p=(f=f==cr?lr:f)==lr,y=c==f;if(y&&ce(e)){if(!ce(t))return!1;s=!0,l=!1}if(y&&!l)return u||(u=new L),s||je(e)?nr(e,t,r,n,o,u):function(e,t,r,n,o,u,s){switch(r){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!u(new lt(e),new lt(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return i(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var a=or;case"[object Set]":var c=1&n;if(a||(a=ur),e.size!=t.size&&!c)return!1;var f=s.get(e);if(f)return f==t;n|=2,s.set(e,t);var l=nr(a(e),a(t),n,o,u,s);return s.delete(e),l;case"[object Symbol]":if(sr)return sr.call(e)==sr.call(t)}return!1}(e,t,c,r,n,o,u);if(!(1&r)){var h=l&&pr.call(e,"__wrapped__"),d=p&&pr.call(t,"__wrapped__");if(h||d){var g=h?e.value():e,v=d?t.value():t;return u||(u=new L),o(g,v,r,n,u)}}return!!y&&(u||(u=new L),function(e,t,r,n,o,u){var i=1&r,s=Ve(e),a=s.length;if(a!=Ve(t).length&&!i)return!1;for(var c=a;c--;){var f=s[c];if(!(i?f in t:ar.call(t,f)))return!1}var l=u.get(e),p=u.get(t);if(l&&p)return l==t&&p==e;var y=!0;u.set(e,t),u.set(t,e);for(var h=i;++c<a;){var d=e[f=s[c]],g=t[f];if(n)var v=i?n(g,d,f,t,e,u):n(d,g,f,e,t,u);if(!(void 0===v?d===g||o(d,g,r,n,u):v)){y=!1;break}h||(h="constructor"==f)}if(y&&!h){var b=e.constructor,m=t.constructor;b==m||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof m&&m instanceof m||(y=!1)}return u.delete(e),u.delete(t),y}(e,t,r,n,o,u))},hr=function e(t,r,n,o,u){return t===r||(null==t||null==r||!Y(t)&&!Y(r)?t!=t&&r!=r:yr(t,r,n,o,e,u))},dr=function(e,t,r,n){var o=r.length,u=o,i=!n;if(null==e)return!u;for(e=Object(e);o--;){var s=r[o];if(i&&s[2]?s[1]!==e[s[0]]:!(s[0]in e))return!1}for(;++o<u;){var a=(s=r[o])[0],c=e[a],f=s[1];if(i&&s[2]){if(void 0===c&&!(a in e))return!1}else{var l=new L;if(n)var p=n(c,f,a,e,t,l);if(!(void 0===p?hr(f,c,3,n,l):p))return!1}}return!0},gr=function(e){return e==e&&!w(e)},vr=function(e){for(var t=Se(e),r=t.length;r--;){var n=t[r],o=e[n];t[r]=[n,o,gr(o)]}return t},br=function(e,t){return function(r){return null!=r&&r[e]===t&&(void 0!==t||e in Object(r))}},mr=function(e){return"symbol"==typeof e||Y(e)&&"[object Symbol]"==_(e)};var jr=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,_r=/^\w*$/;const wr=function(e,t){if(ue(e))return!1;var r=typeof e;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=e&&!mr(e))||_r.test(e)||!jr.test(e)||null!=t&&e in Object(t)};function Ar(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var r=function(){var n=arguments,o=t?t.apply(this,n):n[0],u=r.cache;if(u.has(o))return u.get(o);var i=e.apply(this,n);return r.cache=u.set(o,i)||u,i};return r.cache=new(Ar.Cache||U),r}Ar.Cache=U;var qr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,xr=/\\(\\)?/g;const Or=(Kr=Ar((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(qr,(function(e,r,n,o){t.push(n?o.replace(xr,"$1"):r||e)})),t}),(function(e){return 500===Qr.size&&Qr.clear(),e})),Qr=Kr.cache,Kr);var Kr,Qr;const kr=function(e,t){for(var r=-1,n=null==e?0:e.length,o=Array(n);++r<n;)o[r]=t(e[r],r,e);return o};var Sr=h?h.prototype:void 0,Cr=Sr?Sr.toString:void 0;const Mr=function e(t){if("string"==typeof t)return t;if(ue(t))return kr(t,e)+"";if(mr(t))return Cr?Cr.call(t):"";var r=t+"";return"0"==r&&1/t==-1/0?"-0":r},Ir=function(e){return null==e?"":Mr(e)},Er=function(e,t){return ue(e)?e:wr(e,t)?[e]:Or(Ir(e))},Tr=function(e){if("string"==typeof e||mr(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t},$r=function(e,t){for(var r=0,n=(t=Er(t,e)).length;null!=e&&r<n;)e=e[Tr(t[r++])];return r&&r==n?e:void 0},Fr=function(e,t,r){var n=null==e?void 0:$r(e,t);return void 0===n?r:n},Dr=function(e,t){return null!=e&&t in Object(e)},zr=function(e,t){return null!=e&&function(e,t,r){for(var n=-1,o=(t=Er(t,e)).length,u=!1;++n<o;){var i=Tr(t[n]);if(!(u=null!=e&&r(e,i)))break;e=e[i]}return u||++n!=o?u:!!(o=null==e?0:e.length)&&pe(o)&&le(i,o)&&(ue(e)||oe(e))}(e,t,Dr)},Nr=function(e){return e},Pr=function(e){return function(t){return null==t?void 0:t[e]}},Br=function(e){return wr(e)?Pr(Tr(e)):function(e){return function(t){return $r(t,e)}}(e)},Rr=function(e){return"function"==typeof e?e:null==e?Nr:"object"==typeof e?ue(e)?(n=e[0],o=e[1],wr(n)&&gr(o)?br(Tr(n),o):function(e){var t=Fr(e,n);return void 0===t&&t===o?zr(e,n):hr(o,t,3)}):1==(r=vr(t=e)).length&&r[0][2]?br(r[0][0],r[0][1]):function(e){return e===t||dr(e,t,r)}:Br(e);var t,r,n,o};var Gr=/\s/;var Ur=/^\s+/;const Vr=function(e){return e?e.slice(0,function(e){for(var t=e.length;t--&&Gr.test(e.charAt(t)););return t}(e)+1).replace(Ur,""):e};var Lr=/^[-+]0x[0-9a-f]+$/i,Wr=/^0b[01]+$/i,Hr=/^0o[0-7]+$/i,Zr=parseInt;var Jr=1/0;const Xr=function(e){return e?(e=function(e){if("number"==typeof e)return e;if(mr(e))return NaN;if(w(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=w(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Vr(e);var r=Wr.test(e);return r||Hr.test(e)?Zr(e.slice(2),r?2:8):Lr.test(e)?NaN:+e}(e))===Jr||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0},Yr=function(e){var t=Xr(e),r=t%1;return t==t?r?t-r:t:0};var en=Math.max;const tn=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var o=null==r?0:Yr(r);return o<0&&(o=en(n+o,0)),Xt(e,Rr(t),o)};class rn{_defaultQueryOptions={modelKey:"",groupKey:"root",groupType:"and",queries:[]};_initOptions;currentQuery=Qt(this._defaultQueryOptions);constructor(){}init(e){this._initOptions=Qt(e),this.currentQuery=Qt(this._defaultQueryOptions),this.currentQuery.modelKey=e.modelKey}reset(){return this.init(this._initOptions),this.getQuery()}isQuery(e){return"attribute"in e}isQueryGroup(e){return"groupKey"in e}isRootQueryGroup(e){return this.isQueryGroup(e)&&"root"===e.groupKey}getQueryGroup(e){return this.currentQuery.queries.find((t=>this.isQueryGroup(t)&&t.groupKey===e))}getQuery(){return Qt(this.currentQuery)}hasQueryGroup(e){return this.currentQuery.queries.some((t=>this.isQueryGroup(t)&&t.groupKey===e))}has(e){if(e.groupKey&&e.queryKey){const t=this.getQueryGroup(e.groupKey);if(t)return t.queries.some((t=>this.isQuery(t)&&t.queryKey===e.queryKey))}else if(e.groupKey)return this.hasQueryGroup(e.groupKey);return!1}applyOptions(e,t="update"){return"set"===t?(this.currentQuery.count=e.count,this.currentQuery.start=e.start,this.currentQuery.sort=e.sort,this.currentQuery.projection=e.projection):(void 0!==e?.sort&&(this.currentQuery.sort=e.sort),void 0!==e?.count&&(this.currentQuery.count=e.count),void 0!==e?.start&&(this.currentQuery.start=e?.start),void 0!==e?.projection&&(this.currentQuery.projection=e?.projection)),this.getQuery()}applyQuery(e,t,r){if(r||(r=this.currentQuery),Array.isArray(e))for(const n of e)this.applyQuery(n,t,r);else if(this.isRootQueryGroup(e))e.groupType&&(r.groupType=e.groupType),r.queries="set"===t?.mode?e.queries:[...r.queries,...e.queries],this.applyOptions(e,"set");else if(this.isQuery(e)){const n=r.queries.findIndex((t=>this.isQueryGroup(t)&&t.groupKey===e.attribute));if(n>-1){const o=r.queries[n];"set"===t?.mode?o.queries=[e]:o.queries.push(e)}else r.queries.push({groupKey:e.attribute,groupType:"or",queries:[e]})}else if(this.isQueryGroup(e)){const n=r.queries.findIndex((t=>this.isQueryGroup(t)&&t.groupKey===e.groupKey));if(n>-1){const o=r.queries[n];e.groupType&&(o.groupType=e.groupType),"set"===t?.mode?r.queries[n]=e:o.queries=[...o.queries,...e.queries]}else r.queries.push({groupKey:e.groupKey,groupType:e.groupType||"or",queries:e.queries})}return r}removeAllQueries(){return this.currentQuery.queries=[],this.getQuery()}removeQuery(e,t){if(t||(t=this.currentQuery),this.isQuery(e)){const r=t.queries.findIndex((t=>this.isQueryGroup(t)&&t.groupKey===e.attribute));if(r>-1){const n=t.queries[r],o=tn(n.queries,e);o>-1&&n.queries.splice(o,1),0===n.queries.length&&t.queries.splice(r,1)}}else if(this.isQueryGroup(e)){const r=t.queries.findIndex((t=>this.isQueryGroup(t)&&t.groupKey===e.groupKey));if(r>-1)if(e.queries){const n=t.queries[r];for(const t of e.queries){const e=tn(n.queries,t);e>-1&&n.queries.splice(e,1)}0===n.queries.length&&t.queries.splice(r,1)}else t.queries.splice(r,1)}return t}}const nn=new rn;function on(e,t,r,n,o,u,i){const s=[],a=nn.removeQuery({groupKey:o},Qt(n)),c=i.queryData(e,a,!1,u),f=t?[...t?.keys()]:[],l=new Set(f),p=u.get(o);if(!r.excludeUnresolved)for(const e of p.keys())l.add(e);r.excludeUndefineds?l.delete(void 0):l.add(void 0);for(const e of l.values()){const u=new Map,i=p.get(e)||[];for(const e of i){const t=c.get(e);if(t&&(u.set(e,t),!r?.calculateFacets))break}const a={key:String(e),value:e,selected:un(o,e,n),enabled:u.size>0,size:u.size,entry:t.get(e),resultKeys:Array.from(u.keys())};if(!r?.excludeZeros||0!==a.size){if(r?.count&&s.length===r?.count)return s;s.push(a)}}return s}const un=(e,t,r)=>{const n=r.queries.findIndex((t=>nn.isQueryGroup(t)&&t.groupKey===e));return n>-1&&!!r.queries[n].queries.find((r=>{if(nn.isQuery(r)){const n=r.value?.key||r.value;return r.attribute===e&&n===t}return!1}))};class sn{indexMap=new Map;dataMap=new Map;constructor(){}reset(e){e?(this.indexMap.delete(e),this.dataMap.delete(e)):(this.indexMap.clear(),this.dataMap.clear())}fillDataMap(e,t){let r=this.dataMap.get(e);r||(r=new Map,this.dataMap.set(e,r));for(const n of t){let t;if("object"==typeof n&&n&&n.key)t=n.key;else{if(Array.isArray(n)){for(const t of n)this.fillDataMap(e,[t]);return}t=n}let o=r.get(t);o||(o={key:t},this.dataMap.get(e)?.set(t,o))}}fillInverseIndex(e,t,r){if(!(e&&t&&r&&Array.isArray(r)))return;const n=this.indexMap.get(e)||new Map;for(const o of r){let r;if("object"==typeof o&&o&&o.key)r=o.key;else{if(Array.isArray(o)){for(const r of o)this.fillInverseIndex(e,t,[r]);return}r=o}const u=n.get(r)||[];u.push(t),n.set(r,u)}this.indexMap.set(e,n)}getIndex(e,t){const r=this.getIndexName(e,t);return this.indexMap.get(r)}getData(e,t){const r=this.getIndexName(e,t);return this.dataMap.get(r)}getOrCreateIndex(e,t,r){const n=this.getIndexName(e,r);let o=this.getIndex(n);if(!o){this.reset(n),this.indexMap.set(n,new Map);for(const r of t.values()){const t=r[e];this.fillInverseIndex(n,r.key,[t]),this.fillDataMap(n,[t])}o=this.getIndex(n)||new Map}return o}getIndexName(e,t){return t?e+"_"+r(t):e}}const an="__";function cn(e,t,r={key:"root"},n="root",o=new sn){for(const r of t.columns)r.attribute&&o.getOrCreateIndex(r.attribute,e);for(const r of t.rows)r.attribute&&o.getOrCreateIndex(r.attribute,e);for(const r of t.values)r.attribute&&o.getOrCreateIndex(r.attribute,e);if(t.rows&&t.rows.length>0){r.rows=r.rows||[];const u=function(e,t,r,n,o=""){const u={key:t.attribute},i=n.getIndex(t.attribute);if(!i)return u;for(const[s,a]of i.entries()){const i={key:s},c=new Map;for(const t of a)e.has(t)&&c.set(t,e.get(t));if(c.size){for(const e of r.values){if(i.values=i.values||[],"root"===o&&!1===t?.calculateTotals)continue;const r=Lt(e,c,n.getIndex(e.attribute),e.attribute);i.values.push(r)}if(u.rows=u.rows||[],u.rows.push(i),r.rows.length>1)cn(c,{...r,rows:r.rows.slice(1)},i,o+an+t.attribute+an+s);else if(r.columns)for(const e of r.columns){i.columns=i.columns||[];const u=fn(c,e,r,n,o+an+t.attribute+an+s);i.columns.push(u)}}}return u}(e,t.rows[0],t,o,n);r.rows.push(u)}if(t.columns&&t.columns.length>0){r.columns=r.columns||[];const u=fn(e,t.columns[0],t,o,n);r.columns.push(u)}if("root"===r.key)for(const u of t.values){if(r.values=r.values||[],"root"===n&&!1===t.options?.calculateTotals)continue;const i=Lt(u,e,o.getIndex(u.attribute),u.attribute);r.values.push(i)}return r}function fn(e,t,r,n,o=""){const u={key:t.attribute},i=n.getIndex(t.attribute);if(!i)return u;for(const[s,a]of i.entries()){const i={key:s},c=new Map;for(const t of a)e.has(t)&&c.set(t,e.get(t));if(c.size){for(const e of r.values){if(i.values=i.values||[],"root"===o&&!1===t?.calculateTotals)continue;const r=Lt(e,c,n.getIndex(e.attribute),e.attribute);i.values.push(r)}u.columns=u.columns||[],u.columns.push(i),r.columns.length>1&&cn(c,{...r,columns:r.columns.slice(1)},i,o+an+t.attribute+an+s)}}return u}const ln=(e,t)=>{const r=[];for(const n of e){for(const[e,t]of Object.entries(n)){const n=r.find((t=>t.key===e)),o=hn(t);if(n)n.type!==o&&(n.type="any");else{const t={key:e,type:o};r.push(t)}}if(!t)break}return r},pn=e=>Number(e)===e&&e%1==0,yn=e=>Number(e)===e&&e%1!=0,hn=e=>{switch(typeof e){case"string":return"string";case"number":return pn(e)?"int":yn(e)?"float":"any";case"boolean":return"boolean";case"object":return function(e){return e instanceof Date||"object"==typeof e&&"[object Date]"===Object.prototype.toString.call(e)}(e)?"date":"json";default:return"any"}},dn=(e,t)=>{const r=Ft(e.text||""),n=t?.attributeKey||e.filterKey;let o;const u=t?.comparisonType||"containsIgnoreCase";return"containsIgnoreCase"===u?o={groupKey:e.filterKey,queries:[{queryKey:e.text,attribute:n,value:`/${r}/`,operator:"find",options:{transform:["lowercase"]}}]}:"containsIgnoreCaseAndWhitespace"===u?o={groupKey:e.filterKey,queries:[{queryKey:e.text,attribute:n,value:`/${r}/`,operator:"find",options:{transform:["removeWhitespace","lowercase"]}}]}:"contains"===u?o={groupKey:e.filterKey,queries:[{queryKey:e.text,attribute:n,value:`/${r}/`,operator:"find"}]}:"equal"===u?o={groupKey:e.filterKey,queries:[{queryKey:e.text,attribute:n,value:e.text,operator:"eq"}]}:"equalIgnoreCase"===u&&(o={groupKey:e.filterKey,queries:[{queryKey:e.text,attribute:n,value:e.text,operator:"eq",options:{transform:["lowercase"]}}]}),o},gn=(e,t)=>{const r=t?.attributeKey||e.filterKey;return{groupKey:e.filterKey,queries:[{queryKey:e.value,attribute:r,value:e.value,operator:"eq"}]}},vn=(e,t)=>{const r=t?.attributeKey||e.filterKey,n={groupKey:e.filterKey,queries:[]};return void 0!==e.eq&&(n.groupType="or",Array.isArray(e.eq)?e.eq.forEach((e=>{n.queries.push({attribute:r,value:e,operator:"eq"})})):n.queries.push({attribute:r,value:e.eq,operator:"eq"})),void 0!==e.ne&&(n.groupType="and",Array.isArray(e.ne)?e.ne.forEach((e=>{n.queries.push({attribute:r,value:e,operator:"eq",options:{invert:!0}})})):n.queries.push({attribute:r,value:e.ne,operator:"eq",options:{invert:!0}})),void 0!==e.gt&&(n.groupType="and",n.queries.push({attribute:r,value:e.gt,operator:"gt"})),void 0!==e.lt&&(n.groupType="and",n.queries.push({attribute:r,value:e.lt,operator:"lt"})),void 0!==e.gte&&(n.groupType="and",n.queries.push({attribute:r,value:e.gte,operator:"gte"})),void 0!==e.lte&&(n.groupType="and",n.queries.push({attribute:r,value:e.lte,operator:"lte"})),n},bn=(e,t)=>{const r=t?.attributeKey||e.filterKey,n={groupKey:e.filterKey,queries:[]};return e.itemKeys.forEach((e=>{n.queries.push({queryKey:e,attribute:r,value:{key:e},operator:"eq"})})),n},mn=e=>"string"==typeof e.modelKey&&!!Array.isArray(e.queries),jn=function(e,t){return hr(e,t)},_n=Pr("length");var wn=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");var An="\\ud800-\\udfff",qn="["+An+"]",xn="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",On="\\ud83c[\\udffb-\\udfff]",Kn="[^"+An+"]",Qn="(?:\\ud83c[\\udde6-\\uddff]){2}",kn="[\\ud800-\\udbff][\\udc00-\\udfff]",Sn="(?:"+xn+"|"+On+")?",Cn="[\\ufe0e\\ufe0f]?",Mn=Cn+Sn+"(?:\\u200d(?:"+[Kn,Qn,kn].join("|")+")"+Cn+Sn+")*",In="(?:"+[Kn+xn+"?",xn,Qn,kn,qn].join("|")+")",En=RegExp(On+"(?="+On+")|"+In+Mn,"g");const Tn=function(e){return function(e){return wn.test(e)}(e)?function(e){for(var t=En.lastIndex=0;En.test(e);)++t;return t}(e):_n(e)},$n=function(e){if(null==e)return 0;if(ke(e))return"string"==typeof(t=e)||!ue(t)&&Y(t)&&"[object String]"==_(t)?Tn(e):e.length;var t,r=ct(e);return"[object Map]"==r||"[object Set]"==r?e.size:Qe(e).length},Fn=function(e){return e!=e},Dn=function(e,t){return!(null==e||!e.length)&&function(e,t,r){return t==t?function(e,t,r){for(var n=r-1,o=e.length;++n<o;)if(e[n]===t)return n;return-1}(e,t,r):Xt(e,Fn,r)}(e,t,0)>-1},zn=function(e,t,r){for(var n=-1,o=null==e?0:e.length;++n<o;)if(r(t,e[n]))return!0;return!1};var Nn=h?h.isConcatSpreadable:void 0;const Pn=function(e){return ue(e)||oe(e)||!!(Nn&&e&&e[Nn])},Bn=function e(t,r,n,o,u){var i=-1,s=t.length;for(n||(n=Pn),u||(u=[]);++i<s;){var a=t[i];r>0&&n(a)?r>1?e(a,r-1,n,o,u):Be(u,a):o||(u[u.length]=a)}return u};var Rn=Math.max;const Gn=W?function(e,t){return W(e,"toString",{configurable:!0,enumerable:!1,value:(r=t,function(){return r}),writable:!0});var r}:Nr;var Un=Date.now;const Vn=(Ln=Gn,Wn=0,Hn=0,function(){var e=Un(),t=16-(e-Hn);if(Hn=e,t>0){if(++Wn>=800)return arguments[0]}else Wn=0;return Ln.apply(void 0,arguments)});var Ln,Wn,Hn;const Zn=function(e){return Y(e)&&ke(e)},Jn=function(e){return Vn(function(e,t,r){return t=Rn(void 0===t?e.length-1:t,0),function(){for(var n=arguments,o=-1,u=Rn(n.length-t,0),i=Array(u);++o<u;)i[o]=n[t+o];o=-1;for(var s=Array(t+1);++o<t;)s[o]=n[o];return s[t]=r(i),function(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}(e,this,s)}}(e,void 0,Nr),e+"")}((function(e,t){var r=function(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}(t);return Zn(r)&&(r=void 0),Zn(e)?function(e,t,r,n){var o=-1,u=Dn,i=!0,s=e.length,a=[],c=t.length;if(!s)return a;r&&(t=kr(t,he(r))),n?(u=zn,i=!1):t.length>=200&&(u=rr,i=!1,t=new er(t));e:for(;++o<s;){var f=e[o],l=null==r?f:r(f);if(f=n||0!==f?f:0,i&&l==l){for(var p=c;p--;)if(t[p]===l)continue e;a.push(f)}else u(t,l,n)||a.push(f)}return a}(e,Bn(t,1,Zn,!0),Rr(r)):[]})),Xn=function(e,t,r){return e==e&&(void 0!==r&&(e=e<=r?e:r),void 0!==t&&(e=e>=t?e:t)),e},Yn=function(e,t,r){var n=(r="function"==typeof r?r:void 0)?r(e,t):void 0;return void 0===n?hr(e,t,void 0,r):!!n},eo=(to=tn,function(e,t,r){var n=Object(e);if(!ke(e)){var o=Rr(t);e=Se(e),t=function(e){return o(n[e],e,n)}}var u=to(e,t,r);return u>-1?n[o?e[u]:u]:void 0});var to;const ro=function(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(!t(e[r],r,e))return!1;return!0},no=function(e,t,r){for(var n=-1,o=Object(e),u=r(e),i=u.length;i--;){var s=u[++n];if(!1===t(o[s],s,o))break}return e},oo=function(e,t){if(null==e)return e;if(!ke(e))return function(e,t){return e&&no(e,t,Se)}(e,t);for(var r=e.length,n=-1,o=Object(e);++n<r&&!1!==t(o[n],n,o););return e},uo=function(e,t){var r=!0;return oo(e,(function(e,n,o){return r=!!t(e,n,o)})),r},io=function(e,t,r){if(!w(r))return!1;var n=typeof t;return!!("number"==n?ke(r)&&le(t,r.length):"string"==n&&t in r)&&i(r[t],e)},so=function(e,t){var r;return oo(e,(function(e,n,o){return!(r=t(e,n,o))})),!!r},ao=function(e,t,r){var n=ue(e)?tr:so;return r&&io(e,t,r)&&(t=void 0),n(e,Rr(t))};class co{scriptController;registeredCustomOperator=new Map;queryBuilder=new rn;constructor(e){this.scriptController=e}registerCustomOperator(e,t){this.registeredCustomOperator.set(e,t)}transformValue(e,t){if(Array.isArray(e))return e.map((e=>this.transformValue(e,t)));if("string"!=typeof e)return e;for(const r of t)"lowercase"===r?e=e.toLowerCase():"trim"===r?e=e.trim():"removeWhitespace"===r&&(e=e.replace(/\s/g,""));return e}evaluateQuery(e,t){let r,n=e.value;const o=e.options?.arrayValueHandling||"some";if(Array.isArray(e.options?.transform)&&e.options.transform.length>0&&(n=this.transformValue(n,e.options.transform)),r=e.attribute.includes(".")||e.attribute.includes("[")?Fr(t,e.attribute):t[e.attribute],Array.isArray(e.options?.transform)&&e.options.transform.length>0&&(r=this.transformValue(r,e.options.transform)),null==r&&!["typeof","isTruthy","eq"].includes(e.operator))return!1;switch(e.operator){case"eq":return e.options?.invert?!jn(r,n):jn(r,n);case"find":return e.options?.invert?!this.queryFind(r,n,o):this.queryFind(r,n,o);case"lt":return Array.isArray(r)?"some"===o?r.some((e=>e<n)):r.every((e=>e<n)):r<n;case"gt":return Array.isArray(r)?"some"===o?r.some((e=>e>n)):r.every((e=>e>n)):r>n;case"lte":return Array.isArray(r)?"some"===o?r.some((e=>e<=n)):r.every((e=>e<=n)):r<=n;case"gte":return Array.isArray(r)?"some"===o?r.some((e=>e>=n)):r.every((e=>e>=n)):r>=n;case"typeof":return e.options?.invert?typeof r!==n:Array.isArray(r)?"some"===o?r.some((e=>typeof e===n)):r.every((e=>typeof e===n)):typeof r===n;case"isTruthy":return!0===n?Array.isArray(r)?"some"===o?r.some((e=>typeof!!e)):r.every((e=>typeof!!e)):!!r:!r;case"size":return"string"==typeof r?r.length===n:$n(r)===n;default:if(this.scriptController.hasScript(e.operator))return this.scriptController.executeScript(e.operator,"operator",{query:e,item:t});if(this.registeredCustomOperator.has(e.operator)){const r=this.registeredCustomOperator.get(e.operator);if("function"==typeof r)return r(e,t)}}return!1}evaluateEqOperator(e,t,r){const n=new Map,o=r.get(e.attribute);if(o){let r;if("string"==typeof e.value?r=e.value:e.value?.key&&1===Object.keys(e.value).length&&(r=e.value.key),void 0!==r){const u=o.get(r);if(u){if(u.forEach((e=>{t.has(e)&&n.set(e,t.get(e))})),e.options?.invert){const e=Jn(Array.from(t.values()),Array.from(n.values()),"key"),r=new Map;return e.forEach((e=>{r.set(e.key,e)})),r}return n}}}for(const[r,o]of t)this.evaluateQuery(e,o)&&n.set(r,o);return n}equalRegexFn(e,t){if("string"!=typeof t||(u="/",o=Ir(o=t),i=null==i?0:Xn(Yr(i),0,o.length),u=Mr(u),o.slice(i,i+u.length)!=u)||!function(e,t,r){e=Ir(e),t=Mr(t);var n=e.length,o=r=void 0===r?n:Xn(Yr(r),0,n);return(r-=t.length)>=0&&e.slice(r,o)==t}(t,"/"))return Array.isArray(e)?!!e.find((e=>Yn(e,t,this.equalRegexFn))):"object"==typeof t?(r=e)===(n=t)||dr(r,n,vr(n)):e===t;var r,n,o,u,i;try{return new RegExp(t.slice(1,-1)).test(e)}catch(e){return!1}}queryFind(e,t,r){return Array.isArray(e)?"string"==typeof t||"number"==typeof t||"boolean"==typeof t?"some"===r?e.some((e=>Yn(e,t,this.equalRegexFn))):e.every((e=>Yn(e,t,this.equalRegexFn))):!!eo(e,t):Yn(e,t,this.equalRegexFn)}validateQuery(e){if(this.queryBuilder.isQuery(e)){if(!e.attribute||!e.operator)throw new Error("invalid query - missing attribute or operator");if("find"===e.operator&&Array.isArray(e.value))throw new Error("invalid query - find operator cannot have array value");return!0}if(this.queryBuilder.isQueryGroup(e))return function(e,t,r){var n=ue(e)?ro:uo;return r&&io(e,t,r)&&(t=void 0),n(e,Rr(t))}(e.queries,(e=>this.validateQuery(e)));throw new Error("invalid query - missing query or attribute")}getEvaluatedQueryDataset(e,t,r){const n=new Map;if(e.attribute.includes("[*]")){const r=e.attribute.replace("[*]","");for(const[o,u]of t){const t=u[r];if(Array.isArray(t)){const r=t.map(((t,r)=>{const n=Qt(e);return n.attribute=n.attribute.replace("[*]",`[${r}]`),this.evaluateQuery(n,u)}));ao(r)&&n.set(o,u)}}}else{if("eq"===e.operator)return this.evaluateEqOperator(e,t,r);for(const[r,o]of t)this.evaluateQuery(e,o)&&n.set(r,o)}return n}evaluateQueryGroup(e,t,r,n){let o=new Map,u=t;if(!e.queries||0===e.queries?.length)return u;for(const i of e.queries){let s=new Map;if(s=this.queryBuilder.isQuery(i)?this.getEvaluatedQueryDataset(i,u,n):this.evaluateQueryGroup(i,u,r,n),0===o.size&&(o=s),"or"===e.groupType)s.forEach((e=>{o.set(e.key,e)}));else{const e=Jn(Array.from(o.values()),Array.from(s.values()),"key");for(const t of e)o.delete(t.key)}u="and"===e.groupType?o:t}return o}queryData(e,t,r,n){const o=e;return 0===t.queries.length?e:(t.groupKey||(t.groupKey="root"),t.groupType||(t.groupType="and"),t.queries||(t.queries=[]),this.validateQuery(t),this.evaluateQueryGroup(t,o,r,n))}}class fo{scripts=new Map;scriptFunctions=new Map;constructor(){}keys(){return Array.from(this.scripts.keys())}setScript(e,t){this.scripts.set(e,t)}removeScript(e){this.scripts.delete(e)}getScript(e){return this.scripts.get(e)}hasScript(e){return this.scripts.has(e)}getScriptAsFn(e,t){if(this.scriptFunctions.has(e))return this.scriptFunctions.get(e);const r=this.getScript(e);if(!r)throw new Error(`Script ${e} not found`);const n=this.getWrapperScript(r),o=new Function("script_type",...t,n);return this.scriptFunctions.set(e,o),o}getWrapperScript(e){return`\n "use strict";\n ${e}\n `}executeScript(e,t,r){if(!this.getScript(e))throw new Error(`Script ${e} not found`);r.context||(r.context=r.options||{});const n=Object.keys(r),o=Object.values(r);return this.getScriptAsFn(e,n)(t,...o)}}const lo=(e,t)=>e?(t||(t={}),e.replace(/\$\{(.*?)\}/g,((e,r)=>Fr(t,r.trim(),"")))):"",po=e=>{const t=new Set;return e.replace(/\$\{(.*?)\}/g,((e,r)=>(t.add(r.trim()),""))),{variables:Array.from(t).map((e=>({name:e})))}},yo=["any","Array<date>","Array<float>","Array<int>","Array<string>","boolean","date","float","int","json","string"],ho=["int","float","Array<int>","Array<float>"],go=["date","Array<date>"],vo=["eq","find","gt","gte","lt","lte","typeof","isTruthy","size"];return t})()));
|
|
1
|
+
!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var r=t();for(var n in r)("object"==typeof exports?exports:e)[n]=r[n]}}(this,(()=>(()=>{"use strict";var e={d:(t,r)=>{for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};function r(e){return function(e){let t=0;for(let r=0;r<e.length;r++)t=(t<<5)-t+e.charCodeAt(r),t|=0;return t.toString(16)}(n(e))}function n(e){if("object"!=typeof e||null===e)return String(e);if(Array.isArray(e))return"["+e.map(n).join(",")+"]";const t=Object.keys(e).sort();let r="{";for(let o=0;o<t.length;o++){const i=t[o];r+=i+":"+n(e[i]),o<t.length-1&&(r+=",")}return r+="}",r}e.r(t),e.d(t,{AnalyticsController:()=>i,CacheController:()=>kt,ChangeDetector:()=>Rt,DatePropertyTypes:()=>_o,DcuplQueryBuilder:()=>yn,DcuplQueryOperatorsAsArray:()=>wo,DependencyGraph:()=>Lt,IndicesController:()=>gn,NumberPropertyTypes:()=>jo,PropertyTypesAsArray:()=>mo,QueryManager:()=>ho,ScriptController:()=>vo,clone:()=>Bt,compareVersions:()=>zt,computeSuggestions:()=>Vt,escapeRegExp:()=>Dt,evaluateTemplate:()=>go,generateBooleanQuery:()=>On,generateKey:()=>Tt,generateNumberAndDateQuery:()=>Kn,generateReferenceQuery:()=>Qn,generateTextQuery:()=>xn,getAggregation:()=>Jt,getDateConstraintUid:()=>Ct,getDcuplPropertyTypeForNativeType:()=>qn,getDistinct:()=>er,getFacets:()=>hn,getFilterEntryId:()=>St,getNumberConstraintUid:()=>Mt,getPropertiesForData:()=>_n,groupBy:()=>It,hasMinimumVersion:()=>Nt,isFloat:()=>An,isInt:()=>wn,isValidQueryStatement:()=>kn,isValidVersion:()=>Pt,parseTemplate:()=>bo,perf:()=>o,pivot:()=>mn,removeTrailingSlash:()=>$t,trigger:()=>Ut,unescapeRegExp:()=>Ft,uniqBy:()=>Et});const o={now:()=>"undefined"!=typeof performance&&performance.now?Math.round(1e3*performance.now())/1e3:(new Date).getTime(),mark:e=>{"undefined"!=typeof performance&&performance.mark&&performance.mark(e)},measure:(e,t,r)=>{"undefined"!=typeof performance&&performance.measure&&performance.measure(e,t,r)},getEntriesByName(e){if("undefined"!=typeof performance&&performance.getEntriesByName)return performance.getEntriesByName(e)},getEntriesByType(e){if("undefined"!=typeof performance&&performance.getEntriesByType)return performance.getEntriesByType(e)}};class i{data;enabled=!1;constructor(){}init(e){this.data=new Map,this.enabled=e}set(e){if(!this.enabled)return e.value;const t=this.getKey(e.value.name,e.context);return this.data.set(t,e.value),this.data.get(t)}mark(e){if(!this.enabled)return;const t=this.getKey(e.name,e.context),r={name:e.name,type:"mark",value:o.now(),createdAt:Date.now()};return this.data.set(t,r),r}measure(e){if(!this.enabled)return;const t=this.getKey(e.name,e.context),r=this.data.get(this.getKey(e.start,e.context)),n=this.data.get(this.getKey(e.end,e.context));if(!r||!n)return;const o=n.value-r.value,i=Math.round(100*o)/100,u=this.data.get(t);if(u&&e.sum){const e=u.value+i,r={...u,value:e};return this.data.set(t,r),r}const s={name:e.name,type:"measure",value:i,createdAt:Date.now()};return e.detail&&(s.detail=e.detail),this.data.set(t,s),s}update(e){if(!this.enabled)return e.value;const t=this.getKey(e.value.name,e.context),r=this.data.get(t);if(r){const n={...r,...e.value};this.data.set(t,n)}else this.data.set(t,e.value);return this.data.get(t)}getResourceInfosFromPerformanceAPI(){return"undefined"==typeof performance?[]:o.getEntriesByType("resource")}get(e){const t=this.getKey(e.name,e.context);return this.data.get(t)}getByType(e){return Array.from(this.data.values()).filter((t=>t.type===e))}getByName(e){return Array.from(this.data.values()).filter((t=>t.name===e))}clear(){this.data.clear()}getKey(e,t){return t?e+"_"+r(t):e}}const u=function(e,t){return e===t||e!=e&&t!=t},s=function(e,t){for(var r=e.length;r--;)if(u(e[r][0],t))return r;return-1};var a=Array.prototype.splice;function c(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}c.prototype.clear=function(){this.__data__=[],this.size=0},c.prototype.delete=function(e){var t=this.__data__,r=s(t,e);return!(r<0||(r==t.length-1?t.pop():a.call(t,r,1),--this.size,0))},c.prototype.get=function(e){var t=this.__data__,r=s(t,e);return r<0?void 0:t[r][1]},c.prototype.has=function(e){return s(this.__data__,e)>-1},c.prototype.set=function(e,t){var r=this.__data__,n=s(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this};const f=c,l="object"==typeof global&&global&&global.Object===Object&&global;var p="object"==typeof self&&self&&self.Object===Object&&self;const y=l||p||Function("return this")(),d=y.Symbol;var h=Object.prototype,v=h.hasOwnProperty,g=h.toString,b=d?d.toStringTag:void 0;var m=Object.prototype.toString;var j=d?d.toStringTag:void 0;const _=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":j&&j in Object(e)?function(e){var t=v.call(e,b),r=e[b];try{e[b]=void 0;var n=!0}catch(e){}var o=g.call(e);return n&&(t?e[b]=r:delete e[b]),o}(e):function(e){return m.call(e)}(e)},w=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)},A=function(e){if(!w(e))return!1;var t=_(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t},q=y["__core-js_shared__"];var x,O=(x=/[^.]+$/.exec(q&&q.keys&&q.keys.IE_PROTO||""))?"Symbol(src)_1."+x:"";var K=Function.prototype.toString;const Q=function(e){if(null!=e){try{return K.call(e)}catch(e){}try{return e+""}catch(e){}}return""};var k=/^\[object .+?Constructor\]$/,S=Function.prototype,M=Object.prototype,C=S.toString,E=M.hasOwnProperty,I=RegExp("^"+C.call(E).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");const T=function(e){return!(!w(e)||(t=e,O&&O in t))&&(A(e)?I:k).test(Q(e));var t},$=function(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return T(r)?r:void 0},D=$(y,"Map"),F=$(Object,"create");var N=Object.prototype.hasOwnProperty;var z=Object.prototype.hasOwnProperty;function P(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}P.prototype.clear=function(){this.__data__=F?F(null):{},this.size=0},P.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},P.prototype.get=function(e){var t=this.__data__;if(F){var r=t[e];return"__lodash_hash_undefined__"===r?void 0:r}return N.call(t,e)?t[e]:void 0},P.prototype.has=function(e){var t=this.__data__;return F?void 0!==t[e]:z.call(t,e)},P.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=F&&void 0===t?"__lodash_hash_undefined__":t,this};const R=P,B=function(e,t){var r,n,o=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?o["string"==typeof t?"string":"hash"]:o.map};function G(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}G.prototype.clear=function(){this.size=0,this.__data__={hash:new R,map:new(D||f),string:new R}},G.prototype.delete=function(e){var t=B(this,e).delete(e);return this.size-=t?1:0,t},G.prototype.get=function(e){return B(this,e).get(e)},G.prototype.has=function(e){return B(this,e).has(e)},G.prototype.set=function(e,t){var r=B(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this};const U=G;function V(e){var t=this.__data__=new f(e);this.size=t.size}V.prototype.clear=function(){this.__data__=new f,this.size=0},V.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},V.prototype.get=function(e){return this.__data__.get(e)},V.prototype.has=function(e){return this.__data__.has(e)},V.prototype.set=function(e,t){var r=this.__data__;if(r instanceof f){var n=r.__data__;if(!D||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new U(n)}return r.set(e,t),this.size=r.size,this};const L=V,W=function(){try{var e=$(Object,"defineProperty");return e({},"",{}),e}catch(e){}}(),H=function(e,t,r){"__proto__"==t&&W?W(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r};var J=Object.prototype.hasOwnProperty;const Z=function(e,t,r){var n=e[t];J.call(e,t)&&u(n,r)&&(void 0!==r||t in e)||H(e,t,r)},X=function(e,t,r,n){var o=!r;r||(r={});for(var i=-1,u=t.length;++i<u;){var s=t[i],a=n?n(r[s],e[s],s,r,e):void 0;void 0===a&&(a=e[s]),o?H(r,s,a):Z(r,s,a)}return r},Y=function(e){return null!=e&&"object"==typeof e},ee=function(e){return Y(e)&&"[object Arguments]"==_(e)};var te=Object.prototype,re=te.hasOwnProperty,ne=te.propertyIsEnumerable;const oe=ee(function(){return arguments}())?ee:function(e){return Y(e)&&re.call(e,"callee")&&!ne.call(e,"callee")},ie=Array.isArray;var ue="object"==typeof exports&&exports&&!exports.nodeType&&exports,se=ue&&"object"==typeof module&&module&&!module.nodeType&&module,ae=se&&se.exports===ue?y.Buffer:void 0;const ce=(ae?ae.isBuffer:void 0)||function(){return!1};var fe=/^(?:0|[1-9]\d*)$/;const le=function(e,t){var r=typeof e;return!!(t=null==t?9007199254740991:t)&&("number"==r||"symbol"!=r&&fe.test(e))&&e>-1&&e%1==0&&e<t},pe=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991};var ye={};ye["[object Float32Array]"]=ye["[object Float64Array]"]=ye["[object Int8Array]"]=ye["[object Int16Array]"]=ye["[object Int32Array]"]=ye["[object Uint8Array]"]=ye["[object Uint8ClampedArray]"]=ye["[object Uint16Array]"]=ye["[object Uint32Array]"]=!0,ye["[object Arguments]"]=ye["[object Array]"]=ye["[object ArrayBuffer]"]=ye["[object Boolean]"]=ye["[object DataView]"]=ye["[object Date]"]=ye["[object Error]"]=ye["[object Function]"]=ye["[object Map]"]=ye["[object Number]"]=ye["[object Object]"]=ye["[object RegExp]"]=ye["[object Set]"]=ye["[object String]"]=ye["[object WeakMap]"]=!1;const de=function(e){return function(t){return e(t)}};var he="object"==typeof exports&&exports&&!exports.nodeType&&exports,ve=he&&"object"==typeof module&&module&&!module.nodeType&&module,ge=ve&&ve.exports===he&&l.process;const be=function(){try{return ve&&ve.require&&ve.require("util").types||ge&&ge.binding&&ge.binding("util")}catch(e){}}();var me=be&&be.isTypedArray;const je=me?de(me):function(e){return Y(e)&&pe(e.length)&&!!ye[_(e)]};var _e=Object.prototype.hasOwnProperty;const we=function(e,t){var r=ie(e),n=!r&&oe(e),o=!r&&!n&&ce(e),i=!r&&!n&&!o&&je(e),u=r||n||o||i,s=u?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],a=s.length;for(var c in e)!t&&!_e.call(e,c)||u&&("length"==c||o&&("offset"==c||"parent"==c)||i&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||le(c,a))||s.push(c);return s};var Ae=Object.prototype;const qe=function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Ae)},xe=function(e,t){return function(r){return e(t(r))}},Oe=xe(Object.keys,Object);var Ke=Object.prototype.hasOwnProperty;const Qe=function(e){if(!qe(e))return Oe(e);var t=[];for(var r in Object(e))Ke.call(e,r)&&"constructor"!=r&&t.push(r);return t},ke=function(e){return null!=e&&pe(e.length)&&!A(e)},Se=function(e){return ke(e)?we(e):Qe(e)};var Me=Object.prototype.hasOwnProperty;const Ce=function(e){if(!w(e))return function(e){var t=[];if(null!=e)for(var r in Object(e))t.push(r);return t}(e);var t=qe(e),r=[];for(var n in e)("constructor"!=n||!t&&Me.call(e,n))&&r.push(n);return r},Ee=function(e){return ke(e)?we(e,!0):Ce(e)};var Ie="object"==typeof exports&&exports&&!exports.nodeType&&exports,Te=Ie&&"object"==typeof module&&module&&!module.nodeType&&module,$e=Te&&Te.exports===Ie?y.Buffer:void 0,De=$e?$e.allocUnsafe:void 0;const Fe=function(){return[]};var Ne=Object.prototype.propertyIsEnumerable,ze=Object.getOwnPropertySymbols;const Pe=ze?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var r=-1,n=null==e?0:e.length,o=0,i=[];++r<n;){var u=e[r];t(u,r,e)&&(i[o++]=u)}return i}(ze(e),(function(t){return Ne.call(e,t)})))}:Fe,Re=function(e,t){for(var r=-1,n=t.length,o=e.length;++r<n;)e[o+r]=t[r];return e},Be=xe(Object.getPrototypeOf,Object),Ge=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)Re(t,Pe(e)),e=Be(e);return t}:Fe,Ue=function(e,t,r){var n=t(e);return ie(e)?n:Re(n,r(e))},Ve=function(e){return Ue(e,Se,Pe)},Le=function(e){return Ue(e,Ee,Ge)},We=$(y,"DataView"),He=$(y,"Promise"),Je=$(y,"Set"),Ze=$(y,"WeakMap");var Xe="[object Map]",Ye="[object Promise]",et="[object Set]",tt="[object WeakMap]",rt="[object DataView]",nt=Q(We),ot=Q(D),it=Q(He),ut=Q(Je),st=Q(Ze),at=_;(We&&at(new We(new ArrayBuffer(1)))!=rt||D&&at(new D)!=Xe||He&&at(He.resolve())!=Ye||Je&&at(new Je)!=et||Ze&&at(new Ze)!=tt)&&(at=function(e){var t=_(e),r="[object Object]"==t?e.constructor:void 0,n=r?Q(r):"";if(n)switch(n){case nt:return rt;case ot:return Xe;case it:return Ye;case ut:return et;case st:return tt}return t});const ct=at;var ft=Object.prototype.hasOwnProperty;const lt=y.Uint8Array,pt=function(e){var t=new e.constructor(e.byteLength);return new lt(t).set(new lt(e)),t};var yt=/\w*$/;var dt=d?d.prototype:void 0,ht=dt?dt.valueOf:void 0;const vt=function(e,t,r){var n,o,i,u=e.constructor;switch(t){case"[object ArrayBuffer]":return pt(e);case"[object Boolean]":case"[object Date]":return new u(+e);case"[object DataView]":return function(e,t){var r=t?pt(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}(e,r);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return function(e,t){var r=t?pt(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}(e,r);case"[object Map]":case"[object Set]":return new u;case"[object Number]":case"[object String]":return new u(e);case"[object RegExp]":return(i=new(o=e).constructor(o.source,yt.exec(o))).lastIndex=o.lastIndex,i;case"[object Symbol]":return n=e,ht?Object(ht.call(n)):{}}};var gt=Object.create;const bt=function(){function e(){}return function(t){if(!w(t))return{};if(gt)return gt(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();var mt=be&&be.isMap;const jt=mt?de(mt):function(e){return Y(e)&&"[object Map]"==ct(e)};var _t=be&&be.isSet;const wt=_t?de(_t):function(e){return Y(e)&&"[object Set]"==ct(e)};var At="[object Arguments]",qt="[object Function]",xt="[object Object]",Ot={};Ot[At]=Ot["[object Array]"]=Ot["[object ArrayBuffer]"]=Ot["[object DataView]"]=Ot["[object Boolean]"]=Ot["[object Date]"]=Ot["[object Float32Array]"]=Ot["[object Float64Array]"]=Ot["[object Int8Array]"]=Ot["[object Int16Array]"]=Ot["[object Int32Array]"]=Ot["[object Map]"]=Ot["[object Number]"]=Ot[xt]=Ot["[object RegExp]"]=Ot["[object Set]"]=Ot["[object String]"]=Ot["[object Symbol]"]=Ot["[object Uint8Array]"]=Ot["[object Uint8ClampedArray]"]=Ot["[object Uint16Array]"]=Ot["[object Uint32Array]"]=!0,Ot["[object Error]"]=Ot[qt]=Ot["[object WeakMap]"]=!1;const Kt=function e(t,r,n,o,i,u){var s,a=1&r,c=2&r,f=4&r;if(n&&(s=i?n(t,o,i,u):n(t)),void 0!==s)return s;if(!w(t))return t;var l=ie(t);if(l){if(s=function(e){var t=e.length,r=new e.constructor(t);return t&&"string"==typeof e[0]&&ft.call(e,"index")&&(r.index=e.index,r.input=e.input),r}(t),!a)return function(e,t){var r=-1,n=e.length;for(t||(t=Array(n));++r<n;)t[r]=e[r];return t}(t,s)}else{var p=ct(t),y=p==qt||"[object GeneratorFunction]"==p;if(ce(t))return function(e,t){if(t)return e.slice();var r=e.length,n=De?De(r):new e.constructor(r);return e.copy(n),n}(t,a);if(p==xt||p==At||y&&!i){if(s=c||y?{}:function(e){return"function"!=typeof e.constructor||qe(e)?{}:bt(Be(e))}(t),!a)return c?function(e,t){return X(e,Ge(e),t)}(t,function(e,t){return e&&X(t,Ee(t),e)}(s,t)):function(e,t){return X(e,Pe(e),t)}(t,function(e,t){return e&&X(t,Se(t),e)}(s,t))}else{if(!Ot[p])return i?t:{};s=vt(t,p,a)}}u||(u=new L);var d=u.get(t);if(d)return d;u.set(t,s),wt(t)?t.forEach((function(o){s.add(e(o,r,n,o,t,u))})):jt(t)&&t.forEach((function(o,i){s.set(i,e(o,r,n,i,t,u))}));var h=l?void 0:(f?c?Le:Ve:c?Ee:Se)(t);return function(e,t){for(var r=-1,n=null==e?0:e.length;++r<n&&!1!==t(e[r],r,e););}(h||t,(function(o,i){h&&(o=t[i=o]),Z(s,i,e(o,r,n,i,t,u))})),s},Qt=function(e){return Kt(e,5)};class kt{enabled;cache;constructor(e){this.enabled=e,this.cache=new Map}get(e,t){if(this.enabled)return this.cache.get(this.getCacheName(e,t))}set(e,t,r){this.enabled&&this.cache.set(this.getCacheName(e,t),r)}has(e,t){return this.cache.has(this.getCacheName(e,t))}clear(){this.cache.clear()}generateContext(e){try{return Qt(e)}catch(t){return console.log("error in cache generateContext",t),e}}getCacheName(e,t){return e+"_"+r(t)}}const St=(e,t="")=>`${e}#${t}`,Mt=e=>`${e.gt}_${e.gte}_${e.lt}_${e.lte}_${e.eq}_${e.ne}`,Ct=e=>`${e.gt}_${e.gte}_${e.lt}_${e.lte}_${e.eq}_${e.ne}`,Et=(e,t)=>{const r="function"==typeof t?t:e=>e[t];return[...e.reduce(((e,t)=>{const n=null==t?t:r(t);return e.has(n)||e.set(n,t),e}),new Map).values()]},It=(e,t)=>e.reduce((function(e,r){const n="function"==typeof t?t(r):r[t];return e.hasOwnProperty(n)||(e[n]=[]),e[n].push(r),e}),{});function Tt(e=10){let t="";for(let r=0;r<e;r++)t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".charAt(Math.floor(62*Math.random()));return t}const $t=e=>e.replace(/\/+$/,""),Dt=e=>"string"!=typeof e?"":e.replace(/[[\]{}()*+?.,\\^$|#]/g,"\\$&"),Ft=e=>"string"!=typeof e?"":e.replace(/\\([[\]{}()*+?.,\\^$|#])/g,"$1"),Nt=(e,t)=>{try{return zt(e,t)>=0}catch(e){return!1}},zt=(e,t)=>{if(!Pt(e)||!Pt(t))throw new Error(`Invalid version format: v1="${e}", v2="${t}". Expected format: "x.y.z"`);const r=e.split(".").map(Number),n=t.split(".").map(Number);for(let e=0;e<3;e++){const t=r[e]||0,o=n[e]||0;if(t>o)return 1;if(t<o)return-1}return 0},Pt=e=>/^\d+(\.\d+){0,2}$/.test(e);class Rt{key;parentCd;dcuplInitOptions;analyticsController;off;updateListener=new Set;constructor(){}_init(e){this.key=e.cdRefKey,this.analyticsController=e.analyticsController,this.parentCd=e.parentCd,this.dcuplInitOptions=e.dcuplInitOptions,this.parentCd&&(this.off=this.parentCd.on((e=>{"update"===e.action&&e.originCdRefKey===this.parentCd?.key&&(e.connectMessage=!1,this.trigger(e))})))}destroy(){this.off&&this.off()}trigger(e){e.originCdRefKey||(e.originCdRefKey=this.key),e.start||(e.start=o.now(),e.end=e.start,e.duration=0),this.updateListener.forEach((t=>{t(e)}))}on(e){return this.updateListener.add(e),()=>{this.updateListener.delete(e)}}}const Bt=(e,t)=>t?"undefined"!=typeof structuredClone?structuredClone(e):Qt(e):e,Gt=(e,t,r,n,i,u)=>{try{const s=!!t.dcuplInitOptions.performance?.clone?.enabled&&!!r.cloneResult,a=Bt(u,s);if("list"===r.scope&&("DcuplList"===e.constructor.name?(r.listKey=e.key,r.modelKey=e.modelKey):"Catalog"===e.constructor.name&&(r.listKey=e.cdRef?.key,r.modelKey=e.model?.key)),"list_created"===r.type&&r.args[0].listKey.startsWith("__global_list__"))return a;if(r.listKey?.startsWith("__global_list__"))return a;const c=o.now(),f=c-n,l=Math.round(1e3*f)/1e3;r.duration=l,r.start=n,r.end=c;const p={duration:r.duration};return r.modelKey&&(p.model=r.modelKey),r.connectMessageResult&&(r.result=a),r.args&&(p.args=r.args),t?.trigger(r),t.analyticsController.mark({name:`${r.type}:end`,context:i}),t.analyticsController.measure({name:`${r.type}`,start:`${r.type}:start`,end:`${r.type}:end`,context:i,detail:p}),a}catch(e){return u}},Ut=e=>(t,r,n)=>{const i=n.value;return n.value=function(...t){const n=this.cdRef,u=Bt(e,!0),s=o.now(),a=Tt();n.analyticsController.mark({name:`${u.name}:start`,context:a});const c=this.model?.key;!u.originCdRefKey&&n.key&&(u.originCdRefKey=n.key),c&&(u.modelKey=c);try{const e=i.apply(this,t);return u.method=r,u.args=t,e&&"then"in e?e.then((e=>Gt(this,n,u,s,a,e))):Gt(this,n,u,s,a,e)}catch(e){throw e}},n};function Vt(e,t,r,n){r.max||(r.max=20);const o=[],i=r.transform?n.transformValue(r.value,r.transform):r.value;for(const[u,s]of t.entries()){const t=s.some((t=>e.has(t))),a=r.transform?n.transformValue(u,r.transform):u;if(!(r.excludeUndefineds&&void 0===u||r.excludeNulls&&null===u)){if(!t||""!==i&&"//"!==i){if(t&&n.queryFind(a,i,"some")){const e={value:u,keys:r.calculateResultKeys?s:[]};o.push(e)}}else{const e={value:u,keys:r.calculateResultKeys?s:[]};o.push(e)}if(o.length===r.max)break}}return o}class Lt{nodes;edges;constructor(){this.nodes=new Set,this.edges=new Map}addNode(e){this.nodes.has(e)||(this.nodes.add(e),this.edges.set(e,new Set))}addDependency(e,t){if(!this.nodes.has(e)||!this.nodes.has(t))throw new Error("Both nodes must exist before adding a dependency.");this.edges.get(e).add(t)}removeNode(e){if(!this.nodes.has(e))throw new Error("Node does not exist.");this.nodes.delete(e),this.edges.delete(e);for(let t of this.edges.values())t.delete(e)}removeDependency(e,t){if(!this.edges.has(e))throw new Error("From node does not exist.");this.edges.get(e).delete(t)}hasNode(e){return this.nodes.has(e)}hasDependency(e,t){return!!this.edges.has(e)&&this.edges.get(e).has(t)}getDependencies(e){if(!this.edges.has(e))throw new Error("Node does not exist.");return Array.from(this.edges.get(e))}getDependents(e){const t=[];for(let[r,n]of this.edges)n.has(e)&&t.push(r);return t}isCyclic(){const e=new Set,t=new Set,r=n=>{if(e.has(n))return!1;if(t.has(n))return!0;t.add(n);const o=this.edges.get(n);if(o)for(let e of o)if(r(e))return!0;return t.delete(n),e.add(n),!1};for(let e of this.nodes)if(r(e))return!0;return!1}order(){const e=new Set,t=new Set,r=[],n=o=>{if(e.has(o))return;if(t.has(o))throw new Error("Graph has a cycle.");t.add(o);const i=this.edges.get(o);if(i)for(let e of i)n(e);t.delete(o),e.add(o),r.push(o)};for(let t of this.nodes)e.has(t)||n(t);return r}clear(){this.nodes.clear(),this.edges.clear()}getNodes(){return Array.from(this.nodes)}getAllEdges(){const e=[];for(let[t,r]of this.edges)for(let n of r)e.push([t,n]);return e}}function Wt(e){let t=0;for(let r of e){const e=r.toString().split(".")[1];e&&(t=Math.max(t,e.length))}return Math.pow(10,t)}function Ht(e,t,r){return(e*r+t*r)/r}const Jt=(e,t,r,n)=>{if(!n)throw new Error("Attribute not found");const o={attribute:n,types:e.types};let i,u;return(o.types.includes("sum")||o.types.includes("avg")||o.types.includes("count"))&&(i=Yt(n,t)),(o.types.includes("min")||o.types.includes("max"))&&(u=Zt(e.attribute,t)),e.types.forEach((n=>{"sum"===n?o.sum=i?.sum:"avg"===n?o.avg=i?.average:"count"===n?o.count=i?.count:"min"===n?o.min=u&&u[0]:"max"===n?o.max=u&&u[1]:"distinct"===n?o.distinct=er(e,t,r):"group"===n&&(o.group=Xt(e,t))})),o},Zt=(e,t)=>{let r,n;for(const o of t.values())if(o){const t=o[e];(void 0===r||t<r)&&(r=t),(void 0===n||t>n)&&(n=t)}if(void 0!==r&&void 0!==n)return[r,n]},Xt=(e,t)=>{const r=[];e.groupOptions?.groups?.forEach((e=>{r.push({option:e,count:0,keys:[]})}));const n={option:{value:["$dcupl_not_found"]},count:0,keys:[]};for(const o of t.values()){const t=o[e.attribute];for(const i of r)void 0!==i.option.value&&i.option.value.includes(t)||void 0!==i.option.from&&i.option.from<t&&void 0!==i.option.to&&i.option.to>t?(i.count++,i.keys.push(o.key)):e?.groupOptions?.calculateNotFound&&(n.count++,n.keys.push(o.key))}return e?.groupOptions?.calculateNotFound&&r.push(n),r},Yt=(e,t)=>{let r=0,n=0;for(const o of t.values()){if(!o)continue;const t=o[e];if(Array.isArray(t))for(const e of t)"number"==typeof e&&(r=Ht(r,e,Wt([r,e])),n++);else"number"==typeof t&&(r=Ht(r,t,Wt([r,t])),n++)}var o,i,u;if(0!==n)return{average:(o=r,i=n,u=Wt([r,n]),o*u/(i*u)),count:t.size,sum:r}},er=(e,t,r)=>{const n=[];for(const[o,i]of r)if((!e.excludeUndefineds||void 0!==o)&&i.find((e=>t.has(e)))){const t={value:o,count:i.length};if(e.distinctOptions?.skipKeys||(t.keys=i),n.push(t),e.distinctOptions?.limit&&n.length>=e.distinctOptions.limit)break}return n},tr=function(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(!t(e[r],r,e))return!1;return!0},rr=function(e,t,r){for(var n=-1,o=Object(e),i=r(e),u=i.length;u--;){var s=i[++n];if(!1===t(o[s],s,o))break}return e},nr=function(e,t){if(null==e)return e;if(!ke(e))return function(e,t){return e&&rr(e,t,Se)}(e,t);for(var r=e.length,n=-1,o=Object(e);++n<r&&!1!==t(o[n],n,o););return e},or=function(e,t){var r=!0;return nr(e,(function(e,n,o){return r=!!t(e,n,o)})),r};function ir(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new U;++t<r;)this.add(e[t])}ir.prototype.add=ir.prototype.push=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},ir.prototype.has=function(e){return this.__data__.has(e)};const ur=ir,sr=function(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1},ar=function(e,t){return e.has(t)},cr=function(e,t,r,n,o,i){var u=1&r,s=e.length,a=t.length;if(s!=a&&!(u&&a>s))return!1;var c=i.get(e),f=i.get(t);if(c&&f)return c==t&&f==e;var l=-1,p=!0,y=2&r?new ur:void 0;for(i.set(e,t),i.set(t,e);++l<s;){var d=e[l],h=t[l];if(n)var v=u?n(h,d,l,t,e,i):n(d,h,l,e,t,i);if(void 0!==v){if(v)continue;p=!1;break}if(y){if(!sr(t,(function(e,t){if(!ar(y,t)&&(d===e||o(d,e,r,n,i)))return y.push(t)}))){p=!1;break}}else if(d!==h&&!o(d,h,r,n,i)){p=!1;break}}return i.delete(e),i.delete(t),p},fr=function(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r},lr=function(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r};var pr=d?d.prototype:void 0,yr=pr?pr.valueOf:void 0;var dr=Object.prototype.hasOwnProperty;var hr="[object Arguments]",vr="[object Array]",gr="[object Object]",br=Object.prototype.hasOwnProperty;const mr=function(e,t,r,n,o,i){var s=ie(e),a=ie(t),c=s?vr:ct(e),f=a?vr:ct(t),l=(c=c==hr?gr:c)==gr,p=(f=f==hr?gr:f)==gr,y=c==f;if(y&&ce(e)){if(!ce(t))return!1;s=!0,l=!1}if(y&&!l)return i||(i=new L),s||je(e)?cr(e,t,r,n,o,i):function(e,t,r,n,o,i,s){switch(r){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!i(new lt(e),new lt(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return u(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var a=fr;case"[object Set]":var c=1&n;if(a||(a=lr),e.size!=t.size&&!c)return!1;var f=s.get(e);if(f)return f==t;n|=2,s.set(e,t);var l=cr(a(e),a(t),n,o,i,s);return s.delete(e),l;case"[object Symbol]":if(yr)return yr.call(e)==yr.call(t)}return!1}(e,t,c,r,n,o,i);if(!(1&r)){var d=l&&br.call(e,"__wrapped__"),h=p&&br.call(t,"__wrapped__");if(d||h){var v=d?e.value():e,g=h?t.value():t;return i||(i=new L),o(v,g,r,n,i)}}return!!y&&(i||(i=new L),function(e,t,r,n,o,i){var u=1&r,s=Ve(e),a=s.length;if(a!=Ve(t).length&&!u)return!1;for(var c=a;c--;){var f=s[c];if(!(u?f in t:dr.call(t,f)))return!1}var l=i.get(e),p=i.get(t);if(l&&p)return l==t&&p==e;var y=!0;i.set(e,t),i.set(t,e);for(var d=u;++c<a;){var h=e[f=s[c]],v=t[f];if(n)var g=u?n(v,h,f,t,e,i):n(h,v,f,e,t,i);if(!(void 0===g?h===v||o(h,v,r,n,i):g)){y=!1;break}d||(d="constructor"==f)}if(y&&!d){var b=e.constructor,m=t.constructor;b==m||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof m&&m instanceof m||(y=!1)}return i.delete(e),i.delete(t),y}(e,t,r,n,o,i))},jr=function e(t,r,n,o,i){return t===r||(null==t||null==r||!Y(t)&&!Y(r)?t!=t&&r!=r:mr(t,r,n,o,e,i))},_r=function(e,t,r,n){var o=r.length,i=o,u=!n;if(null==e)return!i;for(e=Object(e);o--;){var s=r[o];if(u&&s[2]?s[1]!==e[s[0]]:!(s[0]in e))return!1}for(;++o<i;){var a=(s=r[o])[0],c=e[a],f=s[1];if(u&&s[2]){if(void 0===c&&!(a in e))return!1}else{var l=new L;if(n)var p=n(c,f,a,e,t,l);if(!(void 0===p?jr(f,c,3,n,l):p))return!1}}return!0},wr=function(e){return e==e&&!w(e)},Ar=function(e){for(var t=Se(e),r=t.length;r--;){var n=t[r],o=e[n];t[r]=[n,o,wr(o)]}return t},qr=function(e,t){return function(r){return null!=r&&r[e]===t&&(void 0!==t||e in Object(r))}},xr=function(e){return"symbol"==typeof e||Y(e)&&"[object Symbol]"==_(e)};var Or=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Kr=/^\w*$/;const Qr=function(e,t){if(ie(e))return!1;var r=typeof e;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=e&&!xr(e))||Kr.test(e)||!Or.test(e)||null!=t&&e in Object(t)};function kr(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var r=function(){var n=arguments,o=t?t.apply(this,n):n[0],i=r.cache;if(i.has(o))return i.get(o);var u=e.apply(this,n);return r.cache=i.set(o,u)||i,u};return r.cache=new(kr.Cache||U),r}kr.Cache=U;var Sr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Mr=/\\(\\)?/g;const Cr=(Er=kr((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(Sr,(function(e,r,n,o){t.push(n?o.replace(Mr,"$1"):r||e)})),t}),(function(e){return 500===Ir.size&&Ir.clear(),e})),Ir=Er.cache,Er);var Er,Ir;const Tr=function(e,t){for(var r=-1,n=null==e?0:e.length,o=Array(n);++r<n;)o[r]=t(e[r],r,e);return o};var $r=d?d.prototype:void 0,Dr=$r?$r.toString:void 0;const Fr=function e(t){if("string"==typeof t)return t;if(ie(t))return Tr(t,e)+"";if(xr(t))return Dr?Dr.call(t):"";var r=t+"";return"0"==r&&1/t==-1/0?"-0":r},Nr=function(e){return null==e?"":Fr(e)},zr=function(e,t){return ie(e)?e:Qr(e,t)?[e]:Cr(Nr(e))},Pr=function(e){if("string"==typeof e||xr(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t},Rr=function(e,t){for(var r=0,n=(t=zr(t,e)).length;null!=e&&r<n;)e=e[Pr(t[r++])];return r&&r==n?e:void 0},Br=function(e,t,r){var n=null==e?void 0:Rr(e,t);return void 0===n?r:n},Gr=function(e,t){return null!=e&&t in Object(e)},Ur=function(e,t){return null!=e&&function(e,t,r){for(var n=-1,o=(t=zr(t,e)).length,i=!1;++n<o;){var u=Pr(t[n]);if(!(i=null!=e&&r(e,u)))break;e=e[u]}return i||++n!=o?i:!!(o=null==e?0:e.length)&&pe(o)&&le(u,o)&&(ie(e)||oe(e))}(e,t,Gr)},Vr=function(e){return e},Lr=function(e){return function(t){return null==t?void 0:t[e]}},Wr=function(e){return Qr(e)?Lr(Pr(e)):function(e){return function(t){return Rr(t,e)}}(e)},Hr=function(e){return"function"==typeof e?e:null==e?Vr:"object"==typeof e?ie(e)?(n=e[0],o=e[1],Qr(n)&&wr(o)?qr(Pr(n),o):function(e){var t=Br(e,n);return void 0===t&&t===o?Ur(e,n):jr(o,t,3)}):1==(r=Ar(t=e)).length&&r[0][2]?qr(r[0][0],r[0][1]):function(e){return e===t||_r(e,t,r)}:Wr(e);var t,r,n,o},Jr=function(e,t,r){if(!w(r))return!1;var n=typeof t;return!!("number"==n?ke(r)&&le(t,r.length):"string"==n&&t in r)&&u(r[t],e)},Zr=function(e,t,r){var n=ie(e)?tr:or;return r&&Jr(e,t,r)&&(t=void 0),n(e,Hr(t))},Xr=function(e,t,r,n){for(var o=e.length,i=r+(n?1:-1);n?i--:++i<o;)if(t(e[i],i,e))return i;return-1};var Yr=/\s/;var en=/^\s+/;const tn=function(e){return e?e.slice(0,function(e){for(var t=e.length;t--&&Yr.test(e.charAt(t)););return t}(e)+1).replace(en,""):e};var rn=/^[-+]0x[0-9a-f]+$/i,nn=/^0b[01]+$/i,on=/^0o[0-7]+$/i,un=parseInt;var sn=1/0;const an=function(e){return e?(e=function(e){if("number"==typeof e)return e;if(xr(e))return NaN;if(w(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=w(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=tn(e);var r=nn.test(e);return r||on.test(e)?un(e.slice(2),r?2:8):rn.test(e)?NaN:+e}(e))===sn||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0},cn=function(e){var t=an(e),r=t%1;return t==t?r?t-r:t:0};var fn=Math.max;const ln=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var o=null==r?0:cn(r);return o<0&&(o=fn(n+o,0)),Xr(e,Hr(t),o)};class pn extends Error{query;constructor(e,t){super(`Query Error: ${e} in ${JSON.stringify(t,null,2)}`),this.query=t,this.name="DcuplQueryError"}}class yn{_defaultQueryOptions={modelKey:"",groupKey:"root",groupType:"and",queries:[]};_initOptions;currentQuery=Qt(this._defaultQueryOptions);constructor(){}init(e){this._initOptions=Qt(e),this.currentQuery=Qt(this._defaultQueryOptions),this.currentQuery.modelKey=e.modelKey}reset(){return this.init(this._initOptions),this.getQuery()}isQuery(e){return"attribute"in e}isQueryGroup(e){return"groupKey"in e}isRootQueryGroup(e){return this.isQueryGroup(e)&&"root"===e.groupKey}getQueryGroup(e){return this.currentQuery.queries.find((t=>this.isQueryGroup(t)&&t.groupKey===e))}getQuery(){return Qt(this.currentQuery)}hasQueryGroup(e){return this.currentQuery.queries.some((t=>this.isQueryGroup(t)&&t.groupKey===e))}has(e){if(e.groupKey&&e.queryKey){const t=this.getQueryGroup(e.groupKey);if(t)return t.queries.some((t=>this.isQuery(t)&&t.queryKey===e.queryKey))}else if(e.groupKey)return this.hasQueryGroup(e.groupKey);return!1}validate(e){const t=e.queries.map((e=>this.validateQuery(e)));return{valid:Zr(t,(e=>e.valid)),errors:t.map((e=>e.errors)).flat()}}applyOptions(e,t="update"){return"set"===t?(this.currentQuery.count=e.count,this.currentQuery.start=e.start,this.currentQuery.sort=e.sort,this.currentQuery.projection=e.projection):(void 0!==e?.sort&&(this.currentQuery.sort=e.sort),void 0!==e?.count&&(this.currentQuery.count=e.count),void 0!==e?.start&&(this.currentQuery.start=e?.start),void 0!==e?.projection&&(this.currentQuery.projection=e?.projection)),this.getQuery()}applyQuery(e,t,r){if(r||(r=this.currentQuery),Array.isArray(e))for(const n of e)this.applyQuery(n,t,r);else if(this.isRootQueryGroup(e))e.groupType&&(r.groupType=e.groupType),r.queries="set"===t?.mode?e.queries:[...r.queries,...e.queries],this.applyOptions(e,"set");else if(this.isQuery(e)){const n=r.queries.findIndex((t=>this.isQueryGroup(t)&&t.groupKey===e.attribute));if(n>-1){const o=r.queries[n];"set"===t?.mode?o.queries=[e]:o.queries.push(e)}else r.queries.push({groupKey:e.attribute,groupType:"or",queries:[e]})}else if(this.isQueryGroup(e)){const n=r.queries.findIndex((t=>this.isQueryGroup(t)&&t.groupKey===e.groupKey));if(n>-1){const o=r.queries[n];e.groupType&&(o.groupType=e.groupType),"set"===t?.mode?r.queries[n]=e:o.queries=[...o.queries,...e.queries]}else r.queries.push({groupKey:e.groupKey,groupType:e.groupType||"or",queries:e.queries})}return r}removeAllQueries(){return this.currentQuery.queries=[],this.getQuery()}removeQuery(e,t){if(t||(t=this.currentQuery),this.isQuery(e)){const r=t.queries.findIndex((t=>this.isQueryGroup(t)&&t.groupKey===e.attribute));if(r>-1){const n=t.queries[r],o=ln(n.queries,e);o>-1&&n.queries.splice(o,1),0===n.queries.length&&t.queries.splice(r,1)}}else if(this.isQueryGroup(e)){const r=t.queries.findIndex((t=>this.isQueryGroup(t)&&t.groupKey===e.groupKey));if(r>-1)if(e.queries){const n=t.queries[r];for(const t of e.queries){const e=ln(n.queries,t);e>-1&&n.queries.splice(e,1)}0===n.queries.length&&t.queries.splice(r,1)}else t.queries.splice(r,1)}return t}validateQuery(e){const t=[];if(this.isQuery(e))return e.attribute||t.push(new pn("Missing attribute",e)),e.operator||t.push(new pn("Missing operator",e)),void 0===e.value&&t.push(new pn("Missing value",e)),"find"===e.operator&&Array.isArray(e.value)&&t.push(new pn("find operator cannot have array value",e)),t.length>0?{valid:!1,errors:t}:{valid:!0};if(this.isQueryGroup(e)){const t=e.queries.map((e=>this.validateQuery(e))).filter((e=>!e.valid)).map((e=>e.errors)).flat();return t.length>0?{valid:!1,errors:t}:{valid:!0}}return t.push(new pn("Invalid query definition",e)),{valid:!1,errors:t}}}const dn=new yn;function hn(e,t,r,n,o,i,u){const s=[],a=dn.removeQuery({groupKey:o},Qt(n)),c=u.queryData(e,a,!1,i),f=t?[...t?.keys()]:[],l=new Set(f),p=i.get(o);if(!r.excludeUnresolved)for(const e of p.keys())l.add(e);r.excludeUndefineds?l.delete(void 0):l.add(void 0);for(const e of l.values()){const i=new Map,u=p.get(e)||[];for(const e of u){const t=c.get(e);if(t&&(i.set(e,t),!r?.calculateFacets))break}const a={key:String(e),value:e,selected:vn(o,e,n),enabled:i.size>0,size:i.size,entry:t.get(e),resultKeys:Array.from(i.keys())};if(!r?.excludeZeros||0!==a.size){if(r?.count&&s.length===r?.count)return s;s.push(a)}}return s}const vn=(e,t,r)=>{const n=r.queries.findIndex((t=>dn.isQueryGroup(t)&&t.groupKey===e));return n>-1&&!!r.queries[n].queries.find((r=>{if(dn.isQuery(r)){const n=r.value?.key||r.value;return r.attribute===e&&n===t}return!1}))};class gn{indexMap=new Map;dataMap=new Map;constructor(){}reset(e){e?(this.indexMap.delete(e),this.dataMap.delete(e)):(this.indexMap.clear(),this.dataMap.clear())}fillDataMap(e,t){let r=this.dataMap.get(e);r||(r=new Map,this.dataMap.set(e,r));for(const n of t){let t;if("object"==typeof n&&n&&n.key)t=n.key;else{if(Array.isArray(n)){for(const t of n)this.fillDataMap(e,[t]);return}t=n}let o=r.get(t);o||(o={key:t},this.dataMap.get(e)?.set(t,o))}}fillInverseIndex(e,t,r){if(!(e&&t&&r&&Array.isArray(r)))return;const n=this.indexMap.get(e)||new Map;for(const o of r){let r;if("object"==typeof o&&o&&o.key)r=o.key;else{if(Array.isArray(o)){for(const r of o)this.fillInverseIndex(e,t,[r]);return}r=o}const i=n.get(r)||[];i.push(t),n.set(r,i)}this.indexMap.set(e,n)}getIndex(e,t){const r=this.getIndexName(e,t);return this.indexMap.get(r)}getData(e,t){const r=this.getIndexName(e,t);return this.dataMap.get(r)}getOrCreateIndex(e,t,r){const n=this.getIndexName(e,r);let o=this.getIndex(n);if(!o){this.reset(n),this.indexMap.set(n,new Map);for(const r of t.values()){const t=r[e];this.fillInverseIndex(n,r.key,[t]),this.fillDataMap(n,[t])}o=this.getIndex(n)||new Map}return o}getIndexName(e,t){return t?e+"_"+r(t):e}}const bn="__";function mn(e,t,r={key:"root"},n="root",o=new gn){for(const r of t.columns)r.attribute&&o.getOrCreateIndex(r.attribute,e);for(const r of t.rows)r.attribute&&o.getOrCreateIndex(r.attribute,e);for(const r of t.values)r.attribute&&o.getOrCreateIndex(r.attribute,e);if(t.rows&&t.rows.length>0){r.rows=r.rows||[];const i=function(e,t,r,n,o=""){const i={key:t.attribute},u=n.getIndex(t.attribute);if(!u)return i;for(const[s,a]of u.entries()){const u={key:s},c=new Map;for(const t of a)e.has(t)&&c.set(t,e.get(t));if(c.size){for(const e of r.values){if(u.values=u.values||[],"root"===o&&!1===t?.calculateTotals)continue;const r=Jt(e,c,n.getIndex(e.attribute),e.attribute);u.values.push(r)}if(i.rows=i.rows||[],i.rows.push(u),r.rows.length>1)mn(c,{...r,rows:r.rows.slice(1)},u,o+bn+t.attribute+bn+s);else if(r.columns)for(const e of r.columns){u.columns=u.columns||[];const i=jn(c,e,r,n,o+bn+t.attribute+bn+s);u.columns.push(i)}}}return i}(e,t.rows[0],t,o,n);r.rows.push(i)}if(t.columns&&t.columns.length>0){r.columns=r.columns||[];const i=jn(e,t.columns[0],t,o,n);r.columns.push(i)}if("root"===r.key)for(const i of t.values){if(r.values=r.values||[],"root"===n&&!1===t.options?.calculateTotals)continue;const u=Jt(i,e,o.getIndex(i.attribute),i.attribute);r.values.push(u)}return r}function jn(e,t,r,n,o=""){const i={key:t.attribute},u=n.getIndex(t.attribute);if(!u)return i;for(const[s,a]of u.entries()){const u={key:s},c=new Map;for(const t of a)e.has(t)&&c.set(t,e.get(t));if(c.size){for(const e of r.values){if(u.values=u.values||[],"root"===o&&!1===t?.calculateTotals)continue;const r=Jt(e,c,n.getIndex(e.attribute),e.attribute);u.values.push(r)}i.columns=i.columns||[],i.columns.push(u),r.columns.length>1&&mn(c,{...r,columns:r.columns.slice(1)},u,o+bn+t.attribute+bn+s)}}return i}const _n=(e,t)=>{const r=[];for(const n of e){for(const[e,t]of Object.entries(n)){const n=r.find((t=>t.key===e)),o=qn(t);if(n)n.type!==o&&(n.type="any");else{const t={key:e,type:o};r.push(t)}}if(!t)break}return r},wn=e=>Number(e)===e&&e%1==0,An=e=>Number(e)===e&&e%1!=0,qn=e=>{switch(typeof e){case"string":return"string";case"number":return wn(e)?"int":An(e)?"float":"any";case"boolean":return"boolean";case"object":return function(e){return e instanceof Date||"object"==typeof e&&"[object Date]"===Object.prototype.toString.call(e)}(e)?"date":"json";default:return"any"}},xn=(e,t)=>{const r=Dt(e.text||""),n=t?.attributeKey||e.filterKey;let o;const i=t?.comparisonType||"containsIgnoreCase";return"containsIgnoreCase"===i?o={groupKey:e.filterKey,queries:[{queryKey:e.text,attribute:n,value:`/${r}/`,operator:"find",options:{transform:["lowercase"]}}]}:"containsIgnoreCaseAndWhitespace"===i?o={groupKey:e.filterKey,queries:[{queryKey:e.text,attribute:n,value:`/${r}/`,operator:"find",options:{transform:["removeWhitespace","lowercase"]}}]}:"contains"===i?o={groupKey:e.filterKey,queries:[{queryKey:e.text,attribute:n,value:`/${r}/`,operator:"find"}]}:"equal"===i?o={groupKey:e.filterKey,queries:[{queryKey:e.text,attribute:n,value:e.text,operator:"eq"}]}:"equalIgnoreCase"===i&&(o={groupKey:e.filterKey,queries:[{queryKey:e.text,attribute:n,value:e.text,operator:"eq",options:{transform:["lowercase"]}}]}),o},On=(e,t)=>{const r=t?.attributeKey||e.filterKey;return{groupKey:e.filterKey,queries:[{queryKey:e.value,attribute:r,value:e.value,operator:"eq"}]}},Kn=(e,t)=>{const r=t?.attributeKey||e.filterKey,n={groupKey:e.filterKey,queries:[]};return void 0!==e.eq&&(n.groupType="or",Array.isArray(e.eq)?e.eq.forEach((e=>{n.queries.push({attribute:r,value:e,operator:"eq"})})):n.queries.push({attribute:r,value:e.eq,operator:"eq"})),void 0!==e.ne&&(n.groupType="and",Array.isArray(e.ne)?e.ne.forEach((e=>{n.queries.push({attribute:r,value:e,operator:"eq",options:{invert:!0}})})):n.queries.push({attribute:r,value:e.ne,operator:"eq",options:{invert:!0}})),void 0!==e.gt&&(n.groupType="and",n.queries.push({attribute:r,value:e.gt,operator:"gt"})),void 0!==e.lt&&(n.groupType="and",n.queries.push({attribute:r,value:e.lt,operator:"lt"})),void 0!==e.gte&&(n.groupType="and",n.queries.push({attribute:r,value:e.gte,operator:"gte"})),void 0!==e.lte&&(n.groupType="and",n.queries.push({attribute:r,value:e.lte,operator:"lte"})),n},Qn=(e,t)=>{const r=t?.attributeKey||e.filterKey,n={groupKey:e.filterKey,queries:[]};return e.itemKeys.forEach((e=>{n.queries.push({queryKey:e,attribute:r,value:{key:e},operator:"eq"})})),n},kn=e=>"string"==typeof e.modelKey&&!!Array.isArray(e.queries),Sn=function(e,t){return jr(e,t)},Mn=Lr("length");var Cn=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");var En="\\ud800-\\udfff",In="["+En+"]",Tn="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",$n="\\ud83c[\\udffb-\\udfff]",Dn="[^"+En+"]",Fn="(?:\\ud83c[\\udde6-\\uddff]){2}",Nn="[\\ud800-\\udbff][\\udc00-\\udfff]",zn="(?:"+Tn+"|"+$n+")?",Pn="[\\ufe0e\\ufe0f]?",Rn=Pn+zn+"(?:\\u200d(?:"+[Dn,Fn,Nn].join("|")+")"+Pn+zn+")*",Bn="(?:"+[Dn+Tn+"?",Tn,Fn,Nn,In].join("|")+")",Gn=RegExp($n+"(?="+$n+")|"+Bn+Rn,"g");const Un=function(e){return function(e){return Cn.test(e)}(e)?function(e){for(var t=Gn.lastIndex=0;Gn.test(e);)++t;return t}(e):Mn(e)},Vn=function(e){if(null==e)return 0;if(ke(e))return"string"==typeof(t=e)||!ie(t)&&Y(t)&&"[object String]"==_(t)?Un(e):e.length;var t,r=ct(e);return"[object Map]"==r||"[object Set]"==r?e.size:Qe(e).length},Ln=function(e){return e!=e},Wn=function(e,t){return!(null==e||!e.length)&&function(e,t,r){return t==t?function(e,t,r){for(var n=r-1,o=e.length;++n<o;)if(e[n]===t)return n;return-1}(e,t,r):Xr(e,Ln,r)}(e,t,0)>-1},Hn=function(e,t,r){for(var n=-1,o=null==e?0:e.length;++n<o;)if(r(t,e[n]))return!0;return!1};var Jn=d?d.isConcatSpreadable:void 0;const Zn=function(e){return ie(e)||oe(e)||!!(Jn&&e&&e[Jn])},Xn=function e(t,r,n,o,i){var u=-1,s=t.length;for(n||(n=Zn),i||(i=[]);++u<s;){var a=t[u];r>0&&n(a)?r>1?e(a,r-1,n,o,i):Re(i,a):o||(i[i.length]=a)}return i};var Yn=Math.max;const eo=W?function(e,t){return W(e,"toString",{configurable:!0,enumerable:!1,value:(r=t,function(){return r}),writable:!0});var r}:Vr;var to=Date.now;const ro=(no=eo,oo=0,io=0,function(){var e=to(),t=16-(e-io);if(io=e,t>0){if(++oo>=800)return arguments[0]}else oo=0;return no.apply(void 0,arguments)});var no,oo,io;const uo=function(e){return Y(e)&&ke(e)},so=function(e){return ro(function(e,t,r){return t=Yn(void 0===t?e.length-1:t,0),function(){for(var n=arguments,o=-1,i=Yn(n.length-t,0),u=Array(i);++o<i;)u[o]=n[t+o];o=-1;for(var s=Array(t+1);++o<t;)s[o]=n[o];return s[t]=r(u),function(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}(e,this,s)}}(e,void 0,Vr),e+"")}((function(e,t){var r=function(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}(t);return uo(r)&&(r=void 0),uo(e)?function(e,t,r,n){var o=-1,i=Wn,u=!0,s=e.length,a=[],c=t.length;if(!s)return a;r&&(t=Tr(t,de(r))),n?(i=Hn,u=!1):t.length>=200&&(i=ar,u=!1,t=new ur(t));e:for(;++o<s;){var f=e[o],l=null==r?f:r(f);if(f=n||0!==f?f:0,u&&l==l){for(var p=c;p--;)if(t[p]===l)continue e;a.push(f)}else i(t,l,n)||a.push(f)}return a}(e,Xn(t,1,uo,!0),Hr(r)):[]})),ao=function(e,t,r){return e==e&&(void 0!==r&&(e=e<=r?e:r),void 0!==t&&(e=e>=t?e:t)),e},co=function(e,t,r){var n=(r="function"==typeof r?r:void 0)?r(e,t):void 0;return void 0===n?jr(e,t,void 0,r):!!n},fo=(lo=ln,function(e,t,r){var n=Object(e);if(!ke(e)){var o=Hr(t);e=Se(e),t=function(e){return o(n[e],e,n)}}var i=lo(e,t,r);return i>-1?n[o?e[i]:i]:void 0});var lo;const po=function(e,t){var r;return nr(e,(function(e,n,o){return!(r=t(e,n,o))})),!!r},yo=function(e,t,r){var n=ie(e)?sr:po;return r&&Jr(e,t,r)&&(t=void 0),n(e,Hr(t))};class ho{scriptController;registeredCustomOperator=new Map;queryBuilder=new yn;constructor(e){this.scriptController=e}registerCustomOperator(e,t){this.registeredCustomOperator.set(e,t)}transformValue(e,t){if(Array.isArray(e))return e.map((e=>this.transformValue(e,t)));if("string"!=typeof e)return e;for(const r of t)"lowercase"===r?e=e.toLowerCase():"trim"===r?e=e.trim():"removeWhitespace"===r&&(e=e.replace(/\s/g,""));return e}evaluateQuery(e,t){let r,n=e.value;const o=e.options?.arrayValueHandling||"some";if(Array.isArray(e.options?.transform)&&e.options.transform.length>0&&(n=this.transformValue(n,e.options.transform)),r=e.attribute.includes(".")||e.attribute.includes("[")?Br(t,e.attribute):t[e.attribute],Array.isArray(e.options?.transform)&&e.options.transform.length>0&&(r=this.transformValue(r,e.options.transform)),null==r&&!["typeof","isTruthy","eq"].includes(e.operator))return!1;switch(e.operator){case"eq":return e.options?.invert?!Sn(r,n):Sn(r,n);case"find":return e.options?.invert?!this.queryFind(r,n,o):this.queryFind(r,n,o);case"lt":return Array.isArray(r)?"some"===o?r.some((e=>e<n)):r.every((e=>e<n)):r<n;case"gt":return Array.isArray(r)?"some"===o?r.some((e=>e>n)):r.every((e=>e>n)):r>n;case"lte":return Array.isArray(r)?"some"===o?r.some((e=>e<=n)):r.every((e=>e<=n)):r<=n;case"gte":return Array.isArray(r)?"some"===o?r.some((e=>e>=n)):r.every((e=>e>=n)):r>=n;case"typeof":return e.options?.invert?typeof r!==n:Array.isArray(r)?"some"===o?r.some((e=>typeof e===n)):r.every((e=>typeof e===n)):typeof r===n;case"isTruthy":return!0===n?Array.isArray(r)?"some"===o?r.some((e=>typeof!!e)):r.every((e=>typeof!!e)):!!r:!r;case"size":return"string"==typeof r?r.length===n:Vn(r)===n;default:if(this.scriptController.hasScript(e.operator))return this.scriptController.executeScript(e.operator,"operator",{query:e,item:t});if(this.registeredCustomOperator.has(e.operator)){const r=this.registeredCustomOperator.get(e.operator);if("function"==typeof r)return r(e,t)}}return!1}evaluateEqOperator(e,t,r){const n=new Map,o=r.get(e.attribute);if(o){let r;if("string"==typeof e.value?r=e.value:e.value?.key&&1===Object.keys(e.value).length&&(r=e.value.key),void 0!==r){const i=o.get(r);if(i){if(i.forEach((e=>{t.has(e)&&n.set(e,t.get(e))})),e.options?.invert){const e=so(Array.from(t.values()),Array.from(n.values()),"key"),r=new Map;return e.forEach((e=>{r.set(e.key,e)})),r}return n}}}for(const[r,o]of t)this.evaluateQuery(e,o)&&n.set(r,o);return n}equalRegexFn(e,t){if("string"!=typeof t||(i="/",o=Nr(o=t),u=null==u?0:ao(cn(u),0,o.length),i=Fr(i),o.slice(u,u+i.length)!=i)||!function(e,t,r){e=Nr(e),t=Fr(t);var n=e.length,o=r=void 0===r?n:ao(cn(r),0,n);return(r-=t.length)>=0&&e.slice(r,o)==t}(t,"/"))return Array.isArray(e)?!!e.find((e=>co(e,t,this.equalRegexFn))):"object"==typeof t?(r=e)===(n=t)||_r(r,n,Ar(n)):e===t;var r,n,o,i,u;try{return new RegExp(t.slice(1,-1)).test(e)}catch(e){return!1}}queryFind(e,t,r){return Array.isArray(e)?"string"==typeof t||"number"==typeof t||"boolean"==typeof t?"some"===r?e.some((e=>co(e,t,this.equalRegexFn))):e.every((e=>co(e,t,this.equalRegexFn))):!!fo(e,t):co(e,t,this.equalRegexFn)}validateQuery(e){if(this.queryBuilder.isQuery(e)){if(!e.attribute||!e.operator)throw new Error("invalid query - missing attribute or operator");if("find"===e.operator&&Array.isArray(e.value))throw new Error("invalid query - find operator cannot have array value");return!0}if(this.queryBuilder.isQueryGroup(e))return Zr(e.queries,(e=>this.validateQuery(e)));throw new Error("invalid query - missing query or attribute")}getEvaluatedQueryDataset(e,t,r){const n=new Map;if(e.attribute.includes("[*]")){const r=e.attribute.replace("[*]","");for(const[o,i]of t){const t=i[r];if(Array.isArray(t)){const r=t.map(((t,r)=>{const n=Qt(e);return n.attribute=n.attribute.replace("[*]",`[${r}]`),this.evaluateQuery(n,i)}));yo(r)&&n.set(o,i)}}}else{if("eq"===e.operator)return this.evaluateEqOperator(e,t,r);for(const[r,o]of t)this.evaluateQuery(e,o)&&n.set(r,o)}return n}evaluateQueryGroup(e,t,r,n){let o=new Map,i=t;if(!e.queries||0===e.queries?.length)return i;for(const u of e.queries){let s=new Map;if(s=this.queryBuilder.isQuery(u)?this.getEvaluatedQueryDataset(u,i,n):this.evaluateQueryGroup(u,i,r,n),0===o.size&&(o=s),"or"===e.groupType)s.forEach((e=>{o.set(e.key,e)}));else{const e=so(Array.from(o.values()),Array.from(s.values()),"key");for(const t of e)o.delete(t.key)}i="and"===e.groupType?o:t}return o}queryData(e,t,r,n){const o=e;return 0===t.queries.length?e:(t.groupKey||(t.groupKey="root"),t.groupType||(t.groupType="and"),t.queries||(t.queries=[]),this.validateQuery(t),this.evaluateQueryGroup(t,o,r,n))}}class vo{scripts=new Map;scriptFunctions=new Map;constructor(){}keys(){return Array.from(this.scripts.keys())}setScript(e,t){this.scripts.set(e,t)}removeScript(e){this.scripts.delete(e)}getScript(e){return this.scripts.get(e)}hasScript(e){return this.scripts.has(e)}getScriptAsFn(e,t){if(this.scriptFunctions.has(e))return this.scriptFunctions.get(e);const r=this.getScript(e);if(!r)throw new Error(`Script ${e} not found`);const n=this.getWrapperScript(r),o=new Function("script_type",...t,n);return this.scriptFunctions.set(e,o),o}getWrapperScript(e){return`\n "use strict";\n ${e}\n `}executeScript(e,t,r){if(!this.getScript(e))throw new Error(`Script ${e} not found`);r.context||(r.context=r.options||{});const n=Object.keys(r),o=Object.values(r);return this.getScriptAsFn(e,n)(t,...o)}}const go=(e,t)=>e?(t||(t={}),e.replace(/\$\{(.*?)\}/g,((e,r)=>Br(t,r.trim(),"")))):"",bo=e=>{const t=new Set;return e.replace(/\$\{(.*?)\}/g,((e,r)=>(t.add(r.trim()),""))),{variables:Array.from(t).map((e=>({name:e})))}},mo=["any","Array<date>","Array<float>","Array<int>","Array<string>","boolean","date","float","int","json","string"],jo=["int","float","Array<int>","Array<float>"],_o=["date","Array<date>"],wo=["eq","find","gt","gte","lt","lte","typeof","isTruthy","size"];return t})()));
|
|
2
2
|
//# sourceMappingURL=common.umd.js.map
|