@sisense/sdk-ui 2.16.0 → 2.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/dist/ai.cjs +54 -54
  2. package/dist/ai.js +779 -741
  3. package/dist/analytics-composer/node.cjs +1 -1
  4. package/dist/analytics-composer/node.js +421 -384
  5. package/dist/analytics-composer.cjs +1 -1
  6. package/dist/analytics-composer.js +6 -6
  7. package/dist/{derive-chart-family-d7eaC45K.cjs → derive-chart-family-B_cR1yhw.cjs} +3 -3
  8. package/dist/{derive-chart-family-DLwnWblo.js → derive-chart-family-DkuTQGOE.js} +333 -333
  9. package/dist/{dimensions-BUWtZxix.cjs → dimensions-DI9h9IJH.cjs} +1 -1
  10. package/dist/{dimensions-DvDgZ8RW.js → dimensions-Gma5tFmd.js} +1 -1
  11. package/dist/execute-query-CdhSHTTA.cjs +1 -0
  12. package/dist/{execute-query-CFK2R_1S.js → execute-query-l7jejslh.js} +867 -865
  13. package/dist/index.cjs +970 -246
  14. package/dist/index.js +70584 -18085
  15. package/dist/index.umd.js +1269 -1267
  16. package/dist/packages/sdk-ui/src/ai/get-nlg-insights-from-widget.d.ts +46 -0
  17. package/dist/packages/sdk-ui/src/ai/index.d.ts +1 -0
  18. package/dist/packages/sdk-ui/src/analytics-composer/nlq-v3-translator/common.d.ts +2 -1
  19. package/dist/packages/sdk-ui/src/analytics-composer/nlq-v3-translator/process-function/filter-processors.d.ts +0 -9
  20. package/dist/packages/sdk-ui/src/analytics-composer/nlq-v3-translator/types.d.ts +1 -1
  21. package/dist/packages/sdk-ui/src/analytics-composer/types.d.ts +2 -2
  22. package/dist/packages/sdk-ui/src/api/rest-api.d.ts +1 -1
  23. package/dist/packages/sdk-ui/src/app/client-application.d.ts +5 -5
  24. package/dist/packages/sdk-ui/src/chart-options-processor/data-points.d.ts +3 -4
  25. package/dist/packages/sdk-ui/src/dashboard/hooks/use-jtd.d.ts +1 -2
  26. package/dist/packages/sdk-ui/src/data-source-dimensional-model/hooks/use-get-data-source-dimensions.d.ts +78 -0
  27. package/dist/packages/sdk-ui/src/data-source-dimensional-model/hooks/use-get-data-source-fields.d.ts +23 -0
  28. package/dist/packages/sdk-ui/src/data-source-dimensional-model/index.d.ts +2 -0
  29. package/dist/packages/sdk-ui/src/index.d.ts +1 -1
  30. package/dist/packages/sdk-ui/src/models/widget/widget-model-translator/widget-model-translator.d.ts +4 -1
  31. package/dist/packages/sdk-ui/src/pivot-table/formatters/data-cell-formatters/data-cell-color-formatter.d.ts +2 -1
  32. package/dist/packages/sdk-ui/src/pivot-table/formatters/formatter-utils.d.ts +2 -1
  33. package/dist/packages/sdk-ui/src/pivot-table/formatters/header-cell-formatters/header-cell-totals-formatter.d.ts +1 -1
  34. package/dist/packages/sdk-ui/src/pivot-table/formatters/types.d.ts +2 -1
  35. package/dist/packages/sdk-ui/src/pivot-table/hooks/use-apply-pivot-table-formatting.d.ts +1 -1
  36. package/dist/packages/sdk-ui/src/pivot-table/hooks/use-get-pivot-table-query.d.ts +1 -1
  37. package/dist/packages/sdk-ui/src/pivot-table/hooks/use-pivot-builder.d.ts +1 -1
  38. package/dist/packages/sdk-ui/src/pivot-table/hooks/use-pivot-client.d.ts +8 -0
  39. package/dist/packages/sdk-ui/src/pivot-table/hooks/use-pivot-data-loading.d.ts +2 -1
  40. package/dist/packages/sdk-ui/src/pivot-table/hooks/use-pivot-data-service.d.ts +2 -1
  41. package/dist/packages/sdk-ui/src/pivot-table/hooks/use-render-pivot.d.ts +1 -1
  42. package/dist/packages/sdk-ui/src/pivot-table/pivot-table.d.ts +32 -2
  43. package/dist/packages/sdk-ui/src/pivot-table/sorting-utils.d.ts +1 -1
  44. package/dist/packages/sdk-ui/src/props.d.ts +11 -0
  45. package/dist/packages/sdk-ui/src/query-execution/use-execute-pivot-query.d.ts +0 -1
  46. package/dist/packages/sdk-ui/src/translation/resources/en.d.ts +1 -1
  47. package/dist/packages/sdk-ui/src/translation/resources/index.d.ts +2 -2
  48. package/dist/packages/sdk-ui/src/types.d.ts +40 -25
  49. package/dist/packages/sdk-ui/src/widgets/pivot-table-widget.d.ts +19 -1
  50. package/dist/{types-Clbnx4mQ.cjs → types-Hki4GrUY.cjs} +1 -1
  51. package/dist/{types-D1mqt0Mg.js → types-ofTjqFFK.js} +1 -1
  52. package/dist/use-common-filters-Bh4KYWy_.cjs +604 -0
  53. package/dist/use-common-filters-D5yiZCTg.js +56547 -0
  54. package/dist/{widget-composer-Dhl_nmhq.js → widget-composer-By61s921.js} +3 -3
  55. package/dist/{widget-composer-BaOTPn5w.cjs → widget-composer-BzzTf8UH.cjs} +1 -1
  56. package/package.json +8 -7
  57. package/dist/execute-query-CB4XfUng.cjs +0 -1
  58. package/dist/packages/sdk-ui/src/common/hooks/fusion-endpoints/use-get-data-source-fields.d.ts +0 -17
  59. package/dist/use-common-filters-CkQznSEt.cjs +0 -1325
  60. package/dist/use-common-filters-CxoO7TzT.js +0 -103390
@@ -19,9 +19,9 @@ var q = (e, t) => {
19
19
  t.indexOf(a) < 0 && k.call(e, a) && (r[a] = e[a]);
20
20
  return r;
21
21
  };
22
- import { J as de, c as V, i as ce } from "./types-D1mqt0Mg.js";
23
- import { T as b, l as H, A as ue, m as l, o as pe, q as T, D as me, r as W, n as Z, s as ge, t as I, u as fe, v as ye } from "./execute-query-CFK2R_1S.js";
24
- import { A as Se, C as Oe, i as he, a as be, b as Te, n as _, g as ve } from "./derive-chart-family-DLwnWblo.js";
22
+ import { J as de, c as V, i as ce } from "./types-ofTjqFFK.js";
23
+ import { T as b, l as H, A as ue, m as l, o as pe, q as T, D as me, r as W, n as Z, s as ge, t as I, u as fe, v as ye } from "./execute-query-l7jejslh.js";
24
+ import { A as Se, C as Oe, i as he, a as be, b as Te, n as _, g as ve } from "./derive-chart-family-DkuTQGOE.js";
25
25
  function Ee(e) {
26
26
  return e.replace(/\s+/g, "-").replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
27
27
  }
