@progress/kendo-ui
Version:
This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.
1 lines • 97.2 kB
JavaScript
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("kendo.dom.js"),require("kendo.data.js"),require("kendo.icons.js"),require("kendo.loader.js"),require("kendo.html.loadercontainer.js"),require("kendo.sortable.js"),require("kendo.pivotgrid-common.cmn.chunk.js"),require("kendo.loaderContainer.chunk.js")):"function"==typeof define&&define.amd?define(["exports","kendo.dom","kendo.data","kendo.icons","kendo.loader","kendo.html.loadercontainer","kendo.sortable","kendo.pivotgrid-common.cmn.chunk","kendo.loaderContainer.chunk"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).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.PivotgridCommonCmnChunk,e.kendo._globals.LoaderContainerChunk)}(this,(function(e,t,r,n,s,a,i,o,l){!function(e,t){var r=window.kendo,n=r.ui,s=r.htmlEncode,a=r.Class,i=r.data.Comparer,c=n.Widget,u=r.data.DataSource,h=r._outerWidth,d=r._outerHeight,p=r.data.Query.normalizeFilter,m=r.data.Query.normalizeSort,f={}.toString,g=function(e){return e},_=e.map,v=e.extend,b=r.keys,x=r.isFunction,w="resize",S="read",k="change",N="error",y="progress",E="Measures",T="stateReset",A="auto",C="<div></div>",M=".kendoPivotGrid",I="__row_total__",D="dataBinding",H="dataBound",R="expandMember",P=({id:t,key:n,headerClass:a,colspan:i,rowspan:o,expandable:l,iconClass:c,role:u,expanded:h})=>`<th id="${t}" role="${u}" ${l?`aria-expanded="${h}"`:""} data-key="${s(n)}" class="${s(a)}" ${i?'colspan="'+s(i)+'"':""} ${o?'rowspan="'+s(o)+'"':""}>${l?r.ui.icon(e('<span role="presentation" class="k-pivotgrid-toggle"></span>'),{icon:`chevron-${s(c)}`}):""}</th>`,L="collapseMember",O="caret-alt-down",B=`.k-i-${O},.k-svg-i-${O}`,F="caret-alt-right",q=({member:e})=>`<span>${s(e.caption||e.name)}</span>`,U={"kpi-trend-decrease":"caret-alt-down","kpi-trend-increase":"caret-alt-up","kpi-trend-equal":"minus"},W=({dataItem:t})=>r.ui.icon(e(`<span title="${s(t.value)}"></span>`),{icon:"kpi-status-"+(t.value>0?"open":t.value<0?"deny":"hold")}),z=({dataItem:t})=>r.ui.icon(e(`<span title="${s(t.value)}"></span>`),{icon:U["kpi-trend-"+(t.value>0?"increase":t.value<0?"decrease":"equal")]}),j=({dataItem:e})=>e&&(e.fmtValue||e.value)?`<span class="k-pivotgrid-content">${s(e.fmtValue||e.value)}</span>`:" ",$="k-table-row",G="k-header k-table-th",V="k-grid-header-table k-table k-table-md",K="k-table k-table-md",Y="k-grid-table k-table k-table-md",Q="k-table-tbody",J="k-table-td";function X(r){var n="string"==typeof r?[{name:r}]:r,s="[object Array]"===f.call(n)?n:n!==t?[n]:[];return _(s,(function(t){return"string"==typeof t?{name:t}:e.extend(!0,t,{name:t.name,type:t.type})}))}function Z(e){var r="string"==typeof e?[{name:[e],expand:!1}]:e,n="[object Array]"===f.call(r)?r:r!==t?[r]:[];return _(n,(function(e){return"string"==typeof e?{name:[e],expand:!1}:{name:"[object Array]"===f.call(e.name)?e.name.slice():[e.name],expand:e.expand}}))}function ee(e){return-1!==e.indexOf(" ")&&(e='["'+e+'"]'),e}function te(e,t,n,s){var a,i,o,l;if(n||(n=t),s||(s=0),(l=n.members[s])&&!l.measure){if(i=(o=l.children).length,n===t?e[r.stringify([l.name])]=!!i:i&&(e[r.stringify(ct(n,s))]=!0),i)for(a=0;a<i;a++)te(e,t,o[a],s);te(e,t,n,s+1)}}function re(e){var t={};e.length&&te(t,e[0]);var r=[];for(var n in t)r.push({name:JSON.parse(n),expand:t[n]});return r}function ne(e,t,r){(function(e,t){var r=(t.tuples||[])[0];if(r&&e.length<r.members.length)for(var n=r.members,s=0;s<n.length;s++)if(!n[s].measure){for(var a=!1,i=0;i<e.length;i++)if(0===Be(e[i]).indexOf(n[s].hierarchy)){a=!0;break}a||e.push({name:[n[s].name],expand:!1})}})(t,e=e||{}),r.length>1&&t.push({name:E,measure:!0,children:Z(r)});var n={members:t};if(e.tuples){var s=Ee(e.tuples,n);s.tuple&&(t=function(e){for(var t=[],r=e.members,n=0;n<r.length;n++)r[n].measure||t.push({name:[r[n].name],expand:r[n].children.length>0});return t}(s.tuple))}return t}function se(e){var t=r.getter(e.field,!0);return function(r,n){return e.aggregate(t(r.dataItem),n,r)}}function ae(e){return"number"==typeof e&&!isNaN(e)}function ie(e){return e&&e.getTime}function oe(e,t,r){const n=this,s=(n.reader.data(e)||[]).slice(0);s&&!n._pristineData&&(n._pristineData=s);const a=n._createSettings(t.columnAxes),i=n._createSettings(t.rowAxes),l=n.measures(),c={dataTree:o.c(s,i,a,l,{dataField:"aggregate",columnsData:"columns"},n.filter()||[]),columnSettings:a,rowSettings:i,columnAxes:t.columnAxes,rowAxes:t.rowAxes,measures:l.map((function(e){return e})),fields:{dataField:"aggregate",columnsData:"columns"},sort:le(t.sort||[])};n._saveState(o.a(c)),n.trigger(k),r.resolve()}function le(e){for(var t=[],r=0;r<e.length;r++)t.push({dir:e[r].dir,field:e[r].field.split(".").pop()});return t}function ce(e,t,n,s){var a={sum:o.s,average:o.e,min:o.d,max:o.m,count:o.b},i={value:function(e){return e[this.field]}.bind({field:e}),aggregate:a[s],caption:t,uniqueName:t,type:2,name:[t]};return n&&(i.aggregate.format=function(e){return r.format(this.format,e)}.bind({format:n})),i}var ue={sum:function(e,t){var r=t.accumulator;return ae(r)?ae(e)&&(r+=e):r=e,r},count:function(e,t){return(t.accumulator||0)+1},average:{aggregate:function(e,r){var n=r.accumulator;return r.count===t&&(r.count=0),ae(n)?ae(e)&&(n+=e):n=e,ae(e)&&r.count++,n},result:function(e){var t=e.accumulator;return ae(t)&&(t/=e.count),t}},max:function(e,t){var r=t.accumulator;return ae(r)||ie(r)||(r=e),r<e&&(ae(e)||ie(e))&&(r=e),r},min:function(e,t){var r=t.accumulator;return ae(r)||ie(r)||(r=e),r>e&&(ae(e)||ie(e))&&(r=e),r}},he=a.extend({init:function(e){this.options=v({},this.options,e),this.dimensions=this._normalizeDescriptors("field",this.options.dimensions),this.measures=this._normalizeDescriptors("name",this.options.measures)},_normalizeDescriptors:function(e,t){t=t||{};var r,n={};if("[object Array]"===f.call(t)){for(var s=0,a=t.length;s<a;s++)"string"==typeof(r=t[s])?n[r]={}:r[e]&&(n[r[e]]=r);t=n}return t},_rootTuples:function(e,r){var n,s,a,i,o=r.length||1,l=this.dimensions||[],c=0,u=e.length,h=[],d=[];if(u||r.length){for(c=0;c<o;c++){for(n={members:[]},i=0;i<u;i++)a=(s=e[i]).split("&"),n.members[n.members.length]={children:[],caption:(l[s]||{}).caption||"All",name:s,levelName:s,levelNum:"0",hasChildren:!0,parentName:a.length>1?a[0]:t,hierarchy:s};o>1&&(n.members[n.members.length]={children:[],caption:r[c].caption,name:r[c].descriptor.name,levelName:"MEASURES",levelNum:"0",hasChildren:!1,parentName:t,hierarchy:"MEASURES"}),h[h.length]=n}d.push(I)}return{keys:d,tuples:h}},_sortMap:function(t,r){var n,s,a,o=[],l=[];for(a in t)t[a].directParentName||l.push(e.extend({},{name:a,parentName:t[a].parentName}));if(!l.length)for(a in t)l.push(e.extend({},{name:a,parentName:t[a].parentName}));_e(l,t);for(var c=0;c<r.length;c++)ge(r[c].field.split(".").pop(),l,i.create({field:"name",dir:r[c].dir}));n=fe(l);for(var u=0;u<n.length;u++)(s=t[n[u].name]).index=u,o[u]=s;return o},_expandedTuples:function(r,n,s,a){var i,o,l,c,u,h,d,p,m,f,g,_=s.length||1,v=this.dimensions||[],b=[],x=[];for(l in a&&a.length&&!e.isEmptyObject(r)&&(r=this._sortMap(r,a)),r){for(c=r[l],u=b[(d=this._findExpandedMember(n,c.uniquePath)).index]||[],h=x[d.index]||[],p=d.member.names,i=0;i<_;i++){for(o={members:[]},g=0;g<p.length;g++)g===d.member.expandedIdx?(o.members[o.members.length]={children:[],caption:c.value,name:c.name,hasChildren:!1,levelNum:1,levelName:c.parentName+c.name,parentName:c.parentName,hierarchy:c.parentName+c.name},0===i&&h.push(ct(o,g).join(""))):(m=(f=p[g]).split("&"),o.members[o.members.length]={children:[],caption:(v[f]||{}).caption||"All",name:f,levelName:f,levelNum:"0",hasChildren:!0,parentName:m.length>1?m[0]:t,hierarchy:f});_>1&&(o.members[o.members.length]={children:[],caption:s[i].caption,name:s[i].descriptor.name,levelName:"MEASURES",levelNum:"0",hasChildren:!0,parentName:t,hierarchy:"MEASURES"}),u[u.length]=o}b[d.index]=u,x[d.index]=h}return{keys:x,tuples:b}},_findExpandedMember:function(e,t){for(var r=0;r<e.length;r++)if(e[r].uniquePath===t)return{member:e[r],index:r}},_asTuples:function(e,t,r,n){r=r||[];var s=this._rootTuples(t.root,r),a=this._expandedTuples(e,t.expanded,r,n);return{keys:[].concat.apply(s.keys,a.keys),tuples:[].concat.apply(s.tuples,a.tuples)}},_measuresInfo:function(e,t){for(var r,n,s=0,a=e&&e.length,i=[],o={},l={},c=this.measures||{};s<a;s++)r=c[n=e[s].descriptor.name]||{},i.push(n),r.result&&(o[n]=r.result),r.format&&(l[n]=r.format);return{names:i,formats:l,resultFuncs:o,rowAxis:t}},_toDataArray:function(e,t,r,n){var s,a,i,o,l,c,u,h,d,p,m=[],f=1,g=[],_=r.length||1,v=n.length||1;for(t.rowAxis?f=(g=t.names).length:p=t.names,i=0;i<_;i++)for(u=e[r[i]||I],c=0;c<f;c++)for(t.rowAxis&&(p=[g[c]]),o=0;o<v;o++)for(d=n[o]||I,h=u.items[d],s=d===I?u.aggregates:h?h.aggregates:{},l=0;l<p.length;l++)a=p[l],this._addData(m,s[a],t.formats[a],t.resultFuncs[a]);return m},_addData:function(e,t,n,s){var a,i="";t&&(t=s?s(t):t.accumulator,i=n?r.format(n,t):t),e[a=e.length]={ordinal:a,value:t||"",fmtValue:i}},_matchDescriptors:function(e,r,n){for(var s,a,i,o,l=r.names,c=r.expandedIdx;c>0;)if((s=l[--c].split("&")).length>1&&(a=s[0],i=s[1],(o=(o=n[a](e))!==t&&null!==o?o.toString():o)!=i))return!1;return!0},_calculateAggregate:function(e,t,r){for(var n,s,a={},i=0;i<e.length;i++)s=e[i].descriptor.name,(n=r.aggregates[s]||{}).accumulator=e[i].aggregator(t,n),a[s]=n;return a},_processColumns:function(e,r,n,s,a,i,o,l){for(var c,u,h,d,p,m,f,g,_=a.dataItem,v=0;v<r.length;v++)u=r[v],this._matchDescriptors(_,u,n)&&(g=u.names.slice(0,u.expandedIdx).join(""),f=m=u.names[u.expandedIdx],h=s[p=g+(m=m+"&"+(c=(c=n[m](_))!==t&&null!==c?c.toString():c))]||{index:o.columnIndex,parentName:f,name:m,directParentName:-1!==g.indexOf("&")?g:"",uniquePath:g+f,childrenMap:{},value:c},g&&s[g]&&!s[g].childrenMap[g+f+"&"+c]&&(s[g].childrenMap[g+f+"&"+c]=!0),d=i.items[p]||{aggregates:{}},i.items[p]={index:h.index,aggregates:this._calculateAggregate(e,a,d)},l&&(s[p]||o.columnIndex++,s[p]=h))},_measureAggregators:function(e){var t,r,n,s,a,i,o=e.measures||[],l=this.measures||{},c=[];if(o.length){for(n=0,s=o.length;n<s;n++)if(a=null,r=l[(t=o[n]).name]){if("string"==typeof(i=r.aggregate)){if(!(a=ue[i.toLowerCase()]))throw new Error("There is no such aggregate function");r.aggregate=a.aggregate||a,r.result=a.result}c.push({descriptor:t,caption:r.caption,result:r.result,aggregator:se(r)})}}else c.push({descriptor:{name:"default"},caption:"default",aggregator:function(){return 1}});return c},_buildGetters:function(e){for(var t,n,s={},a=0;a<e.length;a++)(t=(n=e[a]).split("&")).length>1?s[t[0]]=r.getter(t[0],!0):s[n]=r.getter(ee(n),!0);return s},_parseDescriptors:function(e){for(var t=Ue(e),r=Fe(t.root),n=t.expanded,s=[],a=0;a<n.length;a++)s.push(qe(n[a].name,r));return{root:r,expanded:s}},_filter:function(e,t){if(!t)return e;for(var n,s=0,a=t.filters;s<a.length;s++)"in"===(n=a[s]).operator&&(a[s]=this._normalizeFilter(n));return new r.data.Query(e).filter(t).data},_normalizeFilter:function(e){var t=e.value.split(","),r=[];if(!t.length)return t;for(var n=0;n<t.length;n++)r.push({field:e.field,operator:"eq",value:t[n]});return{logic:"or",filters:r}},process:function(e,r){e=e||[],r=r||{},e=this._filter(e,r.filter);var n=r.measures||[],s="rows"===r.measuresAxis,a=r.columns||[],i=r.rows||[];!a.length&&i.length&&(!n.length||n.length&&s)&&(a=i,i=[],s=!1),a.length||i.length||(s=!1),!a.length&&n.length&&(a=Z(r.measures)),a=this._parseDescriptors(a),i=this._parseDescriptors(i);var o,l,c,u,h,d,p,m,f,g,_,v,b,x={},w={},S={},k={columnIndex:0},N=this._measureAggregators(r),y=this._buildGetters(a.root),E=this._buildGetters(i.root),T=!1,A=a.expanded,C=i.expanded,M=0!==C.length,D=e.length,H=0;if(a.root.length||i.root.length)for(T=!0,H=0;H<D;H++)for(c={dataItem:l=e[H],index:H},p=x[I]||{items:{},aggregates:{}},this._processColumns(N,A,y,w,c,p,k,!M),p.aggregates=this._calculateAggregate(N,c,p),x[I]=p,u=0;u<C.length;u++)h=C[u],this._matchDescriptors(l,h,E)?(f=h.names.slice(0,h.expandedIdx).join(""),g=d=h.names[h.expandedIdx],S[m=f+(d=d+"&"+(o=(o=E[d](l))!==t?o.toString():o))]={uniquePath:f+g,parentName:g,name:d,value:o},_=x[m]||{items:{},aggregates:{}},this._processColumns(N,A,y,w,c,_,k,!0),_.aggregates=this._calculateAggregate(N,c,_),x[m]=_):this._processColumns(N,A,y,w,c,{items:{},aggregates:{}},k,!0);return T&&D?(!(N.length>1)||r.columns&&r.columns.length||(a={root:[],expanded:[]}),v=this._asTuples(w,a,s?[]:N,r.sort?r.sort:[]),b=this._asTuples(S,i,s?N:[],r.sort?r.sort:[]),w=v.tuples,S=b.tuples,x=this._toDataArray(x,this._measuresInfo(N,s),b.keys,v.keys)):x=w=S=[],{axes:{columns:{tuples:w},rows:{tuples:S}},data:x}}}),de=a.extend({init:function(e,t){this.transport=t,this.options=t.options||{},this.transport.discover||x(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(r){var n=this.options||{};if(r===t)return(n.connection||{}).catalog;var s=n.connection||{};s.catalog=r,this.options.connection=s,e.extend(this.transport.options,{connection:s})},cube:function(e){var r=this.options||{};if(e===t)return(r.connection||{}).cube;var n=r.connection||{};n.cube=e,this.options.connection=n,v(!0,this.transport.options,{connection:n})}}),pe=u.extend({init:function(t){var r=((t||{}).schema||{}).cube,n={axes:g,cubes:g,catalogs:g,measures:g,dimensions:g,hierarchies:g,levels:g,members:g};r&&(this.cubeSchema=e.extend(n,this._cubeSchema(r))),u.fn.init.call(this,v(!0,{},{schema:this.cubeSchema},t));var s=this.options.transport||{};"xmla"===(this.options.type||"xmla").toLowerCase()?(this._online=!0,this.transport=new Ye(s)):this.transport=new de(this.options.transport||{},this.transport),this._columns=Z(this.options.columns),this._rows=Z(this.options.rows);var a=this.cubeSchema?this.cubeSchema.measures():this.options.measures||[];"[object Object]"===f.call(a)&&(this._measuresAxis=a.axis||"columns",a=a.values||[]),this._measures=X(a)},options:{serverSorting:!0,serverPaging:!0,serverFiltering:!0,serverGrouping:!0,serverAggregates:!0},axes:function(){return{columns:Se(this.columns()),rows:Se(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 r=this;if(this._data===t||0===this._data.length){return this._query().done((function(){x(e)&&e.call(r)}))}},_createSettings:function(e){for(var t,r=[],n=this.cubeSchema.dimensionsSettings(),s=function(e){return e[this.key]},a=function(e){return e},i=0;i<e.length;i++)t=e[i].name[0],r.push({key:t,displayValue:s.bind({key:t}),sortValue:a,caption:(n[t]||{}).caption||t});return r},_cubeSchema:function(e){return{dimensionsSettings:function(){return e.dimensions},dimensions:function(){var t=[],r=e.dimensions;for(var n in r)t.push({name:n,caption:r[n].caption||n,uniqueName:n,defaultHierarchy:n,type:1});return e.measures&&t.push({name:E,caption:E,uniqueName:E,type:2}),t},restoreMeasure:function(e,t){for(var r=0;r<e.length;r++)e[r].aggregate||(e[r].aggregate=t.aggregate,e[r].value=t.value,e[r].caption=t.caption,e[r].uniqueName=t.uniqueName,e[r].type=2)},measures:function(){var t=[],r=e.measures;for(var n in r)t.push(ce(r[n].field,n,r[n].format,r[n].aggregate));return t},memberType:function(e){var t=r.getter(ee(e),!0),n=this.options.data||this._pristineData||[];return n.length?typeof t(n[0]):null}.bind(this),members:function(t){var n,s,a=this.options.data||this._pristineData||[],i=[],o={},l=0;if(-1!==t.indexOf("[(ALL)]"))return[{caption:e.dimensions[t.split(".")[0]].caption||t,levelUniqueName:t,name:t,childrenCardinality:1,uniqueName:t}];for(n=r.getter(ee(t),!0);l<a.length;l++)!(s=n(a[l]))&&0!==s&&!1!==s||o[s]||(o[s]=!0,i.push({caption:s+"",name:s+"",childrenCardinality:0,uniqueName:s}));return i}.bind(this)}},read:function(t){const r=this,n=r.trigger("requestStart",{type:S}),s=r._params(t),a=e.Deferred();return n||(r.trigger(y),r.options.data?oe.call(r,r.options.data,s,a):"xmla"===(this.options.type||"xmla").toLowerCase()?r.transport.read({data:s,success:function(e){r._saveState(e),r.trigger("requestEnd",{response:e,type:S}),r.trigger(k),r._preventRefresh&&(r._preventRefresh=!1),a.resolve()},error:function(e){r.trigger(N,{error:e})}}):r.transport.read({success:function(e){oe.call(r,e,s,a)},error:function(e){r.trigger(N,{error:e})}})),a.promise()},_params:function(e){var t=this,r=u.fn._params.call(t,e);return r=v({columnAxes:JSON.parse(JSON.stringify(t._columns)),rowAxes:JSON.parse(JSON.stringify(t._rows)),measuresAxis:t.measuresAxis(),measureAxes:t._measures},r),"xmla"===(this.options.type||"").toLowerCase()&&(r.connection=t.options.transport.connection),r.filter&&(r.filter=p(r.filter),r.filter=(r.filter||{}).filters),r.sort&&(r.sort=m(r.sort)),r},discover:function(t){const r=this,n=r.transport,s="odata"===r.options.type,a={schemaMeasures:r.reader.measures,schemaKPIs:r.reader.kpis,schemaDimensions:r.reader.dimensions,schemaHierarchies:r.reader.hierarchies,schemaLevels:r.reader.levels,schemaCubes:r.reader.cubes,schemaCatalogs:r.reader.catalogs,schemaMembers:r.reader.members};return n.discover&&!s?n.discover(t):e.Deferred((function(e){n.discover(v({success:function(n){n=r.reader.parse(n),r._handleCustomErrors(n)||(a[t.command]&&(n=a[t.command](n)),e.resolve(n))},error:function(t,n,s){e.reject(t),r.error(t,n,s)}},t))})).promise().done((function(){r.trigger("schemaChange")}))},schemaMeasures:function(){const e=this;return e.discover({command:"schemaMeasures",restrictions:{catalogName:e.transport.catalog(),cubeName:e.transport.cube()}})},schemaKPIs:function(){const e=this;return e.discover({command:"schemaKPIs",restrictions:{catalogName:e.transport.catalog(),cubeName:e.transport.cube()}})},schemaDimensions:function(){const e=this;return e.discover({command:"schemaDimensions",restrictions:{catalogName:e.transport.catalog(),cubeName:e.transport.cube()}})},schemaHierarchies:function(e){const t=this;return t.discover({command:"schemaHierarchies",restrictions:{catalogName:t.transport.catalog(),cubeName:t.transport.cube(),dimensionUniqueName:e}})},schemaLevels:function(e){const t=this;return t.discover({command:"schemaLevels",restrictions:{catalogName:t.transport.catalog(),cubeName:t.transport.cube(),hierarchyUniqueName:e}})},schemaCubes:function(){return this.discover({command:"schemaCubes",restrictions:{catalogName:this.transport.catalog()}})},schemaCatalogs:function(){return this.discover({command:"schemaCatalogs"})},schemaMembers:function(e){const t=this;return t.discover({command:"schemaMembers",restrictions:v({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=Z(e),this.read()},rows:function(e){if(e===t)return this._rows;this._rows=Z(e),this.read()},measures:function(e){if(e===t)return this._measures;this._measures=X(e),this.read()},_mergeState:function(e){return e=u.fn._mergeState.call(this,e)},_query:function(e){var t=this,r=v({},{sort:t.sort(),measuresAxis:t.measuresAxis(),filter:t.filter()},e);return this._mergeState(r),this.read()}}),me=u.extend({init:function(t){var r,n=((t||{}).schema||{}).cube,s="columns",a={axes:g,cubes:g,catalogs:g,measures:g,dimensions:g,hierarchies:g,levels:g,members:g};n&&(a=e.extend(a,this._cubeSchema(n)),this.cubeBuilder=new he(n)),u.fn.init.call(this,v(!0,{},{schema:a},t)),this.transport=new de(this.options.transport||{},this.transport),this._columns=Z(this.options.columns),this._rows=Z(this.options.rows),r=this.options.measures||[],"[object Object]"===f.call(r)&&(s=r.axis||"columns",r=r.values||[]),this._measures=X(r),this._measuresAxis=s,this._skipNormalize=0,this._axes={}},_cubeSchema:function(e){return{dimensions:function(){var t=[],r=e.dimensions;for(var n in r)t.push({name:n,caption:r[n].caption||n,uniqueName:n,defaultHierarchy:n,type:1});return e.measures&&t.push({name:E,caption:E,uniqueName:E,type:2}),t},hierarchies:function(){return[]},measures:function(){var t=[],r=e.measures;for(var n in r)t.push({name:n,caption:n,uniqueName:n,aggregator:n});return t},members:function(t,n){var s,a,i=n.levelUniqueName||n.memberUniqueName,o=this.options.schema.data,l=x(o)?o:r.getter(o,!0),c=this.options.data&&l(this.options.data)||this._rawData||[],u=[],h=0,d={};if(i&&(i=i.split(".")[0]),!n.treeOp)return u.push({caption:e.dimensions[i].caption||i,childrenCardinality:"1",dimensionUniqueName:i,hierarchyUniqueName:i,levelUniqueName:i,name:i,uniqueName:i}),u;for(s=r.getter(ee(i),!0);h<c.length;h++)!(a=s(c[h]))&&0!==a||d[a]||(d[a]=!0,u.push({caption:a,childrenCardinality:"0",dimensionUniqueName:i,hierarchyUniqueName:i,levelUniqueName:i,name:a,uniqueName:a}));return u}.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=Z(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=Z(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:X(e),sort:this.sort(),filter:this.filter()})},measuresAxis:function(){return this._measuresAxis||"columns"},_expandPath:function(e,t){var r="columns"===t?"columns":"rows",n="columns"===t?"rows":"columns",s=Z(e),a=Be(s[s.length-1]);this._lastExpanded=r,s=ne(this.axes()[r],s,this.measures());for(var i=0;i<s.length;i++){if(Be(s[i])===a){if(s[i].expand)return;s[i].expand=!0}else s[i].expand=!1}var o={};o[r]=s,o[n]=this._descriptorsForAxis(n),this._query(o)},_descriptorsForAxis:function(e){var t=this.axes(),r=this[e]()||[];return t&&t[e]&&t[e].tuples&&t[e].tuples[0]&&(r=re(t[e].tuples||[])),r},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(k,t)},_query:function(e){var t=this;return e||(this._skipNormalize+=1,this._clearAxesData=!0),t.query(v({},{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 r=this._mergeState(t);return this._data.length&&this.cubeBuilder?(this._params(r),this._updateLocalData(this._pristineData),e.Deferred().resolve().promise()):this.read(r)},_mergeState:function(e){return(e=u.fn._mergeState.call(this,e))!==t&&(this._measures=X(e.measures),e.columns?e.columns=Z(e.columns):e.columns||(this._columns=[]),e.rows?e.rows=Z(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)),u.fn.success.call(this,e),t&&(this._pristineData=t)},_processResult:function(e,t){if(this.cubeBuilder){var r=this.cubeBuilder.process(e,this._requestData);e=r.data,t=r.axes}var n,s,a,i,o,l,c=this.columns(),u=this.rows(),h=t.columns&&t.columns.tuples;c.length||!u.length||!h||!this._rowMeasures().length&&this.measures().length||(t={columns:{},rows:t.columns}),c.length||u.length||"rows"!==this.measuresAxis()||!h||(t={columns:{},rows:t.columns}),this._axes={columns:Se(this._axes.columns),rows:Se(this._axes.rows)},t={columns:Se(t.columns),rows:Se(t.rows)},n=this._normalizeTuples(t.columns.tuples,this._axes.columns.tuples,c,this._columnMeasures()),s=this._normalizeTuples(t.rows.tuples,this._axes.rows.tuples,u,this._rowMeasures()),this._skipNormalize>0&&(this._skipNormalize-=1),this.cubeBuilder||(e=this._normalizeData({columnsLength:t.columns.tuples.length,rowsLength:t.rows.tuples.length,columnIndexes:n,rowIndexes:s,data:e})),"rows"==this._lastExpanded?(a=t.columns.tuples,o=this._columnMeasures(),(i=be(t.columns,this._axes.columns,o))&&(l="columns",t.columns=i,function(e,t,r,n,s){var a,i,o,l=e.length,c=we(t,n),u=n.length||1;for(i=0;i<r;i++)for(a=0;a<l;a++)o=xe(e[a],t)*u,o+=a%u,s[i*l+a].ordinal=i*c+o}(a,i.tuples,t.rows.tuples.length,o,e),this.cubeBuilder||(e=this._normalizeData({columnsLength:we(t.columns.tuples,o),rowsLength:t.rows.tuples.length,data:e})))):"columns"==this._lastExpanded&&(a=t.rows.tuples,o=this._rowMeasures(),(i=be(t.rows,this._axes.rows,o))&&(l="rows",t.rows=i,function(e,t,r,n,s){var a,i,o,l=e.length,c=n.length||1;for(i=0;i<l;i++)for(o=xe(e[i],t),o*=c,o+=i%c,a=0;a<r;a++)s[i*r+a].ordinal=o*r+a}(a,i.tuples,t.columns.tuples.length,o,e),this.cubeBuilder||(e=this._normalizeData({columnsLength:we(t.rows.tuples,o),rowsLength:t.columns.tuples.length,data:e})))),this._lastExpanded=null;var d=this._mergeAxes(t,e,l);return this._axes=d.axes,d.data},_readData:function(e){var t=this.reader.axes(e),r=this.reader.data(e);return this.cubeBuilder&&(this._rawData=r),this._processResult(r,t)},_createTuple:function(e,t,r){var n,s,a,i,o,l,c,u,h=e.members,d=h.length,p={members:[]},m=0;for(t&&(d-=1);m<d;m++)u=h[m],s=Number(u.levelNum),a=u.name,i=u.parentName,c=u.caption||a,o=u.hasChildren,l=u.hierarchy,n=u.levelName,r&&(c="All",0===s?i=u.name:s-=1,o=!0,a=l=n=i),p.members.push({name:a,children:[],caption:c,levelName:n,levelNum:s.toString(),hasChildren:o,hierarchy:l,parentName:r?"":i});return t&&p.members.push({name:t.name,children:[]}),p},_hasRoot:function(e,t,r){if(t.length)return Ee(t,e).tuple;for(var n,s,a,i=e.members,o=!0,l=0,c=i.length;l<c;l++)if(n=i[l],a=Number(n.levelNum)||0,s=r[l],!(0===a||s&&n.name===Be(s))){o=!1;break}return o},_mergeAxes:function(e,t,r){var n,s,a=this._columnMeasures(),i=this._rowMeasures(),o=this.axes(),l=we(o.rows.tuples,i),c=e.rows.tuples.length,u=we(o.columns.tuples,a),h=e.columns.tuples.length;"columns"==r?(h=u,s=e.columns.tuples):t=function(e,t){if(!e||!e.length)return t;var r,n,s,a,i=[],o=Ie(e),l=o.length,c=Math.max(t.length/l,1);for(n=0;n<c;n++)for(s=l*n,r=0;r<l;r++)a=o[r]+s,i[s+r]=t[a]||{value:"",fmtValue:"",ordinal:a};return i}(s=Me(e.columns.tuples,a),t);var d=Ne(o.columns.tuples,s,a);"rows"==r?(c=we(e.rows.tuples,i),s=e.rows.tuples):t=function(e,t){if(!e||!e.length)return t;var r,n,s,a,i,o=[],l=Ie(e),c=l.length,u=Math.max(t.length/c,1);for(r=0;r<c;r++)for(s=u*r,a=u*l[r],n=0;n<u;n++)i=parseInt(a+n,10),o[parseInt(s+n,10)]=t[i]||{value:"",fmtValue:"",ordinal:i};return o}(s=Me(e.rows.tuples,i),t);var p=Ne(o.rows.tuples,s,i);if(o.columns.tuples=d.tuples,o.rows.tuples=p.tuples,u!==we(o.columns.tuples,a)){n=d.index+ke(d.parsedRoot,d.memberIndex,a);var m=u+h;t=this._mergeColumnData(t,n,c,h,m)}else l!==we(o.rows.tuples,i)&&(n=p.index+ke(p.parsedRoot,p.memberIndex,i),t=this._mergeRowData(t,n,c,h));return 0===o.columns.tuples.length&&0===o.rows.tuples.length&&(t=[]),{axes:o,data:t}},_mergeColumnData:function(e,t,r,n,s){var a,i,o,l=this.data().toJSON(),c=0,u=Math.max(this._columnMeasures().length,1);for(r=Math.max(r,1),l.length>0&&(c=u,s-=u),a=0;a<r;a++)i=t+a*s,(o=e.splice(0,n)).splice(0,c),[].splice.apply(l,[i,0].concat(o));return l},_mergeRowData:function(e,t,r,n){var s,a,i,o=this.data().toJSON(),l=Math.max(this._rowMeasures().length,1);for(n=Math.max(n,1),o.length>0&&(r-=l,e.splice(0,n*l)),s=0;s<r;s++)i=e.splice(0,n),a=t*n+s*n,[].splice.apply(o,[a,0].concat(i));return o},_columnMeasures:function(){var e=this.measures(),t=[];return"columns"===this.measuresAxis()&&(0===this.columns().length||e.length>1)&&(t=e),t},_rowMeasures:function(){var e=this.measures(),t=[];return"rows"===this.measuresAxis()&&(0===this.rows().length||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){if(e===t)return this._data;this._pristineData=e.slice(0),this._updateLocalData(e,{columns:this.columns(),rows:this.rows(),measures:this.measures()})},_normalizeTuples:function(e,t,r,n){var s,a,i,o=n.length||1,l=0,c=[],u={},h=0;if(e.length){if(this._skipNormalize<=0&&!this._hasRoot(e[0],t,r)){for(this._skipNormalize=0;l<o;l++)c.push(this._createTuple(e[0],n[l],!0)),u[l]=l;e.splice.apply(e,[0,e.length].concat(c).concat(e)),l=o}if(n.length)for(i=s=e[l],a=s.members.length-1;s;){if(h>=o&&(h=0),s.members[a].name!==n[h].name&&(e.splice(l,0,this._createTuple(s,n[h])),u[l]=l),h+=1,s=e[l+=1],o>h&&(!s||ut(i,a-1)!==ut(s,a-1))){for(;h<o;h++)e.splice(l,0,this._createTuple(i,n[h])),u[l]=l,l+=1;s=e[l]}i=s}return u}},_addMissingDataItems:function(e,r){for(;r.rowIndexes[parseInt(e.length/r.columnsLength,10)]!==t;)for(var n=0;n<r.columnsLength;n++)e=ve(e);for(;r.columnIndexes[e.length%r.columnsLength]!==t;)e=ve(e);return e},_normalizeOrdinals:function(e,t,r){var n=r.lastOrdinal;if(!t)return ve(e);if(t.ordinal-n>1)for(n+=1;n<t.ordinal&&e.length<r.length;)e=this._addMissingDataItems(ve(e),r),n+=1;return t.ordinal=e.length,e[e.length]=t,e},_normalizeData:function(e){var t,r,n,s=e.data,a=0,i=[];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,n=e.length,s.length===n)return s;for(;i.length<n;)(t=s[a++])&&(r=t.ordinal),i=this._normalizeOrdinals(this._addMissingDataItems(i,e),t,e),e.lastOrdinal=r;return i},discover:function(t,r){var n=this,s=n.transport;return e.Deferred((function(e){s.discover(v({success:function(t){t=n.reader.parse(t),n._handleCustomErrors(t)||(r&&(t=r(t)),e.resolve(t))},error:function(t,r,s){e.reject(t),n.error(t,r,s)}},t))})).promise().done((function(){n.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,r=function(e){return function(r){return t.reader.members(r,e)}}(e);return t.discover({data:{command:"schemaMembers",restrictions:v({catalogName:t.transport.catalog(),cubeName:t.transport.cube()},e)}},r)},_params:function(e){this._clearAxesData&&(this._axes={},this._data=this._observe([]),this._clearAxesData=!1,this.trigger(T));var t=u.fn._params.call(this,e);return t=v({measures:this.measures(),measuresAxis:this.measuresAxis(),columns:this.columns(),rows:this.rows()},t),this.cubeBuilder&&(this._requestData=t),t}});function fe(e){for(var t=[],r=0;r<e.length;r++)t.push(e[r]),e[r].children&&(t=t.concat(fe(e[r].children)));return t}function ge(e,t,r){for(var n=0;n<t.length;n++)t[n].children&&t[n].children.length&&ge(e,t[n].children,r);t[0].parentName==e&&(t=t.sort(r))}function _e(t,r){for(var n=0;n<t.length;n++){var s=r[t[n].name];if(!e.isEmptyObject(s.childrenMap)){for(var a in t[n].children=[],s.childrenMap)t[n].children.push(e.extend({},{name:a,parentName:r[a].parentName}));_e(t[n].children,r)}}}function ve(e){return e[e.length]={value:"",fmtValue:"",ordinal:e.length},e}function be(e,t,r){if(e.tuples.length<we(t.tuples,r))return t}function xe(e,t){return Ee(t,e).index}function we(e,t){if(!e.length)return 0;for(var r=e.slice(),n=r.shift(),s=1;n;)n.members?[].push.apply(r,n.members):n.children&&(n.measure||(s+=n.children.length),[].push.apply(r,n.children)),n=r.shift();return t.length&&(s*=t.length),s}function Se(e){return e||(e={tuples:[]}),e.tuples||(e.tuples=[]),e}function ke(e,t,r){if(!e)return 0;for(var n=Math.max(r.length,1),s=e.members.slice(0,t),a=s.shift(),i=n;a;)a.name===E?i+=n-1:a.children?[].push.apply(s,a.children):(i++,[].push.apply(s,a.members)),a=s.shift();return i}function Ne(e,t,r){if(!t[0])return{parsedRoot:null,tuples:e,memberIndex:0,index:0};var n=Ee(e,t[0]);if(!n.tuple)return{parsedRoot:null,tuples:t,memberIndex:0,index:0};var s=n.tuple.members,a=t[0].members,i=-1;if(s.length!==a.length)return{parsedRoot:null,tuples:t,memberIndex:0,index:0};for(var o=0,l=s.length;o<l;o++)!s[o].measure&&a[o].children[0]&&(-1==i&&a[o].children.length&&(i=o),s[o].children=a[o].children);return r=Math.max(r.length,1),{parsedRoot:n.tuple,index:n.index*r,memberIndex:i,tuples:e}}function ye(e,t){var r,n,s=!0;for(e=e.members,t=t.members,r=0,n=e.length;r<n;r++)e[r].measure||t[r].measure||(s=s&&Be(e[r])===Be(t[r]));return s}function Ee(e,t){var r,n,s,a,i,o,l,c=0;for(r=0,n=e.length;r<n;r++){if(ye(s=e[r],t))return{tuple:s,index:c};for(c++,i=0,o=s.members.length;i<o;i++)if(!(l=s.members[i]).measure&&(c+=(a=Ee(l.children,t)).index,a.tuple))return{tuple:a.tuple,index:c}}return{index:c}}function Te(e,t){var r,n,s,a="";for(n=0,s=e.length;n<s;n++)t[a+=(r=e[n]).name]||(t[a]=r)}function Ae(e,t){var r,n,s,a,i=e.members,o="",l="";for(r=0,n=i.length;r<n;r++){if(s=i[r],a){if(t[o+s.name]){a=t[o+=s.name];continue}return t[o+s.parentName]?t[o+s.parentName]:t[l+s.parentName]?t[l+s.parentName]:t[l]}if(o+=s.name,!(a=t[s.parentName])&&!(a=t[o]))return null;a&&(l+=a.name)}return a}function Ce(r,n){if(!(n<0)){var s={name:E,measure:!0,children:[e.extend({members:[],dataIndex:r.dataIndex},r.members[n])]};r.members.splice(n,1,s),r.dataIndex=t}}function Me(e,t){if(e.length<1)return[];for(var r=[],n={},s=function(e,t){if(0===t.length)return-1;for(var r=t[0],n=e.members,s=0,a=n.length;s<a;s++)if(n[s].name==r.name)return s}(e[0],t),a=0;a<e.length;a++){var i=e[a];i.dataIndex=a,Ce(i,s);var o=Ae(i,n);o?s<0||!o.measure?o.children.push(i):o.children.push(i.members[s].children[0]):r.push(i),Te(i.members,n)}return r}function Ie(e){for(var r,n,s,a,i,o=[],l=(e=e.slice()).shift();l;){for(l.dataIndex!==t&&o.push(l.dataIndex),s=0,r=0,n=l.members.length;r<n;r++)a=(i=l.members[r]).children,i.measure?[].splice.apply(e,[0,0].concat(a)):[].splice.apply(e,[s,0].concat(a)),s+=a.length;l=e.shift()}return o}function De(e){var t=e.split(".");return t.length>2?t[0]+"."+t[1]:e}function He(e,t){var r,n=e.length-1,s=e[n];return r=function(e,t){for(var r=0,n=e.length;r<n;r++)if(0===t.indexOf(e[r].field))return e[r];return null}(t,s),r&&r.dir?s="ORDER("+s+".Children,"+r.field+".CurrentMember.MEMBER_CAPTION,"+r.dir+")":s+=".Children",e[n]=s,e}function Re(e){var t,r="CROSSJOIN({";return e.length>2?(t=e.pop(),r+=Re(e)):(r+=e.shift(),t=e.pop()),r+="},{",r+=t,r+="})"}function Pe(e,t){var r=e.slice(0);return t.length>1&&r.push("{"+Le(t).join(",")+"}"),Re(r)}function Le(e){for(var r,n=0,s=e.length,a=[];n<s;n++)r=e[n],a.push(r.name!==t?r.name:r);return a}function Oe(e,t){var r,n,s=-1;for(r=0,n=t.length;r<n;r++)if(Be(t[r])===e){s=r;break}return s}function Be(e){return e=e.name||e,"[object Array]"===f.call(e)&&(e=e[e.length-1]),e}function Fe(e){for(var t=e.length,r=[],n=0;n<t;n++)r.push(e[n].name[0]);return r}function qe(e,t){var r,n,s,a=0,i=e.length,o=t.length;for(t=t.slice(0);a<i;a++)for(r=e[a],s=0;s<o;s++)if(n=De(t[s]),-1!==r.indexOf(n)){t[s]=r;break}return{names:t,expandedIdx:s,uniquePath:t.slice(0,s+1).join("")}}function Ue(e){for(var t,r,n,s,a,i,o=[],l=[],c=[],u=0,h=e.length;u<h;u++)if(s=(t=e[u]).name,i=!1,"[object Array]"!==f.call(s)&&(t.name=s=[s]),s.length>1)l.push(t);else{for(a=De(s[0]),r=0,n=c.length;r<n;r++)if(0===c[r].name[0].indexOf(a)){i=!0;break}i||c.push(t),t.expand&&o.push(t)}return{root:c,expanded:o=o.concat(l)}}function We(e,t,r){var n,s="",a=Ue(e=e||[]),i=Fe(a.root),o=[],l=(a=a.expanded).length,c=0,u=[];if(i.length>1||t.length>1){for(o.push(Pe(i,t));c<l;c++)u=qe(n=He(a[c].name,r),i).names,o.push(Pe(u,t));s+=o.join(",")}else{for(;c<l;c++)n=He(a[c].name,r),u.push(n[0]);s+=i.concat(u).join(",")}return s}pe.create=function(e){var t=(e=e&&e.push?{data:e}:e)||{},n=t.data;if(t.data=n,!(t instanceof pe)&&t instanceof r.data.DataSource)throw new Error("Incorrect DataSource type. Only PivotDataSource instances are supported");return t instanceof pe?t:new pe(t)},me.create=function(e){var t=(e=e&&e.push?{data:e}:e)||{},n=t.data;if(t.data=n,!(t instanceof me)&&t instanceof r.data.DataSource)throw new Error("Incorrect DataSource type. Only PivotDataSource instances are supported");return t instanceof me?t:new me(t)};var ze={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 je(e){var t="",n=e.value,s=e.field,a=e.operator;return"in"==a?(t+="{",t+=n,t+="}"):(t+="neq"==a||"doesnotcontain"==a?"-":"",t+="Filter(",t+=s+".MEMBERS",t+=r.format(ze[a],s,n),t+=")"),t}function $e(e,t,r){var n="";if(t){var s;for(var a in n+="<"+e+">",t){s=t[a];let e=a;r&&(e=e.replace(/([A-Z]+(?=$|[A-Z][a-z])|[A-Z]?[a-z]+)/g,"$1_").toUpperCase().replace(/_$/,"")),n+="<"+e+">"+s+"</"+e+">"}n+="</"+e+">"}else n+="<"+e+"/>";return n}var Ge={schemaCubes:"MDSCHEMA_CUBES",schemaCatalogs:"DBSCHEMA_CATALOGS",schemaMeasures:"MDSCHEMA_MEASURES",schemaDimensions:"MDSCHEMA_DIMENSIONS",schemaHierarchies:"MDSCHEMA_HIERARCHIES",schemaLevels:"MDSCHEMA_LEVELS",schemaMembers:"MDSCHEMA_MEMBERS",schemaKPIs:"MDSCHEMA_KPIS"},Ve={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 r=e.columns||[],n=e.rows||[],s=e.measures||[],a="rows"===e.measuresAxis,i=e.sort||[];return!r.length&&n.length&&(!s.length||s.length&&a)&&(r=n,n=[],a=!1),r.length||n.length||(a=!1),r.length?t+=We(r,a?[]:s,i):s.length&&!a&&(t+=Le(s).join(",")),t+="} DIMENSION PROPERTIES CHILDREN_CARDINALITY, PARENT_UNIQUE_NAME ON COLUMNS",(n.length||a&&s.length>1)&&(t+=", NON EMPTY {",n.length?t+=We(n,a?s:[],i):t+=Le(s).join(","),t+="} DIMENSION PROPERTIES CHILDREN_CARDINALITY, PARENT_UNIQUE_NAME ON ROWS"),e.filter?(t+=" FROM ",t+="(",t+=function(e,t){var r,n,s="",a=e.filters,i=a.length;for(n=i-1;n>=0;n--)r="SELECT (",r+=je(a[n]),r+=") ON 0",s=n==i-1?r+=" FROM ["+t+"]":r+" FROM ( "+s+" )";return s}(e.filter,e.connection.cube),t+=")"):t+=" FROM ["+e.connection.cube+"]",1==s.length&&r.length&&(t+=" WHERE ("+Le(s).join(",")+")"),(t+="</Statement></Command><Properties><PropertyList><Catalog>"+e.connection.catalog+"</Catalog><Format>Multidimensional</Format></PropertyList></Properties></Execute></Body></Envelope>").replace(/\&/g,"&")},discover:function(t){var r='<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/"><Header/><Body><Discover xmlns="urn:schemas-microsoft-com:xml-analysis">';return r+="<RequestType>"+(Ge[(t=t||{}).command]||t.command)+"</RequestType>",r+="<Restrictions>"+$e("RestrictionList",t.restrictions,!0)+"</Restrictions>",t.connection&&t.connection.catalog&&(t.properties=e.extend({},{Catalog:t.connection.catalog},t.properties)),r+="<Properties>"+$e("PropertyList",t.properties)+"</Properties>",r+="</Discover></Body></Envelope>"}},Ke=r.data.RemoteTransport.extend({init:function(e){var t=e;e=this.options=v(!0,{},this.options,e),r.data.RemoteTransport.call(this,e),x(t.discover)?this.discover=t.discover:"string"==typeof t.discover?this.options.discover={url:t.discover}:t.discover||(this.options.discover=this.options.read)},setup:function(t,n){return t.data=t.data||{},e.extend(!0,t.data,{connection:this.options.connection}),r.data.RemoteTransport.fn.setup.call(this,t,n)},options:{read:{dataType:"text",contentType:"text/xml",type:"POST"},discover:{dataType:"text",contentType:"text/xml",type:"POST"},parameterMap:function(e,t){return Ve[t](e,t)}},discover:function(t){return e.ajax(this.setup(t,"discover"))}}),Ye=a.extend({init:function(e){e=this.options=v(!0,{},this.options,e)},setup:function(t){return e.extend(!0,t||{},{connection:this.options.connection})},read:function(t){var r,n,s=this,a=s.setup(t.data,S);r=t.success||e.noop,n=t.error||e.noop,t.parameterMap&&(a=s.parameterMap(a,S));const i="object"==typeof s.options.read&&s.options.read.url?s.options.read:{url:s.options.read};o.g(i,a).then(o.h).then((function(e){r(e)})).catch((function(e){n(e)}))},catalog:function(r){var n=this.options||{};if(r===t)return(n.connection||{}).catalog;var s=n.connection||{};s.catalog=r,this.options.connection=s,e.extend(this.transport.options,{connection:s})},cube:function(e){var r=this.options||{};if(e===t)return(r.connection||{}).cube;var n=r.connection||{};n.cube=e,this.options.connection=n,v(!0,this.transport.options,{connection:n})},discover:function(e){return o.f({url:this.options.read},e)}});function Qe(e){return null==e?[]:"[object Array]"!==f.call(e)?[e]:e}function Je(e){for(var t={tuples:[]},n=Qe(r.getter("Tuples.Tuple",!0)(e)),s=r.getter("Caption['#text']"),a=r.getter("UName['#text']"),i=r.getter("LName['#text']"),o=r.getter("LNum['#text']"),l=r.getter("CHILDREN_CARDINALITY['#text']",!0),c=r.getter("['@Hierarchy']"),u=r.getter("PARENT_UNIQUE_NAME['#text']",!0),h=0;h<n.length;h++){for(var d=[],p=Qe(n[h].Member),m=0;m<p.length;m++)d.push({children:[],caption:s(p[m]),name:a(p[m]),levelName:i(p[m]),levelNum:o(p[m]),hasChildren:parseInt(l(p[m]),10)>0,parentName:u(p[m]),hierarchy:c(p[m])});t.tuples.push({members:d})}return t}var Xe={cubes:{name:r.getter("CUBE_NAME['#text']",!0),caption:r.getter("CUBE_CAPTION['#text']",!0),description:r.getter("DESCRIPTION['#text']",!0),type:r.getter("CUBE_TYPE['#text']",!0)},catalogs:{name:r.getter("CATALOG_NAME['#text']",!0),description:r.getter("DESCRIPTION['#text']",!0)},measures:{name:r.getter("MEASURE_NAME['#text']",!0),caption:r.getter("MEASURE_CAPTION['#text']",!0),uniqueName:r.getter("MEASURE_UNIQUE_NAME['#text']",!0),description:r.getter("DESCRIPTION['#text']",!0),aggregator:r.getter("MEASURE_AGGREGATOR['#text']",!0),groupName:r.getter("MEASUREGROUP_NAME['#text']",!0),displayFolder:r.getter("MEASURE_DISPLAY_FOLDER['#text']",!0),defaultFormat:r.getter("DEFAULT_FORMAT_STRING['#text']",!0)},kpis:{name:r.getter("KPI_NAME['#text']",!0),caption:r.getter("KPI_CAPTION['#text']",!0),value:r.getter("KPI_VALUE['#text']",!0),goal:r.getter("KPI_GOAL['#text']",!0),status:r.getter("KPI_STATUS['#text']",!0),trend:r.getter("KPI_TREND['#text']",!0),statusGraphic:r.getter("KPI_STATUS_GRAPHIC['#text']",!0),trendGraphic:r.getter("KPI_TREND_GRAPHIC['#text']",!0),description:r.getter("KPI_DESCRIPTION['#text']",!0),groupName:r.getter("MEASUREGROUP_NAME['#text']",!0)},dimensions:{name:r.getter("DIMENSION_NAME['#text']",!0),caption:r.getter("DIMENSION_CAPTION['#text']",!0),description:r.getter("DESCRIPTION['#text']",!0),uniqueName:r.getter("DIMENSION_UNIQUE_NAME['#text']",!0),defaultHierarchy:r.getter("DEFAULT_HIERARCHY['#text']",!0),type:r.getter("DIMENSION_TYPE['#text']",!0)},hierarchies:{name:r.getter("HIERARCHY_NAME['#text']",!0),caption:r.getter("HIERARCHY_CAPTION['#text']",!0),description:r.getter("DESCRIPTION['#text']",!0),uniqueName:r.getter("HIERARCHY_UNIQUE_NAME['#text']",!0),dimensionUniqueName:r.getter("DIMENSION_UNIQUE_NAME['#text']",!0),displayFolder:r.getter("HIERARCHY_DISPLAY_FOLDER['#text']",!0),origin:r.getter("HIERARCHY_ORIGIN['#text']",!0),defaultMember:r.getter("DEFAULT_MEMBER['#text']",!0)},levels:{name:r.getter("LEVEL_NAME['#text']",!0),caption:r.getter("LEVEL_CAPTION['#text']",!0),description:r.getter("DESCRIPTION['#text']",!0),uniqueName:r.getter("LEVEL_UNIQUE_NAME['#text']",!0),dimensionUniqueName:r.getter("DIMENSION_UNIQUE_NAME['#text']",!0),displayFolder:r.getter("LEVEL_DISPLAY_FOLDER['#text']",!0),orderingProperty:r.getter("LEVEL_ORDERING_PROPERTY['#text']",!0),origin:r.getter("LEVEL_ORIGIN['#text']",!0),hierarchyUniqueName:r.getter("HIERARCHY_UNIQUE_NAME['#text']",!0)},members:{name:r.getter("MEMBER_NAME['#text']",!0),caption:r.getter("MEMBER_CAPTION['#text']",!0),uniqueName:r.getter("MEMBER_UNIQUE_NAME['#text']",!0),dimensionUniqueName:r.getter("DIMENSION_UNIQUE_NAME['#text']",!0),hierarchyUniqueName:r.getter("HIERARCHY_UNIQUE_NAME['#text']",!0),levelUniqueName:r.getter("LEVEL_UNIQUE_NAME['#text']",!0),childrenCardinality:r.getter("CHILDREN_CARDINALITY['#text']",!0)}},Ze=["axes","catalogs","cubes","dimensions","hierarchies","levels","measures"],et=r.data.XmlDataReader.extend({init:function(e){r.data.XmlDataReader.call(this,e),this._extend(e)},_extend:function(e){for(var t,r,n=0,s=Ze.length;n<s;n++)(r=e[t=Ze[n]])&&r!==g&&(this[t]=r)},parse:function(e){var t=r.data.XmlDataReader.fn.parse(e.replace(/<(\/?)(\w|-)+:/g,"<$1"));return r.getter("['Envelope']['Body']",!0)(t)},errors:function(e){var t=r.getter("['Fault']",!0)(e);return t?[{faultstring:r.getter("faultstring['#text']",!0)(t),faultcode:r.getter("faultcode['#text']",!0)(t)}]:null},axes:function(e){e=r.getter('ExecuteResponse["return"].root',!0)(e);for(var t,n=Qe(r.getter("Axes.Axis",!0)(e)),s={columns:{},rows:{}},a=0;a<n.length;a++)"sliceraxis"!==(t=n[a])["@name"].toLowerCase()&&(s.columns.tuples?s.rows=Je(t):s.columns=Je(t));return s},data:function(e){e=r.getter('ExecuteResponse["return"].root',!0)(e);for(var t=Qe(r.getter("CellData.Cell",!0)(e)),n=[],s=r.getter("['@CellOrdinal']"),a=r.getter("Value['#text']"),i=r.getter("FmtValue['#text']"),o=0;o<t.length;o++)n.push({value:a(t[o]),fmtValue:i(t[o]),ordinal:parseInt(s(t[o]),10)});return n},_mapSchema:function(e,t){e=r.getter('DiscoverResponse["return"].root',!0)(e);for(var n=Qe(r.getter("row",!0)(e)),s=[],a=0;a<n.length;a++){var i={};for(var o in t)i[o]=t[o](n[a]);s.push(i)}return s},measures:function(e){return this._mapSchema(e,Xe.measures)},kpis:function(e){return this._mapSchema(e,Xe.kpis)},hierarchies:function(e){return this._mapSchema(e,Xe.hierarchies)},levels:function(e){return this._mapSchema(e,Xe.levels)},dimensions:function(e){return this._mapSchema(e,Xe.dimensions)},cubes:function(e){return this._mapSchema(e,Xe.cubes)},catalogs:function(e){return this._mapSchema(e,Xe.catalogs)},members:function(e){return this._mapSchema(e,Xe.members)}});v(!0,r.data,{PivotDataSource:me,PivotDataSourceV2:pe,XmlaTransport:Ke,XmlaDataReader:et,PivotCubeBuilder:he,transports:{xmla:Ke},readers:{xmla:et}});var tt=function(e,t){for(var r=[],n=0,s=e.length;n<s;n++)e[n].field!==t&&r.push(e[n]);return r};r.ui.PivotSettingTarget=c.extend({init:function(t,s){var a=this;if(c.fn.init.call(a,t,s),a.element.addClass("k-pivot-setting"),a.dataSource=r.data.PivotDataSource.create(s.dataSource),a._refreshHandler=a.refresh.bind(a),a.dataSource.first(k,a._refreshHandler),!s.template){var i="";a.options.enabled&&(i=`<span class="k-setting-delete k-chip-action">${r.ui.icon("x")}</span>`),a.options.template=e=>`<span class="k-chip k-chip-md k-rounded-md k-chip-solid k-chip-solid-base" data-${r.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">`+i+"</span></span>"}a.template=r.template(a.options.template),a.emptyTemplate=r.template(a.options.emptyTemplate),a._sortable(),a.element.on("click"+M,".k-chip, .k-button",(function(t){var n=e(t.target).closest(":not(path,svg)"),s=n.closest(".k-chip-action"),i=n.closest("["+r.attr("name")+"]").attr(r.attr("name"));if(i)if(s.hasClass("k-setting-delete"))a.remove(i);else if(!(n.closest(".k-chip-actions").length>0)&&a.options.sortable){var o=e(t.currentTarget).closest(":not(path,svg)").find(".k-i-sort-asc-small,.k-svg-i-sort-asc-small").length?"desc":"asc";a.sort({field:i,dir:o})}})),(s.filterable||s.sortable)&&(a.fieldMenu=new n.PivotFieldMenu(a.element,{messages:a.options.messages.fieldMenu,filter:".k-setting-fieldmenu",filterable:s.filterable,sortable:s.sortable,dataSource:a.dataSource})),a.refresh()},options:{name:"PivotSettingTarget",template:null,filterable:!1,sortable:!1,emptyTemplate:e=>`<div class='k-empty'>${e}</div>`