@dcupl/common 1.11.1 → 1.11.3

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.
@@ -1,7 +1,7 @@
1
1
  export const perf = {
2
2
  now: () => {
3
3
  if (typeof performance !== 'undefined' && performance.now) {
4
- return Math.round(performance.now() * 1000) / 1000;
4
+ return performance.now();
5
5
  }
6
6
  else {
7
7
  return new Date().getTime();
@@ -1 +1 @@
1
- {"version":3,"file":"performance.js","sourceRoot":"","sources":["../../src/performance.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,GAAG,EAAE,GAAW,EAAE;QAChB,IAAI,OAAO,WAAW,KAAK,WAAW,IAAI,WAAW,CAAC,GAAG,EAAE,CAAC;YAC1D,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QACrD,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,IAAI,EAAE,CAAC,IAAY,EAAQ,EAAE;QAC3B,IAAI,OAAO,WAAW,KAAK,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;YAC3D,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC,IAAY,EAAE,KAAa,EAAE,GAAW,EAAQ,EAAE;QAC1D,IAAI,OAAO,WAAW,KAAK,WAAW,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YAC9D,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IACD,gBAAgB,CAAC,GAAW;QAC1B,IAAI,OAAO,WAAW,KAAK,WAAW,IAAI,WAAW,CAAC,gBAAgB,EAAE,CAAC;YACvE,OAAO,WAAW,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,gBAAgB,CAAC,IAAY;QAC3B,IAAI,OAAO,WAAW,KAAK,WAAW,IAAI,WAAW,CAAC,gBAAgB,EAAE,CAAC;YACvE,OAAO,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"performance.js","sourceRoot":"","sources":["../../src/performance.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,GAAG,EAAE,GAAW,EAAE;QAChB,IAAI,OAAO,WAAW,KAAK,WAAW,IAAI,WAAW,CAAC,GAAG,EAAE,CAAC;YAC1D,OAAO,WAAW,CAAC,GAAG,EAAE,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,IAAI,EAAE,CAAC,IAAY,EAAQ,EAAE;QAC3B,IAAI,OAAO,WAAW,KAAK,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;YAC3D,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC,IAAY,EAAE,KAAa,EAAE,GAAW,EAAQ,EAAE;QAC1D,IAAI,OAAO,WAAW,KAAK,WAAW,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YAC9D,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IACD,gBAAgB,CAAC,GAAW;QAC1B,IAAI,OAAO,WAAW,KAAK,WAAW,IAAI,WAAW,CAAC,gBAAgB,EAAE,CAAC;YACvE,OAAO,WAAW,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,gBAAgB,CAAC,IAAY;QAC3B,IAAI,OAAO,WAAW,KAAK,WAAW,IAAI,WAAW,CAAC,gBAAgB,EAAE,CAAC;YACvE,OAAO,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF,CAAC"}
@@ -1 +1 @@
1
- (()=>{"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:()=>vn,NumberPropertyTypes:()=>jo,PropertyTypesAsArray:()=>mo,QueryManager:()=>ho,ScriptController:()=>go,clone:()=>Bt,compareVersions:()=>zt,computeSuggestions:()=>Vt,escapeRegExp:()=>Dt,evaluateTemplate:()=>vo,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,g=h.hasOwnProperty,v=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=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,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,ge=he&&"object"==typeof module&&module&&!module.nodeType&&module,ve=ge&&ge.exports===he&&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?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 gt=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 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?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=gt(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.type}: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 g=u?n(h,d,l,t,e,i):n(d,h,l,e,t,i);if(void 0!==g){if(g)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]",gr="[object Array]",vr="[object Object]",br=Object.prototype.hasOwnProperty;const mr=function(e,t,r,n,o,i){var s=ie(e),a=ie(t),c=s?gr:ct(e),f=a?gr:ct(t),l=(c=c==hr?vr:c)==vr,p=(f=f==hr?vr:f)==vr,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 g=d?e.value():e,v=h?t.value():t;return i||(i=new L),o(g,v,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]],g=t[f];if(n)var v=u?n(g,h,f,t,e,i):n(h,g,f,e,t,i);if(!(void 0===v?h===g||o(h,g,r,n,i):v)){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:gn(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 gn=(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 vn{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 vn){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 go{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 vo=(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"];module.exports=t})();
1
+ (()=>{"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:()=>vn,NumberPropertyTypes:()=>jo,PropertyTypesAsArray:()=>mo,QueryManager:()=>ho,ScriptController:()=>go,clone:()=>Bt,compareVersions:()=>zt,computeSuggestions:()=>Vt,escapeRegExp:()=>Dt,evaluateTemplate:()=>vo,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?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 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,g=h.hasOwnProperty,v=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=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,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,ge=he&&"object"==typeof module&&module&&!module.nodeType&&module,ve=ge&&ge.exports===he&&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?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 gt=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 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?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=gt(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.type}: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 g=u?n(h,d,l,t,e,i):n(d,h,l,e,t,i);if(void 0!==g){if(g)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]",gr="[object Array]",vr="[object Object]",br=Object.prototype.hasOwnProperty;const mr=function(e,t,r,n,o,i){var s=ie(e),a=ie(t),c=s?gr:ct(e),f=a?gr:ct(t),l=(c=c==hr?vr:c)==vr,p=(f=f==hr?vr:f)==vr,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 g=d?e.value():e,v=h?t.value():t;return i||(i=new L),o(g,v,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]],g=t[f];if(n)var v=u?n(g,h,f,t,e,i):n(h,g,f,e,t,i);if(!(void 0===v?h===g||o(h,g,r,n,i):v)){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:gn(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 gn=(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 vn{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 vn){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 go{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 vo=(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"];module.exports=t})();