@sisense/sdk-ui 2.9.0 → 2.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ai.cjs +31 -31
- package/dist/ai.js +27 -27
- package/dist/analytics-composer/node.cjs +3 -1
- package/dist/analytics-composer/node.js +514 -378
- package/dist/analytics-composer.cjs +1 -1
- package/dist/analytics-composer.js +6 -6
- package/dist/derive-chart-family-B1on_xkS.cjs +170 -0
- package/dist/derive-chart-family-BllGhqsW.js +29469 -0
- package/dist/{dimensions-CVJeJ8mi.cjs → dimensions-BYqdB-Q8.cjs} +1 -1
- package/dist/{dimensions-B2jz151s.js → dimensions-D-Z9sitz.js} +1 -1
- package/dist/execute-query-CABqVn7C.cjs +1 -0
- package/dist/{execute-query-agpyzZz6.js → execute-query-CGLL9vXX.js} +269 -247
- package/dist/index.cjs +25 -26
- package/dist/index.js +7945 -7469
- package/dist/index.umd.js +383 -374
- package/dist/packages/sdk-ui/src/analytics-composer/new-nlq-translator/common.d.ts +14 -0
- package/dist/packages/sdk-ui/src/analytics-composer/new-nlq-translator/translate-dimensions.d.ts +2 -2
- package/dist/packages/sdk-ui/src/analytics-composer/new-nlq-translator/translate-filters.d.ts +5 -5
- package/dist/packages/sdk-ui/src/analytics-composer/new-nlq-translator/translate-measures.d.ts +3 -3
- package/dist/packages/sdk-ui/src/analytics-composer/types.d.ts +12 -0
- package/dist/packages/sdk-ui/src/calendar-heatmap-chart.d.ts +12 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/calendar-heatmap-chart-builder.d.ts +8 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/constants.d.ts +87 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/data-options/data-options.d.ts +54 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/data-options/index.d.ts +1 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/data.d.ts +33 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/design-options.d.ts +22 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/highcharts-options-builder.d.ts +8 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/index.d.ts +1 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/axes-options.d.ts +12 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/chart-options.d.ts +9 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/extras-options.d.ts +9 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/index.d.ts +7 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/legend-options.d.ts +8 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/plot-options.d.ts +9 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/series-options/calendar-data-generator.d.ts +35 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/series-options/index.d.ts +1 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/series-options/series-options.d.ts +9 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/highchart-options-builder/options/tooltip-options.d.ts +9 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/calendar-heatmap-charts-grid.d.ts +26 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/calendar-heatmap.d.ts +17 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/calendar-pagination/calendar-pagination.d.ts +30 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/calendar-pagination/helpers.d.ts +3 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/calendar-pagination/index.d.ts +1 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/helpers/data-helpers.d.ts +4 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/helpers/sizing-helpers.d.ts +25 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/helpers/view-helpers.d.ts +14 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/hooks/index.d.ts +4 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/hooks/use-calendar-heatmap-chart-options.d.ts +55 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/hooks/use-calendar-heatmap-navigation.d.ts +33 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/renderer/index.d.ts +2 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/calendar-heatmap-chart/types.d.ts +13 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/cartesians/helpers/data-options.d.ts +5 -1
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/cartesians/helpers/highchart-options/legend.d.ts +3 -2
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/helpers/data-options.d.ts +22 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/helpers/data.d.ts +13 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/pie-chart/alerts/index.d.ts +5 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/pie-chart/data/index.d.ts +15 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/pie-chart/data-options/index.d.ts +32 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/pie-chart/design-options/index.d.ts +17 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/pie-chart/highchart-options/highcharts-options-builder.d.ts +2 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/pie-chart/pie-chart-builder.d.ts +2 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/categoricals/pie-chart/types.d.ts +12 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/highcharts-based-chart-renderer/highcharts-based-chart-renderer.d.ts +2 -4
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/highcharts-based-chart-renderer/use-extra-config.d.ts +2 -0
- package/dist/packages/sdk-ui/src/chart/restructured-charts/highchart-based-charts/types.d.ts +1 -1
- package/dist/packages/sdk-ui/src/chart/restructured-charts/types.d.ts +10 -9
- package/dist/packages/sdk-ui/src/chart-data/types.d.ts +2 -1
- package/dist/packages/sdk-ui/src/chart-data-options/translate-data-options.d.ts +2 -1
- package/dist/packages/sdk-ui/src/chart-data-options/types.d.ts +19 -2
- package/dist/packages/sdk-ui/src/chart-data-options/utils.d.ts +4 -4
- package/dist/packages/sdk-ui/src/chart-data-options/validate-data-options/validate-categorical-data-options.d.ts +14 -0
- package/dist/packages/sdk-ui/src/chart-options-processor/cartesian/utils/series-processor.d.ts +4 -1
- package/dist/packages/sdk-ui/src/chart-options-processor/{category-chart-options.d.ts → category-chart-options/category-chart-options.d.ts} +9 -5
- package/dist/packages/sdk-ui/src/chart-options-processor/category-chart-options/funnel-chart-options.d.ts +15 -0
- package/dist/packages/sdk-ui/src/chart-options-processor/category-chart-options/pie-chart-options.d.ts +15 -0
- package/dist/packages/sdk-ui/src/chart-options-processor/category-chart-options/sunburst-chart-options.d.ts +17 -0
- package/dist/packages/sdk-ui/src/chart-options-processor/category-chart-options/treemap-chart-options.d.ts +17 -0
- package/dist/packages/sdk-ui/src/chart-options-processor/chart-options-service.d.ts +26 -0
- package/dist/packages/sdk-ui/src/chart-options-processor/scatter-chart-options.d.ts +3 -3
- package/dist/packages/sdk-ui/src/chart-options-processor/style-to-design-options-translator/translate-to-highcharts-options.d.ts +1 -3
- package/dist/packages/sdk-ui/src/chart-options-processor/translations/axis-section.d.ts +6 -0
- package/dist/packages/sdk-ui/src/chart-options-processor/translations/design-options.d.ts +18 -4
- package/dist/packages/sdk-ui/src/chart-options-processor/translations/legend-section.d.ts +28 -14
- package/dist/packages/sdk-ui/src/chart-options-processor/translations/pie-series.d.ts +34 -6
- package/dist/packages/sdk-ui/src/chart-options-processor/translations/tooltip-utils.d.ts +5 -0
- package/dist/packages/sdk-ui/src/chart-options-processor/translations/translations-to-highcharts.d.ts +1 -1
- package/dist/packages/sdk-ui/src/chart-options-processor/translations/types.d.ts +50 -6
- package/dist/packages/sdk-ui/src/common/formatters/create-date-formatter.d.ts +10 -0
- package/dist/packages/sdk-ui/src/common/hooks/useDateFormatter.d.ts +7 -0
- package/dist/packages/sdk-ui/src/common/icons/double-arrow-end-icon.d.ts +6 -0
- package/dist/packages/sdk-ui/src/dashboard/components/editable-layout/utils.d.ts +0 -19
- package/dist/packages/sdk-ui/src/dashboard/hooks/jtd/index.d.ts +1 -1
- package/dist/packages/sdk-ui/src/dashboard/hooks/jtd/jtd-filters.d.ts +12 -1
- package/dist/packages/sdk-ui/src/dashboard/hooks/jtd/jtd-formatters.d.ts +18 -0
- package/dist/packages/sdk-ui/src/dashboard/hooks/jtd/jtd-handlers.d.ts +23 -0
- package/dist/packages/sdk-ui/src/dashboard/hooks/jtd/jtd-widget-transforms.d.ts +29 -0
- package/dist/packages/sdk-ui/src/index.d.ts +1 -0
- package/dist/packages/sdk-ui/src/models/dashboard/translate-dashboard-utils.d.ts +1 -0
- package/dist/packages/sdk-ui/src/pivot-table/formatters/header-cell-formatters/header-cell-value-formatter.d.ts +2 -1
- package/dist/packages/sdk-ui/src/pivot-table/formatters/types.d.ts +0 -1
- package/dist/packages/sdk-ui/src/polar-chart.d.ts +1 -1
- package/dist/packages/sdk-ui/src/props.d.ts +72 -7
- package/dist/packages/sdk-ui/src/sisense-chart/types.d.ts +2 -2
- package/dist/packages/sdk-ui/src/theme-provider/default-theme-settings.d.ts +1 -0
- package/dist/packages/sdk-ui/src/translation/resources/en.d.ts +11 -0
- package/dist/packages/sdk-ui/src/translation/resources/index.d.ts +22 -0
- package/dist/packages/sdk-ui/src/types.d.ts +254 -16
- package/dist/packages/sdk-ui/src/utils/combine-handlers.d.ts +19 -0
- package/dist/packages/sdk-ui/src/utils/utility-types/transformer.d.ts +8 -0
- package/dist/packages/sdk-ui/src/widget-by-id/types.d.ts +4 -6
- package/dist/{types-BYUVZb6u.js → types-BRtWk8uC.js} +1 -1
- package/dist/{types-QUSMO7gF.cjs → types-Ds0KtTJF.cjs} +1 -1
- package/dist/use-common-filters-D8tEa9zb.js +91245 -0
- package/dist/use-common-filters-hw1WKPCY.cjs +844 -0
- package/dist/{widget-composer-CGp5yOny.cjs → widget-composer-B7zeAa_D.cjs} +1 -1
- package/dist/{widget-composer-BG4HonVl.js → widget-composer-DL0xPtlC.js} +3 -3
- package/package.json +9 -9
- package/dist/derive-chart-family-BLG1sO1D.js +0 -86946
- package/dist/derive-chart-family-QPmz5DJ3.cjs +0 -656
- package/dist/execute-query-Cp3se7Yb.cjs +0 -1
- package/dist/packages/sdk-ui/src/utils/__development-utils__/highcharts-options-builder-collector.d.ts +0 -61
- package/dist/packages/sdk-ui/src/utils/__development-utils__/input-output-collector.d.ts +0 -125
- package/dist/use-common-filters-DmdADAhl.cjs +0 -350
- package/dist/use-common-filters-wo5IRF5u.js +0 -31972
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";var So=Object.defineProperty,Ao=Object.defineProperties;var wo=Object.getOwnPropertyDescriptors;var wr=Object.getOwnPropertySymbols;var Eo=Object.prototype.hasOwnProperty,xo=Object.prototype.propertyIsEnumerable;var Er=(e,t,n)=>t in e?So(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,b=(e,t)=>{for(var n in t||(t={}))Eo.call(t,n)&&Er(e,n,t[n]);if(wr)for(var n of wr(t))xo.call(t,n)&&Er(e,n,t[n]);return e},$=(e,t)=>Ao(e,wo(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 Co={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 ht{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||Co,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 ht(this.logger,b({prefix:`${this.prefix}:${t}:`},this.options))}clone(t){return t=t||this.options,t.prefix=t.prefix||this.prefix,new ht(this.logger,t)}}var Q=new ht;class Ot{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 Re(){let e,t;const n=new Promise((r,i)=>{e=r,t=i});return n.resolve=e,n.reject=t,n}function Cr(e){return e==null?"":""+e}function Oo(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 No(e,t,n,r){const{obj:i,k:s}=yn(e,t,Object);i[s]=i[s]||[],i[s].push(n)}function gt(e,t){const{obj:n,k:r}=yn(e,t);if(n)return n[r]}function Fo(e,t,n){const r=gt(e,n);return r!==void 0?r:gt(t,n)}function wi(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]):wi(e[r],t[r],n):e[r]=t[r]);return e}function ve(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}var _o={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};function Do(e){return typeof e=="string"?e.replace(/[&<>"'\/]/g,t=>_o[t]):e}const Mo=[" ",",","?","!",";"];function Ro(e,t,n){t=t||"",n=n||"";const r=Mo.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 mt(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?mt(u,l,n):void 0}i=i[r[s]]}return i}function bt(e){return e&&e.indexOf("_")>0?e.replace("_","-"):e}class Nr extends Ot{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=gt(this.data,a);return u||!o||typeof r!="string"?u:mt(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=gt(this.data,a)||{};i?wi(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 Ei={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 yt extends Ot{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(),Oo(["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&&!Ro(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,p=f&&f.exactUsedKey||o,y=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(y)<0&&!(typeof w=="string"&&y==="[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({},n),{ns:a})):`key '${o} (${this.language})' returned an object instead of string.`;return i?(f.res=x,f):x}if(s){const x=y==="[object Array]",D=x?[]:{},G=x?p:g;for(const I in c)if(Object.prototype.hasOwnProperty.call(c,I)){const it=`${G}${s}${I}`;D[I]=this.translate(it,$(b({},n),{joinArrays:!1,ns:a})),D[I]===it&&(D[I]=c[I])}c=D}}else if(F&&typeof w=="string"&&y==="[object Array]")c=c.join(w),c&&(c=this.extendTranslation(c,t,n,r));else{let x=!1,D=!1;const G=n.count!==void 0&&typeof n.count!="string",I=yt.hasDefaultValue(n),it=G?this.pluralResolver.getSuffix(l,n.count,n):"",vo=n.ordinal&&G?this.pluralResolver.getSuffix(l,n.count,{ordinal:!1}):"",_e=n[`defaultValue${it}`]||n[`defaultValue${vo}`]||n.defaultValue;!this.isValidLookup(c)&&I&&(x=!0,c=_e),this.isValidLookup(c)||(D=!0,c=o);const To=(n.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&D?void 0:c,De=I&&_e!==c&&this.options.updateMissing;if(D||x||De){if(this.logger.log(De?"updateKey":"missingKey",l,u,o,De?_e:c),s){const P=this.resolve(o,$(b({},n),{keySeparator:!1}));P&&P.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 Me=[];const st=this.languageUtils.getFallbackCodes(this.options.fallbackLng,n.lng||this.language);if(this.options.saveMissingTo==="fallback"&&st&&st[0])for(let P=0;P<st.length;P++)Me.push(st[P]);else this.options.saveMissingTo==="all"?Me=this.languageUtils.toResolveHierarchy(n.lng||this.language):Me.push(n.lng||this.language);const Tr=(P,ye,Sr)=>{const Ar=I&&Sr!==c?Sr:To;this.options.missingKeyHandler?this.options.missingKeyHandler(P,u,ye,Ar,De,n):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(P,u,ye,Ar,De,n),this.emit("missingKey",P,u,ye,c)};this.options.saveMissing&&(this.options.saveMissingPlurals&&G?Me.forEach(P=>{this.pluralResolver.getSuffixes(P,n).forEach(ye=>{Tr([P],o+ye,n[`defaultValue${ye}`]||_e)})}):Tr(Me,o,_e))}c=this.extendTranslation(c,t,n,f,r),D&&c===o&&this.options.appendNamespaceToMissingKey&&(c=`${u}:${o}`),(D||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({},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),p=0;p<c;p++)g[p]=arguments[p];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=Ei.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(),p=n.context!==void 0&&(typeof n.context=="string"||typeof n.context=="number")&&n.context!=="",y=n.lngs?n.lngs:this.languageUtils.toResolveHierarchy(n.lng||this.language,n.fallbackLng);f.forEach(m=>{this.isValidLookup(r)||(a=m,!Fr[`${y[0]}-${m}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(a)&&(Fr[`${y[0]}-${m}`]=!0,this.logger.warn(`key "${i}" for languages "${y.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!!!")),y.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 D=`${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+D)),p){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+D))}}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=bt(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=bt(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 Lo=[{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}],Io={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 Po=["v1","v2","v3"],jo=["v4"],Dr={zero:0,one:1,two:2,few:3,many:4,other:5};function $o(){const e={};return Lo.forEach(t=>{t.lngs.forEach(n=>{e[n]={numbers:t.nr,plurals:Io[t.fc]}})}),e}class Bo{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||jo.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=$o()}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(bt(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)=>Dr[i]-Dr[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!Po.includes(this.options.compatibilityJSON)}}function Mr(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=Fo(e,t,n);return!s&&i&&typeof n=="string"&&(s=mt(e,n,r),s===void 0&&(s=mt(t,n,r))),s}class Uo{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:Do,this.escapeValue=n.escapeValue!==void 0?n.escapeValue:!0,this.useRawValueToEscape=n.useRawValueToEscape!==void 0?n.useRawValueToEscape:!1,this.prefix=n.prefix?ve(n.prefix):n.prefixEscaped||"{{",this.suffix=n.suffix?ve(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?ve(n.nestingPrefix):n.nestingPrefixEscaped||ve("$t("),this.nestingSuffix=n.nestingSuffix?ve(n.nestingSuffix):n.nestingSuffixEscaped||ve(")"),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(p){return p.replace(/\$/g,"$$$$")}const d=p=>{if(p.indexOf(this.formatSeparator)<0){const F=Mr(n,u,p,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(F,void 0,r,$(b(b({},i),n),{interpolationkey:p})):F}const y=p.split(this.formatSeparator),m=y.shift().trim(),w=y.join(this.formatSeparator).trim();return this.format(Mr(n,u,m,this.options.keySeparator,this.options.ignoreJSONStructure),w,r,$(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:p=>l(p)},{regex:this.regexp,safeValue:p=>this.escapeValue?l(this.escape(p)):l(p)}].forEach(p=>{for(a=0;s=p.regex.exec(t);){const y=s[1].trim();if(o=d(y),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,y))o="";else if(c){o=s[0];continue}else this.logger.warn(`missed to pass in variable ${y} for interpolating ${t}`),o="";else typeof o!="string"&&!this.useRawValueToEscape&&(o=Cr(o));const m=p.safeValue(o);if(t=t.replace(s[0],m),c?(p.regex.lastIndex+=o.length,p.regex.lastIndex-=s[0].length):p.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),p=c.match(/"/g);(g&&g.length%2===0&&!p||p.length%2!==0)&&(c=c.replace(/'/g,'"'));try{o=JSON.parse(c),l&&(o=b(b({},l),o))}catch(y){return this.logger.warn(`failed parsing options string in nesting for key ${u}`,y),`${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=Cr(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({},r),{interpolationkey:i[1].trim()})),s.trim())),t=t.replace(i[0],s),this.regexp.lastIndex=0}return t}}function Wo(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 Te(e){const t={};return function(r,i,s){const o=i+JSON.stringify(s);let a=t[o];return a||(a=e(bt(i),s),t[o]=a),a(r)}}class qo{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=Q.create("formatter"),this.options=t,this.formats={number:Te((n,r)=>{const i=new Intl.NumberFormat(n,b({},r));return s=>i.format(s)}),currency:Te((n,r)=>{const i=new Intl.NumberFormat(n,$(b({},r),{style:"currency"}));return s=>i.format(s)}),datetime:Te((n,r)=>{const i=new Intl.DateTimeFormat(n,b({},r));return s=>i.format(s)}),relativetime:Te((n,r)=>{const i=new Intl.RelativeTimeFormat(n,b({},r));return s=>i.format(s,r.range||"day")}),list:Te((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()]=Te(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}=Wo(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 zo(e,t){e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)}class Ho extends Ot{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=>{No(u.loaded,[s],o),zo(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({},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 ot(){}function ko(e){Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(n=>{typeof e[n]=="function"&&(e[n]=e[n].bind(e))})}class $e extends Ot{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:[]},ko(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=qo);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 Bo(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 Uo(this.options),c.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},c.backendConnector=new Ho(s(this.modules.backend),c.resourceStore,c,this.options),c.backendConnector.on("*",function(g){for(var p=arguments.length,y=new Array(p>1?p-1:0),m=1;m<p;m++)y[m-1]=arguments[m];t.emit(g,...y)}),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 yt(this.services,this.options),this.translator.on("*",function(g){for(var p=arguments.length,y=new Array(p>1?p-1:0),m=1;m<p;m++)y[m-1]=arguments[m];t.emit(g,...y)}),this.modules.external.forEach(g=>{g.init&&g.init(this)})}if(this.format=this.options.interpolation.format,r||(r=ot),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=Re(),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]:ot;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=Re();return t||(t=this.languages),n||(n=this.options.ns),r||(r=ot),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"&&Ei.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=Re();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(p=>`${u.keyPrefix}${c}${p}`):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=Re();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=Re();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 $e(t,n)}cloneInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ot;const r=t.forkResourceStore;r&&delete t.forkResourceStore;const i=$(b(b({},this.options),t),{isClone:!0}),s=new $e(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 yt(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 xi=$e.createInstance();xi.createInstance=$e.createInstance;const Go={error:"Error"},Vo={error:"Помилка"},Ir="common",Qo={en:Go,uk:Vo},V=xi.createInstance({defaultNS:Ir,resources:Ko(Qo,Ir),lng:"en",fallbackLng:"en"}),vn={i18nextInstance:V,initPromise:V.init().then(()=>V)},lt=new Map;lt.set("common",vn);const Tn=e=>{if(lt.has(e.namespace))return lt.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 lt.set(e.namespace,i),i};function Ko(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 Ci(e){return e&&e.replace(new RegExp("(?<!\\\\)'","g"),"\\'")}const Jo=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,Yo={"&":"&","&":"&","<":"<","<":"<",">":">",">":">","'":"'","'":"'",""":'"',""":'"'," ":" "," ":" ","©":"©","©":"©","®":"®","®":"®","…":"…","…":"…","/":"/","/":"/"},Xo=e=>Yo[e],Zo=e=>e.replace(Jo,Xo);let on={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:Zo};function ea(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};on=b(b({},on),e)}function ta(){return on}let Oi;function na(e){Oi=e}function ra(){return Oi}const ia={type:"3rdParty",init(e){ea(e.options.react),na(e)}},sa={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"},dashboard:{toolbar:{undo:"Undo",redo:"Redo",cancel:"Cancel",apply:"Apply",editLayout:"Edit Layout",viewMode:"View mode"}},jumpToDashboard:{defaultCaption:"Jump to",jumpableTooltip:"This widget is jumpable"}},oa={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:"Режим перегляду"}},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}}"},dataBrowser:{addFilter:"Додати фільтр",selectField:"Вибрати поле",configureFilter:"Налаштувати фільтр",noResults:"Немає результатів",searchPlaceholder:"Пошук"},jumpToDashboard:{jumpableTooltip:"З цього віджета можна перейти до інших віджетів",defaultCaption:"Перейти до"}},An="sdkUi",aa={en:sa,uk:oa};function Ni(){return Tn({resource:aa,plugins:[ia],language:"en",namespace:An})}const{i18nextInstance:Fi}=Ni(),ua={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"}},la={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",ca={en:ua,uk:la};function da(){return Tn({resource:ca,language:"en",namespace:_i})}const{i18nextInstance:fa}=da();function pa(){this.__data__=[],this.size=0}function Ge(e,t){return e===t||e!==e&&t!==t}function Nt(e,t){for(var n=e.length;n--;)if(Ge(e[n][0],t))return n;return-1}var ha=Array.prototype,ga=ha.splice;function ma(e){var t=this.__data__,n=Nt(t,e);if(n<0)return!1;var r=t.length-1;return n==r?t.pop():ga.call(t,n,1),--this.size,!0}function ba(e){var t=this.__data__,n=Nt(t,e);return n<0?void 0:t[n][1]}function ya(e){return Nt(this.__data__,e)>-1}function va(e,t){var n=this.__data__,r=Nt(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=pa;te.prototype.delete=ma;te.prototype.get=ba;te.prototype.has=ya;te.prototype.set=va;function Ta(){this.__data__=new te,this.size=0}function Sa(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function Aa(e){return this.__data__.get(e)}function wa(e){return this.__data__.has(e)}var Di=typeof global=="object"&&global&&global.Object===Object&&global,Ea=typeof self=="object"&&self&&self.Object===Object&&self,k=Di||Ea||Function("return this")(),B=k.Symbol,Mi=Object.prototype,xa=Mi.hasOwnProperty,Ca=Mi.toString,Le=B?B.toStringTag:void 0;function Oa(e){var t=xa.call(e,Le),n=e[Le];try{e[Le]=void 0;var r=!0}catch(s){}var i=Ca.call(e);return r&&(t?e[Le]=n:delete e[Le]),i}var Na=Object.prototype,Fa=Na.toString;function _a(e){return Fa.call(e)}var Da="[object Null]",Ma="[object Undefined]",Pr=B?B.toStringTag:void 0;function se(e){return e==null?e===void 0?Ma:Da:Pr&&Pr in Object(e)?Oa(e):_a(e)}function Y(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var Ra="[object AsyncFunction]",La="[object Function]",Ia="[object GeneratorFunction]",Pa="[object Proxy]";function Ft(e){if(!Y(e))return!1;var t=se(e);return t==La||t==Ia||t==Ra||t==Pa}var en=k["__core-js_shared__"],jr=function(){var e=/[^.]+$/.exec(en&&en.keys&&en.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function ja(e){return!!jr&&jr in e}var $a=Function.prototype,Ba=$a.toString;function he(e){if(e!=null){try{return Ba.call(e)}catch(t){}try{return e+""}catch(t){}}return""}var Ua=/[\\^$.*+?()[\]{}|]/g,Wa=/^\[object .+?Constructor\]$/,qa=Function.prototype,za=Object.prototype,Ha=qa.toString,ka=za.hasOwnProperty,Ga=RegExp("^"+Ha.call(ka).replace(Ua,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Va(e){if(!Y(e)||ja(e))return!1;var t=Ft(e)?Ga:Wa;return t.test(he(e))}function Qa(e,t){return e==null?void 0:e[t]}function ge(e,t){var n=Qa(e,t);return Va(n)?n:void 0}var Be=ge(k,"Map"),Ue=ge(Object,"create");function Ka(){this.__data__=Ue?Ue(null):{},this.size=0}function Ja(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Ya="__lodash_hash_undefined__",Xa=Object.prototype,Za=Xa.hasOwnProperty;function eu(e){var t=this.__data__;if(Ue){var n=t[e];return n===Ya?void 0:n}return Za.call(t,e)?t[e]:void 0}var tu=Object.prototype,nu=tu.hasOwnProperty;function ru(e){var t=this.__data__;return Ue?t[e]!==void 0:nu.call(t,e)}var iu="__lodash_hash_undefined__";function su(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Ue&&t===void 0?iu:t,this}function de(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])}}de.prototype.clear=Ka;de.prototype.delete=Ja;de.prototype.get=eu;de.prototype.has=ru;de.prototype.set=su;function ou(){this.size=0,this.__data__={hash:new de,map:new(Be||te),string:new de}}function au(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}function _t(e,t){var n=e.__data__;return au(t)?n[typeof t=="string"?"string":"hash"]:n.map}function uu(e){var t=_t(this,e).delete(e);return this.size-=t?1:0,t}function lu(e){return _t(this,e).get(e)}function cu(e){return _t(this,e).has(e)}function du(e,t){var n=_t(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=ou;ne.prototype.delete=uu;ne.prototype.get=lu;ne.prototype.has=cu;ne.prototype.set=du;var fu=200;function pu(e,t){var n=this.__data__;if(n instanceof te){var r=n.__data__;if(!Be||r.length<fu-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=Ta;q.prototype.delete=Sa;q.prototype.get=Aa;q.prototype.has=wa;q.prototype.set=pu;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 vt=function(){try{var e=ge(Object,"defineProperty");return e({},"",{}),e}catch(t){}}();function Ve(e,t,n){t=="__proto__"&&vt?vt(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}var hu=Object.prototype,gu=hu.hasOwnProperty;function wn(e,t,n){var r=e[t];(!(gu.call(e,t)&&Ge(r,n))||n===void 0&&!(t in e))&&Ve(e,t,n)}function Oe(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?Ve(n,a,u):wn(n,a,u)}return n}function mu(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}function z(e){return e!=null&&typeof e=="object"}var bu="[object Arguments]";function $r(e){return z(e)&&se(e)==bu}var Li=Object.prototype,yu=Li.hasOwnProperty,vu=Li.propertyIsEnumerable,We=$r(function(){return arguments}())?$r:function(e){return z(e)&&yu.call(e,"callee")&&!vu.call(e,"callee")},L=Array.isArray;function Tu(){return!1}var Ii=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Br=Ii&&typeof module=="object"&&module&&!module.nodeType&&module,Su=Br&&Br.exports===Ii,Ur=Su?k.Buffer:void 0,Au=Ur?Ur.isBuffer:void 0,qe=Au||Tu,wu=9007199254740991,Eu=/^(?:0|[1-9]\d*)$/;function Dt(e,t){var n=typeof e;return t=t==null?wu:t,!!t&&(n=="number"||n!="symbol"&&Eu.test(e))&&e>-1&&e%1==0&&e<t}var xu=9007199254740991;function En(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=xu}var Cu="[object Arguments]",Ou="[object Array]",Nu="[object Boolean]",Fu="[object Date]",_u="[object Error]",Du="[object Function]",Mu="[object Map]",Ru="[object Number]",Lu="[object Object]",Iu="[object RegExp]",Pu="[object Set]",ju="[object String]",$u="[object WeakMap]",Bu="[object ArrayBuffer]",Uu="[object DataView]",Wu="[object Float32Array]",qu="[object Float64Array]",zu="[object Int8Array]",Hu="[object Int16Array]",ku="[object Int32Array]",Gu="[object Uint8Array]",Vu="[object Uint8ClampedArray]",Qu="[object Uint16Array]",Ku="[object Uint32Array]",O={};O[Wu]=O[qu]=O[zu]=O[Hu]=O[ku]=O[Gu]=O[Vu]=O[Qu]=O[Ku]=!0;O[Cu]=O[Ou]=O[Bu]=O[Nu]=O[Uu]=O[Fu]=O[_u]=O[Du]=O[Mu]=O[Ru]=O[Lu]=O[Iu]=O[Pu]=O[ju]=O[$u]=!1;function Ju(e){return z(e)&&En(e.length)&&!!O[se(e)]}function Mt(e){return function(t){return e(t)}}var Pi=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Pe=Pi&&typeof module=="object"&&module&&!module.nodeType&&module,Yu=Pe&&Pe.exports===Pi,tn=Yu&&Di.process,fe=function(){try{var e=Pe&&Pe.require&&Pe.require("util").types;return e||tn&&tn.binding&&tn.binding("util")}catch(t){}}(),Wr=fe&&fe.isTypedArray,xn=Wr?Mt(Wr):Ju,Xu=Object.prototype,Zu=Xu.hasOwnProperty;function ji(e,t){var n=L(e),r=!n&&We(e),i=!n&&!r&&qe(e),s=!n&&!r&&!i&&xn(e),o=n||r||i||s,a=o?mu(e.length,String):[],u=a.length;for(var l in e)(t||Zu.call(e,l))&&!(o&&(l=="length"||i&&(l=="offset"||l=="parent")||s&&(l=="buffer"||l=="byteLength"||l=="byteOffset")||Dt(l,u)))&&a.push(l);return a}var el=Object.prototype;function Cn(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||el;return e===n}function $i(e,t){return function(n){return e(t(n))}}var tl=$i(Object.keys,Object),nl=Object.prototype,rl=nl.hasOwnProperty;function il(e){if(!Cn(e))return tl(e);var t=[];for(var n in Object(e))rl.call(e,n)&&n!="constructor"&&t.push(n);return t}function Qe(e){return e!=null&&En(e.length)&&!Ft(e)}function Ke(e){return Qe(e)?ji(e):il(e)}function sl(e,t){return e&&Oe(t,Ke(t),e)}function ol(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}var al=Object.prototype,ul=al.hasOwnProperty;function ll(e){if(!Y(e))return ol(e);var t=Cn(e),n=[];for(var r in e)r=="constructor"&&(t||!ul.call(e,r))||n.push(r);return n}function Je(e){return Qe(e)?ji(e,!0):ll(e)}function cl(e,t){return e&&Oe(t,Je(t),e)}var Bi=typeof exports=="object"&&exports&&!exports.nodeType&&exports,qr=Bi&&typeof module=="object"&&module&&!module.nodeType&&module,dl=qr&&qr.exports===Bi,zr=dl?k.Buffer:void 0,Hr=zr?zr.allocUnsafe:void 0;function Ui(e,t){if(t)return e.slice();var n=e.length,r=Hr?Hr(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 fl(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 pl=Object.prototype,hl=pl.propertyIsEnumerable,kr=Object.getOwnPropertySymbols,Nn=kr?function(e){return e==null?[]:(e=Object(e),fl(kr(e),function(t){return hl.call(e,t)}))}:Wi;function gl(e,t){return Oe(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),ml=Object.getOwnPropertySymbols,qi=ml?function(e){for(var t=[];e;)Fn(t,Nn(e)),e=_n(e);return t}:Wi;function bl(e,t){return Oe(e,qi(e),t)}function zi(e,t,n){var r=t(e);return L(e)?r:Fn(r,n(e))}function an(e){return zi(e,Ke,Nn)}function Dn(e){return zi(e,Je,qi)}var un=ge(k,"DataView"),ln=ge(k,"Promise"),Tt=ge(k,"Set"),St=ge(k,"WeakMap"),Gr="[object Map]",yl="[object Object]",Vr="[object Promise]",Qr="[object Set]",Kr="[object WeakMap]",Jr="[object DataView]",vl=he(un),Tl=he(Be),Sl=he(ln),Al=he(Tt),wl=he(St),W=se;(un&&W(new un(new ArrayBuffer(1)))!=Jr||Be&&W(new Be)!=Gr||ln&&W(ln.resolve())!=Vr||Tt&&W(new Tt)!=Qr||St&&W(new St)!=Kr)&&(W=function(e){var t=se(e),n=t==yl?e.constructor:void 0,r=n?he(n):"";if(r)switch(r){case vl:return Jr;case Tl:return Gr;case Sl:return Vr;case Al:return Qr;case wl:return Kr}return t});var El=Object.prototype,xl=El.hasOwnProperty;function Cl(e){var t=e.length,n=new e.constructor(t);return t&&typeof e[0]=="string"&&xl.call(e,"index")&&(n.index=e.index,n.input=e.input),n}var At=k.Uint8Array;function Mn(e){var t=new e.constructor(e.byteLength);return new At(t).set(new At(e)),t}function Ol(e,t){var n=t?Mn(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}var Nl=/\w*$/;function Fl(e){var t=new e.constructor(e.source,Nl.exec(e));return t.lastIndex=e.lastIndex,t}var Yr=B?B.prototype:void 0,Xr=Yr?Yr.valueOf:void 0;function _l(e){return Xr?Object(Xr.call(e)):{}}function Hi(e,t){var n=t?Mn(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}var Dl="[object Boolean]",Ml="[object Date]",Rl="[object Map]",Ll="[object Number]",Il="[object RegExp]",Pl="[object Set]",jl="[object String]",$l="[object Symbol]",Bl="[object ArrayBuffer]",Ul="[object DataView]",Wl="[object Float32Array]",ql="[object Float64Array]",zl="[object Int8Array]",Hl="[object Int16Array]",kl="[object Int32Array]",Gl="[object Uint8Array]",Vl="[object Uint8ClampedArray]",Ql="[object Uint16Array]",Kl="[object Uint32Array]";function Jl(e,t,n){var r=e.constructor;switch(t){case Bl:return Mn(e);case Dl:case Ml:return new r(+e);case Ul:return Ol(e,n);case Wl:case ql:case zl:case Hl:case kl:case Gl:case Vl:case Ql:case Kl:return Hi(e,n);case Rl:return new r;case Ll:case jl:return new r(e);case Il:return Fl(e);case Pl:return new r;case $l:return _l(e)}}var Zr=Object.create,ki=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"&&!Cn(e)?ki(_n(e)):{}}var Yl="[object Map]";function Xl(e){return z(e)&&W(e)==Yl}var ei=fe&&fe.isMap,Zl=ei?Mt(ei):Xl,ec="[object Set]";function tc(e){return z(e)&&W(e)==ec}var ti=fe&&fe.isSet,nc=ti?Mt(ti):tc,rc=1,ic=2,sc=4,Vi="[object Arguments]",oc="[object Array]",ac="[object Boolean]",uc="[object Date]",lc="[object Error]",Qi="[object Function]",cc="[object GeneratorFunction]",dc="[object Map]",fc="[object Number]",Ki="[object Object]",pc="[object RegExp]",hc="[object Set]",gc="[object String]",mc="[object Symbol]",bc="[object WeakMap]",yc="[object ArrayBuffer]",vc="[object DataView]",Tc="[object Float32Array]",Sc="[object Float64Array]",Ac="[object Int8Array]",wc="[object Int16Array]",Ec="[object Int32Array]",xc="[object Uint8Array]",Cc="[object Uint8ClampedArray]",Oc="[object Uint16Array]",Nc="[object Uint32Array]",C={};C[Vi]=C[oc]=C[yc]=C[vc]=C[ac]=C[uc]=C[Tc]=C[Sc]=C[Ac]=C[wc]=C[Ec]=C[dc]=C[fc]=C[Ki]=C[pc]=C[hc]=C[gc]=C[mc]=C[xc]=C[Cc]=C[Oc]=C[Nc]=!0;C[lc]=C[Qi]=C[bc]=!1;function Se(e,t,n,r,i,s){var o,a=t&rc,u=t&ic,l=t≻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=Cl(e),!a)return On(e,o)}else{var f=W(e),c=f==Qi||f==cc;if(qe(e))return Ui(e,a);if(f==Ki||f==Vi||c&&!i){if(o=u||c?{}:Gi(e),!a)return u?bl(e,cl(o,e)):gl(e,sl(o,e))}else{if(!C[f])return i?e:{};o=Jl(e,f,a)}}s||(s=new q);var g=s.get(e);if(g)return g;s.set(e,o),nc(e)?e.forEach(function(m){o.add(Se(m,t,n,m,e,s))}):Zl(e)&&e.forEach(function(m,w){o.set(w,Se(m,t,n,w,e,s))});var p=l?u?Dn:an:u?Je:Ke,y=d?void 0:p(e);return Ri(y||e,function(m,w){y&&(w=m,m=e[w]),wn(o,w,Se(m,t,n,w,e,s))}),o}var Fc=1,_c=4;function Rn(e){return Se(e,Fc|_c)}function Dc(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=Dc();function Yi(e,t){return e&&Ji(e,t,Ke)}var Mc="__lodash_hash_undefined__";function Rc(e){return this.__data__.set(e,Mc),this}function Lc(e){return this.__data__.has(e)}function ze(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new ne;++t<n;)this.add(e[t])}ze.prototype.add=ze.prototype.push=Rc;ze.prototype.has=Lc;function Ic(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 Pc=1,jc=2;function Zi(e,t,n,r,i,s){var o=n&Pc,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&jc?new ze:void 0;for(s.set(e,t),s.set(t,e);++f<a;){var p=e[f],y=t[f];if(r)var m=o?r(y,p,f,t,e,s):r(p,y,f,e,t,s);if(m!==void 0){if(m)continue;c=!1;break}if(g){if(!Ic(t,function(w,F){if(!Xi(g,F)&&(p===w||i(p,w,n,r,s)))return g.push(F)})){c=!1;break}}else if(!(p===y||i(p,y,n,r,s))){c=!1;break}}return s.delete(e),s.delete(t),c}function $c(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 Bc=1,Uc=2,Wc="[object Boolean]",qc="[object Date]",zc="[object Error]",Hc="[object Map]",kc="[object Number]",Gc="[object RegExp]",Vc="[object Set]",Qc="[object String]",Kc="[object Symbol]",Jc="[object ArrayBuffer]",Yc="[object DataView]",ni=B?B.prototype:void 0,nn=ni?ni.valueOf:void 0;function Xc(e,t,n,r,i,s,o){switch(n){case Yc:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case Jc:return!(e.byteLength!=t.byteLength||!s(new At(e),new At(t)));case Wc:case qc:case kc:return Ge(+e,+t);case zc:return e.name==t.name&&e.message==t.message;case Gc:case Qc:return e==t+"";case Hc:var a=$c;case Vc:var u=r&Bc;if(a||(a=es),e.size!=t.size&&!u)return!1;var l=o.get(e);if(l)return l==t;r|=Uc,o.set(e,t);var d=Zi(a(e),a(t),r,i,s,o);return o.delete(e),d;case Kc:if(nn)return nn.call(e)==nn.call(t)}return!1}var Zc=1,ed=Object.prototype,td=ed.hasOwnProperty;function nd(e,t,n,r,i,s){var o=n&Zc,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:td.call(t,c)))return!1}var g=s.get(e),p=s.get(t);if(g&&p)return g==t&&p==e;var y=!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)){y=!1;break}m||(m=c=="constructor")}if(y&&!m){var x=e.constructor,D=t.constructor;x!=D&&"constructor"in e&&"constructor"in t&&!(typeof x=="function"&&x instanceof x&&typeof D=="function"&&D instanceof D)&&(y=!1)}return s.delete(e),s.delete(t),y}var rd=1,ri="[object Arguments]",ii="[object Array]",at="[object Object]",id=Object.prototype,si=id.hasOwnProperty;function sd(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?at:u,l=l==ri?at:l;var d=u==at,f=l==at,c=u==l;if(c&&qe(e)){if(!qe(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):Xc(e,t,u,n,r,i,s);if(!(n&rd)){var g=d&&si.call(e,"__wrapped__"),p=f&&si.call(t,"__wrapped__");if(g||p){var y=g?e.value():e,m=p?t.value():t;return s||(s=new q),i(y,m,n,r,s)}}return c?(s||(s=new q),nd(e,t,n,r,i,s)):!1}function Ye(e,t,n,r,i){return e===t?!0:e==null||t==null||!z(e)&&!z(t)?e!==e&&t!==t:sd(e,t,n,r,Ye,i)}var od=1,ad=2;function ud(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?Ye(l,u,od|ad,r,d):f))return!1}}return!0}function ts(e){return e===e&&!Y(e)}function ld(e){for(var t=Ke(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 cd(e){var t=ld(e);return t.length==1&&t[0][2]?ns(t[0][0],t[0][1]):function(n){return n===e||ud(n,e,t)}}var dd="[object Symbol]";function Rt(e){return typeof e=="symbol"||z(e)&&se(e)==dd}var fd=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,pd=/^\w*$/;function Ln(e,t){if(L(e))return!1;var n=typeof e;return n=="number"||n=="symbol"||n=="boolean"||e==null||Rt(e)?!0:pd.test(e)||!fd.test(e)||t!=null&&e in Object(t)}var hd="Expected a function";function In(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(hd);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 gd=500;function md(e){var t=In(e,function(r){return n.size===gd&&n.clear(),r}),n=t.cache;return t}var bd=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,yd=/\\(\\)?/g,vd=md(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(bd,function(n,r,i,s){t.push(i?s.replace(yd,"$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 Td=1/0,oi=B?B.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(Rt(e))return ai?ai.call(e):"";var t=e+"";return t=="0"&&1/e==-Td?"-0":t}function rs(e){return e==null?"":jn(e)}function Xe(e,t){return L(e)?e:Ln(e,t)?[e]:vd(rs(e))}var Sd=1/0;function Ne(e){if(typeof e=="string"||Rt(e))return e;var t=e+"";return t=="0"&&1/e==-Sd?"-0":t}function Lt(e,t){t=Xe(t,e);for(var n=0,r=t.length;e!=null&&n<r;)e=e[Ne(t[n++])];return n&&n==r?e:void 0}function is(e,t,n){var r=e==null?void 0:Lt(e,t);return r===void 0?n:r}function Ad(e,t){return e!=null&&t in Object(e)}function wd(e,t,n){t=Xe(t,e);for(var r=-1,i=t.length,s=!1;++r<i;){var o=Ne(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&&En(i)&&Dt(o,i)&&(L(e)||We(e)))}function ss(e,t){return e!=null&&wd(e,t,Ad)}var Ed=1,xd=2;function Cd(e,t){return Ln(e)&&ts(t)?ns(Ne(e),t):function(n){var r=is(n,e);return r===void 0&&r===t?ss(n,e):Ye(t,r,Ed|xd)}}function It(e){return e}function Od(e){return function(t){return t==null?void 0:t[e]}}function Nd(e){return function(t){return Lt(t,e)}}function Fd(e){return Ln(e)?Od(Ne(e)):Nd(e)}function os(e){return typeof e=="function"?e:e==null?It:typeof e=="object"?L(e)?Cd(e[0],e[1]):cd(e):Fd(e)}function _d(e,t){var n={};return t=os(t),Yi(e,function(r,i,s){Ve(n,i,t(r,i,s))}),n}function Dd(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 He="|",Md=/\[object ([HTML|SVG](.*)Element)\]/,Rd={"[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},Ld={"[object Arguments]":1,"[object Array]":2},as={"[object Generator]":1,"[object Promise]":2,"[object WeakMap]":3,"[object WeakRef]":4,"[object WeakSet]":5},Id={"[object AsyncFunction]":1,"[object AsyncGeneratorFunction]":2,"[object Boolean]":3,"[object Function]":4,"[object GeneratorFunction]":5,"[object Number]":6,"[object String]":7},Pd={"[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},jd={"[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},Ie={bigint:"i",boolean:"b",empty:"e",function:"g",number:"n",object:"o",string:"s",symbol:"s"};function $d(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 Ie.object+He+Rd[e]+He+t}var ui=new WeakMap,Bd=0;function cn(e,t){var n=ui.get(e);if(n)return n;var r=R(t,"NOT_ENUMERABLE"+He+Bd++);return ui.set(e,r),r}var Ud=Object.prototype.toString;function Wd(e,t,n){if(jd[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+He+e.stack);if(t==="[object DocumentFragment]")return R(t,Gd(e));var r=t.match(Md);return r?R("ELEMENT",r[1]+He+e.outerHTML):as[t]?cn(e,t):Id[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)):Ld[e]?R(e,qd(t,n)):e==="[object Map]"?R(e,Vd(t,n)):e==="[object Set]"?R(e,Qd(t,n)):Pd[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 qd(e,t){for(var n=e.length,r=new Array(n);--n>=0;)r[n]=Ee(e[n],t);return r.join()}function zd(e){return Buffer.from(e).toString("utf8")}function Hd(e){return String.fromCharCode.apply(null,new Uint16Array(e))}function kd(){return"UNSUPPORTED"}function Gd(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"?zd:typeof Uint16Array=="function"?Hd:kd;function Vd(e,t){var n=new Array(e.size),r=0;for(e.forEach(function(i,s){n[r++]=[Ee(s,t),Ee(i,t)]}),$n(n,$d);--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]+":"+Ee(e[n[s]],t);return"{"+i.join()+"}"}function Qd(e,t){var n=new Array(e.size),r=0;return e.forEach(function(i){n[r++]=Ee(i,t)}),"["+$n(n,us).join()+"]"}function Ee(e,t){var n=typeof e;return e==null||n==="undefined"?Ie.empty+e:n==="object"?Wd(e,Ud.call(e),t||{cache:new WeakMap,id:1}):n==="function"||n==="symbol"?Ie[n]+e.toString():n==="boolean"?Ie.boolean+ +e:Ie[n]+e}function ls(e){return Dd(Ee(e,void 0))}function dn(e,t,n){(n!==void 0&&!Ge(e[t],n)||n===void 0&&!(t in e))&&Ve(e,t,n)}function cs(e){return z(e)&&Qe(e)}var Kd="[object Object]",Jd=Function.prototype,Yd=Object.prototype,ds=Jd.toString,Xd=Yd.hasOwnProperty,Zd=ds.call(Object);function fs(e){if(!z(e)||se(e)!=Kd)return!1;var t=_n(e);if(t===null)return!0;var n=Xd.call(t,"constructor")&&t.constructor;return typeof n=="function"&&n instanceof n&&ds.call(n)==Zd}function fn(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}function ef(e){return Oe(e,Je(e))}function tf(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&&qe(u),p=!c&&!g&&xn(u);d=u,c||g||p?L(a)?d=a:cs(a)?d=On(a):g?(f=!1,d=Ui(u,!0)):p?(f=!1,d=Hi(u,!0)):d=[]:fs(u)||We(u)?(d=a,We(a)?d=ef(a):(!Y(a)||Ft(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))tf(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)}},Je)}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 nf(e){return function(){return e}}var rf=vt?function(e,t){return vt(e,"toString",{configurable:!0,enumerable:!1,value:nf(t),writable:!0})}:It,sf=800,of=16,af=Date.now;function gs(e){var t=0,n=0;return function(){var r=af(),i=of-(r-n);if(n=r,i>0){if(++t>=sf)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}var Un=gs(rf);function ms(e,t){return Un(hs(e,t,It),e+"")}function bs(e,t,n){if(!Y(n))return!1;var r=typeof t;return(r=="number"?Qe(n)&&Dt(t,n.length):r=="string"&&t in n)?Ge(n[t],e):!1}function ys(e){return ms(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&&bs(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=ys(function(e,t,n){Bn(e,t,n)});function vs(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}function Ts(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 uf(e,t){return t.length<2?e:Lt(e,Ts(t,0,-1))}function lf(e,t){return t=Xe(t,e),e=uf(e,t),e==null||delete e[Ne(vs(t))]}function cf(e){return fs(e)?void 0:e}var pi=B?B.isConcatSpreadable:void 0;function df(e){return L(e)||We(e)||!!(pi&&e&&e[pi])}function Ss(e,t,n,r,i){var s=-1,o=e.length;for(n||(n=df),i||(i=[]);++s<o;){var a=e[s];n(a)?Fn(i,a):r||(i[i.length]=a)}return i}function ff(e){var t=e==null?0:e.length;return t?Ss(e):[]}function As(e){return Un(hs(e,void 0,ff),e+"")}var pf=1,hf=2,gf=4,ws=As(function(e,t){var n={};if(e==null)return n;var r=!1;t=Pn(t,function(s){return s=Xe(s,e),r||(r=s.length>1),s}),Oe(e,Dn(e),n),r&&(n=Se(n,pf|hf|gf,cf));for(var i=t.length;i--;)lf(n,t[i]);return n});let Ze=class extends Sn{constructor(t,n){super(_i,{key:t,interpolationOptions:n},fa.t)}};class Pt{constructor(t,n,r,i,s){this.__serializable="DimensionalElement",this._name=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 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}},h={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[h.Years,h.Quarters,h.Months,h.Weeks,h.Days,h.Hours,h.MinutesRoundTo30,h.MinutesRoundTo15,h.Minutes,h.Seconds,h.AggHours,h.AggMinutesRoundTo30,h.AggMinutesRoundTo15,h.AggMinutesRoundTo1]}};exports.DataType=void 0;(function(e){e.TEXT="text",e.NUMERIC="numeric",e.DATETIME="datetime"})(exports.DataType=exports.DataType||(exports.DataType={}));var je;(function(e){e.ASC="asc",e.DESC="desc"})(je=je||(je={}));var rn;(function(e){e.PRE="pre",e.POST="post"})(rn=rn||(rn={}));function pn(e,t=[]){try{return e==null?String(e):typeof e=="string"?`'${Ci(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 mf(e){let t=e.length;for(;t>0&&e[t-1]===void 0;)t--;return e.slice(0,t)}function jt(e,t){return function(n){return function(...r){const i=mf(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 v(e,t){return jt("filterFactory",t)(e)}function hi(e,t){return jt("filterFactory.logic",t)(e)}function bf(e,t){return jt("analyticsFactory",t)(e)}function T(e,t){return jt("measureFactory",t)(e)}const Es={StandardCompetition:"1224",ModifiedCompetition:"1334",Dense:"1223",Ordinal:"1234"},xs={Ascending:"ASC",Descending:"DESC"};function pe(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 pe(s,i,e),r&&s.push(`, ${r}`),s.push(")"),new J(t,s.join(""),i)}const zn=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 $t(e,t,n,r,i){const s=[],o={};i===!0&&s.push("("),pe(s,o,e),s.push(t),pe(s,o,n),i===!0&&s.push(")");const a=s.join("");return new J(r!=null?r:a,a,o)}const H=T((e,t,n,r)=>new ce(n!=null?n:`${t.toString()} ${e.name}`,e,t,r),"aggregate"),yf=T(e=>new J(`${e}`,`${e}`,{}),"constant"),wt=T((e,t,n)=>H(e,S.Sum,t,n),"sum"),Cs=T((e,t,n)=>H(e,S.Average,t,n),"average"),Os=T((e,t,n)=>H(e,S.Average,t,n),"avg"),Bt=T((e,t,n)=>H(e,S.Min,t,n),"min"),Ut=T((e,t,n)=>H(e,S.Max,t,n),"max"),Hn=T((e,t,n)=>H(e,S.Median,t,n),"median"),kn=T((e,t,n)=>H(e,S.Count,t,n),"count"),Wt=T((e,t,n)=>H(e,S.CountDistinct,t,n),"countDistinct"),vf=T((e,t,n,r)=>{const i=[],s={};i.push("("),pe(i,s,e),t.forEach(a=>{i.push(","),pe(i,s,a)}),i.push(")");const o=i.join("");return new J(n!=null?n:o,o,s,r)},"measuredValue"),Tf=T((e,t,n,r)=>$t(e,"+",t,n,r),"add"),Sf=T((e,t,n,r)=>$t(e,"-",t,n,r),"subtract"),Af=T((e,t,n,r)=>$t(e,"*",t,n,r),"multiply"),wf=T((e,t,n,r)=>$t(e,"/",t,n,r),"divide"),Ef=T((e,t)=>N(e,t!=null?t:"YTD "+e.name,"YTDSum"),"yearToDateSum"),xf=T((e,t)=>N(e,t!=null?t:"QTD "+t,"QTDSum"),"quarterToDateSum"),Cf=T((e,t)=>N(e,t!=null?t:"MTD "+e.name,"MTDSum"),"monthToDateSum"),Of=T((e,t)=>N(e,t!=null?t:"MTD "+e.name,"WTDSum"),"weekToDateSum"),Nf=T((e,t,n)=>N(e,n!=null?n:"Running Sum "+e.name,"RSum"),"runningSum"),Ff=T((e,t)=>N(e,t!=null?t:e.name+" Growth","growth"),"growth"),_f=T((e,t)=>N(e,t!=null?t:e.name+" Growth","growthrate"),"growthRate"),Df=T((e,t)=>N(e,t!=null?t:e.name+" Growth","growthpastweek"),"growthPastWeek"),Mf=T((e,t)=>N(e,t!=null?t:e.name+" Growth","growthpastmonth"),"growthPastMonth"),Rf=T((e,t)=>N(e,t!=null?t:e.name+" Growth","growthpastquarter"),"growthPastQuarter"),Lf=T((e,t)=>N(e,t!=null?t:e.name+" Growth","growthpastyear"),"growthPastYear"),If=T((e,t)=>N(e,t!=null?t:e.name+" Difference","diffpastperiod"),"difference"),Pf=T((e,t)=>N(e,t!=null?t:e.name+" Difference","diffpastweek"),"diffPastWeek"),jf=T((e,t)=>N(e,t!=null?t:e.name+" Difference","diffpastmonth"),"diffPastMonth"),$f=T((e,t)=>N(e,t!=null?t:e.name+" Difference","diffpastquarter"),"diffPastQuarter"),Bf=T((e,t)=>N(e,t!=null?t:e.name+" Difference","diffpastyear"),"diffPastYear"),Uf=T((e,t)=>N(e,t!=null?t:e.name+" Past Day","pastday"),"pastDay"),Wf=T((e,t)=>N(e,t!=null?t:e.name+" Past Week","pastweek"),"pastWeek"),qf=T((e,t)=>N(e,t!=null?t:e.name+" Past Month","pastmonth"),"pastMonth"),zf=T((e,t)=>N(e,t!=null?t:e.name+" Past Quarter","pastquarter"),"pastQuarter"),Hf=T((e,t)=>N(e,t!=null?t:e.name+" Past Year","pastyear"),"pastYear"),kf=T((e,t)=>N(e,t!=null?t:e.name+" Contribution","contribution"),"contribution"),Ns=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"),Fs=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"),Gf=T((e,t,n=xs.Descending,r=Es.StandardCompetition,i=[])=>{const s=[],o={};s.push("rank("),pe(s,o,e),s.push(`,${n},${r}`),i.forEach(u=>{s.push(","),pe(s,o,u)}),s.push(")");const a=s.join("");return t||(t=`${e.name} rank`),new J(t,a,o)},"rank"),Vf=Object.freeze(Object.defineProperty({__proto__:null,RankingSortTypes:xs,RankingTypes:Es,add:Tf,aggregate:H,average:Cs,avg:Os,constant:yf,contribution:kf,count:kn,countDistinct:Wt,customFormula:zn,diffPastMonth:jf,diffPastQuarter:$f,diffPastWeek:Pf,diffPastYear:Bf,difference:If,divide:wf,forecast:Fs,growth:Ff,growthPastMonth:Mf,growthPastQuarter:Rf,growthPastWeek:Df,growthPastYear:Lf,growthRate:_f,max:Ut,measuredValue:vf,median:Hn,min:Bt,monthToDateSum:Cf,multiply:Af,pastDay:Uf,pastMonth:qf,pastQuarter:zf,pastWeek:Wf,pastYear:Hf,quarterToDateSum:xf,rank:Gf,runningSum:Nf,subtract:Sf,sum:wt,trend:Ns,weekToDateSum:Of,yearToDateSum:Ef},Symbol.toStringTag,{value:"Module"}));class Gn extends Pt{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 ce 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 ce(this.name,this.attribute,this.aggregation,this._format,this.description,t,this.dataSource,this.composeCode)}format(t){return new ce(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:ce.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 _s=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 Qf=e=>!!(e&&e.__serializable==="DimensionalCalculatedMeasure");class Et 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 Et(this.name,this.attribute,this._format,this.description,t,this.dataSource,this.composeCode)}format(t){return new Et(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 wt(this.attribute,void 0,t).sort(this._sort)}average(t){return Cs(this.attribute,void 0,t).sort(this._sort)}median(t){return Hn(this.attribute,void 0,t).sort(this._sort)}min(t){return Bt(this.attribute,void 0,t).sort(this._sort)}max(t){return Ut(this.attribute,void 0,t).sort(this._sort)}count(t){return kn(this.attribute,void 0,t).sort(this._sort)}countDistinct(t){return Wt(this.attribute,void 0,t).sort(this._sort)}}const Kf=e=>!!(e&&e.__serializable==="DimensionalMeasureTemplate");function Ds(e,t){return Ye(e,t)}const qt=()=>({guid:io(13),disabled:!1,locked:!1}),Ms=()=>Object.assign(Object.assign({},qt()),{excludeMembers:!1,enableMultiSelection:!0,deactivatedMembers:[]});function Jf(e){return"excludeMembers"in e}const Rs=e=>{const t=Jf(e)?Ms():qt();return Object.fromEntries(Object.entries(e).filter(([n,r])=>!Ds(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"},xe={From:"from",To:"to",Last:"last",Next:"next",Anchor:"Anchor"},Ls={Union:"or",Intersection:"and",Exclude:"exclude"},Vn={Top:"top",Bottom:"bottom"},U={logicalAttribute:"logicalAttribute",members:"members",exclude:"exclude",measure:"measure",ranking:"ranking",text:"text",numeric:"numeric",dateRange:"dateRange",relativeDate:"relativeDate",cascading:"cascading",advanced:"advanced"};class j extends Pt{constructor(t,n,r,i){super("filter",A.Filter,void 0,void 0,i),this.__serializable="AbstractFilter",this.filterType=n,this.isScope=!0,j.checkAttributeSupport(t),this.attribute=t,this.config=Wn({},qt(),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 j.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===h.Hours||n===h.MinutesRoundTo30||n===h.MinutesRoundTo15||n===h.Minutes||n===h.Seconds)throw new Ze("errors.filter.unsupportedDatetimeLevel")}static disabledJaql(t){return t?{filter:{}}:{jaql:{filter:{}}}}}class Qn extends j{constructor(t,n,r,i){super(t[0].attribute,U.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 j{constructor(t,n,r,i){if(super(t,U.members,void 0,i),this.__serializable="MembersFilter",this.members=n!=null?n:[],this.members.filter(s=>s==null).length>0)throw new Ze("errors.filter.membersFilterNullMember",{attributeId:t.id});this.config=Wn({},Ms(),r!=null?r:{})}get id(){return`${this.attribute.id}_${this.members.map(t=>t.toString()).join()}`}get name(){return ls([this.jaql(),ws(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 j{constructor(t,n,r){super(t[0].attribute,U.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?j.disabledJaql(t):this.filters.map(n=>(n.isScope=!0,n.jaql(t)))}}class js extends j{constructor(t,n,r,i){super(t.attribute,U.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 zt extends j{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 zt{constructor(t,n,r,i,s,o,a,u){super(t,U.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 j.disabledJaql(t);const n=super.jaql(t);return _s(this.measure)&&Object.entries(this.measure.jaql().jaql).forEach(([r,i])=>{n.jaql[r]=i}),n}}class Kn extends j{constructor(t,n,r,i,s,o){super(t,U.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 Bs extends zt{constructor(t,n,r,i,s,o,a){super(t,U.numeric,n,r,i,s,o,a),this.__serializable="NumericFilter"}serialize(){return super.serialize()}}class Z extends zt{constructor(t,n,r,i,s){super(t,U.text,n,r,void 0,void 0,i,s),this.__serializable="TextFilter"}serialize(){return super.serialize()}}class Us extends zt{constructor(t,n,r,i,s){super(t,U.dateRange,xe.From,n,xe.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 Ht extends j{constructor(t,n,r,i,s,o,a){super(t,U.relativeDate,o,a),this.__serializable="RelativeDateFilter",i||(i=xe.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 j{constructor(t,n,r,i){super(t,U.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 Yf(e){return e&&e.__serializable==="CustomFilter"}function Xf(e){return e&&e.__serializable==="MembersFilter"}function Zf(e){return e&&e.__serializable==="NumericFilter"}function ep(e){return e&&e.__serializable==="RankingFilter"}function tp(e){return e&&e.__serializable==="MeasureFilter"}function np(e){return e&&e.__serializable==="ExcludeFilter"}function rp(e){return e&&e.__serializable==="LogicalAttributeFilter"}function et(e){return e&&e.__serializable==="CascadingFilter"}function ip(e){return e&&e.__serializable==="RelativeDateFilter"}function sp(e){return e&&e.__serializable==="TextFilter"}function op(e){return e&&e.__serializable==="DateRangeFilter"}const qs=v((e,t)=>new Qn(e,Ls.Union,t),"union"),zs=v((e,t)=>new Qn(e,Ls.Intersection,t),"intersection"),kt=v((e,t,n)=>new js(e,t,n),"exclude"),Jn=v((e,t,n)=>new Z(e,X.DoesntContain,t,n),"doesntContain"),Yn=v((e,t,n)=>new Z(e,X.DoesntEndWith,t,n),"doesntEndWith"),Xn=v((e,t,n)=>new Z(e,X.DoesntStartWith,t,n),"doesntStartWith"),Zn=v((e,t,n)=>new Z(e,X.Contains,t,n),"contains"),er=v((e,t,n)=>new Z(e,X.EndsWith,t,n),"endsWith"),tr=v((e,t,n)=>new Z(e,X.StartsWith,t,n),"startsWith"),Hs=v((e,t,n)=>new Z(e,X.Like,t,n),"like"),nr=v((e,t,n)=>typeof t=="string"?new Z(e,X.DoesntEqual,t,n):re(e,_.DoesntEqual,t,void 0,void 0,n),"doesntEqual"),rr=v((e,t,n)=>typeof t=="string"?new Z(e,X.Equals,t,n):re(e,_.Equals,t,void 0,void 0,n),"equals"),ir=v((e,t,n)=>re(e,_.FromNotEqual,t,void 0,void 0,n),"greaterThan"),sr=v((e,t,n)=>re(e,_.From,t,void 0,void 0,n),"greaterThanOrEqual"),or=v((e,t,n)=>re(e,_.ToNotEqual,t,void 0,void 0,n),"lessThan"),ar=v((e,t,n)=>re(e,_.To,t,void 0,void 0,n),"lessThanOrEqual"),ke=v((e,t,n,r)=>re(e,_.From,t,_.To,n,r),"between"),ap=v((e,t,n,r)=>re(e,_.FromNotEqual,t,_.ToNotEqual,n,r),"betweenNotEqual"),re=v((e,t,n,r,i,s)=>new Bs(e,t,n,r,i,s),"numeric"),tt=v((e,t,n)=>new Is(e,t,n),"members"),up=v((e,t,n)=>nt(e,t,void 0,n),"dateFrom"),lp=v((e,t,n)=>nt(e,void 0,t,n),"dateTo"),nt=v((e,t,n,r)=>new Us(e,t,n,r),"dateRange"),ks=v((e,t,n,r,i)=>new Ht(e,t,n,void 0,r,i),"dateRelative"),ur=v((e,t,n,r,i)=>new Ht(e,t,n,xe.Next,r,i),"dateRelativeFrom"),me=v((e,t,n,r,i)=>new Ht(e,t,n,xe.Last,r,i),"dateRelativeTo"),cp=v((e,t)=>me(e.Years,0,1,void 0,t),"thisYear"),dp=v((e,t)=>me(e.Months,0,1,void 0,t),"thisMonth"),fp=v((e,t)=>me(e.Quarters,0,1,void 0,t),"thisQuarter"),pp=v((e,t)=>me(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=v((e,t,n)=>oe(e.attribute,e,_.Equals,t,void 0,void 0,n),"measureEquals"),Vs=v((e,t,n)=>oe(e.attribute,e,_.FromNotEqual,t,void 0,void 0,n),"measureGreaterThan"),Qs=v((e,t,n)=>oe(e.attribute,e,_.From,t,void 0,void 0,n),"measureGreaterThanOrEqual"),Ks=v((e,t,n)=>oe(e.attribute,e,_.To,t,void 0,void 0,n),"measureLessThanOrEqual"),Js=v((e,t,n)=>oe(e.attribute,e,_.ToNotEqual,t,void 0,void 0,n),"measureLessThan"),hn=v((e,t,n,r)=>oe(e.attribute,e,_.From,t,_.To,n,r),"measureBetween"),hp=v((e,t,n,r)=>oe(e.attribute,e,_.FromNotEqual,t,_.ToNotEqual,n,r),"measureBetweenNotEqual"),lr=v((e,t,n,r)=>new Kn(e,t,Vn.Top,n,r),"topRanking"),cr=v((e,t,n,r)=>new Kn(e,t,Vn.Bottom,n,r),"bottomRanking"),le=e=>{if(Array.isArray(e)){const[t,...n]=e;return n.length===0?le(t):{operator:"AND",left:le(t),right:le(n)}}return e},Ys=v((e,t)=>new Ps(e,t),"cascading");var Ae;(function(e){e.and=hi((t,n)=>({operator:"AND",left:le(t),right:le(n)}),"and"),e.or=hi((t,n)=>({operator:"OR",left:le(t),right:le(n)}),"or")})(Ae=Ae||(Ae={}));const Xs=v((e,t,n)=>new Ws(e,t,n),"customFilter"),gp=Object.freeze(Object.defineProperty({__proto__:null,between:ke,betweenNotEqual:ap,bottomRanking:cr,cascading:Ys,contains:Zn,customFilter:Xs,dateFrom:up,dateRange:nt,dateRelative:ks,dateRelativeFrom:ur,dateRelativeTo:me,dateTo:lp,doesntContain:Jn,doesntEndWith:Yn,doesntEqual:nr,doesntStartWith:Xn,endsWith:er,equals:rr,exclude:kt,greaterThan:ir,greaterThanOrEqual:sr,intersection:zs,lessThan:or,lessThanOrEqual:ar,like:Hs,get logic(){return Ae},measureBase:oe,measureBetween:hn,measureBetweenNotEqual:hp,measureEquals:Gs,measureGreaterThan:Vs,measureGreaterThanOrEqual:Qs,measureLessThan:Js,measureLessThanOrEqual:Ks,members:tt,numeric:re,startsWith:tr,thisMonth:dp,thisQuarter:fp,thisYear:cp,today:pp,topRanking:lr,union:qs},Symbol.toStringTag,{value:"Module"})),mp=e=>{const{dim:t,datatype:n,title:r,datasource:i}=e;return Vt({expression:t,dataType:n,granularity:Ce(e),title:r,dataSource:i})},bp=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 ct;(function(e){e.INCLUDE_ALL="INCLUDE_ALL",e.ADVANCED="ADVANCED",e.INVALID="INVALID",e.CONDITION="CONDITION",e.SPECIFIC_ITEMS="SPECIFIC_ITEMS"})(ct=ct||(ct={}));var dt;(function(e){e.PERIOD="PERIOD",e.DATE_RANGE="DATE_RANGE"})(dt=dt||(dt={}));var ft;(function(e){e.NUMERIC_RANGE="NUMERIC_RANGE"})(ft=ft||(ft={}));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 we;(function(e){e.DATE_TIME="datetime",e.NUMERIC="numeric",e.TEXT="text"})(we=we||(we={}));const yp=["1","30"],E=Object.assign(Object.assign(Object.assign({},ct),dt),ft),vp={[E.INCLUDE_ALL]:{all:!0,filterType:E.INCLUDE_ALL},[E.PERIOD]:{last:{count:1,offset:1},isNotCurrentPeriod:!0,filterType:E.PERIOD},[E.DATE_RANGE]:{filterType:E.DATE_RANGE},[E.NUMERIC_RANGE]:{filterType:E.NUMERIC_RANGE},[E.CONDITION]:{explicit:!1,multiSelection:!0,exclude:{members:[]},filterType:E.CONDITION},[E.SPECIFIC_ITEMS]:{explicit:!0,multiSelection:!0,members:[],filterType:E.SPECIFIC_ITEMS}},Tp={filter:vp.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 Sp=e=>e.top!==void 0,Ap=e=>e.bottom!==void 0,wp=e=>{var t;return!!(!((t=e.exclude)===null||t===void 0)&&t.members)},Ep=e=>!!e.members&&!!e.isCondition,xp=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},Cp=e=>e.fromNotEqual!==void 0,Op=e=>e.from!==void 0&&!e.isBetween,Np=e=>e.toNotEqual!==void 0,Fp=e=>e.to!==void 0&&!e.isBetween,_p=e=>e.equals!==void 0,Dp=e=>e.doesntEqual!==void 0,Mp=e=>!!(e.equals===""&&e.isEmpty),Rp=e=>!!(e.doesntEqual===""&&e.isEmpty),Lp=e=>e.contains!==void 0,Ip=e=>e.doesntContain!==void 0,Pp=e=>e.startsWith!==void 0,jp=e=>e.doesntStartWith!==void 0,$p=e=>e.endsWith!==void 0,Bp=e=>e.doesntEndWith!==void 0,Up=e=>e.from!==void 0&&e.to!==void 0,Wp=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},qp=e=>!!(e.or||e.and),Gt=e=>Ap(e)?exports.ConditionFilterType.BOTTOM:Sp(e)?exports.ConditionFilterType.TOP:wp(e)?exports.ConditionFilterType.IS_NOT:xp(e)?exports.ConditionFilterType.IS_WITHIN:Cp(e)?exports.ConditionFilterType.GREATER_THAN:Np(e)?exports.ConditionFilterType.LESS_THAN:_p(e)?exports.ConditionFilterType.EQUALS:Dp(e)?exports.ConditionFilterType.DOESNT_EQUAL:Mp(e)?exports.ConditionFilterType.IS_EMPTY:Rp(e)?exports.ConditionFilterType.IS_NOT_EMPTY:Lp(e)?exports.ConditionFilterType.CONTAINS:Ip(e)?exports.ConditionFilterType.DOESNT_CONTAIN:Bp(e)?exports.ConditionFilterType.DOESNT_END_WITH:jp(e)?exports.ConditionFilterType.DOESNT_START_WITH:$p(e)?exports.ConditionFilterType.ENDS_WITH:Pp(e)?exports.ConditionFilterType.STARTS_WITH:Wp(e)?exports.ConditionFilterType.IS_NOT_BETWEEN:Ep(e)?exports.ConditionFilterType.IS:qp(e)?exports.ConditionFilterType.MULTIPLE_CONDITION:Up(e)?exports.ConditionFilterType.BETWEEN:Op(e)?exports.ConditionFilterType.GREATER_THAN_OR_EQUAL:Fp(e)?exports.ConditionFilterType.LESS_THAN_OR_EQUAL:exports.ConditionFilterType.NONE,gn=(e,t,n)=>{var r,i,s,o,a,u,l;switch(Gt(t)){case exports.ConditionFilterType.BOTTOM:if(t.by)return cr(e,gi(t.by,t.rankingMessage),t[exports.ConditionFilterType.BOTTOM],{guid:n});break;case exports.ConditionFilterType.EQUALS:return rr(e,t[exports.ConditionFilterType.EQUALS],{guid:n});case exports.ConditionFilterType.DOESNT_EQUAL:return nr(e,t[exports.ConditionFilterType.DOESNT_EQUAL],{guid:n});case exports.ConditionFilterType.GREATER_THAN:return ir(e,t[exports.ConditionFilterType.GREATER_THAN],{guid:n});case exports.ConditionFilterType.GREATER_THAN_OR_EQUAL:return sr(e,t[exports.ConditionFilterType.GREATER_THAN_OR_EQUAL],{guid:n});case exports.ConditionFilterType.TOP:if(t.by)return lr(e,gi(t.by,t.rankingMessage),t[exports.ConditionFilterType.TOP],{guid:n});break;case exports.ConditionFilterType.STARTS_WITH:return tr(e,t[exports.ConditionFilterType.STARTS_WITH],{guid:n});case exports.ConditionFilterType.DOESNT_START_WITH:return Xn(e,t[exports.ConditionFilterType.DOESNT_START_WITH],{guid:n});case exports.ConditionFilterType.ENDS_WITH:return er(e,t[exports.ConditionFilterType.ENDS_WITH],{guid:n});case exports.ConditionFilterType.DOESNT_END_WITH:return Yn(e,t[exports.ConditionFilterType.DOESNT_END_WITH],{guid:n});case exports.ConditionFilterType.CONTAINS:return Zn(e,t[exports.ConditionFilterType.CONTAINS],{guid:n});case exports.ConditionFilterType.DOESNT_CONTAIN:return Jn(e,t[exports.ConditionFilterType.DOESNT_CONTAIN],{guid:n});case exports.ConditionFilterType.LESS_THAN:return or(e,t[exports.ConditionFilterType.LESS_THAN],{guid:n});case exports.ConditionFilterType.LESS_THAN_OR_EQUAL:return ar(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 kt(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 zs(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(p=>!f.includes(p)))||[],g=Rs({guid:n,excludeMembers:!0,enableMultiSelection:(l=t.multiSelection)!==null&&l!==void 0?l:!0,deactivatedMembers:f});return tt(e,c,g)}}throw new Ze("errors.filter.unsupportedConditionFilter",{filter:JSON.stringify(t)})},zp=(e,t,n)=>{var r,i;switch(Gt(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 kt(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})}throw new Ze("errors.filter.unsupportedConditionFilter",{filter:JSON.stringify(t)})},Hp=(e,t)=>{let n=e?e.toLocaleLowerCase():ie.YEARS;return n===ie.MINUTES&&t==="60"&&(n=ie.HOURS),n},kp=e=>e==null?void 0:e.all,Gp=e=>e.last?e.last:e.next,Vp=e=>{var t;return((t=Gp(e))===null||t===void 0?void 0:t.offset)<2},Zs=e=>{var t;return((t=e==null?void 0:e.members)===null||t===void 0?void 0:t.length)>=0},Qp=(e,t)=>e&&typeof e=="string"||t&&typeof t=="string",Kp=(e,t)=>e===""&&t==="",Jp=(e,t)=>{const{from:n,to:r}=e;return t!==we.DATE_TIME?!1:Qp(n,r)?!0:Kp(n,r)},Yp=e=>{const{from:t,to:n}=e;return t!==void 0&&n!==void 0&&!e.isBetween},eo=e=>Gt(e)!==exports.ConditionFilterType.NONE,Xp=e=>Object.keys(e).includes("isAdvanced"),Zp=e=>!!(e.level&&e.bucket&&e.level===ie.MINUTES&&yp.includes(e.bucket)),eh=e=>e.filterType===E.INVALID,mi=(e,t=we.DATE_TIME,n)=>n&&Zp(n)||Xp(e)?E.ADVANCED:kp(e)?E.INCLUDE_ALL:Vp(e)?E.PERIOD:Zs(e)?E.SPECIFIC_ITEMS:Jp(e,t)?E.DATE_RANGE:Yp(e)?E.NUMERIC_RANGE:eo(e)?E.CONDITION:(eh(e),E.INVALID),th=(e,t)=>{const{level:n,filter:r,bucket:i}=e,s=r||Tp.filter,o={filter:Object.assign(Object.assign({},s),{filterType:mi(s,t)})};if(t===we.DATE_TIME){const a=s,u=(a==null?void 0:a.level)||n;o.level=Hp(u,i),o.filter.filterType=mi(s,t,{level:u,bucket:i})}return o},bi=(e,t)=>{const n={config:Object.assign(Object.assign({},qt()),{guid:t,originalFilterJaql:e}),jaql:r=>r?e:{jaql:e,panel:"scope"},attribute:{id:e.dim},type:"filter"};return Object.assign({},n)},nh=(e,t)=>tt(e,[],{guid:t}),rh=(e,t,n,r)=>{const i=ih(t),s=sh(t,i),o=Rs({guid:n,excludeMembers:!1,enableMultiSelection:r!=null?r:!0,deactivatedMembers:i});return tt(e,s,o)};function ih(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 sh(e,t){const n=e.members;return t?n.filter(r=>!t.includes(r)):n}const oh=(e,t,n)=>nt(e,t.from,t.to,{guid:n}),ah=(e,t,n)=>ke(e,t.from,t.to,{guid:n}),uh=(e,t,n)=>t.last?me(e,t.last.offset,t.last.count,t.last.anchor,{guid:n}):ur(e,t.next.offset,t.next.count,t.next.anchor,{guid:n}),lh=(e,t,n)=>Xs(e,t,{guid:n}),yi=(e,t)=>{try{if("formula"in e)throw new Ze("errors.filter.formulaFiltersNotSupported",{filter:JSON.stringify(e)});const n=th(e,e.datatype),{filter:r}=n,{filterType:i}=r,s=mp(e),o=bp(e);switch(i){case E.INCLUDE_ALL:return nh(s,t);case E.SPECIFIC_ITEMS:return rh(s,r,t,r.multiSelection);case E.CONDITION:return o?zp(o,r,t):gn(s,r,t);case E.DATE_RANGE:return oh(s,r,t);case E.PERIOD:return uh(s,r,t);case E.NUMERIC_RANGE:return ah(s,r,t);case E.ADVANCED:return lh(s,r,t);case E.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)},ch=e=>["__int4","__int8","int","tinyint","bigint","int2","int4","int8","smallint","mediumint","serial","integer","byteint","int64"].includes(e.toLowerCase()),dh=e=>["basemeasure","calculatedmeasure","float","float4","float8","double precision","double","numeric","decimal","real","number","float64"].includes(e.toLowerCase()),dr=e=>ch(e)||dh(e)||e==="numeric-attribute",to=e=>["textdimension","string","varchar","text","ntext","char","character","character varying","smalltext","nchar","nvarchar","json","jsonb","object","text-attribute"].includes(e.toLowerCase()),fr=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()),no=e=>["bool","boolean","bit","logical"].includes(e.toLowerCase()),ro=e=>dr(e)?"number":fr(e)?"datetime":to(e)?"text":no(e)?"boolean":"text",io=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+Math.random()*16777216|0),i=r&15,r=r>>4,n[s]=t[s==19?i&3|8:i]}return n.join("")},fh=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&&(ph(o)?et(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 ph(e){return"config"in e&&"guid"in e.config}function hh(e){return typeof e=="string"?e:e.title}function pr(e){return typeof e=="object"&&"type"in e&&"title"in e}function gh(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 mh(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 bh(e){return e?e==="asc"?exports.Sort.Ascending:exports.Sort.Descending:exports.Sort.None}function yh(e){switch(e){case"sortAsc":return exports.Sort.Ascending;case"sortDesc":return exports.Sort.Descending;default:return exports.Sort.None}}const so=(e,t,n=!1,r=!1)=>{const i=e.filter.filter&&!("turnedOff"in e.filter.filter),s=t||io(),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 be(e){const[t,n]=e.slice(1,-1).split(".");return{table:t,column:n?n.replace("(Calendar)","").trim():""}}function vh(e){return be(e.expression).table}function Th(e){return be(e.expression).column}function Sh(e){switch(e){case je.ASC:return"sortAsc";case je.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=be(e).column,l=bh(i);if(t===exports.DataType.DATETIME)return new K(s!=null?s:u,e,n||h.Years,r||K.getDefaultFormatForGranularity(n||h.Years),void 0,l,a,void 0,o);const f=!t||dr(t)?A.NumericAttribute:A.TextAttribute;return new Fe(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=ce.aggregationFromJAQL(n),d=be(e).column,f=o!=null?o:`${l} ${d}`;switch(l){case S.Sum:return wt(u,f,i);case S.Average:return Os(u,f,i);case S.Min:return Bt(u,f,i);case S.Max:return Ut(u,f,i);case S.Count:return kn(u,f,i);case S.CountDistinct:return Wt(u,f,i);case S.Median:return Hn(u,f,i);case S.Variance:return H(u,S.Variance,f,i);case S.StandardDeviation:return H(u,S.StandardDeviation,f,i);default:return wt(u,f,i)}},gr=e=>{var t;const n=_d((t=e.context)!==null&&t!==void 0?t:{},r=>typeof r=="string"?r:r&&oo(r));return zn(e.title,e.formula,n)};function oo(e,t,n){if("filter"in e)return so(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&&fr(e.datatype)?K.translateJaqlToGranularity(e):void 0}const mr=e=>ro(e).replace("number","numeric");class Fe extends Pt{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}=be(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 Fe(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 Ah=e=>!!(e&&e.__serializable==="DimensionalAttribute");class K extends Fe{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}=be(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 h.Years:case h.Quarters:case h.Months:case h.Weeks:case h.Days:return{level:this.granularity.toLowerCase()};case h.Hours:return{dateTimeLevel:t,bucket:"60"};case h.MinutesRoundTo30:return{dateTimeLevel:t,bucket:"30"};case h.MinutesRoundTo15:return{dateTimeLevel:t,bucket:"15"};case h.Minutes:return{dateTimeLevel:t,bucket:"1"};case h.Seconds:return{dateTimeLevel:n,bucket:"0"};case h.AggHours:return{level:t,bucket:"60"};case h.AggMinutesRoundTo30:return{level:t,bucket:"30"};case h.AggMinutesRoundTo15:return{level:t,bucket:"15"};case h.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 h.Hours;case"30":return h.MinutesRoundTo30;case"15":return h.MinutesRoundTo15;case"1":return h.Minutes;case"0":return h.Seconds;default:return n(t.dateTimeLevel)}}switch(t.level){case"years":return h.Years;case"quarters":return h.Quarters;case"months":return h.Months;case"weeks":return h.Weeks;case"days":return h.Days;case"minutes":switch(t.bucket){case"60":return h.AggHours;case"30":return h.AggMinutesRoundTo30;case"15":return h.AggMinutesRoundTo15;case"1":return h.AggMinutesRoundTo1;default:return n(t.level)}default:return n(t.level)}}static getDefaultFormatForGranularity(t){switch(t){case h.Years:return"yyyy";case h.Quarters:return"Q yyyy";case h.Months:return"yyyy-MM";case h.Weeks:return"ww yyyy";case h.Days:return"yyyy-MM-dd";case h.Hours:return"yyyy-MM-dd HH:mm";case h.MinutesRoundTo30:return"yyyy-MM-dd HH:mm";case h.MinutesRoundTo15:return"yyyy-MM-dd HH:mm";case h.Minutes:return"yyyy-MM-dd HH:mm";case h.Seconds:return"yyyy-MM-dd HH:mm:ss";case h.AggHours:return"HH:mm";case h.AggMinutesRoundTo30:return"HH:mm";case h.AggMinutesRoundTo15:return"HH:mm";case h.AggMinutesRoundTo1:return"HH:mm";default:return""}}}const wh=e=>!!(e&&e.__serializable==="DimensionalLevelAttribute");function Eh(e){return e.granularity?xh(e):new Fe(e.name||e.title,e.attribute||e.expression||e.dim,e.type,e.desc||e.description,e.sort,e.dataSource)}function xh(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 Ch(e){return"granularity"in e}function sn(e){return"attribute"in e}function Oh(e){return"measure"in e}const Nh={rows:!1,columns:!1};function xt(e){return!!e&&"operator"in e&&(e.operator==="AND"||e.operator==="OR")&&!!e.right&&!!e.left}function Fh(e=[],t=[]){if(!xt(e)&&!xt(t))return bn(e,t);const{filters:n,relations:r}=yr(e),i=ao(t),s=bn(n,i),o=lo(n,r,s);return uo(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(co(i))return t.add(i),{instanceid:i.config.guid};if(xt(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 ao(e){return e?yr(e).filters:[]}function uo(e,t){if(!t||vr(t))return e;const n=r(t);return co(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"?Ae.and:Ae.or)(r(i.left),r(i.right));throw new Yt}}function vr(e){return!!e&&"instanceid"in e}function lo(e,t,n){if(t===null)return null;const r=Dh(e,n);return r.length===0?t:r.reduce((i,s)=>{switch(s.type){case"add":return Mh(s.payload,i);case"remove":return mn(s.payload,i)}},t)}function vi(e,t){return e.config.guid===t.config.guid}function _h(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 Dh(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 Mh(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 Rh(e,t){if(!e)return null;function n(r){if(Lh(r))return{instanceid:r.instanceId};if(Ih(r))return n(r.value);if(Ph(r))return{operator:r.operator,left:n(r.left),right:n(r.right)};if(jh(r)){const i=t.find(s=>{if(!et(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 Lh(e){return"instanceId"in e}function Ih(e){return"value"in e}function Ph(e){return"operator"in e}function jh(e){return"levels"in e&&L(e.levels)}function Kt(e){return"instanceid"in e}function Jt(e){return"operator"in e}function co(e){return"config"in e&&"guid"in e.config}function $h(e,t){if(!e)return;function n(r){if(Kt(r)){const i=t.find(s=>s.config.guid===r.instanceid);return i&&et(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 Bh(e,t){return e.find(n=>n.config.guid===t)}class Yt extends Error{constructor(){super("Broken filter relations. Unknown node type.")}}function Uh(e){return e.nodeType==="openBracket"}function Wh(e){return e.nodeType==="closeBracket"}function qh(e){return e.nodeType==="attribute"}function zh(e){return e.nodeType==="operator"}function Ct(e){if(et(e))return e.filters.map(Ct).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=>Ct(r)===Ct(o));i!==-1?n[i]=r:n.push(r)}),n}function Hh(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},{}),fo={mergeArrays:!0};ee.options=fo;ee.withOptions=(e,...t)=>{ee.options=Object.assign({mergeArrays:!0},e);const n=ee(...t);return ee.options=fo,n};let ut;const kh=new Uint8Array(16);function Gh(){if(!ut&&(ut=typeof crypto!="undefined"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!ut))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return ut(kh)}const M=[];for(let e=0;e<256;++e)M.push((e+256).toString(16).slice(1));function Vh(e,t=0){return M[e[t+0]]+M[e[t+1]]+M[e[t+2]]+M[e[t+3]]+"-"+M[e[t+4]]+M[e[t+5]]+"-"+M[e[t+6]]+M[e[t+7]]+"-"+M[e[t+8]]+M[e[t+9]]+"-"+M[e[t+10]]+M[e[t+11]]+M[e[t+12]]+M[e[t+13]]+M[e[t+14]]+M[e[t+15]]}const Qh=typeof crypto!="undefined"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),Si={randomUUID:Qh};function po(e,t,n){if(Si.randomUUID&&!t&&!e)return Si.randomUUID();e=e||{};const r=e.random||(e.rng||Gh)();return r[6]=r[6]&15|64,r[8]=r[8]&63|128,Vh(r)}function Kh(e,t){const n=t==null?void 0:t.find(r=>ho(e)===r.attribute.id);return n&&!n.config.disabled&&(n.isScope&&(n.isScope=!1),e.jaql.in={selected:n.jaql()}),e}function Jh(e,t){const n=[],r=[];return t.forEach(i=>{e.some(o=>ho(o)===i.attribute.id)?n.push(i):r.push(i)}),[n,r]}function ho(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 Yh=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 Xh(e,t,n){return{rowsCount:e.length,columnsCount:t.length,measuresCount:n.length}}function Zh(e){switch(e){case"sortAsc":return"asc";case"sortDesc":return"desc";default:return"none"}}function eg(e,t,n){const r=Zh(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 tg(e,t){if(t.rowsCount===0)return;const n=t.rowsCount-1,r=e[n],i=r.jaql,{sortDetails:s,sort:o}=i,a=Yh(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 pt="ComposeSDK";function go(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:rg({attributes:n,measures:r,filters:i,filterRelations:s,highlights:o},t)},ig(a,u,l,f));return s?Object.assign(Object.assign({},c),{filterRelations:s}):c}function mo(e,t,n,r,i){const[s,o]=Jh(e,r);e.forEach(l=>Kh(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 ng(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 rg(e,t){const{attributes:n,measures:r,filters:i,filterRelations:s,highlights:o}=e,a=n.map(d=>d.jaql()),u=r.map(d=>ng(d.jaql())),l=mo(a,i,s,o,t);return[...a,...u,...l]}function ig(e,t,n,r){return Object.assign(Object.assign(Object.assign({datasource:hr(e),by:pt,queryGuid:po()},r?{ungroup:!0}:{}),t?{count:t}:{}),n?{offset:n}:{})}function sg(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:ag({rowsAttributes:n,columnsAttributes:r,measures:i,filters:s,highlights:u,filterRelations:o},t)},ug(l,a,d,f));return o?Object.assign(Object.assign({},c),{filterRelations:o}):c}function Ai(e,t,n,r){const i=t==="rows"&&sn(e)&&e.sort&&e.sort.direction!=="sortNone",s=Object.assign(Object.assign({},sn(e)?e.attribute.jaql(!0):e.jaql(!0)),i&&eg(e.sort,n,r));return Object.assign(Object.assign({jaql:s},sn(e)&&e.includeSubTotals?{format:{subtotal:!0}}:{}),{panel:t,field:{index:n,id:`${t}-${n}`}})}function og(e,t,n){return Object.assign(Object.assign({},Oh(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 ag(e,t){const{rowsAttributes:n,columnsAttributes:r,measures:i,filters:s,filterRelations:o,highlights:a}=e,u=Xh(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)=>og(m,"measures",w+l)),p=mo(c,s,o,a,t),y=[...c,...g,...p];return tg(y,u),y}function ug(e,t,n,r){return Object.assign(Object.assign(Object.assign({datasource:hr(e),by:pt,queryGuid:po(),dashboard:pt,widget:pt,format:"pivot"},n?{count:n}:{}),r?{offset:r}:{}),{grandTotals:Object.assign(Object.assign({},Nh),t)})}class rt extends Sn{constructor(t,n){super(An,{key:t,interpolationOptions:n},Fi.t)}}function lg(e){return"value"in e}function cg(e){return"valuePromise"in e}const dg=(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(lg(u))return u.value;if(cg(u))return u.valuePromise;throw new rt("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&&fg(n),l))}}),clearCache:s=>{if(s){n.delete(s);return}n.clear()}}};function fg(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 rt("errors.executeQueryNoDataSource");return{dataSource:f,attributes:r,measures:i,filters:s,filterRelations:o,highlights:a,count:u,offset:l,ungroup:d}};function bo(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 rt("errors.secondsDateTimeLevelSupportedOnlyForLive"):i})}const pg=(e,t,n)=>{const r=Xt(e,t==null?void 0:t.defaultDataSource);return t.queryClient.executeCsvQuery(r,n).resultPromise},hg=(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(p=>p.isScope=!0),d&&d.forEach(p=>p.isScope=!0);const g=r||(t==null?void 0:t.defaultDataSource);if(!g)throw new rt("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},gg=e=>JSON.stringify($(b({},go(e,!1)),{queryGuid:""})),yo=(e,t)=>{const n=Xt(e,t==null?void 0:t.defaultDataSource);return gg(n)},mg=250,{withCache:bg,clearCache:yg}=dg(yo,{cacheMaxSize:mg}),vg=bg(bo),Tg=yg;exports.AbstractTranslatableError=Sn;exports.AggregationTypes=S;exports.CascadingFilter=Ps;exports.CustomFilter=Ws;exports.DATA_MODEL_MODULE_NAME=qn;exports.DateLevels=h;exports.DateOperators=xe;exports.DateRangeFilter=Us;exports.DimensionalAttribute=Fe;exports.DimensionalBaseMeasure=ce;exports.DimensionalCalculatedMeasure=J;exports.DimensionalElement=Pt;exports.DimensionalLevelAttribute=K;exports.DimensionalMeasureTemplate=Et;exports.ExcludeFilter=js;exports.FilterTypes=U;exports.LogicalAttributeFilter=Qn;exports.MeasureFilter=$s;exports.MembersFilter=Is;exports.MetadataTypes=A;exports.NumericFilter=Bs;exports.NumericOperators=_;exports.PACKAGE_NAMESPACE=An;exports.RankingFilter=Kn;exports.RankingOperators=Vn;exports.RelativeDateFilter=Ht;exports.Set=Tt;exports.SetCache=ze;exports.TextFilter=Z;exports.TextOperators=X;exports.TranslatableError=rt;exports.UnknownRelationsNodeError=Yt;exports.WeakMap=St;exports.apply=ps;exports.arrayEach=Ri;exports.arrayMap=Pn;exports.assignValue=wn;exports.baseAssignValue=Ve;exports.baseClone=Se;exports.baseCreate=ki;exports.baseFlatten=Ss;exports.baseForOwn=Yi;exports.baseGet=Lt;exports.baseGetTag=se;exports.baseIsEqual=Ye;exports.baseIteratee=os;exports.baseMerge=Bn;exports.baseRest=ms;exports.baseSlice=Ts;exports.baseToString=jn;exports.baseUnary=Mt;exports.between=ke;exports.bottomRanking=cr;exports.cacheHas=Xi;exports.calculateNewRelations=lo;exports.cascading=Ys;exports.castPath=Xe;exports.clearExecuteQueryCache=Tg;exports.cloneDeep=Rn;exports.combineFiltersAndRelations=uo;exports.contains=Zn;exports.convertDataSource=gh;exports.convertFilterRelationsModelToJaql=Hh;exports.convertFilterRelationsModelToRelationRules=Rh;exports.convertJaqlDataSource=hr;exports.convertJaqlDataSourceForDto=mh;exports.convertSortDirectionToSort=yh;exports.copyArray=On;exports.countDistinct=Wt;exports.createAssigner=ys;exports.createAttribute=Eh;exports.createAttributeHelper=Vt;exports.createCalculatedMeasureHelper=gr;exports.createDimensionalElementFromJaql=oo;exports.createExecuteQueryCacheKey=yo;exports.createFilterFromJaql=so;exports.createMeasureHelper=Qt;exports.customFormula=zn;exports.dateRange=nt;exports.dateRelative=ks;exports.dateRelativeFrom=ur;exports.dateRelativeTo=me;exports.doesntContain=Jn;exports.doesntEndWith=Yn;exports.doesntEqual=nr;exports.doesntStartWith=Xn;exports.endsWith=er;exports.equals=rr;exports.escapeSingleQuotes=Ci;exports.exclude=kt;exports.executeCsvQuery=pg;exports.executePivotQuery=hg;exports.executeQuery=bo;exports.executeQueryWithCache=vg;exports.filterFactory=gp;exports.filterRelationRulesToFilterRelationsModel=$h;exports.findFilterByGuid=Bh;exports.flatRest=As;exports.forecast=Fs;exports.get=is;exports.getAllKeysIn=Dn;exports.getColumnNameFromAttribute=Th;exports.getDataSourceName=hh;exports.getDefaults=ta;exports.getFilterCompareId=Ct;exports.getFilterListAndRelationsJaql=fh;exports.getFiltersArray=ao;exports.getGranularityFromJaql=Ce;exports.getI18n=ra;exports.getJaqlQueryPayload=go;exports.getPivotJaqlQueryPayload=sg;exports.getRelationsWithReplacedFilter=_h;exports.getSelectedConditionOption=Gt;exports.getSortType=Sh;exports.getTableNameFromAttribute=vh;exports.greaterThan=ir;exports.greaterThanOrEqual=sr;exports.hasIn=ss;exports.i18nextInstance=Fi;exports.identity=It;exports.initI18next=Tn;exports.initializeI18n=Ni;exports.isArray=L;exports.isArrayLike=Qe;exports.isArrayLikeObject=cs;exports.isAttributeDescriptionNode=qh;exports.isBoolean=no;exports.isCascadingFilter=et;exports.isCloseBracketDescriptionNode=Wh;exports.isConditionFilter=eo;exports.isCustomFilter=Yf;exports.isDataSourceInfo=pr;exports.isDateRangeFilter=op;exports.isDatetime=fr;exports.isDimensionalAttribute=Ah;exports.isDimensionalBaseMeasure=_s;exports.isDimensionalCalculatedMeasure=Qf;exports.isDimensionalLevelAttribute=wh;exports.isDimensionalMeasureTemplate=Kf;exports.isEqual=Ds;exports.isExcludeFilter=np;exports.isFilterRelations=xt;exports.isFunction=Ft;exports.isIndex=Dt;exports.isIterateeCall=bs;exports.isLevelAttribute=Ch;exports.isLogicalAttributeFilter=rp;exports.isMeasureFilter=tp;exports.isMembersFilter=Xf;exports.isNumber=dr;exports.isNumericFilter=Zf;exports.isObject=Y;exports.isObjectLike=z;exports.isOpenBracketDescriptionNode=Uh;exports.isOperatorDescriptionNode=zh;exports.isRankingFilter=ep;exports.isRelationsRule=Jt;exports.isRelationsRuleIdNode=Kt;exports.isRelativeDateFilter=ip;exports.isSpecificItemsFilter=Zs;exports.isSymbol=Rt;exports.isText=to;exports.isTextFilter=sp;exports.isTrivialSingleNodeRelations=vr;exports.jaqlSimpleColumnType=mr;exports.last=vs;exports.lessThan=or;exports.lessThanOrEqual=ar;exports.like=Hs;exports.max=Ut;exports.measureFactory=Vf;exports.members=tt;exports.merge=ee;exports.merge$1=Wn;exports.mergeFilters=bn;exports.mergeFiltersOrFilterRelations=Fh;exports.min=Bt;exports.nodeUtil=fe;exports.normalizeAttributeName=br;exports.normalizeName=ue;exports.omit=ws;exports.parseExpression=be;exports.prepareQueryParams=Xt;exports.root=k;exports.setToArray=es;exports.setToString=Un;exports.shortOut=gs;exports.simpleColumnType=ro;exports.splitFiltersAndRelations=yr;exports.startsWith=tr;exports.toKey=Ne;exports.toString=rs;exports.topRanking=lr;exports.trend=Ns;exports.withComposeCodeForAnalytics=bf;
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Utility for decorating HighchartsOptionsBuilder objects with input/output collection.
|
|
3
|
-
* This enables comprehensive runtime data collection for all builder methods,
|
|
4
|
-
* making it easier to generate unit tests and understand builder behavior.
|
|
5
|
-
*/
|
|
6
|
-
import { HighchartsOptionsBuilder, HighchartBasedChartTypes } from '../../chart/restructured-charts/highchart-based-charts/types';
|
|
7
|
-
/**
|
|
8
|
-
* Generic decorator that wraps all methods of an object with input/output collection.
|
|
9
|
-
* Uses currying pattern: withMethodsInputOutputCollection(config)(objectToDecorate)
|
|
10
|
-
*
|
|
11
|
-
* This enables comprehensive runtime data collection for all object methods,
|
|
12
|
-
* making it easier to generate unit tests and understand object behavior.
|
|
13
|
-
*
|
|
14
|
-
* @param options - Configuration options for the collection behavior
|
|
15
|
-
* @returns Function that takes the object to decorate and returns the decorated object
|
|
16
|
-
*
|
|
17
|
-
* @example
|
|
18
|
-
* ```ts
|
|
19
|
-
* // Basic usage:
|
|
20
|
-
* const instrumentedBuilder = withMethodsInputOutputCollection({
|
|
21
|
-
* objectName: 'myChartBuilder',
|
|
22
|
-
* maxSnapshots: 50
|
|
23
|
-
* })(myChartBuilder);
|
|
24
|
-
*
|
|
25
|
-
* // After running the application:
|
|
26
|
-
* printCollectedInfo(); // Shows data for all object methods
|
|
27
|
-
* ```
|
|
28
|
-
*/
|
|
29
|
-
export declare function withMethodsInputOutputCollection<T extends Record<string, any>>(options: {
|
|
30
|
-
/** Name identifier for the object (used in collection namespacing) */
|
|
31
|
-
objectName: string;
|
|
32
|
-
/** Maximum number of unique snapshots to collect per method (default: 100) */
|
|
33
|
-
maxSnapshots?: number;
|
|
34
|
-
}): (obj: T) => T;
|
|
35
|
-
/**
|
|
36
|
-
* Specific decorator for HighchartsOptionsBuilder that follows the generic pattern.
|
|
37
|
-
* Uses currying pattern: withHighchartsOptionsBuilderCollection(config)(builderToDecorate)
|
|
38
|
-
*
|
|
39
|
-
* Each method gets its own collection namespace (e.g., "barBuilder.getChart", "barBuilder.getSeries")
|
|
40
|
-
* to enable granular analysis of how different parts of the chart configuration are built.
|
|
41
|
-
*
|
|
42
|
-
* @param options - Configuration options for the collection behavior
|
|
43
|
-
* @returns Function that takes the builder to decorate and returns the decorated builder
|
|
44
|
-
*
|
|
45
|
-
* @example
|
|
46
|
-
* ```ts
|
|
47
|
-
* const instrumentedBuilder = withHighchartsOptionsBuilderDataCollections({
|
|
48
|
-
* builderName: 'myChartBuilder',
|
|
49
|
-
* maxSnapshots: 50
|
|
50
|
-
* })(myChartBuilder);
|
|
51
|
-
*
|
|
52
|
-
* // After running the application:
|
|
53
|
-
* printCollectedInfo(); // Shows data for all builder methods
|
|
54
|
-
* ```
|
|
55
|
-
*/
|
|
56
|
-
export declare function withHighchartsOptionsBuilderDataCollection<CT extends HighchartBasedChartTypes>(options: {
|
|
57
|
-
/** Name identifier for the builder (used in collection namespacing) */
|
|
58
|
-
builderName: string;
|
|
59
|
-
/** Maximum number of unique snapshots to collect per method (default: 100) */
|
|
60
|
-
maxSnapshots?: number;
|
|
61
|
-
}): (builder: HighchartsOptionsBuilder<CT>) => HighchartsOptionsBuilder<CT>;
|