@@ -1,4 +1,4 @@
1
- "use strict";var oe=Object.defineProperty,le=Object.defineProperties;var de=Object.getOwnPropertyDescriptors;var C=Object.getOwnPropertySymbols;var q=Object.prototype.hasOwnProperty,k=Object.prototype.propertyIsEnumerable;var $=(e,t,r)=>t in e?oe(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,l=(e,t)=>{for(var r in t||(t={}))q.call(t,r)&&$(e,r,t[r]);if(C)for(var r of C(t))k.call(t,r)&&$(e,r,t[r]);return e},p=(e,t)=>le(e,de(t));var B=(e,t)=>{var r={};for(var i in e)q.call(e,i)&&t.indexOf(i)<0&&(r[i]=e[i]);if(e!=null&&C)for(var i of C(e))t.indexOf(i)<0&&k.call(e,i)&&(r[i]=e[i]);return r};const A=require("./types-Clbnx4mQ.cjs"),s=require("./execute-query-CB4XfUng.cjs"),y=require("./derive-chart-family-d7eaC45K.cjs");function ce(e){return e.replace(/\s+/g,"-").replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function ue(e){return e.charAt(0).toUpperCase()+e.slice(1)}function pe(e){const t=/\[(.+?)\s\(Calendar\)\]/;return e.replace(t,"[$1]").trim()}function me(e){if(e)if(e.metadata){if(!e.model)throw new s.TranslatableError("errors.missingModelTitle")}else throw new s.TranslatableError("errors.missingMetadata");else throw new s.TranslatableError("errors.emptyModel");return e}function ge(e){return!e||!e.jaql.datasource.title||!e.jaql.metadata.length}function Y(e){if(![...y.ALL_CHART_TYPES,"pivot","pivot2"].includes(e))throw new s.TranslatableError("errors.chartTypeNotSupported",{chartType:e})}function ye(e){return"widgetType"in e&&e.widgetType==="pivot"}function h(e){var t;return"column"in e&&((t=e.column)==null?void 0:t.expression)&&/\(.*\)/.test(e.column.expression)}function _(e){const t="measures"in e&&m(e.measures)||"values"in e&&m(e.values);return ye(e)?"values"in e.dataOptions&&m(e.dataOptions.values):"chartType"in e?e.chartType==="indicator"?"value"in e.dataOptions&&m(e.dataOptions.value)||"secondary"in e.dataOptions&&m(e.dataOptions.secondary):e.chartType==="table"?!("columns"in e.dataOptions)||!m(e.dataOptions.columns)?!1:e.dataOptions.columns.some(i=>h(i)):e.chartType==="boxplot"?!1:e.chartType==="scatter"?"x"in e.dataOptions&&e.dataOptions.x!==void 0&&h(e.dataOptions.x)||"y"in e.dataOptions&&e.dataOptions.y!==void 0&&h(e.dataOptions.y)||"size"in e.dataOptions&&e.dataOptions.size!==void 0:e.chartType==="scattermap"?"colorBy"in e.dataOptions&&e.dataOptions.colorBy!==void 0&&h(e.dataOptions.colorBy)||"details"in e.dataOptions&&e.dataOptions.details!==void 0&&h(e.dataOptions.details)||"size"in e.dataOptions&&e.dataOptions.size!==void 0&&h(e.dataOptions.size):e.chartType==="areamap"?"geo"in e.dataOptions&&m(e.dataOptions.geo)&&"color"in e.dataOptions&&m(e.dataOptions.color):"value"in e.dataOptions&&m(e.dataOptions.value):t}function m(e){return Array.isArray(e)&&e.length>0}function fe(e){const t=e.split(`
1
+ "use strict";var oe=Object.defineProperty,le=Object.defineProperties;var de=Object.getOwnPropertyDescriptors;var C=Object.getOwnPropertySymbols;var q=Object.prototype.hasOwnProperty,k=Object.prototype.propertyIsEnumerable;var $=(e,t,r)=>t in e?oe(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,l=(e,t)=>{for(var r in t||(t={}))q.call(t,r)&&$(e,r,t[r]);if(C)for(var r of C(t))k.call(t,r)&&$(e,r,t[r]);return e},p=(e,t)=>le(e,de(t));var B=(e,t)=>{var r={};for(var i in e)q.call(e,i)&&t.indexOf(i)<0&&(r[i]=e[i]);if(e!=null&&C)for(var i of C(e))t.indexOf(i)<0&&k.call(e,i)&&(r[i]=e[i]);return r};const A=require("./types-Hki4GrUY.cjs"),s=require("./execute-query-CdhSHTTA.cjs"),y=require("./derive-chart-family-B_cR1yhw.cjs");function ce(e){return e.replace(/\s+/g,"-").replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function ue(e){return e.charAt(0).toUpperCase()+e.slice(1)}function pe(e){const t=/\[(.+?)\s\(Calendar\)\]/;return e.replace(t,"[$1]").trim()}function me(e){if(e)if(e.metadata){if(!e.model)throw new s.TranslatableError("errors.missingModelTitle")}else throw new s.TranslatableError("errors.missingMetadata");else throw new s.TranslatableError("errors.emptyModel");return e}function ge(e){return!e||!e.jaql.datasource.title||!e.jaql.metadata.length}function Y(e){if(![...y.ALL_CHART_TYPES,"pivot","pivot2"].includes(e))throw new s.TranslatableError("errors.chartTypeNotSupported",{chartType:e})}function ye(e){return"widgetType"in e&&e.widgetType==="pivot"}function h(e){var t;return"column"in e&&((t=e.column)==null?void 0:t.expression)&&/\(.*\)/.test(e.column.expression)}function _(e){const t="measures"in e&&m(e.measures)||"values"in e&&m(e.values);return ye(e)?"values"in e.dataOptions&&m(e.dataOptions.values):"chartType"in e?e.chartType==="indicator"?"value"in e.dataOptions&&m(e.dataOptions.value)||"secondary"in e.dataOptions&&m(e.dataOptions.secondary):e.chartType==="table"?!("columns"in e.dataOptions)||!m(e.dataOptions.columns)?!1:e.dataOptions.columns.some(i=>h(i)):e.chartType==="boxplot"?!1:e.chartType==="scatter"?"x"in e.dataOptions&&e.dataOptions.x!==void 0&&h(e.dataOptions.x)||"y"in e.dataOptions&&e.dataOptions.y!==void 0&&h(e.dataOptions.y)||"size"in e.dataOptions&&e.dataOptions.size!==void 0:e.chartType==="scattermap"?"colorBy"in e.dataOptions&&e.dataOptions.colorBy!==void 0&&h(e.dataOptions.colorBy)||"details"in e.dataOptions&&e.dataOptions.details!==void 0&&h(e.dataOptions.details)||"size"in e.dataOptions&&e.dataOptions.size!==void 0&&h(e.dataOptions.size):e.chartType==="areamap"?"geo"in e.dataOptions&&m(e.dataOptions.geo)&&"color"in e.dataOptions&&m(e.dataOptions.color):"value"in e.dataOptions&&m(e.dataOptions.value):t}function m(e){return Array.isArray(e)&&e.length>0}function fe(e){const t=e.split(`
2
2
  `);for(let r=0;r<t.length-1;r++)if(t[r].trim()===""){const i=t[r+1].trim();if(i.startsWith("import *")||i.startsWith("import {")){t.splice(r,1);break}}return t.join(`
3
3
  `)}function Se(e){const t=i=>/^[$A-Z_][0-9A-Z_$]*$/i.test(i);if("composeCode"in e)return e;const r={};for(const[i,a]of Object.entries(e)){const n=t(i)?i:`"${i}"`;r[n]=a}return r}const Oe={react:{baseChartTmpl:`import { {{componentString}} } from '@sisense/sdk-ui';
4
4
  {{extraImportsString}}
package/package.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "Sisense",
12
12
  "Compose SDK"
13
13
  ],
14
- "version": "2.16.0",
14
+ "version": "2.17.0",
15
15
  "type": "module",
16
16
  "exports": {
17
17
  ".": {
@@ -67,12 +67,13 @@
67
67
  "@mui/icons-material": "^6.4.11",
68
68
  "@mui/material": "^6.4.11",
69
69
  "@mui/system": "^6.4.11",
70
- "@sisense/sdk-common": "2.16.0",
71
- "@sisense/sdk-data": "2.16.0",
72
- "@sisense/sdk-pivot-client": "2.16.0",
73
- "@sisense/sdk-query-client": "2.16.0",
74
- "@sisense/sdk-rest-client": "2.16.0",
75
- "@sisense/sdk-tracking": "2.16.0",
70
+ "@sisense/sdk-common": "2.17.0",
71
+ "@sisense/sdk-data": "2.17.0",
72
+ "@sisense/sdk-pivot-query-client": "2.17.0",
73
+ "@sisense/sdk-pivot-ui": "2.17.0",
74
+ "@sisense/sdk-query-client": "2.17.0",
75
+ "@sisense/sdk-rest-client": "2.17.0",
76
+ "@sisense/sdk-tracking": "2.17.0",
76
77
  "@sisense/sisense-charts": "5.2.5",
77
78
  "@tanstack/react-query": "4.40.1",
78
79
  "classnames": "^2.3.2",
@@ -1 +0,0 @@
1
- "use strict";var Co=Object.defineProperty,xo=Object.defineProperties;var Eo=Object.getOwnPropertyDescriptors;var wr=Object.getOwnPropertySymbols;var Oo=Object.prototype.hasOwnProperty,No=Object.prototype.propertyIsEnumerable;var Cr=(e,t,n)=>t in e?Co(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,b=(e,t)=>{for(var n in t||(t={}))Oo.call(t,n)&&Cr(e,n,t[n]);if(wr)for(var n of wr(t))No.call(t,n)&&Cr(e,n,t[n]);return e},B=(e,t)=>xo(e,Eo(t));var xr=(e,t,n)=>new Promise((r,i)=>{var s=u=>{try{a(n.next(u))}catch(l){i(l)}},o=u=>{try{a(n.throw(u))}catch(l){i(l)}},a=u=>u.done?r(u.value):Promise.resolve(u.value).then(s,o);a((n=n.apply(e,t)).next())});const Fo=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,_o={"&amp;":"&","&#38;":"&","&lt;":"<","&#60;":"<","&gt;":">","&#62;":">","&apos;":"'","&#39;":"'","&quot;":'"',"&#34;":'"',"&nbsp;":" ","&#160;":" ","&copy;":"©","&#169;":"©","&reg;":"®","&#174;":"®","&hellip;":"…","&#8230;":"…","&#x2F;":"/","&#47;":"/"},Mo=e=>_o[e],Do=e=>e.replace(Fo,Mo);let on={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:Do};function Ro(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};on=b(b({},on),e)}function Lo(){return on}let wi;function Io(e){wi=e}function Po(){return wi}const jo={type:"3rdParty",init(e){Ro(e.options.react),Io(e)}},$o={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){console&&console[e]&&console[e].apply(console,t)}};class pt{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.init(t,n)}init(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.prefix=n.prefix||"i18next:",this.logger=t||$o,this.options=n,this.debug=n.debug}log(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return this.forward(n,"log","",!0)}warn(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return this.forward(n,"warn","",!0)}error(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return this.forward(n,"error","")}deprecate(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return this.forward(n,"warn","WARNING DEPRECATED: ",!0)}forward(t,n,r,i){return i&&!this.debug?null:(typeof t[0]=="string"&&(t[0]=`${r}${this.prefix} ${t[0]}`),this.logger[n](t))}create(t){return new pt(this.logger,b({prefix:`${this.prefix}:${t}:`},this.options))}clone(t){return t=t||this.options,t.prefix=t.prefix||this.prefix,new pt(this.logger,t)}}var Q=new pt;class Et{constructor(){this.observers={}}on(t,n){return t.split(" ").forEach(r=>{this.observers[r]=this.observers[r]||[],this.observers[r].push(n)}),this}off(t,n){if(this.observers[t]){if(!n){delete this.observers[t];return}this.observers[t]=this.observers[t].filter(r=>r!==n)}}emit(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),i=1;i<n;i++)r[i-1]=arguments[i];this.observers[t]&&[].concat(this.observers[t]).forEach(o=>{o(...r)}),this.observers["*"]&&[].concat(this.observers["*"]).forEach(o=>{o.apply(o,[t,...r])})}}function Me(){let e,t;const n=new Promise((r,i)=>{e=r,t=i});return n.resolve=e,n.reject=t,n}function Er(e){return e==null?"":""+e}function Bo(e,t,n){e.forEach(r=>{t[r]&&(n[r]=t[r])})}function yn(e,t,n){function r(o){return o&&o.indexOf("###")>-1?o.replace(/###/g,"."):o}function i(){return!e||typeof e=="string"}const s=typeof t!="string"?[].concat(t):t.split(".");for(;s.length>1;){if(i())return{};const o=r(s.shift());!e[o]&&n&&(e[o]=new n),Object.prototype.hasOwnProperty.call(e,o)?e=e[o]:e={}}return i()?{}:{obj:e,k:r(s.shift())}}function Or(e,t,n){const{obj:r,k:i}=yn(e,t,Object);r[i]=n}function Uo(e,t,n,r){const{obj:i,k:s}=yn(e,t,Object);i[s]=i[s]||[],i[s].push(n)}function ht(e,t){const{obj:n,k:r}=yn(e,t);if(n)return n[r]}function Wo(e,t,n){const r=ht(e,n);return r!==void 0?r:ht(t,n)}function Ci(e,t,n){for(const r in t)r!=="__proto__"&&r!=="constructor"&&(r in e?typeof e[r]=="string"||e[r]instanceof String||typeof t[r]=="string"||t[r]instanceof String?n&&(e[r]=t[r]):Ci(e[r],t[r],n):e[r]=t[r]);return e}function ye(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}var qo={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;"};function ko(e){return typeof e=="string"?e.replace(/[&<>"'\/]/g,t=>qo[t]):e}const zo=[" ",",","?","!",";"];function Ho(e,t,n){t=t||"",n=n||"";const r=zo.filter(o=>t.indexOf(o)<0&&n.indexOf(o)<0);if(r.length===0)return!0;const i=new RegExp(`(${r.map(o=>o==="?"?"\\?":o).join("|")})`);let s=!i.test(e);if(!s){const o=e.indexOf(n);o>0&&!i.test(e.substring(0,o))&&(s=!0)}return s}function gt(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:".";if(!e)return;if(e[t])return e[t];const r=t.split(n);let i=e;for(let s=0;s<r.length;++s){if(!i||typeof i[r[s]]=="string"&&s+1<r.length)return;if(i[r[s]]===void 0){let o=2,a=r.slice(s,s+o).join(n),u=i[a];for(;u===void 0&&r.length>s+o;)o++,a=r.slice(s,s+o).join(n),u=i[a];if(u===void 0)return;if(u===null)return null;if(t.endsWith(a)){if(typeof u=="string")return u;if(a&&typeof u[a]=="string")return u[a]}const l=r.slice(s+o).join(n);return l?gt(u,l,n):void 0}i=i[r[s]]}return i}function mt(e){return e&&e.indexOf("_")>0?e.replace("_","-"):e}class Nr extends Et{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=t||{},this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(t){this.options.ns.indexOf(t)<0&&this.options.ns.push(t)}removeNamespaces(t){const n=this.options.ns.indexOf(t);n>-1&&this.options.ns.splice(n,1)}getResource(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};const s=i.keySeparator!==void 0?i.keySeparator:this.options.keySeparator,o=i.ignoreJSONStructure!==void 0?i.ignoreJSONStructure:this.options.ignoreJSONStructure;let a=[t,n];r&&typeof r!="string"&&(a=a.concat(r)),r&&typeof r=="string"&&(a=a.concat(s?r.split(s):r)),t.indexOf(".")>-1&&(a=t.split("."));const u=ht(this.data,a);return u||!o||typeof r!="string"?u:gt(this.data&&this.data[t]&&this.data[t][n],r,s)}addResource(t,n,r,i){let s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{silent:!1};const o=s.keySeparator!==void 0?s.keySeparator:this.options.keySeparator;let a=[t,n];r&&(a=a.concat(o?r.split(o):r)),t.indexOf(".")>-1&&(a=t.split("."),i=n,n=a[1]),this.addNamespaces(n),Or(this.data,a,i),s.silent||this.emit("added",t,n,r,i)}addResources(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{silent:!1};for(const s in r)(typeof r[s]=="string"||Object.prototype.toString.apply(r[s])==="[object Array]")&&this.addResource(t,n,s,r[s],{silent:!0});i.silent||this.emit("added",t,n,r)}addResourceBundle(t,n,r,i,s){let o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{silent:!1},a=[t,n];t.indexOf(".")>-1&&(a=t.split("."),i=r,r=n,n=a[1]),this.addNamespaces(n);let u=ht(this.data,a)||{};i?Ci(u,r,s):u=b(b({},u),r),Or(this.data,a,u),o.silent||this.emit("added",t,n,r)}removeResourceBundle(t,n){this.hasResourceBundle(t,n)&&delete this.data[t][n],this.removeNamespaces(n),this.emit("removed",t,n)}hasResourceBundle(t,n){return this.getResource(t,n)!==void 0}getResourceBundle(t,n){return n||(n=this.options.defaultNS),this.options.compatibilityAPI==="v1"?b({},this.getResource(t,n)):this.getResource(t,n)}getDataByLanguage(t){return this.data[t]}hasLanguageSomeTranslations(t){const n=this.getDataByLanguage(t);return!!(n&&Object.keys(n)||[]).find(i=>n[i]&&Object.keys(n[i]).length>0)}toJSON(){return this.data}}var xi={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,r,i){return e.forEach(s=>{this.processors[s]&&(t=this.processors[s].process(t,n,r,i))}),t}};const Fr={};class bt extends Et{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(),Bo(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],t,this),this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=Q.create("translator")}changeLanguage(t){t&&(this.language=t)}exists(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};if(t==null)return!1;const r=this.resolve(t,n);return r&&r.res!==void 0}extractFromKey(t,n){let r=n.nsSeparator!==void 0?n.nsSeparator:this.options.nsSeparator;r===void 0&&(r=":");const i=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator;let s=n.ns||this.options.defaultNS||[];const o=r&&t.indexOf(r)>-1,a=!this.options.userDefinedKeySeparator&&!n.keySeparator&&!this.options.userDefinedNsSeparator&&!n.nsSeparator&&!Ho(t,r,i);if(o&&!a){const u=t.match(this.interpolator.nestingRegexp);if(u&&u.length>0)return{key:t,namespaces:s};const l=t.split(r);(r!==i||r===i&&this.options.ns.indexOf(l[0])>-1)&&(s=l.shift()),t=l.join(i)}return typeof s=="string"&&(s=[s]),{key:t,namespaces:s}}translate(t,n,r){if(typeof n!="object"&&this.options.overloadTranslationOptionHandler&&(n=this.options.overloadTranslationOptionHandler(arguments)),typeof n=="object"&&(n=b({},n)),n||(n={}),t==null)return"";Array.isArray(t)||(t=[String(t)]);const i=n.returnDetails!==void 0?n.returnDetails:this.options.returnDetails,s=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator,{key:o,namespaces:a}=this.extractFromKey(t[t.length-1],n),u=a[a.length-1],l=n.lng||this.language,d=n.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(l&&l.toLowerCase()==="cimode"){if(d){const x=n.nsSeparator||this.options.nsSeparator;return i?{res:`${u}${x}${o}`,usedKey:o,exactUsedKey:o,usedLng:l,usedNS:u}:`${u}${x}${o}`}return i?{res:o,usedKey:o,exactUsedKey:o,usedLng:l,usedNS:u}:o}const f=this.resolve(t,n);let c=f&&f.res;const g=f&&f.usedKey||o,h=f&&f.exactUsedKey||o,v=Object.prototype.toString.apply(c),m=["[object Number]","[object Function]","[object RegExp]"],w=n.joinArrays!==void 0?n.joinArrays:this.options.joinArrays,F=!this.i18nFormat||this.i18nFormat.handleAsObject;if(F&&c&&(typeof c!="string"&&typeof c!="boolean"&&typeof c!="number")&&m.indexOf(v)<0&&!(typeof w=="string"&&v==="[object Array]")){if(!n.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const x=this.options.returnedObjectHandler?this.options.returnedObjectHandler(g,c,B(b({},n),{ns:a})):`key '${o} (${this.language})' returned an object instead of string.`;return i?(f.res=x,f):x}if(s){const x=v==="[object Array]",M=x?[]:{},G=x?h:g;for(const I in c)if(Object.prototype.hasOwnProperty.call(c,I)){const rt=`${G}${s}${I}`;M[I]=this.translate(rt,B(b({},n),{joinArrays:!1,ns:a})),M[I]===rt&&(M[I]=c[I])}c=M}}else if(F&&typeof w=="string"&&v==="[object Array]")c=c.join(w),c&&(c=this.extendTranslation(c,t,n,r));else{let x=!1,M=!1;const G=n.count!==void 0&&typeof n.count!="string",I=bt.hasDefaultValue(n),rt=G?this.pluralResolver.getSuffix(l,n.count,n):"",Ao=n.ordinal&&G?this.pluralResolver.getSuffix(l,n.count,{ordinal:!1}):"",Ne=n[`defaultValue${rt}`]||n[`defaultValue${Ao}`]||n.defaultValue;!this.isValidLookup(c)&&I&&(x=!0,c=Ne),this.isValidLookup(c)||(M=!0,c=o);const wo=(n.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&M?void 0:c,Fe=I&&Ne!==c&&this.options.updateMissing;if(M||x||Fe){if(this.logger.log(Fe?"updateKey":"missingKey",l,u,o,Fe?Ne:c),s){const j=this.resolve(o,B(b({},n),{keySeparator:!1}));j&&j.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let _e=[];const it=this.languageUtils.getFallbackCodes(this.options.fallbackLng,n.lng||this.language);if(this.options.saveMissingTo==="fallback"&&it&&it[0])for(let j=0;j<it.length;j++)_e.push(it[j]);else this.options.saveMissingTo==="all"?_e=this.languageUtils.toResolveHierarchy(n.lng||this.language):_e.push(n.lng||this.language);const Tr=(j,be,Sr)=>{const Ar=I&&Sr!==c?Sr:wo;this.options.missingKeyHandler?this.options.missingKeyHandler(j,u,be,Ar,Fe,n):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(j,u,be,Ar,Fe,n),this.emit("missingKey",j,u,be,c)};this.options.saveMissing&&(this.options.saveMissingPlurals&&G?_e.forEach(j=>{this.pluralResolver.getSuffixes(j,n).forEach(be=>{Tr([j],o+be,n[`defaultValue${be}`]||Ne)})}):Tr(_e,o,Ne))}c=this.extendTranslation(c,t,n,f,r),M&&c===o&&this.options.appendNamespaceToMissingKey&&(c=`${u}:${o}`),(M||x)&&this.options.parseMissingKeyHandler&&(this.options.compatibilityAPI!=="v1"?c=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${u}:${o}`:o,x?c:void 0):c=this.options.parseMissingKeyHandler(c))}return i?(f.res=c,f):c}extendTranslation(t,n,r,i,s){var o=this;if(this.i18nFormat&&this.i18nFormat.parse)t=this.i18nFormat.parse(t,b(b({},this.options.interpolation.defaultVariables),r),i.usedLng,i.usedNS,i.usedKey,{resolved:i});else if(!r.skipInterpolation){r.interpolation&&this.interpolator.init(B(b({},r),{interpolation:b(b({},this.options.interpolation),r.interpolation)}));const l=typeof t=="string"&&(r&&r.interpolation&&r.interpolation.skipOnVariables!==void 0?r.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let d;if(l){const c=t.match(this.interpolator.nestingRegexp);d=c&&c.length}let f=r.replace&&typeof r.replace!="string"?r.replace:r;if(this.options.interpolation.defaultVariables&&(f=b(b({},this.options.interpolation.defaultVariables),f)),t=this.interpolator.interpolate(t,f,r.lng||this.language,r),l){const c=t.match(this.interpolator.nestingRegexp),g=c&&c.length;d<g&&(r.nest=!1)}!r.lng&&this.options.compatibilityAPI!=="v1"&&i&&i.res&&(r.lng=i.usedLng),r.nest!==!1&&(t=this.interpolator.nest(t,function(){for(var c=arguments.length,g=new Array(c),h=0;h<c;h++)g[h]=arguments[h];return s&&s[0]===g[0]&&!r.context?(o.logger.warn(`It seems you are nesting recursively key: ${g[0]} in key: ${n[0]}`),null):o.translate(...g,n)},r)),r.interpolation&&this.interpolator.reset()}const a=r.postProcess||this.options.postProcess,u=typeof a=="string"?[a]:a;return t!=null&&u&&u.length&&r.applyPostProcessor!==!1&&(t=xi.handle(u,t,n,this.options&&this.options.postProcessPassResolved?b({i18nResolved:i},r):r,this)),t}resolve(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r,i,s,o,a;return typeof t=="string"&&(t=[t]),t.forEach(u=>{if(this.isValidLookup(r))return;const l=this.extractFromKey(u,n),d=l.key;i=d;let f=l.namespaces;this.options.fallbackNS&&(f=f.concat(this.options.fallbackNS));const c=n.count!==void 0&&typeof n.count!="string",g=c&&!n.ordinal&&n.count===0&&this.pluralResolver.shouldUseIntlApi(),h=n.context!==void 0&&(typeof n.context=="string"||typeof n.context=="number")&&n.context!=="",v=n.lngs?n.lngs:this.languageUtils.toResolveHierarchy(n.lng||this.language,n.fallbackLng);f.forEach(m=>{this.isValidLookup(r)||(a=m,!Fr[`${v[0]}-${m}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(a)&&(Fr[`${v[0]}-${m}`]=!0,this.logger.warn(`key "${i}" for languages "${v.join(", ")}" won't get resolved as namespace "${a}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),v.forEach(w=>{if(this.isValidLookup(r))return;o=w;const F=[d];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(F,d,w,m,n);else{let x;c&&(x=this.pluralResolver.getSuffix(w,n.count,n));const M=`${this.options.pluralSeparator}zero`,G=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(c&&(F.push(d+x),n.ordinal&&x.indexOf(G)===0&&F.push(d+x.replace(G,this.options.pluralSeparator)),g&&F.push(d+M)),h){const I=`${d}${this.options.contextSeparator}${n.context}`;F.push(I),c&&(F.push(I+x),n.ordinal&&x.indexOf(G)===0&&F.push(I+x.replace(G,this.options.pluralSeparator)),g&&F.push(I+M))}}let ae;for(;ae=F.pop();)this.isValidLookup(r)||(s=ae,r=this.getResource(w,m,ae,n))}))})}),{res:r,usedKey:i,exactUsedKey:s,usedLng:o,usedNS:a}}isValidLookup(t){return t!==void 0&&!(!this.options.returnNull&&t===null)&&!(!this.options.returnEmptyString&&t==="")}getResource(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(t,n,r,i):this.resourceStore.getResource(t,n,r,i)}static hasDefaultValue(t){const n="defaultValue";for(const r in t)if(Object.prototype.hasOwnProperty.call(t,r)&&n===r.substring(0,n.length)&&t[r]!==void 0)return!0;return!1}}function Zt(e){return e.charAt(0).toUpperCase()+e.slice(1)}class _r{constructor(t){this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=Q.create("languageUtils")}getScriptPartFromCode(t){if(t=mt(t),!t||t.indexOf("-")<0)return null;const n=t.split("-");return n.length===2||(n.pop(),n[n.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(n.join("-"))}getLanguagePartFromCode(t){if(t=mt(t),!t||t.indexOf("-")<0)return t;const n=t.split("-");return this.formatLanguageCode(n[0])}formatLanguageCode(t){if(typeof t=="string"&&t.indexOf("-")>-1){const n=["hans","hant","latn","cyrl","cans","mong","arab"];let r=t.split("-");return this.options.lowerCaseLng?r=r.map(i=>i.toLowerCase()):r.length===2?(r[0]=r[0].toLowerCase(),r[1]=r[1].toUpperCase(),n.indexOf(r[1].toLowerCase())>-1&&(r[1]=Zt(r[1].toLowerCase()))):r.length===3&&(r[0]=r[0].toLowerCase(),r[1].length===2&&(r[1]=r[1].toUpperCase()),r[0]!=="sgn"&&r[2].length===2&&(r[2]=r[2].toUpperCase()),n.indexOf(r[1].toLowerCase())>-1&&(r[1]=Zt(r[1].toLowerCase())),n.indexOf(r[2].toLowerCase())>-1&&(r[2]=Zt(r[2].toLowerCase()))),r.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?t.toLowerCase():t}isSupportedCode(t){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(t=this.getLanguagePartFromCode(t)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(t)>-1}getBestMatchFromCodes(t){if(!t)return null;let n;return t.forEach(r=>{if(n)return;const i=this.formatLanguageCode(r);(!this.options.supportedLngs||this.isSupportedCode(i))&&(n=i)}),!n&&this.options.supportedLngs&&t.forEach(r=>{if(n)return;const i=this.getLanguagePartFromCode(r);if(this.isSupportedCode(i))return n=i;n=this.options.supportedLngs.find(s=>{if(s===i)return s;if(!(s.indexOf("-")<0&&i.indexOf("-")<0)&&s.indexOf(i)===0)return s})}),n||(n=this.getFallbackCodes(this.options.fallbackLng)[0]),n}getFallbackCodes(t,n){if(!t)return[];if(typeof t=="function"&&(t=t(n)),typeof t=="string"&&(t=[t]),Object.prototype.toString.apply(t)==="[object Array]")return t;if(!n)return t.default||[];let r=t[n];return r||(r=t[this.getScriptPartFromCode(n)]),r||(r=t[this.formatLanguageCode(n)]),r||(r=t[this.getLanguagePartFromCode(n)]),r||(r=t.default),r||[]}toResolveHierarchy(t,n){const r=this.getFallbackCodes(n||this.options.fallbackLng||[],t),i=[],s=o=>{o&&(this.isSupportedCode(o)?i.push(o):this.logger.warn(`rejecting language code not found in supportedLngs: ${o}`))};return typeof t=="string"&&(t.indexOf("-")>-1||t.indexOf("_")>-1)?(this.options.load!=="languageOnly"&&s(this.formatLanguageCode(t)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&s(this.getScriptPartFromCode(t)),this.options.load!=="currentOnly"&&s(this.getLanguagePartFromCode(t))):typeof t=="string"&&s(this.formatLanguageCode(t)),r.forEach(o=>{i.indexOf(o)<0&&s(this.formatLanguageCode(o))}),i}}let Go=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],Vo={1:function(e){return+(e>1)},2:function(e){return+(e!=1)},3:function(e){return 0},4:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},5:function(e){return e==0?0:e==1?1:e==2?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},6:function(e){return e==1?0:e>=2&&e<=4?1:2},7:function(e){return e==1?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},8:function(e){return e==1?0:e==2?1:e!=8&&e!=11?2:3},9:function(e){return+(e>=2)},10:function(e){return e==1?0:e==2?1:e<7?2:e<11?3:4},11:function(e){return e==1||e==11?0:e==2||e==12?1:e>2&&e<20?2:3},12:function(e){return+(e%10!=1||e%100==11)},13:function(e){return+(e!==0)},14:function(e){return e==1?0:e==2?1:e==3?2:3},15:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2},16:function(e){return e%10==1&&e%100!=11?0:e!==0?1:2},17:function(e){return e==1||e%10==1&&e%100!=11?0:1},18:function(e){return e==0?0:e==1?1:2},19:function(e){return e==1?0:e==0||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3},20:function(e){return e==1?0:e==0||e%100>0&&e%100<20?1:2},21:function(e){return e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0},22:function(e){return e==1?0:e==2?1:(e<0||e>10)&&e%10==0?2:3}};const Qo=["v1","v2","v3"],Ko=["v4"],Mr={zero:0,one:1,two:2,few:3,many:4,other:5};function Jo(){const e={};return Go.forEach(t=>{t.lngs.forEach(n=>{e[n]={numbers:t.nr,plurals:Vo[t.fc]}})}),e}class Yo{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.languageUtils=t,this.options=n,this.logger=Q.create("pluralResolver"),(!this.options.compatibilityJSON||Ko.includes(this.options.compatibilityJSON))&&(typeof Intl=="undefined"||!Intl.PluralRules)&&(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=Jo()}addRule(t,n){this.rules[t]=n}getRule(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.shouldUseIntlApi())try{return new Intl.PluralRules(mt(t),{type:n.ordinal?"ordinal":"cardinal"})}catch(r){return}return this.rules[t]||this.rules[this.languageUtils.getLanguagePartFromCode(t)]}needsPlural(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const r=this.getRule(t,n);return this.shouldUseIntlApi()?r&&r.resolvedOptions().pluralCategories.length>1:r&&r.numbers.length>1}getPluralFormsOfKey(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this.getSuffixes(t,r).map(i=>`${n}${i}`)}getSuffixes(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const r=this.getRule(t,n);return r?this.shouldUseIntlApi()?r.resolvedOptions().pluralCategories.sort((i,s)=>Mr[i]-Mr[s]).map(i=>`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${i}`):r.numbers.map(i=>this.getSuffix(t,i,n)):[]}getSuffix(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};const i=this.getRule(t,r);return i?this.shouldUseIntlApi()?`${this.options.prepend}${r.ordinal?`ordinal${this.options.prepend}`:""}${i.select(n)}`:this.getSuffixRetroCompatible(i,n):(this.logger.warn(`no plural rule found for: ${t}`),"")}getSuffixRetroCompatible(t,n){const r=t.noAbs?t.plurals(n):t.plurals(Math.abs(n));let i=t.numbers[r];this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1&&(i===2?i="plural":i===1&&(i=""));const s=()=>this.options.prepend&&i.toString()?this.options.prepend+i.toString():i.toString();return this.options.compatibilityJSON==="v1"?i===1?"":typeof i=="number"?`_plural_${i.toString()}`:s():this.options.compatibilityJSON==="v2"||this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1?s():this.options.prepend&&r.toString()?this.options.prepend+r.toString():r.toString()}shouldUseIntlApi(){return!Qo.includes(this.options.compatibilityJSON)}}function Dr(e,t,n){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:".",i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,s=Wo(e,t,n);return!s&&i&&typeof n=="string"&&(s=gt(e,n,r),s===void 0&&(s=gt(t,n,r))),s}class Xo{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=Q.create("interpolator"),this.options=t,this.format=t.interpolation&&t.interpolation.format||(n=>n),this.init(t)}init(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};t.interpolation||(t.interpolation={escapeValue:!0});const n=t.interpolation;this.escape=n.escape!==void 0?n.escape:ko,this.escapeValue=n.escapeValue!==void 0?n.escapeValue:!0,this.useRawValueToEscape=n.useRawValueToEscape!==void 0?n.useRawValueToEscape:!1,this.prefix=n.prefix?ye(n.prefix):n.prefixEscaped||"{{",this.suffix=n.suffix?ye(n.suffix):n.suffixEscaped||"}}",this.formatSeparator=n.formatSeparator?n.formatSeparator:n.formatSeparator||",",this.unescapePrefix=n.unescapeSuffix?"":n.unescapePrefix||"-",this.unescapeSuffix=this.unescapePrefix?"":n.unescapeSuffix||"",this.nestingPrefix=n.nestingPrefix?ye(n.nestingPrefix):n.nestingPrefixEscaped||ye("$t("),this.nestingSuffix=n.nestingSuffix?ye(n.nestingSuffix):n.nestingSuffixEscaped||ye(")"),this.nestingOptionsSeparator=n.nestingOptionsSeparator?n.nestingOptionsSeparator:n.nestingOptionsSeparator||",",this.maxReplaces=n.maxReplaces?n.maxReplaces:1e3,this.alwaysFormat=n.alwaysFormat!==void 0?n.alwaysFormat:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const t=`${this.prefix}(.+?)${this.suffix}`;this.regexp=new RegExp(t,"g");const n=`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`;this.regexpUnescape=new RegExp(n,"g");const r=`${this.nestingPrefix}(.+?)${this.nestingSuffix}`;this.nestingRegexp=new RegExp(r,"g")}interpolate(t,n,r,i){let s,o,a;const u=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{};function l(h){return h.replace(/\$/g,"$$$$")}const d=h=>{if(h.indexOf(this.formatSeparator)<0){const F=Dr(n,u,h,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(F,void 0,r,B(b(b({},i),n),{interpolationkey:h})):F}const v=h.split(this.formatSeparator),m=v.shift().trim(),w=v.join(this.formatSeparator).trim();return this.format(Dr(n,u,m,this.options.keySeparator,this.options.ignoreJSONStructure),w,r,B(b(b({},i),n),{interpolationkey:m}))};this.resetRegExp();const f=i&&i.missingInterpolationHandler||this.options.missingInterpolationHandler,c=i&&i.interpolation&&i.interpolation.skipOnVariables!==void 0?i.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:h=>l(h)},{regex:this.regexp,safeValue:h=>this.escapeValue?l(this.escape(h)):l(h)}].forEach(h=>{for(a=0;s=h.regex.exec(t);){const v=s[1].trim();if(o=d(v),o===void 0)if(typeof f=="function"){const w=f(t,s,i);o=typeof w=="string"?w:""}else if(i&&Object.prototype.hasOwnProperty.call(i,v))o="";else if(c){o=s[0];continue}else this.logger.warn(`missed to pass in variable ${v} for interpolating ${t}`),o="";else typeof o!="string"&&!this.useRawValueToEscape&&(o=Er(o));const m=h.safeValue(o);if(t=t.replace(s[0],m),c?(h.regex.lastIndex+=o.length,h.regex.lastIndex-=s[0].length):h.regex.lastIndex=0,a++,a>=this.maxReplaces)break}}),t}nest(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},i,s,o;function a(u,l){const d=this.nestingOptionsSeparator;if(u.indexOf(d)<0)return u;const f=u.split(new RegExp(`${d}[ ]*{`));let c=`{${f[1]}`;u=f[0],c=this.interpolate(c,o);const g=c.match(/'/g),h=c.match(/"/g);(g&&g.length%2===0&&!h||h.length%2!==0)&&(c=c.replace(/'/g,'"'));try{o=JSON.parse(c),l&&(o=b(b({},l),o))}catch(v){return this.logger.warn(`failed parsing options string in nesting for key ${u}`,v),`${u}${d}${c}`}return delete o.defaultValue,u}for(;i=this.nestingRegexp.exec(t);){let u=[];o=b({},r),o=o.replace&&typeof o.replace!="string"?o.replace:o,o.applyPostProcessor=!1,delete o.defaultValue;let l=!1;if(i[0].indexOf(this.formatSeparator)!==-1&&!/{.*}/.test(i[1])){const d=i[1].split(this.formatSeparator).map(f=>f.trim());i[1]=d.shift(),u=d,l=!0}if(s=n(a.call(this,i[1].trim(),o),o),s&&i[0]===t&&typeof s!="string")return s;typeof s!="string"&&(s=Er(s)),s||(this.logger.warn(`missed to resolve ${i[1]} for nesting ${t}`),s=""),l&&(s=u.reduce((d,f)=>this.format(d,f,r.lng,B(b({},r),{interpolationkey:i[1].trim()})),s.trim())),t=t.replace(i[0],s),this.regexp.lastIndex=0}return t}}function Zo(e){let t=e.toLowerCase().trim();const n={};if(e.indexOf("(")>-1){const r=e.split("(");t=r[0].toLowerCase().trim();const i=r[1].substring(0,r[1].length-1);t==="currency"&&i.indexOf(":")<0?n.currency||(n.currency=i.trim()):t==="relativetime"&&i.indexOf(":")<0?n.range||(n.range=i.trim()):i.split(";").forEach(o=>{if(!o)return;const[a,...u]=o.split(":"),l=u.join(":").trim().replace(/^'+|'+$/g,"");n[a.trim()]||(n[a.trim()]=l),l==="false"&&(n[a.trim()]=!1),l==="true"&&(n[a.trim()]=!0),isNaN(l)||(n[a.trim()]=parseInt(l,10))})}return{formatName:t,formatOptions:n}}function ve(e){const t={};return function(r,i,s){const o=i+JSON.stringify(s);let a=t[o];return a||(a=e(mt(i),s),t[o]=a),a(r)}}class ea{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=Q.create("formatter"),this.options=t,this.formats={number:ve((n,r)=>{const i=new Intl.NumberFormat(n,b({},r));return s=>i.format(s)}),currency:ve((n,r)=>{const i=new Intl.NumberFormat(n,B(b({},r),{style:"currency"}));return s=>i.format(s)}),datetime:ve((n,r)=>{const i=new Intl.DateTimeFormat(n,b({},r));return s=>i.format(s)}),relativetime:ve((n,r)=>{const i=new Intl.RelativeTimeFormat(n,b({},r));return s=>i.format(s,r.range||"day")}),list:ve((n,r)=>{const i=new Intl.ListFormat(n,b({},r));return s=>i.format(s)})},this.init(t)}init(t){const r=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}}).interpolation;this.formatSeparator=r.formatSeparator?r.formatSeparator:r.formatSeparator||","}add(t,n){this.formats[t.toLowerCase().trim()]=n}addCached(t,n){this.formats[t.toLowerCase().trim()]=ve(n)}format(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return n.split(this.formatSeparator).reduce((a,u)=>{const{formatName:l,formatOptions:d}=Zo(u);if(this.formats[l]){let f=a;try{const c=i&&i.formatParams&&i.formatParams[i.interpolationkey]||{},g=c.locale||c.lng||i.locale||i.lng||r;f=this.formats[l](a,g,b(b(b({},d),i),c))}catch(c){this.logger.warn(c)}return f}else this.logger.warn(`there was no format function for ${l}`);return a},t)}}function ta(e,t){e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)}class na extends Et{constructor(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};super(),this.backend=t,this.store=n,this.services=r,this.languageUtils=r.languageUtils,this.options=i,this.logger=Q.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=i.maxParallelReads||10,this.readingCalls=0,this.maxRetries=i.maxRetries>=0?i.maxRetries:5,this.retryTimeout=i.retryTimeout>=1?i.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(r,i.backend,i)}queueLoad(t,n,r,i){const s={},o={},a={},u={};return t.forEach(l=>{let d=!0;n.forEach(f=>{const c=`${l}|${f}`;!r.reload&&this.store.hasResourceBundle(l,f)?this.state[c]=2:this.state[c]<0||(this.state[c]===1?o[c]===void 0&&(o[c]=!0):(this.state[c]=1,d=!1,o[c]===void 0&&(o[c]=!0),s[c]===void 0&&(s[c]=!0),u[f]===void 0&&(u[f]=!0)))}),d||(a[l]=!0)}),(Object.keys(s).length||Object.keys(o).length)&&this.queue.push({pending:o,pendingCount:Object.keys(o).length,loaded:{},errors:[],callback:i}),{toLoad:Object.keys(s),pending:Object.keys(o),toLoadLanguages:Object.keys(a),toLoadNamespaces:Object.keys(u)}}loaded(t,n,r){const i=t.split("|"),s=i[0],o=i[1];n&&this.emit("failedLoading",s,o,n),r&&this.store.addResourceBundle(s,o,r),this.state[t]=n?-1:2;const a={};this.queue.forEach(u=>{Uo(u.loaded,[s],o),ta(u,t),n&&u.errors.push(n),u.pendingCount===0&&!u.done&&(Object.keys(u.loaded).forEach(l=>{a[l]||(a[l]={});const d=u.loaded[l];d.length&&d.forEach(f=>{a[l][f]===void 0&&(a[l][f]=!0)})}),u.done=!0,u.errors.length?u.callback(u.errors):u.callback())}),this.emit("loaded",a),this.queue=this.queue.filter(u=>!u.done)}read(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.retryTimeout,o=arguments.length>5?arguments[5]:void 0;if(!t.length)return o(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:t,ns:n,fcName:r,tried:i,wait:s,callback:o});return}this.readingCalls++;const a=(l,d)=>{if(this.readingCalls--,this.waitingReads.length>0){const f=this.waitingReads.shift();this.read(f.lng,f.ns,f.fcName,f.tried,f.wait,f.callback)}if(l&&d&&i<this.maxRetries){setTimeout(()=>{this.read.call(this,t,n,r,i+1,s*2,o)},s);return}o(l,d)},u=this.backend[r].bind(this.backend);if(u.length===2){try{const l=u(t,n);l&&typeof l.then=="function"?l.then(d=>a(null,d)).catch(a):a(null,l)}catch(l){a(l)}return}return u(t,n,a)}prepareLoading(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},i=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),i&&i();typeof t=="string"&&(t=this.languageUtils.toResolveHierarchy(t)),typeof n=="string"&&(n=[n]);const s=this.queueLoad(t,n,r,i);if(!s.toLoad.length)return s.pending.length||i(),null;s.toLoad.forEach(o=>{this.loadOne(o)})}load(t,n,r){this.prepareLoading(t,n,{},r)}reload(t,n,r){this.prepareLoading(t,n,{reload:!0},r)}loadOne(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";const r=t.split("|"),i=r[0],s=r[1];this.read(i,s,"read",void 0,void 0,(o,a)=>{o&&this.logger.warn(`${n}loading namespace ${s} for language ${i} failed`,o),!o&&a&&this.logger.log(`${n}loaded namespace ${s} for language ${i}`,a),this.loaded(t,o,a)})}saveMissing(t,n,r,i,s){let o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{},a=arguments.length>6&&arguments[6]!==void 0?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(n)){this.logger.warn(`did not save key "${r}" as the namespace "${n}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(r==null||r==="")){if(this.backend&&this.backend.create){const u=B(b({},o),{isUpdate:s}),l=this.backend.create.bind(this.backend);if(l.length<6)try{let d;l.length===5?d=l(t,n,r,i,u):d=l(t,n,r,i),d&&typeof d.then=="function"?d.then(f=>a(null,f)).catch(a):a(null,d)}catch(d){a(d)}else l(t,n,r,i,a,u)}!t||!t[0]||this.store.addResource(t[0],n,r,i)}}}function Rr(){return{debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:function(t){let n={};if(typeof t[1]=="object"&&(n=t[1]),typeof t[1]=="string"&&(n.defaultValue=t[1]),typeof t[2]=="string"&&(n.tDescription=t[2]),typeof t[2]=="object"||typeof t[3]=="object"){const r=t[3]||t[2];Object.keys(r).forEach(i=>{n[i]=r[i]})}return n},interpolation:{escapeValue:!0,format:(e,t,n,r)=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}}function Lr(e){return typeof e.ns=="string"&&(e.ns=[e.ns]),typeof e.fallbackLng=="string"&&(e.fallbackLng=[e.fallbackLng]),typeof e.fallbackNS=="string"&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e}function st(){}function ra(e){Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(n=>{typeof e[n]=="function"&&(e[n]=e[n].bind(e))})}class Pe extends Et{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;if(super(),this.options=Lr(t),this.services={},this.logger=Q,this.modules={external:[]},ra(this),n&&!this.isInitialized&&!t.isClone){if(!this.options.initImmediate)return this.init(t,n),this;setTimeout(()=>{this.init(t,n)},0)}}init(){var t=this;let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1?arguments[1]:void 0;typeof n=="function"&&(r=n,n={}),!n.defaultNS&&n.defaultNS!==!1&&n.ns&&(typeof n.ns=="string"?n.defaultNS=n.ns:n.ns.indexOf("translation")<0&&(n.defaultNS=n.ns[0]));const i=Rr();this.options=b(b(b({},i),this.options),Lr(n)),this.options.compatibilityAPI!=="v1"&&(this.options.interpolation=b(b({},i.interpolation),this.options.interpolation)),n.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=n.keySeparator),n.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=n.nsSeparator);function s(d){return d?typeof d=="function"?new d:d:null}if(!this.options.isClone){this.modules.logger?Q.init(s(this.modules.logger),this.options):Q.init(null,this.options);let d;this.modules.formatter?d=this.modules.formatter:typeof Intl!="undefined"&&(d=ea);const f=new _r(this.options);this.store=new Nr(this.options.resources,this.options);const c=this.services;c.logger=Q,c.resourceStore=this.store,c.languageUtils=f,c.pluralResolver=new Yo(f,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),d&&(!this.options.interpolation.format||this.options.interpolation.format===i.interpolation.format)&&(c.formatter=s(d),c.formatter.init(c,this.options),this.options.interpolation.format=c.formatter.format.bind(c.formatter)),c.interpolator=new Xo(this.options),c.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},c.backendConnector=new na(s(this.modules.backend),c.resourceStore,c,this.options),c.backendConnector.on("*",function(g){for(var h=arguments.length,v=new Array(h>1?h-1:0),m=1;m<h;m++)v[m-1]=arguments[m];t.emit(g,...v)}),this.modules.languageDetector&&(c.languageDetector=s(this.modules.languageDetector),c.languageDetector.init&&c.languageDetector.init(c,this.options.detection,this.options)),this.modules.i18nFormat&&(c.i18nFormat=s(this.modules.i18nFormat),c.i18nFormat.init&&c.i18nFormat.init(this)),this.translator=new bt(this.services,this.options),this.translator.on("*",function(g){for(var h=arguments.length,v=new Array(h>1?h-1:0),m=1;m<h;m++)v[m-1]=arguments[m];t.emit(g,...v)}),this.modules.external.forEach(g=>{g.init&&g.init(this)})}if(this.format=this.options.interpolation.format,r||(r=st),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const d=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);d.length>0&&d[0]!=="dev"&&(this.options.lng=d[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(d=>{this[d]=function(){return t.store[d](...arguments)}}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(d=>{this[d]=function(){return t.store[d](...arguments),t}});const u=Me(),l=()=>{const d=(f,c)=>{this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),u.resolve(c),r(f,c)};if(this.languages&&this.options.compatibilityAPI!=="v1"&&!this.isInitialized)return d(null,this.t.bind(this));this.changeLanguage(this.options.lng,d)};return this.options.resources||!this.options.initImmediate?l():setTimeout(l,0),u}loadResources(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:st;const i=typeof t=="string"?t:this.language;if(typeof t=="function"&&(r=t),!this.options.resources||this.options.partialBundledLanguages){if(i&&i.toLowerCase()==="cimode")return r();const s=[],o=a=>{if(!a)return;this.services.languageUtils.toResolveHierarchy(a).forEach(l=>{s.indexOf(l)<0&&s.push(l)})};i?o(i):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(u=>o(u)),this.options.preload&&this.options.preload.forEach(a=>o(a)),this.services.backendConnector.load(s,this.options.ns,a=>{!a&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),r(a)})}else r(null)}reloadResources(t,n,r){const i=Me();return t||(t=this.languages),n||(n=this.options.ns),r||(r=st),this.services.backendConnector.reload(t,n,s=>{i.resolve(),r(s)}),i}use(t){if(!t)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!t.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return t.type==="backend"&&(this.modules.backend=t),(t.type==="logger"||t.log&&t.warn&&t.error)&&(this.modules.logger=t),t.type==="languageDetector"&&(this.modules.languageDetector=t),t.type==="i18nFormat"&&(this.modules.i18nFormat=t),t.type==="postProcessor"&&xi.addPostProcessor(t),t.type==="formatter"&&(this.modules.formatter=t),t.type==="3rdParty"&&this.modules.external.push(t),this}setResolvedLanguage(t){if(!(!t||!this.languages)&&!(["cimode","dev"].indexOf(t)>-1))for(let n=0;n<this.languages.length;n++){const r=this.languages[n];if(!(["cimode","dev"].indexOf(r)>-1)&&this.store.hasLanguageSomeTranslations(r)){this.resolvedLanguage=r;break}}}changeLanguage(t,n){var r=this;this.isLanguageChangingTo=t;const i=Me();this.emit("languageChanging",t);const s=u=>{this.language=u,this.languages=this.services.languageUtils.toResolveHierarchy(u),this.resolvedLanguage=void 0,this.setResolvedLanguage(u)},o=(u,l)=>{l?(s(l),this.translator.changeLanguage(l),this.isLanguageChangingTo=void 0,this.emit("languageChanged",l),this.logger.log("languageChanged",l)):this.isLanguageChangingTo=void 0,i.resolve(function(){return r.t(...arguments)}),n&&n(u,function(){return r.t(...arguments)})},a=u=>{!t&&!u&&this.services.languageDetector&&(u=[]);const l=typeof u=="string"?u:this.services.languageUtils.getBestMatchFromCodes(u);l&&(this.language||s(l),this.translator.language||this.translator.changeLanguage(l),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(l)),this.loadResources(l,d=>{o(d,l)})};return!t&&this.services.languageDetector&&!this.services.languageDetector.async?a(this.services.languageDetector.detect()):!t&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(a):this.services.languageDetector.detect(a):a(t),i}getFixedT(t,n,r){var i=this;const s=function(o,a){let u;if(typeof a!="object"){for(var l=arguments.length,d=new Array(l>2?l-2:0),f=2;f<l;f++)d[f-2]=arguments[f];u=i.options.overloadTranslationOptionHandler([o,a].concat(d))}else u=b({},a);u.lng=u.lng||s.lng,u.lngs=u.lngs||s.lngs,u.ns=u.ns||s.ns,u.keyPrefix=u.keyPrefix||r||s.keyPrefix;const c=i.options.keySeparator||".";let g;return u.keyPrefix&&Array.isArray(o)?g=o.map(h=>`${u.keyPrefix}${c}${h}`):g=u.keyPrefix?`${u.keyPrefix}${c}${o}`:o,i.t(g,u)};return typeof t=="string"?s.lng=t:s.lngs=t,s.ns=n,s.keyPrefix=r,s}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(t){this.options.defaultNS=t}hasLoadedNamespace(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const r=n.lng||this.resolvedLanguage||this.languages[0],i=this.options?this.options.fallbackLng:!1,s=this.languages[this.languages.length-1];if(r.toLowerCase()==="cimode")return!0;const o=(a,u)=>{const l=this.services.backendConnector.state[`${a}|${u}`];return l===-1||l===2};if(n.precheck){const a=n.precheck(this,o);if(a!==void 0)return a}return!!(this.hasResourceBundle(r,t)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||o(r,t)&&(!i||o(s,t)))}loadNamespaces(t,n){const r=Me();return this.options.ns?(typeof t=="string"&&(t=[t]),t.forEach(i=>{this.options.ns.indexOf(i)<0&&this.options.ns.push(i)}),this.loadResources(i=>{r.resolve(),n&&n(i)}),r):(n&&n(),Promise.resolve())}loadLanguages(t,n){const r=Me();typeof t=="string"&&(t=[t]);const i=this.options.preload||[],s=t.filter(o=>i.indexOf(o)<0);return s.length?(this.options.preload=i.concat(s),this.loadResources(o=>{r.resolve(),n&&n(o)}),r):(n&&n(),Promise.resolve())}dir(t){if(t||(t=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!t)return"rtl";const n=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],r=this.services&&this.services.languageUtils||new _r(Rr());return n.indexOf(r.getLanguagePartFromCode(t))>-1||t.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;return new Pe(t,n)}cloneInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:st;const r=t.forkResourceStore;r&&delete t.forkResourceStore;const i=B(b(b({},this.options),t),{isClone:!0}),s=new Pe(i);return(t.debug!==void 0||t.prefix!==void 0)&&(s.logger=s.logger.clone(t)),["store","services","language"].forEach(a=>{s[a]=this[a]}),s.services=b({},this.services),s.services.utils={hasLoadedNamespace:s.hasLoadedNamespace.bind(s)},r&&(s.store=new Nr(this.store.data,i),s.services.resourceStore=s.store),s.translator=new bt(s.services,i),s.translator.on("*",function(a){for(var u=arguments.length,l=new Array(u>1?u-1:0),d=1;d<u;d++)l[d-1]=arguments[d];s.emit(a,...l)}),s.init(i,n),s.translator.options=i,s.translator.backendConnector.services.utils={hasLoadedNamespace:s.hasLoadedNamespace.bind(s)},s}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const Ei=Pe.createInstance();Ei.createInstance=Pe.createInstance;const ia={error:"Error"},sa={error:"Помилка"},Ir="common",oa={en:ia,uk:sa},V=Ei.createInstance({defaultNS:Ir,resources:aa(oa,Ir),lng:"en",fallbackLng:"en"}),vn={i18nextInstance:V,initPromise:V.init().then(()=>V)},ut=new Map;ut.set("common",vn);const Tn=e=>{if(ut.has(e.namespace))return ut.get(e.namespace);if(e.plugins)for(const s of e.plugins)V.use(s);Object.keys(e.resource).forEach(s=>{V.addResourceBundle(s,e.namespace,e.resource[s])});const t=V.cloneInstance({defaultNS:e.namespace});let n=vn.initPromise.then(()=>t);t.on("languageChanged",s=>{V.language!==s&&V.changeLanguage(s)}),V.on("languageChanged",s=>{t.language!==s&&t.changeLanguage(s)});const r=e.language||"en";V.language!==r&&(n=n.then(()=>t.changeLanguage(r)).then(()=>t));const i={initPromise:n,i18nextInstance:t};return ut.set(e.namespace,i),i};function aa(e,t){return Object.keys(e).reduce((n,r)=>(n[r]={[t]:e[r]},n),{})}class Sn extends Error{constructor(t,n,r){const{key:i,interpolationOptions:s}=n,o=r||vn.i18nextInstance.t,a=Object.assign(Object.assign({},s),{ns:t}),u=o(i,Object.assign(Object.assign({},a),{lng:"en"}));super(u),this.key=i,this.namespace=t,this.interpolationOptions=a}}function Oi(e){return e&&e.replace(new RegExp("(?<!\\\\)'","g"),"\\'")}const ua={errors:{noSisenseContext:"Sisense context is not initialized",restApiNotReady:"Rest API is not initialized",componentRenderError:"Unable to render the component",sisenseContextNoAuthentication:"Authentication method is not specified",chartNoSisenseContext:"Sisense Context for Chart not found. To fix, add a dataSet to the Chart or wrap the component inside a Sisense context provider.",widgetByIdNoSisenseContext:"Sisense Context for Dashboard Widget not found. To fix, wrap the component inside a Sisense context provider.",widgetByIdInvalidIdentifier:"Failed to retrieve widget. Please make sure the dashboard widget exists and is accessible.",dashboardWidgetsInvalidIdentifiers:"Failed to retrieve dashboard widgets. Please make sure the dashboard exists and is accessible.",executeQueryNoSisenseContext:"Sisense Context for query execution not found. To fix, wrap the component inside a Sisense context provider.",executeQueryNoDataSource:"No dataSource provided to execute query",dataOptions:{noDimensionsAndMeasures:"Neither dimensions nor measures found. Data options should have at least one dimension or measure.",attributeNotFound:'Attribute "{{attributeName}}" not found in the data',measureNotFound:'Measure "{{measureName}}" not found in the data',filterAttributeNotFound:'Filter attribute "{{attributeName}}" not found in the data',highlightAttributeNotFound:'Highlight attribute "{{attributeName}}" not found in the data'},optionsTranslation:{invalidStyleOptions:"Invalid style options for '{{chartType}}' chart",invalidInternalDataOptions:"Data options are not correctly converted for '{{chartType}}' chart"},themeNotFound:"Theme with oid {{themeOid}} not found in the Sisense instance",paletteNotFound:"Palette '{{paletteName}}' not found in the Sisense instance",chartTypeNotSupported:"Chart type {{chartType}} is not supported",chartInvalidProps:"Invalid chart props",unsupportedWidgetType:"Can't extract props for unsupported widget type - {{widgetType}}",sisenseContextNotFound:"Sisense Context not found. Please ensure it is provided.",dashboardInvalidIdentifier:"Failed to retrieve dashboard. Please make sure the dashboard exists and is accessible.",sharedFormula:{identifierExpected:"Failed to identify shared formula. Please provide oid or both name and datasource",failedToFetch:"Failed to fetch shared formula"},widgetModel:{incomleteWidget:"Widget can not be transformed to DTO because of incomplete property ({{prop}})",unsupportedWidgetTypeDto:"Saving the widget of type {{chartType}} is not supported",pivotWidgetNotSupported:"Pivot widget is not supported for method {{methodName}}",textWidgetNotSupported:"Text widget is not supported for method {{methodName}}",onlyTableWidgetSupported:"Only table widget is supported for method {{methodName}}",onlyPivotWidgetSupported:"Only pivot widget is supported for method {{methodName}}",onlyTextWidgetSupported:"Only text widget is supported for method {{methodName}}",onlyCustomWidgetSupported:"Only custom widget is supported for method {{methodName}}",unsupportedWidgetType:"Unsupported widget type: {{widgetType}}",unsupportedFusionWidgetType:"Unsupported Fusion widget type: {{widgetType}}"},unknownFilterInFilterRelations:"Filter relations contain unknown filter",filterRelationsNotSupported:"Filter relations not supported yet",invalidFilterType:"Invalid filter type",secondsDateTimeLevelSupportedOnlyForLive:"Seconds datetime level is supported only for the 'live' datasource",missingMenuRoot:"Missing initialized menu root",missingModalRoot:"Missing initialized modal root",missingDataSource:"The 'dataSource' value is missing. It must be provided explicitly, or a 'defaultDataSource' should be specified in the Sisense context provider.",incorrectOnDataReadyHandler:"'onDataReady' handler must return a valid data object",undefinedDataSource:"Data source is not defined",emptyModel:"Empty model",missingMetadata:"Missing metadata",missingModelTitle:"Missing model title",httpClientNotFound:"HttpClient not found.",serverSettingsNotLoaded:"Failed to load server settings",requiredColumnMissing:"Missing required column",unexpectedChartType:"Unexpected chart type: {{chartType}}",noRowNumColumn:"Data has no row num column",ticIntervalCalculationFailed:"Unable to calculate tic interval. Try specifying datetime granularity.",polarChartDesignOptionsExpected:"Polar chart design options expected for polar chart",polarChartDesignOptionsNotExpected:"Polar chart design options not expected for non-polar chart",indicatorInvalidRelativeSize:"Invalid relative size options",unsupportedMapType:"Unsupported map type: {{mapType}}",mapLoadingFailed:"Failed loading map",cascadingFilterOriginalNotFound:"Error in cascading filters reassembling. Original cascading filter not found",dashboardLoadFailed:"Failed to load Dashboard. {{error}}",widgetLoadFailed:"Failed to load Widget. {{error}}",dashboardWithOidNotFound:"Dashboard with oid {{dashboardOid}} not found",failedToAddWidget:"Failed to add widget to dashboard",widgetWithOidNotFound:"Widget with oid {{widgetOid}} not found",widgetWithOidNotFoundInDashboard:"Widget with oid {{widgetOid}} not found in dashboard with oid {{dashboardOid}}",widgetEmptyResponse:"Empty response for widget with oid {{widgetOid}}",dateFilterIncorrectOperator:"Incorrect operator: {{operator}}",synchronizedFilterInvalidProps:"`useSynchronizedFilter` hook must take at least one of [non-null `filterFromProps`] or [`createEmptyFilter` function]",methodNotImplemented:"Method not implemented.",noPivotClient:"Pivot client not initialized",unexpectedCacheValue:"Unexpected cache value",notAMembersFilter:"Filter is not a MembersFilter",drilldownNoInitialDimension:"Initial dimension has to be specified to use drilldown with custom components",otherWidgetTypesNotSupported:"Other widget types are not supported yet",dataBrowser:{dimensionNotFound:"Dimension with id {{dimensionId}} not found",attributeNotFound:"Attribute with id {{attributeId}} not found"},addFilterPopover:{noDataSources:"No data sources available. Try to define `dataSource` in widgets or `defaultDataSource` on the dashboard level."},tabberInvalidConfiguration:"Tabber widget configuration is invalid"},errorBoxText:"$t(common:error): {{errorMessage}}",chartNoData:"No Results",filters:"Filters",widgetDetails:"Widget Details",cancel:"Cancel",includeAll:"Include all",formatting:{number:{abbreviations:{thousand:"K",million:"M",billion:"B",trillion:"T"}}},criteriaFilter:{displayModePrefix:"All items",equals:"Equals {{val}}",notEquals:"Does not equal {{val}}",lessThan:"Less than {{val}}",lessThanOrEqual:"Less than or equal to {{val}}",greaterThan:"Greater than {{val}}",greaterThanOrEqual:"Greater than or equal to {{val}}",between:"Between {{valA}} and {{valB}}",notBetween:"Not between {{valA}} and {{valB}}",top:"Top {{valA}} by {{valB}}",bottom:"Last {{valA}} by {{valB}}",is:"Is {{val}}",isNot:"Is not {{val}}",contains:"Contains {{val}}",notContains:"Doesn't contain {{val}}",startsWith:"Starts with {{val}}",notStartsWith:"Doesn't start with {{val}}",endsWith:"Ends with {{val}}",notEndsWith:"Doesn't end with {{val}}",like:"Is like {{val}}",byMeasure:"By measure",by:"by"},dateFilter:{last:"Last",next:"Next",from:"From",to:"To",count:"Count",select:"Select",today:"Today",days:"Days",weeks:"Weeks",months:"Months",quarters:"Quarters",years:"Years",earliestDate:"Earliest Date",latestDate:"Latest Date",todayOutOfRange:"Today is out of available date range",dateRange:{fromTo:"{{from}} to {{to}}",from:"From {{val}}",to:"To {{val}}"}},boxplot:{tooltip:{whiskers:"Whiskers",box:"Box",min:"Min",median:"Median",max:"Max"}},treemap:{tooltip:{ofTotal:"of total",of:"of"}},advanced:{tooltip:{min:"Lower Bound",max:"Upper Bound",forecastValue:"Forecast Value",forecast:"Forecast",trend:"Trend",trendLocalValue:"Local Value",confidenceInterval:"Confidence Interval",trendType:"Type",trendDataKey:"Trend Data",trendData:{min:"Min",max:"Max",median:"Median",average:"Average"}}},arearange:{tooltip:{min:"Min",max:"Max"}},unsupportedFilterMessage:"Unsupported Filter (applied to the data query)",unsupportedFilter:"Unsupported filter {{filter}}",commonFilter:{clearSelectionButton:"Clear Selection",selectMenuItem:"Select",unselectMenuItem:"Un-Select"},customFilterTileMessage:"filtered with custom filter",filterRelations:{and:"AND",or:"OR",andOrFormulaApplied:"AND/OR Formula applied"},drilldown:{drillMenuItem:"Drill",breadcrumbsAllSuffix:"All",breadcrumbsPrev:"Prev",breadcrumbsNext:"Next",popover:{members:"Members",table:"Table",column:"Column"}},widgetHeader:{info:{details:"Widget Details",tooltip:"Click to view full details"},menu:{deleteWidget:"Delete Widget",distributeEqualWidth:"Distribute equally in this row"}},customWidgets:{registerPrompt:"Unknown custom widget type: {{customWidgetType}}. Please register this custom widget so it can be rendered."},ai:{analyticsChatbot:"Analytics Chatbot",dataTopics:"Data Topics",chatbotDescription:"Analytics Chatbot is designed to help you interact with your data using natural language.",topicSelectPrompt:"Pick a topic you would like to explore:",preview:"Preview",clearHistoryPrompt:"Do you want to clear this chat?",config:{inputPromptText:'Ask a question or type "/" for ideas',welcomeText:"Welcome to the Analytics Assistant! I can help you explore and gain insights from your data.",suggestionsWelcomeText:"Some questions you may have:"},buttons:{insights:"Insights",correctResponse:"Correct response",incorrectResponse:"Incorrect response",clearChat:"Clear chat",refresh:"Refresh",readMore:"Read more",collapse:"Collapse",yes:"Yes",no:"No",seeMore:"See more"},disclaimer:{poweredByAi:"Content is powered by AI, so surprises and mistakes are possible.",rateRequest:"Please rate responses so we can improve!"},errors:{chatUnavailable:"Chat unavailable. Please try again later.",fetchHistory:"Something went wrong and we were unable to retrieve the chat thread. Let's start over!",recommendationsNotAvailable:"Recommendations aren't available right now. Try again in a few minutes.",insightsNotAvailable:"No insights available.",VectorDBEmptyResponseError:"The AI configuration is not ready, please wait a few minutes and try again.",LlmBadConfigurationError:"The LLM configuration is wrong. Reach out to your Admin to update the LLM provider configuration.",ChartTypeUnsupportedError:"Requested chart type is not supported.",BlockedByLlmContentFiltering:"This question is blocked by our content management policy. Please try asking a different question.",LlmContextLengthExceedsLimitError:"Looks like you've reached the message length limit, please clear this conversation.",UserPromptExeedsLimitError:"The prompt exceeds the limit. Rephrase your question and use shorter prompt.",unexpectedChatResponse:"Oh snap, something went wrong. Please try again later or try asking a different question.",unexpected:"Oh snap, something went wrong. Please try again later.",unknownResponse:"Received unknown responseType, raw response=",invalidInput:"Invalid input",noAvailableDataTopics:"None of the provided data models or perspectives are available"}},attribute:{datetimeName:{years:"Years in {{columnName}}",quarters:"Quarters in {{columnName}}",months:"Months in {{columnName}}",weeks:"Weeks in {{columnName}}",days:"Days in {{columnName}}",hours:"Hours in {{columnName}}",minutes:"Minutes in {{columnName}}"}},filterEditor:{buttons:{apply:"Apply",cancel:"Cancel",selectAll:"Select All",clearAll:"Clear All"},labels:{includeAll:"Include all (no filter applied)",allowMultiSelection:"Allow multiselect for lists",from:"From",to:"To",includeCurrent:"Including current"},placeholders:{selectFromList:"Select from list",enterEntry:"Type your entry...",enterValue:"Enter value...",select:"Select"},conditions:{exclude:"Is not",contains:"Contains",notContain:"Does not contain",startsWith:"Starts with",notStartsWith:"Does not start with",endsWith:"Ends with",notEndsWith:"Does not end with",equals:"Equals",notEquals:"Does not equal",isEmpty:"Is empty",isNotEmpty:"Is not empty",lessThan:"Smaller than",lessThanOrEqual:"Equals or smaller than",greaterThan:"Greater than",greaterThanOrEqual:"Equals or greater than",isWithin:"Is within"},validationErrors:{invalidNumber:"Numbers only",invalidNumericRange:'"To" must be greater than "From"'},datetimeLevels:{year:"Year",quarter:"Quarter",month:"Month",week:"Week",day:"Day",aggrigatedHour:"Hour (aggregated)",aggrigatedMinutesRoundTo15:"15-min (aggregated)"},relativeTypes:{last:"Last",this:"This",next:"Next"},datetimePositions:{before:"Before",after:"After"}},dataBrowser:{addFilter:"Add Filter",selectField:"Select Field",configureFilter:"Configure Filter",noResults:"No results",searchPlaceholder:"Search"},pivotTable:{grandTotal:"Grand Total",subTotal:"{{value}} Total",limits:{baseNote:"Totals may refer to the complete data if set by the dashboard owner. If available, you can use filters to display fewer rows and columns. To view all your data, download the table to CSV.",rowsLimit:"The Pivot table is limited to {{recordsCount}} records",columnsLimit:"The Pivot table is limited to {{columnsCount}} columns",columnsAndRowsLimit:"The Pivot table is limited to {{recordsCount}} records and {{columnsCount}} columns"}},dashboard:{toolbar:{undo:"Undo",redo:"Redo",cancel:"Cancel",apply:"Apply",editLayout:"Edit Layout",viewMode:"Switch to View mode",showFilters:"Show Filters",hideFilters:"Hide Filters",columns:"Columns",column:"Column"}},jumpToDashboard:{defaultCaption:"Jump to",jumpableTooltip:"This widget is jumpable",noDrillTargets:"No drill targets available"},calendarHeatmap:{navigation:{firstMonth:"First Month",lastMonth:"Last Month",previousMonth:"Previous Month",nextMonth:"Next Month",previousGroup:"Previous Group",nextGroup:"Next Group"}}},la={errors:{noSisenseContext:"Контекст Sisense не ініціалізовано",restApiNotReady:"Rest API не ініціалізовано",componentRenderError:"Не вдалося відобразити компонент",sisenseContextNoAuthentication:"Не вказано метод аутентифікації",chartNoSisenseContext:"Контекст Sisense для діаграми не знайдено. Щоб виправити, додайте набір даних до Chart або оберніть компонент у SisenseContextProvider.",widgetByIdNoSisenseContext:"Контекст Sisense для віджета дашборди не знайдено. Щоб виправити, оберніть компонент у SisenseContextProvider.",widgetByIdInvalidIdentifier:"Не вдалося отримати віджет. Переконайтеся, що віджет дашборди існує і доступний.",dashboardWidgetsInvalidIdentifiers:"Не вдалося отримати віджети дашборди. Переконайтеся, що дашборда існує і доступна.",executeQueryNoSisenseContext:"Контекст Sisense для виконання запиту не знайдено. Щоб виправити, оберніть компонент у SisenseContextProvider.",executeQueryNoDataSource:"Не надано dataSource для виконання запиту",dataOptions:{noDimensionsAndMeasures:"Не знайдено ні dimension-ів, ні measure-ів. Параметри даних повинні мати щонайменше один dimension або measure.",attributeNotFound:'Атрибут "{{attributeName}}" не знайдено в даних',measureNotFound:'Measure "{{measureName}}" не знайдено в даних',filterAttributeNotFound:'Атрибут фільтра "{{attributeName}}" не знайдено в даних',highlightAttributeNotFound:'Атрибут виділення "{{attributeName}}" не знайдено в даних'},optionsTranslation:{invalidStyleOptions:"Недійсні параметри `styleOptions` для діаграми '{{chartType}}'",invalidInternalDataOptions:"Параметри `dataOptions` некоректно перетворені для діаграми '{{chartType}}'"},themeNotFound:"Тему з oid {{themeOid}} не знайдено на Sisense-сервері",paletteNotFound:'Палітру "{{paletteName}}" не знайдено на Sisense-сервері',chartTypeNotSupported:"Тип діаграми {{chartType}} не підтримується",chartInvalidProps:"Недійсні параметри діаграми",unsupportedWidgetType:"Неможливо отримати властивості для непідтримуваного типу віджета - {{widgetType}}",sisenseContextNotFound:"Контекст Sisense не знайдено. Переконайтеся, що він наданий.",dashboardInvalidIdentifier:"Не вдалося отримати дашборд. Переконайтеся, що дашборд існує і доступний.",sharedFormula:{identifierExpected:"Не вдалося ідентифікувати загальну формулу. Будь ласка, надайте oid або пару name та datasource",failedToFetch:"Не вдалося отримати спільну формулу"},widgetModel:{incomleteWidget:"Неможливо створити DTO віджету через неповноту властивості ({{prop}})",unsupportedWidgetTypeDto:"Сберігання віджету типу {{chartType}} не підтримується",pivotWidgetNotSupported:"Метод {{methodName}} не підтримується для півот віджету",textWidgetNotSupported:"Метод {{methodName}} не підтримується для текстового віджету",onlyTableWidgetSupported:"Метод {{methodName}} підтримується тільки для табличних віджетів",onlyPivotWidgetSupported:"Метод {{methodName}} підтримується тільки для півот віджетів",onlyTextWidgetSupported:"Метод {{methodName}} підтримується тільки для текстових віджетів",onlyCustomWidgetSupported:"Метод {{methodName}} підтримується тільки для кастомних віджетів",unsupportedWidgetType:"Тип віджету {{widgetType}} не підтримується",unsupportedFusionWidgetType:"Тип Fusion віджету {{widgetType}} не підтримується"},unknownFilterInFilterRelations:"Логічні відношення фільтрів містять невідомий фільтр",filterRelationsNotSupported:"Відносини фільтрів ще не підтримуються",invalidFilterType:"Недійсний тип фільтра",secondsDateTimeLevelSupportedOnlyForLive:"Рівень часу в секундах підтримується лише для 'live' джерела даних",missingMenuRoot:"Відсутній ініціалізований корінь меню",missingModalRoot:"Відсутній ініціалізований корінь модального вікна",missingDataSource:"Значення 'dataSource' відсутнє. Воно має бути передано явно, або 'defaultDataSource' має бути вказано в SisenseContextProvider.",incorrectOnDataReadyHandler:"'onDataReady' має повертати дійсний об'єкт даних",undefinedDataSource:"Не задане джерело даних",emptyModel:"Пуста модель",missingMetadata:"Поле metadata відсутнє",missingModelTitle:"Не знайдено заголовоку моделі",httpClientNotFound:"HttpClient не знайдено",serverSettingsNotLoaded:"Failed to load server settings",requiredColumnMissing:"Відсутній обов'язковий стовпець",unexpectedChartType:"Невідомий тип графіка: {{chartType}}",noRowNumColumn:"Дані не містять row num column",ticIntervalCalculationFailed:"Неможливо обрахувати tic interval. Спробуйте задати datetime granularity.",polarChartDesignOptionsExpected:"Polar chart design options очікуються для polar chart",polarChartDesignOptionsNotExpected:"Polar chart design options не очікуються для non-polar chart",indicatorInvalidRelativeSize:"Невірні опції relative size",unsupportedMapType:"Непідтримуваний тип мапи: {{mapType}}",mapLoadingFailed:"Не вдалося завантажити мапу",cascadingFilterOriginalNotFound:"Помилка при реструктуризації каскадних фільтрів. Оригінальний фільтр не знайдено",dashboardLoadFailed:"Не вдалося завантажити Dashboard. {{error}}",widgetLoadFailed:"Не вдалося завантажити віджет. {{error}}",dashboardWithOidNotFound:"Dashboard з oid {{dashboardOid}} не знайдено",failedToAddWidget:"Не вдалося додати віджет",widgetWithOidNotFound:"Віджет з oid {{widgetOid}} не знайдено",widgetWithOidNotFoundInDashboard:"Віджет з oid {{widgetOid}} не знайдено в Dashboard з oid {{dashboardOid}}",widgetEmptyResponse:"Пуста відповідь для віджета з oid {{widgetOid}}",dateFilterIncorrectOperator:"Некорректний оператор: {{operator}}",synchronizedFilterInvalidProps:"`useSynchronizedFilter` хук потребує одне з [non-null `filterFromProps`] чи [`createEmptyFilter` function]",methodNotImplemented:"Метод не реалізовано.",noPivotClient:"Pivot client не ініціалізовано",unexpectedCacheValue:"Неочікуване значення кешу",notAMembersFilter:"Фільтр не є MembersFilter",drilldownNoInitialDimension:"Initial dimension має бути задано щоб використовувати drilldown з користувацькими компонентами",otherWidgetTypesNotSupported:"Інші типи віджетів поки що не підтримуються",dataBrowser:{dimensionNotFound:"Dimension з id {{dimensionId}} не знайдено",attributeNotFound:"Attribute з id {{attributeId}} не знайдено"},addFilterPopover:{noDataSources:"Не знайдено жодного джерела даних. Спробуйте задати `dataSource` у віджетах або `defaultDataSource` на рівні дашборди."},tabberInvalidConfiguration:"Конфігурація Tabber віджета невірна"},errorBoxText:"$t(common:error): {{errorMessage}}",chartNoData:"Результатів немає",filters:"Фільтри",widgetDetails:"Деталі віджета",cancel:"Відміна",includeAll:"Всі елементи",formatting:{number:{abbreviations:{thousand:"Тис.",million:"Млн",billion:"Млрд",trillion:"Трлн"}}},criteriaFilter:{displayModePrefix:"Всі елементи",equals:"Дорівнює {{val}}",notEquals:"Не дорівнює {{val}}",lessThan:"Менше ніж {{val}}",lessThanOrEqual:"Менше або дорівнює {{val}}",greaterThan:"Більше ніж {{val}}",greaterThanOrEqual:"Більше або дорівнює {{val}}",between:"Між {{valA}} та {{valB}}",notBetween:"Не між {{valA}} та {{valB}}",top:"Перші {{valA}} за {{valB}}",bottom:"Останні {{valA}} за {{valB}}",is:"Є {{val}}",isNot:"Не є {{val}}",contains:"Містить {{val}}",notContains:"Не містить {{val}}",startsWith:"Починається з {{val}}",notStartsWith:"Не починається з {{val}}",endsWith:"Закінчується на {{val}}",notEndsWith:"Не закінчується на {{val}}",like:"Схоже на {{val}}",byMeasure:"By measure",by:"by"},dateFilter:{last:"Останній",next:"Наступний",from:"Від",to:"До",count:"Кількість",select:"Вибрати",today:"Сьогодні",days:"Дні",weeks:"Тижні",months:"Місяці",quarters:"Квартали",years:"Роки",earliestDate:"Найбільш Рання Дата",latestDate:"Найбільш Пізня Дата",todayOutOfRange:"Сьогоднішній день поза доступним діапазоном дат",dateRange:{fromTo:"{{from}} до {{to}}",from:"Від {{val}}",to:"До {{val}}"}},boxplot:{tooltip:{whiskers:"Вуса",box:"Коробка",min:"Мінімум",median:"Медіана",max:"Максимум"}},treemap:{tooltip:{ofTotal:"загальної кількості",of:"з"}},advanced:{tooltip:{min:"Lower Bound",max:"Upper Bound",forecastValue:"Forecast Value",forecast:"Forecast",trend:"Trend",trendLocalValue:"Local Value",confidenceInterval:"Confidence Interval",trendType:"Type",trendDataKey:"Trend Data",trendData:{min:"Min",max:"Max",median:"Median",average:"Average"}}},arearange:{tooltip:{min:"Мінімум",max:"Максимум"}},dashboard:{toolbar:{undo:"Скасувати",redo:"Повторити",cancel:"Відмінити",apply:"Застосувати",editLayout:"Редагувати макет",viewMode:"Перейти до режиму перегляду",showFilters:"Показати фільтри",hideFilters:"Приховати фільтри",columns:"Стовпці",column:"Стовпець"}},unsupportedFilterMessage:"Непідтримуваний Фільтр (застосовано до запиту даних)",unsupportedFilter:"Непідтримуваний фільтр {{filter}}",commonFilter:{clearSelectionButton:"Очистити виділення",selectMenuItem:"Вибрати",unselectMenuItem:"Cкасувати вибір"},customFilterTileMessage:"застосовано користувацький фільтр",drilldown:{drillMenuItem:"Деталізація",breadcrumbsAllSuffix:"Все",breadcrumbsPrev:"Попередній",breadcrumbsNext:"Наступний",popover:{members:"Учасники",table:"Таблиця",column:"Колонка"}},widgetHeader:{info:{details:"Деталі віджета",tooltip:"Натисніть щоб побачити повну інформацію"},menu:{deleteWidget:"Видалити віджет",distributeEqualWidth:"Розподілити порівну в цьому рядку"}},customWidgets:{registerPrompt:"Невідомий кастомний віджет: {{customWidgetType}}. Будь ласка зареєструйте цей кастомний віджет щоб він міг бути відображений."},ai:{analyticsChatbot:"Аналітичний чат-бот",dataTopics:"Теми Даних",chatbotDescription:"Аналітичний чат-бот розроблено, щоб допомогти вам взаємодіяти з вашими даними за допомогою розмовної мови.",topicSelectPrompt:"Виберіть тему, яку б ви хотіли дослідити:",preview:"Попередній перегляд",clearHistoryPrompt:"Ви дійсно хочете очистити чат?",config:{inputPromptText:"Поставте запитання або введіть «/» для отримання ідей",welcomeText:"Вітаємо в Аналітичному помічнику! Я можу допомогти вам досліджувати та зрозуміти ваші дані.",suggestionsWelcomeText:"Деякі запитання, які у вас можуть виникнути:"},buttons:{insights:"Інсайти",correctResponse:"Коректна відповідь",incorrectResponse:"Некоректна відповідь",clearChat:"Очистити чат",refresh:"Оновити",readMore:"Читати ще",collapse:"Згорнути",yes:"Так",no:"Ні",seeMore:"Більше"},disclaimer:{poweredByAi:"Вміст створено за допомогою ШІ, тому можливі несподіванки та помилки.",rateRequest:" Будь ласка, оцінюйте відповіді, щоб ми могли покращити продукт!"},errors:{chatUnavailable:"Чат недоступний. Спробуйте пізніше.",fetchHistory:"Щось пішло не так, і ми не змогли відновити історію чату. Почнімо спочатку!",recommendationsNotAvailable:"Наразі рекомендації недоступні. Спробуйте ще раз через кілька хвилин.",insightsNotAvailable:"Немає доступних інсайтів.",VectorDBEmptyResponseError:"AI ще конфігурується, будь ласка зачекайте та спробуйте ще раз за хвилинку чи дві.",LlmBadConfigurationError:"Схоже що LLM невірно сконфігурований. Зверніться до вашого Адміністратора щоб він оновив конфігурацію LLM провайдера.",ChartTypeUnsupportedError:"Графік такого типу покищо не підтримується.",BlockedByLlmContentFiltering:"Це питання заблоковано нашою політикою керування вмістом. Будь ласка спробуйте поставити інше запитання.",LlmContextLengthExceedsLimitError:"Схоже ви досягли ліміту кількості сповіщеннь, будь ласка очистіть поточний чат аби розпочати новий.",UserPromptExeedsLimitError:"Цей запит перевищює максимально дозволений ліміт. Будь ласка перефразуйте та зробіть запит коротше.",unexpectedChatResponse:"Ой, щось пішло не так. Повторіть спробу пізніше або спробуйте поставити інше запитання.",unexpected:"Ой, лихо! Шось йому стало. Спробуйте трохи пізніше.",unknownResponse:"Отримано невідомий тип відповіді, необроблена відповідь=",invalidInput:"Недійсне введення",noAvailableDataTopics:"Жодне з наданих моделей даних або перспектив доступне"}},filterRelations:{and:"І",or:"АБО",andOrFormulaApplied:"Застосовано формулу І/АБО"},attribute:{datetimeName:{years:"Роки в {{columnName}}",quarters:"Квартали в {{columnName}}",months:"Місяці в {{columnName}}",weeks:"Тижні в {{columnName}}",days:"Дні в {{columnName}}",hours:"Години в {{columnName}}",minutes:"Хвилини в {{columnName}}"}},filterEditor:{buttons:{apply:"Застосувати",cancel:"Відміна",selectAll:"Обрати всі",clearAll:"Очистити всі"},labels:{includeAll:"Обрати всі (фільтр не використовується)",allowMultiSelection:"Дозволити вибір кількох значень для списків",from:"Від",to:"До",includeCurrent:"Включаючи поточний"},placeholders:{selectFromList:"Виберіть зі списку",enterEntry:"Введіть значення...",enterValue:"Введіть значення...",select:"Вибрати"},conditions:{exclude:"Не є",contains:"Mістить",notContain:"Не містить",startsWith:"Починається з",notStartsWith:"Не починається з",endsWith:"Закінчується на",notEndsWith:"Не закінчується на",equals:"Дорівнює",notEquals:"Не дорівнює",isEmpty:"Порожній",isNotEmpty:"Не порожній",lessThan:"Менше ніж",lessThanOrEqual:"Менше або дорівнює",greaterThan:"Більше ніж",greaterThanOrEqual:"Більше або дорівнює",isWithin:"В межах"},validationErrors:{invalidNumber:"Тільки цифри",invalidNumericRange:'"До" має бути більше, ніж "Від"'},datetimeLevels:{year:"Year",quarter:"Quarter",month:"Month",week:"Week",day:"Day",aggrigatedHour:"Hour (aggregated)",aggrigatedMinutesRoundTo15:"15-min (aggregated)"},relativeTypes:{last:"Останній",this:"Поточний",next:"Наступний"},datetimePositions:{before:"Перед",after:"Після"}},pivotTable:{grandTotal:"Загальний підсумок",subTotal:"Усього {{value}}",limits:{baseNote:"Загальні підсумки можуть відноситися до всіх даних, якщо вони встановлені власником дашборду. Якщо доступні, ви можете використовувати фільтри для відображення меншої кількості рядків і стовпців. Щоб побачити всі ваші дані, завантажте таблицю в CSV.",rowsLimit:"Таблиця Pivot обмежена до {{recordsCount}} рядків",columnsLimit:"Таблиця Pivot обмежена до {{columnsCount}} стовпців",columnsAndRowsLimit:"Таблиця Pivot обмежена до {{recordsCount}} рядків і {{columnsCount}} стовпців"}},dataBrowser:{addFilter:"Додати фільтр",selectField:"Вибрати поле",configureFilter:"Налаштувати фільтр",noResults:"Немає результатів",searchPlaceholder:"Пошук"},jumpToDashboard:{jumpableTooltip:"З цього віджета можна перейти до інших віджетів",defaultCaption:"Перейти до",noDrillTargets:"Цілі для переходу відсутні"},calendarHeatmap:{navigation:{firstMonth:"Перший місяць",lastMonth:"Останній місяць",previousMonth:"Попередній місяць",nextMonth:"Наступний місяць",previousGroup:"Попередня група",nextGroup:"Наступна група"}}},An="sdkUi",ca={en:ua,uk:la};function Ni(){return Tn({resource:ca,plugins:[jo],language:"en",namespace:An})}const{i18nextInstance:Fi}=Ni(),da={errors:{measure:{unsupportedType:"Unsupported measure type",dimensionalCalculatedMeasure:{noContext:"DimensionalCalculatedMeasure must have 'context' property"},dimensionalBaseMeasure:{noAttributeDimExpression:"DimensionalBaseMeasure must have 'attribute'/'dim'/'expression' property",noAggAggregation:"DimensionalBaseMeasure must have 'agg' or 'aggregation' property"},notAFormula:"Jaql is not a formula"},dataModelConfig:{noName:"'name' must be specified in config for DataModel",noMetadata:"'metadata' must be specified in config for DataModel"},filter:{unsupportedType:"Unsupported filter type: {{filterType}}",unsupportedDatetimeLevel:'Filters do not support the next "datetime" levels: Hours, MinutesRoundTo30, MinutesRoundTo15, Minutes, Seconds',membersFilterNullMember:"MembersFilter of {{attributeId}} - member cannot be null",unsupportedConditionFilter:"Jaql contains unsupported condition filter: {{filter}}",formulaFiltersNotSupported:"Formula-based filter not supported yet: {{filter}}"},unsupportedDimensionalElement:"Unsupported dimensional element type"}},fa={errors:{measure:{unsupportedType:"Непідтримуваний тип measure",dimensionalCalculatedMeasure:{noContext:"DimensionalCalculatedMeasure має мати властивість 'context'"},dimensionalBaseMeasure:{noAttributeDimExpression:"DimensionalBaseMeasure має мати властивість 'attribute'/'dim'/'expression'",noAggAggregation:"DimensionalBaseMeasure має мати властивість 'agg' або 'aggregation'"},notAFormula:"Jaql не формула"},dataModelConfig:{noName:"'name' має бути вказано в конфігурації для DataModel",noMetadata:"'metadata' має бути вказано в конфігурації для DataModel"},filter:{unsupportedType:"Непідтримуваний тип фільтра: {{filterType}}",unsupportedDatetimeLevel:'Фільтри не підтримують наступні рівні "datetime": Hours, MinutesRoundTo30, MinutesRoundTo15, Minutes, Seconds',membersFilterNullMember:"MembersFilter у {{attributeId}} - member не може бути нульовим",unsupportedConditionFilter:"Jaql містить непідтримуваний condition фільтр: {{filter}}",formulaFiltersNotSupported:"Фільтри, що містять формули наразі не підтримуються: {{filter}}"},unsupportedDimensionalElement:"Непідтримуваний тип елемента"}},_i="sdkData",pa={en:da,uk:fa};function ha(){return Tn({resource:pa,language:"en",namespace:_i})}const{i18nextInstance:ga}=ha();function ma(){this.__data__=[],this.size=0}function ze(e,t){return e===t||e!==e&&t!==t}function Ot(e,t){for(var n=e.length;n--;)if(ze(e[n][0],t))return n;return-1}var ba=Array.prototype,ya=ba.splice;function va(e){var t=this.__data__,n=Ot(t,e);if(n<0)return!1;var r=t.length-1;return n==r?t.pop():ya.call(t,n,1),--this.size,!0}function Ta(e){var t=this.__data__,n=Ot(t,e);return n<0?void 0:t[n][1]}function Sa(e){return Ot(this.__data__,e)>-1}function Aa(e,t){var n=this.__data__,r=Ot(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}function te(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}te.prototype.clear=ma;te.prototype.delete=va;te.prototype.get=Ta;te.prototype.has=Sa;te.prototype.set=Aa;function wa(){this.__data__=new te,this.size=0}function Ca(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function xa(e){return this.__data__.get(e)}function Ea(e){return this.__data__.has(e)}var Mi=typeof global=="object"&&global&&global.Object===Object&&global,Oa=typeof self=="object"&&self&&self.Object===Object&&self,H=Mi||Oa||Function("return this")(),U=H.Symbol,Di=Object.prototype,Na=Di.hasOwnProperty,Fa=Di.toString,De=U?U.toStringTag:void 0;function _a(e){var t=Na.call(e,De),n=e[De];try{e[De]=void 0;var r=!0}catch(s){}var i=Fa.call(e);return r&&(t?e[De]=n:delete e[De]),i}var Ma=Object.prototype,Da=Ma.toString;function Ra(e){return Da.call(e)}var La="[object Null]",Ia="[object Undefined]",Pr=U?U.toStringTag:void 0;function se(e){return e==null?e===void 0?Ia:La:Pr&&Pr in Object(e)?_a(e):Ra(e)}function Y(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var Pa="[object AsyncFunction]",ja="[object Function]",$a="[object GeneratorFunction]",Ba="[object Proxy]";function Nt(e){if(!Y(e))return!1;var t=se(e);return t==ja||t==$a||t==Pa||t==Ba}var en=H["__core-js_shared__"],jr=function(){var e=/[^.]+$/.exec(en&&en.keys&&en.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Ua(e){return!!jr&&jr in e}var Wa=Function.prototype,qa=Wa.toString;function pe(e){if(e!=null){try{return qa.call(e)}catch(t){}try{return e+""}catch(t){}}return""}var ka=/[\\^$.*+?()[\]{}|]/g,za=/^\[object .+?Constructor\]$/,Ha=Function.prototype,Ga=Object.prototype,Va=Ha.toString,Qa=Ga.hasOwnProperty,Ka=RegExp("^"+Va.call(Qa).replace(ka,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Ja(e){if(!Y(e)||Ua(e))return!1;var t=Nt(e)?Ka:za;return t.test(pe(e))}function Ya(e,t){return e==null?void 0:e[t]}function he(e,t){var n=Ya(e,t);return Ja(n)?n:void 0}var je=he(H,"Map"),$e=he(Object,"create");function Xa(){this.__data__=$e?$e(null):{},this.size=0}function Za(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var eu="__lodash_hash_undefined__",tu=Object.prototype,nu=tu.hasOwnProperty;function ru(e){var t=this.__data__;if($e){var n=t[e];return n===eu?void 0:n}return nu.call(t,e)?t[e]:void 0}var iu=Object.prototype,su=iu.hasOwnProperty;function ou(e){var t=this.__data__;return $e?t[e]!==void 0:su.call(t,e)}var au="__lodash_hash_undefined__";function uu(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=$e&&t===void 0?au:t,this}function ce(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}ce.prototype.clear=Xa;ce.prototype.delete=Za;ce.prototype.get=ru;ce.prototype.has=ou;ce.prototype.set=uu;function lu(){this.size=0,this.__data__={hash:new ce,map:new(je||te),string:new ce}}function cu(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}function Ft(e,t){var n=e.__data__;return cu(t)?n[typeof t=="string"?"string":"hash"]:n.map}function du(e){var t=Ft(this,e).delete(e);return this.size-=t?1:0,t}function fu(e){return Ft(this,e).get(e)}function pu(e){return Ft(this,e).has(e)}function hu(e,t){var n=Ft(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this}function ne(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}ne.prototype.clear=lu;ne.prototype.delete=du;ne.prototype.get=fu;ne.prototype.has=pu;ne.prototype.set=hu;var gu=200;function mu(e,t){var n=this.__data__;if(n instanceof te){var r=n.__data__;if(!je||r.length<gu-1)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new ne(r)}return n.set(e,t),this.size=n.size,this}function q(e){var t=this.__data__=new te(e);this.size=t.size}q.prototype.clear=wa;q.prototype.delete=Ca;q.prototype.get=xa;q.prototype.has=Ea;q.prototype.set=mu;function Ri(e,t){for(var n=-1,r=e==null?0:e.length;++n<r&&t(e[n],n,e)!==!1;);return e}var yt=function(){try{var e=he(Object,"defineProperty");return e({},"",{}),e}catch(t){}}();function He(e,t,n){t=="__proto__"&&yt?yt(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}var bu=Object.prototype,yu=bu.hasOwnProperty;function wn(e,t,n){var r=e[t];(!(yu.call(e,t)&&ze(r,n))||n===void 0&&!(t in e))&&He(e,t,n)}function xe(e,t,n,r){var i=!n;n||(n={});for(var s=-1,o=t.length;++s<o;){var a=t[s],u=void 0;u===void 0&&(u=e[a]),i?He(n,a,u):wn(n,a,u)}return n}function vu(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}function k(e){return e!=null&&typeof e=="object"}var Tu="[object Arguments]";function $r(e){return k(e)&&se(e)==Tu}var Li=Object.prototype,Su=Li.hasOwnProperty,Au=Li.propertyIsEnumerable,Be=$r(function(){return arguments}())?$r:function(e){return k(e)&&Su.call(e,"callee")&&!Au.call(e,"callee")},L=Array.isArray;function wu(){return!1}var Ii=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Br=Ii&&typeof module=="object"&&module&&!module.nodeType&&module,Cu=Br&&Br.exports===Ii,Ur=Cu?H.Buffer:void 0,xu=Ur?Ur.isBuffer:void 0,Ue=xu||wu,Eu=9007199254740991,Ou=/^(?:0|[1-9]\d*)$/;function _t(e,t){var n=typeof e;return t=t==null?Eu:t,!!t&&(n=="number"||n!="symbol"&&Ou.test(e))&&e>-1&&e%1==0&&e<t}var Nu=9007199254740991;function Cn(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Nu}var Fu="[object Arguments]",_u="[object Array]",Mu="[object Boolean]",Du="[object Date]",Ru="[object Error]",Lu="[object Function]",Iu="[object Map]",Pu="[object Number]",ju="[object Object]",$u="[object RegExp]",Bu="[object Set]",Uu="[object String]",Wu="[object WeakMap]",qu="[object ArrayBuffer]",ku="[object DataView]",zu="[object Float32Array]",Hu="[object Float64Array]",Gu="[object Int8Array]",Vu="[object Int16Array]",Qu="[object Int32Array]",Ku="[object Uint8Array]",Ju="[object Uint8ClampedArray]",Yu="[object Uint16Array]",Xu="[object Uint32Array]",O={};O[zu]=O[Hu]=O[Gu]=O[Vu]=O[Qu]=O[Ku]=O[Ju]=O[Yu]=O[Xu]=!0;O[Fu]=O[_u]=O[qu]=O[Mu]=O[ku]=O[Du]=O[Ru]=O[Lu]=O[Iu]=O[Pu]=O[ju]=O[$u]=O[Bu]=O[Uu]=O[Wu]=!1;function Zu(e){return k(e)&&Cn(e.length)&&!!O[se(e)]}function Mt(e){return function(t){return e(t)}}var Pi=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Le=Pi&&typeof module=="object"&&module&&!module.nodeType&&module,el=Le&&Le.exports===Pi,tn=el&&Mi.process,de=function(){try{var e=Le&&Le.require&&Le.require("util").types;return e||tn&&tn.binding&&tn.binding("util")}catch(t){}}(),Wr=de&&de.isTypedArray,xn=Wr?Mt(Wr):Zu,tl=Object.prototype,nl=tl.hasOwnProperty;function ji(e,t){var n=L(e),r=!n&&Be(e),i=!n&&!r&&Ue(e),s=!n&&!r&&!i&&xn(e),o=n||r||i||s,a=o?vu(e.length,String):[],u=a.length;for(var l in e)(t||nl.call(e,l))&&!(o&&(l=="length"||i&&(l=="offset"||l=="parent")||s&&(l=="buffer"||l=="byteLength"||l=="byteOffset")||_t(l,u)))&&a.push(l);return a}var rl=Object.prototype;function En(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||rl;return e===n}function $i(e,t){return function(n){return e(t(n))}}var il=$i(Object.keys,Object),sl=Object.prototype,ol=sl.hasOwnProperty;function al(e){if(!En(e))return il(e);var t=[];for(var n in Object(e))ol.call(e,n)&&n!="constructor"&&t.push(n);return t}function Ge(e){return e!=null&&Cn(e.length)&&!Nt(e)}function Ve(e){return Ge(e)?ji(e):al(e)}function ul(e,t){return e&&xe(t,Ve(t),e)}function ll(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}var cl=Object.prototype,dl=cl.hasOwnProperty;function fl(e){if(!Y(e))return ll(e);var t=En(e),n=[];for(var r in e)r=="constructor"&&(t||!dl.call(e,r))||n.push(r);return n}function Qe(e){return Ge(e)?ji(e,!0):fl(e)}function pl(e,t){return e&&xe(t,Qe(t),e)}var Bi=typeof exports=="object"&&exports&&!exports.nodeType&&exports,qr=Bi&&typeof module=="object"&&module&&!module.nodeType&&module,hl=qr&&qr.exports===Bi,kr=hl?H.Buffer:void 0,zr=kr?kr.allocUnsafe:void 0;function Ui(e,t){if(t)return e.slice();var n=e.length,r=zr?zr(n):new e.constructor(n);return e.copy(r),r}function On(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n<r;)t[n]=e[n];return t}function gl(e,t){for(var n=-1,r=e==null?0:e.length,i=0,s=[];++n<r;){var o=e[n];t(o,n,e)&&(s[i++]=o)}return s}function Wi(){return[]}var ml=Object.prototype,bl=ml.propertyIsEnumerable,Hr=Object.getOwnPropertySymbols,Nn=Hr?function(e){return e==null?[]:(e=Object(e),gl(Hr(e),function(t){return bl.call(e,t)}))}:Wi;function yl(e,t){return xe(e,Nn(e),t)}function Fn(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}var _n=$i(Object.getPrototypeOf,Object),vl=Object.getOwnPropertySymbols,qi=vl?function(e){for(var t=[];e;)Fn(t,Nn(e)),e=_n(e);return t}:Wi;function Tl(e,t){return xe(e,qi(e),t)}function ki(e,t,n){var r=t(e);return L(e)?r:Fn(r,n(e))}function an(e){return ki(e,Ve,Nn)}function Mn(e){return ki(e,Qe,qi)}var un=he(H,"DataView"),ln=he(H,"Promise"),vt=he(H,"Set"),Tt=he(H,"WeakMap"),Gr="[object Map]",Sl="[object Object]",Vr="[object Promise]",Qr="[object Set]",Kr="[object WeakMap]",Jr="[object DataView]",Al=pe(un),wl=pe(je),Cl=pe(ln),xl=pe(vt),El=pe(Tt),W=se;(un&&W(new un(new ArrayBuffer(1)))!=Jr||je&&W(new je)!=Gr||ln&&W(ln.resolve())!=Vr||vt&&W(new vt)!=Qr||Tt&&W(new Tt)!=Kr)&&(W=function(e){var t=se(e),n=t==Sl?e.constructor:void 0,r=n?pe(n):"";if(r)switch(r){case Al:return Jr;case wl:return Gr;case Cl:return Vr;case xl:return Qr;case El:return Kr}return t});var Ol=Object.prototype,Nl=Ol.hasOwnProperty;function Fl(e){var t=e.length,n=new e.constructor(t);return t&&typeof e[0]=="string"&&Nl.call(e,"index")&&(n.index=e.index,n.input=e.input),n}var St=H.Uint8Array;function Dn(e){var t=new e.constructor(e.byteLength);return new St(t).set(new St(e)),t}function _l(e,t){var n=t?Dn(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}var Ml=/\w*$/;function Dl(e){var t=new e.constructor(e.source,Ml.exec(e));return t.lastIndex=e.lastIndex,t}var Yr=U?U.prototype:void 0,Xr=Yr?Yr.valueOf:void 0;function Rl(e){return Xr?Object(Xr.call(e)):{}}function zi(e,t){var n=t?Dn(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}var Ll="[object Boolean]",Il="[object Date]",Pl="[object Map]",jl="[object Number]",$l="[object RegExp]",Bl="[object Set]",Ul="[object String]",Wl="[object Symbol]",ql="[object ArrayBuffer]",kl="[object DataView]",zl="[object Float32Array]",Hl="[object Float64Array]",Gl="[object Int8Array]",Vl="[object Int16Array]",Ql="[object Int32Array]",Kl="[object Uint8Array]",Jl="[object Uint8ClampedArray]",Yl="[object Uint16Array]",Xl="[object Uint32Array]";function Zl(e,t,n){var r=e.constructor;switch(t){case ql:return Dn(e);case Ll:case Il:return new r(+e);case kl:return _l(e,n);case zl:case Hl:case Gl:case Vl:case Ql:case Kl:case Jl:case Yl:case Xl:return zi(e,n);case Pl:return new r;case jl:case Ul:return new r(e);case $l:return Dl(e);case Bl:return new r;case Wl:return Rl(e)}}var Zr=Object.create,Hi=function(){function e(){}return function(t){if(!Y(t))return{};if(Zr)return Zr(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();function Gi(e){return typeof e.constructor=="function"&&!En(e)?Hi(_n(e)):{}}var ec="[object Map]";function tc(e){return k(e)&&W(e)==ec}var ei=de&&de.isMap,nc=ei?Mt(ei):tc,rc="[object Set]";function ic(e){return k(e)&&W(e)==rc}var ti=de&&de.isSet,sc=ti?Mt(ti):ic,oc=1,ac=2,uc=4,Vi="[object Arguments]",lc="[object Array]",cc="[object Boolean]",dc="[object Date]",fc="[object Error]",Qi="[object Function]",pc="[object GeneratorFunction]",hc="[object Map]",gc="[object Number]",Ki="[object Object]",mc="[object RegExp]",bc="[object Set]",yc="[object String]",vc="[object Symbol]",Tc="[object WeakMap]",Sc="[object ArrayBuffer]",Ac="[object DataView]",wc="[object Float32Array]",Cc="[object Float64Array]",xc="[object Int8Array]",Ec="[object Int16Array]",Oc="[object Int32Array]",Nc="[object Uint8Array]",Fc="[object Uint8ClampedArray]",_c="[object Uint16Array]",Mc="[object Uint32Array]",E={};E[Vi]=E[lc]=E[Sc]=E[Ac]=E[cc]=E[dc]=E[wc]=E[Cc]=E[xc]=E[Ec]=E[Oc]=E[hc]=E[gc]=E[Ki]=E[mc]=E[bc]=E[yc]=E[vc]=E[Nc]=E[Fc]=E[_c]=E[Mc]=!0;E[fc]=E[Qi]=E[Tc]=!1;function Te(e,t,n,r,i,s){var o,a=t&oc,u=t&ac,l=t&uc;if(n&&(o=i?n(e,r,i,s):n(e)),o!==void 0)return o;if(!Y(e))return e;var d=L(e);if(d){if(o=Fl(e),!a)return On(e,o)}else{var f=W(e),c=f==Qi||f==pc;if(Ue(e))return Ui(e,a);if(f==Ki||f==Vi||c&&!i){if(o=u||c?{}:Gi(e),!a)return u?Tl(e,pl(o,e)):yl(e,ul(o,e))}else{if(!E[f])return i?e:{};o=Zl(e,f,a)}}s||(s=new q);var g=s.get(e);if(g)return g;s.set(e,o),sc(e)?e.forEach(function(m){o.add(Te(m,t,n,m,e,s))}):nc(e)&&e.forEach(function(m,w){o.set(w,Te(m,t,n,w,e,s))});var h=l?u?Mn:an:u?Qe:Ve,v=d?void 0:h(e);return Ri(v||e,function(m,w){v&&(w=m,m=e[w]),wn(o,w,Te(m,t,n,w,e,s))}),o}var Dc=1,Rc=4;function Rn(e){return Te(e,Dc|Rc)}function Lc(e){return function(t,n,r){for(var i=-1,s=Object(t),o=r(t),a=o.length;a--;){var u=o[++i];if(n(s[u],u,s)===!1)break}return t}}var Ji=Lc();function Yi(e,t){return e&&Ji(e,t,Ve)}var Ic="__lodash_hash_undefined__";function Pc(e){return this.__data__.set(e,Ic),this}function jc(e){return this.__data__.has(e)}function We(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new ne;++t<n;)this.add(e[t])}We.prototype.add=We.prototype.push=Pc;We.prototype.has=jc;function $c(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}function Xi(e,t){return e.has(t)}var Bc=1,Uc=2;function Zi(e,t,n,r,i,s){var o=n&Bc,a=e.length,u=t.length;if(a!=u&&!(o&&u>a))return!1;var l=s.get(e),d=s.get(t);if(l&&d)return l==t&&d==e;var f=-1,c=!0,g=n&Uc?new We:void 0;for(s.set(e,t),s.set(t,e);++f<a;){var h=e[f],v=t[f];if(r)var m=o?r(v,h,f,t,e,s):r(h,v,f,e,t,s);if(m!==void 0){if(m)continue;c=!1;break}if(g){if(!$c(t,function(w,F){if(!Xi(g,F)&&(h===w||i(h,w,n,r,s)))return g.push(F)})){c=!1;break}}else if(!(h===v||i(h,v,n,r,s))){c=!1;break}}return s.delete(e),s.delete(t),c}function Wc(e){var t=-1,n=Array(e.size);return e.forEach(function(r,i){n[++t]=[i,r]}),n}function es(e){var t=-1,n=Array(e.size);return e.forEach(function(r){n[++t]=r}),n}var qc=1,kc=2,zc="[object Boolean]",Hc="[object Date]",Gc="[object Error]",Vc="[object Map]",Qc="[object Number]",Kc="[object RegExp]",Jc="[object Set]",Yc="[object String]",Xc="[object Symbol]",Zc="[object ArrayBuffer]",ed="[object DataView]",ni=U?U.prototype:void 0,nn=ni?ni.valueOf:void 0;function td(e,t,n,r,i,s,o){switch(n){case ed:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case Zc:return!(e.byteLength!=t.byteLength||!s(new St(e),new St(t)));case zc:case Hc:case Qc:return ze(+e,+t);case Gc:return e.name==t.name&&e.message==t.message;case Kc:case Yc:return e==t+"";case Vc:var a=Wc;case Jc:var u=r&qc;if(a||(a=es),e.size!=t.size&&!u)return!1;var l=o.get(e);if(l)return l==t;r|=kc,o.set(e,t);var d=Zi(a(e),a(t),r,i,s,o);return o.delete(e),d;case Xc:if(nn)return nn.call(e)==nn.call(t)}return!1}var nd=1,rd=Object.prototype,id=rd.hasOwnProperty;function sd(e,t,n,r,i,s){var o=n&nd,a=an(e),u=a.length,l=an(t),d=l.length;if(u!=d&&!o)return!1;for(var f=u;f--;){var c=a[f];if(!(o?c in t:id.call(t,c)))return!1}var g=s.get(e),h=s.get(t);if(g&&h)return g==t&&h==e;var v=!0;s.set(e,t),s.set(t,e);for(var m=o;++f<u;){c=a[f];var w=e[c],F=t[c];if(r)var ae=o?r(F,w,c,t,e,s):r(w,F,c,e,t,s);if(!(ae===void 0?w===F||i(w,F,n,r,s):ae)){v=!1;break}m||(m=c=="constructor")}if(v&&!m){var x=e.constructor,M=t.constructor;x!=M&&"constructor"in e&&"constructor"in t&&!(typeof x=="function"&&x instanceof x&&typeof M=="function"&&M instanceof M)&&(v=!1)}return s.delete(e),s.delete(t),v}var od=1,ri="[object Arguments]",ii="[object Array]",ot="[object Object]",ad=Object.prototype,si=ad.hasOwnProperty;function ud(e,t,n,r,i,s){var o=L(e),a=L(t),u=o?ii:W(e),l=a?ii:W(t);u=u==ri?ot:u,l=l==ri?ot:l;var d=u==ot,f=l==ot,c=u==l;if(c&&Ue(e)){if(!Ue(t))return!1;o=!0,d=!1}if(c&&!d)return s||(s=new q),o||xn(e)?Zi(e,t,n,r,i,s):td(e,t,u,n,r,i,s);if(!(n&od)){var g=d&&si.call(e,"__wrapped__"),h=f&&si.call(t,"__wrapped__");if(g||h){var v=g?e.value():e,m=h?t.value():t;return s||(s=new q),i(v,m,n,r,s)}}return c?(s||(s=new q),sd(e,t,n,r,i,s)):!1}function Ke(e,t,n,r,i){return e===t?!0:e==null||t==null||!k(e)&&!k(t)?e!==e&&t!==t:ud(e,t,n,r,Ke,i)}var ld=1,cd=2;function dd(e,t,n,r){var i=n.length,s=i;if(e==null)return!s;for(e=Object(e);i--;){var o=n[i];if(o[2]?o[1]!==e[o[0]]:!(o[0]in e))return!1}for(;++i<s;){o=n[i];var a=o[0],u=e[a],l=o[1];if(o[2]){if(u===void 0&&!(a in e))return!1}else{var d=new q,f;if(!(f===void 0?Ke(l,u,ld|cd,r,d):f))return!1}}return!0}function ts(e){return e===e&&!Y(e)}function fd(e){for(var t=Ve(e),n=t.length;n--;){var r=t[n],i=e[r];t[n]=[r,i,ts(i)]}return t}function ns(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}function pd(e){var t=fd(e);return t.length==1&&t[0][2]?ns(t[0][0],t[0][1]):function(n){return n===e||dd(n,e,t)}}var hd="[object Symbol]";function Dt(e){return typeof e=="symbol"||k(e)&&se(e)==hd}var gd=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,md=/^\w*$/;function Ln(e,t){if(L(e))return!1;var n=typeof e;return n=="number"||n=="symbol"||n=="boolean"||e==null||Dt(e)?!0:md.test(e)||!gd.test(e)||t!=null&&e in Object(t)}var bd="Expected a function";function In(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(bd);var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],s=n.cache;if(s.has(i))return s.get(i);var o=e.apply(this,r);return n.cache=s.set(i,o)||s,o};return n.cache=new(In.Cache||ne),n}In.Cache=ne;var yd=500;function vd(e){var t=In(e,function(r){return n.size===yd&&n.clear(),r}),n=t.cache;return t}var Td=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Sd=/\\(\\)?/g,Ad=vd(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(Td,function(n,r,i,s){t.push(i?s.replace(Sd,"$1"):r||n)}),t});function Pn(e,t){for(var n=-1,r=e==null?0:e.length,i=Array(r);++n<r;)i[n]=t(e[n],n,e);return i}var wd=1/0,oi=U?U.prototype:void 0,ai=oi?oi.toString:void 0;function jn(e){if(typeof e=="string")return e;if(L(e))return Pn(e,jn)+"";if(Dt(e))return ai?ai.call(e):"";var t=e+"";return t=="0"&&1/e==-wd?"-0":t}function rs(e){return e==null?"":jn(e)}function Je(e,t){return L(e)?e:Ln(e,t)?[e]:Ad(rs(e))}var Cd=1/0;function Ee(e){if(typeof e=="string"||Dt(e))return e;var t=e+"";return t=="0"&&1/e==-Cd?"-0":t}function Rt(e,t){t=Je(t,e);for(var n=0,r=t.length;e!=null&&n<r;)e=e[Ee(t[n++])];return n&&n==r?e:void 0}function is(e,t,n){var r=e==null?void 0:Rt(e,t);return r===void 0?n:r}function xd(e,t){return e!=null&&t in Object(e)}function Ed(e,t,n){t=Je(t,e);for(var r=-1,i=t.length,s=!1;++r<i;){var o=Ee(t[r]);if(!(s=e!=null&&n(e,o)))break;e=e[o]}return s||++r!=i?s:(i=e==null?0:e.length,!!i&&Cn(i)&&_t(o,i)&&(L(e)||Be(e)))}function ss(e,t){return e!=null&&Ed(e,t,xd)}var Od=1,Nd=2;function Fd(e,t){return Ln(e)&&ts(t)?ns(Ee(e),t):function(n){var r=is(n,e);return r===void 0&&r===t?ss(n,e):Ke(t,r,Od|Nd)}}function Lt(e){return e}function _d(e){return function(t){return t==null?void 0:t[e]}}function Md(e){return function(t){return Rt(t,e)}}function Dd(e){return Ln(e)?_d(Ee(e)):Md(e)}function os(e){return typeof e=="function"?e:e==null?Lt:typeof e=="object"?L(e)?Fd(e[0],e[1]):pd(e):Dd(e)}function Rd(e,t){var n={};return t=os(t),Yi(e,function(r,i,s){He(n,i,t(r,i,s))}),n}function Ld(e){for(var t=e.length,n=5381,r=52711,i;t--;)i=e.charCodeAt(t),n=n*33^i,r=r*33^i;return(n>>>0)*4096+(r>>>0)}var qe="|",Id=/\[object ([HTML|SVG](.*)Element)\]/,Pd={"[object Arguments]":0,"[object Array]":1,"[object ArrayBuffer]":2,"[object AsyncFunction]":3,"[object AsyncGeneratorFunction]":4,"[object BigInt]":5,"[object BigInt64Array]":6,"[object BigUint64Array]":7,"[object Boolean]":8,"[object DataView]":9,"[object Date]":10,"[object DocumentFragment]":11,"[object Error]":12,"[object Event]":13,"[object Float32Array]":14,"[object Float64Array]":15,"[object Function]":16,"[object Generator]":17,"[object GeneratorFunction]":18,"[object Int8Array]":19,"[object Int16Array]":20,"[object Map]":21,"[object Number]":22,"[object Object]":23,"[object Promise]":24,"[object RegExp]":25,"[object Set]":26,"[object SharedArrayBuffer]":27,"[object String]":28,"[object Uint8Array]":29,"[object Uint8ClampedArray]":30,"[object Uint16Array]":31,"[object Uint32Array]":32,"[object WeakMap]":33,"[object WeakRef]":34,"[object WeakSet]":35,CUSTOM:36,ELEMENT:37},jd={"[object Arguments]":1,"[object Array]":2},as={"[object Generator]":1,"[object Promise]":2,"[object WeakMap]":3,"[object WeakRef]":4,"[object WeakSet]":5},$d={"[object AsyncFunction]":1,"[object AsyncGeneratorFunction]":2,"[object Boolean]":3,"[object Function]":4,"[object GeneratorFunction]":5,"[object Number]":6,"[object String]":7},Bd={"[object BigInt64Array]":1,"[object BigUint64Array]":2,"[object Float32Array]":3,"[object Float64Array]":4,"[object Int8Array]":5,"[object Int16Array]":6,"[object Uint8Array]":7,"[object Uint8ClampedArray]":8,"[object Uint16Array]":9,"[object Uint32Array]":10},Ud={"[object Arguments]":1,"[object Array]":2,"[object ArrayBuffer]":3,"[object BigInt64Array]":4,"[object BigUint64Array]":5,"[object DataView]":6,"[object Float32Array]":7,"[object Float64Array]":8,"[object Int8Array]":9,"[object Int16Array]":10,"[object Map]":11,"[object Object]":12,"[object Set]":13,"[object SharedArrayBuffer]":14,"[object Uint8Array]":15,"[object Uint8ClampedArray]":16,"[object Uint16Array]":17,"[object Uint32Array]":18,CUSTOM:19},Re={bigint:"i",boolean:"b",empty:"e",function:"g",number:"n",object:"o",string:"s",symbol:"s"};function Wd(e,t){return e[0]>t[0]}function us(e,t){return e>t}function $n(e,t){for(var n,r,i=0;i<e.length;++i){for(r=e[i],n=i-1;~n&&t(e[n],r);--n)e[n+1]=e[n];e[n+1]=r}return e}function R(e,t){return Re.object+qe+Pd[e]+qe+t}var ui=new WeakMap,qd=0;function cn(e,t){var n=ui.get(e);if(n)return n;var r=R(t,"NOT_ENUMERABLE"+qe+qd++);return ui.set(e,r),r}var kd=Object.prototype.toString;function zd(e,t,n){if(Ud[t])return li(t,e,n);if(t==="[object Date]")return R(t,e.getTime());if(t==="[object RegExp]")return R(t,e.toString());if(t==="[object Event]")return R(t,[e.bubbles,e.cancelBubble,e.cancelable,e.composed,e.currentTarget,e.defaultPrevented,e.eventPhase,e.isTrusted,e.returnValue,e.target,e.type].join());if(t==="[object Error]")return R(t,e.message+qe+e.stack);if(t==="[object DocumentFragment]")return R(t,Kd(e));var r=t.match(Id);return r?R("ELEMENT",r[1]+qe+e.outerHTML):as[t]?cn(e,t):$d[t]?R(t,e.toString()):li("CUSTOM",e,n)}function li(e,t,n){var r=n.cache.get(t);return r?R(e,"RECURSIVE~"+r):(n.cache.set(t,++n.id),e==="[object Object]"?t[Symbol.iterator]?cn(t,e):R(e,di(t,n)):jd[e]?R(e,Hd(t,n)):e==="[object Map]"?R(e,Jd(t,n)):e==="[object Set]"?R(e,Yd(t,n)):Bd[e]?R(e,t.join()):e==="[object ArrayBuffer]"?R(e,ci(t)):e==="[object DataView]"?R(e,ci(t.buffer)):as[e]?cn(t,e):R("CUSTOM",di(t,n)))}function Hd(e,t){for(var n=e.length,r=new Array(n);--n>=0;)r[n]=Ae(e[n],t);return r.join()}function Gd(e){return Buffer.from(e).toString("utf8")}function Vd(e){return String.fromCharCode.apply(null,new Uint16Array(e))}function Qd(){return"UNSUPPORTED"}function Kd(e){for(var t=e.children,n=t.length,r=new Array(n);--n>=0;)r[n]=t[n].outerHTML;return r.join()}var ci=typeof Buffer!="undefined"&&typeof Buffer.from=="function"?Gd:typeof Uint16Array=="function"?Vd:Qd;function Jd(e,t){var n=new Array(e.size),r=0;for(e.forEach(function(i,s){n[r++]=[Ae(s,t),Ae(i,t)]}),$n(n,Wd);--r>=0;)n[r]="["+n[r][0]+","+n[r][1]+"]";return"["+n.join()+"]"}function di(e,t){for(var n=$n(Object.getOwnPropertyNames(e),us),r=n.length,i=new Array(r),s=r;--s>=0;)i[s]=n[s]+":"+Ae(e[n[s]],t);return"{"+i.join()+"}"}function Yd(e,t){var n=new Array(e.size),r=0;return e.forEach(function(i){n[r++]=Ae(i,t)}),"["+$n(n,us).join()+"]"}function Ae(e,t){var n=typeof e;return e==null||n==="undefined"?Re.empty+e:n==="object"?zd(e,kd.call(e),t||{cache:new WeakMap,id:1}):n==="function"||n==="symbol"?Re[n]+e.toString():n==="boolean"?Re.boolean+ +e:Re[n]+e}function ls(e){return Ld(Ae(e,void 0))}function dn(e,t,n){(n!==void 0&&!ze(e[t],n)||n===void 0&&!(t in e))&&He(e,t,n)}function cs(e){return k(e)&&Ge(e)}var Xd="[object Object]",Zd=Function.prototype,ef=Object.prototype,ds=Zd.toString,tf=ef.hasOwnProperty,nf=ds.call(Object);function fs(e){if(!k(e)||se(e)!=Xd)return!1;var t=_n(e);if(t===null)return!0;var n=tf.call(t,"constructor")&&t.constructor;return typeof n=="function"&&n instanceof n&&ds.call(n)==nf}function fn(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}function rf(e){return xe(e,Qe(e))}function sf(e,t,n,r,i,s,o){var a=fn(e,n),u=fn(t,n),l=o.get(u);if(l){dn(e,n,l);return}var d=s?s(a,u,n+"",e,t,o):void 0,f=d===void 0;if(f){var c=L(u),g=!c&&Ue(u),h=!c&&!g&&xn(u);d=u,c||g||h?L(a)?d=a:cs(a)?d=On(a):g?(f=!1,d=Ui(u,!0)):h?(f=!1,d=zi(u,!0)):d=[]:fs(u)||Be(u)?(d=a,Be(a)?d=rf(a):(!Y(a)||Nt(a))&&(d=Gi(u))):f=!1}f&&(o.set(u,d),i(d,u,r,s,o),o.delete(u)),dn(e,n,d)}function Bn(e,t,n,r,i){e!==t&&Ji(t,function(s,o){if(i||(i=new q),Y(s))sf(e,t,o,n,Bn,r,i);else{var a=r?r(fn(e,o),s,o+"",e,t,i):void 0;a===void 0&&(a=s),dn(e,o,a)}},Qe)}function ps(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}var fi=Math.max;function hs(e,t,n){return t=fi(t===void 0?e.length-1:t,0),function(){for(var r=arguments,i=-1,s=fi(r.length-t,0),o=Array(s);++i<s;)o[i]=r[t+i];i=-1;for(var a=Array(t+1);++i<t;)a[i]=r[i];return a[t]=n(o),ps(e,this,a)}}function gs(e){return function(){return e}}var of=yt?function(e,t){return yt(e,"toString",{configurable:!0,enumerable:!1,value:gs(t),writable:!0})}:Lt,af=800,uf=16,lf=Date.now;function ms(e){var t=0,n=0;return function(){var r=lf(),i=uf-(r-n);if(n=r,i>0){if(++t>=af)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}var Un=ms(of);function bs(e,t){return Un(hs(e,t,Lt),e+"")}function ys(e,t,n){if(!Y(n))return!1;var r=typeof t;return(r=="number"?Ge(n)&&_t(t,n.length):r=="string"&&t in n)?ze(n[t],e):!1}function vs(e){return bs(function(t,n){var r=-1,i=n.length,s=i>1?n[i-1]:void 0,o=i>2?n[2]:void 0;for(s=e.length>3&&typeof s=="function"?(i--,s):void 0,o&&ys(n[0],n[1],o)&&(s=i<3?void 0:s,i=1),t=Object(t);++r<i;){var a=n[r];a&&e(t,a,r,s)}return t})}var Wn=vs(function(e,t,n){Bn(e,t,n)});function Ts(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}function Ss(e,t,n){var r=-1,i=e.length;t<0&&(t=-t>i?0:i+t),n=n>i?i:n,n<0&&(n+=i),i=t>n?0:n-t>>>0,t>>>=0;for(var s=Array(i);++r<i;)s[r]=e[r+t];return s}function cf(e,t){return t.length<2?e:Rt(e,Ss(t,0,-1))}function df(e,t){return t=Je(t,e),e=cf(e,t),e==null||delete e[Ee(Ts(t))]}function ff(e){return fs(e)?void 0:e}var pi=U?U.isConcatSpreadable:void 0;function pf(e){return L(e)||Be(e)||!!(pi&&e&&e[pi])}function As(e,t,n,r,i){var s=-1,o=e.length;for(n||(n=pf),i||(i=[]);++s<o;){var a=e[s];n(a)?Fn(i,a):r||(i[i.length]=a)}return i}function hf(e){var t=e==null?0:e.length;return t?As(e):[]}function ws(e){return Un(hs(e,void 0,hf),e+"")}var gf=1,mf=2,bf=4,Cs=ws(function(e,t){var n={};if(e==null)return n;var r=!1;t=Pn(t,function(s){return s=Je(s,e),r||(r=s.length>1),s}),xe(e,Mn(e),n),r&&(n=Te(n,gf|mf|bf,ff));for(var i=t.length;i--;)df(n,t[i]);return n});let Ye=class extends Sn{constructor(t,n){super(_i,{key:t,interpolationOptions:n},ga.t)}};class It{constructor(t,n,r,i,s){this.__serializable="DimensionalElement",this._name=t,this._title=t,this.type=n,this.description=r||"",i&&(this._dataSource=i),s&&(this.composeCode=s)}get name(){return this._name}set name(t){this._name=t}get title(){return this._title}set title(t){this._title=t}get dataSource(){return this._dataSource}serialize(){return{name:this.name,type:this.type,description:this.description,dataSource:this.dataSource,composeCode:this.composeCode,__serializable:this.__serializable}}toJSON(){return this.serialize()}toString(){return this.jaql()}}function ue(e){let t=e.replace(/[^a-zA-Z0-9_.]/g,"").replace(/\./g,"_");return t.charAt(0).match(/[0-9]/)&&(t="_"+t),t}const qn="DM",S={Sum:"sum",Average:"avg",Min:"min",Max:"max",Count:"count",CountDistinct:"countDistinct",Median:"median",Variance:"var",StandardDeviation:"stdev"};exports.Sort=void 0;(function(e){e[e.None=0]="None",e[e.Ascending=1]="Ascending",e[e.Descending=2]="Descending"})(exports.Sort=exports.Sort||(exports.Sort={}));const A={Measure:"measure",MeasureTemplate:"measuretemplate",BaseMeasure:"basemeasure",CalculatedMeasure:"calculatedmeasure",Dimension:"dimension",DateDimension:"datedimension",TextDimension:"textdimension",NumericDimension:"numericdimension",DateLevel:"datelevel",Attribute:"attribute",TextAttribute:"text-attribute",NumericAttribute:"numeric-attribute",Filter:"filter",DimensionFilter:"dimensionfilter",MeasureFilter:"measurefilter",isMetadata(e){return A.isMeasure(e)||A.isDimension(e)||A.isAttribute(e)||A.isFilter(e)},isMeasureTemplate(e){return e?typeof e=="string"?e.toLowerCase()===A.MeasureTemplate:e.agg==="*"||e.aggregation==="*"||e.type&&e.type.toLowerCase()===A.MeasureTemplate:!1},isBaseMeasure(e){return e?typeof e=="string"?e.toLowerCase()===A.BaseMeasure:(e.agg||e.aggregation)&&(e.attribute||e.jaql||e.dim||e.expression)&&!this.isMeasureTemplate(e):!1},isMeasure(e){if(!e)return!1;if(typeof e=="string"){const t=e;return t.toLowerCase()===A.Measure||t.toLowerCase()===A.BaseMeasure||t.toLowerCase()===A.MeasureTemplate||t.toLowerCase()===A.CalculatedMeasure}return this.isBaseMeasure(e)||this.isCalculatedMeasure(e)||this.isMeasureTemplate(e)},isCalculatedMeasure(e){return e?typeof e=="string"?e.toLowerCase()===A.CalculatedMeasure:(e.expression||e.formula)&&e.context:!1},isDateDimension(e){return e?typeof e=="string"?e.toLowerCase()===A.DateDimension:(e.dim||e.expression)&&e.level:!1},isTextDimension(e){return e&&typeof e=="string"?e.toLowerCase()===A.TextDimension:!1},isNumericDimension(e){return e&&typeof e=="string"?e.toLowerCase()===A.NumericDimension:!1},isDimension(e){if(e&&typeof e=="object"&&(e=e.type),typeof e=="string"){const t=e;return t.toLowerCase()===A.DateDimension||t.toLowerCase()===A.Dimension||t.toLowerCase()===A.TextDimension||t.toLowerCase()===A.NumericDimension}return!1},isAttribute(e){if(typeof e=="string"){const t=e;return t.toLowerCase()===A.Attribute||t.toLowerCase()===A.TextAttribute||t.toLowerCase()===A.NumericAttribute||t.toLowerCase()===A.DateLevel}return e&&e.type?this.isAttribute(e.type):!1},isFilter(e){if(e&&typeof e=="object"&&(e=e.type),typeof e=="string"){const t=e;return t.toLowerCase()===A.Filter||t.toLowerCase()===A.DimensionFilter||t.toLowerCase()===A.MeasureFilter}return!1}},p={Years:"Years",Quarters:"Quarters",Months:"Months",Weeks:"Weeks",Days:"Days",Hours:"Hours",MinutesRoundTo30:"MinutesRoundTo30",MinutesRoundTo15:"MinutesRoundTo15",Minutes:"Minutes",Seconds:"Seconds",AggHours:"AggHours",AggMinutesRoundTo30:"AggMinutesRoundTo30",AggMinutesRoundTo15:"AggMinutesRoundTo15",AggMinutesRoundTo1:"AggMinutesRoundTo1",get all(){return[p.Years,p.Quarters,p.Months,p.Weeks,p.Days,p.Hours,p.MinutesRoundTo30,p.MinutesRoundTo15,p.Minutes,p.Seconds,p.AggHours,p.AggMinutesRoundTo30,p.AggMinutesRoundTo15,p.AggMinutesRoundTo1]},get dateOnly(){return[p.Years,p.Quarters,p.Months,p.Weeks,p.Days]},get timeOnly(){return[p.Hours,p.MinutesRoundTo30,p.MinutesRoundTo15,p.Minutes,p.Seconds,p.AggHours,p.AggMinutesRoundTo30,p.AggMinutesRoundTo15,p.AggMinutesRoundTo1]}};var rn;(function(e){e.TEXT="text",e.NUMERIC="numeric",e.DATETIME="datetime"})(rn=rn||(rn={}));var Ie;(function(e){e.ASC="asc",e.DESC="desc"})(Ie=Ie||(Ie={}));var sn;(function(e){e.PRE="pre",e.POST="post"})(sn=sn||(sn={}));function pn(e,t=[]){try{return e==null?String(e):typeof e=="string"?`'${Oi(e)}'`:typeof e=="number"||typeof e=="boolean"?String(e):e instanceof Date?`new Date('${e.toISOString()}')`:Array.isArray(e)?`[${e.map(n=>pn(n,t)).join(", ")}]`:typeof e=="object"&&e!==null?"composeCode"in e?e.composeCode:`{ ${Object.entries(e).filter(([r])=>!t.includes(r)).map(([r,i])=>`${/[^a-zA-Z0-9_$]/.test(r)?`'${r}'`:r}: ${pn(i,t)}`).join(", ")} }`:JSON.stringify(e)}catch(n){return console.error(n,JSON.stringify(e,null,2)),JSON.stringify(e)}}function yf(e){let t=e.length;for(;t>0&&e[t-1]===void 0;)t--;return e.slice(0,t)}function Pt(e,t){return function(n){return function(...r){const i=yf(r),s=i.length,o=i.map(l=>pn(l,["guid"])).filter((l,d)=>!(["","{ }","{}","undefined","null"].includes(l)&&d===s-1)).join(", "),a=`${e}.${t!=null?t:n.name}(${o})`,u=n(...r);return u.composeCode=a,u}}}function y(e,t){return Pt("filterFactory",t)(e)}function hi(e,t){return Pt("filterFactory.logic",t)(e)}function vf(e,t){return Pt("analyticsFactory",t)(e)}function T(e,t){return Pt("measureFactory",t)(e)}const xs={StandardCompetition:"1224",ModifiedCompetition:"1334",Dense:"1223",Ordinal:"1234"},Es={Ascending:"ASC",Descending:"DESC"};function fe(e,t,n){if(typeof n=="number")e.push(n.toString());else if(n&&A.isMeasureTemplate(n.type)){n=n.sum();const r=`[${ue(n.name)}]`;e.push(r),t[r]=n}else if(n&&A.isMeasure(n.type)){const r=`[${ue(n.name)}]`;e.push(r),t[r]=n}else if(n&&A.isFilter(n.type)){const r=`[${ue(n.name)}]`;e.push(r),t[r]=n}else if(n&&A.isAttribute(n.type)){const r=`[${ue(n.name)}]`;e.push(r),t[r]=n}}function N(e,t,n,r){const i={},s=[n+"("];return fe(s,i,e),r&&s.push(`, ${r}`),s.push(")"),new J(t,s.join(""),i)}const kn=T((e,t,n)=>{const r=Object.fromEntries(Object.entries(n).map(([i,s])=>[i.startsWith("[")?i:`[${i}]`,s]));return new J(e,t,r)},"customFormula");function jt(e,t,n,r,i){const s=[],o={};i===!0&&s.push("("),fe(s,o,e),s.push(t),fe(s,o,n),i===!0&&s.push(")");const a=s.join("");return new J(r!=null?r:a,a,o)}const z=T((e,t,n,r)=>new le(n!=null?n:`${t.toString()} ${e.name}`,e,t,r),"aggregate"),Tf=T(e=>new J(`${e}`,`${e}`,{}),"constant"),At=T((e,t,n)=>z(e,S.Sum,t,n),"sum"),Os=T((e,t,n)=>z(e,S.Average,t,n),"average"),Ns=T((e,t,n)=>z(e,S.Average,t,n),"avg"),$t=T((e,t,n)=>z(e,S.Min,t,n),"min"),Bt=T((e,t,n)=>z(e,S.Max,t,n),"max"),zn=T((e,t,n)=>z(e,S.Median,t,n),"median"),Hn=T((e,t,n)=>z(e,S.Count,t,n),"count"),Ut=T((e,t,n)=>z(e,S.CountDistinct,t,n),"countDistinct"),Sf=T((e,t,n,r)=>{const i=[],s={};i.push("("),fe(i,s,e),t.forEach(a=>{i.push(","),fe(i,s,a)}),i.push(")");const o=i.join("");return new J(n!=null?n:o,o,s,r)},"measuredValue"),Af=T((e,t,n,r)=>jt(e,"+",t,n,r),"add"),wf=T((e,t,n,r)=>jt(e,"-",t,n,r),"subtract"),Cf=T((e,t,n,r)=>jt(e,"*",t,n,r),"multiply"),xf=T((e,t,n,r)=>jt(e,"/",t,n,r),"divide"),Ef=T((e,t)=>N(e,t!=null?t:"YTD "+e.name,"YTDSum"),"yearToDateSum"),Of=T((e,t)=>N(e,t!=null?t:"QTD "+t,"QTDSum"),"quarterToDateSum"),Nf=T((e,t)=>N(e,t!=null?t:"MTD "+e.name,"MTDSum"),"monthToDateSum"),Ff=T((e,t)=>N(e,t!=null?t:"MTD "+e.name,"WTDSum"),"weekToDateSum"),_f=T((e,t,n)=>N(e,n!=null?n:"Running Sum "+e.name,"RSum"),"runningSum"),Mf=T((e,t)=>N(e,t!=null?t:e.name+" Growth","growth"),"growth"),Df=T((e,t)=>N(e,t!=null?t:e.name+" Growth","growthrate"),"growthRate"),Rf=T((e,t)=>N(e,t!=null?t:e.name+" Growth","growthpastweek"),"growthPastWeek"),Lf=T((e,t)=>N(e,t!=null?t:e.name+" Growth","growthpastmonth"),"growthPastMonth"),If=T((e,t)=>N(e,t!=null?t:e.name+" Growth","growthpastquarter"),"growthPastQuarter"),Pf=T((e,t)=>N(e,t!=null?t:e.name+" Growth","growthpastyear"),"growthPastYear"),jf=T((e,t)=>N(e,t!=null?t:e.name+" Difference","diffpastperiod"),"difference"),$f=T((e,t)=>N(e,t!=null?t:e.name+" Difference","diffpastweek"),"diffPastWeek"),Bf=T((e,t)=>N(e,t!=null?t:e.name+" Difference","diffpastmonth"),"diffPastMonth"),Uf=T((e,t)=>N(e,t!=null?t:e.name+" Difference","diffpastquarter"),"diffPastQuarter"),Wf=T((e,t)=>N(e,t!=null?t:e.name+" Difference","diffpastyear"),"diffPastYear"),qf=T((e,t)=>N(e,t!=null?t:e.name+" Past Day","pastday"),"pastDay"),kf=T((e,t)=>N(e,t!=null?t:e.name+" Past Week","pastweek"),"pastWeek"),zf=T((e,t)=>N(e,t!=null?t:e.name+" Past Month","pastmonth"),"pastMonth"),Hf=T((e,t)=>N(e,t!=null?t:e.name+" Past Quarter","pastquarter"),"pastQuarter"),Gf=T((e,t)=>N(e,t!=null?t:e.name+" Past Year","pastyear"),"pastYear"),Vf=T((e,t)=>N(e,t!=null?t:e.name+" Contribution","contribution"),"contribution"),Fs=T((e,t,n)=>{let r;const i=s=>s.replace("advancedSmoothing","smooth").replace("localEstimates","local");return n&&(r=Object.entries(n).map(s=>i(`"${s[0]}=${s[1]}"`)).join(",")),N(e,t!=null?t:e.name+" Trend","trend",r)},"trend"),_s=T((e,t,n)=>{let r;if(n){const i=Object.assign({forecastHorizon:3},n);if(i.startDate){const s=new Date(i.startDate);i.startDate=s.toISOString().replace(/.\d+Z$/g,"")}if(i.endDate){const s=new Date(i.endDate);i.endDate=s.toISOString().replace(/.\d+Z$/g,"")}r=Object.entries(i).map(s=>`"${s[0]}=${s[1]}"`).join(",")}else r='"forecastHorizon=3"';return N(e,t!=null?t:e.name+" Forecast","forecast",r)},"forecast"),Qf=T((e,t,n=Es.Descending,r=xs.StandardCompetition,i=[])=>{const s=[],o={};s.push("rank("),fe(s,o,e),s.push(`,${n},${r}`),i.forEach(u=>{s.push(","),fe(s,o,u)}),s.push(")");const a=s.join("");return t||(t=`${e.name} rank`),new J(t,a,o)},"rank"),Kf=Object.freeze(Object.defineProperty({__proto__:null,RankingSortTypes:Es,RankingTypes:xs,add:Af,aggregate:z,average:Os,avg:Ns,constant:Tf,contribution:Vf,count:Hn,countDistinct:Ut,customFormula:kn,diffPastMonth:Bf,diffPastQuarter:Uf,diffPastWeek:$f,diffPastYear:Wf,difference:jf,divide:xf,forecast:_s,growth:Mf,growthPastMonth:Lf,growthPastQuarter:If,growthPastWeek:Rf,growthPastYear:Pf,growthRate:Df,max:Bt,measuredValue:Sf,median:zn,min:$t,monthToDateSum:Nf,multiply:Cf,pastDay:qf,pastMonth:zf,pastQuarter:Hf,pastWeek:kf,pastYear:Gf,quarterToDateSum:Of,rank:Qf,runningSum:_f,subtract:wf,sum:At,trend:Fs,weekToDateSum:Ff,yearToDateSum:Ef},Symbol.toStringTag,{value:"Module"}));class Gn extends It{constructor(t,n,r,i,s,o,a){super(t,n,i,o,a),this.__serializable="AbstractMeasure",this._sort=exports.Sort.None,this._format="#,#.00",this._format=r,this._sort=s||exports.Sort.None}getSort(){return this._sort}getFormat(){return this._format}serialize(){const t=super.serialize();return this.getFormat()!==void 0&&(t.format=this.getFormat()),this.getSort()!==void 0&&(t.sort=this.getSort()),t}}class le extends Gn{constructor(t,n,r,i,s,o,a,u){super(t,A.BaseMeasure,i,s,o,a,u),this.__serializable="DimensionalBaseMeasure",this.attribute=n,this.aggregation=r}static aggregationFromJAQL(t){switch(t){case"sum":return S.Sum;case"avg":return S.Average;case"min":return S.Min;case"max":return S.Max;case"countduplicates":return S.Count;case"median":return S.Median;case"count":return S.CountDistinct;case"var":return S.Variance;case"stdev":return S.StandardDeviation}return S.Sum}static aggregationToJAQL(t){switch(t){case S.Sum:return"sum";case S.Average:return"avg";case S.Min:return"min";case S.Max:return"max";case S.Count:return"countduplicates";case S.CountDistinct:return"count";case S.Median:return"median";case S.Variance:return"var";case S.StandardDeviation:return"stdev"}return S.Sum}sort(t){return new le(this.name,this.attribute,this.aggregation,this._format,this.description,t,this.dataSource,this.composeCode)}format(t){return new le(this.name,this.attribute,this.aggregation,t,this.description,this._sort,this.dataSource,this.composeCode)}get id(){return`${this.attribute.expression}_${this.aggregation}`}serialize(){const t=super.serialize();return t.aggregation=this.aggregation,t.attribute=this.attribute.serialize(),t}jaql(t){const n=this.attribute.jaql(!0),r={jaql:Object.assign(Object.assign({},n),{title:this.name,agg:le.aggregationToJAQL(this.aggregation)})};return this._format&&(r.format={number:this._format}),this._sort!=exports.Sort.None&&(r.jaql.sort=this._sort==exports.Sort.Ascending?"asc":"desc"),t===!0?r.jaql:r}}const Vn=e=>!!(e&&e.__serializable==="DimensionalBaseMeasure");class J extends Gn{constructor(t,n,r,i,s,o,a,u){super(t,A.CalculatedMeasure,i,s,o,a,u),this.__serializable="DimensionalCalculatedMeasure",this.expression=n,this.context=r}sort(t){return new J(this.name,this.expression,this.context,this._format,this.description,t,this.dataSource,this.composeCode)}format(t){return new J(this.name,this.expression,this.context,t,this.description,this._sort,this.dataSource,this.composeCode)}get id(){return this.expression}serialize(){const t=super.serialize();return t.expression=this.expression,t.context=Object.fromEntries(Object.entries(this.context).map(([n,r])=>[n,r.serialize?r.serialize():r])),t}jaql(t){const n={jaql:{title:this.name,formula:this.expression}},r={};return Object.getOwnPropertyNames(this.context).forEach(s=>r[s]=this.context[s].jaql(!0)),n.jaql.context=r,this._format&&(n.format={number:this._format}),this._sort!=exports.Sort.None&&(n.jaql.sort=this._sort==exports.Sort.Ascending?"asc":"desc"),t===!0?n.jaql:n}}const Jf=e=>!!(e&&e.__serializable==="DimensionalCalculatedMeasure");class wt extends Gn{constructor(t,n,r,i,s,o,a){super(t,A.MeasureTemplate,r,i,s,o,a),this.__serializable="DimensionalMeasureTemplate",this.attribute=n}get id(){return`${this.attribute.expression}_*`}serialize(){const t=super.serialize();return t.attribute=this.attribute.serialize(),t}sort(t){return new wt(this.name,this.attribute,this._format,this.description,t,this.dataSource,this.composeCode)}format(t){return new wt(this.name,this.attribute,t,this.description,this._sort,this.dataSource,this.composeCode)}jaql(t){return this.sum(this._format).sort(this._sort).jaql(t)}sum(t){return At(this.attribute,void 0,t).sort(this._sort)}average(t){return Os(this.attribute,void 0,t).sort(this._sort)}median(t){return zn(this.attribute,void 0,t).sort(this._sort)}min(t){return $t(this.attribute,void 0,t).sort(this._sort)}max(t){return Bt(this.attribute,void 0,t).sort(this._sort)}count(t){return Hn(this.attribute,void 0,t).sort(this._sort)}countDistinct(t){return Ut(this.attribute,void 0,t).sort(this._sort)}}const Yf=e=>!!(e&&e.__serializable==="DimensionalMeasureTemplate");function Ms(e,t){return Ke(e,t)}const Wt=()=>({guid:oo(13),disabled:!1,locked:!1}),Ds=()=>Object.assign(Object.assign({},Wt()),{excludeMembers:!1,enableMultiSelection:!0,deactivatedMembers:[]});function Xf(e){return"excludeMembers"in e}const Rs=e=>{const t=Xf(e)?Ds():Wt();return Object.fromEntries(Object.entries(e).filter(([n,r])=>!Ms(r,t[n])))},X={Contains:"contains",StartsWith:"startsWith",EndsWith:"endsWith",Equals:"equals",DoesntEqual:"doesntEqual",DoesntStartWith:"doesntStartWith",DoesntContain:"doesntContain",DoesntEndWith:"doesntEndWith",Like:"like"},_={Equals:"equals",DoesntEqual:"doesntEqual",From:"from",FromNotEqual:"fromNotEqual",To:"to",ToNotEqual:"toNotEqual"},we={From:"from",To:"to",Last:"last",Next:"next",Anchor:"Anchor"},Ls={Union:"or",Intersection:"and",Exclude:"exclude"},Xe={Top:"top",Bottom:"bottom"},$={logicalAttribute:"logicalAttribute",members:"members",exclude:"exclude",measure:"measure",ranking:"ranking",measureRanking:"measure-ranking",text:"text",numeric:"numeric",dateRange:"dateRange",relativeDate:"relativeDate",cascading:"cascading",advanced:"advanced"};class P extends It{constructor(t,n,r,i){super("filter",A.Filter,void 0,void 0,i),this.__serializable="AbstractFilter",this.filterType=n,this.isScope=!0,P.checkAttributeSupport(t),this.attribute=t,this.config=Wn({},Wt(),r!=null?r:{})}get name(){return ls(this.jaql()).toString(16)}serialize(){const t=super.serialize();return t.filterType=this.filterType,t.attribute=this.attribute.serialize(),this.config&&(t.config=this.config),t.composeCode=this.composeCode,t}jaql(t){if(this.config.disabled)return P.disabledJaql(t);const n=this.attribute.jaql(!1),r=this.attribute;if(r.getFormat&&r.getFormat()!==void 0){const i=r.translateGranularityToJaql();n.format={mask:{[i.level]:r.getFormat()}}}return n.jaql.filter=this.filterJaql(),this.attribute.dataSource&&(n.jaql.datasource=this.attribute.dataSource),this.isScope&&(n.panel="scope"),t===!0?n.jaql:n}static checkAttributeSupport(t){const{granularity:n}=t;if(n===p.Hours||n===p.MinutesRoundTo30||n===p.MinutesRoundTo15||n===p.Minutes||n===p.Seconds)throw new Ye("errors.filter.unsupportedDatetimeLevel")}static disabledJaql(t){return t?{filter:{}}:{jaql:{filter:{}}}}}class Qn extends P{constructor(t,n,r,i){super(t[0].attribute,$.logicalAttribute,r,i),this.__serializable="LogicalAttributeFilter",this.operator=n,this.filters=t}get id(){return`${this.operator}_${this.filters.map(t=>t.id).join()}`}serialize(){const t=super.serialize();return t.operator=this.operator,t.filters=this.filters.map(n=>n.serialize()),t}filterJaql(){const t={};return t[this.operator]=this.filters.map(n=>n.filterJaql()),t}}class Is extends P{constructor(t,n,r,i){if(super(t,$.members,void 0,i),this.__serializable="MembersFilter",this.members=n!=null?n:[],this.members.filter(s=>s==null).length>0)throw new Ye("errors.filter.membersFilterNullMember",{attributeId:t.id});this.config=Wn({},Ds(),r!=null?r:{})}get id(){return`${this.attribute.id}_${this.members.map(t=>t.toString()).join()}`}get name(){return ls([this.jaql(),Cs(this.config,["guid","originalFilterJaql"])]).toString(16)}serialize(){const t=super.serialize();return this.config&&(t.config=this.config.backgroundFilter?Object.assign(Object.assign({},this.config),{backgroundFilter:this.config.backgroundFilter.serialize()}):this.config),t.members=this.members,t}filterJaql(){const t={members:this.members.map(r=>r.toString())},n=this.config.excludeMembers?{exclude:t}:t;return this.config.backgroundFilter?{and:[n,this.config.backgroundFilter.filterJaql()]}:n}}class Ps extends P{constructor(t,n,r){super(t[0].attribute,$.cascading,n,r),this.__serializable="CascadingFilter",this._filters=t}get filters(){const{disabled:t,locked:n}=this.config;return this._filters.map(r=>(r.config=Object.assign(Object.assign({},r.config),{disabled:t,locked:n}),r))}get id(){return`${this.filterType}_${this._filters.map(t=>t.id).join()}`}serialize(){const t=super.serialize();return t._filters=this.filters.map(n=>n.serialize()),t}filterJaql(){return{}}jaql(t){return this.config.disabled?P.disabledJaql(t):this.filters.map(n=>(n.isScope=!0,n.jaql(t)))}}class js extends P{constructor(t,n,r,i){super(t.attribute,$.exclude,r,i),this.__serializable="ExcludeFilter",this.input=n,this.filter=t}get id(){let t=`exclude_${this.filter.id}`;return this.input&&(t+="_from_"+this.input.id),t}serialize(){const t=super.serialize();return t.filter=this.filter.serialize(),this.input&&(t.input=this.input.serialize()),t}filterJaql(){const t={},n=this.filter.filterJaql();return this.input?(t.filter=this.input.filterJaql(),t.filter.filter={exclude:n}):t.exclude=n,t}}class qt extends P{constructor(t,n,r,i,s,o,a,u){super(t,n,a,u),this.__serializable="DoubleOperatorFilter",r&&i!==void 0&&(this.valueA=i,this.operatorA=r),s&&o!==void 0&&(this.operatorB=s,this.valueB=o)}get id(){let t=`${this.attribute.id}`;return this.operatorA&&this.valueA!==void 0&&(t+=`_${this.operatorA}:${this.valueA}`),this.operatorB&&this.valueB!==void 0&&(t+=`_${this.operatorB}:${this.valueB}`),t}serialize(){const t=super.serialize();return this.operatorA&&(t.operatorA=this.operatorA),this.operatorB&&(t.operatorB=this.operatorB),this.valueA!==void 0&&(t.valueA=this.valueA),this.valueB!==void 0&&(t.valueB=this.valueB),t}filterJaql(){const t={};return this.operatorA&&this.valueA!==void 0&&(t[this.operatorA]=this.valueA),this.operatorB&&this.valueB!==void 0&&(t[this.operatorB]=this.valueB),t}}class $s extends qt{constructor(t,n,r,i,s,o,a,u){super(t,$.measure,r,i,s,o,a,u),this.__serializable="MeasureFilter",this.measure=n}get id(){let t=`${this.attribute.id}_${this.measure.id}`;return this.operatorA&&this.valueA!==void 0&&(t+=`_${this.operatorA}:${this.valueA}`),this.operatorB&&this.valueB!==void 0&&(t+=`_${this.operatorB}${this.valueB}`),t}serialize(){const t=super.serialize();return t.measure=this.measure.serialize(),t}jaql(t){if(this.config.disabled)return P.disabledJaql(t);const n=super.jaql(t);return Vn(this.measure)&&Object.entries(this.measure.jaql().jaql).forEach(([r,i])=>{n.jaql[r]=i}),n}}class Kn extends P{constructor(t,n,r,i,s,o){super(t,$.ranking,s,o),this.__serializable="RankingFilter",this.count=i,this.operator=r,this.measure=n}get id(){return`${this.operator}_${this.count}_${this.attribute.id}_by_${this.measure.id}`}serialize(){const t=super.serialize();return t.count=this.count,t.operator=this.operator,t.measure=this.measure.serialize(),t}filterJaql(){const t={};return t[this.operator]=this.count,t.by=this.measure.jaql(!0),t}}class Jn extends P{constructor(t,n,r,i,s){super(t.attribute,$.measureRanking,i,s),this.__serializable="MeasureRankingFilter",this.count=r,this.operator=n,this.measure=t}get id(){return`${this.operator}_${this.count}_measure_${this.measure.id}`}serialize(){const t=super.serialize();return t.measure=this.measure.serialize(),t.count=this.count,t.operator=this.operator,t}filterJaql(){const t={};return t[this.operator]=this.count,t}jaql(t){if(this.config.disabled)return P.disabledJaql(t);const n=super.jaql(t);return Vn(this.measure)&&Object.entries(this.measure.jaql().jaql).forEach(([r,i])=>{n.jaql[r]=i}),n.jaql.type="measure",n}}class Bs extends qt{constructor(t,n,r,i,s,o,a){super(t,$.numeric,n,r,i,s,o,a),this.__serializable="NumericFilter"}serialize(){return super.serialize()}}class Z extends qt{constructor(t,n,r,i,s){super(t,$.text,n,r,void 0,void 0,i,s),this.__serializable="TextFilter"}serialize(){return super.serialize()}}class Us extends qt{constructor(t,n,r,i,s){super(t,$.dateRange,we.From,n,we.To,r,i,s),this.__serializable="DateRangeFilter",typeof n=="object"&&(this.valueA=n.toISOString()),typeof r=="object"&&(this.valueB=r.toISOString())}get level(){return this.attribute}get from(){return this.valueA}get to(){return this.valueB}filterJaql(){return super.filterJaql()}serialize(){return super.serialize()}}class kt extends P{constructor(t,n,r,i,s,o,a){super(t,$.relativeDate,o,a),this.__serializable="RelativeDateFilter",i||(i=we.Next),this.anchor=s,this.operator=i,this.offset=n,this.count=r}get level(){return this.attribute}get id(){let t=`${this.level.id}_${this.operator}_${this.offset}_${this.count}`;return this.anchor&&(typeof this.anchor=="string"?t+=`_${this.anchor}`:typeof this.anchor=="object"&&(t+=`_${this.anchor.toISOString()}`)),t}serialize(){const t=super.serialize();return t.offset=this.offset,t.count=this.count,t.operator=this.operator,this.anchor&&(t.anchor=typeof this.anchor=="string"?this.anchor:this.anchor.toISOString()),t}filterJaql(){const t={};return t[this.operator]={offset:this.offset,count:this.count},this.anchor&&(typeof this.anchor=="string"?t[this.operator].anchor=this.anchor:typeof this.anchor=="object"&&(t[this.operator].anchor=this.anchor.toISOString())),t}}class Ws extends P{constructor(t,n,r,i){super(t,$.advanced,r,i),this.__serializable="CustomFilter",delete n.filterType,this.jaqlExpression=n}get id(){return`custom_${this.attribute.id}_${this.config.guid}`}filterJaql(){return this.jaqlExpression}serialize(){const t=super.serialize();return t.jaqlExpression=this.jaqlExpression,t}}function Zf(e){return e&&e.__serializable==="CustomFilter"}function ep(e){return e&&e.__serializable==="MembersFilter"}function tp(e){return e&&e.__serializable==="NumericFilter"}function np(e){return e&&e.__serializable==="RankingFilter"}function rp(e){return e&&e.__serializable==="MeasureRankingFilter"}function ip(e){return e&&e.__serializable==="MeasureFilter"}function sp(e){return e&&e.__serializable==="ExcludeFilter"}function op(e){return e&&e.__serializable==="LogicalAttributeFilter"}function Ze(e){return e&&e.__serializable==="CascadingFilter"}function ap(e){return e&&e.__serializable==="RelativeDateFilter"}function up(e){return e&&e.__serializable==="TextFilter"}function lp(e){return e&&e.__serializable==="DateRangeFilter"}const qs=y((e,t)=>new Qn(e,Ls.Union,t),"union"),ks=y((e,t)=>new Qn(e,Ls.Intersection,t),"intersection"),zt=y((e,t,n)=>new js(e,t,n),"exclude"),Yn=y((e,t,n)=>new Z(e,X.DoesntContain,t,n),"doesntContain"),Xn=y((e,t,n)=>new Z(e,X.DoesntEndWith,t,n),"doesntEndWith"),Zn=y((e,t,n)=>new Z(e,X.DoesntStartWith,t,n),"doesntStartWith"),er=y((e,t,n)=>new Z(e,X.Contains,t,n),"contains"),tr=y((e,t,n)=>new Z(e,X.EndsWith,t,n),"endsWith"),nr=y((e,t,n)=>new Z(e,X.StartsWith,t,n),"startsWith"),zs=y((e,t,n)=>new Z(e,X.Like,t,n),"like"),rr=y((e,t,n)=>typeof t=="string"?new Z(e,X.DoesntEqual,t,n):re(e,_.DoesntEqual,t,void 0,void 0,n),"doesntEqual"),ir=y((e,t,n)=>typeof t=="string"?new Z(e,X.Equals,t,n):re(e,_.Equals,t,void 0,void 0,n),"equals"),sr=y((e,t,n)=>re(e,_.FromNotEqual,t,void 0,void 0,n),"greaterThan"),or=y((e,t,n)=>re(e,_.From,t,void 0,void 0,n),"greaterThanOrEqual"),ar=y((e,t,n)=>re(e,_.ToNotEqual,t,void 0,void 0,n),"lessThan"),ur=y((e,t,n)=>re(e,_.To,t,void 0,void 0,n),"lessThanOrEqual"),ke=y((e,t,n,r)=>re(e,_.From,t,_.To,n,r),"between"),cp=y((e,t,n,r)=>re(e,_.FromNotEqual,t,_.ToNotEqual,n,r),"betweenNotEqual"),re=y((e,t,n,r,i,s)=>new Bs(e,t,n,r,i,s),"numeric"),et=y((e,t,n)=>new Is(e,t,n),"members"),dp=y((e,t,n)=>tt(e,t,void 0,n),"dateFrom"),fp=y((e,t,n)=>tt(e,void 0,t,n),"dateTo"),tt=y((e,t,n,r)=>new Us(e,t,n,r),"dateRange"),Hs=y((e,t,n,r,i)=>new kt(e,t,n,void 0,r,i),"dateRelative"),lr=y((e,t,n,r,i)=>new kt(e,t,n,we.Next,r,i),"dateRelativeFrom"),ge=y((e,t,n,r,i)=>new kt(e,t,n,we.Last,r,i),"dateRelativeTo"),pp=y((e,t)=>ge(e.Years,0,1,void 0,t),"thisYear"),hp=y((e,t)=>ge(e.Months,0,1,void 0,t),"thisMonth"),gp=y((e,t)=>ge(e.Quarters,0,1,void 0,t),"thisQuarter"),mp=y((e,t)=>ge(e.Days,0,1,void 0,t),"today");function oe(e,t,n,r,i,s,o){return new $s(e,t,n,r,i,s,o)}const Gs=y((e,t,n)=>oe(e.attribute,e,_.Equals,t,void 0,void 0,n),"measureEquals"),Vs=y((e,t,n)=>oe(e.attribute,e,_.FromNotEqual,t,void 0,void 0,n),"measureGreaterThan"),Qs=y((e,t,n)=>oe(e.attribute,e,_.From,t,void 0,void 0,n),"measureGreaterThanOrEqual"),Ks=y((e,t,n)=>oe(e.attribute,e,_.To,t,void 0,void 0,n),"measureLessThanOrEqual"),Js=y((e,t,n)=>oe(e.attribute,e,_.ToNotEqual,t,void 0,void 0,n),"measureLessThan"),hn=y((e,t,n,r)=>oe(e.attribute,e,_.From,t,_.To,n,r),"measureBetween"),bp=y((e,t,n,r)=>oe(e.attribute,e,_.FromNotEqual,t,_.ToNotEqual,n,r),"measureBetweenNotEqual"),cr=y((e,t,n,r)=>new Kn(e,t,Xe.Top,n,r),"topRanking"),dr=y((e,t,n,r)=>new Kn(e,t,Xe.Bottom,n,r),"bottomRanking"),Ys=y((e,t,n)=>new Jn(e,Xe.Top,t,n),"measureTopRanking"),Xs=y((e,t,n)=>new Jn(e,Xe.Bottom,t,n),"measureBottomRanking"),Zs=y((e,t)=>new Ps(e,t),"cascading");exports.logic=void 0;(function(e){const t=n=>{if(Array.isArray(n)){const[r,...i]=n;return i.length===0?t(r):{operator:"AND",left:t(r),right:t(i)}}return n};e.and=hi((n,r)=>({operator:"AND",left:t(n),right:t(r)}),"and"),e.or=hi((n,r)=>({operator:"OR",left:t(n),right:t(r)}),"or")})(exports.logic=exports.logic||(exports.logic={}));const eo=y((e,t,n)=>new Ws(e,t,n),"customFilter"),yp=Object.freeze(Object.defineProperty({__proto__:null,between:ke,betweenNotEqual:cp,bottomRanking:dr,cascading:Zs,contains:er,customFilter:eo,dateFrom:dp,dateRange:tt,dateRelative:Hs,dateRelativeFrom:lr,dateRelativeTo:ge,dateTo:fp,doesntContain:Yn,doesntEndWith:Xn,doesntEqual:rr,doesntStartWith:Zn,endsWith:tr,equals:ir,exclude:zt,greaterThan:sr,greaterThanOrEqual:or,intersection:ks,lessThan:ar,lessThanOrEqual:ur,like:zs,get logic(){return exports.logic},measureBase:oe,measureBetween:hn,measureBetweenNotEqual:bp,measureBottomRanking:Xs,measureEquals:Gs,measureGreaterThan:Vs,measureGreaterThanOrEqual:Qs,measureLessThan:Js,measureLessThanOrEqual:Ks,measureTopRanking:Ys,members:et,numeric:re,startsWith:nr,thisMonth:hp,thisQuarter:gp,thisYear:pp,today:mp,topRanking:cr,union:qs},Symbol.toStringTag,{value:"Module"})),vp=e=>{const{dim:t,datatype:n,title:r,datasource:i}=e;return Vt({expression:t,dataType:n,granularity:Ce(e),title:r,dataSource:i})},Tp=e=>{const{dim:t,title:n,datatype:r,agg:i,datasource:s}=e;if(i)return Qt({expression:t,dataType:r,agg:i,granularity:Ce(e),format:void 0,sort:void 0,title:n,dataSource:s})},gi=(e,t)=>{if("formula"in e)return gr(e);const{dim:n,datatype:r,agg:i}=e;return Qt({expression:n,granularity:Ce(e),dataType:r,agg:i,format:void 0,sort:void 0,title:t})};var lt;(function(e){e.INCLUDE_ALL="INCLUDE_ALL",e.ADVANCED="ADVANCED",e.INVALID="INVALID",e.CONDITION="CONDITION",e.SPECIFIC_ITEMS="SPECIFIC_ITEMS"})(lt=lt||(lt={}));var ct;(function(e){e.PERIOD="PERIOD",e.DATE_RANGE="DATE_RANGE"})(ct=ct||(ct={}));var dt;(function(e){e.NUMERIC_RANGE="NUMERIC_RANGE"})(dt=dt||(dt={}));var ie;(function(e){e.YEARS="years",e.QUARTERS="quarters",e.MONTHS="months",e.WEEKS="weeks",e.DAYS="days",e.HOURS="hours",e.MINUTES="minutes"})(ie=ie||(ie={}));var Se;(function(e){e.DATE_TIME="datetime",e.NUMERIC="numeric",e.TEXT="text"})(Se=Se||(Se={}));const Sp=["1","30"],C=Object.assign(Object.assign(Object.assign({},lt),ct),dt),Ap={[C.INCLUDE_ALL]:{all:!0,filterType:C.INCLUDE_ALL},[C.PERIOD]:{last:{count:1,offset:1},isNotCurrentPeriod:!0,filterType:C.PERIOD},[C.DATE_RANGE]:{filterType:C.DATE_RANGE},[C.NUMERIC_RANGE]:{filterType:C.NUMERIC_RANGE},[C.CONDITION]:{explicit:!1,multiSelection:!0,exclude:{members:[]},filterType:C.CONDITION},[C.SPECIFIC_ITEMS]:{explicit:!0,multiSelection:!0,members:[],filterType:C.SPECIFIC_ITEMS}},wp={filter:Ap.INCLUDE_ALL,level:ie.YEARS};exports.ConditionFilterType=void 0;(function(e){e.IS="members",e.IS_NOT="exclude",e.IS_WITHIN="isWithin",e.TOP="top",e.BOTTOM="bottom",e.AFTER="after",e.BEFORE="before",e.STARTS_WITH="startsWith",e.DOESNT_START_WITH="doesntStartWith",e.ENDS_WITH="endsWith",e.DOESNT_END_WITH="doesntEndWith",e.CONTAINS="contains",e.DOESNT_CONTAIN="doesntContain",e.EQUALS="equals",e.DOESNT_EQUAL="doesntEqual",e.IS_EMPTY="isEmpty",e.IS_NOT_EMPTY="isNotEmpty",e.GREATER_THAN="fromNotEqual",e.GREATER_THAN_OR_EQUAL="from",e.LESS_THAN="toNotEqual",e.LESS_THAN_OR_EQUAL="to",e.BETWEEN="between",e.IS_NOT_BETWEEN="isNotBetween",e.MULTIPLE_CONDITION="multipleCondition",e.NONE="none"})(exports.ConditionFilterType=exports.ConditionFilterType||(exports.ConditionFilterType={}));const Cp=e=>e.top!==void 0,xp=e=>e.bottom!==void 0,Ep=e=>{var t;return!!(!((t=e.exclude)===null||t===void 0)&&t.members)},Op=e=>!!e.members&&!!e.isCondition,Np=e=>{var t,n;return((t=e.last)===null||t===void 0?void 0:t.anchor)!==void 0||((n=e.next)===null||n===void 0?void 0:n.anchor)!==void 0},Fp=e=>e.fromNotEqual!==void 0,_p=e=>e.from!==void 0&&!e.isBetween,Mp=e=>e.toNotEqual!==void 0,Dp=e=>e.to!==void 0&&!e.isBetween,Rp=e=>e.equals!==void 0,Lp=e=>e.doesntEqual!==void 0,Ip=e=>!!(e.equals===""&&e.isEmpty),Pp=e=>!!(e.doesntEqual===""&&e.isEmpty),jp=e=>e.contains!==void 0,$p=e=>e.doesntContain!==void 0,Bp=e=>e.startsWith!==void 0,Up=e=>e.doesntStartWith!==void 0,Wp=e=>e.endsWith!==void 0,qp=e=>e.doesntEndWith!==void 0,kp=e=>e.from!==void 0&&e.to!==void 0,zp=e=>{var t,n;return((t=e.exclude)===null||t===void 0?void 0:t.from)!==void 0&&((n=e.exclude)===null||n===void 0?void 0:n.to)!==void 0},Hp=e=>!!(e.or||e.and),Ht=e=>xp(e)?exports.ConditionFilterType.BOTTOM:Cp(e)?exports.ConditionFilterType.TOP:Ep(e)?exports.ConditionFilterType.IS_NOT:Np(e)?exports.ConditionFilterType.IS_WITHIN:Fp(e)?exports.ConditionFilterType.GREATER_THAN:Mp(e)?exports.ConditionFilterType.LESS_THAN:Rp(e)?exports.ConditionFilterType.EQUALS:Lp(e)?exports.ConditionFilterType.DOESNT_EQUAL:Ip(e)?exports.ConditionFilterType.IS_EMPTY:Pp(e)?exports.ConditionFilterType.IS_NOT_EMPTY:jp(e)?exports.ConditionFilterType.CONTAINS:$p(e)?exports.ConditionFilterType.DOESNT_CONTAIN:qp(e)?exports.ConditionFilterType.DOESNT_END_WITH:Up(e)?exports.ConditionFilterType.DOESNT_START_WITH:Wp(e)?exports.ConditionFilterType.ENDS_WITH:Bp(e)?exports.ConditionFilterType.STARTS_WITH:zp(e)?exports.ConditionFilterType.IS_NOT_BETWEEN:Op(e)?exports.ConditionFilterType.IS:Hp(e)?exports.ConditionFilterType.MULTIPLE_CONDITION:kp(e)?exports.ConditionFilterType.BETWEEN:_p(e)?exports.ConditionFilterType.GREATER_THAN_OR_EQUAL:Dp(e)?exports.ConditionFilterType.LESS_THAN_OR_EQUAL:exports.ConditionFilterType.NONE,gn=(e,t,n)=>{var r,i,s,o,a,u,l;switch(Ht(t)){case exports.ConditionFilterType.BOTTOM:if(t.by)return dr(e,gi(t.by,t.rankingMessage),t[exports.ConditionFilterType.BOTTOM],{guid:n});break;case exports.ConditionFilterType.EQUALS:return ir(e,t[exports.ConditionFilterType.EQUALS],{guid:n});case exports.ConditionFilterType.DOESNT_EQUAL:return rr(e,t[exports.ConditionFilterType.DOESNT_EQUAL],{guid:n});case exports.ConditionFilterType.GREATER_THAN:return sr(e,t[exports.ConditionFilterType.GREATER_THAN],{guid:n});case exports.ConditionFilterType.GREATER_THAN_OR_EQUAL:return or(e,t[exports.ConditionFilterType.GREATER_THAN_OR_EQUAL],{guid:n});case exports.ConditionFilterType.TOP:if(t.by)return cr(e,gi(t.by,t.rankingMessage),t[exports.ConditionFilterType.TOP],{guid:n});break;case exports.ConditionFilterType.STARTS_WITH:return nr(e,t[exports.ConditionFilterType.STARTS_WITH],{guid:n});case exports.ConditionFilterType.DOESNT_START_WITH:return Zn(e,t[exports.ConditionFilterType.DOESNT_START_WITH],{guid:n});case exports.ConditionFilterType.ENDS_WITH:return tr(e,t[exports.ConditionFilterType.ENDS_WITH],{guid:n});case exports.ConditionFilterType.DOESNT_END_WITH:return Xn(e,t[exports.ConditionFilterType.DOESNT_END_WITH],{guid:n});case exports.ConditionFilterType.CONTAINS:return er(e,t[exports.ConditionFilterType.CONTAINS],{guid:n});case exports.ConditionFilterType.DOESNT_CONTAIN:return Yn(e,t[exports.ConditionFilterType.DOESNT_CONTAIN],{guid:n});case exports.ConditionFilterType.LESS_THAN:return ar(e,t[exports.ConditionFilterType.LESS_THAN],{guid:n});case exports.ConditionFilterType.LESS_THAN_OR_EQUAL:return ur(e,t[exports.ConditionFilterType.LESS_THAN_OR_EQUAL],{guid:n});case exports.ConditionFilterType.BETWEEN:return ke(e,t.from,t.to,{guid:n});case exports.ConditionFilterType.IS_NOT_BETWEEN:return zt(ke(e,(r=t.exclude)===null||r===void 0?void 0:r.from,(i=t.exclude)===null||i===void 0?void 0:i.to,{guid:n}),void 0,{guid:n});case exports.ConditionFilterType.MULTIPLE_CONDITION:if(t.and)return ks(t.and.map(f=>gn(e,f,n)),{guid:n});if(t.or)return qs(t.or.map(f=>gn(e,f,n)),{guid:n});break;case exports.ConditionFilterType.IS_NOT:{const f=((s=t.filter)===null||s===void 0?void 0:s.turnedOff)&&((o=t.filter.exclude)===null||o===void 0?void 0:o.members)||[],c=((u=(a=t.exclude)===null||a===void 0?void 0:a.members)===null||u===void 0?void 0:u.filter(h=>!f.includes(h)))||[],g=Rs({guid:n,excludeMembers:!0,enableMultiSelection:(l=t.multiSelection)!==null&&l!==void 0?l:!0,deactivatedMembers:f});return et(e,c,g)}}throw new Ye("errors.filter.unsupportedConditionFilter",{filter:JSON.stringify(t)})},Gp=(e,t,n)=>{var r,i;switch(Ht(t)){case exports.ConditionFilterType.EQUALS:return Gs(e,t[exports.ConditionFilterType.EQUALS],{guid:n});case exports.ConditionFilterType.GREATER_THAN:return Vs(e,t[exports.ConditionFilterType.GREATER_THAN],{guid:n});case exports.ConditionFilterType.GREATER_THAN_OR_EQUAL:return Qs(e,t[exports.ConditionFilterType.GREATER_THAN_OR_EQUAL],{guid:n});case exports.ConditionFilterType.LESS_THAN:return Js(e,t[exports.ConditionFilterType.LESS_THAN],{guid:n});case exports.ConditionFilterType.LESS_THAN_OR_EQUAL:return Ks(e,t[exports.ConditionFilterType.LESS_THAN_OR_EQUAL],{guid:n});case exports.ConditionFilterType.BETWEEN:return hn(e,t.from,t.to,{guid:n});case exports.ConditionFilterType.IS_NOT_BETWEEN:return zt(hn(e,(r=t.exclude)===null||r===void 0?void 0:r.from,(i=t.exclude)===null||i===void 0?void 0:i.to,{guid:n}),void 0,{guid:n});case exports.ConditionFilterType.TOP:return Ys(e,t[exports.ConditionFilterType.TOP],{guid:n});case exports.ConditionFilterType.BOTTOM:return Xs(e,t[exports.ConditionFilterType.BOTTOM],{guid:n})}throw new Ye("errors.filter.unsupportedConditionFilter",{filter:JSON.stringify(t)})},Vp=(e,t)=>{let n=e?e.toLocaleLowerCase():ie.YEARS;return n===ie.MINUTES&&t==="60"&&(n=ie.HOURS),n},Qp=e=>e==null?void 0:e.all,Kp=e=>e.last?e.last:e.next,Jp=e=>{var t;return((t=Kp(e))===null||t===void 0?void 0:t.offset)<2},to=e=>{var t;return((t=e==null?void 0:e.members)===null||t===void 0?void 0:t.length)>=0},Yp=(e,t)=>e&&typeof e=="string"||t&&typeof t=="string",Xp=(e,t)=>e===""&&t==="",Zp=(e,t)=>{const{from:n,to:r}=e;return t!==Se.DATE_TIME?!1:Yp(n,r)?!0:Xp(n,r)},eh=e=>{const{from:t,to:n}=e;return t!==void 0&&n!==void 0&&!e.isBetween},no=e=>Ht(e)!==exports.ConditionFilterType.NONE,th=e=>Object.keys(e).includes("isAdvanced"),nh=e=>!!(e.level&&e.bucket&&e.level===ie.MINUTES&&Sp.includes(e.bucket)),rh=e=>e.filterType===C.INVALID,mi=(e,t=Se.DATE_TIME,n)=>n&&nh(n)||th(e)?C.ADVANCED:Qp(e)?C.INCLUDE_ALL:Jp(e)?C.PERIOD:to(e)?C.SPECIFIC_ITEMS:Zp(e,t)?C.DATE_RANGE:eh(e)?C.NUMERIC_RANGE:no(e)?C.CONDITION:(rh(e),C.INVALID),ih=(e,t)=>{const{level:n,filter:r,bucket:i}=e,s=r||wp.filter,o={filter:Object.assign(Object.assign({},s),{filterType:mi(s,t)})};if(t===Se.DATE_TIME){const a=s,u=(a==null?void 0:a.level)||n;o.level=Vp(u,i),o.filter.filterType=mi(s,t,{level:u,bucket:i})}return o},bi=(e,t)=>{const n={config:Object.assign(Object.assign({},Wt()),{guid:t,originalFilterJaql:e}),jaql:r=>r?e:{jaql:e,panel:"scope"},attribute:{id:e.dim},type:"filter"};return Object.assign({},n)},sh=(e,t)=>et(e,[],{guid:t}),oh=(e,t,n,r)=>{const i=ah(t),s=uh(t,i),o=Rs({guid:n,excludeMembers:!1,enableMultiSelection:r!=null?r:!0,deactivatedMembers:i});return et(e,s,o)};function ah(e){var t,n,r,i;return!((t=e.filter)===null||t===void 0)&&t.turnedOff?(i=(r=(n=e.filter)===null||n===void 0?void 0:n.exclude)===null||r===void 0?void 0:r.members)!==null&&i!==void 0?i:[]:[]}function uh(e,t){const n=e.members;return t?n.filter(r=>!t.includes(r)):n}const lh=(e,t,n)=>tt(e,t.from,t.to,{guid:n}),ch=(e,t,n)=>ke(e,t.from,t.to,{guid:n}),dh=(e,t,n)=>t.last?ge(e,t.last.offset,t.last.count,t.last.anchor,{guid:n}):lr(e,t.next.offset,t.next.count,t.next.anchor,{guid:n}),fh=(e,t,n)=>eo(e,t,{guid:n}),yi=(e,t)=>{try{if("formula"in e)throw new Ye("errors.filter.formulaFiltersNotSupported",{filter:JSON.stringify(e)});const n=ih(e,e.datatype),{filter:r}=n,{filterType:i}=r,s=vp(e),o=Tp(e);switch(i){case C.INCLUDE_ALL:return sh(s,t);case C.SPECIFIC_ITEMS:return oh(s,r,t,r.multiSelection);case C.CONDITION:return o?Gp(o,r,t):gn(s,r,t);case C.DATE_RANGE:return lh(s,r,t);case C.PERIOD:return dh(s,r,t);case C.NUMERIC_RANGE:return ch(s,r,t);case C.ADVANCED:return fh(s,r,t);case C.INVALID:return bi(e,t)}}catch(n){console.debug("Fall back to generic pass-through JAQL filter due to filter translation error:",n)}return bi(e,t)},ph=e=>["__int4","__int8","int","tinyint","bigint","int2","int4","int8","smallint","mediumint","serial","integer","byteint","int64"].includes(e.toLowerCase()),hh=e=>["basemeasure","calculatedmeasure","float","float4","float8","double precision","double","numeric","decimal","real","number","float64"].includes(e.toLowerCase()),fr=e=>ph(e)||hh(e)||e==="numeric-attribute",ro=e=>["textdimension","string","varchar","text","ntext","char","character","character varying","smalltext","nchar","nvarchar","json","jsonb","object","text-attribute"].includes(e.toLowerCase()),Gt=e=>["datelevel","date","time","datetime","timestamp without time zone","timestamp","timestamp with time zone","timestamp(6)","timestamp_tz","timestamp_ntz","timestamp_ltz","timestampltz","timestampntz","timestamptz","datetime64[ns]","timewithtimezone","timestampwithtimezone","timestamp_with_timezone"].includes(e.toLowerCase()),io=e=>["bool","boolean","bit","logical"].includes(e.toLowerCase()),so=e=>fr(e)?"number":Gt(e)?"datetime":ro(e)?"text":io(e)?"boolean":"text";function gh(){const e=new Uint32Array(1);return crypto.getRandomValues(e),e[0]/4294967296}const oo=function(e){e||(e=20);const t="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),n=new Array(e);let r=0,i;for(let s=0;s<e;s+=1){if(s>0&&s%5==0){n[s]="-";continue}r<=2&&(r=33554432+gh()*16777216|0),i=r&15,r=r>>4,n[s]=t[s==19?i&3|8:i]}return n.join("")},mh=e=>{if(!e)return{filters:void 0,relations:void 0};if(Array.isArray(e))return{filters:e,relations:void 0};const t=new Set;function n(o){const[a,...u]=o;if(t.add(a),!u.length)return r({instanceid:a.config.guid});const l=r(a),d=n(u);return{left:l,right:d,operator:"AND"}}function r(o){return o&&(bh(o)?Ze(o)?n(o.filters):(t.add(o),{instanceid:o.config.guid}):("left"in o&&(o.left=r(o.left)),"right"in o&&(o.right=r(o.right)),"composeCode"in o&&delete o.composeCode,o))}const i=Rn(e),s=r(i);return{filters:Array.from(t),relations:s}};function bh(e){return"config"in e&&"guid"in e.config}function yh(e){return typeof e=="string"?e:e.title}function pr(e){return typeof e=="object"&&"type"in e&&"title"in e}function vh(e){return{id:e.id,address:e.address,title:e.title,type:e.live?"live":"elasticube"}}function hr(e){return pr(e)?{title:e.title,live:e.type==="live"}:{title:e,live:!1}}function Th(e){var t;return pr(e)?{title:e.title,live:e.type==="live",id:(t=e.id)!==null&&t!==void 0?t:"",address:e.address}:{title:e,id:""}}function ao(e){return e?e==="asc"?exports.Sort.Ascending:exports.Sort.Descending:exports.Sort.None}function Sh(e){switch(e){case"sortAsc":return exports.Sort.Ascending;case"sortDesc":return exports.Sort.Descending;default:return exports.Sort.None}}const uo=(e,t,n=!1,r=!1)=>{const i=e.filter.filter&&!("turnedOff"in e.filter.filter),s=t||oo(),o=yi(e,s);if(i){const a=yi(Object.assign(Object.assign({},e),{filter:e.filter.filter}),`${t}-bg`),u=o.config;return o.config=Object.assign(Object.assign({},u),{backgroundFilter:a}),o}return o.config=Object.assign(Object.assign({},o.config),{originalFilterJaql:e,disabled:n,locked:r}),o};function me(e){const[t,n]=e.slice(1,-1).split(".");return{table:t,column:n?n.replace("(Calendar)","").trim():""}}function Ah(e){return me(e.expression).table}function wh(e){return me(e.expression).column}function Ch(e){switch(e){case Ie.ASC:return"sortAsc";case Ie.DESC:return"sortDesc";default:return"sortNone"}}const Vt=({expression:e,dataType:t,granularity:n,format:r,sort:i,title:s,panel:o,dataSource:a})=>{const u=me(e).column,l=ao(i);if(t!==void 0&&Gt(t))return new K(s!=null?s:u,e,n||p.Years,r||K.getDefaultFormatForGranularity(n||p.Years),void 0,l,a,void 0,o);const f=!t||fr(t)?A.NumericAttribute:A.TextAttribute;return new Oe(s!=null?s:u,e,f,void 0,l,a,void 0,o)},Qt=({expression:e,dataType:t,agg:n,granularity:r,format:i,sort:s,title:o,dataSource:a})=>{const u=Vt({expression:e,dataType:t,granularity:r,format:i,sort:s,title:o,dataSource:a}),l=le.aggregationFromJAQL(n),d=me(e).column,f=o!=null?o:`${l} ${d}`;switch(l){case S.Sum:return At(u,f,i);case S.Average:return Ns(u,f,i);case S.Min:return $t(u,f,i);case S.Max:return Bt(u,f,i);case S.Count:return Hn(u,f,i);case S.CountDistinct:return Ut(u,f,i);case S.Median:return zn(u,f,i);case S.Variance:return z(u,S.Variance,f,i);case S.StandardDeviation:return z(u,S.StandardDeviation,f,i);default:return At(u,f,i)}},gr=e=>{var t;const n=Rd((t=e.context)!==null&&t!==void 0?t:{},i=>typeof i=="string"?i:i&&lo(i)),r=kn(e.title,e.formula,n);if(e.sort){const i=ao(e.sort);return r.sort(i)}return r};function lo(e,t,n){if("filter"in e)return uo(e);if("formula"in e)return gr(e);const s="datasource"in e?e.datasource:void 0;return e.agg?Qt({expression:e.dim,dataType:e.datatype,agg:e.agg||"",granularity:Ce(e),format:t,sort:e.sort,title:e.title,dataSource:s}):Vt({expression:e.dim,dataType:e.datatype,granularity:Ce(e),format:t,sort:e.sort,title:e.title,panel:n,dataSource:s})}function Ce(e){return e!=null&&e.datatype&&Gt(e.datatype)?K.translateJaqlToGranularity(e):void 0}const mr=e=>so(e).replace("number","numeric");class Oe extends It{constructor(t,n,r,i,s,o,a,u){if(super(t,r||A.Attribute,i,o,a),this.__serializable="DimensionalAttribute",this._sort=exports.Sort.None,this.expression=n,!a&&n){const{table:l,column:d}=me(n);this.composeCode=br(l,d,"",qn)}u==="columns"&&(this.panel=u),this._sort=s||exports.Sort.None}get id(){return this.expression}getSort(){return this._sort}sort(t){return new Oe(this.name,this.expression,this.type,this.description,t,this.dataSource,this.composeCode,this.panel)}jaql(t){const n={jaql:{title:this.name,dim:this.expression,datatype:mr(this.type)}};return this.panel&&(n.panel=this.panel),this._sort!=exports.Sort.None&&(n.jaql.sort=this._sort==exports.Sort.Ascending?"asc":"desc"),t===!0?n.jaql:n}serialize(){const t=super.serialize();return t.expression=this.expression,this.getSort()!==exports.Sort.None&&(t.sort=this.getSort()),t}}const xh=e=>!!(e&&e.__serializable==="DimensionalAttribute");class K extends Oe{constructor(t,n,r,i,s,o,a,u,l){if(super(t,n,A.DateLevel,s,o,a,u),this.__serializable="DimensionalLevelAttribute",this._format=i,this.granularity=r,!u&&n){const{table:d,column:f}=me(n);this.composeCode=br(d,f,r,qn)}l==="columns"&&(this.panel=l)}get id(){let t=`${this.expression}`;const{level:n="",dateTimeLevel:r="",bucket:i}=this.translateGranularityToJaql();return t+=`_${(n||r).toLowerCase()}`,i&&(t+=`_${i}`),t}getSort(){return this._sort}sort(t){return new K(this.name,this.expression,this.granularity,this._format,this.description,t,this.dataSource,this.composeCode)}getFormat(){return this._format}format(t){return new K(this.name,this.expression,this.granularity,t,this.description,this._sort,this.dataSource,this.composeCode)}setGranularity(t){return new K(this.name,this.expression,t,this._format,this.description,this._sort,this.dataSource,this.composeCode)}serialize(){const t=super.serialize();return t.granularity=this.granularity,this.getFormat()!==void 0&&(t.format=this.getFormat()),t}jaql(t){const n={jaql:Object.assign({title:this.name,dim:this.expression,datatype:mr(this.type)},this.translateGranularityToJaql())};if(this.panel&&(n.panel=this.panel),this._format!==void 0){const r=n.jaql.dateTimeLevel||n.jaql.level;n.format={mask:{}},n.format.mask[r]=this._format}return this._sort!=exports.Sort.None&&(n.jaql.sort=this._sort==exports.Sort.Ascending?"asc":"desc"),t===!0?n.jaql:n}translateGranularityToJaql(){const t="minutes",n="seconds";switch(this.granularity){case p.Years:case p.Quarters:case p.Months:case p.Weeks:case p.Days:return{level:this.granularity.toLowerCase()};case p.Hours:return{dateTimeLevel:t,bucket:"60"};case p.MinutesRoundTo30:return{dateTimeLevel:t,bucket:"30"};case p.MinutesRoundTo15:return{dateTimeLevel:t,bucket:"15"};case p.Minutes:return{dateTimeLevel:t,bucket:"1"};case p.Seconds:return{dateTimeLevel:n,bucket:"0"};case p.AggHours:return{level:t,bucket:"60"};case p.AggMinutesRoundTo30:return{level:t,bucket:"30"};case p.AggMinutesRoundTo15:return{level:t,bucket:"15"};case p.AggMinutesRoundTo1:return{level:t,bucket:"1"};default:return console.warn("Unsupported level"),{level:this.granularity}}}static translateJaqlToGranularity(t){const n=r=>(console.warn("Unsupported granularity",r),r);if(t.dateTimeLevel){if(t.dateTimeLevel!=="minutes"&&t.dateTimeLevel!=="seconds")return n(t.dateTimeLevel);switch(t.bucket){case"60":return p.Hours;case"30":return p.MinutesRoundTo30;case"15":return p.MinutesRoundTo15;case"1":return p.Minutes;case"0":return p.Seconds;default:return n(t.dateTimeLevel)}}switch(t.level){case"years":return p.Years;case"quarters":return p.Quarters;case"months":return p.Months;case"weeks":return p.Weeks;case"days":return p.Days;case"minutes":switch(t.bucket){case"60":return p.AggHours;case"30":return p.AggMinutesRoundTo30;case"15":return p.AggMinutesRoundTo15;case"1":return p.AggMinutesRoundTo1;default:return n(t.level)}default:return n(t.level)}}static getDefaultFormatForGranularity(t){switch(t){case p.Years:return"yyyy";case p.Quarters:return"Q yyyy";case p.Months:return"yyyy-MM";case p.Weeks:return"ww yyyy";case p.Days:return"yyyy-MM-dd";case p.Hours:return"yyyy-MM-dd HH:mm";case p.MinutesRoundTo30:return"yyyy-MM-dd HH:mm";case p.MinutesRoundTo15:return"yyyy-MM-dd HH:mm";case p.Minutes:return"yyyy-MM-dd HH:mm";case p.Seconds:return"yyyy-MM-dd HH:mm:ss";case p.AggHours:return"HH:mm";case p.AggMinutesRoundTo30:return"HH:mm";case p.AggMinutesRoundTo15:return"HH:mm";case p.AggMinutesRoundTo1:return"HH:mm";default:return""}}}const Eh=e=>!!(e&&e.__serializable==="DimensionalLevelAttribute");function Oh(e){return e.granularity?Nh(e):new Oe(e.name||e.title,e.attribute||e.expression||e.dim,e.type,e.desc||e.description,e.sort,e.dataSource)}function Nh(e){return new K(e.name||e.title,e.attribute||e.expression||e.dim,e.granularity,e.format,e.desc||e.description,e.sort,e.dataSource)}function br(e,t,n,r){return(r.length>0?r+".":"")+ue(e)+"."+ue(t)+(n&&n.length>0?"."+n:"")}function Fh(e){return"granularity"in e}function _h(e){return"attribute"in e}function Mh(e){return"measure"in e}const Dh={rows:!1,columns:!1};function Ct(e){return!!e&&"operator"in e&&(e.operator==="AND"||e.operator==="OR")&&!!e.right&&!!e.left}function Rh(e=[],t=[]){if(!Ct(e)&&!Ct(t))return bn(e,t);const{filters:n,relations:r}=yr(e),i=co(t),s=bn(n,i),o=po(n,r,s);return fo(s,o)}function yr(e){if(!e)return{filters:[],relations:null};if(L(e))return{filters:e,relations:null};const t=new Set;function n(i){if(ho(i))return t.add(i),{instanceid:i.config.guid};if(Ct(i)){const s=n(i.left),o=n(i.right);return{left:s,right:o,operator:i.operator}}throw new Yt}const r=n(e);return{filters:Array.from(t),relations:r}}function co(e){return e?yr(e).filters:[]}function fo(e,t){if(!t||vr(t))return e;const n=r(t);return ho(n)?[n]:n;function r(i){if(Kt(i))return e.find(s=>s.config.guid===i.instanceid);if(Jt(i))return(i.operator==="AND"?exports.logic.and:exports.logic.or)(r(i.left),r(i.right));throw new Yt}}function vr(e){return!!e&&"instanceid"in e}function po(e,t,n){if(t===null)return null;const r=Ih(e,n);return r.length===0?t:r.reduce((i,s)=>{switch(s.type){case"add":return Ph(s.payload,i);case"remove":return mn(s.payload,i)}},t)}function vi(e,t){return e.config.guid===t.config.guid}function Lh(e,t,n){if(!e)return null;return i(e);function i(s){if(Kt(s))return s.instanceid===t.config.guid?{instanceid:n.config.guid}:s;if(Jt(s))return{left:i(s.left),right:i(s.right),operator:s.operator};throw new Yt}}function Ih(e,t){const n=[],r=[...e],i=[...t];return r.forEach(s=>{i.some(a=>vi(s,a))||n.push({type:"remove",payload:s})}),i.forEach(s=>{r.some(a=>vi(s,a))||n.push({type:"add",payload:s})}),n}function Ph(e,t){return t?{left:t,right:{instanceid:e.config.guid},operator:"AND"}:{instanceid:e.config.guid}}function mn(e,t){if(!t)return null;if(vr(t))return t.instanceid===e.config.guid?null:t;const n=mn(e,t.left),r=mn(e,t.right);return n===null&&r?r:r===null&&n?n:n===null&&r===null?null:{left:n,right:r,operator:t.operator}}function jh(e,t){if(!e)return null;function n(r){if($h(r))return{instanceid:r.instanceId};if(Bh(r))return n(r.value);if(Uh(r))return{operator:r.operator,left:n(r.left),right:n(r.right)};if(Wh(r)){const i=t.find(s=>{if(!Ze(s))return!1;const o=s.filters.map(a=>a.config.guid);return r.levels.every(a=>o.includes(a.instanceId))});if(i)return{instanceid:i.config.guid};throw new Error("Broken filter relations model. Cascading filter not found.")}throw new Error("Broken filter relations model. Unknown node type.")}return n(e)}function $h(e){return"instanceId"in e}function Bh(e){return"value"in e}function Uh(e){return"operator"in e}function Wh(e){return"levels"in e&&L(e.levels)}function Kt(e){return"instanceid"in e}function Jt(e){return"operator"in e}function ho(e){return"config"in e&&"guid"in e.config}function qh(e,t){if(!e)return;function n(r){if(Kt(r)){const i=t.find(s=>s.config.guid===r.instanceid);return i&&Ze(i)?{type:"CascadingIdentifier",levels:i.filters.map(o=>({type:"Identifier",instanceId:o.config.guid}))}:{type:"Identifier",instanceId:r.instanceid}}else{if(Jt(r))return{type:"LogicalExpression",operator:r.operator,left:n(r.left),right:n(r.right)};throw new Error("Unknown node type in filter relations rules.")}}return n(e)}function kh(e,t){return e.find(n=>n.config.guid===t)}class Yt extends Error{constructor(){super("Broken filter relations. Unknown node type.")}}function zh(e){return e.nodeType==="openBracket"}function Hh(e){return e.nodeType==="closeBracket"}function Gh(e){return e.nodeType==="attribute"}function Vh(e){return e.nodeType==="operator"}function xt(e){if(Ze(e))return e.filters.map(xt).join("-");const{attribute:t}=e,n=e.jaql().jaql,r=t.expression||n.dim,i=t.granularity||((n==null?void 0:n.datatype)==="datetime"?K.translateJaqlToGranularity(n):"");return`${r}${i}`}function bn(e=[],t=[]){const n=[...e];return t.forEach(r=>{const i=n.findIndex(o=>xt(r)===xt(o));i!==-1?n[i]=r:n.push(r)}),n}function Qh(e){if(!e)return e;const t=Rn(e);function n(r){if("instanceId"in r)return{instanceid:r.instanceId};if("value"in r)return n(r.value);if("operator"in r){const i={operator:r.operator};return"left"in r&&(i.left=n(r.left)),"right"in r&&(i.right=n(r.right)),i}return r}return n(t)}const Ti=e=>{if(typeof e=="object"&&e!==null){if(typeof Object.getPrototypeOf=="function"){const t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}return Object.prototype.toString.call(e)==="[object Object]"}return!1},ee=(...e)=>e.reduce((t,n)=>{if(Array.isArray(n))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(n).forEach(r=>{["__proto__","constructor","prototype"].includes(r)||(Array.isArray(t[r])&&Array.isArray(n[r])?t[r]=ee.options.mergeArrays?Array.from(new Set(t[r].concat(n[r]))):n[r]:Ti(t[r])&&Ti(n[r])?t[r]=ee(t[r],n[r]):t[r]=n[r])}),t},{}),go={mergeArrays:!0};ee.options=go;ee.withOptions=(e,...t)=>{ee.options=Object.assign({mergeArrays:!0},e);const n=ee(...t);return ee.options=go,n};let at;const Kh=new Uint8Array(16);function Jh(){if(!at&&(at=typeof crypto!="undefined"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!at))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return at(Kh)}const D=[];for(let e=0;e<256;++e)D.push((e+256).toString(16).slice(1));function Yh(e,t=0){return D[e[t+0]]+D[e[t+1]]+D[e[t+2]]+D[e[t+3]]+"-"+D[e[t+4]]+D[e[t+5]]+"-"+D[e[t+6]]+D[e[t+7]]+"-"+D[e[t+8]]+D[e[t+9]]+"-"+D[e[t+10]]+D[e[t+11]]+D[e[t+12]]+D[e[t+13]]+D[e[t+14]]+D[e[t+15]]}const Xh=typeof crypto!="undefined"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),Si={randomUUID:Xh};function mo(e,t,n){if(Si.randomUUID&&!t&&!e)return Si.randomUUID();e=e||{};const r=e.random||(e.rng||Jh)();return r[6]=r[6]&15|64,r[8]=r[8]&63|128,Yh(r)}function Zh(e,t){const n=t==null?void 0:t.find(r=>bo(e)===r.attribute.id);return n&&!n.config.disabled&&(n.isScope&&(n.isScope=!1),e.jaql.in={selected:n.jaql()}),e}function eg(e,t){const n=[],r=[];return t.forEach(i=>{e.some(o=>bo(o)===i.attribute.id)?n.push(i):r.push(i)}),[n,r]}function bo(e){const{dim:t,level:n,dateTimeLevel:r,bucket:i}=e.jaql;let s=`${t}`;return(n||r)&&(s+=`_${n||r}`),i&&(s+=`_${i}`),s}var tg=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n};function ng(e,t,n){return{rowsCount:e.length,columnsCount:t.length,measuresCount:n.length}}function rg(e){switch(e){case"sortAsc":return"asc";case"sortDesc":return"desc";default:return"none"}}function ig(e,t,n){const r=rg(e.direction),i=t===n.rowsCount-1,s={dir:r,initialized:!0,field:e.by&&"valuesIndex"in e.by?n.rowsCount+n.columnsCount+e.by.valuesIndex:t};return i&&(s.sortingLastDimension=!0),e.by&&(s.measurePath=(e.by.columnsMembersPath||[]).reduce((o,a,u)=>Object.assign(Object.assign({},o),{[n.rowsCount+u]:a}),{})),{sort:r,sortDetails:s}}function sg(e,t){if(t.rowsCount===0)return;const n=t.rowsCount-1,r=e[n],i=r.jaql,{sortDetails:s,sort:o}=i,a=tg(i,["sortDetails","sort"]);if(s&&s.field!==n&&s.field<e.length){const l=e[s.field];l.jaql.sortDetails=s,l.jaql.sort=o,r.jaql=a}}const ft="ComposeSDK";function yo(e,t){const{attributes:n,measures:r,filters:i,filterRelations:s,highlights:o,dataSource:a,count:u,offset:l,ungroup:d}=e,f=d&&r.length===0,c=Object.assign({metadata:ag({attributes:n,measures:r,filters:i,filterRelations:s,highlights:o},t)},ug(a,u,l,f));return s?Object.assign(Object.assign({},c),{filterRelations:s}):c}function vo(e,t,n,r,i){const[s,o]=eg(e,r);e.forEach(l=>Zh(l,s));const a=l=>{const d=l.jaql();return n?Array.isArray(d)?d.map(f=>Object.assign(Object.assign({},f),{instanceid:l.config.guid})):Object.assign(Object.assign({},d),{instanceid:l.config.guid}):d},u=(i?t.flatMap(l=>a(l)):[...t,...o].flatMap(l=>a(l))).filter(l=>Object.keys(l.jaql.filter||{}).length!==0);return i&&o.length>0&&console.warn(`The following highlight filters were not applied due to missing attributes: [${o.map(l=>l.attribute.name).join(", ")}].`),u}function og(e){var t,n;const r=(t=e.jaql)===null||t===void 0?void 0:t.formula;if(!r||!r.includes("trend")&&!r.includes("forecast"))return e;const i=structuredClone(e),s=(n=i.jaql)===null||n===void 0?void 0:n.context;if(s)for(const o in s){const a=s[o];a.datatype==="text"&&a.agg==="count"&&(a.datatype="numeric")}return i}function ag(e,t){const{attributes:n,measures:r,filters:i,filterRelations:s,highlights:o}=e,a=n.map(d=>d.jaql()),u=r.map(d=>og(d.jaql())),l=vo(a,i,s,o,t);return[...a,...u,...l]}function ug(e,t,n,r){return Object.assign(Object.assign(Object.assign({datasource:hr(e),by:ft,queryGuid:mo()},r?{ungroup:!0}:{}),t?{count:t}:{}),n?{offset:n}:{})}function lg(e,t){const{rowsAttributes:n,columnsAttributes:r,measures:i,filters:s,filterRelations:o,grandTotals:a,highlights:u,dataSource:l,count:d,offset:f}=e,c=Object.assign({metadata:dg({rowsAttributes:n,columnsAttributes:r,measures:i,filters:s,highlights:u,filterRelations:o},t)},fg(l,a,d,f));return o?Object.assign(Object.assign({},c),{filterRelations:o}):c}function Ai(e,t,n,r){if(_h(e)){const i=t==="rows"&&e.sort&&e.sort.direction!=="sortNone",s=Object.assign(Object.assign({},e.attribute.jaql(!0)),i?ig(e.sort,n,r):{});e.name&&(s.title=e.name);const o={jaql:s,panel:t,field:{index:n,id:`${t}-${n}`}};return e.includeSubTotals&&(o.format={subtotal:!0}),o}else return{jaql:e.jaql(!0),panel:t,field:{index:n,id:`${t}-${n}`}}}function cg(e,t,n){return Object.assign(Object.assign({},Mh(e)?ee(e.measure.jaql(),{jaql:{subtotalAgg:e.totalsCalculation},format:Object.assign({databars:e.dataBars||!1},e.shouldRequestMinMax&&{color:{type:"range"}})}):e.jaql()),{panel:t,field:{index:n,id:`${t}-${n}`}})}function dg(e,t){const{rowsAttributes:n,columnsAttributes:r,measures:i,filters:s,filterRelations:o,highlights:a}=e,u=ng(n,r,i);let l=0;const d=n.map((m,w)=>Ai(m,"rows",w+l,u));l=l+n.length;const f=r.map((m,w)=>Ai(m,"columns",w+l,u));l=l+r.length;const c=[...d,...f],g=i.map((m,w)=>cg(m,"measures",w+l)),h=vo(c,s,o,a,t),v=[...c,...g,...h];return sg(v,u),v}function fg(e,t,n,r){return Object.assign(Object.assign(Object.assign({datasource:hr(e),by:ft,queryGuid:mo(),dashboard:ft,widget:ft,format:"pivot"},n?{count:n}:{}),r?{offset:r}:{}),{grandTotals:Object.assign(Object.assign({},Dh),t)})}class nt extends Sn{constructor(t,n){super(An,{key:t,interpolationOptions:n},Fi.t)}}function pg(e){return"value"in e}function hg(e){return"valuePromise"in e}const gg=(e,t)=>{const n=new Map;return{withCache:s=>(...o)=>xr(exports,null,function*(){const a=e(...o);if(n.has(a)){const u=n.get(a);if(pg(u))return u.value;if(hg(u))return u.valuePromise;throw new nt("errors.unexpectedCacheValue")}else{const u=s(...o);return n.set(a,{valuePromise:u,createdAt:new Date}),u.then(l=>(n.set(a,{value:l,createdAt:new Date}),t!=null&&t.cacheMaxSize&&n.size>t.cacheMaxSize&&mg(n),l))}}),clearCache:s=>{if(s){n.delete(s);return}n.clear()}}};function mg(e){const t=Array.from(e.keys()),n=t.reduce((r,i)=>{const s=e.get(i),o=e.get(r);return s.createdAt<o.createdAt?i:r},t[0]);e.delete(n)}const Xt=(e,t)=>{const{dataSource:n,dimensions:r=[],measures:i=[],filters:s=[],filterRelations:o,highlights:a=[],count:u,offset:l,ungroup:d}=e;s&&s.forEach(c=>c.isScope=!0),a&&a.forEach(c=>c.isScope=!0);const f=n||t;if(!f)throw new nt("errors.executeQueryNoDataSource");return{dataSource:f,attributes:r,measures:i,filters:s,filterRelations:o,highlights:a,count:u,offset:l,ungroup:d}};function To(e,t,n){const r=Xt(e,t==null?void 0:t.defaultDataSource);return t.queryClient.executeQuery(r,n).resultPromise.catch(i=>{throw i.message.includes("SecondsLevelIsNotSupportedException")?new nt("errors.secondsDateTimeLevelSupportedOnlyForLive"):i})}const bg=(e,t,n)=>{const r=Xt(e,t==null?void 0:t.defaultDataSource);return t.queryClient.executeCsvQuery(r,n).resultPromise},yg=(e,t,n)=>{const{dataSource:r,rows:i=[],columns:s=[],values:o=[],grandTotals:a={},filters:u=[],filterRelations:l,highlights:d=[],count:f,offset:c}=e;u&&u.forEach(h=>h.isScope=!0),d&&d.forEach(h=>h.isScope=!0);const g=r||(t==null?void 0:t.defaultDataSource);if(!g)throw new nt("errors.executeQueryNoDataSource");return t.queryClient.executePivotQuery({dataSource:g,rowsAttributes:i,columnsAttributes:s,measures:o,grandTotals:a,filters:u,filterRelations:l,highlights:d,count:f,offset:c},n).resultPromise},vg=e=>JSON.stringify(B(b({},yo(e,!1)),{queryGuid:""})),So=(e,t)=>{const n=Xt(e,t==null?void 0:t.defaultDataSource);return vg(n)},Tg=250,{withCache:Sg,clearCache:Ag}=gg(So,{cacheMaxSize:Tg}),wg=Sg(To),Cg=Ag;exports.AbstractTranslatableError=Sn;exports.AggregationTypes=S;exports.CascadingFilter=Ps;exports.CustomFilter=Ws;exports.DATA_MODEL_MODULE_NAME=qn;exports.DateLevels=p;exports.DateOperators=we;exports.DateRangeFilter=Us;exports.DimensionalAttribute=Oe;exports.DimensionalBaseMeasure=le;exports.DimensionalCalculatedMeasure=J;exports.DimensionalElement=It;exports.DimensionalLevelAttribute=K;exports.DimensionalMeasureTemplate=wt;exports.ExcludeFilter=js;exports.FilterTypes=$;exports.LogicalAttributeFilter=Qn;exports.MeasureFilter=$s;exports.MeasureRankingFilter=Jn;exports.MembersFilter=Is;exports.MetadataTypes=A;exports.NumericFilter=Bs;exports.NumericOperators=_;exports.PACKAGE_NAMESPACE=An;exports.RankingFilter=Kn;exports.RankingOperators=Xe;exports.RelativeDateFilter=kt;exports.Set=vt;exports.SetCache=We;exports.TextFilter=Z;exports.TextOperators=X;exports.TranslatableError=nt;exports.UnknownRelationsNodeError=Yt;exports.WeakMap=Tt;exports.apply=ps;exports.arrayEach=Ri;exports.arrayMap=Pn;exports.assignValue=wn;exports.baseAssignValue=He;exports.baseClone=Te;exports.baseCreate=Hi;exports.baseFlatten=As;exports.baseForOwn=Yi;exports.baseGet=Rt;exports.baseGetTag=se;exports.baseIsEqual=Ke;exports.baseIteratee=os;exports.baseMerge=Bn;exports.baseRest=bs;exports.baseSlice=Ss;exports.baseToString=jn;exports.baseUnary=Mt;exports.between=ke;exports.bottomRanking=dr;exports.cacheHas=Xi;exports.calculateNewRelations=po;exports.cascading=Zs;exports.castPath=Je;exports.clearExecuteQueryCache=Cg;exports.cloneDeep=Rn;exports.combineFiltersAndRelations=fo;exports.constant=gs;exports.contains=er;exports.convertDataSource=vh;exports.convertFilterRelationsModelToJaql=Qh;exports.convertFilterRelationsModelToRelationRules=jh;exports.convertJaqlDataSource=hr;exports.convertJaqlDataSourceForDto=Th;exports.convertSortDirectionToSort=Sh;exports.copyArray=On;exports.countDistinct=Ut;exports.createAssigner=vs;exports.createAttribute=Oh;exports.createAttributeHelper=Vt;exports.createCalculatedMeasureHelper=gr;exports.createDimensionalElementFromJaql=lo;exports.createExecuteQueryCacheKey=So;exports.createFilterFromJaql=uo;exports.createMeasureHelper=Qt;exports.customFormula=kn;exports.dateRange=tt;exports.dateRelative=Hs;exports.dateRelativeFrom=lr;exports.dateRelativeTo=ge;exports.doesntContain=Yn;exports.doesntEndWith=Xn;exports.doesntEqual=rr;exports.doesntStartWith=Zn;exports.endsWith=tr;exports.equals=ir;exports.escapeSingleQuotes=Oi;exports.exclude=zt;exports.executeCsvQuery=bg;exports.executePivotQuery=yg;exports.executeQuery=To;exports.executeQueryWithCache=wg;exports.filterFactory=yp;exports.filterRelationRulesToFilterRelationsModel=qh;exports.findFilterByGuid=kh;exports.flatRest=ws;exports.forecast=_s;exports.get=is;exports.getAllKeysIn=Mn;exports.getColumnNameFromAttribute=wh;exports.getDataSourceName=yh;exports.getDefaults=Lo;exports.getFilterCompareId=xt;exports.getFilterListAndRelationsJaql=mh;exports.getFiltersArray=co;exports.getGranularityFromJaql=Ce;exports.getI18n=Po;exports.getJaqlQueryPayload=yo;exports.getPivotJaqlQueryPayload=lg;exports.getRelationsWithReplacedFilter=Lh;exports.getSelectedConditionOption=Ht;exports.getSortType=Ch;exports.getTableNameFromAttribute=Ah;exports.greaterThan=sr;exports.greaterThanOrEqual=or;exports.hasIn=ss;exports.i18nextInstance=Fi;exports.identity=Lt;exports.initI18next=Tn;exports.initializeI18n=Ni;exports.isArray=L;exports.isArrayLike=Ge;exports.isArrayLikeObject=cs;exports.isAttributeDescriptionNode=Gh;exports.isBoolean=io;exports.isCascadingFilter=Ze;exports.isCloseBracketDescriptionNode=Hh;exports.isConditionFilter=no;exports.isCustomFilter=Zf;exports.isDataSourceInfo=pr;exports.isDateRangeFilter=lp;exports.isDatetime=Gt;exports.isDimensionalAttribute=xh;exports.isDimensionalBaseMeasure=Vn;exports.isDimensionalCalculatedMeasure=Jf;exports.isDimensionalLevelAttribute=Eh;exports.isDimensionalMeasureTemplate=Yf;exports.isEqual=Ms;exports.isExcludeFilter=sp;exports.isFilterRelations=Ct;exports.isFunction=Nt;exports.isIndex=_t;exports.isIterateeCall=ys;exports.isLevelAttribute=Fh;exports.isLogicalAttributeFilter=op;exports.isMeasureFilter=ip;exports.isMeasureRankingFilter=rp;exports.isMembersFilter=ep;exports.isNumber=fr;exports.isNumericFilter=tp;exports.isObject=Y;exports.isObjectLike=k;exports.isOpenBracketDescriptionNode=zh;exports.isOperatorDescriptionNode=Vh;exports.isRankingFilter=np;exports.isRelationsRule=Jt;exports.isRelationsRuleIdNode=Kt;exports.isRelativeDateFilter=ap;exports.isSpecificItemsFilter=to;exports.isSymbol=Dt;exports.isText=ro;exports.isTextFilter=up;exports.isTrivialSingleNodeRelations=vr;exports.jaqlSimpleColumnType=mr;exports.last=Ts;exports.lessThan=ar;exports.lessThanOrEqual=ur;exports.like=zs;exports.max=Bt;exports.measureFactory=Kf;exports.members=et;exports.merge=Wn;exports.merge$1=ee;exports.mergeFilters=bn;exports.mergeFiltersOrFilterRelations=Rh;exports.min=$t;exports.nodeUtil=de;exports.normalizeAttributeName=br;exports.normalizeName=ue;exports.omit=Cs;exports.parseExpression=me;exports.prepareQueryParams=Xt;exports.root=H;exports.setToArray=es;exports.setToString=Un;exports.shortOut=ms;exports.simpleColumnType=so;exports.splitFiltersAndRelations=yr;exports.startsWith=nr;exports.toKey=Ee;exports.toString=rs;exports.topRanking=cr;exports.trend=Fs;exports.withComposeCodeForAnalytics=vf;
@@ -1,17 +0,0 @@
1
- import { DataSource, DataSourceField } from '@sisense/sdk-data';
2
- import { RestApiHookState } from '../../../utils/utility-types';
3
- /**
4
- * Gets the fields of a data source.
5
- *
6
- * @param dataSource - The data source to get the fields for
7
- * @internal
8
- */
9
- export declare const useGetDataSourceFields: (params: {
10
- dataSource: DataSource | undefined;
11
- enabled?: boolean;
12
- count?: number;
13
- offset?: number;
14
- searchValue?: string;
15
- }) => DataSourceFieldsState;
16
- type DataSourceFieldsState = RestApiHookState<'dataSourceFields', DataSourceField[]>;
17
- export {};