devextreme-vue
Version:
DevExtreme Vue UI and Visualization Components
470 lines (468 loc) • 15.1 kB
JavaScript
/*!
* devextreme-vue
* Version: 25.1.5
* Build date: Wed Sep 03 2025
*
* Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
*
* This software may be modified and distributed under the terms
* of the MIT license. See the LICENSE file in the root of the project for details.
*
* https://github.com/DevExpress/devextreme-vue
*/
import { defineComponent } from "vue";
import { prepareComponentConfig } from "./core/index";
import PivotGrid from "devextreme/ui/pivot_grid";
import { prepareConfigurationComponentConfig } from "./core/index";
const componentConfig = {
props: {
allowExpandAll: Boolean,
allowFiltering: Boolean,
allowSorting: Boolean,
allowSortingBySummary: Boolean,
dataFieldArea: String,
dataSource: [Array, Object],
disabled: Boolean,
elementAttr: Object,
encodeHtml: Boolean,
export: Object,
fieldChooser: Object,
fieldPanel: Object,
headerFilter: Object,
height: [Number, String],
hideEmptySummaryCells: Boolean,
hint: String,
loadPanel: Object,
onCellClick: Function,
onCellPrepared: Function,
onContentReady: Function,
onContextMenuPreparing: Function,
onDisposing: Function,
onExporting: Function,
onInitialized: Function,
onOptionChanged: Function,
rowHeaderLayout: String,
rtlEnabled: Boolean,
scrolling: Object,
showBorders: Boolean,
showColumnGrandTotals: Boolean,
showColumnTotals: Boolean,
showRowGrandTotals: Boolean,
showRowTotals: Boolean,
showTotalsPrior: String,
stateStoring: Object,
tabIndex: Number,
texts: Object,
visible: Boolean,
width: [Number, String],
wordWrapEnabled: Boolean
},
emits: {
"update:isActive": null,
"update:hoveredElement": null,
"update:allowExpandAll": null,
"update:allowFiltering": null,
"update:allowSorting": null,
"update:allowSortingBySummary": null,
"update:dataFieldArea": null,
"update:dataSource": null,
"update:disabled": null,
"update:elementAttr": null,
"update:encodeHtml": null,
"update:export": null,
"update:fieldChooser": null,
"update:fieldPanel": null,
"update:headerFilter": null,
"update:height": null,
"update:hideEmptySummaryCells": null,
"update:hint": null,
"update:loadPanel": null,
"update:onCellClick": null,
"update:onCellPrepared": null,
"update:onContentReady": null,
"update:onContextMenuPreparing": null,
"update:onDisposing": null,
"update:onExporting": null,
"update:onInitialized": null,
"update:onOptionChanged": null,
"update:rowHeaderLayout": null,
"update:rtlEnabled": null,
"update:scrolling": null,
"update:showBorders": null,
"update:showColumnGrandTotals": null,
"update:showColumnTotals": null,
"update:showRowGrandTotals": null,
"update:showRowTotals": null,
"update:showTotalsPrior": null,
"update:stateStoring": null,
"update:tabIndex": null,
"update:texts": null,
"update:visible": null,
"update:width": null,
"update:wordWrapEnabled": null,
},
computed: {
instance() {
return this.$_instance;
}
},
beforeCreate() {
this.$_WidgetClass = PivotGrid;
this.$_hasAsyncTemplate = true;
this.$_expectedChildren = {
export: { isCollectionItem: false, optionName: "export" },
fieldChooser: { isCollectionItem: false, optionName: "fieldChooser" },
fieldPanel: { isCollectionItem: false, optionName: "fieldPanel" },
headerFilter: { isCollectionItem: false, optionName: "headerFilter" },
loadPanel: { isCollectionItem: false, optionName: "loadPanel" },
pivotGridTexts: { isCollectionItem: false, optionName: "texts" },
scrolling: { isCollectionItem: false, optionName: "scrolling" },
stateStoring: { isCollectionItem: false, optionName: "stateStoring" },
texts: { isCollectionItem: false, optionName: "texts" }
};
}
};
prepareComponentConfig(componentConfig);
const DxPivotGrid = defineComponent(componentConfig);
const DxExportConfig = {
emits: {
"update:isActive": null,
"update:hoveredElement": null,
"update:enabled": null,
},
props: {
enabled: Boolean
}
};
prepareConfigurationComponentConfig(DxExportConfig);
const DxExport = defineComponent(DxExportConfig);
DxExport.$_optionName = "export";
const DxFieldChooserConfig = {
emits: {
"update:isActive": null,
"update:hoveredElement": null,
"update:allowSearch": null,
"update:applyChangesMode": null,
"update:enabled": null,
"update:height": null,
"update:layout": null,
"update:searchTimeout": null,
"update:texts": null,
"update:title": null,
"update:width": null,
},
props: {
allowSearch: Boolean,
applyChangesMode: String,
enabled: Boolean,
height: Number,
layout: Number,
searchTimeout: Number,
texts: Object,
title: String,
width: Number
}
};
prepareConfigurationComponentConfig(DxFieldChooserConfig);
const DxFieldChooser = defineComponent(DxFieldChooserConfig);
DxFieldChooser.$_optionName = "fieldChooser";
DxFieldChooser.$_expectedChildren = {
fieldChooserTexts: { isCollectionItem: false, optionName: "texts" },
texts: { isCollectionItem: false, optionName: "texts" }
};
const DxFieldChooserTextsConfig = {
emits: {
"update:isActive": null,
"update:hoveredElement": null,
"update:allFields": null,
"update:columnFields": null,
"update:dataFields": null,
"update:filterFields": null,
"update:rowFields": null,
},
props: {
allFields: String,
columnFields: String,
dataFields: String,
filterFields: String,
rowFields: String
}
};
prepareConfigurationComponentConfig(DxFieldChooserTextsConfig);
const DxFieldChooserTexts = defineComponent(DxFieldChooserTextsConfig);
DxFieldChooserTexts.$_optionName = "texts";
const DxFieldPanelConfig = {
emits: {
"update:isActive": null,
"update:hoveredElement": null,
"update:allowFieldDragging": null,
"update:showColumnFields": null,
"update:showDataFields": null,
"update:showFilterFields": null,
"update:showRowFields": null,
"update:texts": null,
"update:visible": null,
},
props: {
allowFieldDragging: Boolean,
showColumnFields: Boolean,
showDataFields: Boolean,
showFilterFields: Boolean,
showRowFields: Boolean,
texts: Object,
visible: Boolean
}
};
prepareConfigurationComponentConfig(DxFieldPanelConfig);
const DxFieldPanel = defineComponent(DxFieldPanelConfig);
DxFieldPanel.$_optionName = "fieldPanel";
DxFieldPanel.$_expectedChildren = {
fieldPanelTexts: { isCollectionItem: false, optionName: "texts" },
texts: { isCollectionItem: false, optionName: "texts" }
};
const DxFieldPanelTextsConfig = {
emits: {
"update:isActive": null,
"update:hoveredElement": null,
"update:columnFieldArea": null,
"update:dataFieldArea": null,
"update:filterFieldArea": null,
"update:rowFieldArea": null,
},
props: {
columnFieldArea: String,
dataFieldArea: String,
filterFieldArea: String,
rowFieldArea: String
}
};
prepareConfigurationComponentConfig(DxFieldPanelTextsConfig);
const DxFieldPanelTexts = defineComponent(DxFieldPanelTextsConfig);
DxFieldPanelTexts.$_optionName = "texts";
const DxHeaderFilterConfig = {
emits: {
"update:isActive": null,
"update:hoveredElement": null,
"update:allowSearch": null,
"update:allowSelectAll": null,
"update:height": null,
"update:search": null,
"update:searchTimeout": null,
"update:showRelevantValues": null,
"update:texts": null,
"update:width": null,
},
props: {
allowSearch: Boolean,
allowSelectAll: Boolean,
height: Number,
search: Object,
searchTimeout: Number,
showRelevantValues: Boolean,
texts: Object,
width: Number
}
};
prepareConfigurationComponentConfig(DxHeaderFilterConfig);
const DxHeaderFilter = defineComponent(DxHeaderFilterConfig);
DxHeaderFilter.$_optionName = "headerFilter";
DxHeaderFilter.$_expectedChildren = {
headerFilterTexts: { isCollectionItem: false, optionName: "texts" },
search: { isCollectionItem: false, optionName: "search" },
texts: { isCollectionItem: false, optionName: "texts" }
};
const DxHeaderFilterTextsConfig = {
emits: {
"update:isActive": null,
"update:hoveredElement": null,
"update:cancel": null,
"update:emptyValue": null,
"update:ok": null,
},
props: {
cancel: String,
emptyValue: String,
ok: String
}
};
prepareConfigurationComponentConfig(DxHeaderFilterTextsConfig);
const DxHeaderFilterTexts = defineComponent(DxHeaderFilterTextsConfig);
DxHeaderFilterTexts.$_optionName = "texts";
const DxLoadPanelConfig = {
emits: {
"update:isActive": null,
"update:hoveredElement": null,
"update:enabled": null,
"update:height": null,
"update:indicatorSrc": null,
"update:shading": null,
"update:shadingColor": null,
"update:showIndicator": null,
"update:showPane": null,
"update:text": null,
"update:width": null,
},
props: {
enabled: Boolean,
height: Number,
indicatorSrc: String,
shading: Boolean,
shadingColor: String,
showIndicator: Boolean,
showPane: Boolean,
text: String,
width: Number
}
};
prepareConfigurationComponentConfig(DxLoadPanelConfig);
const DxLoadPanel = defineComponent(DxLoadPanelConfig);
DxLoadPanel.$_optionName = "loadPanel";
const DxPivotGridTextsConfig = {
emits: {
"update:isActive": null,
"update:hoveredElement": null,
"update:collapseAll": null,
"update:dataNotAvailable": null,
"update:expandAll": null,
"update:exportToExcel": null,
"update:grandTotal": null,
"update:noData": null,
"update:removeAllSorting": null,
"update:showFieldChooser": null,
"update:sortColumnBySummary": null,
"update:sortRowBySummary": null,
"update:total": null,
},
props: {
collapseAll: String,
dataNotAvailable: String,
expandAll: String,
exportToExcel: String,
grandTotal: String,
noData: String,
removeAllSorting: String,
showFieldChooser: String,
sortColumnBySummary: String,
sortRowBySummary: String,
total: String
}
};
prepareConfigurationComponentConfig(DxPivotGridTextsConfig);
const DxPivotGridTexts = defineComponent(DxPivotGridTextsConfig);
DxPivotGridTexts.$_optionName = "texts";
const DxScrollingConfig = {
emits: {
"update:isActive": null,
"update:hoveredElement": null,
"update:mode": null,
"update:useNative": null,
},
props: {
mode: String,
useNative: [Boolean, String]
}
};
prepareConfigurationComponentConfig(DxScrollingConfig);
const DxScrolling = defineComponent(DxScrollingConfig);
DxScrolling.$_optionName = "scrolling";
const DxSearchConfig = {
emits: {
"update:isActive": null,
"update:hoveredElement": null,
"update:editorOptions": null,
"update:enabled": null,
"update:mode": null,
"update:timeout": null,
},
props: {
editorOptions: {},
enabled: Boolean,
mode: String,
timeout: Number
}
};
prepareConfigurationComponentConfig(DxSearchConfig);
const DxSearch = defineComponent(DxSearchConfig);
DxSearch.$_optionName = "search";
const DxStateStoringConfig = {
emits: {
"update:isActive": null,
"update:hoveredElement": null,
"update:customLoad": null,
"update:customSave": null,
"update:enabled": null,
"update:savingTimeout": null,
"update:storageKey": null,
"update:type": null,
},
props: {
customLoad: Function,
customSave: Function,
enabled: Boolean,
savingTimeout: Number,
storageKey: String,
type: String
}
};
prepareConfigurationComponentConfig(DxStateStoringConfig);
const DxStateStoring = defineComponent(DxStateStoringConfig);
DxStateStoring.$_optionName = "stateStoring";
const DxTextsConfig = {
emits: {
"update:isActive": null,
"update:hoveredElement": null,
"update:allFields": null,
"update:cancel": null,
"update:collapseAll": null,
"update:columnFieldArea": null,
"update:columnFields": null,
"update:dataFieldArea": null,
"update:dataFields": null,
"update:dataNotAvailable": null,
"update:emptyValue": null,
"update:expandAll": null,
"update:exportToExcel": null,
"update:filterFieldArea": null,
"update:filterFields": null,
"update:grandTotal": null,
"update:noData": null,
"update:ok": null,
"update:removeAllSorting": null,
"update:rowFieldArea": null,
"update:rowFields": null,
"update:showFieldChooser": null,
"update:sortColumnBySummary": null,
"update:sortRowBySummary": null,
"update:total": null,
},
props: {
allFields: String,
cancel: String,
collapseAll: String,
columnFieldArea: String,
columnFields: String,
dataFieldArea: String,
dataFields: String,
dataNotAvailable: String,
emptyValue: String,
expandAll: String,
exportToExcel: String,
filterFieldArea: String,
filterFields: String,
grandTotal: String,
noData: String,
ok: String,
removeAllSorting: String,
rowFieldArea: String,
rowFields: String,
showFieldChooser: String,
sortColumnBySummary: String,
sortRowBySummary: String,
total: String
}
};
prepareConfigurationComponentConfig(DxTextsConfig);
const DxTexts = defineComponent(DxTextsConfig);
DxTexts.$_optionName = "texts";
export default DxPivotGrid;
export { DxPivotGrid, DxExport, DxFieldChooser, DxFieldChooserTexts, DxFieldPanel, DxFieldPanelTexts, DxHeaderFilter, DxHeaderFilterTexts, DxLoadPanel, DxPivotGridTexts, DxScrolling, DxSearch, DxStateStoring, DxTexts };