@syncfusion/ej2-pivotview
Version:
The pivot grid, or pivot table, is used to visualize large sets of relational data in a cross-tabular format, similar to an Excel pivot table.
1,286 lines (1,284 loc) • 2.51 MB
JavaScript
import { isNullOrUndefined, select, Internationalization, extend, SanitizeHtmlHelper, createElement, getInstance, remove, closest, setStyleAttribute, addClass, removeClass, formatUnit, append, getElement, EventHandler, selectAll, KeyboardEvents, Browser, Property, ChildProperty, Collection, Complex, Event, Ajax, Component, setValue, L10n, Fetch, compile, initializeCSPTemplate, NotifyPropertyChanges, Droppable, Draggable, detach, prepend, Touch } from '@syncfusion/ej2-base';
import { DataManager, Query, Predicate, Deferred } from '@syncfusion/ej2-data';
import { SizeF, PointF, RectangleF, PdfPageTemplateElement, PdfPen, PdfColor, PdfSolidBrush, PdfStringFormat, PdfPageNumberField, PdfPageCountField, PdfCompositeField, PdfBitmap, PdfFontFamily, PdfFontStyle, PdfStandardFont, PdfTextAlignment, PdfVerticalAlignment, PdfDocument, PdfPageOrientation, PdfBorders, PdfGrid } from '@syncfusion/ej2-pdf-export';
import { Dialog, hideSpinner, Tooltip as Tooltip$1, createSpinner, showSpinner } from '@syncfusion/ej2-popups';
import { headerRefreshed, Grid, Freeze, ExcelExport as ExcelExport$1, PdfExport, Selection, Reorder, Resize, ContextMenu as ContextMenu$1, getScrollBarWidth, setStyleAndAttributes, Toolbar as Toolbar$1, ColumnChooser, Edit, Page, CommandColumn, VirtualScroll as VirtualScroll$1, getObject, Pager as Pager$1 } from '@syncfusion/ej2-grids';
import { ContextMenu, TreeView, Tab, Accordion, Toolbar as Toolbar$2, Menu } from '@syncfusion/ej2-navigations';
import { MaskedTextBox, NumericTextBox, TextBox, ColorPicker } from '@syncfusion/ej2-inputs';
import { DropDownList, MultiSelect, CheckBoxSelection } from '@syncfusion/ej2-dropdowns';
import { DateTimePicker } from '@syncfusion/ej2-calendars';
import { DropDownButton } from '@syncfusion/ej2-splitbuttons';
import { Button, CheckBox, RadioButton } from '@syncfusion/ej2-buttons';
import { getSeriesColor, Chart, ColumnSeries, StackingColumnSeries, RangeColumnSeries, BarSeries, StackingBarSeries, ScatterSeries, BubbleSeries, LineSeries, StepLineSeries, SplineSeries, SplineAreaSeries, MultiColoredLineSeries, PolarSeries, RadarSeries, AreaSeries, RangeAreaSeries, StackingAreaSeries, StepAreaSeries, StackingLineSeries, MultiColoredAreaSeries, ParetoSeries, Legend, Tooltip, Category, MultiLevelLabel, ScrollBar, Zoom, Export, Crosshair, Selection as Selection$1, StripLine, DataLabel, AccumulationChart, PieSeries, FunnelSeries, PyramidSeries, AccumulationDataLabel, AccumulationLegend, AccumulationTooltip, titleSettings } from '@syncfusion/ej2-charts';
import { SvgRenderer } from '@syncfusion/ej2-svg-base';
import { Save } from '@syncfusion/ej2-file-utils';
import { Workbook } from '@syncfusion/ej2-excel-export';
/**
* CSS Constants
*
* @hidden
*/
/** @hidden */
var ROOT = 'e-pivotfieldlist';
/** @hidden */
var RTL = 'e-rtl';
/** @hidden */
var PIVOTCHART_LTR = 'e-ltr';
/** @hidden */
var DEVICE = 'e-device';
/** @hidden */
var ICON = 'e-icons';
/** @hidden */
var ICON_DISABLE = 'e-disable';
/** @hidden */
var ICON_HIDDEN = 'e-hide';
/** @hidden */
var FIRST_PAGER_ICON = 'e-icon-first';
/** @hidden */
var LAST_PAGER_ICON = 'e-icon-last';
/** @hidden */
var PREV_PAGER_ICON = 'e-icon-prev';
/** @hidden */
var NEXT_PAGER_ICON = 'e-icon-next';
/** @hidden */
var AXISFIELD_ICON_CLASS = 'e-dropdown-icon';
/** @hidden */
var WRAPPER_CLASS = 'e-pivotfieldlist-container';
/** @hidden */
var OLAP_WRAPPER_CLASS = 'e-olapfieldlist-container';
/** @hidden */
var CONTAINER_CLASS = 'e-field-list-container';
/** @hidden */
var TOGGLE_FIELD_LIST_CLASS = 'e-toggle-field-list';
/** @hidden */
var STATIC_FIELD_LIST_CLASS = 'e-static';
/** @hidden */
var TOGGLE_SELECT_CLASS = 'e-select-table';
/** @hidden */
var FIELD_TABLE_CLASS = 'e-field-table';
/** @hidden */
var BUTTON_DRAGGABLE = 'e-draggable';
/** @hidden */
var OLAP_FIELD_TABLE_CLASS = 'e-olap-field-table';
/** @hidden */
var FIELD_LIST_CLASS = 'e-field-list';
/** @hidden */
var OLAP_FIELD_LIST_CLASS = 'e-olap-field-list-tree';
/** @hidden */
var FIELD_LIST_TREE_CLASS = 'e-field-list-tree';
/** @hidden */
var FIELD_LIST_TREE_OUTER_DIV_CLASS = 'e-field-list-tree-outer-div';
/** @hidden */
var FIELD_LIST_TREE_OUTER_DIV_SEARCH_CLASS = 'e-field-list-tree-outer-div-searchMode';
/** @hidden */
var FIELD_LIST_SEARCH_MODE_CLASS = 'e-search-mode';
/** @hidden */
var FIELD_HEADER_CLASS = 'e-field-header';
/** @hidden */
var FIELD_TREE_PARENT = 'e-pivot-parent';
/** @hidden */
var FIELD_TREE_CHILD = 'e-pivot-child';
/** @hidden */
var FIELD_HEADER_CONTAINER_CLASS = 'e-field-header-container';
/** @hidden */
var FIELD_LIST_TITLE_CLASS = 'e-field-list-title';
/** @hidden */
var FIELD_LIST_TITLE_CONTENT_CLASS = 'e-title-content';
/** @hidden */
var FIELD_LIST_SEARCH_CLASS = 'e-field-list-search';
/** @hidden */
var FIELD_LIST_SEARCH_INPUT_CLASS = 'e-field-list-search-input';
/** @hidden */
var FIELD_LIST_SEARCH_ICON_CLASS = 'e-field-list-search-icon';
/** @hidden */
var FIELD_LIST_FOOTER_CLASS = 'e-field-list-footer';
/** @hidden */
var CALCULATED_FIELD_CLASS = 'e-calculated-field';
/** @hidden */
var AXIS_TABLE_CLASS = 'e-axis-table';
/** @hidden */
var OLAP_AXIS_TABLE_CLASS = 'e-olap-axis-table';
/** @hidden */
var LEFT_AXIS_PANEL_CLASS = 'e-left-axis-fields';
/** @hidden */
var RIGHT_AXIS_PANEL_CLASS = 'e-right-axis-fields';
/** @hidden */
var ALL_FIELDS_PANEL_CLASS = 'e-all-fields-axis';
/** @hidden */
var AXIS_HEADER_CLASS = 'e-axis-header';
/** @hidden */
var AXIS_CONTENT_CLASS = 'e-axis-content';
/** @hidden */
var AXIS_PROMPT_CLASS = 'e-draggable-prompt';
/** @hidden */
var PIVOT_BUTTON_WRAPPER_CLASS = 'e-pvt-btn-div';
/** @hidden */
var PIVOT_BUTTON_CLASS = 'e-pivot-button';
/** @hidden */
var CONTENT_CLASS = 'e-content';
/** @hidden */
var PIVOT_BUTTON_CONTENT_CLASS = 'e-pvt-btn-content';
/** @hidden */
var DRAG_CLONE_CLASS = 'e-button-drag-clone';
/** @hidden */
var SORT_CLASS = 'e-sort';
/** @hidden */
var MEMBER_SORT_CLASS = 'e-member-sort';
/** @hidden */
var SORT_DESCEND_CLASS = 'e-descend';
/** @hidden */
var FILTER_COMMON_CLASS = 'e-btn-filter';
/** @hidden */
var FILTER_CLASS = 'e-pv-filter';
/** @hidden */
var FILTERED_CLASS = 'e-pv-filtered';
/** @hidden */
var REMOVE_CLASS = 'e-remove';
/** @hidden */
var DRAG_CLASS = 'e-drag';
/** @hidden */
var DRAG_DISABLE_CLASS = 'e-disable-drag';
/** @hidden */
var DROP_INDICATOR_CLASS = 'e-drop-indicator';
/** @hidden */
var INDICATOR_HOVER_CLASS = 'e-drop-hover';
/** @hidden */
var MEMBER_EDITOR_DIALOG_CLASS = 'e-member-editor-dialog';
/** @hidden */
var EDITOR_TREE_WRAPPER_CLASS = 'e-member-editor-outer-container';
/** @hidden */
var EDITOR_TREE_CONTAINER_CLASS = 'e-member-editor-container';
/** @hidden */
var DRILLTHROUGH_GRID_CLASS = 'e-drillthrough-grid';
/** @hidden */
var DRILLTHROUGH_BODY_CLASS = 'e-drillthrough-body';
/** @hidden */
var DRILLTHROUGH_BODY_HEADER_CONTAINER_CLASS = 'e-drillthrough-body-header-container';
/** @hidden */
var DRILLTHROUGH_BODY_HEADER_CLASS = 'e-drillthrough-body-header';
/** @hidden */
var DRILLTHROUGH_BODY_HEADER_COMMON_CLASS = 'e-drillthrough-body-header-common';
/** @hidden */
var DRILLTHROUGH_BODY_HEADER_VALUE_CLASS = 'e-drillthrough-body-header-value';
/** @hidden */
var DRILLTHROUGH_DIALOG = 'e-drillthrough-dialog';
/** @hidden */
var EDITOR_LABEL_WRAPPER_CLASS = 'e-editor-label-container';
/** @hidden */
var EDITOR_LABEL_CLASS = 'e-editor-label';
/** @hidden */
var CHECK_BOX_FRAME_CLASS = 'e-frame';
/** @hidden */
var NODE_CHECK_CLASS = 'e-check';
/** @hidden */
var NODE_STOP_CLASS = 'e-stop';
/** @hidden */
var OK_BUTTON_CLASS = 'e-ok-btn';
/** @hidden */
var CANCEL_BUTTON_CLASS = 'e-cancel-btn';
/** @hidden */
var ERROR_DIALOG_CLASS = 'e-pivot-error-dialog';
/** @hidden */
var DROPPABLE_CLASS = 'e-droppable';
/** @hidden */
var ROW_AXIS_CLASS = 'e-rows';
/** @hidden */
var COLUMN_AXIS_CLASS = 'e-columns';
/** @hidden */
var VALUE_AXIS_CLASS = 'e-values';
/** @hidden */
var FILTER_AXIS_CLASS = 'e-filters';
/** @hidden */
var GROUPING_BAR_CLASS = 'e-grouping-bar';
/** @hidden */
var GROUP_ALL_FIELDS_CLASS = 'e-group-all-fields';
/** @hidden */
var GROUP_ROW_CLASS = 'e-group-rows';
/** @hidden */
var GROUP_COLUMN_CLASS = 'e-group-columns';
/** @hidden */
var GROUP_VALUE_CLASS = 'e-group-values';
/** @hidden */
var GROUP_FILTER_CLASS = 'e-group-filters';
/** @hidden */
var NO_DRAG_CLASS = 'e-drag-restrict';
/** @hidden */
var SELECTED_NODE_CLASS = 'e-list-selected';
/** @hidden */
var TITLE_HEADER_CLASS = 'e-title-header';
/** @hidden */
var TITLE_CONTENT_CLASS = 'e-title-content';
/** @hidden */
var TEXT_CONTENT_CLASS = 'e-text-content';
/** @hidden */
var FOOTER_CONTENT_CLASS = 'e-footer-content';
/** @hidden */
var ADAPTIVE_CONTAINER_CLASS = 'e-adaptive-container';
/** @hidden */
var ADAPTIVE_FIELD_LIST_BUTTON_CLASS = 'e-field-list-btn';
/** @hidden */
var ADAPTIVE_CALCULATED_FIELD_BUTTON_CLASS = 'e-calculated-field-btn';
/** @hidden */
var BUTTON_SMALL_CLASS = 'e-small';
/** @hidden */
var BUTTON_ROUND_CLASS = 'e-round';
/** @hidden */
var ADD_ICON_CLASS = 'e-add-icon';
/** @hidden */
var BUTTON_FLAT_CLASS = 'e-flat';
/** @hidden */
var STATIC_CENTER_DIV_CLASS = 'e-center-div';
/** @hidden */
var STATIC_CENTER_HEADER_CLASS = 'e-center-title';
/** @hidden */
var ADAPTIVE_FIELD_LIST_DIALOG_CLASS = 'e-adaptive-field-list-dialog';
/** @hidden */
var LIST_TEXT_CLASS = 'e-list-text';
/** @hidden */
var LIST_SELECT_CLASS = 'e-selected-node';
/** @hidden */
var FOCUSED_CLASS = 'e-focused';
/** @hidden */
var SELECT_CLASS = 'e-select';
/** @hidden */
var SELECTED_OPTION_ICON_CLASS = 'e-selected-option-icon';
/** @hidden */
var SELECTED_LEVEL_ICON_CLASS = 'e-selected-level-icon';
/** @hidden */
var FILTER_DIV_CONTENT_CLASS = 'e-filter-div-content';
/** @hidden */
var FILTER_TEXT_DIV_CLASS = 'e-filter-text-div';
/** @hidden */
var BETWEEN_TEXT_DIV_CLASS = 'e-between-text-div';
/** @hidden */
var SEPARATOR_DIV_CLASS = 'e-separator-div';
/** @hidden */
var FILTER_OPTION_WRAPPER_1_CLASS = 'e-filter-option-container-1';
/** @hidden */
var FILTER_OPTION_WRAPPER_2_CLASS = 'e-filter-option-container-2';
/** @hidden */
var FILTER_INPUT_DIV_1_CLASS = 'e-filter-input-div-1';
/** @hidden */
var FILTER_INPUT_DIV_2_CLASS = 'e-filter-input-div-2';
/** @hidden */
var VALUE_OPTIONS_CLASS = 'e-value-options';
/** @hidden */
var LEVEL_OPTIONS_CLASS = 'e-level-options';
/** @hidden */
var FILTER_OPERATOR_CLASS = 'e-filter-operator';
/** @hidden */
var FILTER_SORT_CLASS = 'e-filter-sort';
/** @hidden */
var SORT_ASCEND_ICON_CLASS = 'e-sort-ascend-icon';
/** @hidden */
var SORT_DESCEND_ICON_CLASS = 'e-sort-descend-icon';
/** @hidden */
var SORT_SELECTED_CLASS = 'e-active';
/** @hidden */
var COLLAPSE = 'e-collapse';
/** @hidden */
var EXPAND = 'e-expand';
/** @hidden */
var TABLE = 'e-table';
/** @hidden */
var COLUMNSHEADER = 'e-columnsheader';
/** @hidden */
var ROWSHEADER = 'e-rowsheader';
/** @hidden */
var VALUESCONTENT = 'e-valuescontent';
/** @hidden */
var HEADERCELL = 'e-headercell';
/** @hidden */
var SUMMARY = 'e-summary';
/** @hidden */
var CELLVALUE = 'e-cellvalue';
/** @hidden */
var PIVOTTOOLTIP = 'e-pivottooltip';
/** @hidden */
var TOOLTIP_HEADER = 'e-tooltipheader';
/** @hidden */
var TOOLTIP_CONTENT = 'e-tooltipcontent';
/** @hidden */
var NEXTSPAN = 'e-nextspan';
/** @hidden */
var LASTSPAN = 'e-lastspan';
/** @hidden */
var EDITOR_SEARCH_WRAPPER_CLASS = 'e-editor-search-container';
/** @hidden */
var EDITOR_SEARCH_CLASS = 'e-editor-search';
/** @hidden */
var EDITOR_SEARCH__INPUT_CLASS = 'e-editor-search-input';
/** @hidden */
var SELECT_ALL_WRAPPER_CLASS = 'e-select-all-container';
/** @hidden */
var SELECT_ALL_CLASS = 'e-select-all';
/** @hidden */
var PIVOTCALC = 'e-pivot-calc';
/** @hidden */
var CALCDIALOG = 'e-pivot-calc-dialog-div';
/** @hidden */
var OLAP_CALCDIALOG = 'e-olap-calc-dialog-div';
/** @hidden */
var CALCRADIO = 'e-pivot-calc-radio';
/** @hidden */
var CALCCHECK = 'e-pivot-calc-check';
/** @hidden */
var CALCINPUT = 'e-pivot-calc-input';
/** @hidden */
var CALC_FORMAT_INPUT = 'e-custom-format-input';
/** @hidden */
var CALCINPUTDIV = 'e-pivot-calc-input-div';
/** @hidden */
var PIVOT_CALC_CUSTOM_FORMAT_INPUTDIV = 'e-pivot-calc-custom-format-div';
/** @hidden */
var CALC_HIERARCHY_LIST_DIV = 'e-olap-calc-hierarchy-list-div';
/** @hidden */
var CALC_FORMAT_TYPE_DIV = 'e-pivot-calc-format-type-div';
/** @hidden */
var CALC_MEMBER_TYPE_DIV = 'e-olap-calc-member-type-div';
/** @hidden */
var MEMBER_OPTIONS_CLASS = 'e-member-options';
/** @hidden */
var CALCOUTERDIV = 'e-pivot-calc-outer-div';
/** @hidden */
var OLAP_CALCOUTERDIV = 'e-olap-calc-outer-div';
/** @hidden */
var FLAT = 'e-flat';
/** @hidden */
var FORMAT = 'e-format';
/** @hidden */
var FORMULA = 'e-pivot-formula';
/** @hidden */
var TREEVIEW = 'e-pivot-treeview';
/** @hidden */
var TREEVIEWOUTER = 'e-pivot-treeview-outer';
/** @hidden */
var TREE_CONTAINER = 'e-treeContainer';
/** @hidden */
var CALCCANCELBTN = 'e-pivot-cancel-button';
/** @hidden */
var CALCADDBTN = 'e-pivot-add-button';
/** @hidden */
var CALCOKBTN = 'e-pivot-ok-button';
/** @hidden */
var CALCACCORD = 'e-pivot-accord';
/** @hidden */
var CALCBUTTONDIV = 'e-pivot-button-div';
/** @hidden */
var AXIS_ICON_CLASS = 'e-axis';
/** @hidden */
var AXIS_ROW_CLASS = 'e-axis-row';
/** @hidden */
var AXIS_COLUMN_CLASS = 'e-axis-column';
/** @hidden */
var AXIS_VALUE_CLASS = 'e-axis-value';
/** @hidden */
var AXIS_FILTER_CLASS = 'e-axis-filter';
/** @hidden */
var GRID_CLASS = 'e-grid';
/** @hidden */
var PIVOT_VIEW_CLASS = 'e-pivotview';
/** @hidden */
var PIVOT_ALL_FIELD_TITLE_CLASS = 'e-pivot-all-field-title';
/** @hidden */
var PIVOT_FIELD_TITLE_CLASS = 'e-pivot-field-name-title';
/** @hidden */
var PIVOT_FORMULA_TITLE_CLASS = 'e-pivot-formula-title';
/** @hidden */
var OLAP_HIERARCHY_TITLE_CLASS = 'e-olap-hierarchy-title';
/** @hidden */
var PIVOT_FORMAT_TITLE_CLASS = 'e-pivot-format-title';
/** @hidden */
var OLAP_MEMBER_TITLE_CLASS = 'e-olap-member-title';
/** @hidden */
var PIVOT_CONTEXT_MENU_CLASS = 'e-pivot-context-menu';
/** @hidden */
var MENU_DISABLE = 'e-disabled';
/** @hidden */
var MENU_HIDE = 'e-menu-hide';
/** @hidden */
var EMPTY_MEMBER_CLASS = 'e-member-prompt';
/** @hidden */
var CALC_EDIT = 'e-edit';
/** @hidden */
var CALC_EDITED = 'e-edited';
/** @hidden */
var CALC_INFO = 'e-info';
/** @hidden */
var EMPTY_FIELD = 'e-empty-field';
/** @hidden */
var FORMAT_DIALOG = 'e-pivot-formatting-dialog';
/** @hidden */
var FORMAT_CONDITION_BUTTON = 'e-format-condition-button';
/** @hidden */
var FORMAT_NEW = 'e-new-format';
/** @hidden */
var FORMAT_OUTER = 'e-format-outer-div';
/** @hidden */
var FORMAT_INNER = 'e-format-inner-div';
/** @hidden */
var FORMAT_TABLE = 'e-format-table';
/** @hidden */
var FORMAT_VALUE_LABEL = 'e-format-value-label';
/** @hidden */
var FORMAT_LABEL = 'e-format-label';
/** @hidden */
var INPUT = 'e-input';
/** @hidden */
var FORMAT_VALUE1 = 'e-format-value1';
/** @hidden */
var FORMAT_VALUE2 = 'e-format-value2';
/** @hidden */
var HIDDEN = 'e-visible-hide';
/** @hidden */
var FORMAT_INPUT_VALUE = 'e-format-input-value';
/** @hidden */
var FORMAT_VALUE_SPAN = 'e-format-value-span';
/** @hidden */
var FORMAT_FONT_COLOR = 'e-format-font-color';
/** @hidden */
var FORMAT_BACK_COLOR = 'e-format-back-color';
/** @hidden */
var FORMAT_VALUE_PREVIEW = 'e-format-value-preview';
/** @hidden */
var FORMAT_COLOR_PICKER = 'e-format-color-picker';
/** @hidden */
var GRANDTOTAL_CHECKBOX_TABLE = 'e-grandtotal-checkbox-table';
/** @hidden */
var FORMAT_DELETE_ICON = 'e-format-delete-icon';
/** @hidden */
var FORMAT_DELETE_BUTTON = 'e-format-delete-button';
/** @hidden */
var SELECTED_COLOR = 'e-selected-color';
/** @hidden */
var DIALOG_HEADER = 'e-dlg-header';
/** @hidden */
var FORMAT_APPLY_BUTTON = 'e-format-apply-button';
/** @hidden */
var FORMAT_CANCEL_BUTTON = 'e-format-cancel-button';
/** @hidden */
var FORMAT_ROUND_BUTTON = 'e-small e-round';
/** @hidden */
var VIRTUALTRACK_DIV = 'e-virtualtrack';
/** @hidden */
var VIRTUALTABLE_DIV = 'e-movablescrolldiv';
/** @hidden */
var CONTENT_VIRTUALTABLE_DIV = 'e-content-virtualtable';
/** @hidden */
var VIRTUALSCROLL_DIV = 'e-movablescroll';
/** @hidden */
var MOVABLEHEADER_DIV = 'e-headercontent';
/** @hidden */
var DEFER_APPLY_BUTTON = 'e-defer-apply-button';
/** @hidden */
var DEFER_CANCEL_BUTTON = 'e-defer-cancel-button';
/** @hidden */
var LAYOUT_FOOTER = 'e-layout-footer';
/** @hidden */
var CELL_SELECTED_BGCOLOR = 'e-cellselectionbackground';
/** @hidden */
var SELECTED_BGCOLOR = 'e-selectionbackground';
/** @hidden */
var BUTTON_LAYOUT = 'e-button-layout';
/** @hidden */
var CHECKBOX_LAYOUT = 'e-checkbox-layout';
/** @hidden */
var CHECKBOX_CONTAINER = 'e-checkbox-wrapper';
/** @hidden */
var DEFER_UPDATE_BUTTON = 'e-defer-update-btn';
/** @hidden */
var HEADERCONTENT = 'e-headercontent';
/** @hidden */
var BACK_ICON = 'e-field-list-back-icon';
/** @hidden */
var TITLE_MOBILE_HEADER = 'e-title-mobile-header';
/** @hidden */
var TITLE_MOBILE_CONTENT = 'e-title-mobile-content';
/** @hidden */
var ROW_CELL_CLASS = 'e-rowcell';
/** @hidden */
var CELL_ACTIVE_BGCOLOR = 'e-active';
/** @hidden */
var SPAN_CLICKED = 'e-spanclicked';
/** @hidden */
var ROW_SELECT = 'e-rowselect';
/** @hidden */
var GRID_HEADER = 'e-gridheader';
/** @hidden */
var GRID_CONTENT = 'e-gridcontent';
/** @hidden */
var GRID_EXPORT = 'e-export';
/** @hidden */
var PIVOTVIEW_EXPORT = 'e-pivotview-export';
/** @hidden */
var PIVOTVIEW_GRID = 'e-pivotview-grid';
/** @hidden */
var PIVOTVIEW_EXPAND = 'e-pivotview-expand';
/** @hidden */
var PIVOTVIEW_COLLAPSE = 'e-pivotview-collapse';
/** @hidden */
var PIVOTVIEW_GROUP = 'e-pivotview-group';
/** @hidden */
var PIVOTVIEW_UN_GROUP = 'e-pivotview-ungroup';
/** @hidden */
var GRID_PDF_EXPORT = 'e-pivotview-pdf-export';
/** @hidden */
var GRID_EXCEL_EXPORT = 'e-pivotview-excel-export';
/** @hidden */
var GRID_CSV_EXPORT = 'e-pivotview-csv-export';
/** @hidden */
var GRID_PNG_EXPORT = 'e-pivotview-png-export';
/** @hidden */
var GRID_JPEG_EXPORT = 'e-pivotview-jpeg-export';
/** @hidden */
var GRID_SVG_EXPORT = 'e-pivotview-svg-export';
/** @hidden */
var GRID_LOAD = 'e-load-report';
/** @hidden */
var GRID_NEW = 'e-new-report';
/** @hidden */
var GRID_RENAME = 'e-rename-report';
/** @hidden */
var GRID_REMOVE = 'e-remove-report';
/** @hidden */
var GRID_SAVEAS = 'e-saveas-report';
/** @hidden */
var GRID_SAVE = 'e-save-report';
/** @hidden */
var GRID_SUB_TOTAL = 'e-sub-total';
/** @hidden */
var GRID_GRAND_TOTAL = 'e-grand-total';
/** @hidden */
var GRID_FORMATTING = 'e-toolbar-formatting';
/** @hidden */
var GRID_TOOLBAR = 'e-pivot-toolbar';
/** @hidden */
var GRID_REPORT_LABEL = 'e-pivotview-report-label';
/** @hidden */
var GRID_REPORT_INPUT = 'e-pivotview-report-input';
/** @hidden */
var GRID_REPORT_OUTER = 'e-report-outer';
/** @hidden */
var GRID_REPORT_DIALOG = 'e-pivotview-report-dialog';
/** @hidden */
var TOOLBAR_FIELDLIST = 'e-toolbar-fieldlist';
/** @hidden */
var TOOLBAR_GRID = 'e-toolbar-grid';
/** @hidden */
var TOOLBAR_CHART = 'e-toolbar-chart';
/** @hidden */
var REPORT_LIST_DROP = 'e-reportlist-drop';
/** @hidden */
var PIVOTCHART = 'e-pivotchart';
/** @hidden */
var GROUP_CHART_ROW = 'e-group-chart-rows';
/** @hidden */
var GROUP_CHART_COLUMN = 'e-group-chart-columns';
/** @hidden */
var GROUP_CHART_VALUE = 'e-group-chart-values';
/** @hidden */
var GROUP_CHART_MULTI_VALUE = 'e-group-chart-multi-values';
/** @hidden */
var GROUP_CHART_ACCUMULATION_COLUMN = 'e-group-chart-accumulation-column';
/** @hidden */
var GROUP_CHART_FILTER = 'e-group-chart-filters';
/** @hidden */
var GROUP_CHART_VALUE_DROPDOWN_DIV = 'e-group-chart-values-drodown-div';
/** @hidden */
var GROUP_CHART_VALUE_DROPDOWN = 'e-group-chart-values-drodown';
/** @hidden */
var GROUP_CHART_COLUMN_DROPDOWN_DIV = 'e-group-chart-columns-dropdown-div';
/** @hidden */
var GROUP_CHART_COLUMN_DROPDOWN = 'e-group-chart-columns-dropdown';
/** @hidden */
var CHART_GROUPING_BAR_CLASS = 'e-chart-grouping-bar';
/** @hidden */
var PIVOT_DISABLE_ICON = 'e-pivotview-disable-icon';
/** @hidden */
var PIVOT_SELECT_ICON = 'e-pivotview-select-icon';
/** @hidden */
var VALUESHEADER = 'e-valuesheader';
/** @hidden */
var ICON_ASC = 'e-icon-ascending';
/** @hidden */
var ICON_DESC = 'e-icon-descending';
/** @hidden */
var GRID_GROUPING_BAR_CLASS = 'e-pivot-grouping-bar';
/** @hidden */
var MDX_QUERY = 'e-mdx-query';
/** @hidden */
var MDX_QUERY_CONTENT = 'e-mdx-query-content';
/** @hidden */
var GRID_MDX_DIALOG = 'e-pivotview-mdx-dialog';
/** @hidden */
var GRID_MDX = 'e-mdx';
/** @hidden */
var FORMATTING_DIALOG = 'e-pivot-format-dialog';
/** @hidden */
var FORMATTING_DIALOG_OUTER = 'e-pivot-format-dialog-outer';
/** @hidden */
var FORMATTING_VALUE_LABLE = 'e-pivot-format-value-lable';
/** @hidden */
var FORMATTING_VALUE_DROP = 'e-pivot-format-value-drop';
/** @hidden */
var FORMATTING_FORMAT_LABLE = 'e-pivot-format-lable';
/** @hidden */
var FORMATTING_FORMAT_DROP = 'e-pivot-format-drop';
/** @hidden */
var FORMATTING_CUSTOM_LABLE = 'e-pivot-format-custom-lable';
/** @hidden */
var FORMATTING_CUSTOM_TEXT = 'e-pivot-format-custom-text';
/** @hidden */
var FORMATTING_GROUPING_LABLE = 'e-pivot-format-grouping-lable';
/** @hidden */
var FORMATTING_GROUPING_DROP = 'e-pivot-format-grouping-drop';
/** @hidden */
var FORMATTING_DECIMAL_LABLE = 'e-pivot-format-decimal-lable';
/** @hidden */
var FORMATTING_DECIMAL_DROP = 'e-pivot-format-decimal-drop';
/** @hidden */
var FORMATTING_TOOLBAR = 'e-pivot-format-toolbar';
/** @hidden */
var FORMATTING_TABLE = 'e-pivot-format-table';
/** @hidden */
var FORMATTING_MENU = 'e-pivot-format-menu';
/** @hidden */
var NUMBER_FORMATTING_MENU = 'e-pivot-number-format-menu';
/** @hidden */
var EMPTY_FORMAT = 'e-pivot-conditional-empty-format';
/** @hidden */
var CONDITIONAL_FORMATTING_MENU = 'e-pivot-conditional-format-menu';
/** @hidden */
var PIVOTCHART_INNER = 'e-pivotchart-inner';
/** @hidden */
var PIVOTCHART_TYPE_DIALOG = 'e-pivotchart-type-dialog';
/** @hidden */
var FORMAT_FONT_COLOR_PICKER = 'e-format-font-color-picker';
/** @hidden */
var GROUP_PIVOT_ROW = 'e-group-pivot-rows';
/** @hidden */
var TOOLBAR_MENU = 'e-pivot-toolbar-menu';
/** @hidden */
var DISABLE_FIRST_PAGE = 'e-firstpagedisabled';
/** @hidden */
var DISABLE_PREV_PAGE = 'e-prevpagedisabled';
/** @hidden */
var DISABLE_NEXT_PAGE = 'e-nextpagedisabled';
/** @hidden */
var DISABLE_LAST_PAGE = 'e-lastpagedisabled';
/** @hidden */
var GRID_PAGER = 'e-pivot-pager';
/** @hidden */
var GRID_PAGER_DIV = 'e-pivot-pager-maindiv';
/** @hidden */
var PIVOT_ROW_PAGER_DIV = 'e-pivot-pager-row-maindiv';
/** @hidden */
var PIVOT_COLUMN_PAGER_DIV = 'e-pivot-pager-column-maindiv';
/** @hidden */
var PIVOT_ROW_PAGER_SETTINGS = 'e-pivot-row-pager-settings';
/** @hidden */
var PIVOT_COLUMN_PAGER_SETTINGS = 'e-pivot-column-pager-settings';
/** @hidden */
var PIVOT_BOTH_PAGER_SETTINGS = 'e-pivot-both-pager-settings';
/** @hidden */
var PIVOT_PAGER_CONTAINER = 'e-pagercontainer';
/** @hidden */
var PIVOT_V_SEPARATOR = 'e-pivotview-vseparator';
/** @hidden */
var PIVOT_H_SEPARATOR = 'e-pivotview-hseparator';
/** @hidden */
var PIVOT_TEXT_DIV = 'e-pivotview-text-div';
/** @hidden */
var PIVOT_TEXT_DIV_1 = 'e-pivotview-text-div-1';
/** @hidden */
var PIVOT_ROW_SIZE = 'e-pivotview-row-size';
/** @hidden */
var PIVOT_ROW_PAGER_NUMBER = 'e-pivotview-row-pagerNumber';
/** @hidden */
var PIVOT_COLUMN_SIZE = 'e-pivotview-column-size';
/** @hidden */
var PIVOT_COLUMN_PAGER_NUMBER = 'e-pivotview-column-pagerNumber';
/** @hidden */
var PIVOT_ROW_PAGER_STRING = 'e-pivotview-row-pagerString';
/** @hidden */
var PIVOT_COLUMN_PAGER_STRING = 'e-pivotview-column-pagerString';
/** @hidden */
var PIVOT_ROW_OF_STRING = 'e-pivot-row-of-string';
/** @hidden */
var PIVOT_COLUMN_OF_STRING = 'e-pivot-column-of-string';
/** @hidden */
var PIVOT_ROW_DROPDOWN = 'e-pivot-pager-row-dropdown';
/** @hidden */
var PIVOT_COLUMN_DROPDOWN = 'e-pivot-pager-column-dropdown';
/** @hidden */
var PIVOT_ROW_SIZE_LIST = 'e-pivot-row-size-list';
/** @hidden */
var PIVOT_COLUMN_SIZE_LIST = 'e-pivot-column-size-list';
/** @hidden */
var INVERSE = 'e-inverse-view';
/** @hidden */
var COMPACT_VIEW = 'e-compact-view';
/** @hidden */
var PAGE_SIZE_DISABLE = 'e-page-size-disable';
/** @hidden */
var PIVOT_ROW_OF_STRING_MAINDIV = 'e-pivot-row-of-string-maindiv';
/** @hidden */
var PIVOT_COLUMN_OF_STRING_MAINDIV = 'e-pivot-column-of-string-maindiv';
/** @hidden */
var PIVOT_PAGE_SIZE_LIST_MAINDIV = 'e-pager-dropdown';
/** @hidden */
var PIVOT_FIRST_ICON_DEFAULT = 'e-first e-icons e-icon-first';
/** @hidden */
var PIVOT_PREV_ICON_DEFAULT = 'e-prev e-icons e-icon-prev';
/** @hidden */
var PIVOT_NEXT_ICON_DEFAULT = 'e-next e-icons e-icon-next';
/** @hidden */
var PIVOT_LAST_ICON_DEFAULT = 'e-last e-icons e-icon-last';
/** @hidden */
var PIVOT_FIRST_ICON_ENABLE = 'e-firstpage e-pager-default';
/** @hidden */
var PIVOT_PREV_ICON_ENABLE = 'e-prevpage e-pager-default';
/** @hidden */
var PIVOT_NEXT_ICON_ENABLE = 'e-nextpage e-pager-default';
/** @hidden */
var PIVOT_LAST_ICON_ENABLE = 'e-lastpage e-pager-default';
/** @hidden */
var GRID_PAGER_TOP = 'e-pivot-pager-top';
/** @hidden */
var GRID_PAGER_BOTTOM = 'e-pivot-pager-bottom';
/** @hidden */
var GRID_PAGER_SINGLE_DIV = 'e-pivot-pager-single-maindiv';
/** @hidden */
var PIVOT_PAGER_NAV_CONTAINER = 'e-pivot-pager-nav-container';
/** @hidden */
var PIVOT_PAGER_INFO_CONTAINER = 'e-pivot-pager-info-container';
/** @hidden */
var PIVOT_CELL_CONTAINER = 'e-pivotcell-container';
/** @hidden */
var PIVOT_ROW_CONTAINER = 'e-pivotrow-container';
/** @hidden */
var PIVOT_FILTER_TAB_CONTAINER = 'e-filter-tab-container';
/** @hidden */
var PIVOT_FILTER_MEMBER_LIMIT = 'e-node-limit';
/** @hidden */
var FREEZED_CELL = 'e-leftfreeze';
/** @hidden */
var PIVOT_CONTENT_LOADER = 'e-pivot-content-loader';
/** @hidden */
var PIVOT_HIDE_LOADER = 'e-hide-loader';
/** @hidden */
var COLLAPSIBLE = 'e-icon-collapsible';
/** @hidden */
var EXPANDABLE = 'e-icon-expandable';
/** @hidden */
var PIVOT_VIEW_AUTOFIT = 'e-pivotview-autofit';
/** @hidden */
var RHANDLER = 'e-rhandler';
/** @hidden */
var RCURSOR = 'e-rcursor';
/** @hidden */
var RESIZED = 'e-resized';
/** @hidden */
var TABULAR_ROW_BUTTON = 'e-tabular-row-btn';
/** @hidden */
var TABULAR_PIVOT_BUTTON = 'e-tabular-pvt-btn';
/** @hidden */
var GROUP_ROW = 'e-group-row';
/** @hidden */
var FREEZE_LEFT_BORDER = 'e-freezeleftborder';
/** @hidden */
var ROWCELL = 'e-rowcell';
/** @hidden */
var ROW_CLASS = 'e-row';
/** @hidden */
var TABULAR_GROUP_ROWS = 'e-tabular-group-rows';
/** @hidden */
var TABULAR_LAYOUT_HEADER = 'e-tabular-layout-header';
/**
* This is a file to perform common utility for OLAP and Relational datasource
*
* @hidden
*/
var PivotUtil = /** @__PURE__ @class */ (function () {
function PivotUtil() {
}
PivotUtil.getType = function (value) {
var val;
var dateValue = new Date(value);
if (typeof value === 'boolean') {
val = 'boolean';
}
else if (!isNaN(Number(value))) {
val = 'number';
}
else if (dateValue instanceof Date && !isNaN(dateValue.valueOf())) {
val = (dateValue && dateValue.getDay() && (dateValue.getHours() > 0 || dateValue.getMinutes() > 0 ||
dateValue.getSeconds() > 0 || dateValue.getMilliseconds() > 0) ? 'datetime' : 'date');
}
else {
val = typeof (value);
}
return val;
};
PivotUtil.resetTime = function (date) {
date.setHours(0, 0, 0, 0);
return date;
};
PivotUtil.getClonedData = function (data) {
var clonedData = [];
if (data) {
for (var _i = 0, _a = data; _i < _a.length; _i++) {
var item = _a[_i];
var fields = Object.keys(item);
var keyPos = 0;
var framedSet = {};
while (keyPos < fields.length) {
framedSet[fields[keyPos]] = item[fields[keyPos]];
keyPos++;
}
clonedData.push(framedSet);
}
}
return clonedData;
};
PivotUtil.getClonedCSVData = function (data) {
var clonedData = data.map(function (row) { return row.slice(); });
return clonedData;
};
PivotUtil.getDefinedObj = function (data) {
var keyPos = 0;
var framedSet = {};
if (!(data === null || data === undefined)) {
var fields = Object.keys(data);
while (keyPos < fields.length) {
if (!(data[fields[keyPos]] === null
|| data[fields[keyPos]] === undefined)) {
framedSet[fields[keyPos]] = data[fields[keyPos]];
}
keyPos++;
}
}
else {
framedSet = data;
}
return framedSet;
};
PivotUtil.inArray = function (value, collection) {
if (collection) {
for (var i = 0, cnt = collection.length; i < cnt; i++) {
if (collection[i] === value) {
return i;
}
}
}
return -1;
};
PivotUtil.setPivotProperties = function (control, properties) {
control.allowServerDataBinding = false;
if (control.pivotGridModule) {
control.pivotGridModule.allowServerDataBinding = false;
}
control.setProperties(properties, true);
control.allowServerDataBinding = true;
if (control.pivotGridModule) {
control.pivotGridModule.allowServerDataBinding = true;
}
};
PivotUtil.getClonedDataSourceSettings = function (dataSourceSettings) {
var clonesDataSource = this.getDefinedObj({
type: dataSourceSettings.type,
catalog: dataSourceSettings.catalog,
cube: dataSourceSettings.cube,
providerType: dataSourceSettings.providerType,
url: dataSourceSettings.url,
localeIdentifier: dataSourceSettings.localeIdentifier,
excludeFields: isNullOrUndefined(dataSourceSettings.excludeFields) ? [] : dataSourceSettings.excludeFields.slice(),
expandAll: dataSourceSettings.expandAll,
allowLabelFilter: dataSourceSettings.allowLabelFilter,
allowValueFilter: dataSourceSettings.allowValueFilter,
allowMemberFilter: dataSourceSettings.allowMemberFilter,
enableSorting: dataSourceSettings.enableSorting ? true : false,
rows: this.cloneFieldSettings(dataSourceSettings.rows),
columns: this.cloneFieldSettings(dataSourceSettings.columns),
filters: this.cloneFieldSettings(dataSourceSettings.filters),
values: this.cloneFieldSettings(dataSourceSettings.values),
filterSettings: this.cloneFilterSettings(dataSourceSettings.filterSettings),
sortSettings: this.cloneSortSettings(dataSourceSettings.sortSettings),
drilledMembers: this.cloneDrillMemberSettings(dataSourceSettings.drilledMembers),
valueSortSettings: this.CloneValueSortObject(dataSourceSettings.valueSortSettings),
valueAxis: dataSourceSettings.valueAxis,
valueIndex: dataSourceSettings.valueIndex,
grandTotalsPosition: dataSourceSettings.grandTotalsPosition,
formatSettings: this.cloneFormatSettings(dataSourceSettings.formatSettings),
calculatedFieldSettings: this.cloneCalculatedFieldSettings(dataSourceSettings.calculatedFieldSettings),
fieldMapping: this.cloneFieldSettings(dataSourceSettings.fieldMapping),
showSubTotals: dataSourceSettings.showSubTotals,
showRowSubTotals: dataSourceSettings.showRowSubTotals,
showColumnSubTotals: dataSourceSettings.showColumnSubTotals,
subTotalsPosition: dataSourceSettings.subTotalsPosition,
showGrandTotals: dataSourceSettings.showGrandTotals,
showRowGrandTotals: dataSourceSettings.showRowGrandTotals,
showColumnGrandTotals: dataSourceSettings.showColumnGrandTotals,
showHeaderWhenEmpty: dataSourceSettings.showHeaderWhenEmpty,
alwaysShowValueHeader: dataSourceSettings.alwaysShowValueHeader,
conditionalFormatSettings: this.cloneConditionalFormattingSettings(dataSourceSettings.conditionalFormatSettings),
emptyCellsTextContent: dataSourceSettings.emptyCellsTextContent,
groupSettings: this.cloneGroupSettings(dataSourceSettings.groupSettings),
showAggregationOnValueField: dataSourceSettings.showAggregationOnValueField,
authentication: this.CloneAuthenticationObject(dataSourceSettings.authentication)
});
return clonesDataSource;
};
PivotUtil.getClonedFieldList = function (fieldListObj, isMemberIncluded) {
var keys = Object.keys(fieldListObj);
var clonedfieldlistObj = {};
for (var i = 0, keysLength = keys.length; i < keysLength; i++) {
var fieldlistObj = fieldListObj[keys[i]];
if (fieldListObj[keys[i]]) {
clonedfieldlistObj[keys[i]] = {
type: fieldlistObj.type,
caption: fieldlistObj.caption,
id: fieldlistObj.id,
isSelected: fieldlistObj.isSelected,
sort: fieldlistObj.sort,
filterType: fieldlistObj.filterType,
index: fieldlistObj.index,
filter: isMemberIncluded ? [] : fieldlistObj.filter,
isCustomField: fieldlistObj.isCustomField,
showRemoveIcon: fieldlistObj.showRemoveIcon,
showFilterIcon: fieldlistObj.showFilterIcon,
showSortIcon: fieldlistObj.showSortIcon,
showNoDataItems: fieldlistObj.showNoDataItems,
isCalculatedField: fieldlistObj.isCalculatedField,
showEditIcon: fieldlistObj.showEditIcon,
showValueTypeIcon: fieldlistObj.showValueTypeIcon,
allowDragAndDrop: fieldlistObj.allowDragAndDrop,
showSubTotals: fieldlistObj.showSubTotals,
expandAll: fieldlistObj.expandAll,
pid: fieldlistObj.pid,
aggregateType: fieldlistObj.aggregateType,
baseField: fieldlistObj.baseField,
baseItem: fieldlistObj.baseItem,
dateMember: isMemberIncluded ? [] : this.cloneDateMembers(fieldlistObj.dateMember),
members: isMemberIncluded ? {} : this.cloneFormatMembers(fieldlistObj.members),
formatString: fieldlistObj.formatString,
format: fieldlistObj.format,
formula: fieldlistObj.formula,
isExcelFilter: fieldlistObj.isExcelFilter,
membersOrder: (fieldlistObj.membersOrder ? fieldlistObj.membersOrder.slice() :
fieldlistObj.membersOrder),
isAlphanumeric: fieldlistObj.isAlphanumeric,
tag: fieldlistObj.tag,
expanded: fieldlistObj.expanded,
spriteCssClass: fieldlistObj.spriteCssClass,
name: fieldlistObj.name,
defaultHierarchy: fieldlistObj.defaultHierarchy,
hasAllMember: fieldlistObj.hasAllMember,
allMember: fieldlistObj.allMember,
isChecked: fieldlistObj.isChecked,
filterMembers: this.cloneFieldMembers(fieldlistObj.filterMembers),
childMembers: isMemberIncluded ? [] : this.cloneFieldMembers(fieldlistObj.childMembers),
searchMembers: isMemberIncluded ? [] : this.cloneFieldMembers(fieldlistObj.searchMembers),
htmlAttributes: this.getDefinedObj(fieldlistObj.htmlAttributes),
currrentMembers: isMemberIncluded ? {} : this.cloneFormatMembers(fieldlistObj.currrentMembers),
isHierarchy: fieldlistObj.isHierarchy,
isNamedSets: fieldlistObj.isNamedSets,
actualFilter: fieldlistObj.actualFilter ? fieldlistObj.actualFilter.slice() : fieldlistObj.actualFilter,
levels: isMemberIncluded ? [] : this.cloneFieldMembers(fieldlistObj.levels),
levelCount: fieldlistObj.levelCount,
fieldType: fieldlistObj.fieldType,
memberType: fieldlistObj.memberType,
parentHierarchy: fieldlistObj.parentHierarchy
};
}
}
return clonedfieldlistObj;
};
PivotUtil.cloneDateMembers = function (collection) {
if (collection) {
var clonedCollection = [];
for (var _i = 0, collection_1 = collection; _i < collection_1.length; _i++) {
var set = collection_1[_i];
clonedCollection.push({
formattedText: set.formattedText,
actualText: set.actualText
});
}
return clonedCollection;
}
else {
return collection;
}
};
PivotUtil.cloneFormatMembers = function (collection) {
if (collection) {
var keys = Object.keys(collection);
var clonedFormatMembers = {};
for (var i = 0, keysLength = keys.length; i < keysLength; i++) {
var cloneFormatMembersObj = collection[keys[i]];
clonedFormatMembers[keys[i]] = {
index: cloneFormatMembersObj.index ? cloneFormatMembersObj.index.slice() : cloneFormatMembersObj.index,
isDrilled: cloneFormatMembersObj.isDrilled,
ordinal: cloneFormatMembersObj.ordinal
};
}
return clonedFormatMembers;
}
else {
return collection;
}
};
PivotUtil.cloneFieldMembers = function (collection) {
if (collection) {
var clonedCollection = [];
for (var _i = 0, collection_2 = collection; _i < collection_2.length; _i++) {
var set = collection_2[_i];
clonedCollection.push({
caption: set.caption,
hasChildren: set.hasChildren,
id: set.id,
isSelected: set.isSelected,
name: set.name,
tag: set.tag,
htmlAttributes: this.getDefinedObj(set.htmlAttributes),
type: set.type,
spriteCssClass: set.spriteCssClass,
pid: set.pid,
isChecked: set.isChecked
});
}
return clonedCollection;
}
else {
return collection;
}
};
PivotUtil.updateDataSourceSettings = function (control, dataSourceSettings) {
if (control) {
this.setPivotProperties(control, {
dataSourceSettings: this.getDefinedObj({
type: dataSourceSettings.type,
catalog: dataSourceSettings.catalog,
cube: dataSourceSettings.cube,
providerType: dataSourceSettings.providerType,
url: dataSourceSettings.url,
localeIdentifier: dataSourceSettings.localeIdentifier,
excludeFields: isNullOrUndefined(dataSourceSettings.excludeFields) ? [] : dataSourceSettings.excludeFields,
expandAll: dataSourceSettings.expandAll,
allowLabelFilter: dataSourceSettings.allowLabelFilter,
allowValueFilter: dataSourceSettings.allowValueFilter,
allowMemberFilter: dataSourceSettings.allowMemberFilter,
enableSorting: dataSourceSettings.enableSorting ? true : false,
rows: dataSourceSettings.rows,
columns: dataSourceSettings.columns,
filters: dataSourceSettings.filters,
values: dataSourceSettings.values,
filterSettings: dataSourceSettings.filterSettings,
sortSettings: dataSourceSettings.sortSettings,
drilledMembers: dataSourceSettings.drilledMembers,
valueSortSettings: dataSourceSettings.valueSortSettings,
valueAxis: dataSourceSettings.valueAxis,
grandTotalsPosition: dataSourceSettings.grandTotalsPosition,
formatSettings: dataSourceSettings.formatSettings,
calculatedFieldSettings: dataSourceSettings.calculatedFieldSettings,
fieldMapping: dataSourceSettings.fieldMapping,
showSubTotals: dataSourceSettings.showSubTotals,
showRowSubTotals: dataSourceSettings.showRowSubTotals,
showColumnSubTotals: dataSourceSettings.showColumnSubTotals,
subTotalsPosition: dataSourceSettings.subTotalsPosition,
showGrandTotals: dataSourceSettings.showGrandTotals,
showRowGrandTotals: dataSourceSettings.showRowGrandTotals,
showColumnGrandTotals: dataSourceSettings.showColumnGrandTotals,
showHeaderWhenEmpty: dataSourceSettings.showHeaderWhenEmpty,
alwaysShowValueHeader: dataSourceSettings.alwaysShowValueHeader,
conditionalFormatSettings: dataSourceSettings.conditionalFormatSettings,
emptyCellsTextContent: dataSourceSettings.emptyCellsTextContent,
groupSettings: dataSourceSettings.groupSettings,
showAggregationOnValueField: dataSourceSettings.showAggregationOnValueField,
authentication: this.CloneAuthenticationObject(dataSourceSettings.authentication)
})
});
}
};
PivotUtil.cloneFieldSettings = function (collection) {
if (collection) {
var clonedCollection = [];
for (var _i = 0, collection_3 = collection; _i < collection_3.length; _i++) {
var set = collection_3[_i];
clonedCollection.push(this.getDefinedObj({
name: set.name,
caption: set.caption,
axis: set.axis,
baseField: set.baseField,
baseItem: set.baseItem,
isCalculatedField: set.isCalculatedField,
isNamedSet: set.isNamedSet,
showNoDataItems: set.showNoDataItems,
showSubTotals: set.showSubTotals,
type: set.type,
dataType: set.dataType,
showFilterIcon: set.showFilterIcon,
showSortIcon: set.showSortIcon,
showRemoveIcon: set.showRemoveIcon,
showValueTypeIcon: set.showValueTypeIcon,
showEditIcon: set.showEditIcon,
allowDragAndDrop: set.allowDragAndDrop,
expandAll: set.expandAll,
groupName: set.groupName
}));
}
return clonedCollection;
}
else {
return collection;
}
};
PivotUtil.cloneOlapFieldSettings = function (collection) {
if (collection) {
var clonedCollection = [];
for (var _i = 0, collection_4 = collection; _i < collection_4.length; _i++) {
var set = collection_4[_i];
clonedCollection.push(this.getDefinedObj({
caption: set.caption,
hasChildren: set.hasChildren,
id: set.id,
isSelected: set.isSelected,
name: set.name,
spriteCssClass: set.spriteCssClass,
tag: set.tag,
type: set.type,
pid: set.pid,
expanded: set.expanded,
defaultHierarchy: set.defaultHierarchy,
hasAllMember: set.hasAllMember,
allMember: set.allMember,
isChecked: set.isChecked,
filterMembers: set.filterMembers,
formula: set.formula,
childMembers: set.childMembers,
searchMembers: set.searchMembers,
htmlAttributes: this.getDefinedObj(set.htmlAttributes),
currrentMembers: set.currrentMembers,
isHierarchy: set.isHierarchy,
isNamedSets: set.isNamedSets,
formatString: set.formatString,
actualFilter: set.actualFilter,
levels: set.levels,
levelCount: set.levelCount,
memberType: set.memberType,
fieldType: set.fieldType,
parentHierarchy: set.parentHierarchy
}));
}
return clonedCollection;
}
else {
return collection;
}
};
PivotUtil.cloneFilterSettings = function (collection) {
if (collection) {
var clonedCollection = [];
for (var _i = 0, collection_5 = collection; _i < collection_5.length; _i++) {
var set = collection_5[_i];
clonedCollection.push(this.getDefinedObj({
name: set.name,
type: set.type,
condition: set.condition,
items: set.items ? set.items.slice() : set.items,
levelCount: set.levelCount,
measure: set.measure,
selectedField: set.selectedField,
showDateFilter: set.showDateFilter,
showLabelFilter: set.showLabelFilter,
showNumberFilter: set.showNumberFilter,
value1: set.value1,
value2: set.value2
}));
}
return clonedCollection;
}
else {
return collection;
}
};
PivotUtil.cloneSortSettings = function (collection) {
if (collection) {
var clonedCollection = [];
for (var _i = 0, collection_6 = collection; _i < collection_6.length; _i++) {
var set = collection_6[_i];
clonedCollection.push(this.getDefinedObj({
name: set.name,
order: set.order,
membersOrder: set.membersOrder ? set.membersOrder.slice() : set.membersOrder
}));
}
return clonedCollection;
}
else {
return collection;
}
};
/**
* It format the headers of pivot table.
*
* @param {IAxisSet} headerCell - It contains the header cell.
* @param {PivotEngine} engine - It contains the instance of pivot engine.
* @returns {IAxisSet} - It returns the formatted header data as IAxisSet.
* @hidden
*/
PivotUtil.getFormattedHeader = function (headerCell, engine) {
var clonedHeader = PivotUtil.frameHeaderWithKeys(headerCell);
if (clonedHeader.valueSort && clonedHeader.valueSort['axis']) {
var fieldName = clonedHeader.valueSort['axis'];
var isDateType = this.isDateField(fieldName, engine);
clonedHeader.formattedText = isDateType || !engine.formatFields[fieldName] || headerCell.isSum === true ?
clonedHeader.formattedText : engine.getFormattedValue(clonedHeader.actualText, fieldName).formattedText;
}
return clonedHeader;
};
/**
* It format the members of field.
*
* @param {IMembers} members - It contains the members.
* @param {string} fieldName - It contains the field Name.
* @param {PivotEngine} engine - It contains the instance of pivot engine.
* @param {boolean} isLabelFilter - Specifies if this is a label-based filter.
* @param {boolean} isGroupedField - Specifies if this is a grouped field.
* @returns {IMembers} - It returns the formatted members as IMembers.
* @hidden
*/
PivotUtil.getFormattedMembers = function (members, fieldName, engine, isLabelFilter, isGroupedField) {
var isDateField = this.isDateField(fieldName, engine);
if (isDateField || engine.groupingFields[fieldName]) {
var fieldMembers = {};
var keys = Object.keys(members);
var dateMember = engine.fieldList[fieldName].dateMember;
for (var i = 0, j = keys.length; i < j; i++) {
var values = members[keys[i]];
if (isDateField && (isLabelFilter || isGroupedField)) {
fieldMembers[values.caption] = values;
}
else {
var commonValue = dateMember[values.ordinal - 1].actualText;
fieldMembers[commonValue] = values;
}
}
return fieldMembers;
}
return members;
};
/**
* It determines whether the specified field is of date type.
*
* @param {string} fieldName - It contains the field Name.
* @param {PivotEngine} engineModule - It contains the instance of pivot engine.
* @returns {boolean} - It returns whether the field is of date type or not.
* @hidden
*/
PivotUtil.isDateField = function (fieldName, engineModule) {
return (engineModule.formatFields[fieldName] &&
(['date', 'dateTime', 'time'].indexOf(engineModule.formatFields[fieldName].type) > -1));
};
/**
*