@progress/kendo-ui
Version:
This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.
2 lines • 142 kB
JavaScript
/* @license */
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require(`kendo.dom.min.js`),require(`kendo.data.min.js`),require(`kendo.icons.min.js`),require(`kendo.loader.min.js`),require(`kendo.html.loadercontainer.min.js`),require(`kendo.sortable.min.js`),require(`kendo.core.min.js`)):typeof define==`function`&&define.amd?define([`exports`,`kendo.dom.min`,`kendo.data.min`,`kendo.icons.min`,`kendo.loader.min`,`kendo.html.loadercontainer.min`,`kendo.sortable.min`,`kendo.core.min`],t):(e=typeof globalThis<`u`?globalThis:e||self,t((e.kendo=e.kendo||{},e.kendo._globals=e.kendo._globals||{},e.kendo._globals.Pivotgrid={}),e.kendo._globals.Dom,e.kendo._globals.Data,e.kendo._globals.Icons,e.kendo._globals.Loader,e.kendo._globals.HtmlLoadercontainer,e.kendo._globals.Sortable,e.kendo._globals.Core))})(this,function(e,t,n,r,i,a,o,s){Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});let c={contains:`, InStr({0}.CurrentMember.MEMBER_CAPTION,"{1}") > 0`,doesnotcontain:`, InStr({0}.CurrentMember.MEMBER_CAPTION,"{1}")`,endswith:`, Right({0}.CurrentMember.MEMBER_CAPTION,Len("{1}"))="{1}"`,eq:`, {0}.CurrentMember.MEMBER_CAPTION = "{1}"`,neq:`, {0}.CurrentMember.MEMBER_CAPTION = "{1}"`,startswith:`, Left({0}.CurrentMember.MEMBER_CAPTION,Len("{1}"))="{1}"`},l={doesnotcontain:`doesnotcontain`,in:`in`,neq:`neq`};function u(e,t){let n=``,r=``;for(let i=e.length-1;i>=0;i--)r=`SELECT (`,r+=d(e[i]),r+=`) ON 0`,i===e.length-1?(r+=` FROM [`+t+`]`,n=r):n=r+` FROM ( `+n+` )`;return n}function d(e){let t=``,n=String(e.value),r=e.field,i=e.operator;return i===l.in?(t+=`{`,t+=n,t+=`}`):(t+=i===l.neq||i===l.doesnotcontain?`-`:``,t+=`Filter(`,t+=r+`.MEMBERS`,t+=f(c[i],r,n),t+=`)`),t}function f(e,...t){return t.forEach((t,n)=>{e=e.replace(RegExp(`\\{${n}\\}`,`g`),t)}),e}function p(e,t,n){let r=``;e||=[];let i=g(e),a=i.expanded,o=h(i.root),s=[],c=a.length,l=0,u,d=[];if(o.length>1||t.length>0){for(s.push(v(o,t));l<c;l++)u=y(a[l].name,n),d=_(u,o),s.push(v(d,t));r+=s.join(`,`)}else{for(;l<c;l++)u=y(a[l].name,n),d.push(u[0]);r+=o.concat(d).join(`,`)}return r}function m(e){let t=e.length,n=[],r;for(let i=0;i<t;i++)r=e[i],n.push(r.name===void 0?r:r.name);return n}function h(e){let t=[];return e.forEach(e=>{let n=e.name[0],r=x(n);t.some(e=>e.indexOf(r)===0)||t.push(n)}),t}function g(e){let t=[],n=[],r=[],i=0,a;for(;i<e.length;i++){let o=e[i],s=o.name;if(a=!1,s.length>1)n.push(o);else{let e=x(s[0]);for(let t=0,n=r.length;t<n;t++)if(r[t].name[0].indexOf(e)===0){a=!0;break}a||r.push(o),o.expand&&t.push(o)}}return t=t.concat(n),{expanded:t,root:r}}function _(e,t){let n=t.length;t=t.slice(0);for(let r=0;r<e.length;r++){let i=e[r];for(let e=0;e<n;e++){let n=x(t[e]);if(i.indexOf(n)!==-1){t[e]=i;break}}}return t}function v(e,t){let n=e.slice(0);return t.length>0&&n.push(`{`+m(t).join(`,`)+`}`),S(n)}function y(e,t){let n=e.length-1,r=e[n],i=b(t,r);return i&&i.dir?r=`ORDER(`+r+`.Children,`+i.field+`.CurrentMember.MEMBER_CAPTION,`+i.dir+`)`:r+=`.Children`,e[n]=r,e}function b(e,t){for(let n=0,r=e.length;n<r;n++)if(t.indexOf(e[n].field)===0)return e[n];return null}function x(e){let t=e.split(`.`);return t.length>2?t[0]+`.`+t[1]:e}function S(e){let t=`CROSSJOIN({`,n;return e.length>2?(n=e.pop(),t+=S(e)):(t+=e.shift(),n=e.pop()),t+=`},{`,t+=n,t+=`})`,t}function C(e){let t=`<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/"><Header/><Body><Execute xmlns="urn:schemas-microsoft-com:xml-analysis"><Command><Statement>`,{columnAxes:n=[],rowAxes:r=[]}=e,{measureAxes:i=[],sort:a=[],filter:o=[]}=e,s=e.measuresAxis===`rows`;return t+=`SELECT NON EMPTY {`,!n.length&&r.length&&(!i.length||i.length&&s)&&(n=r,r=[],s=!1),!n.length&&!r.length&&(s=!1),n.length?t+=p(n,s?[]:i,a):i.length&&!s&&(t+=m(i).join(`,`)),t+=`} DIMENSION PROPERTIES CHILDREN_CARDINALITY, PARENT_UNIQUE_NAME ON COLUMNS`,(r.length||s&&i.length>1)&&(t+=`, NON EMPTY {`,r.length?t+=p(r,s?i:[],a):t+=m(i).join(`,`),t+=`} DIMENSION PROPERTIES CHILDREN_CARDINALITY, PARENT_UNIQUE_NAME ON ROWS`),o.length?(t+=` FROM `,t+=`(`,t+=u(o,e.connection.cube),t+=`)`):t+=` FROM [`+e.connection.cube+`]`,t+=`</Statement></Command><Properties><PropertyList><Catalog>`+e.connection.catalog+`</Catalog><Format>Multidimensional</Format></PropertyList></Properties></Execute></Body></Envelope>`,t.replace(/&/g,`&`)}var w=function(e,t){return w=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},w(e,t)},T=function(){return T=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},T.apply(this,arguments)};function ee(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})}Object.create;function E(e){return this instanceof E?(this.v=e,this):new E(e)}Object.create;var D=function(e){return D=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},D(e)};function te(e){let t=new DOMParser().parseFromString(e,`text/xml`),n=Array.from(t.querySelectorAll(`Axis`)),r=Array.from(t.querySelectorAll(`CellData > Cell`)).map(e=>({fmtValue:O(e,`FmtValue`),ordinal:parseInt(e.getAttribute(`CellOrdinal`),10),value:O(e,`Value`)})),i={tuples:[]},a={tuples:[]},o=[];n.forEach(e=>{if(e.getAttribute(`name`)!==`SlicerAxis`){let t=i.tuples.length===0?i.tuples:a.tuples;Array.prototype.push.apply(t,ne(e))}});let s=Array(a.tuples.length*i.tuples.length).fill(null);r.forEach(e=>{s[e.ordinal]=e});let c=0;return a.tuples.forEach(e=>{i.tuples.forEach(t=>{o.push({columnTuple:t,data:s[c],rowTuple:e}),c++})}),{columns:i,data:o,rows:a}}function O(e,t){let n=e.querySelector(t);return n?n.textContent:``}function ne(e){return Array.from(e.querySelectorAll(`Tuple`)).map(e=>({members:Array.from(e.querySelectorAll(`Member`)).map(e=>{let t=parseInt(O(e,`LNum`)||`0`,10),n=parseInt(O(e,`CHILDREN_CARDINALITY`)||`0`,10)>0;return{caption:O(e,`Caption`),children:[],hasChildren:n,hierarchy:e.getAttribute(`Hierarchy`),levelName:O(e,`LName`),levelNum:t,name:O(e,`UName`),parentName:O(e,`PARENT_UNIQUE_NAME`)}})}))}let re={schemaCatalogs:`DBSCHEMA_CATALOGS`,schemaCubes:`MDSCHEMA_CUBES`,schemaDimensions:`MDSCHEMA_DIMENSIONS`,schemaHierarchies:`MDSCHEMA_HIERARCHIES`,schemaKPIs:`MDSCHEMA_KPIS`,schemaLevels:`MDSCHEMA_LEVELS`,schemaMeasures:`MDSCHEMA_MEASURES`,schemaMembers:`MDSCHEMA_MEMBERS`};function ie(e){let t={},n=`<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/"><Header/><Body><Discover xmlns="urn:schemas-microsoft-com:xml-analysis">`;return n+=`<RequestType>`+(re[e.command]||e.command)+`</RequestType>`,n+=`<Restrictions>`+k(`RestrictionList`,e.restrictions,!0)+`</Restrictions>`,e.connection&&e.connection.catalog&&(t.Catalog=e.connection.catalog),n+=`<Properties>`+k(`PropertyList`,t,!1)+`</Properties>`,n+=`</Discover></Body></Envelope>`,n}function k(e,t,n){let r=``;if(t){r+=`<`+e+`>`;let i;for(let e in t)t[e]&&(i=t[e],n&&(e=e.replace(/([A-Z]+(?=$|[A-Z][a-z])|[A-Z]?[a-z]+)/g,`$1_`).toUpperCase().replace(/_$/,``)),r+=`<`+e+`>`+i+`</`+e+`>`);r+=`</`+e+`>`}else r+=`<`+e+`/>`;return r}function ae(e){let t=new DOMParser().parseFromString(e,`text/xml`);return Array.from(t.querySelectorAll(`DiscoverResponse > return > root > row`)).map(e=>({name:O(e,`CUBE_NAME`),caption:O(e,`CUBE_CAPTION`),description:O(e,`DESCRIPTION`),type:O(e,`CUBE_TYPE`)}))}function oe(e){let t=new DOMParser().parseFromString(e,`text/xml`);return Array.from(t.querySelectorAll(`DiscoverResponse > return > root > row`)).map(e=>({name:O(e,`CATALOG_NAME`),description:O(e,`DESCRIPTION`)}))}function se(e){let t=new DOMParser().parseFromString(e,`text/xml`);return Array.from(t.querySelectorAll(`DiscoverResponse > return > root > row`)).map(e=>({name:O(e,`MEASURE_NAME`),caption:O(e,`MEASURE_CAPTION`),uniqueName:O(e,`MEASURE_UNIQUE_NAME`),description:O(e,`DESCRIPTION`),aggregator:O(e,`MEASURE_AGGREGATOR`),groupName:O(e,`MEASUREGROUP_NAME`),displayFolder:O(e,`MEASURE_DISPLAY_FOLDER`),defaultFormat:O(e,`DEFAULT_FORMAT_STRING`)}))}function ce(e){let t=new DOMParser().parseFromString(e,`text/xml`);return Array.from(t.querySelectorAll(`DiscoverResponse > return > root > row`)).map(e=>({name:O(e,`KPI_NAME`),uniqueName:O(e,`KPI_NAME`),caption:O(e,`KPI_CAPTION`),value:O(e,`KPI_VALUE`),goal:O(e,`KPI_GOAL`),status:O(e,`KPI_STATUS`),trend:O(e,`KPI_TREND`),statusGraphic:O(e,`KPI_STATUS_GRAPHIC`),trendGraphic:O(e,`KPI_TREND_GRAPHIC`),description:O(e,`KPI_DESCRIPTION`),groupName:O(e,`MEASUREGROUP_NAME`),type:`kpi`}))}function le(e){let t=new DOMParser().parseFromString(e,`text/xml`);return Array.from(t.querySelectorAll(`DiscoverResponse > return > root > row`)).map(e=>({caption:O(e,`DIMENSION_CAPTION`),defaultHierarchy:O(e,`DEFAULT_HIERARCHY`),description:O(e,`DESCRIPTION`),name:O(e,`DIMENSION_NAME`),type:parseInt(O(e,`DIMENSION_TYPE`),10),uniqueName:O(e,`DIMENSION_UNIQUE_NAME`)}))}function ue(e){let t=new DOMParser().parseFromString(e,`text/xml`);return Array.from(t.querySelectorAll(`DiscoverResponse > return > root > row`)).map(e=>({name:O(e,`HIERARCHY_NAME`),caption:O(e,`HIERARCHY_CAPTION`),description:O(e,`DESCRIPTION`),uniqueName:O(e,`HIERARCHY_UNIQUE_NAME`),dimensionUniqueName:O(e,`DIMENSION_UNIQUE_NAME`),displayFolder:O(e,`HIERARCHY_DISPLAY_FOLDER`),origin:O(e,`HIERARCHY_ORIGIN`),defaultMember:O(e,`DEFAULT_MEMBER`)}))}function de(e){let t=new DOMParser().parseFromString(e,`text/xml`);return Array.from(t.querySelectorAll(`DiscoverResponse > return > root > row`)).map(e=>({name:O(e,`LEVEL_NAME`),caption:O(e,`LEVEL_CAPTION`),description:O(e,`DESCRIPTION`),uniqueName:O(e,`LEVEL_UNIQUE_NAME`),dimensionUniqueName:O(e,`DIMENSION_UNIQUE_NAME`),displayFolder:O(e,`LEVEL_DISPLAY_FOLDER`),orderingProperty:O(e,`LEVEL_ORDERING_PROPERTY`),origin:O(e,`LEVEL_ORIGIN`),hierarchyUniqueName:O(e,`HIERARCHY_UNIQUE_NAME`)}))}function fe(e){let t=new DOMParser().parseFromString(e,`text/xml`);return Array.from(t.querySelectorAll(`DiscoverResponse > return > root > row`)).map(e=>({name:O(e,`MEMBER_NAME`),caption:O(e,`MEMBER_CAPTION`),uniqueName:O(e,`MEMBER_UNIQUE_NAME`),dimensionUniqueName:O(e,`DIMENSION_UNIQUE_NAME`),hierarchyUniqueName:O(e,`HIERARCHY_UNIQUE_NAME`),levelUniqueName:O(e,`LEVEL_UNIQUE_NAME`),childrenCardinality:O(e,`CHILDREN_CARDINALITY`)}))}let pe={schemaCatalogs:oe,schemaCubes:ae,schemaDimensions:le,schemaHierarchies:ue,schemaKPIs:ce,schemaLevels:de,schemaMeasures:se,schemaMembers:fe},me=(e,t)=>ee(void 0,void 0,void 0,function*(){let n=Object.assign({body:C(t),headers:{"Content-Type":`text/xml`},method:`POST`},e.init);return te(yield(yield fetch(e.url,n)).text())}),he=(e,t)=>ee(void 0,void 0,void 0,function*(){let n=Object.assign({body:ie(t),headers:{"Content-Type":`text/xml`},method:`POST`},e.init),r=yield(yield fetch(e.url,n)).text();return pe[t.command](r)}),ge=e=>e.hierarchy===`[Measures]`,_e=(e,t=new Set)=>((e.children||[]).forEach(e=>{t.add(e.levelName),_e(e,t)}),t.size),ve=e=>{let t=0;return(e.children||[]).forEach(e=>{t+=ve(e)||1}),t},ye=(e,t)=>(t&&t.hierarchy===e.hierarchy?[...(t.normalizedPath||[]).slice(0,-1),e.name||null]:[...t&&t.normalizedPath?t.normalizedPath:[],e.name]).filter(Boolean),be=(e,t)=>(t&&t.hierarchy===e.hierarchy?[...(t.path||[]).slice(0,-1),(e.levelNum===0?e.hierarchy:e.name)||null]:[...t&&t.path?t.path:[],e.levelNum===0?e.hierarchy:e.name]).filter(Boolean),xe=(e,t=-1,n=0,r=void 0,i=void 0,a=void 0,o=void 0,s=void 0)=>{let c=_e(e),l=ve(e),u=r||c,d=i||l,f=a?a.slice():[],p=o?o.slice():Array(d),m=f.findIndex(t=>t&&t.name===e.levelName&&t.level===e.levelNum),h=f[m],g={name:e.levelName,level:e.levelNum,index:t,cells:Array(d).fill(null)},_=t!==-1&&n!==-1,v={caption:e.caption,name:e.name,levelName:e.levelName,levelNum:e.levelNum,hasChildren:e.hasChildren,parentName:e.parentName,hierarchy:e.hierarchy,total:(e.total===void 0?!1:e.total)||s&&s.children.length<=1&&s.total,parent:s,rowIndex:t,colIndex:n,depth:1,breadth:1,path:e.path||[],normalizedPath:e.normalizedPath||[],children:e.children.filter(t=>t.hierarchy===e.hierarchy)};if(_)if(h)h.cells[n]=v,h.index>=t&&(t=h.index);else if(f[t]&&f[t].cells.length){for(let e=t;e<f.length;e++){let t=f[e];t.index++}f.splice(t,0,g),f[t].cells[n]=v}else f[t]=g,f[t].cells[n]=v;let y=0;return e.children&&e.children.length?e.children.forEach(e=>{let[r,i,,a]=xe(e,t+1,n+y,u,d,f,p,v);y+=a||1,f=r.slice(),p=i.slice()}):e.normalizedPath&&(p[n]={total:v.total,path:e.normalizedPath}),v.depth=c,v.breadth=l,[f,p,c,l]},Se=(e,t=null,n=0)=>{let r,i=Object.assign(Object.assign({},e),{total:!0,hasChildren:!1,children:[]});for(let n=0;n<e.children.length;n++){let a=Se(e.children[n],e,n);r||=a.hierarchy,a.hierarchy!==r&&t&&!t.children.some(e=>e.total&&e.name===i.name)&&!e.total&&(i.children.push(a),e.children.splice(n,1),n--)}if(e.children.filter(e=>!e.total).length>=1&&t&&!t.children.some(e=>e.total&&e.name===i.name)&&!e.total){let r=e.children[0].hierarchy;e.hierarchy===r&&t.children.splice(n+1,0,i)}return e},Ce=e=>{let t={children:[]},n={};if(e.every(e=>e.members.length===1&&ge(e.members[0])))return{children:e.map(e=>{let t=e.members[0];return Object.assign(Object.assign({},t),{normalizedPath:[t.name],parentName:t.name,path:[t.hierarchy]})})};for(let r=0;r<e.length;r++){let i=ke(e[r]),a=``;for(let e=0;e<i.members.length;e++){let r=i.members[e],o;if(t.children&&t.children.length===0)o=t;else if(n[a]&&!n[a+r.name]&&r.levelNum===0)o=n[a];else if(n[a+r.parentName]&&r.levelNum>0&&!n[a+r.parentName+r.name])o=n[a+r.parentName];else if(!n[a+r.parentName]&&r.levelNum>0&&!n[a+r.parentName+r.name]){let e=Object.keys(n).find(e=>r.parentName===n[e].name);e&&(o=n[e])}if(o){r.path=be(r,o),r.normalizedPath=ye(r,o);let e=o.children.findIndex(e=>e.hierarchy!==o.hierarchy);e===-1?o.children.push(r):o.children.splice(e,0,r)}r.parentName+=r.name,a+=r.parentName,n[a]||(n[a]=r)}}return ke(Se(t))},we=(e,t,n,r,i)=>{let a=Array.from(Array(i),()=>({cells:Array.from(Array(r),()=>null)})),o=e=>e.join(`|`),s=e=>e.members.map(e=>e.name),c=new Map,l=new Map;return t.forEach((e,t)=>{c.set(o(e.path),t)}),n.forEach((e,t)=>{l.set(o(e.path),t)}),e.forEach(e=>{let t=c.get(o(s(e.columnTuple))),r=l.get(o(s(e.rowTuple)));t!==void 0&&r!==void 0&&(a[r].cells[t]||(a[r].row=n[r].path,a[r].cells[t]=e))}),a},Te=(e,t,n,r)=>{let i=Array(r);for(let t=0;t<r;t++)for(let r=0;r<n;r++)if(e[r]&&e[r].cells[t]){let a=e[r].cells[t];i[t]||(i[t]={cells:Array(n).fill(null)}),i[t].cells[r]=Object.assign(Object.assign({},a),{rowSpan:a.colSpan,colSpan:a.rowSpan})}return[i,t,r,n]},Ee=e=>{let[t,n,r,i]=xe(e);for(let e=0;e<i;e++){let n=null;for(let i=0;i<r;i++)if(t[i]){let r=t[i].cells[e];!r&&n&&(n.rowSpan=(n.rowSpan||1)+1),n&&(n.colSpan=n.breadth||1),r&&(n=r)}}return[t,n,r,i]},De=e=>{let[t,n,r,i]=xe(e);for(let e=0;e<i;e++){let n=null;for(let i=0;i<r;i++)if(t[i]){let r=t[i].cells[e];!r&&n&&(n.rowSpan=(n.rowSpan||1)+1),n&&(n.colSpan=n.breadth),r&&(n=r)}}return Te(t,n,r,i)},A=e=>e?new Date(e.getTime()):null;function Oe(e,t){for(let n in e)if(e.hasOwnProperty(n)){let r=e[n];t[n]=j(r,t[n])}}function j(e,t){if(Array.isArray(e))return Ae(e);if(e instanceof Date)return A(e);if(e&&typeof e==`object`){let n=t||{};return Oe(e,n),n}else return e}function ke(e){return JSON.parse(JSON.stringify(e))}function Ae(e){return e.map(e=>j(e,void 0))}let je=(e,t,n)=>({hierarchyUniqueName:e,uniqueName:t,caption:t,measure:t,name:t,type:n,kpi:!0});function Me(e){let t=e.name;return[je(t,e.value,`value`),je(t,e.goal,`goal`),je(t,e.status,`status`),je(t,e.trend,`trend`)]}let Ne=e=>{let t,n=0;for(;n<e.length;n++)if(e[n].type===2){t=!0;break}t&&e.splice(n+1,0,{caption:`KPIs`,defaultHierarchy:`[KPIs]`,name:`KPIs`,uniqueName:`[KPIs]`})},M=(e,t)=>String(e.name)===String([t.defaultHierarchy?t.defaultHierarchy:t.uniqueName]),N=(e,t)=>String(e.name)===String(t.name),Pe=(e,t)=>{for(let n=e.length-1;n>=0;n--){let r=e[n],i=r.name.findIndex(e=>M({name:[e]},t)||String(e).startsWith(t.uniqueName));if(i!==-1)if(i===r.name.length-1||r.name.length===1)e.splice(n,1);else{r.name.splice(i,1);let t=e.findIndex(e=>e!==r&&String(e.name)===String(r.name));t!==-1&&(e[t]=Object.assign(Object.assign(Object.assign({},e[t]),r),e[t].expand||r.expand?{expand:!0}:{}),e.splice(n,1))}}},Fe=(e,t,n)=>{let r=-1;if(n.dropTarget&&n.dropDirection){let t=n.dropDirection?n.dropDirection===`before`?0:1:0;r=e.findIndex(e=>N(e,n.dropTarget))+t}r===-1?e.push(t):(e.forEach(e=>{e.expand&&e.name.length>1&&e.name.length>r&&e.name.splice(r,0,...t.name)}),e.splice(r,0,t))},Ie=e=>{let t=e.length&&e[0],n=t&&t.members[t.members.length-1];if(n&&ge(n)){let t=[],n=new Set(e.map(e=>e.members[e.members.length-1].caption)).size;for(let r=0;r<e.length;r+=n)t.push(e.slice(r,r+n));let r=[];return t.forEach(e=>{r.push(...e.reverse())}),r}return e},Le=e=>({columns:Ie(e.columns.tuples),data:e.data,rows:e.rows.tuples});function Re(e){let t=[];for(let n of Object.keys(e))t.push({name:JSON.parse(n),expand:e[n]});return t}let ze=(e,t=[])=>{e.sort=t},Be=(e,t=[])=>{e.filter=t};var P;(function(e){e.toggle=`HEADERS_ACTION_TOGGLE`,e.expand=`HEADERS_ACTION_EXPAND`,e.collapse=`HEADERS_ACTION_COLLAPSE`})(P||={});let Ve=(e,t,n)=>{let r=new Set;return e.children.forEach(e=>{let i=t(e);n&&r.add(String(e.path)),Ve(e,t,n||i).map(e=>{r.add(e)})}),Array.from(r.values())},He=(e,t)=>{switch(t.type){case P.toggle:{let n=e.find((e=>String(e.name)===String(t.payload)));return He(e,Object.assign(Object.assign({},t),{type:n&&n.expand?P.collapse:P.expand}))}case P.expand:{let n=e.find((e=>String(e.name)===String(t.payload)));if(n&&n.expand===!0)return e;if(n&&(n.expand===!1||n.expand===void 0))return e.map(e=>e===n?Object.assign(Object.assign({},n),{expand:!0}):e);{let n=e.slice();return n.push({name:t.payload,expand:!0}),n}}case P.collapse:{let n=Ve(t.tree,e=>!e.total&&String(e.path)===String(t.payload));return e.slice().filter(e=>!n.some(t=>t===String(e.name))).map(e=>Object.assign(Object.assign({},e),{expand:!!e.expand})).map(e=>String(e.name)===String(t.payload)?t.payload.length>1?void 0:{name:t.payload,expand:!1}:e).filter(Boolean)}default:return e}};var F;(function(e){e.toggleSelection=`PIVOT_CONFIGURATOR_ACTION_TOGGLE_SELECTION`,e.addColumnAxis=`PIVOT_CONFIGURATOR_ACTION_ADD_COLUMN_AXIS`,e.addColumnAxes=`PIVOT_CONFIGURATOR_ACTION_ADD_COLUMN_AXES`,e.removeColumnAxis=`PIVOT_CONFIGURATOR_ACTION_REMOVE_COLUMN_AXIS`,e.removeColumnAxes=`PIVOT_CONFIGURATOR_ACTION_REMOVE_COLUMN_AXES`,e.addRowAxis=`PIVOT_CONFIGURATOR_ACTION_ADD_ROW_AXIS`,e.addRowAxes=`PIVOT_CONFIGURATOR_ACTION_ADD_ROW_AXES`,e.removeRowAxis=`PIVOT_CONFIGURATOR_ACTION_REMOVE_ROW_AXIS`,e.removeRowAxes=`PIVOT_CONFIGURATOR_ACTION_REMOVE_ROW_AXES`,e.addMeasureAxis=`PIVOT_CONFIGURATOR_ACTION_ADD_MEASURE_AXIS`,e.addMeasureAxes=`PIVOT_CONFIGURATOR_ACTION_ADD_MEASURE_AXES`,e.removeMeasureAxis=`PIVOT_CONFIGURATOR_ACTION_REMOVE_MEASURE_AXIS`,e.removeMeasureAxes=`PIVOT_CONFIGURATOR_ACTION_REMOVE_MEASURE_AXES`,e.remove=`PIVOT_CONFIGURATOR_ACTION_REMOVE`,e.setSort=`PIVOT_CONFIGURATOR_ACTION_SET_SORT`,e.setFilter=`PIVOT_CONFIGURATOR_ACTION_SET_FILTER`,e.addFilter=`PIVOT_CONFIGURATOR_ACTION_ADD_FILTER`,e.changeFilter=`PIVOT_CONFIGURATOR_ACTION_CHANGE_FILTER`,e.removeFilter=`PIVOT_CONFIGURATOR_ACTION_REMOVE_FILTER`,e.setDragItem=`PIVOT_CONFIGURATOR_ACTION_SET_DRAGITEM`,e.drop=`PIVOT_CONFIGURATOR_ACTION_DROP`,e.setDropZone=`PIVOT_CONFIGURATOR_ACTION_SET_DROP_ZONE`,e.setDropTarget=`PIVOT_CONFIGURATOR_ACTION_SET_DROP_TARGET`,e.setDropDirection=`PIVOT_CONFIGURATOR_ACTION_SET_DROP_DIRECTION`})(F||={});let I=(e,t)=>{let n,r,i,a,o,s,c,l,u;switch(t.type){case F.toggleSelection:if(!Array.isArray(t.payload)){let n=t.payload;if(n.type===2||`aggregator`in n)return e.measureAxes.some(e=>M(e,n))?I(e,Object.assign(Object.assign({},t),{type:F.removeMeasureAxis})):I(e,Object.assign(Object.assign({},t),{type:F.addMeasureAxis}));if(n.type===`kpi`){let r=Me(n);return r.every(t=>e.measureAxes.some(e=>M(e,t)))?I(e,Object.assign(Object.assign({},t),{type:F.removeMeasureAxes,payload:r})):I(e,Object.assign(Object.assign({},t),{type:F.addMeasureAxes,payload:r.filter(t=>!e.measureAxes.some(e=>M(e,t)))}))}else if(t.payload.kpi)return e.measureAxes.some(e=>M(e,n))?I(e,Object.assign(Object.assign({},t),{type:F.removeMeasureAxis})):I(e,Object.assign(Object.assign({},t),{type:F.addMeasureAxis}));else return e.columnAxes.some(e=>M(e,n))?I(e,Object.assign(Object.assign({},t),{type:F.removeColumnAxis})):e.rowAxes.some(e=>M(e,n))?I(e,Object.assign(Object.assign({},t),{type:F.removeRowAxis})):e.columnAxes&&e.columnAxes.length&&(!e.rowAxes||!e.rowAxes.length)?I(e,Object.assign(Object.assign({},t),{type:F.addRowAxis})):I(e,Object.assign(Object.assign({},t),{type:F.addColumnAxis}))}break;case F.addColumnAxis:r=[...e.columnAxes||[],{name:[t.payload.defaultHierarchy||t.payload.uniqueName]}];break;case F.addColumnAxes:break;case F.removeColumnAxis:r=[...(e.columnAxes||[]).filter(e=>!M(e,t.payload))],Pe(r,t.payload);break;case F.removeColumnAxes:break;case F.addRowAxis:n=[...e.rowAxes||[],{name:[t.payload.defaultHierarchy||t.payload.uniqueName]}];break;case F.addRowAxes:break;case F.removeRowAxis:n=[...(e.rowAxes||[]).filter(e=>!M(e,t.payload))],Pe(n,t.payload);break;case F.removeRowAxes:break;case F.addMeasureAxis:i=[...e.measureAxes||[],{name:[t.payload.defaultHierarchy||t.payload.uniqueName]}];break;case F.removeMeasureAxis:i=[...(e.measureAxes||[]).filter(e=>!M(e,t.payload))];break;case F.addMeasureAxes:i=[...e.measureAxes||[],...(t.payload||[]).map(e=>({name:[e.defaultHierarchy||e.uniqueName]}))];break;case F.removeMeasureAxes:i=[...(e.measureAxes||[]).filter(e=>!t.payload.some(t=>M(e,t)))];break;case F.remove:e.columnAxes.some(e=>N(e,t.payload))&&(r=[...e.columnAxes.filter(e=>!N(e,t.payload))],Pe(r,{uniqueName:t.payload.name})),e.rowAxes.some(e=>N(e,t.payload))&&(n=[...e.rowAxes.filter(e=>!N(e,t.payload))],Pe(n,{uniqueName:t.payload.name})),e.measureAxes.some(e=>N(e,t.payload))&&(i=[...e.measureAxes.filter(e=>!N(e,t.payload))]);break;case F.setDragItem:s=t.payload;break;case F.setDropZone:c=t.payload;break;case F.setDropTarget:u=t.payload;break;case F.setDropDirection:l=t.payload;break;case F.drop:if(e.dragItem&&e.dropZone){let a=e.columnAxes.find(e=>N(e,t.payload)),o=e.rowAxes.find(e=>N(e,t.payload)),s=e.measureAxes.find(e=>N(e,t.payload)),c;switch(a&&(c=a,r=[...e.columnAxes.filter(e=>!N(e,t.payload))],Pe(r,{uniqueName:t.payload.name})),o&&(c=o,n=[...e.rowAxes.filter(e=>!N(e,t.payload))],Pe(n,{uniqueName:t.payload.name})),s&&(c=s,i=[...e.measureAxes.filter(e=>!N(e,t.payload))]),e.dropZone){case`columnAxes`:r||=e.columnAxes.slice(),Fe(r,c,e);break;case`rowAxes`:n||=e.rowAxes.slice(),Fe(n,c,e);break;case`measureAxes`:i||=e.measureAxes.slice(),Fe(i,c,e);break;default:break}}s=null,c=null,u=null;break;case F.setSort:a=t.payload;break;case F.setFilter:o=Array.isArray(t.payload)?t.payload:[t.payload];break;case F.addFilter:o=(e.filter||[]).slice(),Array.isArray(t.payload)?o.push(...t.payload):o.push(t.payload);break;case F.changeFilter:o=Array.isArray(t.payload)?(e.filter||[]).map(e=>t.payload.some(t=>t.field===e.field)?t.payload.find(t=>t.field===e.field):e):(e.filter||[]).map(e=>e.field===t.payload.field?t.payload:e);break;case F.removeFilter:o=(e.filter||[]).slice(),o=Array.isArray(t.payload)?o.filter(e=>!t.payload.some(t=>t.field===e.field&&t.operator===e.operator)):o.filter(e=>!(e.field===t.payload.field&&e.operator===t.payload.operator));break;default:break}return{dragItem:s,dropTarget:u,dropDirection:l,dropZone:c,columnAxes:r,rowAxes:n,measureAxes:i,filter:o,sort:a}};var L;(function(e){e[e.Sum=0]=`Sum`,e[e.Count=1]=`Count`,e[e.Min=2]=`Min`,e[e.Max=3]=`Max`,e[e.Average=4]=`Average`})(L||={});let Ue=0,We=e=>{let t=`${L[e]}_${Ue++}`;switch(e){case L.Sum:return{init:e=>{t in e||(e[t]=0)},merge:(e,n)=>{n[t]+=e[t]},accumulate:(e,n)=>{e[t]+=n},result:e=>e[t],format:e=>e.toFixed(2)};case L.Count:return{init:e=>{t in e||(e[t]=0)},merge:(e,n)=>{n[t]+=e[t]},accumulate:(e,n)=>{e[t]+=1},result:e=>e[t],format:e=>e.toFixed()};case L.Min:return{init:e=>{t in e||(e[t]=1/0)},merge:(e,n)=>{n[t]=Math.min(e[t],n[t])},accumulate:(e,n)=>{e[t]=Math.min(n,e[t])},result:e=>Number.isFinite(e[t])?e[t]:NaN,format:e=>e.toFixed(2)};case L.Max:return{init:e=>{t in e||(e[t]=-1/0)},merge:(e,n)=>{n[t]=Math.max(e[t],n[t])},accumulate:(e,n)=>{e[t]=Math.max(n,e[t])},result:e=>Number.isFinite(e[t])?e[t]:NaN,format:e=>e.toFixed(2)};case L.Average:let e=`${t}_sum`,n=`${t}_count`;return{init:t=>{n in t||(t[e]=0,t[n]=0)},merge:(t,r)=>{r[e]+=t[e],r[n]+=t[n]},accumulate:(t,r)=>{t[e]+=r,t[n]+=1},result:t=>t[e]/t[n],format:e=>e.toFixed(2)};default:throw Error(`Invalid aggregate type provided`)}},Ge=We(L.Sum),Ke=We(L.Count),qe=We(L.Min),Je=We(L.Max),Ye=We(L.Average),R=e=>e!=null,Xe=e=>e==null,Ze=e=>Array.isArray(e),Qe=e=>typeof e==`function`,z=e=>typeof e==`string`,$e=e=>Xe(e)||e.trim().length===0,et=e=>!$e(e),tt=e=>!isNaN(e-parseFloat(e)),B=e=>e&&e.getTime,V=e=>R(e.filters),H=(e,t,n)=>r=>e(r)?t(r):n(r),U=(...e)=>t=>e.reduceRight((e,t)=>t(e),t),nt=e=>e,rt=e=>(t,...n)=>e()?`${t[0]}${n[0]}${t[1]}`:n[0],W=e=>new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds())),G=({field:e,value:t,ignoreCase:n,operator:r})=>({value:`'${t.replace(/'/g,`''`)}'`,field:e,ignoreCase:n,operator:r}),it=({field:e,value:t,ignoreCase:n,operator:r})=>({value:`${encodeURIComponent(t)}`,field:e,ignoreCase:n,operator:r}),at=({field:e,value:t,ignoreCase:n,operator:r})=>({field:rt(()=>n)`tolower(${e})`,value:t,ignoreCase:n,operator:r}),ot=({field:e,value:t,ignoreCase:n,operator:r})=>({value:t,field:e.replace(/\./g,`/`),ignoreCase:n,operator:r}),st=e=>z(e.value),ct=e=>B(e.value),lt=(e,t)=>n=>rt(()=>n.filters.length>1)`(${n.filters.map(e).join(t(n))})`,ut=e=>({"!=":`neq`,"<":`lt`,"<=":`lte`,"==":`eq`,">":`gt`,">=":`gte`,equal:`eq`,equals:`eq`,equalto:`eq`,ge:`gte`,greater:`gt`,greaterthan:`gt`,greaterthanequal:`gte`,isempty:`isempty`,isequalto:`eq`,isgreaterthan:`gt`,isgreaterthanorequalto:`gte`,islessthan:`lt`,islessthanorequalto:`lte`,isnotempty:`isnotempty`,isnotequalto:`neq`,isnull:`isnull`,le:`lte`,less:`lt`,lessthan:`lt`,lessthanequal:`lte`,ne:`neq`,notequal:`neq`,notequals:`neq`,notequalto:`neq`,notsubstringof:`doesnotcontain`})[e.toLowerCase()]||e,dt=e=>{e.filters&&=e.filters.map(e=>{let t=Object.assign({},e);return!V(e)&&z(e.operator)&&(t.operator=ut(e.operator)),V(e)&&dt(t),t})},ft=e=>V(e)?Object.assign({},e):{filters:Ze(e)?e:[e],logic:`and`},pt=e=>(R(e)&&(e=ft(e),dt(e)),e),mt=({utcDates:e})=>({field:t,value:n,ignoreCase:r,operator:i})=>({value:(e?n:W(n)).toISOString(),field:t,ignoreCase:r,operator:i}),ht=({operator:e})=>({field:t,value:n})=>`${e}(${t},${n})`,gt=({operator:e})=>({field:t,value:n})=>`${t} ${e} ${n}`,_t=e=>U(e,it,G,at,ot),vt=e=>_t(ht(e)),yt=e=>_t(gt(e)),bt=e=>U(gt(e),ot),xt=e=>U(gt(e),ot,mt(e)),K=e=>H(ct,xt(e),bt(e)),q=e=>H(st,yt(e),K(e)),St=e=>`${e} eq -1`,Ct=e=>U(e,ot),wt=(e,t)=>({contains:vt(Object.assign(Object.assign({},t),{operator:`contains`})),doesnotcontain:U(St,vt(Object.assign(Object.assign({},t),{operator:`indexof`}))),endswith:vt(Object.assign(Object.assign({},t),{operator:`endswith`})),eq:q(Object.assign(Object.assign({},t),{operator:`eq`})),gt:q(Object.assign(Object.assign({},t),{operator:`gt`})),gte:q(Object.assign(Object.assign({},t),{operator:`ge`})),isempty:Ct(({field:e})=>`${e} eq ''`),isnotempty:Ct(({field:e})=>`${e} ne ''`),isnotnull:Ct(({field:e})=>`${e} ne null`),isnull:Ct(({field:e})=>`${e} eq null`),lt:q(Object.assign(Object.assign({},t),{operator:`lt`})),lte:q(Object.assign(Object.assign({},t),{operator:`le`})),neq:q(Object.assign(Object.assign({},t),{operator:`ne`})),startswith:vt(Object.assign(Object.assign({},t),{operator:`startswith`}))})[e],Tt=e=>` ${e.logic} `,Et=e=>t=>wt(t.operator,e)(t),Dt=e=>lt(t=>H(V,Dt(e),Et(e))(t),Tt),Ot={},kt=/\[(?:(\d+)|['"](.*?)['"])\]|((?:(?!\[.*?\]|\.).)+)/g;Ot.undefined=e=>e;let J=(e,t)=>{let n=e+t;if(Ot[n])return Ot[n];let r=[];return e.replace(kt,(e,t,n,i)=>{r.push(R(t)?t:n||i)}),Ot[n]=e=>{let n=e;for(let e=0;e<r.length;e++)if(n=n[r[e]],!R(n)&&t)return n;return n},Ot[n]},At=e=>t=>[e,t],jt=()=>null,Mt=e=>R(e)&&Ze(e)&&e.length>0,Y=e=>t=>R(e(t)),Nt=e=>t=>Mt(e(t)),X=(e,t)=>H(e,t,jt),Pt=({skip:e,take:t})=>Math.floor((e||0)/t)+1,Ft=(e,t)=>n=>e(n).map(t).join(`~`),It=e=>t=>t.slice(0,t.indexOf(e)),Lt=(e=>U(...e.map(([e,t])=>n=>n.replace(new RegExp(e,`g`),t))))([[`"`,``],[`:`,`-`]]),Rt=It(`.`),zt=({field:e,dir:t=`asc`})=>`${e}-${t}`,Bt=({field:e,aggregate:t})=>`${e}-${t}`,Vt=J(`take`),Z=J(`aggregates`),Ht=J(`skip`),Ut=J(`group`),Wt=J(`sort`,!0),Gt=Ft(Wt,zt),Kt=Ft(Ut,zt),qt=Ft(Z,Bt),Jt=U(e=>`datetime'${e}'`,Rt,Lt,JSON.stringify,W),Yt=({field:e,value:t,ignoreCase:n,operator:r})=>({value:Jt(t),field:e,ignoreCase:n,operator:r}),Xt=U(At(`page`),Pt),Zt=U(At(`pageSize`),Vt),Qt=U(At(`group`),Kt),$t=U(At(`sort`),Gt),en=U(At(`aggregate`),qt);X(Y(Ht),Xt),X(Y(Vt),Zt),X(Nt(Ut),Qt),X(Y(Z),en),X(Nt(Wt),$t);let tn=({field:e})=>et(e),nn=({field:e,operator:t,value:n})=>`${e}~${t}~${n}`,rn=H(ct,U(nn,Yt),nn),an=e=>X(tn,H(st,U(nn,G,e?it:nt),rn)),on=({logic:e})=>`~${e}~`,sn=e=>lt(t=>H(V,sn(e),an(e))(t),on),cn=(e,t,n)=>(t[e]=n,t),ln=e=>t=>Object.keys(t).reduce(e.bind(null,t),{}),un=ln((e,t,n)=>cn(n.toLowerCase(),t,e[n])),dn=ln((e,t,n)=>cn(n,t,un(e[n]))),fn=(e,t)=>R(e)?e:t,pn=U(({field:e,hasSubgroups:t,value:n,aggregates:r,items:i})=>({aggregates:dn(r),field:e,items:t?i.map(pn):i,value:n}),e=>({aggregates:e.Aggregates||e.aggregates,field:e.Member||e.member||e.field,hasSubgroups:e.HasSubgroups||e.hasSubgroups||!1,items:e.Items||e.items,value:fn(e.Key,fn(e.key,e.value))})),mn=(e,t)=>Xe(e)?e===t?0:-1:Xe(t)?1:e.localeCompare?e.localeCompare(t):e>t?1:e<t?-1:0,hn=(e,t)=>mn(t,e),gn=e=>{if(typeof e.compare==`function`)return e.compare;let t=J(e.field,!0);return(n,r)=>(e.dir===`asc`?mn:hn)(t(n),t(r))},_n=(e,t)=>0,vn=e=>e.filter(e=>R(e.dir)||R(e.compare)).map(e=>gn(e)).reduce((e,t)=>(n,r)=>e(n,r)||t(n,r),_n),yn=e=>(e=R(e)&&e.getTime?e.getTime():e,e+``),bn=e=>{let t=J(e,!0),n=0;return(r,i)=>{r[e]=r[e]||{};let a=t(i),o=yn(a),s=r[e][o]||{__position:n++,aggregates:{},items:[],value:a};return s.items.push(i),r[e][o]=s,r}},xn=(e={})=>(Object.keys(e).forEach(t=>{let n=e[t];Object.keys(n).forEach(e=>{n[e]=n[e].result()})}),e),Sn=e=>({average:()=>{let e=0,t=0,n=!1,r=null;return{calc:i=>{tt(i)?(e+=i,t++,n=!0):!n&&r===null&&(r=i)},result:()=>n?e/t:r}},count:()=>{let e=0;return{calc:()=>e++,result:()=>e}},max:()=>{let e=-1/0;return{calc:t=>{e=tt(e)||B(e)?e:t,e<t&&(tt(t)||B(t))&&(e=t)},result:()=>e}},min:()=>{let e=1/0;return{calc:t=>{e=tt(e)||B(e)?e:t,e>t&&(tt(t)||B(t))&&(e=t)},result:()=>e}},sum:()=>{let e=0;return{calc:t=>{t=R(t)?t:0,e+=t},result:()=>e}}})[e](),Cn=e=>{let t=e.map(e=>{let t=J(e.field,!0),n=(e.aggregate||``).toLowerCase(),r=J(n,!0);return(i,a)=>{let o=i[e.field]||{},s=r(o)||Sn(n);return s.calc(t(a)),o[e.aggregate]=s,i[e.field]=o,i}});return(e,n)=>t.reduce((e,t)=>t(e,n),e)},wn=e=>(t=>((n,r,i)=>t(n,e(r,i)))),Tn=e=>R(e.__value),En=(e,t,n)=>{let r=t;for(let t=0,i=n.length;t<i;t++)if(r=e(r,n[t],t),Tn(r)){r=r.__value;break}return r},Dn=wn(e=>e),On=(e,t=[],n=Dn)=>{let r={};return t.length?xn(En(n(Cn(t)),r,e)):r},kn={or:{concat:(e,t)=>n=>e(n)||t(n),identity:()=>!1},and:{concat:(e,t)=>n=>e(n)&&t(n),identity:()=>!0}},An={contains:(e,t)=>(e||``).indexOf(t)>=0,doesnotcontain:(e,t)=>(e||``).indexOf(t)===-1,doesnotendwith:(e,t)=>(e||``).indexOf(t,(e||``).length-(t||``).length)<0,doesnotstartwith:(e,t)=>(e||``).lastIndexOf(t,0)===-1,endswith:(e,t)=>(e||``).indexOf(t,(e||``).length-(t||``).length)>=0,eq:(e,t)=>e===t,gt:(e,t)=>e>t,gte:(e,t)=>e>=t,isempty:e=>e===``,isnotempty:e=>e!==``,isnotnull:e=>R(e),isnull:e=>Xe(e),lt:(e,t)=>e<t,lte:(e,t)=>e<=t,neq:(e,t)=>e!=t,startswith:(e,t)=>(e||``).lastIndexOf(t,0)===0},jn=/^\/Date\((.*?)\)\/$/,Mn=(e,t)=>{if(e!=null&&z(e)){let n=jn.exec(e);if(n)return new Date(+n[1]).getTime();if(t)return e.toLowerCase()}else if(e!=null&&B(e))return e.getTime();return e},Nn=(e,t,n,r)=>{if(!R(t))return e;let i=e;if(z(t)){let a=jn.exec(t);if(a)t=new Date(+a[1]);else{let t=Qe(r);i=r=>{let i=e(r);if(i===null||t&&Ze(i))return i;let a=typeof i==`string`?i:i+``;return n?a.toLowerCase():a}}}return B(t)?e=>{let t=i(e);return B(t)?t.getTime():t}:i},Pn=({field:e,ignoreCase:t,value:n,operator:r})=>{e=R(e)?e:e=>e,t=R(t)?t:!0;let i=Nn(Qe(e)?e:J(e,!0),n,t,r);n=Mn(n,t);let a=Qe(r)?r:An[r];return e=>a(i(e),n,t)},Fn=e=>{let t=kn[e.logic];return e.filters.filter(R).map(e=>V(e)?Fn(e):Pn(e)).reduce(t.concat,t.identity)},In=e=>!e||e.filters.length===0?()=>!0:Fn(e),Ln=(e,t)=>!R(t)||V(t)&&t.filters.length===0?e:e.filter(In(pt(t))),Rn=e=>(e=Ze(e)?e:[e],e.map(e=>Object.assign({dir:`asc`},e))),zn=wn(e=>e),Bn=(e,t=[],n=zn,r=e)=>{if(t=Rn(t),!t.length)return e;let i=t[0],a=En(n(bn(i.field)),{},e),o=[];if(Object.keys(a).forEach(e=>{Object.keys(a[e]).forEach(n=>{let s=a[e][n],c={},l=r;R(i.aggregates)&&(l=Ln(r,{field:i.field,ignoreCase:!1,operator:`eq`,value:s.value}),c=On(l,i.aggregates)),o[s.__position]={aggregates:c,field:e,items:t.length>1?Bn(s.items,t.slice(1),zn,l):s.items,value:s.value}})}),R(i.dir)||R(i.compare)){let e=vn([{field:`value`,dir:i.dir,compare:i.compare}]);o.sort(e)}return o};var Vn;(function(e){e.Contains=`contains`,e.DoesNotContain=`doesnotcontain`,e.DoesNotEndWith=`doesnotendwith`,e.DoesNotStartWith=`doesnotstartwith`,e.EndsWith=`endswith`,e.EqualTo=`eq`,e.GreaterThan=`gt`,e.GreaterThanOrEqual=`gte`,e.IsEmpty=`isempty`,e.IsNotEmpty=`isnotempty`,e.IsNotNull=`isnotnull`,e.IsNull=`isnull`,e.LessThan=`lt`,e.LessThanOrEqual=`lte`,e.NotEqualTo=`neq`,e.StartsWith=`startswith`})(Vn||={});function Hn(e,t){`filters`in e?e.filters.map(e=>Hn(e,t)):t(e)}let Un=(e,t)=>{(Array.isArray(e)?e:e.filters).forEach(e=>Hn(e,t))},Wn=(e,t,n)=>{let r=n?Array.isArray(n)?{logic:`and`,filters:n}:n:void 0,i=r?In(r):()=>!0,a=e.concat(t),o=[];Un(n||[],e=>{`field`in e&&e.field&&o.push(e.field)});let s={hasFilter:!1,predicate:i,filteringAxes:[]};if(o.some(e=>typeof e==`function`))s.filteringAxes=a.slice();else if(o.length>0){let e=Array.from(new Set(o).values());s.filteringAxes=a.filter(t=>e.indexOf(t.key)>=0)}return s.hasFilter=s.filteringAxes.length>0,s},Q=(e,t,n)=>{let r=e.get(t);return r||(r=n||new Map,e.set(t,r)),r},Gn=(e,t)=>e+`&`+t,$=e=>{let t=e.indexOf(`&`);return t===-1?[e,void 0]:[e.substring(0,t),e.substring(t+1)]},Kn=(e,t,n)=>{e.forEach((r,i)=>{if(i!==n){r.size>0&&Kn(r,t,n);let i=r.get(n),a=Q(e,n,{});t.forEach(e=>{e.aggregate.init(a),e.aggregate.merge(i,a)})}})},qn=(e,t,n,r)=>{e.forEach((e,i)=>{let a;i===r?(a=Q(t,i,{}),n.forEach(t=>{t.aggregate.init(a),t.aggregate.merge(e,a)})):(a=Q(t,i),qn(e,a,n,r))})},Jn=(e,t,n,r)=>{e.forEach((i,a)=>{a!==n&&(i.size>0&&Jn(i,t,n,r),qn(Q(i,n),Q(e,n),t,r))})},Yn=(e,t,n,r,i,a)=>{let o=new Map,s=new Map,c=t.concat(n),l=new Set,{dataField:u,columnsData:d}=i,{hasFilter:f,predicate:p,filteringAxes:m}=Wn(t,n,a);return e.forEach(e=>{if(f){let t={};if(m.forEach(n=>{t[n.key]=n.displayValue(e)}),!p(t))return}let i=c.map(t=>t.displayValue(e)),a=``.concat(...i),h=s.get(a);if(!h){let i=o,c=t=>{i=Q(i,Gn(t.key,t.displayValue(e)))};t.forEach(c),i=Q(i,d),l.add(i),n.forEach(c),h={},i.set(u,h),s.set(a,h),r.forEach(e=>{e.aggregate.init(h)})}r.forEach(t=>{t.aggregate.accumulate(h,t.value(e))})}),l.forEach(e=>Kn(e,r,u)),Jn(o,r,d,u),o},Xn=(e,t,n)=>{let r=new Map;return qn(e,r,n,t),r},Zn=(e,t,n)=>{let[r,i]=$(e),a=n.slice();if(r&&i){let n=t.find(e=>e.key===r),i=n?n.caption:``;return a.map(t=>t===i?e:t)}return a},Qn=(e,t,n,r,i,a,o)=>{let s=o||new Map,c=r.map(e=>e.caption);for(;t.length>1&&r.some(e=>e.caption===t[t.length-1].caption);)t.pop(),c.pop();let l=e;return t.forEach((e,t)=>{if(c=Zn(e.name,r,c),l&&!r.some(t=>t.caption===e.name)){if(!l.has(e.name)&&!s.has(c.slice(0,c.indexOf(e.name)+1).join(`-`))){let o=Array.from(l).find(e=>e[0]!==n),u=o&&o[0],d=u&&$(u)[0],f=d?t-r.findIndex(e=>e.key===d):0;for(let t=0;t<f;t++){let t=[];l.forEach((e,r)=>{r!==n&&t.push(...Array.from(e).filter(e=>e[0]!==n))});let o=new Map;t.forEach(e=>{if(o.has(e[0])){let t=o.get(e[0]),n=e[1],r=new Map;qn(t,r,i,a),qn(n,r,i,a),o.set(e[0],r)}else o.set(e[0],new Map(e[1]))});let u=c.slice(0,c.indexOf(e.name));o.forEach((e,t)=>{s.set(Zn(t,r,u.concat([t])).join(`-`),e)}),o.set(n,l.get(n)),l=o}}l=l.get(e.name)||s.get(c.slice(0,c.indexOf(e.name)+1).join(`-`))}}),l},$n=(e,t,n,r,i,a,o)=>{let s=[],{dataField:c,columnsData:l}=r,u=new Map;return t.forEach(t=>{let r=Qn(e,t.members.slice(),l,a,o,c,u),d=r&&r.get(l);n.forEach(e=>{let n=e.members.slice(),r=o[0];if(n[n.length-1].levelName===`[Measures].[MeasuresLevel]`){let e=n.pop();r=o.find(t=>String(t.name)===e.caption)||r}let a=d&&Qn(d,n,c,i,o,c),l=``,u=``;if(a&&r){let e=r.aggregate.result(a.get(c));l=String(e),u=r.aggregate.format(e)}s.push({columnTuple:e,data:{fmtValue:u,ordinal:0,value:l},rowTuple:t})})}),s},er=(e,t)=>{let n={members:[]};return e.forEach(e=>{let r=t.find(t=>t.key===e),i=r?r.caption:``,a={caption:i,children:[],hasChildren:!0,parentName:``,levelNum:0,levelName:i,hierarchy:e,name:i};n.members.push(a)}),n},tr=(e,t)=>(n,r)=>{let i=e.dir,a=t.sortValue($(n[0])[1]),o=t.sortValue($(r[0])[1]);return a<o?i===`asc`?-1:1:a>o?i===`asc`?1:-1:0},nr=(e,t,n)=>{e.forEach((e,r)=>{n[r]||nr(e,Q(t,r),n)})},rr=(e,t,n)=>{let r=[],i=e=>Array.from(e).filter(e=>!n[e[0]]),a=new Map(e),o;for(let e=0;e<t.length;e++)if(o=a.get(t[e]),o)a=new Map(o);else if(e<t.length-1&&Array.from(a).some(n=>$(n[0])[0]===t[e])){let e=[];a.forEach((t,r)=>{n[r]||e.push(...i(new Map(t)))}),a=new Map,e.forEach(e=>{if(a.has(e[0])){let t=a.get(e[0]),r=e[1],i=new Map;nr(t,i,n),nr(r,i,n),a.set(e[0],i)}else a.set(e[0],new Map(e[1]))})}else (e===0||e===t.length-1)&&Array.from(a).some(n=>$(n[0])[0]===t[e])&&r.push(...i(a));return r},ir=e=>{let t=new Set;return e.forEach(e=>{e.name.length===1&&!$(e.name[0])[1]&&t.add(e.name[0])}),t},ar=(e,t,n,r,i)=>{let a=ir(t),o=[],s=er(a,e);o.push(s);for(let s=0;s<t.length;s++){let c=t[s];if(c.name.length===1&&!c.expand&&a.has(c.name[0]))continue;let l=new Set(a.keys()),u=[],d=[],f=[],p;c.name.forEach((t,a)=>{let[s,m]=$(t);if(p=e.find(e=>e.key===s),m){l.delete(s),d.push(t);let e={children:[],caption:m,hierarchy:s,levelNum:1,levelName:s+` `+s,name:t,parentName:p?p.caption:``};u.push(e)}else if(c.expand&&c.name.length-1===a){l.delete(t),d.push(t);let a=rr(n,d,i),o=r.find(e=>e.field===s);o&&o.dir&&a.sort(tr(o,p));for(let n=0;n<a.length;n++){let r=a[n][0],i={members:[]};f.push(i);let o=$(r)[1];p=e.find(e=>e.key===t);let s={caption:o,children:[],levelName:t+` `+t,levelNum:1,parentName:p?p.caption:``,hierarchy:t,name:r};i.members.push(...u),i.members.push(s)}}else if(c.expand){p=e.find(e=>e.key===t);let n=p?p.caption:``;l.delete(t),d.push(t);let r={children:[],caption:n,hierarchy:t,levelName:n,levelNum:0,name:n,parentName:``};u.push(r)}l.forEach(t=>{f.forEach(n=>{p=e.find(e=>e.key===t);let r=p?p.caption:``,i={children:[],hasChildren:!0,caption:r,hierarchy:t,levelName:r,levelNum:0,name:r,parentName:``};n.members.push(i)})}),o.push(...f)})}return o},or=e=>({caption:String(e.name),children:[],hasChildren:!1,hierarchy:`[Measures]`,levelName:`[Measures].[MeasuresLevel]`,levelNum:0,name:`[Measures].[`+e.name+`]`,parentName:``}),sr=(e,t)=>{let n=or(t),r=ke(e);return r.members.push(n),r},cr=(e,t)=>{if(t.length<2)return e;let n=e.slice();for(let e=n.length-1;e>=0;e--){let r=n[e];n[e]=sr(n[e],t[0]);for(let i=1;i<t.length;i++){let a=sr(r,t[i]);n.splice(e+i,0,a)}}return Ie(n)},lr=e=>{let{dataTree:t,rowSettings:n,columnSettings:r,rowAxes:i,columnAxes:a,measures:o,sort:s,fields:c}=e,l={[c.columnsData]:c.columnsData,[c.dataField]:c.dataField},u=a.length?ar(r,a,t.get(c.columnsData),s,l):o.map(e=>({members:[or(e)]})),d=a.length>0?cr(u,o):u,f=i.length?ar(n,i,t,s,l):[{members:[]}];return{columns:d,data:$n(t,f,d,c,r,n,o),rows:f}},ur=(e,t)=>{let n=Object.keys(e).map(e=>({caption:e,defaultHierarchy:e,description:``,name:e,uniqueName:e,hierarchyUniqueName:e,measure:!0,type:1}));return t.length&&n.push({caption:`Measures`,children:t.map(e=>({aggregator:`1`,caption:String(e.name),defaultFormat:``,description:``,displayFolder:``,groupName:String(e.name),name:String(e.name),uniqueName:String(e.name)})),type:2,description:``,name:`Measures`,uniqueName:`[Measures]`}),n};var dr=class{get elements(){return this.root?Array.from(this.root.querySelectorAll(this.selectors.join(`,`))):[]}get first(){return this.root&&this.root.querySelector(this.selectors.join(`,`))||null}get last(){let e=this.elements;return e[e.length-1]||null}get current(){return this.elements.find(e=>e.matches(`:focus`))}constructor(e){this.tabIndex=0,this.root=null,this.eventHandlers={},this.update=()=>{},this.tabIndex=e.tabIndex}start(e){for(let t in this.root=e,this.mouseEvents)this.mouseEvents[t]&&(this.eventHandlers[t]=(e=>{let n=e.target instanceof Element&&e.target.closest(this.selectors.join(`,`));n&&this.mouseEvents[t].call(void 0,n,this,e)}),e.addEventListener(t,this.eventHandlers[t]));for(let t in this.keyboardEvents)this.keyboardEvents[t]&&(this.eventHandlers[t]=(e=>{let n=e.target instanceof Element&&e.target.closest(this.selectors.join(`,`)),r=e.key===` `?`Space`:e.key;n&&this.keyboardEvents[t][r]&&this.keyboardEvents[t][r].call(void 0,n,this,e)}),e.addEventListener(t,this.eventHandlers[t]))}stop(){if(this.root)for(let e in this.eventHandlers)this.eventHandlers[e]&&this.root.removeEventListener(e,this.eventHandlers[e]);this.root=null}focusElement(e,t){e&&(t&&(t.removeAttribute(`tabindex`),t.classList.remove(`k-focus`)),e.setAttribute(`tabindex`,String(this.tabIndex)),e.focus({preventScroll:!0}))}};let fr=`.k-pivotgrid .k-pivotgrid-values`,pr=`.k-pivotgrid .k-pivotgrid-column-headers`,mr=`.k-pivotgrid .k-pivotgrid-row-headers`,hr=`.k-pivotgrid > .k-pivotgrid-empty-cell`,gr=`table.k-pivotgrid-table`,_r=`.k-pivotgrid-cell`,vr=[fr,pr,mr].join(`,`),yr=[hr,[pr,gr,_r].join(` `),[mr,gr,_r].join(` `),[fr,gr,_r].join(` `)],br=(e,t,n)=>{let r=e.querySelector(`.k-icon, .k-svg-icon`);if(r){let i=t.elements.indexOf(e);t.update=()=>{t.focusElement(t.elements[i],null),t.update=()=>{}},r.click(),n.preventDefault()}},xr=(e,t,n)=>{e.offsetLeft<t.scrollLeft&&(n.scrollLeft=e.offsetLeft)},Sr=(e,t,n)=>{e.offsetLeft+e.offsetWidth>t.scrollLeft+t.offsetWidth&&e.offsetWidth<t.offsetWidth&&(n.scrollLeft=e.offsetLeft+e.offsetWidth-t.offsetWidth)},Cr=(e,t,n)=>{t.scrollTop&&e.offsetTop<t.scrollTop&&(n.scrollTop=e.offsetTop)},wr=(e,t,n)=>{e.offsetTop+e.offsetHeight>t.scrollTop+t.offsetHeight&&e.offsetHeight<t.offsetHeight&&(n.scrollTop=e.offsetTop+e.offsetHeight-t.offsetHeight)},Tr=(e,t,n)=>{let r=t.querySelector(fr),i=e&&e.closest(vr);!r||!i||!e||n.forEach(t=>t(e,i,r))},Er=e=>{let t=Array.from(e.rows),n=Array.from(t&&t[0]&&t[0].cells||[]).map(e=>e.colSpan).reduce((e,t)=>e+t,0),r=t.map(()=>Array(n));return t.forEach((e,t)=>{let n=0;Array.from(e.cells).forEach(e=>{for(let i=0;i<e.colSpan;i++){for(let i=0;i<e.rowSpan;i++){let a=r[t+i].findIndex((e,t)=>t>=n&&!e);r[t+i][a]=e}n++}})}),r},Dr=e=>{let t=Er(e.querySelector([pr,gr].join(` `))),n=Er(e.querySelector([mr,gr].join(` `))),r=Er(e.querySelector([fr,gr].join(` `))),i=e.querySelector(hr),a=Array(n[0].length).fill(i),o=[];for(let e=0;e<t.length;e++)o.push(a.concat(t[e]));for(let e=0;e<n.length;e++)o.push(n[e].concat(r[e]));return o},Or=(e,t)=>{for(let n=0;n<e.length;n++)for(let r=0;r<e[n].length;r++)if(e[n][r]===t)return[n,r];return[-1,-1]},kr=e=>e.ctrlKey||e.metaKey,Ar=(e,t,n)=>{let r=Dr(e),i=Or(r,t),a=[i[0]+n[0],i[1]+n[1]],o=r[a[0]]&&r[a[0]][a[1]];for(;o&&o===t;)a=[a[0]+n[0],a[1]+n[1]],o=r[a[0]]&&r[a[0]][a[1]];return o},jr={keydown:{ArrowLeft:(e,t,n)=>{n.preventDefault();let r=Ar(t.root,e,[0,-1]);t.focusElement(r,e),Tr(r,t.root,[Sr,xr,wr,Cr])},ArrowRight:(e,t,n)=>{n.preventDefault();let r=Ar(t.root,e,[0,1]);t.focusElement(r,e),Tr(r,t.root,[xr,Sr,wr,Cr])},ArrowUp:(e,t,n)=>{n.preventDefault();let r=Ar(t.root,e,[-1,0]);t.focusElement(r,e),Tr(r,t.root,[Sr,xr,wr,Cr])},ArrowDown:(e,t,n)=>{n.preventDefault();let r=Ar(t.root,e,[1,0]);t.focusElement(r,e),Tr(r,t.root,[Sr,xr,Cr,wr])},o:(e,t,n)=>{if(!t.root)return;let r=t.root.nextElementSibling;r&&r instanceof HTMLElement&&r.matches(`div.k-pivotgrid-configurator-button`)&&(r.click(),setTimeout(()=>{if(t.root.parentNode){let e=t.root.parentNode.querySelector(`.k-pivotgrid-configurator-content .k-form-field .k-fields-list-wrapper .k-treeview`);e instanceof HTMLElement&&(e.setAttribute(`tabindex`,String(t.tabIndex)),e.focus())}},0))},Enter:br,Space:br,Home:(e,t,n)=>{let r=Dr(t.root),i=(kr(n)?r[0]:r.find(t=>!!t.find(t=>t===e))||[])[0];i&&(t.focusElement(i,e),Tr(i,t.root,[Sr,xr,wr,Cr]),n.preventDefault())},End:(e,t,n)=>{let r=Dr(t.root),i=kr(n)?r[r.length-1]:r.find(t=>!!t.find(t=>t===e))||[],a=i&&i[i.length-1]||null;a&&(t.focusElement(a,e),Tr(a,t.root,[xr,Sr,Cr,wr]),n.preventDefault())}}},Mr={click:(e,t)=>{if(e&&e instanceof HTMLElement){let n=t.elements.find(e=>e.hasAttribute(`tabindex`))||null;t.focusElement(e,n)}}};var Nr=class extends dr{constructor(){super(...arguments),this.selectors=yr,this.mouseEvents=Mr,this.keyboardEvents=jr}};let Pr=kendo.jQuery;function Fr(e,t){var n=this,r=n.wrapper;if(e&&n.loader){if(!n.wrapper.find(`.k-loader-container`).length){var i={message:`Loading...`,overlayColor:`dark`,themeColor:`primary`};i=Pr.extend({},i,t);let e=kendo.html.renderLoaderContainer(Pr(`<div></div>`),i),a=n.wrapper.width(),o=Pr(`<div class='k-loading-pdf-mask'></div>`),s=n.wrapper.clone().removeAttr(`id`).addClass(`k-loading-pdf-progress`).width(a);o.append(s),o.append(e),n.mask=o,r.append(o),n.wrapperClone=o.find(`.k-pivotgrid`),n.loaderOverlay=o.find(`.k-loader-container`),n.loader.element.insertBefore(o.find(`.k-loader-container-label`))}}else n.loaderOverlay.length&&(kendo.destroy(n.loaderOverlay),n.mask.remove())}let Ir={id:`pivotgrid`,name:`PivotGrid`,category:`web`,description:`The PivotGrid widget is a data summarization tool.`,depends:[`dom`,`data`,`data.xml`,`sortable`,`icons`,`loader`,`html.loadercontainer`],features:[{id:`pivotgrid-configurator`,name:`Configurator`,description:`The PivotConfigurator widget allows the user to select data slices displayed in PivotGrid`,depends:[`pivot.configurator`]},{id:`pivotgrid-filtering`,name:`Filtering`,description:`Support for filtering`,depends:[`pivot.fieldmenu`]},{id:`pivotgrid-excel-export`,name:`Excel export`,description:`Export pivot grid data as Excel spreadsheet`,depends:[`ooxml`]},{id:`pivotgrid-pdf-export`,name:`PDF export`,description:`Export pivot grid data as PDF`,depends:[`pdf`,`drawing`]},{id:`mobile-scroller`,name:`Mobile scroller`,description:`Support for kinetic scrolling in mobile device`,depends:[`mobile.scroller`]}]};(function(e,t){var n=window.kendo,r=n.ui,i=n.htmlEncode,a=n.Class,o=n.data.Comparer,s=r.Widget,c=n.data.DataSource,l=n._outerWidth,u=n._outerHeight,d=n.data.Query.normalizeFilter,f=n.data.Query.normalizeSort,p={}.toString,m=function(e){return e},h=e.map,g=e.extend,_=n.keys,v=n.isFunction,y=`resize`,b=`read`,x=`change`,S=`error`,w=`requestStart`,T=`progress`,ee=`requestEnd`,E=`Measures`,D=`stateReset`,O=`auto`,ne=`<div></div>`,k=`.kendoPivotGrid`,ae=`__row_total__`,oe=`dataBinding`,se=`dataBound`,ce=`expandMember`,le=({id:t,key:r,headerClass:a,colspan:o,rowspan:s,expandable:c,iconClass:l,role:u,expanded:d})=>`<th id="${t}" role="${u}" ${c?`aria-expanded="${d}"`:``} data-key="${i(r)}" class="${i(a)}" ${o?`colspan="`+i(o)+`"`:``} ${s?`rowspan="`+i(s)+`"`:``}>${c?n.ui.icon(e(`<span role="presentation" class="k-pivotgrid-toggle"></span>`),{icon:`chevron-${i(l)}`}):``}</th>`,ue=`collapseMember`,de=`caret-alt-down`,fe=`.k-i-${de},.k-svg-i-${de}`,pe=`caret-alt-right`,ge=({member:e})=>`<span>${i(e.caption||e.name)}</span>`,_e={"kpi-trend-decrease":`caret-alt-down`,"kpi-trend-increase":`caret-alt-up`,"kpi-trend-equal":`minus`},ve=({dataItem:t})=>n.ui.icon(e(`<span title="${i(t.value)}"></span>`),{icon:`kpi-status-${t.value>0?`open`:t.value<0?`deny`:`hold`}`}),ye=({dataItem:t})=>n.ui.icon(e(`<span title="${i(t.value)}"></span>`),{icon:_e[`kpi-trend-${t.value>0?`increase`:t.value<0?`decrease`:`equal`}`]}),be=({dataItem:e})=>e&&(e.fmtValue||e.value)?`<span class="k-pivotgrid-content">${i(e.fmtValue||e.value)}</span>`:` `,xe=`<table class="k-pivot-layout"><tr><td><div class="k-pivot-rowheaders"></div></td><td><div class="k-pivot-table"></div></td></tr></table>`,Se=`rows`,Te=`columns`,A={tableRow:`k-table-row`,header:`k-header k-table-th`,headerTable:`k-grid-header-table k-table`,table:`k-table`,contentTable:`k-grid-table k-table`,tbody:`k-table-tbody`,tableCell:`k-table-td`};function Oe(n){var r=typeof n==`string`?[{name:n}]:n;return h(p.call(r)===`[object Array]`?r:r===t?[]:[r],function(t){return typeof t==`string`?{name:t}:e.extend(!0,t,{name:t.name,type:t.type})})}function j(e){var n=typeof e==`string`?[{name:[e],expand:!1}]:e;return h(p.call(n)===`[object Array]`?n:n===t?[]:[n],function(e){return typeof e==`string`?{name:[e],expand:!1}:{name:p.call(e.name)===`[object Array]`?e.name.slice():[e.name],expand:e.expand}})}function ke(e){return e.indexOf(` `)!==-1&&(e=`["`+e+`"]`),e}function Ae(e,t,r,i){var a,o,s,c;if(r||=t,i||=0,c=r.members[i],!(!c||c.measure)){if(s=c.children,o=s.length,r===t?e[n.stringify([c.name])]=!!o:o&&(e[n.stringify(Wt(r,i))]=!0),o)for(a=0;a<o;a++)Ae(e,t,s[a],i);Ae(e,t,r,i+1)}}function je(e){var t={};e.length&&Ae(t,e[0]);var n=[];for(var r in t)n.push({name:JSON.parse(r),expand:t[r]});return n}function M(e,t){var n=(t.tuples||[])[0];if(n&&e.length<n.members.length){for(var r=n.members,i=0;i<r.length;i++)if(!r[i].measure){for(var a=!1,o=0;o<e.length;o++)if(q(e[o]).indexOf(r[i].hierarchy)===0){a=!0;break}a||e.push({name:[r[i].name],expand:!1})}}}function Pe(e){for(var t=[],n=e.members,r=0;r<n.length;r++)n[r].measure||t.push({name:[n[r].name],expand:n[r].children.length>0});return t}function Fe(e,t,n){e||={},M(t,e),n.length>1&&t.push({name:E,measure:!0,children:j(n)});var r={members:t};if(e.tuples