UNPKG

@progress/kendo-ui

Version:

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

1 lines 16.8 kB
module.exports=function(a){var s={};function i(e){if(s[e])return s[e].exports;var t=s[e]={exports:{},id:e,loaded:!1};return a[e].call(t.exports,t,t.exports,i),t.loaded=!0,t.exports}return i.m=a,i.c=s,i.p="",i(0)}({0:function(e,t,a){e.exports=a(1399)},3:function(e,t){e.exports=function(){throw Error("define cannot be used indirect")}},1058:function(e,t){e.exports=require("./kendo.dom")},1216:function(e,t){e.exports=require("./kendo.html.chip")},1217:function(e,t){e.exports=require("./kendo.html.chiplist")},1399:function(e,t,a){var s;a(3),a=[a(1058),a(1216),a(1217),a(1400)],void 0===(t="function"==typeof(s=function(){var i={id:"pivot.configurator",name:"PivotConfigurator",category:"web",depends:["dropdownlist","treeview","treeview.draganddrop","pivot.fieldmenu","html.chip","html.chiplist","pivot.common"],hidden:true},p=window.kendo.jQuery,o=void 0,n=window.kendo,e=n.ui,a=e.Widget,t=window.kendo.pivotgrid.common,h=t.fetchDiscover,l=t.configuratorReducer,d=t.PIVOT_CONFIGURATOR_ACTION,r=".kendoPivotConfigurator",u="mouseenter"+r+" mouseleave"+r,m=n.template('<div class="k-pivotgrid-configurator-header">'+'<div class="k-pivotgrid-configurator-header-text">#:title#</div>'+"</div>"),g=n.template('<div class="k-pivotgrid-configurator-content">'+'<form class="#:formClass#">'+'#if (horizontal) {# <div class="k-form-field-wrapper"> #}#'+'<div class="k-form-field">'+'<label class="k-label">Fields</label>'+"</div>"+'<div class="k-form-field">'+'<div class="k-fields-list-wrapper"></div>'+"</div>"+'#if (horizontal) {# </div><div class="k-form-field-wrapper"> #}#'+'<div class="k-form-field">'+'<label class="k-label">Columns</label>'+"</div>"+'<div class="k-chip-list k-column-fields"></div>'+'<div class="k-form-field">'+'<label class="k-label">Rows</label>'+"</div>"+'<div class="k-chip-list k-row-fields"></div>'+'#if (horizontal) {# </div><div class="k-form-field-wrapper"> #}#'+'<div class="k-form-field">'+'<label class="k-label">Values</label>'+"</div>"+'<div class="k-chip-list k-column-fields"></div>'+"#if (horizontal) {# </div> #}#"+"</form>"+"</div>"),v="<span>"+'<span class="k-chip-label">#:name#</span>'+'#if (menuenabled) {# <span class="k-icon k-i-more-vertical"></span> #}#'+"</span>",k=n.template('<div class="k-pivotgrid-configurator-actions k-actions k-hstack k-justify-content-end">'+'<button class="k-button k-button-md k-rounded-md k-button-solid k-button-solid-base">'+'<span class="k-button-text">#:cancelText#</span>'+"</button>"+'<button class="k-button k-button-md k-rounded-md k-button-solid k-button-solid-primary">'+'<span class="k-button-text">#:applyText#</span>'+"</button>"+"</div>"),c=n.template('<div class="k-pivotgrid-target k-pivotgrid-configurator-section"><strong>${name}</strong><div class="k-pivotgrid-target-wrap"></div>');function b(e){var t;var a=0;var s=e.length;for(;a<s;a++)if(e[a].type==2){t=true;break}if(t)e.splice(a+1,0,{caption:"KPIs",defaultHierarchy:"[KPIs]",name:"KPIs",uniqueName:"[KPIs]"})}function _(e){return{name:e.uniqueName,type:e.type}}function w(e){for(var t=0,a=e.length;t<a;t++){e[t].uniqueName=e[t].name;e[t].type="kpi"}return e}function S(e){var t=p(e).closest(".k-pivot-setting");if(t.length)return t.data("kendoPivotSettingTarget");return null}var y=a.extend({init:function(e,t){a.fn.init.call(this,e,t);this.element.addClass("k-widget k-pivotgrid-configurator k-pos-relative");this._dataSource();this._layout();this.refresh();if(t.height)this.element.height(t.height);n.notify(this)},events:[],options:{name:"PivotConfiguratorV2",orientation:"vertical",filterable:false,sortable:false,messages:{title:"Settings",cancelButtonText:"Cancel",applyButtonText:"Apply",measures:"Select some fields to begin setup",columns:"Select some fields to begin setup",rows:"Select some fields to begin setup"}},setDataSource:function(e){this.options.dataSource=e;this._dataSource();if(this.measures)this.measures.setDataSource(e);if(this.rows)this.rows.setDataSource(e);if(this.columns)this.columns.setDataSource(e);this.refresh()},_dataSource:function(){var e=this;if(e.dataSource&&e._refreshHandler)e.dataSource.unbind("change",e._refreshHandler).unbind("error",e._errorHandler).unbind("progress",e._progressHandler);else{e._errorHandler=e._error.bind(e);e._refreshHandler=e.refresh.bind(e);e._progressHandler=e._requestStart.bind(e)}e.dataSource=n.data.PivotDataSourceV2.create(e.options.dataSource);e.dataSource.bind("change",e._refreshHandler).bind("error",e._errorHandler).bind("progress",e._progressHandler)},_layout:function(){var e=this;var a=e.options;var t=a.messages;var s=a.orientation=="horizontal";var i=p("<div class='k-pivotgrid-configurator-panel k-pivotgrid-configurator-push'></div>");i.addClass(s?"k-pivotgrid-configurator-horizontal":"k-pivotgrid-configurator-vertical");e.element.append(i);e.panel=i;p(m({title:this.options.messages.title})).appendTo(e.panel);p(g({formClass:s?"k-form k-form-horizontal":"k-form",filterable:a.filterable,horizontal:s})).appendTo(e.panel).find(".k-chip-list").each(function(e,t){n.html.renderChipList(t,p.extend({},a))});e._fields();p(k({cancelText:t.cancelButtonText,applyText:t.applyButtonText})).appendTo(e.panel);e._targets();e.element.on("click"+r,".k-pivotgrid-configurator-actions > button",e._actions.bind(e))},_actions:function(e){e.preventDefault();var t=p(e.currentTarget);if(t.index()){this.columns._applyState();this.rows._applyState();this.measures._applyState();this.dataSource.read()}else{this.columns._cancelChanges();this.rows._cancelChanges();this.measures._cancelChanges();this.treeView.dataSource.read()}},_targets:function(){var e=this;var t=e.panel.find(".k-column-fields").first();var a=e.panel.find(".k-row-fields");var s=e.panel.find(".k-chip-list").last();var i=this.options;var r=n.html.renderChip(v,p.extend({},i,{fillMode:"solid",themeColor:"base",rounded:"full",removable:true,removeIcon:"close-circle"}));this.columns=this._createTarget(t,{filterable:i.filterable,sortable:i.sortable,template:r,connectWith:a,messages:{empty:i.messages.columns}});this.rows=this._createTarget(a,{filterable:i.filterable,sortable:i.sortable,template:r,setting:"rows",connectWith:t,messages:{empty:this.options.messages.rows}});this.measures=this._createTarget(s,{setting:"measures",template:r,messages:{empty:i.messages.measures}})},_createTarget:function(e,t){var i=this;return new n.ui.PivotSettingTargetV2(e,p.extend({dataSource:this.dataSource,hint:function(e){return e.clone()},remove:function(e){var t=i.treeView.wrapper.find("[data-name='"+e.name+"']").closest("li");var a=t.attr(n.attr("uid"));var s=i.treeView.dataSource.getByUid(a);if(s){s.checked=false;t.find("input").attr("checked",false)}},template:t.template},t))},_fields:function(){var r=this;var e=r.element.find(".k-fields-list-wrapper");this.treeView=p("<div/>").appendTo(e).kendoTreeView({checkboxes:{checkChildren:true,template:'#if ((item.hasChildren || item.aggregator) && item.uniqueName !== "[KPIs]" && item.uniqueName !== "[Measures]") {# <input type="checkbox" data-name="#:item.uniqueName#" #= item.checked ? "checked" : "" # class="k-checkbox k-checkbox-md k-rounded-md" id="#:item.uid#" tabindex="-1"> #}#'},dataTextField:"caption",autoBind:false,check:function(e){var t=e.sender.dataItem(e.node);var a={type:d.toggleSelection,payload:t};var s={columnAxes:r.columns._state(),rowAxes:r.rows._state(),measureAxes:r.measures._state()};var i=l(s,a);if(t.defaultHierarchy&&t.items.length){r._checkMembers([{name:t.defaultHierarchy}],t.items);t.items.trigger("change")}if(i.columnAxes){r.columns._state(i.columnAxes);r.columns._redraw()}if(i.rowAxes){r.rows._state(i.rowAxes);r.rows._redraw()}if(i.measureAxes){r.measures._state(i.measureAxes);r.measures._redraw()}},dataSource:this._treeViewDataSource()}).data("kendoTreeView");this.treeView.wrapper.off("click",this.treeView._clickHandler)},_treeViewDataSource:function(){var u=this;return n.data.HierarchicalDataSource.create({schema:{model:{id:"uniqueName",hasChildren:function(e){return!("hierarchyUniqueName"in e)&&!("aggregator"in e)}}},transport:{read:function(t){var e;var a=u.dataSource.transport;var s=a.catalog();var i=a.cube();var r={url:a.options.read};var n=u.columns._state();var o=u.rows._state();var c=u.measures._state();var l=n.concat(o).concat(c);if(p.isEmptyObject(t.data)){var d={connection:{catalog:s,cube:i},restrictions:{catalogName:s,cubeName:i},command:"schemaDimensions"};h(r,d).then(function(e){u._checkMembers(l,e);b(e);t.success(e)})}else{e=u.treeView.dataSource.get(t.data.uniqueName);if(e.uniqueName==="[KPIs]")h(r,u._getKPIOptions(s,i)).then(function(e){t.success(w(e))});else if(e.type=="kpi")t.success(f(e));else h(r,u._loadFieldsCommand(e,s,i)).then(function(e){u._checkMembers(l,e);t.success(e)})}}}})},_checkMembers:function(e,t){var a={};var s=0;for(s=0;s<e.length;s++)a[e[s].name]=true;for(s=0;s<t.length;s++)if(a[t[s].uniqueName])t[s].checked=true},_getKPIOptions:function(e,t){return{connection:{catalog:e,cube:t},restrictions:{catalogName:e,cubeName:t},command:"schemaKPIs"}},_loadFieldsCommand:function(e,t,a){var s;var i;var r;if(e.type===2)s="schemaMeasures";else if(e.dimensionUniqueName){s="schemaLevels";r=e.uniqueName}else{s="schemaHierarchies";i=e.uniqueName}var n={connection:{catalog:t,cube:a},restrictions:{catalogName:t,cubeName:a,hierarchyUniqueName:r,dimensionUniqueName:i},command:s};return n},_progress:function(e){n.ui.progress(this.element,e)},_error:function(){this._progress(false)},_requestStart:function(){this._progress(true)},destroy:function(){a.fn.destroy.call(this);this.dataSource.unbind("change",this._refreshHandler);this.element.off(r);this.rows.destroy();this.columns.destroy();this.measures.destroy();this.treeView.destroy();this.element=null;this._refreshHandler=null},refresh:function(){if(this.treeView)this.treeView.dataSource.fetch();this._progress(false)}}),x=(e.plugin(y),a.extend({init:function(e,t){a.fn.init.call(this,e,t);this.element.addClass("k-pivotgrid-configurator-panel kendo-jquery");if(this.options.height)this.element.outerHeight(this.options.height);this._dataSource();this._layout();this.refresh();n.notify(this)},events:[],options:{name:"PivotConfigurator",filterable:false,sortable:false,messages:{measures:"Drop Data Fields Here",columns:"Drop Column Fields Here",rows:"Drop Rows Fields Here",measuresLabel:"Measures",columnsLabel:"Columns",rowsLabel:"Rows",fieldsLabel:"Fields"}},_dataSource:function(){var e=this;if(e.dataSource&&e._refreshHandler)e.dataSource.unbind("change",e._refreshHandler).unbind("error",e._errorHandler).unbind("progress",e._progressHandler);else{e._errorHandler=e._error.bind(e);e._refreshHandler=e.refresh.bind(e);e._progressHandler=e._requestStart.bind(e)}e.dataSource=n.data.PivotDataSource.create(e.options.dataSource);e.dataSource.bind("change",e._refreshHandler).bind("error",e._errorHandler).bind("progress",e._progressHandler)},setDataSource:function(e){this.options.dataSource=e;this._dataSource();if(this.measures)this.measures.setDataSource(e);if(this.rows)this.rows.setDataSource(e);if(this.columns)this.columns.setDataSource(e);this.refresh()},_treeViewDataSource:function(){var i=this;return n.data.HierarchicalDataSource.create({schema:{model:{id:"uniqueName",hasChildren:function(e){return!("hierarchyUniqueName"in e)&&!("aggregator"in e)}}},transport:{read:function(t){var e;var a;var s;if(p.isEmptyObject(t.data)){e=i.dataSource.schemaDimensions();e.done(function(e){if(!i.dataSource.cubeBuilder)b(e);t.success(e)}).fail(t.error)}else{a=i.treeView.dataSource.get(t.data.uniqueName);if(a.uniqueName==="[KPIs]"){s=true;e=i.dataSource.schemaKPIs();e.done(function(e){t.success(w(e))}).fail(t.error)}else if(a.type=="kpi"){s=true;t.success(f(a))}if(!s){if(a.type==2)e=i.dataSource.schemaMeasures();else if(a.dimensionUniqueName)e=i.dataSource.schemaLevels(t.data.uniqueName);else e=i.dataSource.schemaHierarchies(t.data.uniqueName);e.done(t.success).fail(t.error)}}}}})},_progress:function(e){n.ui.progress(this.element,e)},_error:function(){this._progress(false)},_requestStart:function(){this._progress(true)},_layout:function(){p('<div class="k-pivotgrid-configurator"><div class="k-pivotgrid-configurator-content"></div></div>').appendTo(this.element);this.form=this.element.find(".k-pivotgrid-configurator-content");this._fields();this._targets()},_fields:function(){var e=p('<div class="k-pivotgrid-fields k-pivotgrid-configurator-section"><strong>'+this.options.messages.fieldsLabel+'</strong><div class="k-fields-list-wrapper"></div></div>').appendTo(this.form);var t='# if (item.type == 2 || item.uniqueName == "[KPIs]") { #'+'<span class="k-icon k-i-#= (item.type == 2 ? "sum" : "kpi") #"></span>'+'# } else if (item.type && item.type !== "kpi") { #'+'<span class="k-icon k-i-arrows-dimensions"></span>'+"# } #"+"#: item.caption || item.name #";this.treeView=p("<div/>").appendTo(e.find(".k-fields-list-wrapper")).kendoTreeView({template:t,dataTextField:"caption",dragAndDrop:true,autoBind:false,dataSource:this._treeViewDataSource(),dragstart:function(e){var t=this.dataItem(e.sourceNode);if(!t.hasChildren&&!t.aggregator&&!t.measure||t.type==2||t.uniqueName==="[KPIs]")e.preventDefault()},drag:function(e){var t="k-i-cancel";var a=S(e.dropTarget);if(a&&a.validate(this.dataItem(e.sourceNode)))t="k-i-plus";e.setStatusClass(t)},drop:function(e){e.preventDefault();var t=S(e.dropTarget);var a=this.dataItem(e.sourceNode);var s,i,r;var n;if(t&&t.validate(a)){n=a.defaultHierarchy||a.uniqueName;if(a.type==="kpi"){r=f(a);i=r.length;n=[];for(s=0;s<i;s++)n.push(_(r[s]))}else if(a.kpi)n=[_(a)];t.add(n)}}}).data("kendoTreeView")},_createTarget:function(e,t){var a="";var s=t.sortable;var i="";if(s){i+="#if (data.sortIcon) {#";i+='<span class="k-chip-action"><span class="k-icon ${data.sortIcon}-sm"></span></span>';i+="#}#"}if(t.filterable||s)i+='<span class="k-setting-fieldmenu k-chip-action"><span class="k-icon k-i-more-vertical"></span></span>';i+='<span class="k-setting-delete k-chip-action"><span class="k-icon k-i-close"></span></span>';a=""+'<span class="k-chip k-chip-md k-rounded-full k-chip-solid k-chip-solid-base" data-'+n.ns+'name="${data.name}">'+'<span class="k-chip-content">'+'<span class="k-chip-text">${data.name}</span>'+"</span>"+'<span class="k-chip-actions k-field-actions">'+i+"</span>"+"</span>";return new n.ui.PivotSettingTarget(e,p.extend({dataSource:this.dataSource,template:a,emptyTemplate:'<span class="k-empty">${data}</span>'},t))},_targets:function(){var e=p('<div class="k-pivotgrid-targets"/>').appendTo(this.form);var t=p(c({name:this.options.messages.columnsLabel,icon:"k-i-columns"})).appendTo(e);var a=p('<div class="k-column-fields k-chip-list" />').appendTo(t.find(".k-pivotgrid-target-wrap"));var s=p(c({name:this.options.messages.rowsLabel,icon:"k-i-rows"})).appendTo(e);var i=p('<div class="k-column-fields k-chip-list" />').appendTo(s.find(".k-pivotgrid-target-wrap"));var r=p(c({name:this.options.messages.measuresLabel,icon:"k-i-sum"})).appendTo(e);var n=p('<div class="k-column-fields k-chip-list" />').appendTo(r.find(".k-pivotgrid-target-wrap"));var o=this.options;this.columns=this._createTarget(a,{filterable:o.filterable,sortable:o.sortable,connectWith:i,messages:{empty:o.messages.columns,fieldMenu:o.messages.fieldMenu}});this.rows=this._createTarget(i,{filterable:o.filterable,sortable:o.sortable,setting:"rows",connectWith:a,messages:{empty:this.options.messages.rows,fieldMenu:this.options.messages.fieldMenu}});this.measures=this._createTarget(n,{setting:"measures",messages:{empty:o.messages.measures}});a.add(i).add(n).on(u,".k-item:not(.k-empty)",this._toggleHover)},_toggleHover:function(e){p(e.currentTarget).toggleClass("k-state-hover",e.type==="mouseenter")},_resize:function(){var e=this.element;var t=this.options.height;if(!t)return;e.outerHeight(t)},refresh:function(){var e=this.dataSource;if(e.cubeBuilder||this._cube!==e.cube()||this._catalog!==e.catalog())this.treeView.dataSource.fetch();this._catalog=this.dataSource.catalog();this._cube=this.dataSource.cube();this._resize();this._progress(false)},destroy:function(){a.fn.destroy.call(this);this.dataSource.unbind("change",this._refreshHandler);this.form.find(".k-pivot-setting").off(r);this.rows.destroy();this.columns.destroy();this.measures.destroy();this.treeView.destroy();this.element=null;this._refreshHandler=null}}));function s(e,t,a){return{hierarchyUniqueName:e,uniqueName:t,caption:t,measure:t,name:t,type:a,kpi:true}}function f(e){var t=e.name;return[s(t,e.value,"value"),s(t,e.goal,"goal"),s(t,e.status,"status"),s(t,e.trend,"trend")]}return n.cssProperties.registerPrefix("HTMLChip","k-chip-"),n.cssProperties.registerValues("HTMLChip",[{prop:"rounded",values:n.cssProperties.roundedValues.concat([["full","full"]])}]),e.plugin(x),window.kendo})?s.apply(t,a):s)||(e.exports=t)},1400:function(e,t){e.exports=require("./kendo.pivot.common")}});