UNPKG

@progress/kendo-ui

Version:

This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.

3 lines 144 kB
/* @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,`&amp;`)}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())})}function E(e){return this instanceof E?(this.v=e,this):new E(e)}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&&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=M(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 M(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)},Oe=e=>e?new Date(e.getTime()):null;function A(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 ke(e);if(e instanceof Date)return Oe(e);if(e&&typeof e==`object`){let n=t||{};return A(e,n),n}else return e}function M(e){return JSON.parse(JSON.stringify(e))}function ke(e){return e.map(e=>j(e,void 0))}let Ae=(e,t,n)=>({hierarchyUniqueName:e,uniqueName:t,caption:t,measure:t,name:t,type:n,kpi:!0});function je(e){let t=e.name;return[Ae(t,e.value,`value`),Ae(t,e.goal,`goal`),Ae(t,e.status,`status`),Ae(t,e.trend,`trend`)]}let Me=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]`})},N=(e,t)=>String(e.name)===String([t.defaultHierarchy?t.defaultHierarchy:t.uniqueName]),P=(e,t)=>String(e.name)===String(t.name),Ne=(e,t)=>{for(let n=e.length-1;n>=0;n--){let r=e[n],i=r.name.findIndex(e=>N({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))}}},Pe=(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=>P(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))},Fe=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},Ie=e=>({columns:Fe(e.columns.tuples),data:e.data,rows:e.rows.tuples});function Le(e){let t=[];for(let n of Object.keys(e))t.push({name:JSON.parse(n),expand:e[n]});return t}let Re=(e,t=[])=>{e.sort=t},ze=(e,t=[])=>{e.filter=t};var Be;(function(e){e.toggle=`HEADERS_ACTION_TOGGLE`,e.expand=`HEADERS_ACTION_EXPAND`,e.collapse=`HEADERS_ACTION_COLLAPSE`})(Be||={});let F=(e,t,n)=>{let r=new Set;return e.children.forEach(e=>{let i=t(e);n&&r.add(String(e.path)),F(e,t,n||i).map(e=>{r.add(e)})}),Array.from(r.values())},Ve=(e,t)=>{switch(t.type){case Be.toggle:{let n=e.find((e=>String(e.name)===String(t.payload)));return Ve(e,Object.assign(Object.assign({},t),{type:n&&n.expand?Be.collapse:Be.expand}))}case Be.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 Be.collapse:{let n=F(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 I;(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`})(I||={});let L=(e,t)=>{let n,r,i,a,o,s,c,l,u;switch(t.type){case I.toggleSelection:if(!Array.isArray(t.payload)){let n=t.payload;if(n.type===2||`aggregator`in n)return e.measureAxes.some(e=>N(e,n))?L(e,Object.assign(Object.assign({},t),{type:I.removeMeasureAxis})):L(e,Object.assign(Object.assign({},t),{type:I.addMeasureAxis}));if(n.type===`kpi`){let r=je(n);return r.every(t=>e.measureAxes.some(e=>N(e,t)))?L(e,Object.assign(Object.assign({},t),{type:I.removeMeasureAxes,payload:r})):L(e,Object.assign(Object.assign({},t),{type:I.addMeasureAxes,payload:r.filter(t=>!e.measureAxes.some(e=>N(e,t)))}))}else if(t.payload.kpi)return e.measureAxes.some(e=>N(e,n))?L(e,Object.assign(Object.assign({},t),{type:I.removeMeasureAxis})):L(e,Object.assign(Object.assign({},t),{type:I.addMeasureAxis}));else return e.columnAxes.some(e=>N(e,n))?L(e,Object.assign(Object.assign({},t),{type:I.removeColumnAxis})):e.rowAxes.some(e=>N(e,n))?L(e,Object.assign(Object.assign({},t),{type:I.removeRowAxis})):e.columnAxes&&e.columnAxes.length&&(!e.rowAxes||!e.rowAxes.length)?L(e,Object.assign(Object.assign({},t),{type:I.addRowAxis})):L(e,Object.assign(Object.assign({},t),{type:I.addColumnAxis}))}break;case I.addColumnAxis:r=[...e.columnAxes||[],{name:[t.payload.defaultHierarchy||t.payload.uniqueName]}];break;case I.addColumnAxes:break;case I.removeColumnAxis:r=[...(e.columnAxes||[]).filter(e=>!N(e,t.payload))],Ne(r,t.payload);break;case I.removeColumnAxes:break;case I.addRowAxis:n=[...e.rowAxes||[],{name:[t.payload.defaultHierarchy||t.payload.uniqueName]}];break;case I.addRowAxes:break;case I.removeRowAxis:n=[...(e.rowAxes||[]).filter(e=>!N(e,t.payload))],Ne(n,t.payload);break;case I.removeRowAxes:break;case I.addMeasureAxis:i=[...e.measureAxes||[],{name:[t.payload.defaultHierarchy||t.payload.uniqueName]}];break;case I.removeMeasureAxis:i=[...(e.measureAxes||[]).filter(e=>!N(e,t.payload))];break;case I.addMeasureAxes:i=[...e.measureAxes||[],...(t.payload||[]).map(e=>({name:[e.defaultHierarchy||e.uniqueName]}))];break;case I.removeMeasureAxes:i=[...(e.measureAxes||[]).filter(e=>!t.payload.some(t=>N(e,t)))];break;case I.remove:e.columnAxes.some(e=>P(e,t.payload))&&(r=[...e.columnAxes.filter(e=>!P(e,t.payload))],Ne(r,{uniqueName:t.payload.name})),e.rowAxes.some(e=>P(e,t.payload))&&(n=[...e.rowAxes.filter(e=>!P(e,t.payload))],Ne(n,{uniqueName:t.payload.name})),e.measureAxes.some(e=>P(e,t.payload))&&(i=[...e.measureAxes.filter(e=>!P(e,t.payload))]);break;case I.setDragItem:s=t.payload;break;case I.setDropZone:c=t.payload;break;case I.setDropTarget:u=t.payload;break;case I.setDropDirection:l=t.payload;break;case I.drop:if(e.dragItem&&e.dropZone){let a=e.columnAxes.find(e=>P(e,t.payload)),o=e.rowAxes.find(e=>P(e,t.payload)),s=e.measureAxes.find(e=>P(e,t.payload)),c;switch(a&&(c=a,r=[...e.columnAxes.filter(e=>!P(e,t.payload))],Ne(r,{uniqueName:t.payload.name})),o&&(c=o,n=[...e.rowAxes.filter(e=>!P(e,t.payload))],Ne(n,{uniqueName:t.payload.name})),s&&(c=s,i=[...e.measureAxes.filter(e=>!P(e,t.payload))]),e.dropZone){case`columnAxes`:r||=e.columnAxes.slice(),Pe(r,c,e);break;case`rowAxes`:n||=e.rowAxes.slice(),Pe(n,c,e);break;case`measureAxes`:i||=e.measureAxes.slice(),Pe(i,c,e);break;default:break}}s=null,c=null,u=null;break;case I.setSort:a=t.payload;break;case I.setFilter:o=Array.isArray(t.payload)?t.payload:[t.payload];break;case I.addFilter:o=(e.filter||[]).slice(),Array.isArray(t.payload)?o.push(...t.payload):o.push(t.payload);break;case I.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 I.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 R;(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`})(R||={});let He=0,Ue=e=>{let t=`${R[e]}_${He++}`;switch(e){case R.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 R.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 R.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 R.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 R.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`)}},We=Ue(R.Sum);Ue(R.Count);let Ge=Ue(R.Min),Ke=Ue(R.Max),qe=Ue(R.Average),z=e=>e!=null,Je=e=>e==null,Ye=e=>Array.isArray(e),Xe=e=>typeof e==`function`,Ze=e=>typeof e==`string`,Qe=e=>Je(e)||e.trim().length===0,$e=e=>!Qe(e),B=e=>!isNaN(e-parseFloat(e)),V=e=>e&&e.getTime,H=e=>z(e.filters),U=(e,t,n)=>r=>e(r)?t(r):n(r),W=(...e)=>t=>e.reduceRight((e,t)=>t(e),t),et=e=>e,tt=e=>(t,...n)=>e()?`${t[0]}${n[0]}${t[1]}`:n[0],nt=e=>new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds())),rt=({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}),G=({field:e,value:t,ignoreCase:n,operator:r})=>({field:tt(()=>n)`tolower(${e})`,value:t,ignoreCase:n,operator:r}),K=({field:e,value:t,ignoreCase:n,operator:r})=>({value:t,field:e.replace(/\./g,`/`),ignoreCase:n,operator:r}),at=e=>Ze(e.value),ot=e=>V(e.value),st=(e,t)=>n=>tt(()=>n.filters.length>1)`(${n.filters.map(e).join(t(n))})`,ct=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,lt=e=>{e.filters&&=e.filters.map(e=>{let t=Object.assign({},e);return!H(e)&&Ze(e.operator)&&(t.operator=ct(e.operator)),H(e)&&lt(t),t})},ut=e=>H(e)?Object.assign({},e):{filters:Ye(e)?e:[e],logic:`and`},dt=e=>(z(e)&&(e=ut(e),lt(e)),e),ft=({utcDates:e})=>({field:t,value:n,ignoreCase:r,operator:i})=>({value:(e?n:nt(n)).toISOString(),field:t,ignoreCase:r,operator:i}),pt=({operator:e})=>({field:t,value:n})=>`${e}(${t},${n})`,mt=({operator:e})=>({field:t,value:n})=>`${t} ${e} ${n}`,ht=e=>W(e,it,rt,G,K),gt=e=>ht(pt(e)),_t=e=>ht(mt(e)),vt=e=>W(mt(e),K),yt=e=>W(mt(e),K,ft(e)),bt=e=>U(ot,yt(e),vt(e)),q=e=>U(at,_t(e),bt(e)),xt=e=>`${e} eq -1`,J=e=>W(e,K),Y=(e,t)=>({contains:gt(Object.assign(Object.assign({},t),{operator:`contains`})),doesnotcontain:W(xt,gt(Object.assign(Object.assign({},t),{operator:`indexof`}))),endswith:gt(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:J(({field:e})=>`${e} eq ''`),isnotempty:J(({field:e})=>`${e} ne ''`),isnotnull:J(({field:e})=>`${e} ne null`),isnull:J(({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:gt(Object.assign(Object.assign({},t),{operator:`startswith`}))})[e],St=e=>` ${e.logic} `,Ct=e=>t=>Y(t.operator,e)(t),wt=e=>st(t=>U(H,wt(e),Ct(e))(t),St),Tt={},Et=/\[(?:(\d+)|['"](.*?)['"])\]|((?:(?!\[.*?\]|\.).)+)/g;Tt.undefined=e=>e;let X=(e,t)=>{let n=e+t;if(Tt[n])return Tt[n];let r=[];return e.replace(Et,(e,t,n,i)=>{r.push(z(t)?t:n||i)}),Tt[n]=e=>{let n=e;for(let e=0;e<r.length;e++)if(n=n[r[e]],!z(n)&&t)return n;return n},Tt[n]},Dt=e=>t=>[e,t],Ot=()=>null,kt=e=>z(e)&&Ye(e)&&e.length>0,At=e=>t=>z(e(t)),jt=e=>t=>kt(e(t)),Mt=(e,t)=>U(e,t,Ot),Nt=({skip:e,take:t})=>Math.floor((e||0)/t)+1,Pt=(e,t)=>n=>e(n).map(t).join(`~`),Z=e=>t=>t.slice(0,t.indexOf(e)),Ft=(e=>W(...e.map(([e,t])=>n=>n.replace(new RegExp(e,`g`),t))))([[`"`,``],[`:`,`-`]]),It=Z(`.`),Lt=({field:e,dir:t=`asc`})=>`${e}-${t}`,Rt=({field:e,aggregate:t})=>`${e}-${t}`,zt=X(`take`),Bt=X(`aggregates`),Vt=X(`skip`),Ht=X(`group`),Q=X(`sort`,!0),Ut=Pt(Q,Lt),Wt=Pt(Ht,Lt),Gt=Pt(Bt,Rt),Kt=W(e=>`datetime'${e}'`,It,Ft,JSON.stringify,nt),qt=({field:e,value:t,ignoreCase:n,operator:r})=>({value:Kt(t),field:e,ignoreCase:n,operator:r}),Jt=W(Dt(`page`),Nt),Yt=W(Dt(`pageSize`),zt),Xt=W(Dt(`group`),Wt),Zt=W(Dt(`sort`),Ut),Qt=W(Dt(`aggregate`),Gt);Mt(At(Vt),Jt),Mt(At(zt),Yt),Mt(jt(Ht),Xt),Mt(At(Bt),Qt),Mt(jt(Q),Zt);let $t=({field:e})=>$e(e),en=({field:e,operator:t,value:n})=>`${e}~${t}~${n}`,tn=U(ot,W(en,qt),en),nn=e=>Mt($t,U(at,W(en,rt,e?it:et),tn)),rn=({logic:e})=>`~${e}~`,an=e=>st(t=>U(H,an(e),nn(e))(t),rn),on=(e,t,n)=>(t[e]=n,t),sn=e=>t=>Object.keys(t).reduce(e.bind(null,t),{}),cn=sn((e,t,n)=>on(n.toLowerCase(),t,e[n])),ln=sn((e,t,n)=>on(n,t,cn(e[n]))),un=(e,t)=>z(e)?e:t,dn=W(({field:e,hasSubgroups:t,value:n,aggregates:r,items:i})=>({aggregates:ln(r),field:e,items:t?i.map(dn):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:un(e.Key,un(e.key,e.value))})),fn=(e,t)=>Je(e)?e===t?0:-1:Je(t)?1:e.localeCompare?e.localeCompare(t):e>t?1:e<t?-1:0,pn=(e,t)=>fn(t,e),mn=e=>{if(typeof e.compare==`function`)return e.compare;let t=X(e.field,!0);return(n,r)=>(e.dir===`asc`?fn:pn)(t(n),t(r))},hn=(e,t)=>0,gn=e=>e.filter(e=>z(e.dir)||z(e.compare)).map(e=>mn(e)).reduce((e,t)=>(n,r)=>e(n,r)||t(n,r),hn),_n=e=>(e=z(e)&&e.getTime?e.getTime():e,e+``),vn=e=>{let t=X(e,!0),n=0;return(r,i)=>{r[e]=r[e]||{};let a=t(i),o=_n(a),s=r[e][o]||{__position:n++,aggregates:{},items:[],value:a};return s.items.push(i),r[e][o]=s,r}},yn=(e={})=>(Object.keys(e).forEach(t=>{let n=e[t];Object.keys(n).forEach(e=>{n[e]=n[e].result()})}),e),bn=e=>({average:()=>{let e=0,t=0,n=!1,r=null;return{calc:i=>{B(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=B(e)||V(e)?e:t,e<t&&(B(t)||V(t))&&(e=t)},result:()=>e}},min:()=>{let e=1/0;return{calc:t=>{e=B(e)||V(e)?e:t,e>t&&(B(t)||V(t))&&(e=t)},result:()=>e}},sum:()=>{let e=0;return{calc:t=>{t=z(t)?t:0,e+=t},result:()=>e}}})[e](),xn=e=>{let t=e.map(e=>{let t=X(e.field,!0),n=(e.aggregate||``).toLowerCase(),r=X(n,!0);return(i,a)=>{let o=i[e.field]||{},s=r(o)||bn(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)},Sn=e=>(t=>((n,r,i)=>t(n,e(r,i)))),Cn=e=>z(e.__value),wn=(e,t,n)=>{let r=t;for(let t=0,i=n.length;t<i;t++)if(r=e(r,n[t],t),Cn(r)){r=r.__value;break}return r},Tn=Sn(e=>e),En=(e,t=[],n=Tn)=>{let r={};if(!t.length)return r;let i=wn(n(xn(t)),r,e);return yn(i)},Dn={or:{concat:(e,t)=>n=>e(n)||t(n),identity:()=>!1},and:{concat:(e,t)=>n=>e(n)&&t(n),identity:()=>!0}},On={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=>z(e),isnull:e=>Je(e),lt:(e,t)=>e<t,lte:(e,t)=>e<=t,neq:(e,t)=>e!=t,startswith:(e,t)=>(e||``).lastIndexOf(t,0)===0},kn=/^\/Date\((.*?)\)\/$/,An=(e,t)=>{if(e!=null&&Ze(e)){let n=kn.exec(e);if(n)return new Date(+n[1]).getTime();if(t)return e.toLowerCase()}else if(e!=null&&V(e))return e.getTime();return e},jn=(e,t,n,r)=>{if(!z(t))return e;let i=e;if(Ze(t)){let a=kn.exec(t);if(a)t=new Date(+a[1]);else{let t=Xe(r);i=r=>{let i=e(r);if(i===null||t&&Ye(i))return i;let a=typeof i==`string`?i:i+``;return n?a.toLowerCase():a}}}return V(t)?e=>{let t=i(e);return V(t)?t.getTime():t}:i},Mn=({field:e,ignoreCase:t,value:n,operator:r})=>{e=z(e)?e:e=>e,t=!z(t)||t;let i=jn(Xe(e)?e:X(e,!0),n,t,r);n=An(n,t);let a=Xe(r)?r:On[r];return e=>a(i(e),n,t)},Nn=e=>{let t=Dn[e.logic];return e.filters.filter(z).map(e=>H(e)?Nn(e):Mn(e)).reduce(t.concat,t.identity)},Pn=e=>!e||e.filters.length===0?()=>!0:Nn(e),Fn=(e,t)=>!z(t)||H(t)&&t.filters.length===0?e:e.filter(Pn(dt(t))),In=e=>(e=Ye(e)?e:[e],e.map(e=>Object.assign({dir:`asc`},e))),Ln=Sn(e=>e),Rn=(e,t=[],n=Ln,r=e)=>{if(t=In(t),!t.length)return e;let i=t[0],a=wn(n(vn(i.field)),{},e),o=[];if(Object.keys(a).forEach(e=>{Object.keys(a[e]).forEach(n=>{let s=a[e][n],c={},l=r;z(i.aggregates)&&(l=Fn(r,{field:i.field,ignoreCase:!1,operator:`eq`,value:s.value}),c=En(l,i.aggregates)),o[s.__position]={aggregates:c,field:e,items:t.length>1?Rn(s.items,t.slice(1),Ln,l):s.items,value:s.value}})}),z(i.dir)||z(i.compare)){let e=i.compare,t=gn([{field:`value`,dir:i.dir,compare:e?(t,n)=>e(t.value,n.value):void 0}]);o.sort(t)}return o};var zn;(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`})(zn||={});function Bn(e,t){`filters`in e?e.filters.map(e=>Bn(e,t)):t(e)}let Vn=(e,t)=>{(Array.isArray(e)?e:e.filters).forEach(e=>Bn(e,t))},Hn=(e,t,n)=>{let r=n?Array.isArray(n)?{logic:`and`,filters:n}:n:void 0,i=r?Pn(r):()=>!0,a=e.concat(t),o=[];Vn(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},Un=(e,t,n)=>{let r=e.get(t);return r||(r=n||new Map,e.set(t,r)),r},Wn=(e,t)=>e+`&`+t,$=e=>{let t=e.indexOf(`&`);return t===-1?[e,void 0]:[e.substring(0,t),e.substring(t+1)]},Gn=(e,t,n)=>{e.forEach((r,i)=>{if(i!==n){r.size>0&&Gn(r,t,n);let i=r.get(n),a=Un(e,n,{});t.forEach(e=>{e.aggregate.init(a),e.aggregate.merge(i,a)})}})},Kn=(e,t,n,r)=>{e.forEach((e,i)=>{let a;i===r?(a=Un(t,i,{}),n.forEach(t=>{t.aggregate.init(a),t.aggregate.merge(e,a)})):(a=Un(t,i),Kn(e,a,n,r))})},qn=(e,t,n,r)=>{e.forEach((i,a)=>{if(a!==n){i.size>0&&qn(i,t,n,r);let a=Un(i,n),o=Un(e,n);Kn(a,o,t,r)}})},Jn=(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}=Hn(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=Un(i,Wn(t.key,t.displayValue(e)))};t.forEach(c),i=Un(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=>Gn(e,r,u)),qn(o,r,d,u),o},Yn=(e,t,n)=>{let r=new Map;return Kn(e,r,n,t),r},Xn=(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},Zn=(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=Xn(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;Kn(t,r,i,a),Kn(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(Xn(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},Qn=(e,t,n,r,i,a,o)=>{let s=[],{dataField:c,columnsData:l}=r,u=new Map;return t.forEach(t=>{let r=Zn(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&&Zn(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},$n=(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},er=(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},tr=(e,t,n)=>{e.forEach((e,r)=>{if(!n[r]){let i=Un(t,r);tr(e,i,n)}})},nr=(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;tr(t,i,n),tr(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},rr=e=>{let t=new Set;return e.forEach(e=>{e.name.length===1&&!$(e.name[0])[1]&&t.add(e.name[0])}),t},ir=(e,t,n,r,i)=>{let a=rr(t),o=[],s=$n(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=nr(n,d,i),o=r.find(e=>e.field===s);o&&o.dir&&a.sort(er(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},ar=e=>({caption:String(e.name),children:[],hasChildren:!1,hierarchy:`[Measures]`,levelName:`[Measures].[MeasuresLevel]`,levelNum:0,name:`[Measures].[`+e.name+`]`,parentName:``}),or=(e,t)=>{let n=ar(t),r=M(e);return r.members.push(n),r},sr=(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]=or(n[e],t[0]);for(let i=1;i<t.length;i++){let a=or(r,t[i]);n.splice(e+i,0,a)}}return Fe(n)},cr=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?ir(r,a,t.get(c.columnsData),s,l):o.map(e=>({members:[ar(e)]})),d=a.length>0?sr(u,o):u,f=i.length?ir(n,i,t,s,l):[{members:[]}];return{columns:d,data:Qn(t,f,d,c,r,n,o),rows:f}},lr=(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 ur=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){this.root=e;for(let t in 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 dr=`.k-pivotgrid .k-pivotgrid-values`,fr=`.k-pivotgrid .k-pivotgrid-column-headers`,pr=`.k-pivotgrid .k-pivotgrid-row-headers`,mr=`.k-pivotgrid > .k-pivotgrid-empty-cell`,hr=`table.k-pivotgrid-table`,gr=`.k-pivotgrid-cell`,_r=[dr,fr,pr].join(`,`),vr=[mr,[fr,hr,gr].join(` `),[pr,hr,gr].join(` `),[dr,hr,gr].join(` `)],yr=(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()}},br=(e,t,n)=>{e.offsetLeft<t.scrollLeft&&(n.scrollLeft=e.offsetLeft)},xr=(e,t,n)=>{e.offsetLeft+e.offsetWidth>t.scrollLeft+t.offsetWidth&&e.offsetWidth<t.offsetWidth&&(n.scrollLeft=e.offsetLeft+e.offsetWidth-t.offsetWidth)},Sr=(e,t,n)=>{t.scrollTop&&e.offsetTop<t.scrollTop&&(n.scrollTop=e.offsetTop)},Cr=(e,t,n)=>{e.offsetTop+e.offsetHeight>t.scrollTop+t.offsetHeight&&e.offsetHeight<t.offsetHeight&&(n.scrollTop=e.offsetTop+e.offsetHeight-t.offsetHeight)},wr=(e,t,n)=>{let r=t.querySelector(dr),i=e&&e.closest(_r);!r||!i||!e||n.forEach(t=>t(e,i,r))},Tr=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},Er=e=>{let t=Tr(e.querySelector([fr,hr].join(` `))),n=Tr(e.querySelector([pr,hr].join(` `))),r=Tr(e.querySelector([dr,hr].join(` `))),i=e.querySelector(mr),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},Dr=(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]},Or=e=>e.ctrlKey||e.metaKey,kr=(e,t,n)=>{let r=Er(e),i=Dr(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},Ar={keydown:{ArrowLeft:(e,t,n)=>{n.preventDefault();let r=kr(t.root,e,[0,-1]);t.focusElement(r,e),wr(r,t.root,[xr,br,Cr,Sr])},ArrowRight:(e,t,n)=>{n.preventDefault();let r=kr(t.root,e,[0,1]);t.focusElement(r,e),wr(r,t.root,[br,xr,Cr,Sr])},ArrowUp:(e,t,n)=>{n.preventDefault();let r=kr(t.root,e,[-1,0]);t.focusElement(r,e),wr(r,t.root,[xr,br,Cr,Sr])},ArrowDown:(e,t,n)=>{n.preventDefault();let r=kr(t.root,e,[1,0]);t.focusElement(r,e),wr(r,t.root,[xr,br,Sr,Cr])},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:yr,Space:yr,Home:(e,t,n)=>{let r=Er(t.root),i=(Or(n)?r[0]:r.find(t=>!!t.find(t=>t===e))||[])[0];i&&(t.focusElement(i,e),wr(i,t.root,[xr,br,Cr,Sr]),n.preventDefault())},End:(e,t,n)=>{let r=Er(t.root),i=Or(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),wr(a,t.root,[br,xr,Sr,Cr]),n.preventDefault())}}},jr={click:(e,t)=>{if(e&&e instanceof HTMLElement){let n=t.elements.find(e=>e.hasAttribute(`tabindex`))||null;t.focusElement(e,n)}}};var Mr=class extends ur{constructor(){super(...arguments),this.selectors=vr,this.mouseEvents=jr,this.keyboardEvents=Ar}};let Nr=[`.k-pivotgrid-configurator-content .k-form-field .k-fields-list-wrapper .k-treeview`,`.k-pivotgrid-configurator-content .k-chip`,`.k-pivotgrid-configurator-actions button`],Pr=(e,t,n)=>{if(n.target instanceof HTMLElement&&t.root){let e=t.root.previousElementSibling,n=t.root.nextElementSibling,r=Array.from(e instanceof HTMLElement?e.querySelectorAll(`[tabindex]`):[]).find(e=>e.tabIndex>=0);r instanceof HTMLElement&&(r.focus(),n instanceof HTMLElement&&n.click())}},Fr=(e,t,n,r)=>{n.preventDefault();let i=t.elements,a=i.indexOf(e)+r;a<0&&(a=i.length-1),t.focusElement(i[a%i.length],e)},Ir=(e,t,n)=>{n.target instanceof HTMLElement&&n.target.querySelector(`.k-icon.k-i-x-circle, .k-svg-icon.k-svg-i-x-circle`)instanceof HTMLElement&&(n.preventDefault(),Fr(e,t,n,-1))},Lr={keydown:{Tab:(e,t,n)=>{Fr(e,t,n,n.shiftKey?-1:1)},Escape:Pr,Delete:Ir,Backspace:Ir}},Rr={click:(e,t)=>{if(e&&e instanceof HTMLElement){let n=t.elements.find(e=>e.hasAttribute(`tabindex`))||null;t.focusElement(e,n)}}};(class extends ur{constructor(){super(...arguments),this.selectors=Nr,this.mouseEvents=Rr,this.keyboardEvents=Lr}});let zr=kendo.jQuery;function Br(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=zr.extend({},i,t);let e=kendo.html.renderLoaderContainer(zr(`<div></div>`),i),a=n.wrapper.width(),o=zr(`<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 Vr={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 ref-pivotgrid-${l===`up`?`collapse`:`expand`} role="none" class="k-pivotgrid-toggle"></span>`),{icon:`chevron-${i(l)}`}):``}</th>`,ue=`collapseMember`,de=`chevron-down`,fe=`[ref-pivotgrid-collapse]`,pe=`chevron-right`,ge=({member:e})=>`<span>${i(e.caption||e.name)}</span>`,_e={"kpi-trend-decrease":`chevron-down`,"kpi-trend-increase":`chevron-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>`:`&nbsp;`,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`;function Oe(e){var t=e.indexOf(`&`);return t===-1?[e]:[e.substring(0,t),e.substring(t+1)]}var 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 j(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 M(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(Gt(r,i))]=!0),o)for(a=0;a<o;a++)Ae(e,t,s[a],i);Ae(e,t,r,i+1)}}function N(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 Ne(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(Y(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||={},Ne(t,e),n.length>1&&t.push({name:E,measure:!0,children:M(n)});var r={members:t};if(e.tuples){var i=ct(e.tuples,r);i.tuple&&(t=Pe(i.tuple))}return t}function Be(e){var t=n.getter(e.field,!0);return function(n,r){return e.aggregate(t(n.dataItem),r,n)}}function F(e){return typeof e==`number`&&!isNaN(e)}function I(e){return e&&e.getTime}function He(){var e=0,t;return document&&document.createElement&&(t=document.createElement(`div`),t.style.cssText=`overflow:scroll;overflow-x:hidden;zoom:1;clear:both;display:block`,t.innerHTML=`&nbsp;`,document.body.appendChild(t),e=t.offsetWidth-t.scrollWidth,document.body.removeChild(t)),e}function z(e,t,n){let r=this,i=(r.reader.data(e)||[]).slice(0);i&&!r._pristineData&&(r._pristineData=i);let a=r._createSettings(t.columnAxes),o=r._createSettings(t.rowAxes),s=r.measures(),c={dataTree:Jn(i,o,a,s,{dataField:`aggregate`,columnsData:`columns`},r.filter()||[]),columnSettings:a,rowSettings:o,columnAxes:t.columnAxes,rowAxes:t.rowAxes,measures:s.map(function(e){return e}),fields:{dataField:`aggregate`,columnsData:`columns`},sort:Je(t.sort||[])};r._saveState(cr(c)),r.trigger(x),n.resolve()}function Je(e){for(var t=[],n=0;n<e.length;n++)t.push({dir:e[n].dir,field:e[n].field.split(`.`).pop()});return t}function Ye(e,t,r,i){var a=function(e){return n.format(this.format,e)},o={sum:R.Sum,average:R.Average,min:R.Min,max:R.Max,count:R.Count},s={value:function(e){return e[this.field]}.bind({field:e}),aggregate:Ue(o[i]),caption:t,uniqueName:t,type:2,name:[t]};return r&&(s.aggregate.format=a.bind({format:r})),s}function Xe(t,r,i){var a=r.sortable,o=r.filterable,s=i.reorderable,c=``;return a&&(c+=t?`<span class="k-chip-action">${n.ui.icon(e(`<span ref-pivotgrid-${t}></span>`),{icon:t+`-sm`})}</span>`:``),(o||a)&&(c+=`<span ref-pivotgrid-field-menu class="k-setting-fieldmenu k-chip-action">${n.ui.icon(`more-vertical`)}</span>`),s&&(c+=`<span class="k-setting-delete k-chip-action">${n.ui.icon(`x`)}</span>`),c}var Ze={sum:function(e,t){var n=t.accumulator;return F(n)?F(e)&&(n+=e):n=e,n},count:function(e,t){return(t.accumulator||0)+1},average:{aggregate:function(e,n){var r=n.accumulator;return n.count===t&&(n.count=0),F(r)?F(e)&&(r+=e):r=e,F(e)&&n.count++,r},result:function(e){var t=e.accumulator;return F(t)&&(t/=e.count),t}},max:function(e,t){var n=t.accumulator;return!F(n)&&!I(n)&&(n=e),n<e&&(F(e)||I(e))&&(n=e),n},min:function(e,t){var n=t.accumulator;return!F(n)&&!I(n)&&(n=e),n>e&&(F(e)||I(e))&&(n=e),n}},Qe=a.extend({init:function(e){this.options=g({},this.options,e),this.dimensions=this._normalizeDescriptors(`field`,this.options.dimensions),this.measures=this._normalizeDescriptors(`name`,this.options.measures)},_normalizeDescriptors:function(e,t){t||={};var n={},r;if(p.call(t)===`[object Array]`){for(var i=0,a=t.length;i<a;i++)r=t[i],typeof r==`string`?n[r]={}:r[e]&&(n[r[e]]=r);t=n}return t},_rootTuples:function(e,n){var r=n.length||1,i=this.dimensions||[],a,o,s,c=0,l,u=e.length,d=[],f=[];if(u||n.length){for(c=0;c<r;c++){for(a={members:[]},l=0;l<u;l++)o=e[l],s=Oe(o),a.members[a.members.length]={children:[],caption:(i[o]||{}).caption||`All`,name:o,levelName:o,levelNum:`0`,hasChildren:!0,parentName:s.length>1?s[0]:t,hierarchy:o};r>1&&(a.members[a.members.length]={children:[],caption:n[c].caption,name:n[c].descriptor.name,levelName:`MEASURES`,levelNum:`0`,hasChildren:!1,parentName:t,hierarchy:`MEASURES`}),d[d.length]=a}f.push(ae)}return{keys:f,tuples:d}},_sortMap:function(t,n){var r=[],i=[],a=[],s,c;for(c in t)t[c].directParentName||i.push(e.extend({},{name:c,parentName:t[c].parentName}));if(!i.length)for(c in t)i.push(e.extend({},{name:c,parentName:t[c].parentName}));W(i,t);for(var l=0;l<n.length;l++)U(n[l].field.split(`.`).pop(),i,o.create({field:`name`,dir:n[l].dir}));a=H(i);for(var u=0;u<a.length;u++)s=t[a[u].name],s.index=u,r[u]=s;return r},_expandedTuples:function(n,r,i,a){var o=i.length||1,s=this.dimensions||[],c,l,u,d,f,p,m=[],h=[],g,_,v,y,b;for(u in a&&a.length&&!e.isEmptyObject(n)&&(n=this._sortMap(n,a)),n){for(d=n[u],g=this._findExpandedMember(r,d.uniquePath),f=m[g.index]||[],p=h[g.index]||[],_=g.member.names,c=0;c<o;c++){for(l={members:[]},b=0;b<_.length;b++)b===g.member.expandedIdx?(l.members[l.members.length]={children:[],caption:d.value,name:d.name,hasChildren:!1,levelNum:1,levelName:d.parentName+d.name,parentName:d.parentName,hierarchy:d.parentName+d.name},c===0&&p.push(Gt(l,b).join(``))):(y=_[b],v=Oe(y),l.members[l.members.length]={children:[],caption:(s[y]||{}).caption||`All`,name:y,levelName:y,levelNum:`0`,hasChildren:!0,parentName:v.length>1?v[0]:t,hierarchy:y});o>1&&(l.members[l.members.length]={children:[],caption:i[c].caption,name:i[c].descriptor.name,levelName:`MEASURES`,levelNum:`0`,hasChildren:!0,parentName:t,hierarchy:`MEASURES`}),f[f.length]=l}m[g.index]=f,h[g.index]=p}return{keys:h,tuples:m}},_findExpandedMember:function(e,t){for(var n=0;n<e.length;n++)if(e[n].uniquePath===t)return{member:e[n],index:n}},_asTuples:function(e,t,n,r){n||=[];var i=this._rootTuples(t.root,n),a=this._expandedTuples(e,t.expanded,n,r);return{keys:[].concat.apply(i.keys,a.keys),tuples:[].concat.apply(i.tuples,a.tuples)}},_measuresInfo:function(e,t){for(var n=0,r=e&&e.length,i=[],a={},o={},s=this.measures||{},c,l;n<r;n++)l=e[n].descriptor.name,c=s[l]||{},i.push(l),c.result&&(a[l]=c.result),c.format&&(o[l]=c.format);return{names:i,formats:o,resultFuncs:a,rowAxis:t}},_toDataArray:function(e,t,n,r){var i=[],a,o,s,c,l,u,d,f,p,m=1,h=[],g,_=n.length||1,v=r.length||1;for(t.rowAxis?(h=t.names,m=h.length):g=t.names,s=0;s<_;s++)for(d=e[n[s]||ae],u=0;u<m;u++)for(t.rowAxis&&(g=[h[u]]),c=0;c<v;c++)for(p=r[c]||ae,f=d.items[p],a=p===ae?d.aggregates:f?f.aggregates:{},l=0;l<g.length;l++)o=g[l],this._addData(i,a[o],t.formats[o],t.resultFuncs[o]);return i},_addData:function(e,t,r,i){var a=``,o;t&&(t=i?i(t):t.accumulator,a=r?n.format(r,t):t),o=e.length,e[o]={ordinal:o,value:t||``,fmtValue:a}},_matchDescriptors:function(e,n,r){for(var i,a,o,s=n.names,c=n.expandedIdx,l;c>0;)if(i=Oe(s[--c]),i.length>1&&(a=i[0],o=i[1],l=r[a](e),l=l!==t&&l!==null?l.toString():l,l!=o))return!1;return!0},_calculateAggregate:function(e,t,n){for(var r={},i,a,o=0;o<e.length;o++)a=e[o].descriptor.name,i=n.aggregates[a]||{},i.accumulator=e[o].aggregator(t,i),r[a]=i;return r},_processColumns:function(e,n,r,i,a,o,s,c){for(var l,u,d,f,p,m,h,g,_=a.dataItem,v=0;v<n.length;v++)u=n[v],this._matchDescriptors(_,u,r)&&(g=u.names.slice(0,u.expandedIdx).join(``),m=u.names[u.expandedIdx],l=r[m](_),l=l!==t&&l!==null?l.toString():l,h=m,m=m+`&`+l,p=g+m,d=i[p]||{index:s.columnIndex,parentName:h,name:m,directParentName:g.indexOf(`&`)===-1?``:g,uniquePath:g+h,childrenMap:{},value:l},g&&i[g]&&!i[g].childrenMap[g+h+`&`+l]&&(i[g].childrenMap[g+h+`&`+l]=!0),f=o.items[p]||{aggregates:{}},o.items[p]={index:d.index,aggregates:this._calculateAggregate(e,a,f)},c&&(i[p]||s.columnIndex++,i[p]=d))},_measureAggregators:function(e){var t=e.measures||[],n=this.measures||{},r=[],i,a,o,s,c,l;if(t.length){for(o=0,s=t.length;o<s;o++)if(i=t[o],a=n[i.name],c=null,a){if(l=a.aggregate,typeof l==`string`){if(c=Ze[l.toLowerCase()],!c)throw Error(`There is no such aggregate function`);a.aggregate=c.aggregate||c,a.result=c.result}r.push({descriptor:i,caption:a.caption,result:a.result,aggregator:Be(a)})}}else r.push({descriptor:{name:`default`},caption:`default`,aggregator:function(){return 1}});return r},_buildGetters:function(e){for(var t={},r,i,a=0;a<e.length;a++)i=e[a],r=Oe(i),r.length>1?t[r[0]]=n.getter(r[0],!0):t[i]=n.getter(ke(i),!0);return t},_parseDescriptors:function(e){for(var t=wt(e),n=St(t.root),r=t.expanded,i=[],a=0;a<r.length;a++)i.push(Ct(r[a].name,n));return{root:n,expanded:i}},_filter:function(e,t){if(!t)return e;for(var r,i=0,a=t.filters;i<a.length;i++)r=a[i],r.operator===`in`&&(a[i]=this._normalizeFilter(r));return new n.data.Query(e).filter(t).data},_normalizeFilter:function(e){var t=e.value.split(`,`),n=[];if(!t.length)return t;for(var r=0;r<t.length;r++)n.push({field:e.field,operator:`eq`,value:t[r]});return{logic:`or`,filters:n}},process:function(e,n){e||=[],n||={},e=this._filter(e,n.filter);var r=n.measures||[],i=n.measuresAxis===`rows`,a=n.columns||[],o=n.rows||[];!a.length&&o.length&&(!r.length||r.length&&i)&&(a=o,o=[],i=!1),!a.length&&!o.length&&(i=!1),!a.length&&r.length&&(a=M(n.measures)),a=this._parseDescriptors(a),o=this._parseDescriptors(o);var s={},c={},l={},u,d={columnIndex:0},f=this._measureAggregators(n),p=this._buildGetters(a.root),m=this._buildGetters(o.root),h=!1,g=a.expanded,_=o.expanded,v,y,b=_.length!==0,x,S,C,w,T,ee,E,D,te,O,ne=e.length,re=0;if(a.root.length||o.root.length)for(h=!0,re=0;re<ne;re++)for(v=e[re],y={dataItem:v,index:re},w=s[ae]||{items:{},aggregates:{}},this._processColumns(f,g,p,c,y,w,d,!b),w.aggregates=this._calculateAggregate(f,y,w),s[ae]=w,x=0;x<_.length;x++){if(S=_[x],!this._matchDescriptors(v,S,m)){this._processColumns(f,g,p,c,y,{items:{},aggregates:{}},d,!0);continue}ee=S.names.slice(0,S.expandedIdx).join(``),C=S.names[S.expandedIdx],E=C,u=m[C](v),u=u===t?u:u.toString(),C=C+`&`+u,T=ee+C,l[T]={uniquePath:ee+E,parentName:E,name:C,value:u},D=s[T]||{items:{},aggregates:{}},this._processColumns(f,g,p,c,y,D,d,!0),D.aggregates=this._calculateAggregate(f,y,D),s[T]=D}return h&&ne?(f.length>1&&(!n.columns||!n.columns.length)&&(a={root:[],expanded:[]}),te=this._asTuples(c,a,i?[]:f,n.sort?n.sort:[]),O=this._asTuples(l,o,i?f:[],n.sort?n.sort:[]),c=te.tuples,l=O.tuples,s=this._toDataArray(s,this._measuresInfo(f,i),O.keys,te.keys)):s=c=l=[],{axes:{columns:{tuples:c},rows:{tuples:l}},data:s}}}),$e=a.extend({init:function(e,t){this.transport=t,this.options=t.options||{},this.transport.discover||v(e.discover)&&(this.discover=e.discover)},read:function(e){return this.transport.read(e)},update:function(e){return this.transport.update(e)},create:function(e){return this.transport.create(e)},destroy:function(e){return this.transport.destroy(e)},discover:function(e){if(this.transport.discover)return this.transport.discover(e);e.success({})},catalog:function(n){var r=this.options||{};if(n===t)return(r.connection||{}).catalog;var i=r.connection||{};i.catalog=n,this.options.connection=i,e.extend(this.transport.options,{connection:i})},cube:function(e){var n=this.options||{};if(e===t)return(n.connection||{}).cube;var r=n.connection||{};r.cube=e,this.options.connection=r,g(!0,this.transport.options,{connection:r})}}),B=c.extend({init:function(t){var n=((t||{}).schema||{}).cube,r={axes:m,cubes:m,catalogs:m,measures:m,dimensions:m,hierarchies:m,levels:m,members:m};n&&(this.cubeSchema=e.extend(r,this._cubeSchema(n))),c.fn.init.call(this,g(!0,{},{schema:this.cubeSchema},t));var i=this.options.transport||{};(this.options.type||`xmla`).toLowerCase()===`xmla`?(this._online=!0,this.transport=new Mt(i)):this.transport=new $e(this.options.transport||{},this.transport),this._columns=M(this.options.columns),this._rows=M(this.options.rows);var a=this.cubeSchema?this.cubeSchema.measures():this.options.measures||[];p.call(a)===`[object Object]`&&(this._measuresAxis=a.axis||`columns`,a=a.values||[]),this._measures=j(a)},options:{serverSorting:!0,serverPaging:!0,serverFiltering:!0,serverGrouping:!0,serverAggregates:!0},axes:function(){return{columns:K(this.columns()),rows:K(this.rows())}},catalog:function(e){if(e===t)return this.transport.catalog();this.transport.catalog(e),this._mergeState({}),this.read()},cube:function(e){if(e===t)return this.transport.cube();this.transport.cube(e),this._mergeState({}),this.read()},measuresAxis:function(){return this._measuresAxis||`columns`},fetch:function(e){var n=this;if(this._data===t||this._data.length===0)return this._query().done(function(){v(e)&&e.call(n)})},_createSettings:function(e){for(var t=[],n,r=this.cubeSchema.dimensionsSettings(),i=function(e){return e[this.key]},a=function(e){return e},o=0;o<e.length;o++)n=e[o].name[0],!(n.indexOf(`&`)>-1)&&t.push({key:n,displayValue:i.bind({key:n}),sortValue:a,caption:(r[n]||{}).caption||n});return t},_cubeSchema:function(e){return{dimensionsSettings:function(){return e.dimensions},dimensions:function(){var t=[],n=e.dimensions;for(var r in n)t.push({name:r,caption:n[r].caption||r,uniqueName:r,defaultHierarchy:r,type:1});return e.measures&&t.push({name:E,caption:E,uniqueName:E,type:2}),t},restoreMeasure:function(e,t){for(var n=0;n<e.length;n++)e[n].aggregate||(e[n].aggregate=t.aggregate,e[n].value=t.value,e[n].caption=t.caption,e[n].uniqueName=t.uniqueName,e[n].type=2)},measures:function(){var t=[],n=e.measures;for(var r in n)t.push(Ye(n[r].field,r,n[r].format,n[r].aggregate));return t},memberType:function(e){var t=n.getter(ke(e),!0),r=this.options.data||this._pristineData||[];return r.length?typeof t(r[0]):null}.bind(this),members:function(t){var r=this.options.data||this._pristineData||[],i=[],a={},o,s,c=0;if(t.indexOf(`[(ALL)]`)!==-1)return[{caption:e.dimensions[t.split(`.`)[0]].caption||t,levelUniqueName:t,name:t,childrenCardinality:1,uniqueName:t}];for(o=n.getter(ke(t),!0);c<r.length;c++)s=o(r[c]),(s||s===0||s===!1)&&!a[s]&&(a[s]=!0,i.push({caption:s+``,name:s+``,childrenCardinality:0,uniqueName:s}));return i}.bind(this)}},read:function(t){let n=this,r=n.trigger(w,{type:b}),i=n._params(t),a=e.Deferred();return r||(n.trigger(T),n.options.data?z.call(n,n.options.data,i,a):(this.options.type||`xmla`).toLowerCase()===`xmla`?n.transport.read({data:i,success:function(e){n._saveState(e),n.trigger(ee,{response:e,type:b}),n.trigger(x),n._preventRefresh&&=!1,a.resolve()},error:function(e){n.trigger(S,{error:e})}}):n.transport.read({success:function(e){z.call(n,e,i,a)},error:function(e){n.trigger(S,{error:e})}})),a.promise()},_params:function(e){var t=this,n=c.fn._params.call(t,e);return n=g({columnAxes:JSON.parse(JSON.stringify(t._columns)),rowAxes:JSON.parse(JSON.stringify(t._rows)),measuresAxis:t.measuresAxis(),measureAxes:t._measures},n),(this.options.type||``).toLowerCase()===`xmla`&&(n.connection=t.options.transport.connection),n.filter&&(n.filter=d(n.filter),n.filter=(n.filter||{}).filters),n.sort&&=f(n.sort),n},discover:function(t){let n=this,r=n.transport,i=n.options.type===`odata`,a={schemaMeasures:n.reader.measures,schemaKPIs:n.reader.kpis,schemaDimensions:n.reader.dimensions,schemaHierarchies:n.reader.hierarchies,schemaLevels:n.reader.levels,schemaCubes:n.reader.cubes,schemaCatalogs:n.reader.catalogs,schemaMembers:n.reader.members};return r.discover&&!i?r.discover(t):e.Deferred(function(e){r.discover(g({success:function(r){r=n.reader.parse(r),!n._handleCustomErrors(r)&&(a[t.command]&&(r=a[t.command](r)),e.resolve(r))},error:function(t,r,i){e.reject(t),n.error(t,r,i)}},t))}).promise().done(function(){n.trigger(`schemaChange`)})},schemaMeasures:function(){let e=this;return e.discover({command:`schemaMeasures`,restrictions:{catalogName:e.transport.catalog(),cubeName:e.transport.cube()}})},schemaKPIs:function(){let e=this;return e.discover({command:`schemaKPIs`,restrictions:{catalogName:e.transport.catalog(),cubeName:e.transport.cube()}})},schemaDimensions:function(){let e=this;return e.discover({command:`schemaDimensions`,restrictions:{catalogName:e.transport.catalog(),cubeName:e.transport.cube()}})},schemaHierarchies:function(e){let t=this;return t.discover({command:`schemaHierarchies`,restrictions:{catalogName:t.transport.catalog(),cubeName:t.transport.cube(),dimensionUniqueName:e}})},schemaLevels:function(e){let t=this;return t.discover({command:`schemaLevels`,restrictions:{catalogName:t.transport.catalog(),cubeName:t.transport.cube(),hierarchyUniqueName:e}})},schemaCubes:function(){let e=this;return e.discover({command:`schemaCubes`,restrictions:{catalogName:e.transport.catalog()}})},schemaCatalogs:function(){return this.discover({command:`schemaCatalogs`})},schemaMembers:function(e){let t=this;return t.discover({command:`schemaMembers`,restrictions:g({catalogName:t.transport.catalog(),cubeName:t.transport.cube()},e)})},_saveState:function(e){var t=this;t._columnTuples=e.columns,t._rowTuples=e.rows,t._view=t._data=e.data},columns:function(e){if(e===t)return this._columns;this._columns=M(e),this.read()},rows:function(e){if(e===t)return this._rows;this._rows=M(e),this.read()},measures:function(e){if(e===t)return this._measures;this._measures=j(e),this.read()},_mergeState:function(e){return e=c.fn._mergeState.call(this,e),e},_query:function(e){var t=this,n=g({},{sort:t.sort(),measuresAxis:t.measuresAxis(),filter:t.filter()},e);return this._mergeState(n),this.read()}}),V=c.extend({init:function(t){var n=((t||{}).schema||{}).cube,r=`columns`,i,a={axes:m,cubes:m,catalogs:m,measures:m,dimensions:m,hierarchies:m,levels:m,members:m};n&&(a=e.extend(a,this._cubeSchema(n)),this.cubeBuilder=new Qe(n)),c.fn.init.call(this,g(!0,{},{schema:a},t)),this.transport=new $e(this.options.transport||{},this.transport),this._columns=M(this.options.columns),this._rows=M(this.options.rows),i=this.options.measures||[],p.call(i)===`[object Object]`&&(r=i.axis||`columns`,i=i.values||[]),this._measures=j(i),this._measuresAxis=r,this._skipNormalize=0,this._axes={}},_cubeSchema:function(e){return{dimensions:function(){var t=[],n=e.dimensions;for(var r in n)t.push({name:r,caption:n[r].caption||r,uniqueName:r,defaultHierarchy:r,type:1});return e.measures&&t.push({name:E,caption:E,uniqueName:E,type:2}),t},hierarchies:function(){return[]},measures:function(){var t=[];for(var n in e.measures)t.push({name:n,caption:n,uniqueName:n,aggregator:n});return t},members:function(t,r){var i=r.levelUniqueName||r.memberUniqueName,a=this.options.schema.data,o=v(a)?a:n.getter(a,!0),s=this.options.data&&o(this.options.data)||this._rawData||[],c=[],l,u,d=0,f={};if(i&&=i.split(`.`)[0],!r.treeOp)return c.push({caption:e.dimensions[i].caption||i,childrenCardinality:`1`,dimensionUniqueName:i,hierarchyUniqueName:i,levelUniqueName:i,name:i,uniqueName:i}),c;for(l=n.getter(ke(i),!0);d<s.length;d++)u=l(s[d]),(u||u===0)&&!f[u]&&(f[u]=!0,c.push({caption:u,childrenCardinality:`0`,dimensionUniqueName:i,hierarchyUniqueName:i,levelUniqueName:i,name:u,uniqueName:u}));return c}.bind(this)}},options:{serverSorting:!0,serverPaging:!0,serverFiltering:!0,serverGrouping:!0,serverAggregates:!0},catalog:function(e){if(e===t)return this.transport.catalog();this.transport.catalog(e),this._mergeState({}),this._axes={},this.data([])},cube:function(e){if(e===t)return this.transport.cube();this.transport.cube(e),this._axes={},this._mergeState({}),this.data([])},axes:function(){return this._axes},columns:function(e){if(e===t)return this._columns;this._skipNormalize+=1,this._clearAxesData=!0,this._columns=M(e),this.query({columns:e,rows:this.rowsAxisDescriptors(),measures:this.measures(),sort:this.sort(),filter:this.filter()})},rows:function(e){if(e===t)return this._rows;this._skipNormalize+=1,this._clearAxesData=!0,this._rows=M(e),this.query({columns:this.columnsAxisDescriptors(),rows:e,measures:this.measures(),sort:this.sort(),filter:this.filter()})},measures:function(e){if(e===t)return this._measures;this._skipNormalize+=1,this._clearAxesData=!0,this.query({columns:this.columnsAxisDescriptors(),rows:this.rowsAxisDescriptors(),measures:j(e),sort:this.sort(),filter:this.filter()})},measuresAxis:function(){return this._measuresAxis||`columns`},_expandPath:function(e,t){var n=t===`columns`?`columns`:`rows`,r=t===`columns`?`rows`:`columns`,i=M(e),a=Y(i[i.length-1]);this._lastExpanded=n,i=Fe(this.axes()[n],i,this.measures());for(var o=0;o<i.length;o++)if(Y(i[o])===a){if(i[o].expand)return;i[o].expand=!0}else i[o].expand=!1;var s={};s[n]=i,s[r]=this._descriptorsForAxis(r),this._query(s)},_descriptorsForAxis:function(e){var t=this.axes(),n=this[e]()||[];return t&&t[e]&&t[e].tuples&&t[e].tuples[0]&&(n=N(t[e].tuples||[])),n},columnsAxisDescriptors:function(){return this._descriptorsForAxis(`columns`)},rowsAxisDescriptors:function(){return this._descriptorsForAxis(`rows`)},_process:function(e,t){this._view=e,t||={},t.items=t.items||this._view,this.trigger(x,t)},_query:function(e){var t=this;return e||(this._skipNormalize+=1,this._clearAxesData=!0),t.query(g({},{page:t.page(),pageSize:t.pageSize(),sort:t.sort(),filter:t.filter(),group:t.group(),aggregate:t.aggregate(),columns:this.columnsAxisDescriptors(),rows:this.rowsAxisDescriptors(),measures:this.measures()},e))},query:function(t){var n=this._mergeState(t);return this._data.length&&this.cubeBuilder?(this._params(n),this._updateLocalData(this._pristineData),e.Deferred().resolve().promise()):this.read(n)},_mergeState:function(e){return e=c.fn._mergeState.call(this,e),e!==t&&(this._measures=j(e.measures),e.columns?e.columns=M(e.columns):e.columns||(this._columns=[]),e.rows?e.rows=M(e.rows):e.rows||(this._rows=[])),e},filter:function(e){if(e===t)return this._filter;this._skipNormalize+=1,this._clearAxesData=!0,this._query({filter:e,page:1})},expandColumn:function(e){this._expandPath(e,`columns`)},expandRow:function(e){this._expandPath(e,`rows`)},success:function(e){var t;this.cubeBuilder&&(t=(this.reader.data(e)||[]).slice(0)),c.fn.success.call(this,e),t&&(this._pristineData=t)},_processResult:function(e,t){if(this.cubeBuilder){var n=this.cubeBuilder.process(e,this._requestData);e=n.data,t=n.axes}var r,i,a,o,s,c,l=this.columns(),u=this.rows(),d=t.columns&&t.columns.tuples;!l.length&&u.length&&d&&(this._rowMeasures().length||!this.measures().length)&&(t={columns:{},rows:t.columns}),!l.length&&!u.length&&this.measuresAxis()===`rows`&&d&&(t={columns:{},rows:t.columns}),this._axes={columns:K(this._axes.columns),rows:K(this._axes.rows)},t={columns:K(t.columns),rows:K(t.rows)},r=this._normalizeTuples(t.columns.tuples,this._axes.columns.tuples,l,this._columnMeasures()),i=this._normalizeTuples(t.rows.tuples,this._axes.rows.tuples,u,this._rowMeasures()),this._skipNormalize>0&&--this._skipNormalize,this.cubeBuilder||(e=this._normalizeData({columnsLength:t.columns.tuples.length,rowsLength:t.rows.tuples.length,columnIndexes:r,rowIndexes:i,data:e})),this._lastExpanded==`rows`?(a=t.columns.tuples,s=this._columnMeasures(),o=tt(t.columns,this._axes.columns,s),o&&(c=`columns`,t.columns=o,nt(a,o.tuples,t.rows.tuples.length,s,e),this.cubeBuilder||(e=this._normalizeData({columnsLength:G(t.columns.tuples,s),rowsLength:t.rows.tuples.length,data:e})))):this._lastExpanded==`columns`&&(a=t.rows.tuples,s=this._rowMeasures(),o=tt(t.rows,this._axes.rows,s),o&&(c=`rows`,t.rows=o,rt(a,o.tuples,t.columns.tuples.length,s,e),this.cubeBuilder||(e=this._normalizeData({columnsLength:G(t.rows.tuples,s),rowsLength:t.columns.tuples.length,data:e})))),this._lastExpanded=null;var f=this._mergeAxes(t,e,c);return this._axes=f.axes,f.data},_readData:function(e){var t=this.reader.axes(e),n=this.reader.data(e);return this.cubeBuilder&&(this._rawData=n),this._processResult(n,t)},_createTuple:function(e,t,n){var r=e.members,i=r.length,a={members:[]},o,s,c,l,u,d,f,p,m=0;for(t&&--i;m<i;m++)p=r[m],s=Number(p.levelNum),c=p.name,l=p.parentName,f=p.caption||c,u=p.hasChildren,d=p.hierarchy,o=p.levelName,n&&(f=`All`,s===0?l=p.name:--s,u=!0,c=d=o=l),a.members.push({name:c,children:[],caption:f,levelName:o,levelNum:s.toString(),hasChildren:u,hierarchy:d,parentName:n?``:l});return t&&a.members.push({name:t.name,children:[]}),a},_hasRoot:function(e,t,n){if(t.length)return ct(t,e).tuple;for(var r=e.members,i,a,o=!0,s,c=0,l=r.length;c<l;c++)if(i=r[c],s=Number(i.levelNum)||0,a=n[c],!(s===0||a&&i.name===Y(a))){o=!1;break}return o},_mergeAxes:function(e,t,n){var r=this._columnMeasures(),i=this._rowMeasures(),a=this.axes(),o,s,c=G(a.rows.tuples,i),l=e.rows.tuples.length,u=G(a.columns.tuples,r),d=e.columns.tuples.length;n==`columns`?(d=u,s=e.columns.tuples):(s=pt(e.columns.tuples,r),t=ht(s,t));var f=ot(a.columns.tuples,s,r);n==`rows`?(l=G(e.rows.tuples,i),s=e.rows.tuples):(s=pt(e.rows.tuples,i),t=mt(s,t));var p=ot(a.rows.tuples,s,i);if(a.columns.tuples=f.tuples,a.rows.tuples=p.tuples,u!==G(a.columns.tuples,r)){o=f.index+at(f.parsedRoot,f.memberIndex,r);var m=u+d;t=this._mergeColumnData(t,o,l,d,m)}else c!==G(a.rows.tuples,i)&&(o=p.index+at(p.parsedRoot,p.memberIndex,i),t=this._mergeRowData(t,o,l,d));return a.columns.tuples.length===0&&a.rows.tuples.length===0&&(t=[]),{axes:a,data:t}},_mergeColumnData:function(e,t,n,r,i){var a=this.data().toJSON(),o,s,c=0,l,u=Math.max(this._columnMeasures().length,1);for(n=Math.max(n,1),a.length>0&&(c=u,i-=u),o=0;o<n;o++)s=t+o*i,l=e.splice(0,r),l.splice(0,c),[].splice.apply(a,[s,0].concat(l));return a},_mergeRowData:function(e,t,n,r){var i=this.data().toJSON(),a,o,s,c=Math.max(this._rowMeasures().length,1);for(r=Math.max(r,1),i.length>0&&(n-=c,e.splice(0,r*c)),a=0;a<n;a++)s=e.splice(0,r),o=t*r+a*r,[].splice.apply(i,[o,0].concat(s));return i},_columnMeasures:function(){var e=this.measures(),t=[];return this.measuresAxis()===`columns`&&(this.columns().length===0||e.length>1)&&(t=e),t},_rowMeasures:function(){var e=this.measures(),t=[];return this.measuresAxis()===`rows`&&(this.rows().length===0||e.length>1)&&(t=e),t},_updateLocalData:function(e,t){this.cubeBuilder&&(t&&(this._requestData=t),e=this._processResult(e)),this._data=this._observe(e),this._ranges=[],this._addRange(this._data),this._total=this._data.length,this._pristineTotal=this._total,this._process(this._data)},data:function(e){var n=this;if(e!==t)this._pristineData=e.slice(0),this._updateLocalData(e,{columns:this.columns(),rows:this.rows(),measures:this.measures()});else return n._data},_normalizeTuples:function(e,t,n,r){var i=r.length||1,a=0,o=[],s={},c=0,l,u,d;if(e.length){if(this._skipNormalize<=0&&!this._hasRoot(e[0],t,n)){for(this._skipNormalize=0;a<i;a++)o.push(this._createTuple(e[0],r[a],!0)),s[a]=a;e.splice.apply(e,[0,e.length].concat(o,e)),a=i}if(r.length)for(d=l=e[a],u=l.members.length-1;l;){if(c>=i&&(c=0),l.members[u].name!==r[c].name&&(e.splice(a,0,this._createTuple(l,r[c])),s[a]=a),a+=1,c+=1,l=e[a],i>c&&(!l||Kt(d,u-1)!==Kt(l,u-1))){for(;c<i;c++)e.splice(a,0,this._createTuple(d,r[c])),s[a]=a,a+=1;l=e[a]}d=l}return s}},_addMissingDataItems:function(e,n){for(;n.rowIndexes[parseInt(e.length/n.columnsLength,10)]!==t;)for(var r=0;r<n.columnsLength;r++)e=et(e);for(;n.columnIndexes[e.length%n.columnsLength]!==t;)e=et(e);return e},_normalizeOrdinals:function(e,t,n){var r=n.lastOrdinal;if(!t)return et(e);if(t.ordinal-r>1)for(r+=1;r<t.ordinal&&e.length<n.length;)e=this._addMissingDataItems(et(e),n),r+=1;return t.ordinal=e.length,e[e.length]=t,e},_normalizeData:function(e){var t=e.data,n=0,r,i=[],a,o;if(e.lastOrdinal=0,e.columnIndexes=e.columnIndexes||{},e.rowIndexes=e.rowIndexes||{},e.columnsLength=e.columnsLength||1,e.rowsLength=e.rowsLength||1,e.length=e.columnsLength*e.rowsLength,o=e.length,t.length===o)return t;for(;i.length<o;)r=t[n++],r&&(a=r.ordinal),i=this._normalizeOrdinals(this._addMissingDataItems(i,e),r,e),e.lastOrdinal=a;return i},discover:function(t,n){var r=this,i=r.transport;return e.Deferred(function(e){i.discover(g({success:function(t){t=r.reader.parse(t),!r._handleCustomErrors(t)&&(n&&(t=n(t)),e.resolve(t))},error:function(t,n,i){e.reject(t),r.error(t,n,i)}},t))}).promise().done(function(){r.trigger(`schemaChange`)})},schemaMeasures:function(){var e=this;return e.discover({data:{command:`schemaMeasures`,restrictions:{catalogName:e.transport.catalog(),cubeName:e.transport.cube()}}},function(t){return e.reader.measures(t)})},schemaKPIs:function(){var e=this;return e.discover({data:{command:`schemaKPIs`,restrictions:{catalogName:e.transport.catalog(),cubeName:e.transport.cube()}}},function(t){return e.reader.kpis(t)})},schemaDimensions:function(){var e=this;return e.discover({data:{command:`schemaDimensions`,restrictions:{catalogName:e.transport.catalog(),cubeName:e.transport.cube()}}},function(t){return e.reader.dimensions(t)})},schemaHierarchies:function(e){var t=this;return t.discover({data:{command:`schemaHierarchies`,restrictions:{catalogName:t.transport.catalog(),cubeName:t.transport.cube(),dimensionUniqueName:e}}},function(e){return t.reader.hierarchies(e)})},schemaLevels:function(e){var t=this;return t.discover({data:{command:`schemaLevels`,restrictions:{catalogName:t.transport.catalog(),cubeName:t.transport.cube(),hierarchyUniqueName:e}}},function(e){return t.reader.levels(e)})},schemaCubes:function(){var e=this;return e.discover({data:{command:`schemaCubes`,restrictions:{catalogName:e.transport.catalog()}}},function(t){return e.reader.cubes(t)})},schemaCatalogs:function(){var e=this;return e.discover({data:{command:`schemaCatalogs`}},function(t){return e.reader.catalogs(t)})},schemaMembers:function(e){var t=this,n=function(e){return function(n){return t.reader.members(n,e)}}(e);return t.discover({data:{command:`schemaMembers`,restrictions:g({catalogName:t.transport.catalog(),cubeName:t.transport.cube()},e)}},n)},_params:function(e){this._clearAxesData&&(this._axes={},this._data=this._observe([]),this._clearAxesData=!1,this.trigger(D));var t=c.fn._params.call(this,e);return t=g({measures:this.measures(),measuresAxis:this.measuresAxis(),columns:this.columns(),rows:this.rows()},t),this.cubeBuilder&&(this._requestData=t),t}});function H(e){for(var t=[],n=0;n<e.length;n++)t.push(e[n]),e[n].children&&(t=t.concat(H(e[n].children)));return t}function U(e,t,n){for(var r=0;r<t.length;r++)t[r].children&&t[r].children.length&&U(e,t[r].children,n);t[0].parentName==e&&(t=t.sort(n))}function W(t,n){for(var r=0;r<t.length;r++){var i=n[t[r].name];if(!e.isEmptyObject(i.childrenMap)){for(var a in t[r].children=[],i.childrenMap)t[r].children.push(e.extend({},{name:a,parentName:n[a].parentName}));W(t[r].children,n)}}}function et(e){return e[e.length]={value:``,fmtValue:``,ordinal:e.length},e}function tt(e,t,n){if(e.tuples.length<G(t.tuples,n))return t}function nt(e,t,n,r,i){var a,o,s,c=e.length,l=G(t,r),u=r.length||1;for(o=0;o<n;o++)for(a=0;a<c;a++)s=it(e[a],t)*u,s+=a%u,i[o*c+a].ordinal=o*l+s}function rt(e,t,n,r,i){var a,o,s,c=e.length,l=r.length||1;for(o=0;o<c;o++)for(s=it(e[o],t),s*=l,s+=o%l,a=0;a<n;a++)i[o*n+a].ordinal=s*n+a}function it(e,t){return ct(t,e).index}function G(e,t){if(!e.length)return 0;for(var n=e.slice(),r=n.shift(),i=1;r;)r.members?[].push.apply(n,r.members):r.children&&(r.measure||(i+=r.children.length),[].push.apply(n,r.children)),r=n.shift();return t.length&&(i*=t.length),i}function K(e){return e||={tuples:[]},e.tuples||=[],e}function at(e,t,n){if(!e)return 0;for(var r=Math.max(n.length,1),i=e.members.slice(0,t),a=i.shift(),o=r;a;)a.name===E?o+=r-1:a.children?[].push.apply(i,a.children):(o++,[].push.apply(i,a.members)),a=i.shift();return o}function ot(e,t,n){if(!t[0])return{parsedRoot:null,tuples:e,memberIndex:0,index:0};var r=ct(e,t[0]);if(!r.tuple)return{parsedRoot:null,tuples:t,memberIndex:0,index:0};var i=r.tuple.members,a=t[0].members,o=-1;if(i.length!==a.length)return{parsedRoot:null,tuples:t,memberIndex:0,index:0};for(var s=0,c=i.length;s<c;s++)!i[s].measure&&a[s].children[0]&&(o==-1&&a[s].children.length&&(o=s),i[s].children=a[s].children);return n=Math.max(n.length,1),{parsedRoot:r.tuple,index:r.index*n,memberIndex:o,tuples:e}}function st(e,t){var n=!0,r,i;for(e=e.members,t=t.members,r=0,i=e.length;r<i;r++)e[r].measure||t[r].measure||(n&&=Y(e[r])===Y(t[r]));return n}function ct(e,t){var n,r,i,a,o=0,s,c,l;for(n=0,r=e.length;n<r;n++){if(i=e[n],st(i,t))return{tuple:i,index:o};for(o++,s=0,c=i.members.length;s<c;s++)if(l=i.members[s],!l.measure&&(a=ct(l.children,t),o+=a.index,a.tuple))return{tuple:a.tuple,index:o}}return{index:o}}function lt(e,t){var n,r,i,a=``;for(r=0,i=e.length;r<i;r++)n=e[r],a+=n.name,t[a]||(t[a]=n)}function ut(e,t){var n=e.members,r,i,a,o=``,s=``,c;for(r=0,i=n.length;r<i;r++){if(a=n[r],c)if(t[o+a.name]){o+=a.name,c=t[o];continue}else if(t[o+a.parentName])return t[o+a.parentName];else if(t[s+a.parentName])return t[s+a.parentName];else return t[s];if(o+=a.name,c=t[a.parentName],!c&&(c=t[o],!c))return null;c&&(s+=c.name)}return c}function dt(e,t){if(t.length===0)return-1;for(var n=t[0],r=e.members,i=0,a=r.length;i<a;i++)if(r[i].name==n.name)return i}function ft(n,r){if(!(r<0)){var i={name:E,measure:!0,children:[e.extend({members:[],dataIndex:n.dataIndex},n.members[r])]};n.members.splice(r,1,i),n.dataIndex=t}}function pt(e,t){if(e.length<1)return[];for(var n=[],r={},i=dt(e[0],t),a=0;a<e.length;a++){var o=e[a];o.dataIndex=a,ft(o,i);var s=ut(o,r);s?i<0||!s.measure?s.children.push(o):s.children.push(o.members[i].children[0]):n.push(o),lt(o.members,r)}return n}function mt(e,t){if(!e||!e.length)return t;var n=[],r=gt(e),i=r.length,a=Math.max(t.length/i,1),o,s,c,l,u;for(o=0;o<i;o++)for(c=a*o,l=a*r[o],s=0;s<a;s++)u=parseInt(l+s,10),n[parseInt(c+s,10)]=t[u]||{value:``,fmtValue:``,ordinal:u};return n}function ht(e,t){if(!e||!e.length)return t;var n=[],r=gt(e),i=r.length,a=Math.max(t.length/i,1),o,s,c,l;for(s=0;s<a;s++)for(c=i*s,o=0;o<i;o++)l=r[o]+c,n[c+o]=t[l]||{value:``,fmtValue:``,ordinal:l};return n}function gt(e){e=e.slice();for(var n=[],r=e.shift(),i,a,o,s,c;r;){for(r.dataIndex!==t&&n.push(r.dataIndex),o=0,i=0,a=r.members.length;i<a;i++)c=r.members[i],s=c.children,c.measure?[].splice.apply(e,[0,0].concat(s)):[].splice.apply(e,[o,0].concat(s)),o+=s.length;r=e.shift()}return n}B.create=function(e){e=e&&e.push?{data:e}:e;var t=e||{};if(t.data=t.data,!(t instanceof B)&&t instanceof n.data.DataSource)throw Error(`Incorrect DataSource type. Only PivotDataSource instances are supported`);return t instanceof B?t:new B(t)},V.create=function(e){e=e&&e.push?{data:e}:e;var t=e||{};if(t.data=t.data,!(t instanceof V)&&t instanceof n.data.DataSource)throw Error(`Incorrect DataSource type. Only PivotDataSource instances are supported`);return t instanceof V?t:new V(t)};function _t(e){var t=e.split(`.`);return t.length>2?t[0]+`.`+t[1]:e}function vt(e,t){var n=e.length-1,r=e[n],i=yt(t,r);return i&&i.dir?r=`ORDER(`+r+`.Children,`+i.field+`.CurrentMember.MEMBER_CAPTION,`+i.dir+`)`:r+=`.Children`,e[n]=r,e}function yt(e,t){for(var n=0,r=e.length;n<r;n++)if(t.indexOf(e[n].field)===0)return e[n];return null}function bt(e){var t=`CROSSJOIN({`,n;return e.length>2?(n=e.pop(),t+=bt(e)):(t+=e.shift(),n=e.pop()),t+=`},{`,t+=n,t+=`})`,t}function q(e,t){var n=e.slice(0);return t.length>1&&n.push(`{`+xt(t).join(`,`)+`}`),bt(n)}function xt(e){for(var n=0,r=e.length,i=[],a;n<r;n++)a=e[n],i.push(a.name===t?a:a.name);return i}function J(e,t){var n,r,i=-1;for(n=0,r=t.length;n<r;n++)if(Y(t[n])===e){i=n;break}return i}function Y(e){return e=e.name||e,p.call(e)===`[object Array]`&&(e=e[e.length-1]),e}function St(e){for(var t=e.length,n=[],r=0;r<t;r++)n.push(e[r].name[0]);return n}function Ct(e,t){var n,r,i,a=0,o=e.length,s=t.length;for(t=t.slice(0);a<o;a++)for(n=e[a],i=0;i<s;i++)if(r=_t(t[i]),n.indexOf(r)!==-1){t[i]=n;break}return{names:t,expandedIdx:i,uniquePath:t.slice(0,i+1).join(``)}}function wt(e){for(var t=[],n=[],r=[],i,a,o,s=0,c=e.length,l,u,d;s<c;s++)if(i=e[s],l=i.name,d=!1,p.call(l)!==`[object Array]`&&(i.name=l=[l]),l.length>1)n.push(i);else{for(u=_t(l[0]),a=0,o=r.length;a<o;a++)if(r[a].name[0].indexOf(u)===0){d=!0;break}d||r.push(i),i.expand&&t.push(i)}return t=t.concat(n),{root:r,expanded:t}}function Tt(e,t,n){var r=``;e||=[];var i=wt(e),a=i.root,o=St(a),s=[];i=i.expanded;var c=i.length,l=0,u,d=[];if(o.length>1||t.length>1){for(s.push(q(o,t));l<c;l++)u=vt(i[l].name,n),d=Ct(u,o).names,s.push(q(d,t));r+=s.join(`,`)}else{for(;l<c;l++)u=vt(i[l].name,n),d.push(u[0]);r+=o.concat(d).join(`,`)}return r}var Et={contains:`, InStr({0}.CurrentMember.MEMBER_CAPTION,"{1}") > 0`,doesnotcontain:`, InStr({0}.CurrentMember.MEMBER_CAPTION,"{1}")`,startswith:`, Left({0}.CurrentMember.MEMBER_CAPTION,Len("{1}"))="{1}"`,endswith:`, Right({0}.CurrentMember.MEMBER_CAPTION,Len("{1}"))="{1}"`,eq:`, {0}.CurrentMember.MEMBER_CAPTION = "{1}"`,neq:`, {0}.CurrentMember.MEMBER_CAPTION = "{1}"`};function X(e){var t=``,r=e.value,i=e.field,a=e.operator;return a==`in`?(t+=`{`,t+=r,t+=`}`):(t+=a==`neq`||a==`doesnotcontain`?`-`:``,t+=`Filter(`,t+=i+`.MEMBERS`,t+=n.format(Et[a],i,r),t+=`)`),t}function Dt(e,t){var n=``,r,i=e.filters,a=i.length,o;for(o=a-1;o>=0;o--)r=`SELECT (`,r+=X(i[o]),r+=`) ON 0`,o==a-1?(r+=` FROM [`+t+`]`,n=r):n=r+` FROM ( `+n+` )`;return n}function Ot(e,t,n){var r=``;if(t){r+=`<`+e+`>`;var i;for(var a in t){i=t[a];let e=a;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}var kt={schemaCubes:`MDSCHEMA_CUBES`,schemaCatalogs:`DBSCHEMA_CATALOGS`,schemaMeasures:`MDSCHEMA_MEASURES`,schemaDimensions:`MDSCHEMA_DIMENSIONS`,schemaHierarchies:`MDSCHEMA_HIERARCHIES`,schemaLevels:`MDSCHEMA_LEVELS`,schemaMembers:`MDSCHEMA_MEMBERS`,schemaKPIs:`MDSCHEMA_KPIS`},At={read:function(e){var t=`<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/"><Header/><Body><Execute xmlns="urn:schemas-microsoft-com:xml-analysis"><Command><Statement>`;t+=`SELECT NON EMPTY {`;var n=e.columns||[],r=e.rows||[],i=e.measures||[],a=e.measuresAxis===`rows`,o=e.sort||[];return!n.length&&r.length&&(!i.length||i.length&&a)&&(n=r,r=[],a=!1),!n.length&&!r.length&&(a=!1),n.length?t+=Tt(n,a?[]:i,o):i.length&&!a&&(t+=xt(i).join(`,`)),t+=`} DIMENSION PROPERTIES CHILDREN_CARDINALITY, PARENT_UNIQUE_NAME ON COLUMNS`,(r.length||a&&i.length>1)&&(t+=`, NON EMPTY {`,r.length?t+=Tt(r,a?i:[],o):t+=xt(i).join(`,`),t+=`} DIMENSION PROPERTIES CHILDREN_CARDINALITY, PARENT_UNIQUE_NAME ON ROWS`),e.filter?(t+=` FROM `,t+=`(`,t+=Dt(e.filter,e.connection.cube),t+=`)`):t+=` FROM [`+e.connection.cube+`]`,i.length==1&&n.length&&(t+=` WHERE (`+xt(i).join(`,`)+`)`),t+=`</Statement></Command><Properties><PropertyList><Catalog>`+e.connection.catalog+`</Catalog><Format>Multidimensional</Format></PropertyList></Properties></Execute></Body></Envelope>`,t.replace(/\&/g,`&amp;`)},discover:function(t){t||={};var n=`<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/"><Header/><Body><Discover xmlns="urn:schemas-microsoft-com:xml-analysis">`;return n+=`<RequestType>`+(kt[t.command]||t.command)+`</RequestType>`,n+=`<Restrictions>`+Ot(`RestrictionList`,t.restrictions,!0)+`</Restrictions>`,t.connection&&t.connection.catalog&&(t.properties=e.extend({},{Catalog:t.connection.catalog},t.properties)),n+=`<Properties>`+Ot(`PropertyList`,t.properties)+`</Properties>`,n+=`</Discover></Body></Envelope>`,n}},jt=n.data.RemoteTransport.extend({init:function(e){var t=e;e=this.options=g(!0,{},this.options,e),n.data.RemoteTransport.call(this,e),v(t.discover)?this.discover=t.discover:typeof t.discover==`string`?this.options.discover={url:t.discover}:t.discover||(this.options.discover=this.options.read)},setup:function(t,r){return t.data=t.data||{},e.extend(!0,t.data,{connection:this.options.connection}),n.data.RemoteTransport.fn.setup.call(this,t,r)},options:{read:{dataType:`text`,contentType:`text/xml`,type:`POST`},discover:{dataType:`text`,contentType:`text/xml`,type:`POST`},parameterMap:function(e,t){return At[t](e,t)}},discover:function(t){return e.ajax(this.setup(t,`discover`))}}),Mt=a.extend({init:function(e){e=this.options=g(!0,{},this.options,e)},setup:function(t){return e.extend(!0,t||{},{connection:this.options.connection})},read:function(t){var n=this,r,i,a=n.setup(t.data,b);r=t.success||e.noop,i=t.error||e.noop,t.parameterMap&&(a=n.parameterMap(a,b));let o=typeof n.options.read==`object`&&n.options.read.url?n.options.read:{url:n.options.read};me(o,a).then(Ie).then(function(e){r(e)}).catch(function(e){i(e)})},catalog:function(n){var r=this.options||{};if(n===t)return(r.connection||{}).catalog;var i=r.connection||{};i.catalog=n,this.options.connection=i,e.extend(this.transport.options,{connection:i})},cube:function(e){var n=this.options||{};if(e===t)return(n.connection||{}).cube;var r=n.connection||{};r.cube=e,this.options.connection=r,g(!0,this.transport.options,{connection:r})},discover:function(e){return he({url:this.options.read},e)}});function Nt(e){return e==null?[]:p.call(e)===`[object Array]`?e:[e]}function Pt(e){for(var t={tuples:[]},r=Nt(n.getter(`Tuples.Tuple`,!0)(e)),i=n.getter(`Caption['#text']`),a=n.getter(`UName['#text']`),o=n.getter(`LName['#text']`),s=n.getter(`LNum['#text']`),c=n.getter(`CHILDREN_CARDINALITY['#text']`,!0),l=n.getter(`['@Hierarchy']`),u=n.getter(`PARENT_UNIQUE_NAME['#text']`,!0),d=0;d<r.length;d++){for(var f=[],p=Nt(r[d].Member),m=0;m<p.length;m++)f.push({children:[],caption:i(p[m]),name:a(p[m]),levelName:o(p[m]),levelNum:s(p[m]),hasChildren:parseInt(c(p[m]),10)>0,parentName:u(p[m]),hierarchy:l(p[m])});t.tuples.push({members:f})}return t}var Z={cubes:{name:n.getter(`CUBE_NAME['#text']`,!0),caption:n.getter(`CUBE_CAPTION['#text']`,!0),description:n.getter(`DESCRIPTION['#text']`,!0),type:n.getter(`CUBE_TYPE['#text']`,!0)},catalogs:{name:n.getter(`CATALOG_NAME['#text']`,!0),description:n.getter(`DESCRIPTION['#text']`,!0)},measures:{name:n.getter(`MEASURE_NAME['#text']`,!0),caption:n.getter(`MEASURE_CAPTION['#text']`,!0),uniqueName:n.getter(`MEASURE_UNIQUE_NAME['#text']`,!0),description:n.getter(`DESCRIPTION['#text']`,!0),aggregator:n.getter(`MEASURE_AGGREGATOR['#text']`,!0),groupName:n.getter(`MEASUREGROUP_NAME['#text']`,!0),displayFolder:n.getter(`MEASURE_DISPLAY_FOLDER['#text']`,!0),defaultFormat:n.getter(`DEFAULT_FORMAT_STRING['#text']`,!0)},kpis:{name:n.getter(`KPI_NAME['#text']`,!0),caption:n.getter(`KPI_CAPTION['#text']`,!0),value:n.getter(`KPI_VALUE['#text']`,!0),goal:n.getter(`KPI_GOAL['#text']`,!0),status:n.getter(`KPI_STATUS['#text']`,!0),trend:n.getter(`KPI_TREND['#text']`,!0),statusGraphic:n.getter(`KPI_STATUS_GRAPHIC['#text']`,!0),trendGraphic:n.getter(`KPI_TREND_GRAPHIC['#text']`,!0),description:n.getter(`KPI_DESCRIPTION['#text']`,!0),groupName:n.getter(`MEASUREGROUP_NAME['#text']`,!0)},dimensions:{name:n.getter(`DIMENSION_NAME['#text']`,!0),caption:n.getter(`DIMENSION_CAPTION['#text']`,!0),description:n.getter(`DESCRIPTION['#text']`,!0),uniqueName:n.getter(`DIMENSION_UNIQUE_NAME['#text']`,!0),defaultHierarchy:n.getter(`DEFAULT_HIERARCHY['#text']`,!0),type:n.getter(`DIMENSION_TYPE['#text']`,!0)},hierarchies:{name:n.getter(`HIERARCHY_NAME['#text']`,!0),caption:n.getter(`HIERARCHY_CAPTION['#text']`,!0),description:n.getter(`DESCRIPTION['#text']`,!0),uniqueName:n.getter(`HIERARCHY_UNIQUE_NAME['#text']`,!0),dimensionUniqueName:n.getter(`DIMENSION_UNIQUE_NAME['#text']`,!0),displayFolder:n.getter(`HIERARCHY_DISPLAY_FOLDER['#text']`,!0),origin:n.getter(`HIERARCHY_ORIGIN['#text']`,!0),defaultMember:n.getter(`DEFAULT_MEMBER['#text']`,!0)},levels:{name:n.getter(`LEVEL_NAME['#text']`,!0),caption:n.getter(`LEVEL_CAPTION['#text']`,!0),description:n.getter(`DESCRIPTION['#text']`,!0),uniqueName:n.getter(`LEVEL_UNIQUE_NAME['#text']`,!0),dimensionUniqueName:n.getter(`DIMENSION_UNIQUE_NAME['#text']`,!0),displayFolder:n.getter(`LEVEL_DISPLAY_FOLDER['#text']`,!0),orderingProperty:n.getter(`LEVEL_ORDERING_PROPERTY['#text']`,!0),origin:n.getter(`LEVEL_ORIGIN['#text']`,!0),hierarchyUniqueName:n.getter(`HIERARCHY_UNIQUE_NAME['#text']`,!0)},members:{name:n.getter(`MEMBER_NAME['#text']`,!0),caption:n.getter(`MEMBER_CAPTION['#text']`,!0),uniqueName:n.getter(`MEMBER_UNIQUE_NAME['#text']`,!0),dimensionUniqueName:n.getter(`DIMENSION_UNIQUE_NAME['#text']`,!0),hierarchyUniqueName:n.getter(`HIERARCHY_UNIQUE_NAME['#text']`,!0),levelUniqueName:n.getter(`LEVEL_UNIQUE_NAME['#text']`,!0),childrenCardinality:n.getter(`CHILDREN_CARDINALITY['#text']`,!0)}},Ft=[`axes`,`catalogs`,`cubes`,`dimensions`,`hierarchies`,`levels`,`measures`],It=n.data.XmlDataReader.extend({init:function(e){n.data.XmlDataReader.call(this,e),this._extend(e)},_extend:function(e){for(var t=0,n=Ft.length,r,i;t<n;t++)r=Ft[t],i=e[r],i&&i!==m&&(this[r]=i)},parse:function(e){var t=n.data.XmlDataReader.fn.parse(e.replace(/<(\/?)(\w|-)+:/g,`<$1`));return n.getter(`['Envelope']['Body']`,!0)(t)},errors:function(e){var t=n.getter(`['Fault']`,!0)(e);return t?[{faultstring:n.getter(`faultstring['#text']`,!0)(t),faultcode:n.getter(`faultcode['#text']`,!0)(t)}]:null},axes:function(e){e=n.getter(`ExecuteResponse["return"].root`,!0)(e);for(var t=Nt(n.getter(`Axes.Axis`,!0)(e)),r,i={columns:{},rows:{}},a=0;a<t.length;a++)r=t[a],r[`@name`].toLowerCase()!==`sliceraxis`&&(i.columns.tuples?i.rows=Pt(r):i.columns=Pt(r));return i},data:function(e){e=n.getter(`ExecuteResponse["return"].root`,!0)(e);for(var t=Nt(n.getter(`CellData.Cell`,!0)(e)),r=[],i=n.getter(`['@CellOrdinal']`),a=n.getter(`Value['#text']`),o=n.getter(`FmtValue['#text']`),s=0;s<t.length;s++)r.push({value:a(t[s]),fmtValue:o(t[s]),ordinal:parseInt(i(t[s]),10)});return r},_mapSchema:function(e,t){e=n.getter(`DiscoverResponse["return"].root`,!0)(e);for(var r=Nt(n.getter(`row`,!0)(e)),i=[],a=0;a<r.length;a++){var o={};for(var s in t)o[s]=t[s](r[a]);i.push(o)}return i},measures:function(e){return this._mapSchema(e,Z.measures)},kpis:function(e){return this._mapSchema(e,Z.kpis)},hierarchies:function(e){return this._mapSchema(e,Z.hierarchies)},levels:function(e){return this._mapSchema(e,Z.levels)},dimensions:function(e){return this._mapSchema(e,Z.dimensions)},cubes:function(e){return this._mapSchema(e,Z.cubes)},catalogs:function(e){return this._mapSchema(e,Z.catalogs)},members:function(e){return this._mapSchema(e,Z.members)}});g(!0,n.data,{PivotDataSource:V,PivotDataSourceV2:B,XmlaTransport:jt,XmlaDataReader:It,PivotCubeBuilder:Qe,transports:{xmla:jt},readers:{xmla:It}});var Lt=function(e,t){if(!e)return null;for(var n=0,r=e.length;n<r;n++)if(e[n].field===t)return e[n];return null},Rt=function(e,t){for(var n=[],r=0,i=e.length;r<i;r++)e[r].field!==t&&n.push(e[r]);return n};n.ui.PivotSettingTarget=s.extend({init:function(t,i){var a=this;if(s.fn.init.call(a,t,i),a.element.addClass(`k-pivot-setting`),a.dataSource=n.data.PivotDataSource.create(i.dataSource),a._refreshHandler=a.refresh.bind(a),a.dataSource.first(x,a._refreshHandler),!i.template){var o=``;a.options.enabled&&(o=`<span ref-pivotgrid-remove class="k-setting-delete k-chip-action">${n.ui.icon(`x`)}</span>`),a.options.template=e=>`<span class="k-chip" data-${n.ns}name="${e.name||e}"><span class="k-chip-content"><span class="k-chip-text">${e.name||e}</span></span><span class="k-chip-actions">`+o+`</span></span>`}a.template=n.template(a.options.template),a.emptyTemplate=n.template(a.options.emptyTemplate),a._sortable(),a.element.on(`click`+k,`.k-chip, .k-button`,function(t){var r=e(t.target).closest(`:not(path,svg)`),i=r.closest(`.k-chip-action`),o=r.closest(`[`+n.attr(`name`)+`]`).attr(n.attr(`name`));if(o){if(i.hasClass(`k-setting-delete`)){a.remove(o);return}if(!(r.closest(`.k-chip-actions`).length>0)&&a.options.sortable){var s=e(t.currentTarget).closest(`:not(path,svg)`).find(`[ref-pivotgrid-sort-asc]`).length?`desc`:`asc`;a.sort({field:o,dir:s})}}}),(i.filterable||i.sortable)&&(a.fieldMenu=new r.PivotFieldMenu(a.element,{messages:a.options.messages.fieldMenu,filter:`.k-setting-fieldmenu`,filterable:i.filterable,sortable:i.sortable,dataSource:a.dataSource})),a.refresh(),s.fn.endInit.call(a)},options:{name:`PivotSettingTarget`,template:null,filterable:!1,sortable:!1,emptyTemplate:e=>`<div class='k-empty'>${e}</div>`,setting:`columns`,enabled:!0,messages:{empty:`Drop Fields Here`}},setDataSource:function(e){this.dataSource.unbind(x,this._refreshHandler),this.dataSource=this.options.dataSource=e,this.fieldMenu&&this.fieldMenu.setDataSource(e),e.first(x,this._refreshHandler),this.refresh()},_sortable:function(){var e=this;e.options.enabled&&(this.sortable=this.element.kendoSortable({connectWith:this.options.connectWith,hint:e.options.hint,filter:`>*:not(.k-empty)`,cursor:`move`,start:function(e){e.item.trigger(`focus`).trigger(`blur`)},change:function(t){var r=t.item.attr(n.attr(`name`));t.action==`receive`?e.add(r):t.action==`remove`?e.remove(r):t.action==`sort`&&e.move(r,t.newIndex)}}).data(`kendoSortable`))},_isKPI:function(e){return e.type===`kpi`||e.measure},validate:function(e){var t=e.type==2||`aggregator`in e||this._isKPI(e);if(t)return this.options.setting===`measures`;if(this.options.setting===`measures`)return t;var n=this.dataSource[this.options.setting](),r=e.defaultHierarchy||e.uniqueName;return!(J(r,n)>-1||(n=this.dataSource[this.options.setting===`columns`?`rows`:`columns`](),J(r,n)>-1))},add:function(e){let t=this.dataSource[this.options.setting](),n=0;e=Array.isArray(e)?e.slice(0):[e];let r=e.length;for(;n<r;)J(e[n],t)!==-1&&(e.splice(n,1),--n,--r),n++;e.length&&(t=t.concat(e),this.dataSource[this.options.setting](t))},move:function(e,t){var n=this.dataSource[this.options.setting](),r=J(e,n);r>-1&&(e=n.splice(r,1)[0],n.splice(t,0,e),this.dataSource[this.options.setting](n))},remove:function(e){var t=this.dataSource[this.options.setting](),n=J(e,t),r=this.dataSource.sort(),i=this.dataSource.filter();n>-1&&(i&&(i.filters=Rt(i.filters,e),this.dataSource._filter.filters=i.filters,i.filters.length||(this.dataSource._filter=null)),r&&(r=Rt(r,e),this.dataSource._sort=r),t.splice(n,1),this.dataSource[this.options.setting](t))},sort:function(e){var t=this.options.sortable,n=(t===!0||t.allowUnsort)&&e.dir===`asc`,r=this.dataSource.sort()||[],i=Rt(r,e.field);n&&r.length!==i.length&&(e=null),e&&i.push(e),this.dataSource.sort(i)},refresh:function(){var e=``,n=this.dataSource[this.options.setting](),r=n.length,i=0,a;if(r)for(;i<r;i++)a=n[i],a=a.name===t?{name:a}:a,e+=this.template(g({sortIcon:this._sortIcon(a.name)},a));else e=this.emptyTemplate(this.options.messages.empty);this.element.html(e)},destroy:function(){s.fn.destroy.call(this),this.dataSource.unbind(x,this._refreshHandler),this.element.off(k),this.sortable&&this.sortable.destroy(),this.fieldMenu&&this.fieldMenu.destroy(),this.element=null,this._refreshHandler=null},_sortIcon:function(e){var t=Lt(this.dataSource.sort(),Y(e)),n=``;return t&&(n=`sort-`+t.dir),n}}),n.ui.PivotSettingTargetV2=s.extend({init:function(t,i){var a=this;s.fn.init.call(a,t,i),a.dataSource=n.data.PivotDataSourceV2.create(i.dataSource),a._refreshHandler=a.refresh.bind(a),a.dataSource.first(x,a._refreshHandler),a.template=n.template(a.options.template),a._sortable(),a.element.on(`click`+k,`[ref-pivotgrid-remove]`,function(t){var n=e(t.target).closest(`:not(path,svg)`).closest(`.k-chip`),r=n.find(`.k-chip-label`).text();r&&(a.remove(r),n.remove(),a.trigger(`remove`,{name:r}))}),a.options.navigatable&&a.element.on(`keydown`+k,`.k-chip`,function(t){var n=e(t.target),r=t.keyCode,i=n.find(`.k-chip-label`).text();if(r===_.DELETE||r===_.BACKSPACE){let e=a.options.configuratorNavigation?a.options.configuratorNavigation.elements.indexOf(n[0]):-1;if(n.find(`[ref-pivotgrid-remove]`).trigger(`click`),!a.options.configuratorNavigation)return;a.options.configuratorNavigation.focusElement(a.options.configuratorNavigation.elements[e-1])}else if(r===_.DOWN&&t.altKey)n.find(`[ref-pivotgrid-field-menu]`).trigger(`click`);else if(t.ctrlKey&&t.shiftKey){if(r==_.LEFT){if(a.move(i,Math.max(0,n.index()-1)),!a.options.configuratorNavigation)return;a.options.configuratorNavigation.focusElement(a.element.find(`.k-chip .k-chip-label`).filter((t,n)=>e(n).text()==i).closest(`.k-chip`)[0])}else if(r==_.RIGHT){if(a.move(i,Math.min(n.index()+1,n.parent().find(`> .k-chip`).length-1)),!a.options.configuratorNavigation)return;a.options.configuratorNavigation.focusElement(a.element.find(`.k-chip .k-chip-label`).filter((t,n)=>e(n).text()==i).closest(`.k-chip`)[0])}else if(r==_.UP&&a.options.setting==`rows`||r==_.DOWN&&a.options.setting==`columns`){let e=a.sortable.options.connectWith.data(`kendoPivotSettingTargetV2`);if(!e||(a.remove(i),e.add(i),!a.options.configuratorNavigation))return;a.options.configuratorNavigation.focusElement(e.element.find(`.k-chip`).last()[0])}}}),a.fieldMenu=new r.PivotFieldMenuV2(a.element,{messages:a.options.messages.fieldMenu,filterable:i.filterable,filter:`[ref-pivotgrid-field-menu]`,sortable:i.sortable,dataSource:a.dataSource,setting:i.setting}),a.refresh(),s.fn.endInit.call(a)},events:[`remove`],options:{name:`PivotSettingTargetV2`,template:null,filterable:!1,sortable:!1,setting:`columns`,enabled:!0,messages:{empty:`Drop Fields Here`}},setDataSource:function(e){this.dataSource.unbind(x,this._refreshHandler),this.dataSource=this.options.dataSource=e,this.fieldMenu&&this.fieldMenu.setDataSource(e),e.first(x,this._refreshHandler),this.refresh()},_applyState:function(){this._sortState!==t&&(this.dataSource._sort=this._sortState,this._sortState=t),this._stateFilter!==t&&(this.dataSource._filter=this._stateFilter,this._stateFilter=t),this.dataSource[`_`+this.options.setting]=this.options.setting===`measures`?j(this._savedState):M(this._savedState)},_cancelChanges:function(){this._sortState=t,this._stateFilter=t,this._savedState=n.deepExtend([],this._initialState),this._redraw()},_state:function(e,t){var r=this;if(e)(!r._savedState||t)&&(r._initialState=n.deepExtend([],e)),r._savedState=n.deepExtend([],e);else return r._savedState||[]},_sortable:function(){var e=this;this.sortable=this.element.kendoSortable({connectWith:this.options.connectWith,hint:e.options.hint,filter:`>*:not(.k-empty)`,cursor:`move`,start:function(e){e.item.trigger(`focus`).blur()},change:function(t){var n=t.item.find(`.k-chip-label`).text();t.action==`receive`?e.add(n):t.action==`remove`?e.remove(n):t.action==`sort`&&e.move(n,t.newIndex)}}).data(`kendoSortable`)},add:function(e){let t=this._state(),n=0;e=Array.isArray(e)?e.slice(0):[e];let r=e.length;for(;n<r;)J(e[n],t)!==-1&&(e.splice(n,1),--n,--r),n++;e.length&&(t=t.concat(e),this._state(t),this._redraw())},move:function(e,t){var n=this._state(),r=J(e,n);r>-1&&(e=n.splice(r,1)[0],n.splice(t,0,e),this._state(n),this._redraw())},remove:function(e){var t=this._state(),n=J(e,t),r=this.dataSource.sort(),i=this.dataSource.filter();n>-1&&(i&&(i.filters=Rt(i.filters,e),this._savedFilter=this.dataSource._filter,this._savedFilter.filters=i.filters,i.filters.length||(this._savedFilter=null)),r&&(r=Rt(r,e),this._sortState=r),t.splice(n,1),this._state(t),this._redraw())},_emptyState:function(e){var t=this;e?t.element.html(this.options.messages.empty).addClass(`k-settings-description`).removeClass(`k-chip-list`):t.element.removeClass(`k-settings-description`).addClass(`k-chip-list`)},_redraw:function(){var e=this._state()||[];this._emptyState(!e.length),e.length&&this.element.html(this._targetsHTML(e))},_targetsHTML:function(e){var n,r=``,i=0,a=!0;if(e.length)for(;i<e.length;i++)n=e[i],n=n.name===t?{name:n}:n,r+=this.template({name:n.name,menuenabled:a});return r},refresh:function(){if(!this.dataSource._preventRefresh){var e=this.dataSource[this.options.setting]();this._state(e,!0),this._emptyState(!this._state().length),e.length&&this.element.html(this._targetsHTML(e))}},destroy:function(){s.fn.destroy.call(this),this.dataSource.unbind(x,this._refreshHandler),this.element.off(k),this.sortable&&this.sortable.destroy(),this.fieldMenu&&this.fieldMenu.destroy(),this.element=null,this._refreshHandler=null}});var zt=s.extend({init:function(t,n){var r=this;s.fn.init.call(r,t,n),r.element=e(t),r._element(),r._attachEvents(),s.fn.endInit.call(r)},options:{name:`PivotConfiguratorButton`,text:`Change settings`,configurator:``},destroy:function(){s.fn.destroy.call(this),this.element.off(k)},setOptions:function(e){var t=this;n.deepExtend(t.options,e),this.init(this.element,this.options)},toggle:function(){var t=n.attr(`role`),r=this.element.closest(`[`+t+`=pivotcontainer]`).find(`[`+t+`=pivotgridv2]`),i;e(`#`+this.options.configurator).toggleClass(`k-hidden`),r.length&&(i=r.getKendoPivotGridV2(),i._setContentWidth(),i._updateDimensions())},_attachEvents:function(){this.element.on(`click`+k,this.toggle.bind(this))},_element:function(){var e=this.options;this.element.addClass(`k-pivotgrid-configurator-button`),this.element.html(n.format(`<span>{0}{1}</span>`,e.text,n.ui.icon(`gear`)))}}),Bt=s.extend({init:function(t,n){var r=this;s.fn.init.call(r,t,n),r.element=e(t),r.options=n,r._addClasses(),s.fn.endInit.call(r)},options:{name:`PivotContainer`,configuratorPosition:`left`},setOptions:function(e){var t=this;n.deepExtend(t.options,e),this.init(this.element,this.options)},_addClasses:function(){var e=this.options,t=this.element.children(`.k-pivotgrid`).first(),n=this.element.children(`.k-pivotgrid-configurator`).first(),r=n.length&&t.length&&n.index()<t.index(),i;switch(this.element.removeClass(`k-flex-row k-flex-row-reverse k-flex-column k-flex-column-reverse`),e.configuratorPosition){case`right`:i=r?`k-flex-row-reverse`:`k-flex-row`;break;case`left`:i=r?`k-flex-row`:`k-flex-row-reverse`;break;case`bottom`:i=r?`k-flex-column-reverse`:`k-flex-column`;break;case`top`:i=r?`k-flex-column`:`k-flex-column-reverse`;break;default:i=r?`k-flex-row-reverse`:`k-flex-row`}this.element.addClass(`k-d-flex k-pos-relative`).addClass(i)}}),Vt=s.extend({init:function(t,r){var i=this;s.fn.init.call(i,t,r),i._dataSource(),i._bindConfigurator(),i._ariaId=i.element.attr(`id`)||n.guid(),i._wrapper(),i._columnHeadersWrapper=e(`<div class="k-pivotgrid-column-headers" role="none"></div>`),i._rowHeadersWrapper=e(`<div class="k-pivotgrid-row-headers" role="none"></div>`),i._contentWrapper=e(`<div class="k-pivotgrid-values" role="none"></div>`),i.wrapper.append(i._columnHeadersWrapper),i.wrapper.append(i._rowHeadersWrapper),i.wrapper.append(i._contentWrapper),i._columnBuilder=new Jt({template:this.options.columnHeaderTemplate,axes:`columns`,ariaId:i._ariaId}),i._rowBuilder=new Jt({template:this.options.rowHeaderTemplate,axes:`rows`,ariaId:i._ariaId}),i._contentBuilder=new qt({dataCellTemplate:this.options.dataCellTemplate||be,kpiStatusTemplate:this.options.kpiStatusTemplate||ve,kpiTrendTemplate:this.options.kpiTrendTemplate||ye,measures:this.dataSource._measures,ariaId:i._ariaId}),i._scrollable(),i._rowHeadersWrapper.add(i._columnHeadersWrapper).on(`click`,`span.k-icon,span.k-svg-icon`,function(){var t=e(this),r=t.parent().attr(n.attr(`key`)),a=t.is(`[ref-pivotgrid-collapse]`),o=t.closest(`.k-pivotgrid-row-headers`).length!==0,s=r.split(`,`),c=a?ue:ce;if(!i.trigger(c,{path:s,axis:o?`rows`:`columns`})){var l={type:`HEADERS_ACTION_TOGGLE`,payload:s,tree:o?i._rowBuilder.getTree():i._columnBuilder.getTree()},u=o?i.dataSource._rows:i.dataSource._columns,d=Ve(u,l);i.dataSource._preventRefresh=!0,i._columnBuilder._exportData={},i._rowBuilder._exportData={},o?i.dataSource.rows(d):i.dataSource.columns(d)}}),i.options.autoBind&&i.dataSource.fetch(),i._aria(),i.options.navigatable&&i._initPivotGridNavigation(),i._initLoader(),n.notify(i),s.fn.endInit.call(i)},events:[oe,se,ce,ue],options:{name:`PivotGridV2`,autoBind:!0,height:null,columnWidth:null,configurator:``,columnHeaderTemplate:null,rowHeaderTemplate:null,dataCellTemplate:null,kpiStatusTemplate:null,kpiTrendTemplate:null,messages:{emptyCellLabel:`PivotGrid Empty Cell`}},destroy:function(){var t=this;s.fn.destroy.call(t),t.loader&&t.loader.destroy(),t._windowResizeHandler&&=(e(window).off(y+k,t._windowResizeHandler),null)},_aria:function(){this.element.attr(`role`,`grid`)},setDataSource:function(e){this.options.dataSource=e,this._dataSource(),this._bindConfigurator(),this.options.autoBind&&e.fetch()},_initLoader:function(t){var n=this,r={messages:{exporting:`Exporting...`}};r=e.extend({},r,t),n.loader=e(`<div></div>`).kendoLoader(r).data(`kendoLoader`),n._loaderContainer=Br.bind(n)},_initPivotGridNavigation:function(){var e=this;e.navigation=new Mr({tabIndex:0}),e.navigation.keyboardEvents.keydown.o=function(e,t,n){if(!t.root)return;let r=t.root.nextElementSibling;r&&r instanceof HTMLElement&&(r.matches(`div.k-pivotgrid-configurator-button`)||(r=r.nextElementSibling),r&&r instanceof HTMLElement&&r.matches(`div.k-pivotgrid-configurator-button`)&&((!t.root.parentNode||t.root.parentNode.querySelector(`.k-pivotgrid-configurator.k-hidden`))&&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)))},e.navigation.start(e.element[0]);let t=e.navigation.first;t&&t.setAttribute(`tabindex`,`0`)},_matchAriaAttributes:function(e){var t=this;let n=e.querySelectorAll(`.k-pivotgrid-row-headers .k-pivotgrid-row`),r=n[0]?Array.from(n[0].children).reduce((e,t)=>e+=t.getAttribute(`colspan`)===null?1:+t.getAttribute(`colspan`),0):[],i=e.querySelectorAll(`.k-pivotgrid-column-headers tr`),a=e.querySelectorAll(`.k-pivotgrid-column-headers th`),o=e.querySelectorAll(`.k-pivotgrid-values td`),s=e.querySelector(`.k-pivotgrid-empty-cell`);s.setAttribute(`aria-rowspan`,i.length.toString()),s.setAttribute(`aria-colspan`,r.toString());let c=i[0],l=c?Array.from(c.children).map(e=>e.getAttribute(`id`)).join(` `):[];c&&c.setAttribute(`aria-owns`,`${s.getAttribute(`id`)} ${l}`),n.forEach((e,n)=>{let r=t.filterAndMap(Array.from(o),e=>{let t=e.getAttribute(`id`).split(`-`);return t[t.length-2]===(n+1).toString()},e=>e.getAttribute(`id`));e.setAttribute(`aria-owns`,r.join(` `))}),o.forEach(e=>{let n=e.getAttribute(`id`).split(`-`),r=+n[n.length-1],i=t.filterAndMap(Array.from(a),e=>{let t=e.getAttribute(`id`).split(`-`),n=+t[t.length-1],i=+e.getAttribute(`colspan`),a=r===n,o=i>1&&n<r&&n+i-1>=r;return a||o},e=>e.getAttribute(`id`));e.setAttribute(`aria-describedby`,i.join(` `))})},filterAndMap:function(e,t,n){return e.reduce((e,r)=>t(r)?[...e,n(r)]:e,[])},_dataSource:function(){var e=this,t=e.options.dataSource;t=Array.isArray(t)?{data:t}:t,e.dataSource&&this._refreshHandler?e.dataSource.unbind(x,e._refreshHandler).unbind(T,e._progressHandler).unbind(S,e._errorHandler):(e._refreshHandler=e.refresh.bind(e),e._progressHandler=e._requestStart.bind(e),e._errorHandler=e._error.bind(e)),e.dataSource=n.data.PivotDataSourceV2.create(t).bind(x,e._refreshHandler).bind(T,e._progressHandler).bind(S,e._errorHandler)},_resize:function(){this.wrapper[0].style.setProperty(`--kendo-scrollbar-width`,n.format(`{0}px`,He()))},_scrollable:function(){var t=this,r=t._columnHeadersWrapper,i=t._rowHeadersWrapper;t._resize(),t._windowResizeHandler=t._resize.bind(t),t._contentWrapper.scroll(function(){n.scrollLeft(r,this.scrollLeft),i.scrollTop(this.scrollTop)}),i.bind(`DOMMouseScroll`+k+` mousewheel`+k,t._wheelScroll.bind(t)),e(window).on(y+k,t._windowResizeHandler)},_wheelScroll:function(t){if(!t.ctrlKey){var r=n.wheelDeltaY(t),i=this._contentWrapper.scrollTop();r&&(t.preventDefault(),e(t.currentTarget).one(`wheel`+k,!1),this._rowHeadersWrapper.scrollTop(i+-r),this._contentWrapper.scrollTop(i+-r))}},_wrapper:function(){var t=this.options.height;this.wrapper=this.element.addClass(`k-pivotgrid`);var n=e(`<span class="k-pivotgrid-empty-cell" id="${this._ariaId}-empty-cell" role="columnheader"><span class="k-sr-only" role="none">${this.options.messages.emptyCellLabel}</span></span>`);this.wrapper.append(n),t&&this.wrapper.css(`height`,t)},_progress:function(e){this._isExport?this._loaderContainer(e,{message:`Exporting...`}):n.ui.progress(this.wrapper,e)},_error:function(){this._progress(!1)},_requestStart:function(){this._progress(!0)},_updateDimensions:function(){var e=this;e.wrapper.css({"grid-template-columns":n.format(`{0}px 1fr`,e._rowHeadersWrapper.find(`.k-pivotgrid-table`)[0].offsetWidth),"grid-template-rows":n.format(`{0}px 1fr`,e._columnHeadersWrapper.find(`.k-pivotgrid-table`)[0].offsetHeight)})},_setContentWidth:function(){if(this.options.columnWidth){var e=this._contentWrapper.find(`table`),t=this._columnHeadersWrapper.children(`table`),n=this._rowHeadersWrapper.children(`table`);e.add(t).add(n).find(`col`).width(this.options.columnWidth)}},_bindConfigurator:function(){var t=this.options.configurator;t&&e(t).kendoPivotConfiguratorV2(`setDataSource`,this.dataSource)},cellInfoByElement:function(t){return t=e(t),this.cellInfo(t.index(),t.parent(`tr`).index())},cellInfo:function(e,t){var n=this._contentBuilder,r,i;return e>=n.columnsCount||e<0||t>=n.rowsCount||t<0?null:(r=t*n.columnsCount+e,i=n.hash[r<0?0:r],{columnTuple:i.columnTuple,rowTuple:i.rowTuple,dataItem:i.data})},refresh:function(){var e=this,t=e.dataSource;if(!e.trigger(oe,{action:`rebind`})){var r=n._activeElement()?n._activeElement().id:null,i=e.wrapper.find(`[tabindex=0]`).attr(`id`);if(e._columnBuilder.setTuples(t._columnTuples),e._columnHeadersWrapper.html(e._columnBuilder.build()),e._rowBuilder.setTuples(t._rowTuples),e._rowHeadersWrapper.html(e._rowBuilder.build()),e._contentBuilder.setRowColumnInfo({columnHeaderLeafs:e._columnBuilder.getHeaderLeafs(),rowHeaderLeafs:e._rowBuilder.getHeaderLeafs(),columnHeaderBreadth:e._columnBuilder.getBreadth(),rowHeaderDepth:e._rowBuilder.getBreadth(),data:t._view}),e._contentWrapper.html(e._contentBuilder.build()),e._setContentWidth(),e._updateDimensions(),e._progress(!1),e.trigger(se),e._matchAriaAttributes(e.wrapper[0]),e.navigation){if(i&&e.element.find(`#${i}`).length>0)e.element.find(`#${i}`).attr(`tabindex`,`0`);else{let t=e.navigation.first;t&&t.setAttribute(`tabindex`,`0`)}r&&r.indexOf(e._ariaId)==0&&e.navigation.focusElement(e.element.find(`#${r}`)[0])}}}});r.plugin(zt),r.plugin(Bt),r.plugin(Vt);var Ht=s.extend({init:function(r,i){var a=this,o,c;s.fn.init.call(a,r,i),pe=n.support.isRtl(a.element)?`chevron-left`:`chevron-right`,a._dataSource(),a._bindConfigurator(),a._wrapper(),a._createLayout(),a._columnBuilder=o=new Yt,a._rowBuilder=c=new Xt,a._contentBuilder=new Zt,a._templates(),a.columnsHeader.add(a.rowsHeader).on(`click`,`span.k-icon,span.k-svg-icon`,function(){var r=e(this),i=o,s=`expandColumn`,l,u=r.attr(n.attr(`path`)),d={axis:`columns`,path:JSON.parse(u)};r.parent().is(`td`)&&(i=c,s=`expandRow`,d.axis=`rows`);var f=r.is(fe),p=i.metadata[u],m=p.expanded===t;l=f?ue:ce,d.childrenLoaded=p.maxChildren>p.children,!a.trigger(l,d)&&(i.metadata[u].expanded=!f,n.ui.icon(r,{icon:f?pe:de}),r.removeAttr(`ref-pivotgrid-expand ref-pivotgrid-collapse`).attr(`ref-pivotgrid-${f?`expand`:`collapse`}`,!0),!f&&m?a.dataSource[s](d.path):a.refresh())}),a._scrollable(),a.options.autoBind&&a.dataSource.fetch(),n.notify(a),s.fn.endInit.call(a)},events:[oe,se,ce,ue],options:{name:`PivotGrid`,autoBind:!0,reorderable:!0,filterable:!1,sortable:!1,navigatable:!1,height:null,columnWidth:100,configurator:``,columnHeaderTemplate:null,rowHeaderTemplate:null,dataCellTemplate:null,kpiStatusTemplate:null,kpiTrendTemplate:null,messages:{measureFields:`Drop Data Fields Here`,columnFields:`Drop Column Fields Here`,rowFields:`Drop Rows Fields Here`}},_templates:function(){var e=this.options.columnHeaderTemplate,t=this.options.rowHeaderTemplate,r=this.options.dataCellTemplate,i=this.options.kpiStatusTemplate,a=this.options.kpiTrendTemplate;this._columnBuilder.template=n.template(e||ge,{useWithBlock:!!e}),this._contentBuilder.dataTemplate=n.template(r||be,{useWithBlock:!!r}),this._contentBuilder.kpiStatusTemplate=n.template(i||ve,{useWithBlock:!!i}),this._contentBuilder.kpiTrendTemplate=n.template(a||ye,{useWithBlock:!!a}),this._rowBuilder.template=n.template(t||ge,{useWithBlock:!!t})},_bindConfigurator:function(){var t=this.options.configurator;t&&e(t).kendoPivotConfigurator(`setDataSource`,this.dataSource)},cellInfoByElement:function(t){return t=e(t),this.cellInfo(t.index(),t.parent(`tr`).index())},cellInfo:function(e,t){var n=this._contentBuilder,r=n.columnIndexes[e||0],i=n.rowIndexes[t||0],a;return!r||!i?null:(a=i.index*n.rowLength+r.index,{columnTuple:r.tuple,rowTuple:i.tuple,measure:r.measure||i.measure,dataItem:this.dataSource.view()[a]})},setDataSource:function(e){this.options.dataSource=e,this._dataSource(),this.measuresTarget&&this.measuresTarget.setDataSource(e),this.rowsTarget&&this.rowsTarget.setDataSource(e),this.columnsTarget&&this.columnsTarget.setDataSource(e),this._bindConfigurator(),this.options.autoBind&&e.fetch()},setOptions:function(e){s.fn.setOptions.call(this,e),this._templates()},destroy:function(){s.fn.destroy.call(this),clearTimeout(this._headerReflowTimeout)},_dataSource:function(){var e=this,t=e.options.dataSource;t=Array.isArray(t)?{data:t}:t,e.dataSource&&this._refreshHandler?e.dataSource.unbind(x,e._refreshHandler).unbind(D,e._stateResetHandler).unbind(T,e._progressHandler).unbind(S,e._errorHandler):(e._refreshHandler=e.refresh.bind(e),e._progressHandler=e._requestStart.bind(e),e._stateResetHandler=e._stateReset.bind(e),e._errorHandler=e._error.bind(e)),e.dataSource=n.data.PivotDataSource.create(t).bind(x,e._refreshHandler).bind(T,e._progressHandler).bind(D,e._stateResetHandler).bind(S,e._errorHandler)},_error:function(){this._progress(!1)},_requestStart:function(){this._progress(!0)},_stateReset:function(){this._columnBuilder.reset(),this._rowBuilder.reset()},_wrapper:function(){var e=this.options.height;this.wrapper=this.element.addClass(`k-pivot`),e&&this.wrapper.css(`height`,e)},_measureFields:function(){this.measureFields=e(ne).addClass(`k-pivot-toolbar k-toolbar k-settings-measures`),this.measuresTarget=this._createSettingTarget(this.measureFields,{setting:`measures`,messages:{empty:this.options.messages.measureFields}})},_createSettingTarget:function(t,r){var i,a=this.options;return i=({sortIcon:e,name:t})=>`<span class="k-chip" tabindex="0" data-${n.ns}name="${t}"><span class="k-chip-content"><span class="k-chip-text">${t}</span></span><span class="k-chip-actions k-field-actions">`+Xe(e,r,a)+`</span></span>`,new n.ui.PivotSettingTarget(t,e.extend({dataSource:this.dataSource,template:i,emptyTemplate:e=>`<span class="k-empty">${e}</span>`,enabled:this.options.reorderable},r))},_initSettingTargets:function(){this.columnsTarget=this._createSettingTarget(this.columnFields,{connectWith:this.rowFields,setting:`columns`,filterable:this.options.filterable,sortable:this.options.sortable,messages:{empty:this.options.messages.columnFields,fieldMenu:this.options.messages.fieldMenu}}),this.rowsTarget=this._createSettingTarget(this.rowFields,{connectWith:this.columnFields,setting:`rows`,filterable:this.options.filterable,sortable:this.options.sortable,messages:{empty:this.options.messages.rowFields,fieldMenu:this.options.messages.fieldMenu}})},_createLayout:function(){var t=this,r=e(xe),i=r.find(`.k-pivot-rowheaders`),a=r.find(`.k-pivot-table`),o=e(ne).addClass(`k-grid`);t._measureFields(),t.columnFields=e(ne).addClass(`k-pivot-toolbar k-toolbar k-settings-columns`),t.rowFields=e(ne).addClass(`k-pivot-toolbar k-toolbar k-settings-rows`),t.columnsHeader=e(`<div class="k-grid-header-wrap" />`).wrap(`<div class="k-grid-header" />`),t.columnsHeader.parent().css(`padding-right`,n.support.scrollbar()),t.rowsHeader=e(`<div class="k-grid k-alt"/>`),t.content=e(`<div class="k-grid-content" />`),i.append(t.measureFields),i.append(t.rowFields),i.append(t.rowsHeader),o.append(t.columnsHeader.parent()),o.append(t.content),a.append(t.columnFields),a.append(o),t.wrapper.append(r),t.columnsHeaderTree=new n.dom.Tree(t.columnsHeader[0]),t.rowsHeaderTree=new n.dom.Tree(t.rowsHeader[0]),t.contentTree=new n.dom.Tree(t.content[0]),t._initSettingTargets()},_progress:function(e){n.ui.progress(this.wrapper,e)},_resize:function(){this.content[0].firstChild&&(this._setSectionsWidth(),this._setSectionsHeight(),this._setContentWidth(),this._setContentHeight(),this._columnHeaderReflow())},_columnHeaderReflow:function(){var e=this.columnsHeader.children(`table`);n.support.browser.mozilla&&(clearTimeout(this._headerReflowTimeout),e.css(`table-layout`,`auto`),this._headerReflowTimeout=setTimeout(function(){e.css(`table-layout`,``)}))},_setSectionsWidth:function(){var e=this.rowsHeader,t=e.parent(`.k-pivot-rowheaders`).width(O),n=Math.max(l(this.measureFields),l(this.rowFields));n=Math.max(e.children(`table`).width(),n),t.width(n)},_setSectionsHeight:function(){var e=this.measureFields.height(O).height(),t=this.columnFields.height(O).height(),n=this.rowFields.height(O).innerHeight(),r=this.columnsHeader.height(O).innerHeight(),i=n-this.rowFields.height(),a=t>e?t:e,o=r>n?r:n;this.measureFields.height(a),this.columnFields.height(a),this.rowFields.height(o-i),this.columnsHeader.height(o)},_setContentWidth:function(){var e=this.content.find(`table`),t=this.columnsHeader.children(`table`),n=e.children(`colgroup`).children().length*this.options.columnWidth,r=Math.ceil(n/this.content.width()*100);r<100&&(r=100),e.add(t).css(`width`,r+`%`),this._resetColspan(t)},_setContentHeight:function(){var e=this,t=e.content,r=e.rowsHeader,i=e.wrapper.innerHeight(),a=n.support.scrollbar(),o=t[0].offsetHeight===t[0].clientHeight,s=e.options.height;if(e.wrapper.is(`:visible`)){if(!i||!s){o&&(a=0),t.height(`auto`),r.height(t.height()-a);return}i-=u(e.columnFields),i-=u(e.columnsHeader.parent()),i<=a*2&&(i=a*2+1,o||(i+=a)),t.height(i),o&&(a=0),r.height(i-a)}},_resetColspan:function(e){var n=this,r=e.children(`tbody`).children().first().children().first();n._colspan===t&&(n._colspan=r.attr(`colspan`)),r.attr(`colspan`,1),clearTimeout(n._layoutTimeout),n._layoutTimeout=setTimeout(function(){r.attr(`colspan`,n._colspan),n._colspan=t})},_axisMeasures:function(e){var t=[],n=this.dataSource,r=n.measures(),i=r.length>1||r[0]&&r[0].type;return n.measuresAxis()===e&&(n[e]().length===0||i)&&(t=r),t},items:function(){return[]},refresh:function(){var e=this,t=e.dataSource,r=t.axes(),i=(r.columns||{}).tuples||[],a=(r.rows||{}).tuples||[],o=e._columnBuilder,s=e._rowBuilder,c={},l={};if(!e.trigger(oe,{action:`rebind`})){if(o.measures=e._axisMeasures(Te),s.measures=e._axisMeasures(Se),e.columnsHeaderTree.render(o.build(i)),e.rowsHeaderTree.render(s.build(a)),c={indexes:o._indexes,measures:o.measures,metadata:o.metadata},l={indexes:s._indexes,measures:s.measures,metadata:s.metadata},e.contentTree.render(e._contentBuilder.build(t.view(),c,l)),e._resize(),e.touchScroller)e.touchScroller.contentResized();else{var u=n.touchScroller(e.content);u&&u.movable&&(e.touchScroller=u,u.movable.bind(`change`,function(t){n.scrollLeft(e.columnsHeader,-t.sender.x),e.rowsHeader.scrollTop(-t.sender.y)}))}e._progress(!1),e.trigger(se)}},_scrollable:function(){var e=this,t=e.columnsHeader,r=e.rowsHeader;e.content.on(`scroll`,function(){n.scrollLeft(t,this.scrollLeft),r.scrollTop(this.scrollTop)}),r.on(`DOMMouseScroll`+k+` mousewheel`+k,e._wheelScroll.bind(e))},_wheelScroll:function(t){if(!t.ctrlKey){var r=n.wheelDeltaY(t),i=this.content.scrollTop();r&&(t.preventDefault(),e(t.currentTarget).closest(`:not(path,svg)`).one(`wheel`+k,!1),this.rowsHeader.scrollTop(i+-r),this.content.scrollTop(i+-r))}}}),Q=n.dom.element,Ut=n.dom.html,Wt=function(e,t){return{maxChildren:0,children:0,maxMembers:0,members:0,measures:1,levelNum:e,parentMember:t!==0}},Gt=function(e,t){for(var n=[],r=0;r<=t;r++)n.push(e.members[r].name);return n},Kt=function(e,t){for(var n=``,r=0;r<=t;r++)n+=e.members[r].name;return n},qt=a.extend({init:function(e){this.dataCellTemplate=n.template(e.dataCellTemplate),this.kpiStatusTemplate=n.template(e.kpiStatusTemplate),this.kpiTrendTemplate=n.template(e.kpiTrendTemplate),this.measures=e.measures,this.ariaId=e.ariaId,this.hash=[]},setRowColumnInfo:function(e){this.data=e.data,this.columnHeaderLeafs=e.columnHeaderLeafs,this.rowHeaderLeafs=e.rowHeaderLeafs,this.columnHeaderBreadth=e.columnHeaderBreadth,this.rowHeaderDepth=e.rowHeaderDepth,this.hash.length=0},addColElements:function(e){for(var t=``,n=0;n<e;n++)t+=`<col>`;this.table.find(`colgroup`).append(t)},addRowElements:function(t){for(var n=this,r=n.table.find(`tbody`),i,a=0;a<t.length;a++)i=e(`<tr class="k-pivotgrid-row" role='none'></tr>`),r.append(i),n.addColumCell(i,t[a],a);this.rowsCount=t.length},_getTemplate:function(e,t){let n=this,r,i=e.columnTuple.members,a=i[i.length-1],o=n.measures&&n.measures.find(e=>e.name===a.name),s=e.data===null?e.data:e.data.value;o&&o.type&&(r=o.type);let c=this.dataCellTemplate;if(this.measures&&r&&s!==``)switch(t.dataItem||={value:isNaN(Number(s))?s:Number(s)},r){case`status`:c=this.kpiStatusTemplate;break;case`trend`:c=this.kpiTrendTemplate;break}return c(t)},addColumCell:function(t,n,r){for(var i=this,a=0;a<n.cells.length;a++){var o=n.cells[a];if(o){var s=e(`<td id="${i.ariaId}-cell-${r+1}-${a+1}" class="k-pivotgrid-cell" role="gridcell"></td>`);(this.rowHeaderLeafs[r].total||this.columnHeaderLeafs[a].total)&&s.addClass(`k-pivotgrid-total`),s.append(i._getTemplate(o,{dataItem:o.data,rowTuple:o.rowTuple,columnTuple:o.columnTuple})),this.hash.push(o),t.append(s)}}},build:function(){var t=we((this.data||[]).slice(),this.columnHeaderLeafs,this.rowHeaderLeafs,this.columnHeaderBreadth,this.rowHeaderDepth),n=this;return n.table=e(`<table class='k-pivotgrid-table' role='none'><colgroup></colgroup><tbody class='k-pivotgrid-tbody' role='none'></tbody></table>`),n.addColElements(this.columnHeaderLeafs.length),n.addRowElements(t),this.rowsCount=t.length,this.columnsCount=this.columnHeaderLeafs.length,n.table}}),Jt=a.extend({init:function(e){this.tuples=e.tuples,this.axes=e.axes,this.ariaId=e.ariaId,this.headerTemplate=n.template(le),this._exportData={},e.template&&(this.template=n.template(e.template))},setTuples:function(e){this.tuples=e},addColElements:function(e){for(var t=``,n=0;n<e;n++)t+=`<col>`;this.table.find(`colgroup`).append(t)},addRowElements:function(t){for(var n=this,r=n.table.find(`tbody`),i,a=0;a<t.length;a++)i=e(`<tr class="k-pivotgrid-row" role="row"></tr>`),r.append(i),n.addColumCell(i,t[a],a)},_getExportData:function(e,t,n){t.levelName.match(/\[\(All\)\]/)&&(t.caption=t.caption.toUpperCase()),this._exportData[e]?this._exportData[e].children.push(t):this._exportData[e]={children:[t],element:n}},addColumCell:function(t,r,i){for(var a=this,o,s,c=0;c<r.cells.length;c++)if(s=r.cells[c],s){this._getExportData(i,s,t);let r=s.children&&s.children.length>0;o=e(a.headerTemplate({id:`${a.ariaId}-${a.axes==`columns`?`ch`:`rh`}-${i+1}-${c+1}`,rowspan:s.rowSpan,colspan:s.colSpan,key:s.path.join(`,`)+(s.total?`|[TOTAL]`:``),iconClass:s.children&&s.children.length?`up`:`down`,expandable:s.hasChildren&&!s.total,expanded:r?`true`:`false`,headerClass:n.format(`k-pivotgrid-cell{0}{1}`,s.total?` k-pivotgrid-header-total`:``,s.levelNum===0?` k-pivotgrid-header-root`:``),role:a.axes==`columns`?`columnheader`:`rowheader`})),r&&o.addClass(`k-pivotgrid-expanded`);let l=`<span class="k-pivotgrid-header-title">${s.caption}</span>`;o.append(a.template?a.template({member:s}):l),t.append(o)}},build:function(){var t=Ce((this.tuples||[]).slice()),n=this.axes==`columns`?Ee(t):De(t),r=n[0],i=n[1],a=n[2],o=n[3],s=this;return s._tree=t,s._breadth=a,s._headerLeafs=i,s.table=e(`<table class='k-pivotgrid-table' role='presentation'><colgroup></colgroup><tbody class='k-pivotgrid-tbody' role='rowgroup'></tbody></table>`),s.addColElements(this.axes==`columns`?i.length:o),s.addRowElements(r),s.table},getTree:function(){return this._tree},getBreadth:function(){return this._breadth},getHeaderLeafs:function(){return this._headerLeafs}}),Yt=a.extend({init:function(){this.measures=1,this.metadata={}},build:function(e){var t=this._tbody(e),n=this._colGroup();return[Q(`table`,{className:A.headerTable},[n,t])]},reset:function(){this.metadata={}},_colGroup:function(){for(var e=this._rowLength(),t=[],n=0;n<e;n++)t.push(Q(`col`,null));return Q(`colgroup`,null,t)},_tbody:function(e){var t=e[0];return this.map={},this.rows=[],this.rootTuple=t,this._indexes=[],t?(this._buildRows(t,0),this._normalize()):this.rows.push(Q(`tr`,{className:A.tableRow},[Q(`th`,{className:A.header},[Ut(`&nbsp;`)])])),Q(`tbody`,{className:A.tbody},this.rows)},_normalize:function(){for(var e=this.rows,t=e.length,n=0,r,i,a,o,s;n<t;n++)if(r=e[n],r.rowSpan!==1)for(o=r.children,a=0,i=o.length;a<i;a++)s=o[a],s.tupleAll&&(s.attr.rowSpan=r.rowSpan)},_rowIndex:function(e){for(var t=this.rows,n=t.length,r=0;r<n&&t[r]!==e;r++);return r},_rowLength:function(){var e=this.rows[0]?this.rows[0].children:[],t=e.length,n=0,r=0;if(t)for(;r<t;r++)n+=e[r].attr.colSpan||1;return n||=this.measures,n},_row:function(e,t,n){var r=this.rootTuple.members[t].name,i=e.members[t].levelNum,a=r+i,o=this.map,s,c,l=o[a];return l?(l.notFirst=!1,(!l.parentMember||l.parentMember!==n)&&(l.parentMember=n,l.collapsed=0,l.colSpan=0)):(l=Q(`tr`,{className:A.tableRow},[]),l.parentMember=n,l.collapsed=0,l.colSpan=0,l.rowSpan=1,o[a]=l,s=o[r+(Number(i)-1)],s&&(c=s.children,c[1]&&c[1].attr.className.indexOf(`k-alt`)===-1?l.notFirst=!0:l.notFirst=s.notFirst),this.rows.splice(this._rowIndex(s)+1,0,l)),l},_measures:function(e,t,n){var r=this.map,i=r.measureRow,a;i||(i=Q(`tr`,{className:A.tableRow},[]),r.measureRow=i,this.rows.push(i));for(var o=0,s=e.length;o<s;o++)a=e[o],i.children.push(this._cell(n||``,[this._content(a,t)],a));return s},_content:function(e,t){return Ut(this.template({member:e,tuple:t}),!0)},_cell:function(e,t,n){var r=Q(`th`,{className:A.header+` `+e},t);return r.value=n.caption||n.name,r},_buildRows:function(t,r,i){var a=t.members,o=a[r],s=a[r+1],c,l,u,d,f,p,m=[],h,g=0,_,v,y=0,b=0;if(o.measure){this._measures(o.children,t);return}if(h=n.stringify(Gt(t,r)),c=this._row(t,r,i),u=o.children,d=u.length,_=this.metadata[h],_||(this.metadata[h]=_=Wt(Number(o.levelNum),r),_.rootLevelNum=Number(this.rootTuple.members[r].levelNum)),this._indexes.push({path:h,tuple:t}),o.hasChildren){_.expanded===!1&&(y=_.maxChildren,c.collapsed+=y,_.children=0,d=0);let t=e(`<span></span>`);t.attr(n.attr(`path`),h).attr(`ref-pivotgrid-${d?`collapse`:`expand`}`,!0),m.push(n.dom.html(n.ui.icon(t,{icon:d?de:pe}),!0))}if(m.push(this._content(o,t)),f=this._cell(c.notFirst?` k-first`:``,m,o),c.children.push(f),c.colSpan+=1,d){for(p=this._cell(` k-alt`,[this._content(o,t)],o),c.children.push(p);g<d;g++)l=this._buildRows(u[g],r,o);v=l.colSpan,y=l.collapsed,f.attr.colSpan=v,_.children=v,_.members=1,c.colSpan+=v,c.collapsed+=y,c.rowSpan=l.rowSpan+1,s&&(s.measure?v=this._measures(s.children,t,` k-alt`):(l=this._buildRows(t,r+1),v=l.colSpan,c.collapsed+=l.collapsed,b=l.collapsed),p.attr.colSpan=v,--v,_.members+=v,c.colSpan+=v)}else s&&(s.measure?v=this._measures(s.children,t):(l=this._buildRows(t,r+1),v=l.colSpan,c.collapsed+=l.collapsed,b=l.collapsed),_.members=v,v>1&&(f.attr.colSpan=v,c.colSpan+=v-1));return _.maxMembers<_.members+b&&(_.maxMembers=_.members+b),u=_.children+y,_.maxChildren<u&&(_.maxChildren=u),(p||f).tupleAll=!0,c}}),Xt=a.extend({init:function(){this.metadata={}},build:function(e){var t=this._tbody(e),n=this._colGroup();return[Q(`table`,{className:A.table},[n,t])]},reset:function(){this.metadata={}},_rowLength:function(){for(var e=this.rows[0].children,t=0,n=0,r=e[n];r;)t+=r.attr.colSpan||1,r=e[++n];return t},_colGroup:function(){for(var e=this._rowLength(),t=[],n=0;n<e;n++)t.push(Q(`col`,null));return Q(`colgroup`,null,t)},_tbody:function(e){var t=e[0];return this.rootTuple=t,this.rows=[],this.map={},this._indexes=[],t?(this._buildRows(t,0),this._normalize()):this.rows.push(Q(`tr`,{className:A.tableRow},[Q(`td`,{className:A.tableCell},[Ut(`&nbsp;`)])])),Q(`tbody`,{className:A.tbody},this.rows)},_normalize:function(){for(var e=this.rows,t=e.length,n=0,r=this.rootTuple.members,i=r[0].name,a=r.length,o=0,s,c,l,u=this.map,d;n<t;n++)for(s=e[n],o=0;o<a;o++)l=this[r[o].name],c=s.colSpan[`dim`+o],c&&c.colSpan<l&&(c.attr.colSpan=l-c.colSpan+1);s=u[i],d=u[i+`all`],s&&(s.children[0].attr.className=A.tableCell+` k-first`),d&&(d.children[0].attr.className+=` k-first `+A.tableCell)},_row:function(e){var t=Q(`tr`,{className:A.tableRow},e);return t.rowSpan=1,t.colSpan={},this.rows.push(t),t},_content:function(e,t){return Ut(this.template({member:e,tuple:t}),!0)},_cell:function(e,t,n){var r=Q(`td`,{className:A.tableCell+` `+e},t);return r.value=n.caption||n.name,r},_buildRows:function(t,r){var i=this.map,a,o=t.members,s=o[r],c=o[r+1],l=s.children,u=l.length,d=Number(s.levelNum),f=this.rootTuple.members[r].name,p=Gt(t,r-1).join(``),m=Number(this.rootTuple.members[r].levelNum),h=p+(m===d?``:s.parentName||``),g=i[h+`all`]||i[h],_=d+1,v,y,b,x,S,C,w=[],T;if(!g||g.hasChild?g=this._row():g.hasChild=!0,s.measure){for(C=g.allCell?`k-grid-footer`:``,g.children.push(this._cell(C,[this._content(l[0],t)],l[0])),g.rowSpan=u,T=1;T<u;T++)this._row([this._cell(C,[this._content(l[T],t)],l[T])]);return g}if(i[p+s.name]=g,a=n.stringify(Gt(t,r)),S=this.metadata[a],S||(this.metadata[a]=S=Wt(d,r),S.rootLevelNum=m),this._indexes.push({path:a,tuple:t}),s.hasChildren){S.expanded===!1&&(u=0,S.children=0);let t=e(`<span></span>`);t.attr(n.attr(`path`),a).attr(`ref-pivotgrid-${u?`collapse`:`expand`}`,!0),w.push(n.dom.html(n.ui.icon(t,{icon:u?de:pe}),!0))}if(w.push(this._content(s,t)),C=g.allCell&&!u?`k-grid-footer`:``,v=this._cell(C,w,s),v.colSpan=_,g.children.push(v),g.colSpan[`dim`+r]=v,(!this[f]||this[f]<_)&&(this[f]=_),u){for(g.allCell=!1,g.hasChild=!1,T=0;T<u;T++)b=this._buildRows(l[T],r),g!==b&&(g.rowSpan+=b.rowSpan);g.rowSpan>1&&(v.attr.rowSpan=g.rowSpan),S.children=g.rowSpan,y=this._cell(`k-grid-footer`,[this._content(s,t)],s),y.colSpan=_,x=this._row([y]),x.colSpan[`dim`+r]=y,x.allCell=!0,i[p+s.name+`all`]=x,c&&(b=this._buildRows(t,r+1),y.attr.rowSpan=b.rowSpan),g.rowSpan+=x.rowSpan,S.members=x.rowSpan}else c&&(g.hasChild=!1,this._buildRows(t,r+1),(y||v).attr.rowSpan=g.rowSpan,S.members=g.rowSpan);return S.maxChildren<S.children&&(S.maxChildren=S.children),S.maxMembers<S.members&&(S.maxMembers=S.members),g}}),Zt=a.extend({init:function(){this.columnAxis={},this.rowAxis={}},build:function(e,n,r){var i=n.indexes[0],a=n.metadata[i?i.path:t];this.columnAxis=n,this.rowAxis=r,this.data=e,this.rowLength=a?a.maxChildren+a.maxMembers:n.measures.length||1,this.rowLength||=1;var o=this._tbody(),s=this._colGroup();return[Q(`table`,{className:A.contentTable},[s,o])]},_colGroup:function(){var e=this.columnAxis.measures.length||1,t=[],n=0;for(this.rows[0]&&(e=this.rows[0].children.length);n<e;n++)t.push(Q(`col`,null));return Q(`colgroup`,null,t)},_tbody:function(){return this.rows=[],this.data[0]?(this.columnIndexes=this._indexes(this.columnAxis,this.rowLength),this.rowIndexes=this._indexes(this.rowAxis,Math.ceil(this.data.length/this.rowLength)),this._buildRows()):this.rows.push(Q(`tr`,{className:A.tableRow},[Q(`td`,{className:A.tableCell},[Ut(`&nbsp;`)])])),Q(`tbody`,{className:A.tbody},this.rows)},_indexes:function(e,n){var r=[],i,a=e.indexes,o=e.metadata,s=e.measures,c=s.length||1,l,u=0,d=0,f=0,p=a.length,m,h,g,_;if(!p){for(m=0;m<c;m++)r[m]={index:m,measure:s[m],tuple:null};return r}for(;f<p;f++){if(i=a[f],l=o[i.path],g=l.children+l.members,_=0,g&&(g-=c),l.expanded===!1&&l.children!==l.maxChildren&&(_=l.maxChildren),l.parentMember&&l.levelNum===l.rootLevelNum&&(g=-1),g>-1){for(m=0;m<c;m++)h=g+m,l.children||(h+=d),r[g+d+m]={children:g,index:u,measure:s[m],tuple:i.tuple},u+=1;for(;r[d]!==t;)d+=1}if(d===n)break;u+=_}return r},_buildRows:function(){for(var e=this.rowIndexes,t=e.length,n=0;n<t;n++){var r=e[n];r&&this.rows.push(this._buildRow(r))}},_buildRow:function(e){for(var n=e.index*this.rowLength,r=this.columnIndexes,i=r.length,a,o=[],s=0,c,l,u,d,f,p;s<i;s++)a=r[s],a!==t&&(d={className:A.tableCell},a.children&&(d.className+=` k-alt`),u=``,f=this.data[n+a.index],p=a.measure||e.measure,c={columnTuple:a.tuple,rowTuple:e.tuple,measure:p,dataItem:f},f.value!==``&&p&&p.type&&(p.type===`status`?u=this.kpiStatusTemplate(c):p.type===`trend`&&(u=this.kpiTrendTemplate(c))),u||=this.dataTemplate(c),l=Q(`td`,d,[Ut(u)]),l.value=f.value,o.push(l));return d={className:A.tableRow},e.children&&(d.className+=` k-grid-footer`),Q(`tr`,d,o)}});r.plugin(Ht),n.PivotExcelExporter=n.Class.extend({init:function(e){this.options=e,this.widget=e.widget,this.dataSource=this.widget.dataSource},_columns:function(){var e=this.widget.columnsHeaderTree.children[0],t=this.widget.rowsHeaderTree.children[0],n=e.children[0].children.length,r=t.children[0].children.length,i=this.widget.options.columnWidth,a=[],o;if(r&&this.dataSource.data()[0])for(o=0;o<r;o++)a.push({autoWidth:!0});for(o=0;o<n;o++)a.push({autoWidth:!1,width:i});return a},_cells:function(e,t,n){for(var r=[],i=0,a=e.length,o,s,c,l,u;i<a;i++){for(s=[],c=e[i].children,o=c.length,l=0;l<o;l++)u=c[l],s.push({background:`#7a7a7a`,color:`#fff`,value:u.value,colSpan:u.attr.colSpan||1,rowSpan:u.attr.rowSpan||1});n&&n(s,i),r.push({cells:s,type:t})}return r},_rows:function(){var e=this.widget.columnsHeaderTree.children[0],t=this.widget.rowsHeaderTree.children[0],n=e.children[0].children.length,r=t.children[0].children.length,i=e.children[1].children,a=t.children[1].children,o=this.widget.contentTree.children[0].children[1].children,s=this._cells(i,`header`);r&&s[0].cells.splice(0,0,{background:`#7a7a7a`,color:`#fff`,value:``,colSpan:r,rowSpan:i.length});var c=this._cells(a,`data`,function(e,t){for(var r=0,i,a,s=o[t].children;r<n;r++)i=s[r],a=Number(i.value),isNaN(a)&&(a=i.value),e.push({background:`#dfdfdf`,color:`#333`,value:a,colSpan:1,rowSpan:1})});return s.concat(c)},_freezePane:function(){var e=this.widget.columnsHeaderTree.children[0];return{colSplit:this.widget.rowsHeaderTree.children[0].children[0].children.length,rowSplit:e.children[1].children.length}},_columnsV2:function(){let e=this.widget._columnBuilder.table[0],t=this.widget._rowBuilder.table[0],n=e.children[0].children.length,r=t.children[0].children.length,i=this.widget.options.columnWidth,a=[];if(r&&this.dataSource.data()[0])for(let e=0;e<r;e++)a.push({autoWidth:!0});for(let e=0;e<n;e++)a.push({autoWidth:!1,width:i});return a},_cellsV2:function(e,t,n){let r=[],i=Object.keys(e).length;for(let a=0;a<i;a++){let i=[],o=e[a].children,s=o.length;for(let e=0;e<s;e++){let t=o[e];i.push({background:`#7a7a7a`,color:`#fff`,value:t.caption,colSpan:t.colSpan||1,rowSpan:t.rowSpan||1})}n&&n(i,a),r.push({cells:i,type:t})}return r},_rowsV2:function(){let e=this.widget._columnBuilder.table[0],t=this.widget._rowBuilder.table[0],n=e.children[0].children.length,r=t.children[0].children.length,i=this.widget._columnBuilder._exportData,a=this.widget._rowBuilder._exportData,o=this.widget._contentBuilder.hash,s=this._cellsV2(i,`header`);r&&s[0].cells.splice(0,0,{background:`#7a7a7a`,color:`#fff`,value:``,colSpan:r,rowSpan:Object.keys(i).length});let c=this._cellsV2(a,`data`,function(e,t){let r=t*n,i=(t+1)*n;for(let t=r;t<i;t++){let n=o[t],r=n.data===null?n.data:n.data.value,i=Number(r);isNaN(i)&&(i=r),e.push({background:`#dfdfdf`,color:`#333`,value:i,colSpan:1,rowSpan:1})}});return s.concat(c)},_freezePaneV2:function(){let e=this.widget._columnBuilder.table[0];return{colSplit:this.widget._rowBuilder.table[0].children[0].children.length,rowSplit:e.children[1].children.length}},_filterV2:function(){if(!this.options.excel.filterable)return null;let e=this.widget._columnBuilder.table[0],t=this.widget._rowBuilder.table[0].children[0].children.length;return{from:t,to:e.children[0].children.length+(t-1)}},workbook:function(){var t;return this.dataSource.view()[0]?(t=e.Deferred(),t.resolve()):t=this.dataSource.fetch(),t.then(function(){return this.widget.options.name===`PivotGridV2`?{sheets:[{columns:this._columnsV2(),rows:this._rowsV2(),freezePane:this._freezePaneV2(),filter:this._filterV2()}]}:{sheets:[{columns:this._columns(),rows:this._rows(),freezePane:this._freezePane(),filter:null}]}}.bind(this))}});var Qt={extend:function(t){t.events.push(`excelExport`),t.options.excel=e.extend(t.options.excel,this.options),t.saveAsExcel=this.saveAsExcel},options:{proxyURL:``,filterable:!1,fileName:`Export.xlsx`},saveAsExcel:function(){var e=this.options.excel||{},t=new n.PivotExcelExporter({widget:this,excel:e});this._progress&&(this._isExport=!0,this._progress(!0)),t.workbook().then(function(t){this.trigger(`excelExport`,{workbook:t,data:t.sheets[0].rows})||new n.ooxml.Workbook(t).toDataURLAsync().then(function(r){n.saveAs({dataURI:r,fileName:t.fileName||e.fileName,proxyURL:e.proxyURL,forceProxy:e.forceProxy})}).always(()=>{this._progress&&(this._progress(!1),this._isExport=!1)})}.bind(this))}};n.PivotExcelMixin=Qt,n.ooxml&&n.ooxml.Workbook&&Qt.extend(Ht.prototype),n.ooxml&&n.ooxml.Workbook&&Qt.extend(Vt.prototype),n.PDFMixin&&(n.PDFMixin.extend(Ht.prototype),Ht.fn._drawPDF=function(){return this._drawPDFShadow({width:this.wrapper.width()},{avoidLinks:this.options.pdf.avoidLinks})}),n.PDFMixin&&(n.PDFMixin.extend(Vt.prototype),Vt.prototype._saveAsPDF=n.PDFMixin.saveAsPDF,Vt.fn.saveAsPDF=function(){this._progress&&(this._isExport=!0,this._progress(!0)),this._saveAsPDF().always(()=>{this._progress&&(this._progress(!1),this._isExport=!1)})},Vt.fn._drawPDF=function(){return this._drawPDFShadow({width:this.wrapper.width()},{avoidLinks:this.options.pdf.avoidLinks})}),window.kendo.pivotgrid=window.kendo.pivotgrid||{},window.kendo.pivotgrid.common={addKPI:Me,addMultipleMeasures:sr,averageAggregate:qe,buildKPIMeasures:je,cloneDataTree:Yn,compareAxes:P,configuratorReducer:L,createAxisDescriptors:Le,createDataState:Ie,createDataTree:Jn,createDiscoverBody:ie,createFlatSchemaDimensions:lr,createLocalDataState:cr,createRequestBody:C,createTuples:ir,discoverCommands:re,fetchData:me,fetchDiscover:he,headersReducer:Ve,maxAggregate:Ke,mergeTrees:Kn,minAggregate:Ge,parseResponse:te,readData:Qn,rootFields:rr,setFilter:ze,setSort:Re,sumAggregate:We,toColumns:Ee,toData:we,toRows:De,toTree:Ce}})(window.kendo.jQuery);var Hr=kendo;e.__meta__=Vr,e.default=Hr});
//# sourceMappingURL=kendo.pivotgrid.min.js.map