k-vtable 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +151 -0
- package/cjs/ListTable-all.d.ts +3 -0
- package/cjs/ListTable-all.js +20 -0
- package/cjs/ListTable-all.js.map +1 -0
- package/cjs/ListTable-simple.d.ts +3 -0
- package/cjs/ListTable-simple.js +14 -0
- package/cjs/ListTable-simple.js.map +1 -0
- package/cjs/ListTable.d.ts +101 -0
- package/cjs/ListTable.js +682 -0
- package/cjs/ListTable.js.map +1 -0
- package/cjs/PivotChart.d.ts +100 -0
- package/cjs/PivotChart.js +755 -0
- package/cjs/PivotChart.js.map +1 -0
- package/cjs/PivotTable-all.d.ts +3 -0
- package/cjs/PivotTable-all.js +19 -0
- package/cjs/PivotTable-all.js.map +1 -0
- package/cjs/PivotTable-simple.d.ts +3 -0
- package/cjs/PivotTable-simple.js +14 -0
- package/cjs/PivotTable-simple.js.map +1 -0
- package/cjs/PivotTable.d.ts +112 -0
- package/cjs/PivotTable.js +992 -0
- package/cjs/PivotTable.js.map +1 -0
- package/cjs/body-helper/body-helper.d.ts +20 -0
- package/cjs/body-helper/body-helper.js +121 -0
- package/cjs/body-helper/body-helper.js.map +1 -0
- package/cjs/body-helper/style/ButtonStyle.d.ts +45 -0
- package/cjs/body-helper/style/ButtonStyle.js +110 -0
- package/cjs/body-helper/style/ButtonStyle.js.map +1 -0
- package/cjs/body-helper/style/CheckboxStyle.d.ts +42 -0
- package/cjs/body-helper/style/CheckboxStyle.js +104 -0
- package/cjs/body-helper/style/CheckboxStyle.js.map +1 -0
- package/cjs/body-helper/style/ImageStyle.d.ts +7 -0
- package/cjs/body-helper/style/ImageStyle.js +24 -0
- package/cjs/body-helper/style/ImageStyle.js.map +1 -0
- package/cjs/body-helper/style/MultilineTextStyle.d.ts +13 -0
- package/cjs/body-helper/style/MultilineTextStyle.js +38 -0
- package/cjs/body-helper/style/MultilineTextStyle.js.map +1 -0
- package/cjs/body-helper/style/NumberStyle.d.ts +7 -0
- package/cjs/body-helper/style/NumberStyle.js +24 -0
- package/cjs/body-helper/style/NumberStyle.js.map +1 -0
- package/cjs/body-helper/style/ProgressBarStyle.d.ts +55 -0
- package/cjs/body-helper/style/ProgressBarStyle.js +139 -0
- package/cjs/body-helper/style/ProgressBarStyle.js.map +1 -0
- package/cjs/body-helper/style/RadioStyle.d.ts +45 -0
- package/cjs/body-helper/style/RadioStyle.js +111 -0
- package/cjs/body-helper/style/RadioStyle.js.map +1 -0
- package/cjs/body-helper/style/Style.d.ts +95 -0
- package/cjs/body-helper/style/Style.js +225 -0
- package/cjs/body-helper/style/Style.js.map +1 -0
- package/cjs/body-helper/style/SwitchStyle.d.ts +36 -0
- package/cjs/body-helper/style/SwitchStyle.js +90 -0
- package/cjs/body-helper/style/SwitchStyle.js.map +1 -0
- package/cjs/body-helper/style.d.ts +11 -0
- package/cjs/body-helper/style.js +52 -0
- package/cjs/body-helper/style.js.map +1 -0
- package/cjs/chartModule.d.ts +3 -0
- package/cjs/chartModule.js +14 -0
- package/cjs/chartModule.js.map +1 -0
- package/cjs/components/axis/axis.d.ts +52 -0
- package/cjs/components/axis/axis.js +190 -0
- package/cjs/components/axis/axis.js.map +1 -0
- package/cjs/components/axis/band-scale.d.ts +18 -0
- package/cjs/components/axis/band-scale.js +54 -0
- package/cjs/components/axis/band-scale.js.map +1 -0
- package/cjs/components/axis/get-axis-attributes.d.ts +146 -0
- package/cjs/components/axis/get-axis-attributes.js +199 -0
- package/cjs/components/axis/get-axis-attributes.js.map +1 -0
- package/cjs/components/axis/get-axis-component-size.d.ts +6 -0
- package/cjs/components/axis/get-axis-component-size.js +138 -0
- package/cjs/components/axis/get-axis-component-size.js.map +1 -0
- package/cjs/components/axis/label-overlap.d.ts +3 -0
- package/cjs/components/axis/label-overlap.js +64 -0
- package/cjs/components/axis/label-overlap.js.map +1 -0
- package/cjs/components/axis/linear-scale.d.ts +48 -0
- package/cjs/components/axis/linear-scale.js +136 -0
- package/cjs/components/axis/linear-scale.js.map +1 -0
- package/cjs/components/empty-tip/empty-tip.d.ts +25 -0
- package/cjs/components/empty-tip/empty-tip.js +102 -0
- package/cjs/components/empty-tip/empty-tip.js.map +1 -0
- package/cjs/components/index.d.ts +6 -0
- package/cjs/components/index.js +44 -0
- package/cjs/components/index.js.map +1 -0
- package/cjs/components/legend/continue-legend/continue-legend.d.ts +24 -0
- package/cjs/components/legend/continue-legend/continue-legend.js +98 -0
- package/cjs/components/legend/continue-legend/continue-legend.js.map +1 -0
- package/cjs/components/legend/continue-legend/get-continue-legend-attributes.d.ts +5 -0
- package/cjs/components/legend/continue-legend/get-continue-legend-attributes.js +139 -0
- package/cjs/components/legend/continue-legend/get-continue-legend-attributes.js.map +1 -0
- package/cjs/components/legend/create-legend.d.ts +6 -0
- package/cjs/components/legend/create-legend.js +14 -0
- package/cjs/components/legend/create-legend.js.map +1 -0
- package/cjs/components/legend/discrete-legend/discrete-legend.d.ts +25 -0
- package/cjs/components/legend/discrete-legend/discrete-legend.js +115 -0
- package/cjs/components/legend/discrete-legend/discrete-legend.js.map +1 -0
- package/cjs/components/legend/discrete-legend/get-discrete-legend-attributes.d.ts +5 -0
- package/cjs/components/legend/discrete-legend/get-discrete-legend-attributes.js +90 -0
- package/cjs/components/legend/discrete-legend/get-discrete-legend-attributes.js.map +1 -0
- package/cjs/components/menu/dom/BaseMenu.d.ts +16 -0
- package/cjs/components/menu/dom/BaseMenu.js +33 -0
- package/cjs/components/menu/dom/BaseMenu.js.map +1 -0
- package/cjs/components/menu/dom/Menu.d.ts +9 -0
- package/cjs/components/menu/dom/Menu.js +24 -0
- package/cjs/components/menu/dom/Menu.js.map +1 -0
- package/cjs/components/menu/dom/MenuHandler.d.ts +24 -0
- package/cjs/components/menu/dom/MenuHandler.js +148 -0
- package/cjs/components/menu/dom/MenuHandler.js.map +1 -0
- package/cjs/components/menu/dom/logic/MenuContainer.d.ts +21 -0
- package/cjs/components/menu/dom/logic/MenuContainer.js +105 -0
- package/cjs/components/menu/dom/logic/MenuContainer.js.map +1 -0
- package/cjs/components/menu/dom/logic/MenuElement.d.ts +26 -0
- package/cjs/components/menu/dom/logic/MenuElement.js +287 -0
- package/cjs/components/menu/dom/logic/MenuElement.js.map +1 -0
- package/cjs/components/menu/dom/logic/MenuElementStyle.d.ts +1 -0
- package/cjs/components/menu/dom/logic/MenuElementStyle.js +17 -0
- package/cjs/components/menu/dom/logic/MenuElementStyle.js.map +1 -0
- package/cjs/components/react/react-custom-layout.d.ts +27 -0
- package/cjs/components/react/react-custom-layout.js +179 -0
- package/cjs/components/react/react-custom-layout.js.map +1 -0
- package/cjs/components/title/title.d.ts +21 -0
- package/cjs/components/title/title.js +89 -0
- package/cjs/components/title/title.js.map +1 -0
- package/cjs/components/tooltip/BaseTooltip.d.ts +22 -0
- package/cjs/components/tooltip/BaseTooltip.js +35 -0
- package/cjs/components/tooltip/BaseTooltip.js.map +1 -0
- package/cjs/components/tooltip/Tooltip.d.ts +5 -0
- package/cjs/components/tooltip/Tooltip.js +16 -0
- package/cjs/components/tooltip/Tooltip.js.map +1 -0
- package/cjs/components/tooltip/TooltipHandler.d.ts +31 -0
- package/cjs/components/tooltip/TooltipHandler.js +132 -0
- package/cjs/components/tooltip/TooltipHandler.js.map +1 -0
- package/cjs/components/tooltip/logic/BubbleTooltipElement.d.ts +34 -0
- package/cjs/components/tooltip/logic/BubbleTooltipElement.js +163 -0
- package/cjs/components/tooltip/logic/BubbleTooltipElement.js.map +1 -0
- package/cjs/components/tooltip/logic/BubbleTooltipElementStyle.d.ts +1 -0
- package/cjs/components/tooltip/logic/BubbleTooltipElementStyle.js +17 -0
- package/cjs/components/tooltip/logic/BubbleTooltipElementStyle.js.map +1 -0
- package/cjs/components/util/orient.d.ts +3 -0
- package/cjs/components/util/orient.js +14 -0
- package/cjs/components/util/orient.js.map +1 -0
- package/cjs/components/util/register.d.ts +3 -0
- package/cjs/components/util/register.js +15 -0
- package/cjs/components/util/register.js.map +1 -0
- package/cjs/components/util/transform.d.ts +5 -0
- package/cjs/components/util/transform.js +45 -0
- package/cjs/components/util/transform.js.map +1 -0
- package/cjs/core/BaseTable.d.ts +436 -0
- package/cjs/core/BaseTable.js +1866 -0
- package/cjs/core/BaseTable.js.map +1 -0
- package/cjs/core/FouseInput.d.ts +12 -0
- package/cjs/core/FouseInput.js +41 -0
- package/cjs/core/FouseInput.js.map +1 -0
- package/cjs/core/TABLE_EVENT_TYPE.d.ts +61 -0
- package/cjs/core/TABLE_EVENT_TYPE.js +65 -0
- package/cjs/core/TABLE_EVENT_TYPE.js.map +1 -0
- package/cjs/core/animation.d.ts +17 -0
- package/cjs/core/animation.js +61 -0
- package/cjs/core/animation.js.map +1 -0
- package/cjs/core/factory.d.ts +11 -0
- package/cjs/core/factory.js +29 -0
- package/cjs/core/factory.js.map +1 -0
- package/cjs/core/group-helper.d.ts +6 -0
- package/cjs/core/group-helper.js +22 -0
- package/cjs/core/group-helper.js.map +1 -0
- package/cjs/core/record-helper.d.ts +8 -0
- package/cjs/core/record-helper.js +428 -0
- package/cjs/core/record-helper.js.map +1 -0
- package/cjs/core/row-series-number-helper.d.ts +8 -0
- package/cjs/core/row-series-number-helper.js +46 -0
- package/cjs/core/row-series-number-helper.js.map +1 -0
- package/cjs/core/style-helper.d.ts +3 -0
- package/cjs/core/style-helper.js +110 -0
- package/cjs/core/style-helper.js.map +1 -0
- package/cjs/core/style.d.ts +1 -0
- package/cjs/core/style.js +17 -0
- package/cjs/core/style.js.map +1 -0
- package/cjs/core/tableHelper.d.ts +45 -0
- package/cjs/core/tableHelper.js +287 -0
- package/cjs/core/tableHelper.js.map +1 -0
- package/cjs/core/utils/get-cell-position.d.ts +12 -0
- package/cjs/core/utils/get-cell-position.js +214 -0
- package/cjs/core/utils/get-cell-position.js.map +1 -0
- package/cjs/core/utils/get-custom-merge-cell-func.d.ts +2 -0
- package/cjs/core/utils/get-custom-merge-cell-func.js +14 -0
- package/cjs/core/utils/get-custom-merge-cell-func.js.map +1 -0
- package/cjs/core.d.ts +3 -0
- package/cjs/core.js +15 -0
- package/cjs/core.js.map +1 -0
- package/cjs/data/CachedDataSource.d.ts +36 -0
- package/cjs/data/CachedDataSource.js +259 -0
- package/cjs/data/CachedDataSource.js.map +1 -0
- package/cjs/data/DataSource.d.ts +129 -0
- package/cjs/data/DataSource.js +758 -0
- package/cjs/data/DataSource.js.map +1 -0
- package/cjs/data.d.ts +4 -0
- package/cjs/data.js +24 -0
- package/cjs/data.js.map +1 -0
- package/cjs/dataset/DataStatistics.d.ts +10 -0
- package/cjs/dataset/DataStatistics.js +81 -0
- package/cjs/dataset/DataStatistics.js.map +1 -0
- package/cjs/dataset/dataset-pivot-table.d.ts +60 -0
- package/cjs/dataset/dataset-pivot-table.js +349 -0
- package/cjs/dataset/dataset-pivot-table.js.map +1 -0
- package/cjs/dataset/dataset.d.ts +108 -0
- package/cjs/dataset/dataset.js +810 -0
- package/cjs/dataset/dataset.js.map +1 -0
- package/cjs/dataset/flatDataToObject.d.ts +46 -0
- package/cjs/dataset/flatDataToObject.js +133 -0
- package/cjs/dataset/flatDataToObject.js.map +1 -0
- package/cjs/edit/edit-manager.d.ts +19 -0
- package/cjs/edit/edit-manager.js +124 -0
- package/cjs/edit/edit-manager.js.map +1 -0
- package/cjs/edit/editors.d.ts +5 -0
- package/cjs/edit/editors.js +10 -0
- package/cjs/edit/editors.js.map +1 -0
- package/cjs/event/EventHandler.d.ts +47 -0
- package/cjs/event/EventHandler.js +128 -0
- package/cjs/event/EventHandler.js.map +1 -0
- package/cjs/event/EventTarget.d.ts +12 -0
- package/cjs/event/EventTarget.js +67 -0
- package/cjs/event/EventTarget.js.map +1 -0
- package/cjs/event/component/button.d.ts +2 -0
- package/cjs/event/component/button.js +21 -0
- package/cjs/event/component/button.js.map +1 -0
- package/cjs/event/drill.d.ts +5 -0
- package/cjs/event/drill.js +38 -0
- package/cjs/event/drill.js.map +1 -0
- package/cjs/event/event.d.ts +63 -0
- package/cjs/event/event.js +208 -0
- package/cjs/event/event.js.map +1 -0
- package/cjs/event/helper.d.ts +2 -0
- package/cjs/event/helper.js +35 -0
- package/cjs/event/helper.js.map +1 -0
- package/cjs/event/listener/container-dom.d.ts +2 -0
- package/cjs/event/listener/container-dom.js +343 -0
- package/cjs/event/listener/container-dom.js.map +1 -0
- package/cjs/event/listener/scroll-bar.d.ts +2 -0
- package/cjs/event/listener/scroll-bar.js +80 -0
- package/cjs/event/listener/scroll-bar.js.map +1 -0
- package/cjs/event/listener/table-group.d.ts +6 -0
- package/cjs/event/listener/table-group.js +519 -0
- package/cjs/event/listener/table-group.js.map +1 -0
- package/cjs/event/listener/touch.d.ts +2 -0
- package/cjs/event/listener/touch.js +84 -0
- package/cjs/event/listener/touch.js.map +1 -0
- package/cjs/event/media-click.d.ts +2 -0
- package/cjs/event/media-click.js +85 -0
- package/cjs/event/media-click.js.map +1 -0
- package/cjs/event/scroll.d.ts +20 -0
- package/cjs/event/scroll.js +92 -0
- package/cjs/event/scroll.js.map +1 -0
- package/cjs/event/self-event-listener/base-table/dbclick-auto-column-width.d.ts +2 -0
- package/cjs/event/self-event-listener/base-table/dbclick-auto-column-width.js +31 -0
- package/cjs/event/self-event-listener/base-table/dbclick-auto-column-width.js.map +1 -0
- package/cjs/event/self-event-listener/base-table/dropdown-menu.d.ts +2 -0
- package/cjs/event/self-event-listener/base-table/dropdown-menu.js +16 -0
- package/cjs/event/self-event-listener/base-table/dropdown-menu.js.map +1 -0
- package/cjs/event/self-event-listener/base-table/icon.d.ts +2 -0
- package/cjs/event/self-event-listener/base-table/icon.js +23 -0
- package/cjs/event/self-event-listener/base-table/icon.js.map +1 -0
- package/cjs/event/self-event-listener/base-table/right-button-click.d.ts +2 -0
- package/cjs/event/self-event-listener/base-table/right-button-click.js +25 -0
- package/cjs/event/self-event-listener/base-table/right-button-click.js.map +1 -0
- package/cjs/event/self-event-listener/list-table/checkbox.d.ts +3 -0
- package/cjs/event/self-event-listener/list-table/checkbox.js +124 -0
- package/cjs/event/self-event-listener/list-table/checkbox.js.map +1 -0
- package/cjs/event/self-event-listener/pivot-chart/axis-click.d.ts +2 -0
- package/cjs/event/self-event-listener/pivot-chart/axis-click.js +43 -0
- package/cjs/event/self-event-listener/pivot-chart/axis-click.js.map +1 -0
- package/cjs/event/self-event-listener/pivot-chart/axis-hover.d.ts +2 -0
- package/cjs/event/self-event-listener/pivot-chart/axis-hover.js +41 -0
- package/cjs/event/self-event-listener/pivot-chart/axis-hover.js.map +1 -0
- package/cjs/event/self-event-listener/pivot-table/drill.d.ts +1 -0
- package/cjs/event/self-event-listener/pivot-table/drill.js +3 -0
- package/cjs/event/self-event-listener/pivot-table/drill.js.map +1 -0
- package/cjs/event/sparkline-event.d.ts +2 -0
- package/cjs/event/sparkline-event.js +27 -0
- package/cjs/event/sparkline-event.js.map +1 -0
- package/cjs/event/util.d.ts +20 -0
- package/cjs/event/util.js +46 -0
- package/cjs/event/util.js.map +1 -0
- package/cjs/header-helper/header-helper.d.ts +29 -0
- package/cjs/header-helper/header-helper.js +272 -0
- package/cjs/header-helper/header-helper.js.map +1 -0
- package/cjs/header-helper/style/CheckboxStyle.d.ts +42 -0
- package/cjs/header-helper/style/CheckboxStyle.js +104 -0
- package/cjs/header-helper/style/CheckboxStyle.js.map +1 -0
- package/cjs/header-helper/style/ImageStyle.d.ts +7 -0
- package/cjs/header-helper/style/ImageStyle.js +25 -0
- package/cjs/header-helper/style/ImageStyle.js.map +1 -0
- package/cjs/header-helper/style/MultilineTextHeaderStyle.d.ts +13 -0
- package/cjs/header-helper/style/MultilineTextHeaderStyle.js +38 -0
- package/cjs/header-helper/style/MultilineTextHeaderStyle.js.map +1 -0
- package/cjs/header-helper/style/SortHeaderStyle.d.ts +1 -0
- package/cjs/header-helper/style/SortHeaderStyle.js +3 -0
- package/cjs/header-helper/style/SortHeaderStyle.js.map +1 -0
- package/cjs/header-helper/style/Style.d.ts +95 -0
- package/cjs/header-helper/style/Style.js +226 -0
- package/cjs/header-helper/style/Style.js.map +1 -0
- package/cjs/header-helper/style.d.ts +6 -0
- package/cjs/header-helper/style.js +35 -0
- package/cjs/header-helper/style.js.map +1 -0
- package/cjs/icons.d.ts +5 -0
- package/cjs/icons.js +299 -0
- package/cjs/icons.js.map +1 -0
- package/cjs/index.d.ts +33 -0
- package/cjs/index.js +215 -0
- package/cjs/index.js.map +1 -0
- package/cjs/layout/cell-range/simple-cell-range.d.ts +4 -0
- package/cjs/layout/cell-range/simple-cell-range.js +148 -0
- package/cjs/layout/cell-range/simple-cell-range.js.map +1 -0
- package/cjs/layout/chart-helper/get-axis-config.d.ts +39 -0
- package/cjs/layout/chart-helper/get-axis-config.js +398 -0
- package/cjs/layout/chart-helper/get-axis-config.js.map +1 -0
- package/cjs/layout/chart-helper/get-axis-domain.d.ts +11 -0
- package/cjs/layout/chart-helper/get-axis-domain.js +49 -0
- package/cjs/layout/chart-helper/get-axis-domain.js.map +1 -0
- package/cjs/layout/chart-helper/get-chart-spec.d.ts +13 -0
- package/cjs/layout/chart-helper/get-chart-spec.js +287 -0
- package/cjs/layout/chart-helper/get-chart-spec.js.map +1 -0
- package/cjs/layout/chart-helper/tick-align.d.ts +12 -0
- package/cjs/layout/chart-helper/tick-align.js +23 -0
- package/cjs/layout/chart-helper/tick-align.js.map +1 -0
- package/cjs/layout/chart-helper/zero-align.d.ts +10 -0
- package/cjs/layout/chart-helper/zero-align.js +119 -0
- package/cjs/layout/chart-helper/zero-align.js.map +1 -0
- package/cjs/layout/index.d.ts +1 -0
- package/cjs/layout/index.js +14 -0
- package/cjs/layout/index.js.map +1 -0
- package/cjs/layout/layout-helper.d.ts +20 -0
- package/cjs/layout/layout-helper.js +154 -0
- package/cjs/layout/layout-helper.js.map +1 -0
- package/cjs/layout/pivot-header-layout.d.ts +279 -0
- package/cjs/layout/pivot-header-layout.js +1845 -0
- package/cjs/layout/pivot-header-layout.js.map +1 -0
- package/cjs/layout/pivot-layout.d.ts +1 -0
- package/cjs/layout/pivot-layout.js +1 -0
- package/cjs/layout/pivot-layout.js.map +1 -0
- package/cjs/layout/row-height-map.d.ts +34 -0
- package/cjs/layout/row-height-map.js +176 -0
- package/cjs/layout/row-height-map.js.map +1 -0
- package/cjs/layout/simple-header-layout.d.ts +153 -0
- package/cjs/layout/simple-header-layout.js +779 -0
- package/cjs/layout/simple-header-layout.js.map +1 -0
- package/cjs/layout/tree-helper.d.ts +71 -0
- package/cjs/layout/tree-helper.js +405 -0
- package/cjs/layout/tree-helper.js.map +1 -0
- package/cjs/plugins/chartModules.d.ts +3 -0
- package/cjs/plugins/chartModules.js +6 -0
- package/cjs/plugins/chartModules.js.map +1 -0
- package/cjs/plugins/custom-cell-style.d.ts +26 -0
- package/cjs/plugins/custom-cell-style.js +113 -0
- package/cjs/plugins/custom-cell-style.js.map +1 -0
- package/cjs/plugins/icons.d.ts +12 -0
- package/cjs/plugins/icons.js +26 -0
- package/cjs/plugins/icons.js.map +1 -0
- package/cjs/plugins/invert-highlight.d.ts +1 -0
- package/cjs/plugins/invert-highlight.js +23 -0
- package/cjs/plugins/invert-highlight.js.map +1 -0
- package/cjs/plugins/list-tree-stick-cell.d.ts +18 -0
- package/cjs/plugins/list-tree-stick-cell.js +180 -0
- package/cjs/plugins/list-tree-stick-cell.js.map +1 -0
- package/cjs/plugins/themes.d.ts +4 -0
- package/cjs/plugins/themes.js +6 -0
- package/cjs/plugins/themes.js.map +1 -0
- package/cjs/register.d.ts +15 -0
- package/cjs/register.js +45 -0
- package/cjs/register.js.map +1 -0
- package/cjs/render/jsx/index.d.ts +8 -0
- package/cjs/render/jsx/index.js +91 -0
- package/cjs/render/jsx/index.js.map +1 -0
- package/cjs/render/layout/arc.d.ts +12 -0
- package/cjs/render/layout/arc.js +18 -0
- package/cjs/render/layout/arc.js.map +1 -0
- package/cjs/render/layout/circle.d.ts +12 -0
- package/cjs/render/layout/circle.js +18 -0
- package/cjs/render/layout/circle.js.map +1 -0
- package/cjs/render/layout/container.d.ts +14 -0
- package/cjs/render/layout/container.js +27 -0
- package/cjs/render/layout/container.js.map +1 -0
- package/cjs/render/layout/direction.d.ts +22 -0
- package/cjs/render/layout/direction.js +35 -0
- package/cjs/render/layout/direction.js.map +1 -0
- package/cjs/render/layout/element.d.ts +43 -0
- package/cjs/render/layout/element.js +27 -0
- package/cjs/render/layout/element.js.map +1 -0
- package/cjs/render/layout/group-element.d.ts +5 -0
- package/cjs/render/layout/group-element.js +16 -0
- package/cjs/render/layout/group-element.js.map +1 -0
- package/cjs/render/layout/group.d.ts +12 -0
- package/cjs/render/layout/group.js +18 -0
- package/cjs/render/layout/group.js.map +1 -0
- package/cjs/render/layout/icon.d.ts +21 -0
- package/cjs/render/layout/icon.js +50 -0
- package/cjs/render/layout/icon.js.map +1 -0
- package/cjs/render/layout/image.d.ts +14 -0
- package/cjs/render/layout/image.js +19 -0
- package/cjs/render/layout/image.js.map +1 -0
- package/cjs/render/layout/index.d.ts +13 -0
- package/cjs/render/layout/index.js +41 -0
- package/cjs/render/layout/index.js.map +1 -0
- package/cjs/render/layout/line.d.ts +1 -0
- package/cjs/render/layout/line.js +15 -0
- package/cjs/render/layout/line.js.map +1 -0
- package/cjs/render/layout/percent-calc.d.ts +5 -0
- package/cjs/render/layout/percent-calc.js +13 -0
- package/cjs/render/layout/percent-calc.js.map +1 -0
- package/cjs/render/layout/rect.d.ts +12 -0
- package/cjs/render/layout/rect.js +18 -0
- package/cjs/render/layout/rect.js.map +1 -0
- package/cjs/render/layout/tag.d.ts +14 -0
- package/cjs/render/layout/tag.js +21 -0
- package/cjs/render/layout/tag.js.map +1 -0
- package/cjs/render/layout/text.d.ts +13 -0
- package/cjs/render/layout/text.js +23 -0
- package/cjs/render/layout/text.js.map +1 -0
- package/cjs/scenegraph/animation/appear.d.ts +2 -0
- package/cjs/scenegraph/animation/appear.js +26 -0
- package/cjs/scenegraph/animation/appear.js.map +1 -0
- package/cjs/scenegraph/component/cell-content.d.ts +36 -0
- package/cjs/scenegraph/component/cell-content.js +109 -0
- package/cjs/scenegraph/component/cell-content.js.map +1 -0
- package/cjs/scenegraph/component/cell-mover.d.ts +21 -0
- package/cjs/scenegraph/component/cell-mover.js +119 -0
- package/cjs/scenegraph/component/cell-mover.js.map +1 -0
- package/cjs/scenegraph/component/custom.d.ts +16 -0
- package/cjs/scenegraph/component/custom.js +309 -0
- package/cjs/scenegraph/component/custom.js.map +1 -0
- package/cjs/scenegraph/component/drill-icon.d.ts +9 -0
- package/cjs/scenegraph/component/drill-icon.js +70 -0
- package/cjs/scenegraph/component/drill-icon.js.map +1 -0
- package/cjs/scenegraph/component/menu.d.ts +41 -0
- package/cjs/scenegraph/component/menu.js +217 -0
- package/cjs/scenegraph/component/menu.js.map +1 -0
- package/cjs/scenegraph/component/table-component.d.ts +52 -0
- package/cjs/scenegraph/component/table-component.js +560 -0
- package/cjs/scenegraph/component/table-component.js.map +1 -0
- package/cjs/scenegraph/component/util.d.ts +3 -0
- package/cjs/scenegraph/component/util.js +18 -0
- package/cjs/scenegraph/component/util.js.map +1 -0
- package/cjs/scenegraph/debug-tool/debug-tool.d.ts +34 -0
- package/cjs/scenegraph/debug-tool/debug-tool.js +125 -0
- package/cjs/scenegraph/debug-tool/debug-tool.js.map +1 -0
- package/cjs/scenegraph/debug-tool/index.d.ts +4 -0
- package/cjs/scenegraph/debug-tool/index.js +14 -0
- package/cjs/scenegraph/debug-tool/index.js.map +1 -0
- package/cjs/scenegraph/graphic/chart.d.ts +47 -0
- package/cjs/scenegraph/graphic/chart.js +129 -0
- package/cjs/scenegraph/graphic/chart.js.map +1 -0
- package/cjs/scenegraph/graphic/contributions/chart-render-helper.d.ts +11 -0
- package/cjs/scenegraph/graphic/contributions/chart-render-helper.js +166 -0
- package/cjs/scenegraph/graphic/contributions/chart-render-helper.js.map +1 -0
- package/cjs/scenegraph/graphic/contributions/chart-render.d.ts +11 -0
- package/cjs/scenegraph/graphic/contributions/chart-render.js +74 -0
- package/cjs/scenegraph/graphic/contributions/chart-render.js.map +1 -0
- package/cjs/scenegraph/graphic/contributions/draw-interceptor.d.ts +13 -0
- package/cjs/scenegraph/graphic/contributions/draw-interceptor.js +92 -0
- package/cjs/scenegraph/graphic/contributions/draw-interceptor.js.map +1 -0
- package/cjs/scenegraph/graphic/contributions/group-contribution-render.d.ts +79 -0
- package/cjs/scenegraph/graphic/contributions/group-contribution-render.js +341 -0
- package/cjs/scenegraph/graphic/contributions/group-contribution-render.js.map +1 -0
- package/cjs/scenegraph/graphic/contributions/image-contribution-render.d.ts +38 -0
- package/cjs/scenegraph/graphic/contributions/image-contribution-render.js +75 -0
- package/cjs/scenegraph/graphic/contributions/image-contribution-render.js.map +1 -0
- package/cjs/scenegraph/graphic/contributions/index.d.ts +3 -0
- package/cjs/scenegraph/graphic/contributions/index.js +46 -0
- package/cjs/scenegraph/graphic/contributions/index.js.map +1 -0
- package/cjs/scenegraph/graphic/contributions/rect-contribution-render.d.ts +18 -0
- package/cjs/scenegraph/graphic/contributions/rect-contribution-render.js +91 -0
- package/cjs/scenegraph/graphic/contributions/rect-contribution-render.js.map +1 -0
- package/cjs/scenegraph/graphic/contributions/text-contribution-render.d.ts +12 -0
- package/cjs/scenegraph/graphic/contributions/text-contribution-render.js +72 -0
- package/cjs/scenegraph/graphic/contributions/text-contribution-render.js.map +1 -0
- package/cjs/scenegraph/graphic/group.d.ts +37 -0
- package/cjs/scenegraph/graphic/group.js +135 -0
- package/cjs/scenegraph/graphic/group.js.map +1 -0
- package/cjs/scenegraph/graphic/icon.d.ts +47 -0
- package/cjs/scenegraph/graphic/icon.js +78 -0
- package/cjs/scenegraph/graphic/icon.js.map +1 -0
- package/cjs/scenegraph/graphic/mark.d.ts +4 -0
- package/cjs/scenegraph/graphic/mark.js +74 -0
- package/cjs/scenegraph/graphic/mark.js.map +1 -0
- package/cjs/scenegraph/graphic/text.d.ts +2 -0
- package/cjs/scenegraph/graphic/text.js +15 -0
- package/cjs/scenegraph/graphic/text.js.map +1 -0
- package/cjs/scenegraph/group-creater/cell-helper.d.ts +16 -0
- package/cjs/scenegraph/group-creater/cell-helper.js +325 -0
- package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -0
- package/cjs/scenegraph/group-creater/cell-type/button-cell.d.ts +6 -0
- package/cjs/scenegraph/group-creater/cell-type/button-cell.js +146 -0
- package/cjs/scenegraph/group-creater/cell-type/button-cell.js.map +1 -0
- package/cjs/scenegraph/group-creater/cell-type/chart-cell.d.ts +5 -0
- package/cjs/scenegraph/group-creater/cell-type/chart-cell.js +100 -0
- package/cjs/scenegraph/group-creater/cell-type/chart-cell.js.map +1 -0
- package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.d.ts +6 -0
- package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js +143 -0
- package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -0
- package/cjs/scenegraph/group-creater/cell-type/image-cell.d.ts +15 -0
- package/cjs/scenegraph/group-creater/cell-type/image-cell.js +234 -0
- package/cjs/scenegraph/group-creater/cell-type/image-cell.js.map +1 -0
- package/cjs/scenegraph/group-creater/cell-type/index.d.ts +10 -0
- package/cjs/scenegraph/group-creater/cell-type/index.js +67 -0
- package/cjs/scenegraph/group-creater/cell-type/index.js.map +1 -0
- package/cjs/scenegraph/group-creater/cell-type/progress-bar-cell.d.ts +11 -0
- package/cjs/scenegraph/group-creater/cell-type/progress-bar-cell.js +390 -0
- package/cjs/scenegraph/group-creater/cell-type/progress-bar-cell.js.map +1 -0
- package/cjs/scenegraph/group-creater/cell-type/radio-cell.d.ts +6 -0
- package/cjs/scenegraph/group-creater/cell-type/radio-cell.js +150 -0
- package/cjs/scenegraph/group-creater/cell-type/radio-cell.js.map +1 -0
- package/cjs/scenegraph/group-creater/cell-type/spark-line-cell.d.ts +5 -0
- package/cjs/scenegraph/group-creater/cell-type/spark-line-cell.js +201 -0
- package/cjs/scenegraph/group-creater/cell-type/spark-line-cell.js.map +1 -0
- package/cjs/scenegraph/group-creater/cell-type/switch-cell.d.ts +6 -0
- package/cjs/scenegraph/group-creater/cell-type/switch-cell.js +152 -0
- package/cjs/scenegraph/group-creater/cell-type/switch-cell.js.map +1 -0
- package/cjs/scenegraph/group-creater/cell-type/text-cell.d.ts +6 -0
- package/cjs/scenegraph/group-creater/cell-type/text-cell.js +66 -0
- package/cjs/scenegraph/group-creater/cell-type/text-cell.js.map +1 -0
- package/cjs/scenegraph/group-creater/cell-type/video-cell.d.ts +6 -0
- package/cjs/scenegraph/group-creater/cell-type/video-cell.js +139 -0
- package/cjs/scenegraph/group-creater/cell-type/video-cell.js.map +1 -0
- package/cjs/scenegraph/group-creater/column-helper.d.ts +14 -0
- package/cjs/scenegraph/group-creater/column-helper.js +142 -0
- package/cjs/scenegraph/group-creater/column-helper.js.map +1 -0
- package/cjs/scenegraph/group-creater/column.d.ts +4 -0
- package/cjs/scenegraph/group-creater/column.js +31 -0
- package/cjs/scenegraph/group-creater/column.js.map +1 -0
- package/cjs/scenegraph/group-creater/init-scenegraph.d.ts +2 -0
- package/cjs/scenegraph/group-creater/init-scenegraph.js +58 -0
- package/cjs/scenegraph/group-creater/init-scenegraph.js.map +1 -0
- package/cjs/scenegraph/group-creater/progress/create-group-for-first-screen.d.ts +3 -0
- package/cjs/scenegraph/group-creater/progress/create-group-for-first-screen.js +53 -0
- package/cjs/scenegraph/group-creater/progress/create-group-for-first-screen.js.map +1 -0
- package/cjs/scenegraph/group-creater/progress/default-width-height.d.ts +3 -0
- package/cjs/scenegraph/group-creater/progress/default-width-height.js +24 -0
- package/cjs/scenegraph/group-creater/progress/default-width-height.js.map +1 -0
- package/cjs/scenegraph/group-creater/progress/proxy.d.ts +79 -0
- package/cjs/scenegraph/group-creater/progress/proxy.js +341 -0
- package/cjs/scenegraph/group-creater/progress/proxy.js.map +1 -0
- package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-x.d.ts +4 -0
- package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-x.js +173 -0
- package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-x.js.map +1 -0
- package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-y.d.ts +4 -0
- package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-y.js +190 -0
- package/cjs/scenegraph/group-creater/progress/update-position/dynamic-set-y.js.map +1 -0
- package/cjs/scenegraph/group-creater/progress/update-position/sort-horizontal.d.ts +2 -0
- package/cjs/scenegraph/group-creater/progress/update-position/sort-horizontal.js +62 -0
- package/cjs/scenegraph/group-creater/progress/update-position/sort-horizontal.js.map +1 -0
- package/cjs/scenegraph/group-creater/progress/update-position/sort-vertical.d.ts +2 -0
- package/cjs/scenegraph/group-creater/progress/update-position/sort-vertical.js +75 -0
- package/cjs/scenegraph/group-creater/progress/update-position/sort-vertical.js.map +1 -0
- package/cjs/scenegraph/group-creater/progress/update-position/update-auto-column.d.ts +2 -0
- package/cjs/scenegraph/group-creater/progress/update-position/update-auto-column.js +37 -0
- package/cjs/scenegraph/group-creater/progress/update-position/update-auto-column.js.map +1 -0
- package/cjs/scenegraph/group-creater/progress/update-position/update-auto-row.d.ts +2 -0
- package/cjs/scenegraph/group-creater/progress/update-position/update-auto-row.js +47 -0
- package/cjs/scenegraph/group-creater/progress/update-position/update-auto-row.js.map +1 -0
- package/cjs/scenegraph/group-creater/progress/update-position/util.d.ts +8 -0
- package/cjs/scenegraph/group-creater/progress/update-position/util.js +98 -0
- package/cjs/scenegraph/group-creater/progress/update-position/util.js.map +1 -0
- package/cjs/scenegraph/icon/icon-update.d.ts +28 -0
- package/cjs/scenegraph/icon/icon-update.js +188 -0
- package/cjs/scenegraph/icon/icon-update.js.map +1 -0
- package/cjs/scenegraph/layout/compute-col-width.d.ts +4 -0
- package/cjs/scenegraph/layout/compute-col-width.js +344 -0
- package/cjs/scenegraph/layout/compute-col-width.js.map +1 -0
- package/cjs/scenegraph/layout/compute-row-height.d.ts +3 -0
- package/cjs/scenegraph/layout/compute-row-height.js +335 -0
- package/cjs/scenegraph/layout/compute-row-height.js.map +1 -0
- package/cjs/scenegraph/layout/frozen-react.d.ts +5 -0
- package/cjs/scenegraph/layout/frozen-react.js +91 -0
- package/cjs/scenegraph/layout/frozen-react.js.map +1 -0
- package/cjs/scenegraph/layout/frozen.d.ts +6 -0
- package/cjs/scenegraph/layout/frozen.js +330 -0
- package/cjs/scenegraph/layout/frozen.js.map +1 -0
- package/cjs/scenegraph/layout/height-util.d.ts +7 -0
- package/cjs/scenegraph/layout/height-util.js +127 -0
- package/cjs/scenegraph/layout/height-util.js.map +1 -0
- package/cjs/scenegraph/layout/move-cell.d.ts +2 -0
- package/cjs/scenegraph/layout/move-cell.js +50 -0
- package/cjs/scenegraph/layout/move-cell.js.map +1 -0
- package/cjs/scenegraph/layout/update-col.d.ts +3 -0
- package/cjs/scenegraph/layout/update-col.js +207 -0
- package/cjs/scenegraph/layout/update-col.js.map +1 -0
- package/cjs/scenegraph/layout/update-height.d.ts +6 -0
- package/cjs/scenegraph/layout/update-height.js +146 -0
- package/cjs/scenegraph/layout/update-height.js.map +1 -0
- package/cjs/scenegraph/layout/update-row.d.ts +3 -0
- package/cjs/scenegraph/layout/update-row.js +284 -0
- package/cjs/scenegraph/layout/update-row.js.map +1 -0
- package/cjs/scenegraph/layout/update-width.d.ts +2 -0
- package/cjs/scenegraph/layout/update-width.js +238 -0
- package/cjs/scenegraph/layout/update-width.js.map +1 -0
- package/cjs/scenegraph/refresh-node/update-chart.d.ts +7 -0
- package/cjs/scenegraph/refresh-node/update-chart.js +201 -0
- package/cjs/scenegraph/refresh-node/update-chart.js.map +1 -0
- package/cjs/scenegraph/scenegraph.d.ts +182 -0
- package/cjs/scenegraph/scenegraph.js +898 -0
- package/cjs/scenegraph/scenegraph.js.map +1 -0
- package/cjs/scenegraph/select/create-select-border.d.ts +3 -0
- package/cjs/scenegraph/select/create-select-border.js +60 -0
- package/cjs/scenegraph/select/create-select-border.js.map +1 -0
- package/cjs/scenegraph/select/delete-select-border.d.ts +5 -0
- package/cjs/scenegraph/select/delete-select-border.js +37 -0
- package/cjs/scenegraph/select/delete-select-border.js.map +1 -0
- package/cjs/scenegraph/select/move-select-border.d.ts +2 -0
- package/cjs/scenegraph/select/move-select-border.js +15 -0
- package/cjs/scenegraph/select/move-select-border.js.map +1 -0
- package/cjs/scenegraph/select/update-select-border.d.ts +8 -0
- package/cjs/scenegraph/select/update-select-border.js +272 -0
- package/cjs/scenegraph/select/update-select-border.js.map +1 -0
- package/cjs/scenegraph/select/update-select-style.d.ts +3 -0
- package/cjs/scenegraph/select/update-select-style.js +13 -0
- package/cjs/scenegraph/select/update-select-style.js.map +1 -0
- package/cjs/scenegraph/stick-text/index.d.ts +3 -0
- package/cjs/scenegraph/stick-text/index.js +189 -0
- package/cjs/scenegraph/stick-text/index.js.map +1 -0
- package/cjs/scenegraph/style/corner-cell.d.ts +3 -0
- package/cjs/scenegraph/style/corner-cell.js +28 -0
- package/cjs/scenegraph/style/corner-cell.js.map +1 -0
- package/cjs/scenegraph/style/frame-border.d.ts +8 -0
- package/cjs/scenegraph/style/frame-border.js +144 -0
- package/cjs/scenegraph/style/frame-border.js.map +1 -0
- package/cjs/scenegraph/utils/border-line.d.ts +8 -0
- package/cjs/scenegraph/utils/border-line.js +51 -0
- package/cjs/scenegraph/utils/border-line.js.map +1 -0
- package/cjs/scenegraph/utils/break-string.d.ts +5 -0
- package/cjs/scenegraph/utils/break-string.js +24 -0
- package/cjs/scenegraph/utils/break-string.js.map +1 -0
- package/cjs/scenegraph/utils/cell-border-stroke-width.d.ts +3 -0
- package/cjs/scenegraph/utils/cell-border-stroke-width.js +21 -0
- package/cjs/scenegraph/utils/cell-border-stroke-width.js.map +1 -0
- package/cjs/scenegraph/utils/cell-pos.d.ts +4 -0
- package/cjs/scenegraph/utils/cell-pos.js +18 -0
- package/cjs/scenegraph/utils/cell-pos.js.map +1 -0
- package/cjs/scenegraph/utils/deal-promise-data.d.ts +2 -0
- package/cjs/scenegraph/utils/deal-promise-data.js +12 -0
- package/cjs/scenegraph/utils/deal-promise-data.js.map +1 -0
- package/cjs/scenegraph/utils/empty-group.d.ts +2 -0
- package/cjs/scenegraph/utils/empty-group.js +10 -0
- package/cjs/scenegraph/utils/empty-group.js.map +1 -0
- package/cjs/scenegraph/utils/font.d.ts +1 -0
- package/cjs/scenegraph/utils/font.js +20 -0
- package/cjs/scenegraph/utils/font.js.map +1 -0
- package/cjs/scenegraph/utils/get-cell-merge.d.ts +3 -0
- package/cjs/scenegraph/utils/get-cell-merge.js +17 -0
- package/cjs/scenegraph/utils/get-cell-merge.js.map +1 -0
- package/cjs/scenegraph/utils/get-hierarchy-offset.d.ts +2 -0
- package/cjs/scenegraph/utils/get-hierarchy-offset.js +27 -0
- package/cjs/scenegraph/utils/get-hierarchy-offset.js.map +1 -0
- package/cjs/scenegraph/utils/get-prop.d.ts +4 -0
- package/cjs/scenegraph/utils/get-prop.js +44 -0
- package/cjs/scenegraph/utils/get-prop.js.map +1 -0
- package/cjs/scenegraph/utils/icon.d.ts +12 -0
- package/cjs/scenegraph/utils/icon.js +35 -0
- package/cjs/scenegraph/utils/icon.js.map +1 -0
- package/cjs/scenegraph/utils/is-merge-cell-group.d.ts +2 -0
- package/cjs/scenegraph/utils/is-merge-cell-group.js +16 -0
- package/cjs/scenegraph/utils/is-merge-cell-group.js.map +1 -0
- package/cjs/scenegraph/utils/keep-aspect-ratio.d.ts +4 -0
- package/cjs/scenegraph/utils/keep-aspect-ratio.js +17 -0
- package/cjs/scenegraph/utils/keep-aspect-ratio.js.map +1 -0
- package/cjs/scenegraph/utils/padding.d.ts +6 -0
- package/cjs/scenegraph/utils/padding.js +21 -0
- package/cjs/scenegraph/utils/padding.js.map +1 -0
- package/cjs/scenegraph/utils/render-service.d.ts +7 -0
- package/cjs/scenegraph/utils/render-service.js +27 -0
- package/cjs/scenegraph/utils/render-service.js.map +1 -0
- package/cjs/scenegraph/utils/text-icon-layout.d.ts +29 -0
- package/cjs/scenegraph/utils/text-icon-layout.js +335 -0
- package/cjs/scenegraph/utils/text-icon-layout.js.map +1 -0
- package/cjs/scenegraph/utils/text-measure.d.ts +38 -0
- package/cjs/scenegraph/utils/text-measure.js +166 -0
- package/cjs/scenegraph/utils/text-measure.js.map +1 -0
- package/cjs/scenegraph/utils/text-pos.d.ts +8 -0
- package/cjs/scenegraph/utils/text-pos.js +27 -0
- package/cjs/scenegraph/utils/text-pos.js.map +1 -0
- package/cjs/scenegraph/utils/update-container.d.ts +2 -0
- package/cjs/scenegraph/utils/update-container.js +12 -0
- package/cjs/scenegraph/utils/update-container.js.map +1 -0
- package/cjs/state/cell-move/adjust-header.d.ts +3 -0
- package/cjs/state/cell-move/adjust-header.js +26 -0
- package/cjs/state/cell-move/adjust-header.js.map +1 -0
- package/cjs/state/cell-move/index.d.ts +4 -0
- package/cjs/state/cell-move/index.js +112 -0
- package/cjs/state/cell-move/index.js.map +1 -0
- package/cjs/state/checkbox/checkbox.d.ts +12 -0
- package/cjs/state/checkbox/checkbox.js +210 -0
- package/cjs/state/checkbox/checkbox.js.map +1 -0
- package/cjs/state/common/check-in-select.d.ts +7 -0
- package/cjs/state/common/check-in-select.js +63 -0
- package/cjs/state/common/check-in-select.js.map +1 -0
- package/cjs/state/drill/index.d.ts +2 -0
- package/cjs/state/drill/index.js +15 -0
- package/cjs/state/drill/index.js.map +1 -0
- package/cjs/state/frozen/index.d.ts +2 -0
- package/cjs/state/frozen/index.js +10 -0
- package/cjs/state/frozen/index.js.map +1 -0
- package/cjs/state/hover/col.d.ts +4 -0
- package/cjs/state/hover/col.js +24 -0
- package/cjs/state/hover/col.js.map +1 -0
- package/cjs/state/hover/is-cell-hover.d.ts +5 -0
- package/cjs/state/hover/is-cell-hover.js +49 -0
- package/cjs/state/hover/is-cell-hover.js.map +1 -0
- package/cjs/state/hover/row.d.ts +4 -0
- package/cjs/state/hover/row.js +22 -0
- package/cjs/state/hover/row.js.map +1 -0
- package/cjs/state/hover/single.d.ts +4 -0
- package/cjs/state/hover/single.js +18 -0
- package/cjs/state/hover/single.js.map +1 -0
- package/cjs/state/hover/update-cell.d.ts +2 -0
- package/cjs/state/hover/update-cell.js +24 -0
- package/cjs/state/hover/update-cell.js.map +1 -0
- package/cjs/state/hover/update-position.d.ts +2 -0
- package/cjs/state/hover/update-position.js +44 -0
- package/cjs/state/hover/update-position.js.map +1 -0
- package/cjs/state/radio/radio.d.ts +7 -0
- package/cjs/state/radio/radio.js +96 -0
- package/cjs/state/radio/radio.js.map +1 -0
- package/cjs/state/resize/update-resize-column.d.ts +2 -0
- package/cjs/state/resize/update-resize-column.js +85 -0
- package/cjs/state/resize/update-resize-column.js.map +1 -0
- package/cjs/state/resize/update-resize-row.d.ts +2 -0
- package/cjs/state/resize/update-resize-row.js +64 -0
- package/cjs/state/resize/update-resize-row.js.map +1 -0
- package/cjs/state/select/custom-select.d.ts +7 -0
- package/cjs/state/select/custom-select.js +36 -0
- package/cjs/state/select/custom-select.js.map +1 -0
- package/cjs/state/select/is-cell-select-highlight.d.ts +6 -0
- package/cjs/state/select/is-cell-select-highlight.js +88 -0
- package/cjs/state/select/is-cell-select-highlight.js.map +1 -0
- package/cjs/state/select/update-position.d.ts +4 -0
- package/cjs/state/select/update-position.js +308 -0
- package/cjs/state/select/update-position.js.map +1 -0
- package/cjs/state/sort/index.d.ts +2 -0
- package/cjs/state/sort/index.js +56 -0
- package/cjs/state/sort/index.js.map +1 -0
- package/cjs/state/spark-line/index.d.ts +3 -0
- package/cjs/state/spark-line/index.js +102 -0
- package/cjs/state/spark-line/index.js.map +1 -0
- package/cjs/state/state.d.ts +206 -0
- package/cjs/state/state.js +796 -0
- package/cjs/state/state.js.map +1 -0
- package/cjs/themes/ARCO.d.ts +3 -0
- package/cjs/themes/ARCO.js +113 -0
- package/cjs/themes/ARCO.js.map +1 -0
- package/cjs/themes/BRIGHT.d.ts +3 -0
- package/cjs/themes/BRIGHT.js +70 -0
- package/cjs/themes/BRIGHT.js.map +1 -0
- package/cjs/themes/DARK.d.ts +3 -0
- package/cjs/themes/DARK.js +103 -0
- package/cjs/themes/DARK.js.map +1 -0
- package/cjs/themes/DEFAULT.d.ts +3 -0
- package/cjs/themes/DEFAULT.js +86 -0
- package/cjs/themes/DEFAULT.js.map +1 -0
- package/cjs/themes/SIMPLIFY.d.ts +3 -0
- package/cjs/themes/SIMPLIFY.js +53 -0
- package/cjs/themes/SIMPLIFY.js.map +1 -0
- package/cjs/themes/component.d.ts +35 -0
- package/cjs/themes/component.js +47 -0
- package/cjs/themes/component.js.map +1 -0
- package/cjs/themes/theme.d.ts +67 -0
- package/cjs/themes/theme.js +777 -0
- package/cjs/themes/theme.js.map +1 -0
- package/cjs/themes.d.ts +28 -0
- package/cjs/themes.js +57 -0
- package/cjs/themes.js.map +1 -0
- package/cjs/tools/LimitPromiseQueue.d.ts +8 -0
- package/cjs/tools/LimitPromiseQueue.js +29 -0
- package/cjs/tools/LimitPromiseQueue.js.map +1 -0
- package/cjs/tools/NumberMap.d.ts +23 -0
- package/cjs/tools/NumberMap.js +123 -0
- package/cjs/tools/NumberMap.js.map +1 -0
- package/cjs/tools/Rect.d.ts +24 -0
- package/cjs/tools/Rect.js +70 -0
- package/cjs/tools/Rect.js.map +1 -0
- package/cjs/tools/calc.d.ts +8 -0
- package/cjs/tools/calc.js +205 -0
- package/cjs/tools/calc.js.map +1 -0
- package/cjs/tools/cell-range.d.ts +2 -0
- package/cjs/tools/cell-range.js +10 -0
- package/cjs/tools/cell-range.js.map +1 -0
- package/cjs/tools/debounce.d.ts +1 -0
- package/cjs/tools/debounce.js +51 -0
- package/cjs/tools/debounce.js.map +1 -0
- package/cjs/tools/diff-cell.d.ts +72 -0
- package/cjs/tools/diff-cell.js +170 -0
- package/cjs/tools/diff-cell.js.map +1 -0
- package/cjs/tools/dom.d.ts +1 -0
- package/cjs/tools/dom.js +11 -0
- package/cjs/tools/dom.js.map +1 -0
- package/cjs/tools/env.d.ts +19 -0
- package/cjs/tools/env.js +48 -0
- package/cjs/tools/env.js.map +1 -0
- package/cjs/tools/get-data-path/create-dataset.d.ts +11 -0
- package/cjs/tools/get-data-path/create-dataset.js +149 -0
- package/cjs/tools/get-data-path/create-dataset.js.map +1 -0
- package/cjs/tools/get-data-path/index.d.ts +2 -0
- package/cjs/tools/get-data-path/index.js +51 -0
- package/cjs/tools/get-data-path/index.js.map +1 -0
- package/cjs/tools/global.d.ts +15 -0
- package/cjs/tools/global.js +15 -0
- package/cjs/tools/global.js.map +1 -0
- package/cjs/tools/helper.d.ts +72 -0
- package/cjs/tools/helper.js +228 -0
- package/cjs/tools/helper.js.map +1 -0
- package/cjs/tools/icons.d.ts +4 -0
- package/cjs/tools/icons.js +10 -0
- package/cjs/tools/icons.js.map +1 -0
- package/cjs/tools/isx.d.ts +16 -0
- package/cjs/tools/isx.js +117 -0
- package/cjs/tools/isx.js.map +1 -0
- package/cjs/tools/join.d.ts +1 -0
- package/cjs/tools/join.js +12 -0
- package/cjs/tools/join.js.map +1 -0
- package/cjs/tools/merge-range.d.ts +11 -0
- package/cjs/tools/merge-range.js +35 -0
- package/cjs/tools/merge-range.js.map +1 -0
- package/cjs/tools/pixel-ratio.d.ts +2 -0
- package/cjs/tools/pixel-ratio.js +16 -0
- package/cjs/tools/pixel-ratio.js.map +1 -0
- package/cjs/tools/sort.d.ts +2 -0
- package/cjs/tools/sort.js +18 -0
- package/cjs/tools/sort.js.map +1 -0
- package/cjs/tools/style.d.ts +5 -0
- package/cjs/tools/style.js +30 -0
- package/cjs/tools/style.js.map +1 -0
- package/cjs/tools/update-row.d.ts +19 -0
- package/cjs/tools/update-row.js +38 -0
- package/cjs/tools/update-row.js.map +1 -0
- package/cjs/tools/util.d.ts +46 -0
- package/cjs/tools/util.js +279 -0
- package/cjs/tools/util.js.map +1 -0
- package/cjs/ts-types/animation/appear.d.ts +11 -0
- package/cjs/ts-types/animation/appear.js +6 -0
- package/cjs/ts-types/animation/appear.js.map +1 -0
- package/cjs/ts-types/animation/index.d.ts +1 -0
- package/cjs/ts-types/animation/index.js +21 -0
- package/cjs/ts-types/animation/index.js.map +1 -0
- package/cjs/ts-types/base-table.d.ts +641 -0
- package/cjs/ts-types/base-table.js +6 -0
- package/cjs/ts-types/base-table.js.map +1 -0
- package/cjs/ts-types/column/index.d.ts +2 -0
- package/cjs/ts-types/column/index.js +21 -0
- package/cjs/ts-types/column/index.js.map +1 -0
- package/cjs/ts-types/column/style.d.ts +151 -0
- package/cjs/ts-types/column/style.js +6 -0
- package/cjs/ts-types/column/style.js.map +1 -0
- package/cjs/ts-types/column/type.d.ts +2 -0
- package/cjs/ts-types/column/type.js +6 -0
- package/cjs/ts-types/column/type.js.map +1 -0
- package/cjs/ts-types/common.d.ts +114 -0
- package/cjs/ts-types/common.js +14 -0
- package/cjs/ts-types/common.js.map +1 -0
- package/cjs/ts-types/component/axis.d.ts +2 -0
- package/cjs/ts-types/component/axis.js +6 -0
- package/cjs/ts-types/component/axis.js.map +1 -0
- package/cjs/ts-types/component/empty-tip.d.ts +20 -0
- package/cjs/ts-types/component/empty-tip.js +6 -0
- package/cjs/ts-types/component/empty-tip.js.map +1 -0
- package/cjs/ts-types/component/index.d.ts +1 -0
- package/cjs/ts-types/component/index.js +21 -0
- package/cjs/ts-types/component/index.js.map +1 -0
- package/cjs/ts-types/component/legend.d.ts +18 -0
- package/cjs/ts-types/component/legend.js +6 -0
- package/cjs/ts-types/component/legend.js.map +1 -0
- package/cjs/ts-types/component/title.d.ts +49 -0
- package/cjs/ts-types/component/title.js +6 -0
- package/cjs/ts-types/component/title.js.map +1 -0
- package/cjs/ts-types/component/util.d.ts +1 -0
- package/cjs/ts-types/component/util.js +6 -0
- package/cjs/ts-types/component/util.js.map +1 -0
- package/cjs/ts-types/customElement.d.ts +128 -0
- package/cjs/ts-types/customElement.js +6 -0
- package/cjs/ts-types/customElement.js.map +1 -0
- package/cjs/ts-types/customLayout.d.ts +9 -0
- package/cjs/ts-types/customLayout.js +6 -0
- package/cjs/ts-types/customLayout.js.map +1 -0
- package/cjs/ts-types/dataset/aggregation.d.ts +192 -0
- package/cjs/ts-types/dataset/aggregation.js +423 -0
- package/cjs/ts-types/dataset/aggregation.js.map +1 -0
- package/cjs/ts-types/dataset/index.d.ts +1 -0
- package/cjs/ts-types/dataset/index.js +21 -0
- package/cjs/ts-types/dataset/index.js.map +1 -0
- package/cjs/ts-types/events.d.ts +363 -0
- package/cjs/ts-types/events.js +6 -0
- package/cjs/ts-types/events.js.map +1 -0
- package/cjs/ts-types/icon.d.ts +93 -0
- package/cjs/ts-types/icon.js +28 -0
- package/cjs/ts-types/icon.js.map +1 -0
- package/cjs/ts-types/index.d.ts +17 -0
- package/cjs/ts-types/index.js +29 -0
- package/cjs/ts-types/index.js.map +1 -0
- package/cjs/ts-types/list-table/define/basic-define.d.ts +50 -0
- package/cjs/ts-types/list-table/define/basic-define.js +6 -0
- package/cjs/ts-types/list-table/define/basic-define.js.map +1 -0
- package/cjs/ts-types/list-table/define/button-define.d.ts +9 -0
- package/cjs/ts-types/list-table/define/button-define.js +6 -0
- package/cjs/ts-types/list-table/define/button-define.js.map +1 -0
- package/cjs/ts-types/list-table/define/chart-define.d.ts +11 -0
- package/cjs/ts-types/list-table/define/chart-define.js +6 -0
- package/cjs/ts-types/list-table/define/chart-define.js.map +1 -0
- package/cjs/ts-types/list-table/define/checkbox-define.d.ts +15 -0
- package/cjs/ts-types/list-table/define/checkbox-define.js +6 -0
- package/cjs/ts-types/list-table/define/checkbox-define.js.map +1 -0
- package/cjs/ts-types/list-table/define/composite-define.d.ts +26 -0
- package/cjs/ts-types/list-table/define/composite-define.js +6 -0
- package/cjs/ts-types/list-table/define/composite-define.js.map +1 -0
- package/cjs/ts-types/list-table/define/image-define.d.ts +17 -0
- package/cjs/ts-types/list-table/define/image-define.js +6 -0
- package/cjs/ts-types/list-table/define/image-define.js.map +1 -0
- package/cjs/ts-types/list-table/define/index.d.ts +31 -0
- package/cjs/ts-types/list-table/define/index.js +6 -0
- package/cjs/ts-types/list-table/define/index.js.map +1 -0
- package/cjs/ts-types/list-table/define/link-define.d.ts +22 -0
- package/cjs/ts-types/list-table/define/link-define.js +6 -0
- package/cjs/ts-types/list-table/define/link-define.js.map +1 -0
- package/cjs/ts-types/list-table/define/multilinetext-define.d.ts +11 -0
- package/cjs/ts-types/list-table/define/multilinetext-define.js +6 -0
- package/cjs/ts-types/list-table/define/multilinetext-define.js.map +1 -0
- package/cjs/ts-types/list-table/define/progressbar-define.d.ts +11 -0
- package/cjs/ts-types/list-table/define/progressbar-define.js +6 -0
- package/cjs/ts-types/list-table/define/progressbar-define.js.map +1 -0
- package/cjs/ts-types/list-table/define/radio-define.d.ts +11 -0
- package/cjs/ts-types/list-table/define/radio-define.js +6 -0
- package/cjs/ts-types/list-table/define/radio-define.js.map +1 -0
- package/cjs/ts-types/list-table/define/sparkline-define.d.ts +10 -0
- package/cjs/ts-types/list-table/define/sparkline-define.js +6 -0
- package/cjs/ts-types/list-table/define/sparkline-define.js.map +1 -0
- package/cjs/ts-types/list-table/define/switch-define.d.ts +11 -0
- package/cjs/ts-types/list-table/define/switch-define.js +6 -0
- package/cjs/ts-types/list-table/define/switch-define.js.map +1 -0
- package/cjs/ts-types/list-table/index.d.ts +2 -0
- package/cjs/ts-types/list-table/index.js +21 -0
- package/cjs/ts-types/list-table/index.js.map +1 -0
- package/cjs/ts-types/list-table/layout-map/api.d.ts +126 -0
- package/cjs/ts-types/list-table/layout-map/api.js +6 -0
- package/cjs/ts-types/list-table/layout-map/api.js.map +1 -0
- package/cjs/ts-types/list-table/layout-map/index.d.ts +1 -0
- package/cjs/ts-types/list-table/layout-map/index.js +6 -0
- package/cjs/ts-types/list-table/layout-map/index.js.map +1 -0
- package/cjs/ts-types/menu.d.ts +74 -0
- package/cjs/ts-types/menu.js +6 -0
- package/cjs/ts-types/menu.js.map +1 -0
- package/cjs/ts-types/new-data-set.d.ts +158 -0
- package/cjs/ts-types/new-data-set.js +16 -0
- package/cjs/ts-types/new-data-set.js.map +1 -0
- package/cjs/ts-types/pivot-table/PIVOT_TABLE_EVENT_TYPE.d.ts +10 -0
- package/cjs/ts-types/pivot-table/PIVOT_TABLE_EVENT_TYPE.js +15 -0
- package/cjs/ts-types/pivot-table/PIVOT_TABLE_EVENT_TYPE.js.map +1 -0
- package/cjs/ts-types/pivot-table/corner.d.ts +37 -0
- package/cjs/ts-types/pivot-table/corner.js +6 -0
- package/cjs/ts-types/pivot-table/corner.js.map +1 -0
- package/cjs/ts-types/pivot-table/dimension/basic-dimension.d.ts +43 -0
- package/cjs/ts-types/pivot-table/dimension/basic-dimension.js +6 -0
- package/cjs/ts-types/pivot-table/dimension/basic-dimension.js.map +1 -0
- package/cjs/ts-types/pivot-table/dimension/image-dimension.d.ts +10 -0
- package/cjs/ts-types/pivot-table/dimension/image-dimension.js +6 -0
- package/cjs/ts-types/pivot-table/dimension/image-dimension.js.map +1 -0
- package/cjs/ts-types/pivot-table/dimension/index.d.ts +6 -0
- package/cjs/ts-types/pivot-table/dimension/index.js +6 -0
- package/cjs/ts-types/pivot-table/dimension/index.js.map +1 -0
- package/cjs/ts-types/pivot-table/dimension/link-dimension.d.ts +13 -0
- package/cjs/ts-types/pivot-table/dimension/link-dimension.js +6 -0
- package/cjs/ts-types/pivot-table/dimension/link-dimension.js.map +1 -0
- package/cjs/ts-types/pivot-table/dimension/multilinetext-dimension.d.ts +7 -0
- package/cjs/ts-types/pivot-table/dimension/multilinetext-dimension.js +6 -0
- package/cjs/ts-types/pivot-table/dimension/multilinetext-dimension.js.map +1 -0
- package/cjs/ts-types/pivot-table/index.d.ts +4 -0
- package/cjs/ts-types/pivot-table/index.js +22 -0
- package/cjs/ts-types/pivot-table/index.js.map +1 -0
- package/cjs/ts-types/pivot-table/indicator/basic-indicator.d.ts +51 -0
- package/cjs/ts-types/pivot-table/indicator/basic-indicator.js +6 -0
- package/cjs/ts-types/pivot-table/indicator/basic-indicator.js.map +1 -0
- package/cjs/ts-types/pivot-table/indicator/chart-indicator.d.ts +11 -0
- package/cjs/ts-types/pivot-table/indicator/chart-indicator.js +6 -0
- package/cjs/ts-types/pivot-table/indicator/chart-indicator.js.map +1 -0
- package/cjs/ts-types/pivot-table/indicator/checkbox-indicator.d.ts +9 -0
- package/cjs/ts-types/pivot-table/indicator/checkbox-indicator.js +6 -0
- package/cjs/ts-types/pivot-table/indicator/checkbox-indicator.js.map +1 -0
- package/cjs/ts-types/pivot-table/indicator/composite-indicator.d.ts +24 -0
- package/cjs/ts-types/pivot-table/indicator/composite-indicator.js +6 -0
- package/cjs/ts-types/pivot-table/indicator/composite-indicator.js.map +1 -0
- package/cjs/ts-types/pivot-table/indicator/image-indicator.d.ts +17 -0
- package/cjs/ts-types/pivot-table/indicator/image-indicator.js +6 -0
- package/cjs/ts-types/pivot-table/indicator/image-indicator.js.map +1 -0
- package/cjs/ts-types/pivot-table/indicator/index.d.ts +12 -0
- package/cjs/ts-types/pivot-table/indicator/index.js +6 -0
- package/cjs/ts-types/pivot-table/indicator/index.js.map +1 -0
- package/cjs/ts-types/pivot-table/indicator/link-indicator.d.ts +22 -0
- package/cjs/ts-types/pivot-table/indicator/link-indicator.js +6 -0
- package/cjs/ts-types/pivot-table/indicator/link-indicator.js.map +1 -0
- package/cjs/ts-types/pivot-table/indicator/multilinetext-indicator.d.ts +11 -0
- package/cjs/ts-types/pivot-table/indicator/multilinetext-indicator.js +6 -0
- package/cjs/ts-types/pivot-table/indicator/multilinetext-indicator.js.map +1 -0
- package/cjs/ts-types/pivot-table/indicator/progress-indicator.d.ts +11 -0
- package/cjs/ts-types/pivot-table/indicator/progress-indicator.js +6 -0
- package/cjs/ts-types/pivot-table/indicator/progress-indicator.js.map +1 -0
- package/cjs/ts-types/pivot-table/indicator/sparkline-indicator.d.ts +10 -0
- package/cjs/ts-types/pivot-table/indicator/sparkline-indicator.js +6 -0
- package/cjs/ts-types/pivot-table/indicator/sparkline-indicator.js.map +1 -0
- package/cjs/ts-types/pivot-table/title.d.ts +20 -0
- package/cjs/ts-types/pivot-table/title.js +6 -0
- package/cjs/ts-types/pivot-table/title.js.map +1 -0
- package/cjs/ts-types/sparkline.d.ts +37 -0
- package/cjs/ts-types/sparkline.js +6 -0
- package/cjs/ts-types/sparkline.js.map +1 -0
- package/cjs/ts-types/style-define.d.ts +72 -0
- package/cjs/ts-types/style-define.js +6 -0
- package/cjs/ts-types/style-define.js.map +1 -0
- package/cjs/ts-types/table-engine.d.ts +405 -0
- package/cjs/ts-types/table-engine.js +13 -0
- package/cjs/ts-types/table-engine.js.map +1 -0
- package/cjs/ts-types/theme.d.ts +164 -0
- package/cjs/ts-types/theme.js +6 -0
- package/cjs/ts-types/theme.js.map +1 -0
- package/cjs/ts-types/tooltip.d.ts +26 -0
- package/cjs/ts-types/tooltip.js +6 -0
- package/cjs/ts-types/tooltip.js.map +1 -0
- package/cjs/vrender.d.ts +8 -0
- package/cjs/vrender.js +61 -0
- package/cjs/vrender.js.map +1 -0
- package/dist/vtable.js +83482 -0
- package/dist/vtable.min.js +15 -0
- package/es/ListTable-all.d.ts +3 -0
- package/es/ListTable-all.js +17 -0
- package/es/ListTable-all.js.map +1 -0
- package/es/ListTable-simple.d.ts +3 -0
- package/es/ListTable-simple.js +8 -0
- package/es/ListTable-simple.js.map +1 -0
- package/es/ListTable.d.ts +101 -0
- package/es/ListTable.js +675 -0
- package/es/ListTable.js.map +1 -0
- package/es/PivotChart.d.ts +100 -0
- package/es/PivotChart.js +773 -0
- package/es/PivotChart.js.map +1 -0
- package/es/PivotTable-all.d.ts +3 -0
- package/es/PivotTable-all.js +13 -0
- package/es/PivotTable-all.js.map +1 -0
- package/es/PivotTable-simple.d.ts +3 -0
- package/es/PivotTable-simple.js +8 -0
- package/es/PivotTable-simple.js.map +1 -0
- package/es/PivotTable.d.ts +112 -0
- package/es/PivotTable.js +985 -0
- package/es/PivotTable.js.map +1 -0
- package/es/body-helper/body-helper.d.ts +20 -0
- package/es/body-helper/body-helper.js +112 -0
- package/es/body-helper/body-helper.js.map +1 -0
- package/es/body-helper/style/ButtonStyle.d.ts +45 -0
- package/es/body-helper/style/ButtonStyle.js +102 -0
- package/es/body-helper/style/ButtonStyle.js.map +1 -0
- package/es/body-helper/style/CheckboxStyle.d.ts +42 -0
- package/es/body-helper/style/CheckboxStyle.js +96 -0
- package/es/body-helper/style/CheckboxStyle.js.map +1 -0
- package/es/body-helper/style/ImageStyle.d.ts +7 -0
- package/es/body-helper/style/ImageStyle.js +16 -0
- package/es/body-helper/style/ImageStyle.js.map +1 -0
- package/es/body-helper/style/MultilineTextStyle.d.ts +13 -0
- package/es/body-helper/style/MultilineTextStyle.js +30 -0
- package/es/body-helper/style/MultilineTextStyle.js.map +1 -0
- package/es/body-helper/style/NumberStyle.d.ts +7 -0
- package/es/body-helper/style/NumberStyle.js +16 -0
- package/es/body-helper/style/NumberStyle.js.map +1 -0
- package/es/body-helper/style/ProgressBarStyle.d.ts +55 -0
- package/es/body-helper/style/ProgressBarStyle.js +131 -0
- package/es/body-helper/style/ProgressBarStyle.js.map +1 -0
- package/es/body-helper/style/RadioStyle.d.ts +45 -0
- package/es/body-helper/style/RadioStyle.js +103 -0
- package/es/body-helper/style/RadioStyle.js.map +1 -0
- package/es/body-helper/style/Style.d.ts +95 -0
- package/es/body-helper/style/Style.js +219 -0
- package/es/body-helper/style/Style.js.map +1 -0
- package/es/body-helper/style/SwitchStyle.d.ts +36 -0
- package/es/body-helper/style/SwitchStyle.js +82 -0
- package/es/body-helper/style/SwitchStyle.js.map +1 -0
- package/es/body-helper/style.d.ts +11 -0
- package/es/body-helper/style.js +28 -0
- package/es/body-helper/style.js.map +1 -0
- package/es/chartModule.d.ts +3 -0
- package/es/chartModule.js +10 -0
- package/es/chartModule.js.map +1 -0
- package/es/components/axis/axis.d.ts +52 -0
- package/es/components/axis/axis.js +198 -0
- package/es/components/axis/axis.js.map +1 -0
- package/es/components/axis/band-scale.d.ts +18 -0
- package/es/components/axis/band-scale.js +46 -0
- package/es/components/axis/band-scale.js.map +1 -0
- package/es/components/axis/get-axis-attributes.d.ts +146 -0
- package/es/components/axis/get-axis-attributes.js +200 -0
- package/es/components/axis/get-axis-attributes.js.map +1 -0
- package/es/components/axis/get-axis-component-size.d.ts +6 -0
- package/es/components/axis/get-axis-component-size.js +128 -0
- package/es/components/axis/get-axis-component-size.js.map +1 -0
- package/es/components/axis/label-overlap.d.ts +3 -0
- package/es/components/axis/label-overlap.js +57 -0
- package/es/components/axis/label-overlap.js.map +1 -0
- package/es/components/axis/linear-scale.d.ts +48 -0
- package/es/components/axis/linear-scale.js +115 -0
- package/es/components/axis/linear-scale.js.map +1 -0
- package/es/components/empty-tip/empty-tip.d.ts +25 -0
- package/es/components/empty-tip/empty-tip.js +98 -0
- package/es/components/empty-tip/empty-tip.js.map +1 -0
- package/es/components/index.d.ts +6 -0
- package/es/components/index.js +44 -0
- package/es/components/index.js.map +1 -0
- package/es/components/legend/continue-legend/continue-legend.d.ts +24 -0
- package/es/components/legend/continue-legend/continue-legend.js +96 -0
- package/es/components/legend/continue-legend/continue-legend.js.map +1 -0
- package/es/components/legend/continue-legend/get-continue-legend-attributes.d.ts +5 -0
- package/es/components/legend/continue-legend/get-continue-legend-attributes.js +132 -0
- package/es/components/legend/continue-legend/get-continue-legend-attributes.js.map +1 -0
- package/es/components/legend/create-legend.d.ts +6 -0
- package/es/components/legend/create-legend.js +8 -0
- package/es/components/legend/create-legend.js.map +1 -0
- package/es/components/legend/discrete-legend/discrete-legend.d.ts +25 -0
- package/es/components/legend/discrete-legend/discrete-legend.js +112 -0
- package/es/components/legend/discrete-legend/discrete-legend.js.map +1 -0
- package/es/components/legend/discrete-legend/get-discrete-legend-attributes.d.ts +5 -0
- package/es/components/legend/discrete-legend/get-discrete-legend-attributes.js +84 -0
- package/es/components/legend/discrete-legend/get-discrete-legend-attributes.js.map +1 -0
- package/es/components/menu/dom/BaseMenu.d.ts +16 -0
- package/es/components/menu/dom/BaseMenu.js +25 -0
- package/es/components/menu/dom/BaseMenu.js.map +1 -0
- package/es/components/menu/dom/Menu.d.ts +9 -0
- package/es/components/menu/dom/Menu.js +18 -0
- package/es/components/menu/dom/Menu.js.map +1 -0
- package/es/components/menu/dom/MenuHandler.d.ts +24 -0
- package/es/components/menu/dom/MenuHandler.js +146 -0
- package/es/components/menu/dom/MenuHandler.js.map +1 -0
- package/es/components/menu/dom/logic/MenuContainer.d.ts +21 -0
- package/es/components/menu/dom/logic/MenuContainer.js +102 -0
- package/es/components/menu/dom/logic/MenuContainer.js.map +1 -0
- package/es/components/menu/dom/logic/MenuElement.d.ts +26 -0
- package/es/components/menu/dom/logic/MenuElement.js +288 -0
- package/es/components/menu/dom/logic/MenuElement.js.map +1 -0
- package/es/components/menu/dom/logic/MenuElementStyle.d.ts +1 -0
- package/es/components/menu/dom/logic/MenuElementStyle.js +9 -0
- package/es/components/menu/dom/logic/MenuElementStyle.js.map +1 -0
- package/es/components/react/react-custom-layout.d.ts +27 -0
- package/es/components/react/react-custom-layout.js +169 -0
- package/es/components/react/react-custom-layout.js.map +1 -0
- package/es/components/title/title.d.ts +21 -0
- package/es/components/title/title.js +84 -0
- package/es/components/title/title.js.map +1 -0
- package/es/components/tooltip/BaseTooltip.d.ts +22 -0
- package/es/components/tooltip/BaseTooltip.js +27 -0
- package/es/components/tooltip/BaseTooltip.js.map +1 -0
- package/es/components/tooltip/Tooltip.d.ts +5 -0
- package/es/components/tooltip/Tooltip.js +10 -0
- package/es/components/tooltip/Tooltip.js.map +1 -0
- package/es/components/tooltip/TooltipHandler.d.ts +31 -0
- package/es/components/tooltip/TooltipHandler.js +134 -0
- package/es/components/tooltip/TooltipHandler.js.map +1 -0
- package/es/components/tooltip/logic/BubbleTooltipElement.d.ts +34 -0
- package/es/components/tooltip/logic/BubbleTooltipElement.js +162 -0
- package/es/components/tooltip/logic/BubbleTooltipElement.js.map +1 -0
- package/es/components/tooltip/logic/BubbleTooltipElementStyle.d.ts +1 -0
- package/es/components/tooltip/logic/BubbleTooltipElementStyle.js +9 -0
- package/es/components/tooltip/logic/BubbleTooltipElementStyle.js.map +1 -0
- package/es/components/util/orient.d.ts +3 -0
- package/es/components/util/orient.js +8 -0
- package/es/components/util/orient.js.map +1 -0
- package/es/components/util/register.d.ts +3 -0
- package/es/components/util/register.js +8 -0
- package/es/components/util/register.js.map +1 -0
- package/es/components/util/transform.d.ts +5 -0
- package/es/components/util/transform.js +34 -0
- package/es/components/util/transform.js.map +1 -0
- package/es/core/BaseTable.d.ts +436 -0
- package/es/core/BaseTable.js +1900 -0
- package/es/core/BaseTable.js.map +1 -0
- package/es/core/FouseInput.d.ts +12 -0
- package/es/core/FouseInput.js +33 -0
- package/es/core/FouseInput.js.map +1 -0
- package/es/core/TABLE_EVENT_TYPE.d.ts +61 -0
- package/es/core/TABLE_EVENT_TYPE.js +61 -0
- package/es/core/TABLE_EVENT_TYPE.js.map +1 -0
- package/es/core/animation.d.ts +17 -0
- package/es/core/animation.js +54 -0
- package/es/core/animation.js.map +1 -0
- package/es/core/factory.d.ts +11 -0
- package/es/core/factory.js +23 -0
- package/es/core/factory.js.map +1 -0
- package/es/core/group-helper.d.ts +6 -0
- package/es/core/group-helper.js +14 -0
- package/es/core/group-helper.js.map +1 -0
- package/es/core/record-helper.d.ts +8 -0
- package/es/core/record-helper.js +425 -0
- package/es/core/record-helper.js.map +1 -0
- package/es/core/row-series-number-helper.d.ts +8 -0
- package/es/core/row-series-number-helper.js +15 -0
- package/es/core/row-series-number-helper.js.map +1 -0
- package/es/core/style-helper.d.ts +3 -0
- package/es/core/style-helper.js +86 -0
- package/es/core/style-helper.js.map +1 -0
- package/es/core/style.d.ts +1 -0
- package/es/core/style.js +9 -0
- package/es/core/style.js.map +1 -0
- package/es/core/tableHelper.d.ts +45 -0
- package/es/core/tableHelper.js +253 -0
- package/es/core/tableHelper.js.map +1 -0
- package/es/core/utils/get-cell-position.d.ts +12 -0
- package/es/core/utils/get-cell-position.js +202 -0
- package/es/core/utils/get-cell-position.js.map +1 -0
- package/es/core/utils/get-custom-merge-cell-func.d.ts +2 -0
- package/es/core/utils/get-custom-merge-cell-func.js +6 -0
- package/es/core/utils/get-custom-merge-cell-func.js.map +1 -0
- package/es/core.d.ts +3 -0
- package/es/core.js +4 -0
- package/es/core.js.map +1 -0
- package/es/data/CachedDataSource.d.ts +36 -0
- package/es/data/CachedDataSource.js +249 -0
- package/es/data/CachedDataSource.js.map +1 -0
- package/es/data/DataSource.d.ts +129 -0
- package/es/data/DataSource.js +732 -0
- package/es/data/DataSource.js.map +1 -0
- package/es/data.d.ts +4 -0
- package/es/data.js +6 -0
- package/es/data.js.map +1 -0
- package/es/dataset/DataStatistics.d.ts +10 -0
- package/es/dataset/DataStatistics.js +74 -0
- package/es/dataset/DataStatistics.js.map +1 -0
- package/es/dataset/dataset-pivot-table.d.ts +60 -0
- package/es/dataset/dataset-pivot-table.js +340 -0
- package/es/dataset/dataset-pivot-table.js.map +1 -0
- package/es/dataset/dataset.d.ts +108 -0
- package/es/dataset/dataset.js +803 -0
- package/es/dataset/dataset.js.map +1 -0
- package/es/dataset/flatDataToObject.d.ts +46 -0
- package/es/dataset/flatDataToObject.js +124 -0
- package/es/dataset/flatDataToObject.js.map +1 -0
- package/es/edit/edit-manager.d.ts +19 -0
- package/es/edit/edit-manager.js +121 -0
- package/es/edit/edit-manager.js.map +1 -0
- package/es/edit/editors.d.ts +5 -0
- package/es/edit/editors.js +6 -0
- package/es/edit/editors.js.map +1 -0
- package/es/event/EventHandler.d.ts +47 -0
- package/es/event/EventHandler.js +119 -0
- package/es/event/EventHandler.js.map +1 -0
- package/es/event/EventTarget.d.ts +12 -0
- package/es/event/EventTarget.js +58 -0
- package/es/event/EventTarget.js.map +1 -0
- package/es/event/component/button.d.ts +2 -0
- package/es/event/component/button.js +13 -0
- package/es/event/component/button.js.map +1 -0
- package/es/event/drill.d.ts +5 -0
- package/es/event/drill.js +32 -0
- package/es/event/drill.js.map +1 -0
- package/es/event/event.d.ts +63 -0
- package/es/event/event.js +240 -0
- package/es/event/event.js.map +1 -0
- package/es/event/helper.d.ts +2 -0
- package/es/event/helper.js +27 -0
- package/es/event/helper.js.map +1 -0
- package/es/event/listener/container-dom.d.ts +2 -0
- package/es/event/listener/container-dom.js +348 -0
- package/es/event/listener/container-dom.js.map +1 -0
- package/es/event/listener/scroll-bar.d.ts +2 -0
- package/es/event/listener/scroll-bar.js +75 -0
- package/es/event/listener/scroll-bar.js.map +1 -0
- package/es/event/listener/table-group.d.ts +6 -0
- package/es/event/listener/table-group.js +522 -0
- package/es/event/listener/table-group.js.map +1 -0
- package/es/event/listener/touch.d.ts +2 -0
- package/es/event/listener/touch.js +76 -0
- package/es/event/listener/touch.js.map +1 -0
- package/es/event/media-click.d.ts +2 -0
- package/es/event/media-click.js +85 -0
- package/es/event/media-click.js.map +1 -0
- package/es/event/scroll.d.ts +20 -0
- package/es/event/scroll.js +81 -0
- package/es/event/scroll.js.map +1 -0
- package/es/event/self-event-listener/base-table/dbclick-auto-column-width.d.ts +2 -0
- package/es/event/self-event-listener/base-table/dbclick-auto-column-width.js +25 -0
- package/es/event/self-event-listener/base-table/dbclick-auto-column-width.js.map +1 -0
- package/es/event/self-event-listener/base-table/dropdown-menu.d.ts +2 -0
- package/es/event/self-event-listener/base-table/dropdown-menu.js +8 -0
- package/es/event/self-event-listener/base-table/dropdown-menu.js.map +1 -0
- package/es/event/self-event-listener/base-table/icon.d.ts +2 -0
- package/es/event/self-event-listener/base-table/icon.js +18 -0
- package/es/event/self-event-listener/base-table/icon.js.map +1 -0
- package/es/event/self-event-listener/base-table/right-button-click.d.ts +2 -0
- package/es/event/self-event-listener/base-table/right-button-click.js +17 -0
- package/es/event/self-event-listener/base-table/right-button-click.js.map +1 -0
- package/es/event/self-event-listener/list-table/checkbox.d.ts +3 -0
- package/es/event/self-event-listener/list-table/checkbox.js +117 -0
- package/es/event/self-event-listener/list-table/checkbox.js.map +1 -0
- package/es/event/self-event-listener/pivot-chart/axis-click.d.ts +2 -0
- package/es/event/self-event-listener/pivot-chart/axis-click.js +37 -0
- package/es/event/self-event-listener/pivot-chart/axis-click.js.map +1 -0
- package/es/event/self-event-listener/pivot-chart/axis-hover.d.ts +2 -0
- package/es/event/self-event-listener/pivot-chart/axis-hover.js +33 -0
- package/es/event/self-event-listener/pivot-chart/axis-hover.js.map +1 -0
- package/es/event/self-event-listener/pivot-table/drill.d.ts +1 -0
- package/es/event/self-event-listener/pivot-table/drill.js +3 -0
- package/es/event/self-event-listener/pivot-table/drill.js.map +1 -0
- package/es/event/sparkline-event.d.ts +2 -0
- package/es/event/sparkline-event.js +19 -0
- package/es/event/sparkline-event.js.map +1 -0
- package/es/event/util.d.ts +20 -0
- package/es/event/util.js +38 -0
- package/es/event/util.js.map +1 -0
- package/es/header-helper/header-helper.d.ts +29 -0
- package/es/header-helper/header-helper.js +252 -0
- package/es/header-helper/header-helper.js.map +1 -0
- package/es/header-helper/style/CheckboxStyle.d.ts +42 -0
- package/es/header-helper/style/CheckboxStyle.js +96 -0
- package/es/header-helper/style/CheckboxStyle.js.map +1 -0
- package/es/header-helper/style/ImageStyle.d.ts +7 -0
- package/es/header-helper/style/ImageStyle.js +17 -0
- package/es/header-helper/style/ImageStyle.js.map +1 -0
- package/es/header-helper/style/MultilineTextHeaderStyle.d.ts +13 -0
- package/es/header-helper/style/MultilineTextHeaderStyle.js +30 -0
- package/es/header-helper/style/MultilineTextHeaderStyle.js.map +1 -0
- package/es/header-helper/style/SortHeaderStyle.d.ts +1 -0
- package/es/header-helper/style/SortHeaderStyle.js +3 -0
- package/es/header-helper/style/SortHeaderStyle.js.map +1 -0
- package/es/header-helper/style/Style.d.ts +95 -0
- package/es/header-helper/style/Style.js +220 -0
- package/es/header-helper/style/Style.js.map +1 -0
- package/es/header-helper/style.d.ts +6 -0
- package/es/header-helper/style.js +17 -0
- package/es/header-helper/style.js.map +1 -0
- package/es/icons.d.ts +5 -0
- package/es/icons.js +295 -0
- package/es/icons.js.map +1 -0
- package/es/index.d.ts +33 -0
- package/es/index.js +68 -0
- package/es/index.js.map +1 -0
- package/es/layout/cell-range/simple-cell-range.d.ts +4 -0
- package/es/layout/cell-range/simple-cell-range.js +141 -0
- package/es/layout/cell-range/simple-cell-range.js.map +1 -0
- package/es/layout/chart-helper/get-axis-config.d.ts +39 -0
- package/es/layout/chart-helper/get-axis-config.js +391 -0
- package/es/layout/chart-helper/get-axis-config.js.map +1 -0
- package/es/layout/chart-helper/get-axis-domain.d.ts +11 -0
- package/es/layout/chart-helper/get-axis-domain.js +44 -0
- package/es/layout/chart-helper/get-axis-domain.js.map +1 -0
- package/es/layout/chart-helper/get-chart-spec.d.ts +13 -0
- package/es/layout/chart-helper/get-chart-spec.js +281 -0
- package/es/layout/chart-helper/get-chart-spec.js.map +1 -0
- package/es/layout/chart-helper/tick-align.d.ts +12 -0
- package/es/layout/chart-helper/tick-align.js +16 -0
- package/es/layout/chart-helper/tick-align.js.map +1 -0
- package/es/layout/chart-helper/zero-align.d.ts +10 -0
- package/es/layout/chart-helper/zero-align.js +111 -0
- package/es/layout/chart-helper/zero-align.js.map +1 -0
- package/es/layout/index.d.ts +1 -0
- package/es/layout/index.js +1 -0
- package/es/layout/index.js.map +1 -0
- package/es/layout/layout-helper.d.ts +20 -0
- package/es/layout/layout-helper.js +146 -0
- package/es/layout/layout-helper.js.map +1 -0
- package/es/layout/pivot-header-layout.d.ts +279 -0
- package/es/layout/pivot-header-layout.js +1832 -0
- package/es/layout/pivot-header-layout.js.map +1 -0
- package/es/layout/pivot-layout.d.ts +1 -0
- package/es/layout/pivot-layout.js +1 -0
- package/es/layout/pivot-layout.js.map +1 -0
- package/es/layout/row-height-map.d.ts +34 -0
- package/es/layout/row-height-map.js +168 -0
- package/es/layout/row-height-map.js.map +1 -0
- package/es/layout/simple-header-layout.d.ts +153 -0
- package/es/layout/simple-header-layout.js +780 -0
- package/es/layout/simple-header-layout.js.map +1 -0
- package/es/layout/tree-helper.d.ts +71 -0
- package/es/layout/tree-helper.js +401 -0
- package/es/layout/tree-helper.js.map +1 -0
- package/es/plugins/chartModules.d.ts +3 -0
- package/es/plugins/chartModules.js +2 -0
- package/es/plugins/chartModules.js.map +1 -0
- package/es/plugins/custom-cell-style.d.ts +26 -0
- package/es/plugins/custom-cell-style.js +107 -0
- package/es/plugins/custom-cell-style.js.map +1 -0
- package/es/plugins/icons.d.ts +12 -0
- package/es/plugins/icons.js +22 -0
- package/es/plugins/icons.js.map +1 -0
- package/es/plugins/invert-highlight.d.ts +1 -0
- package/es/plugins/invert-highlight.js +14 -0
- package/es/plugins/invert-highlight.js.map +1 -0
- package/es/plugins/list-tree-stick-cell.d.ts +18 -0
- package/es/plugins/list-tree-stick-cell.js +178 -0
- package/es/plugins/list-tree-stick-cell.js.map +1 -0
- package/es/plugins/themes.d.ts +4 -0
- package/es/plugins/themes.js +2 -0
- package/es/plugins/themes.js.map +1 -0
- package/es/register.d.ts +15 -0
- package/es/register.js +44 -0
- package/es/register.js.map +1 -0
- package/es/render/jsx/index.d.ts +8 -0
- package/es/render/jsx/index.js +16 -0
- package/es/render/jsx/index.js.map +1 -0
- package/es/render/layout/arc.d.ts +12 -0
- package/es/render/layout/arc.js +12 -0
- package/es/render/layout/arc.js.map +1 -0
- package/es/render/layout/circle.d.ts +12 -0
- package/es/render/layout/circle.js +12 -0
- package/es/render/layout/circle.js.map +1 -0
- package/es/render/layout/container.d.ts +14 -0
- package/es/render/layout/container.js +21 -0
- package/es/render/layout/container.js.map +1 -0
- package/es/render/layout/direction.d.ts +22 -0
- package/es/render/layout/direction.js +31 -0
- package/es/render/layout/direction.js.map +1 -0
- package/es/render/layout/element.d.ts +43 -0
- package/es/render/layout/element.js +19 -0
- package/es/render/layout/element.js.map +1 -0
- package/es/render/layout/group-element.d.ts +5 -0
- package/es/render/layout/group-element.js +8 -0
- package/es/render/layout/group-element.js.map +1 -0
- package/es/render/layout/group.d.ts +12 -0
- package/es/render/layout/group.js +12 -0
- package/es/render/layout/group.js.map +1 -0
- package/es/render/layout/icon.d.ts +21 -0
- package/es/render/layout/icon.js +21 -0
- package/es/render/layout/icon.js.map +1 -0
- package/es/render/layout/image.d.ts +14 -0
- package/es/render/layout/image.js +13 -0
- package/es/render/layout/image.js.map +1 -0
- package/es/render/layout/index.d.ts +13 -0
- package/es/render/layout/index.js +26 -0
- package/es/render/layout/index.js.map +1 -0
- package/es/render/layout/line.d.ts +1 -0
- package/es/render/layout/line.js +2 -0
- package/es/render/layout/line.js.map +1 -0
- package/es/render/layout/percent-calc.d.ts +5 -0
- package/es/render/layout/percent-calc.js +7 -0
- package/es/render/layout/percent-calc.js.map +1 -0
- package/es/render/layout/rect.d.ts +12 -0
- package/es/render/layout/rect.js +12 -0
- package/es/render/layout/rect.js.map +1 -0
- package/es/render/layout/tag.d.ts +14 -0
- package/es/render/layout/tag.js +15 -0
- package/es/render/layout/tag.js.map +1 -0
- package/es/render/layout/text.d.ts +13 -0
- package/es/render/layout/text.js +17 -0
- package/es/render/layout/text.js.map +1 -0
- package/es/scenegraph/animation/appear.d.ts +2 -0
- package/es/scenegraph/animation/appear.js +20 -0
- package/es/scenegraph/animation/appear.js.map +1 -0
- package/es/scenegraph/component/cell-content.d.ts +36 -0
- package/es/scenegraph/component/cell-content.js +105 -0
- package/es/scenegraph/component/cell-content.js.map +1 -0
- package/es/scenegraph/component/cell-mover.d.ts +21 -0
- package/es/scenegraph/component/cell-mover.js +113 -0
- package/es/scenegraph/component/cell-mover.js.map +1 -0
- package/es/scenegraph/component/custom.d.ts +16 -0
- package/es/scenegraph/component/custom.js +311 -0
- package/es/scenegraph/component/custom.js.map +1 -0
- package/es/scenegraph/component/drill-icon.d.ts +9 -0
- package/es/scenegraph/component/drill-icon.js +41 -0
- package/es/scenegraph/component/drill-icon.js.map +1 -0
- package/es/scenegraph/component/menu.d.ts +41 -0
- package/es/scenegraph/component/menu.js +215 -0
- package/es/scenegraph/component/menu.js.map +1 -0
- package/es/scenegraph/component/table-component.d.ts +52 -0
- package/es/scenegraph/component/table-component.js +564 -0
- package/es/scenegraph/component/table-component.js.map +1 -0
- package/es/scenegraph/component/util.d.ts +3 -0
- package/es/scenegraph/component/util.js +12 -0
- package/es/scenegraph/component/util.js.map +1 -0
- package/es/scenegraph/debug-tool/debug-tool.d.ts +34 -0
- package/es/scenegraph/debug-tool/debug-tool.js +113 -0
- package/es/scenegraph/debug-tool/debug-tool.js.map +1 -0
- package/es/scenegraph/debug-tool/index.d.ts +4 -0
- package/es/scenegraph/debug-tool/index.js +6 -0
- package/es/scenegraph/debug-tool/index.js.map +1 -0
- package/es/scenegraph/graphic/chart.d.ts +47 -0
- package/es/scenegraph/graphic/chart.js +123 -0
- package/es/scenegraph/graphic/chart.js.map +1 -0
- package/es/scenegraph/graphic/contributions/chart-render-helper.d.ts +11 -0
- package/es/scenegraph/graphic/contributions/chart-render-helper.js +159 -0
- package/es/scenegraph/graphic/contributions/chart-render-helper.js.map +1 -0
- package/es/scenegraph/graphic/contributions/chart-render.d.ts +11 -0
- package/es/scenegraph/graphic/contributions/chart-render.js +76 -0
- package/es/scenegraph/graphic/contributions/chart-render.js.map +1 -0
- package/es/scenegraph/graphic/contributions/draw-interceptor.d.ts +13 -0
- package/es/scenegraph/graphic/contributions/draw-interceptor.js +66 -0
- package/es/scenegraph/graphic/contributions/draw-interceptor.js.map +1 -0
- package/es/scenegraph/graphic/contributions/group-contribution-render.d.ts +79 -0
- package/es/scenegraph/graphic/contributions/group-contribution-render.js +346 -0
- package/es/scenegraph/graphic/contributions/group-contribution-render.js.map +1 -0
- package/es/scenegraph/graphic/contributions/image-contribution-render.d.ts +38 -0
- package/es/scenegraph/graphic/contributions/image-contribution-render.js +69 -0
- package/es/scenegraph/graphic/contributions/image-contribution-render.js.map +1 -0
- package/es/scenegraph/graphic/contributions/index.d.ts +3 -0
- package/es/scenegraph/graphic/contributions/index.js +38 -0
- package/es/scenegraph/graphic/contributions/index.js.map +1 -0
- package/es/scenegraph/graphic/contributions/rect-contribution-render.d.ts +18 -0
- package/es/scenegraph/graphic/contributions/rect-contribution-render.js +90 -0
- package/es/scenegraph/graphic/contributions/rect-contribution-render.js.map +1 -0
- package/es/scenegraph/graphic/contributions/text-contribution-render.d.ts +12 -0
- package/es/scenegraph/graphic/contributions/text-contribution-render.js +69 -0
- package/es/scenegraph/graphic/contributions/text-contribution-render.js.map +1 -0
- package/es/scenegraph/graphic/group.d.ts +37 -0
- package/es/scenegraph/graphic/group.js +127 -0
- package/es/scenegraph/graphic/group.js.map +1 -0
- package/es/scenegraph/graphic/icon.d.ts +47 -0
- package/es/scenegraph/graphic/icon.js +70 -0
- package/es/scenegraph/graphic/icon.js.map +1 -0
- package/es/scenegraph/graphic/mark.d.ts +4 -0
- package/es/scenegraph/graphic/mark.js +66 -0
- package/es/scenegraph/graphic/mark.js.map +1 -0
- package/es/scenegraph/graphic/text.d.ts +2 -0
- package/es/scenegraph/graphic/text.js +2 -0
- package/es/scenegraph/graphic/text.js.map +1 -0
- package/es/scenegraph/group-creater/cell-helper.d.ts +16 -0
- package/es/scenegraph/group-creater/cell-helper.js +325 -0
- package/es/scenegraph/group-creater/cell-helper.js.map +1 -0
- package/es/scenegraph/group-creater/cell-type/button-cell.d.ts +6 -0
- package/es/scenegraph/group-creater/cell-type/button-cell.js +137 -0
- package/es/scenegraph/group-creater/cell-type/button-cell.js.map +1 -0
- package/es/scenegraph/group-creater/cell-type/chart-cell.d.ts +5 -0
- package/es/scenegraph/group-creater/cell-type/chart-cell.js +76 -0
- package/es/scenegraph/group-creater/cell-type/chart-cell.js.map +1 -0
- package/es/scenegraph/group-creater/cell-type/checkbox-cell.d.ts +6 -0
- package/es/scenegraph/group-creater/cell-type/checkbox-cell.js +138 -0
- package/es/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -0
- package/es/scenegraph/group-creater/cell-type/image-cell.d.ts +15 -0
- package/es/scenegraph/group-creater/cell-type/image-cell.js +206 -0
- package/es/scenegraph/group-creater/cell-type/image-cell.js.map +1 -0
- package/es/scenegraph/group-creater/cell-type/index.d.ts +10 -0
- package/es/scenegraph/group-creater/cell-type/index.js +64 -0
- package/es/scenegraph/group-creater/cell-type/index.js.map +1 -0
- package/es/scenegraph/group-creater/cell-type/progress-bar-cell.d.ts +11 -0
- package/es/scenegraph/group-creater/cell-type/progress-bar-cell.js +389 -0
- package/es/scenegraph/group-creater/cell-type/progress-bar-cell.js.map +1 -0
- package/es/scenegraph/group-creater/cell-type/radio-cell.d.ts +6 -0
- package/es/scenegraph/group-creater/cell-type/radio-cell.js +143 -0
- package/es/scenegraph/group-creater/cell-type/radio-cell.js.map +1 -0
- package/es/scenegraph/group-creater/cell-type/spark-line-cell.d.ts +5 -0
- package/es/scenegraph/group-creater/cell-type/spark-line-cell.js +202 -0
- package/es/scenegraph/group-creater/cell-type/spark-line-cell.js.map +1 -0
- package/es/scenegraph/group-creater/cell-type/switch-cell.d.ts +6 -0
- package/es/scenegraph/group-creater/cell-type/switch-cell.js +150 -0
- package/es/scenegraph/group-creater/cell-type/switch-cell.js.map +1 -0
- package/es/scenegraph/group-creater/cell-type/text-cell.d.ts +6 -0
- package/es/scenegraph/group-creater/cell-type/text-cell.js +66 -0
- package/es/scenegraph/group-creater/cell-type/text-cell.js.map +1 -0
- package/es/scenegraph/group-creater/cell-type/video-cell.d.ts +6 -0
- package/es/scenegraph/group-creater/cell-type/video-cell.js +127 -0
- package/es/scenegraph/group-creater/cell-type/video-cell.js.map +1 -0
- package/es/scenegraph/group-creater/column-helper.d.ts +14 -0
- package/es/scenegraph/group-creater/column-helper.js +141 -0
- package/es/scenegraph/group-creater/column-helper.js.map +1 -0
- package/es/scenegraph/group-creater/column.d.ts +4 -0
- package/es/scenegraph/group-creater/column.js +26 -0
- package/es/scenegraph/group-creater/column.js.map +1 -0
- package/es/scenegraph/group-creater/init-scenegraph.d.ts +2 -0
- package/es/scenegraph/group-creater/init-scenegraph.js +50 -0
- package/es/scenegraph/group-creater/init-scenegraph.js.map +1 -0
- package/es/scenegraph/group-creater/progress/create-group-for-first-screen.d.ts +3 -0
- package/es/scenegraph/group-creater/progress/create-group-for-first-screen.js +46 -0
- package/es/scenegraph/group-creater/progress/create-group-for-first-screen.js.map +1 -0
- package/es/scenegraph/group-creater/progress/default-width-height.d.ts +3 -0
- package/es/scenegraph/group-creater/progress/default-width-height.js +18 -0
- package/es/scenegraph/group-creater/progress/default-width-height.js.map +1 -0
- package/es/scenegraph/group-creater/progress/proxy.d.ts +79 -0
- package/es/scenegraph/group-creater/progress/proxy.js +357 -0
- package/es/scenegraph/group-creater/progress/proxy.js.map +1 -0
- package/es/scenegraph/group-creater/progress/update-position/dynamic-set-x.d.ts +4 -0
- package/es/scenegraph/group-creater/progress/update-position/dynamic-set-x.js +168 -0
- package/es/scenegraph/group-creater/progress/update-position/dynamic-set-x.js.map +1 -0
- package/es/scenegraph/group-creater/progress/update-position/dynamic-set-y.d.ts +4 -0
- package/es/scenegraph/group-creater/progress/update-position/dynamic-set-y.js +185 -0
- package/es/scenegraph/group-creater/progress/update-position/dynamic-set-y.js.map +1 -0
- package/es/scenegraph/group-creater/progress/update-position/sort-horizontal.d.ts +2 -0
- package/es/scenegraph/group-creater/progress/update-position/sort-horizontal.js +56 -0
- package/es/scenegraph/group-creater/progress/update-position/sort-horizontal.js.map +1 -0
- package/es/scenegraph/group-creater/progress/update-position/sort-vertical.d.ts +2 -0
- package/es/scenegraph/group-creater/progress/update-position/sort-vertical.js +70 -0
- package/es/scenegraph/group-creater/progress/update-position/sort-vertical.js.map +1 -0
- package/es/scenegraph/group-creater/progress/update-position/update-auto-column.d.ts +2 -0
- package/es/scenegraph/group-creater/progress/update-position/update-auto-column.js +29 -0
- package/es/scenegraph/group-creater/progress/update-position/update-auto-column.js.map +1 -0
- package/es/scenegraph/group-creater/progress/update-position/update-auto-row.d.ts +2 -0
- package/es/scenegraph/group-creater/progress/update-position/update-auto-row.js +39 -0
- package/es/scenegraph/group-creater/progress/update-position/update-auto-row.js.map +1 -0
- package/es/scenegraph/group-creater/progress/update-position/util.d.ts +8 -0
- package/es/scenegraph/group-creater/progress/update-position/util.js +88 -0
- package/es/scenegraph/group-creater/progress/update-position/util.js.map +1 -0
- package/es/scenegraph/icon/icon-update.d.ts +28 -0
- package/es/scenegraph/icon/icon-update.js +178 -0
- package/es/scenegraph/icon/icon-update.js.map +1 -0
- package/es/scenegraph/layout/compute-col-width.d.ts +4 -0
- package/es/scenegraph/layout/compute-col-width.js +320 -0
- package/es/scenegraph/layout/compute-col-width.js.map +1 -0
- package/es/scenegraph/layout/compute-row-height.d.ts +3 -0
- package/es/scenegraph/layout/compute-row-height.js +340 -0
- package/es/scenegraph/layout/compute-row-height.js.map +1 -0
- package/es/scenegraph/layout/frozen-react.d.ts +5 -0
- package/es/scenegraph/layout/frozen-react.js +82 -0
- package/es/scenegraph/layout/frozen-react.js.map +1 -0
- package/es/scenegraph/layout/frozen.d.ts +6 -0
- package/es/scenegraph/layout/frozen.js +328 -0
- package/es/scenegraph/layout/frozen.js.map +1 -0
- package/es/scenegraph/layout/height-util.d.ts +7 -0
- package/es/scenegraph/layout/height-util.js +118 -0
- package/es/scenegraph/layout/height-util.js.map +1 -0
- package/es/scenegraph/layout/move-cell.d.ts +2 -0
- package/es/scenegraph/layout/move-cell.js +44 -0
- package/es/scenegraph/layout/move-cell.js.map +1 -0
- package/es/scenegraph/layout/update-col.d.ts +3 -0
- package/es/scenegraph/layout/update-col.js +204 -0
- package/es/scenegraph/layout/update-col.js.map +1 -0
- package/es/scenegraph/layout/update-height.d.ts +6 -0
- package/es/scenegraph/layout/update-height.js +149 -0
- package/es/scenegraph/layout/update-height.js.map +1 -0
- package/es/scenegraph/layout/update-row.d.ts +3 -0
- package/es/scenegraph/layout/update-row.js +278 -0
- package/es/scenegraph/layout/update-row.js.map +1 -0
- package/es/scenegraph/layout/update-width.d.ts +2 -0
- package/es/scenegraph/layout/update-width.js +247 -0
- package/es/scenegraph/layout/update-width.js.map +1 -0
- package/es/scenegraph/refresh-node/update-chart.d.ts +7 -0
- package/es/scenegraph/refresh-node/update-chart.js +196 -0
- package/es/scenegraph/refresh-node/update-chart.js.map +1 -0
- package/es/scenegraph/scenegraph.d.ts +182 -0
- package/es/scenegraph/scenegraph.js +908 -0
- package/es/scenegraph/scenegraph.js.map +1 -0
- package/es/scenegraph/select/create-select-border.d.ts +3 -0
- package/es/scenegraph/select/create-select-border.js +51 -0
- package/es/scenegraph/select/create-select-border.js.map +1 -0
- package/es/scenegraph/select/delete-select-border.d.ts +5 -0
- package/es/scenegraph/select/delete-select-border.js +29 -0
- package/es/scenegraph/select/delete-select-border.js.map +1 -0
- package/es/scenegraph/select/move-select-border.d.ts +2 -0
- package/es/scenegraph/select/move-select-border.js +9 -0
- package/es/scenegraph/select/move-select-border.js.map +1 -0
- package/es/scenegraph/select/update-select-border.d.ts +8 -0
- package/es/scenegraph/select/update-select-border.js +263 -0
- package/es/scenegraph/select/update-select-border.js.map +1 -0
- package/es/scenegraph/select/update-select-style.d.ts +3 -0
- package/es/scenegraph/select/update-select-style.js +7 -0
- package/es/scenegraph/select/update-select-style.js.map +1 -0
- package/es/scenegraph/stick-text/index.d.ts +3 -0
- package/es/scenegraph/stick-text/index.js +179 -0
- package/es/scenegraph/stick-text/index.js.map +1 -0
- package/es/scenegraph/style/corner-cell.d.ts +3 -0
- package/es/scenegraph/style/corner-cell.js +22 -0
- package/es/scenegraph/style/corner-cell.js.map +1 -0
- package/es/scenegraph/style/frame-border.d.ts +8 -0
- package/es/scenegraph/style/frame-border.js +138 -0
- package/es/scenegraph/style/frame-border.js.map +1 -0
- package/es/scenegraph/utils/border-line.d.ts +8 -0
- package/es/scenegraph/utils/border-line.js +45 -0
- package/es/scenegraph/utils/border-line.js.map +1 -0
- package/es/scenegraph/utils/break-string.d.ts +5 -0
- package/es/scenegraph/utils/break-string.js +16 -0
- package/es/scenegraph/utils/break-string.js.map +1 -0
- package/es/scenegraph/utils/cell-border-stroke-width.d.ts +3 -0
- package/es/scenegraph/utils/cell-border-stroke-width.js +12 -0
- package/es/scenegraph/utils/cell-border-stroke-width.js.map +1 -0
- package/es/scenegraph/utils/cell-pos.d.ts +4 -0
- package/es/scenegraph/utils/cell-pos.js +12 -0
- package/es/scenegraph/utils/cell-pos.js.map +1 -0
- package/es/scenegraph/utils/deal-promise-data.d.ts +2 -0
- package/es/scenegraph/utils/deal-promise-data.js +6 -0
- package/es/scenegraph/utils/deal-promise-data.js.map +1 -0
- package/es/scenegraph/utils/empty-group.d.ts +2 -0
- package/es/scenegraph/utils/empty-group.js +6 -0
- package/es/scenegraph/utils/empty-group.js.map +1 -0
- package/es/scenegraph/utils/font.d.ts +1 -0
- package/es/scenegraph/utils/font.js +6 -0
- package/es/scenegraph/utils/font.js.map +1 -0
- package/es/scenegraph/utils/get-cell-merge.d.ts +3 -0
- package/es/scenegraph/utils/get-cell-merge.js +11 -0
- package/es/scenegraph/utils/get-cell-merge.js.map +1 -0
- package/es/scenegraph/utils/get-hierarchy-offset.d.ts +2 -0
- package/es/scenegraph/utils/get-hierarchy-offset.js +21 -0
- package/es/scenegraph/utils/get-hierarchy-offset.js.map +1 -0
- package/es/scenegraph/utils/get-prop.d.ts +4 -0
- package/es/scenegraph/utils/get-prop.js +36 -0
- package/es/scenegraph/utils/get-prop.js.map +1 -0
- package/es/scenegraph/utils/icon.d.ts +12 -0
- package/es/scenegraph/utils/icon.js +29 -0
- package/es/scenegraph/utils/icon.js.map +1 -0
- package/es/scenegraph/utils/is-merge-cell-group.d.ts +2 -0
- package/es/scenegraph/utils/is-merge-cell-group.js +6 -0
- package/es/scenegraph/utils/is-merge-cell-group.js.map +1 -0
- package/es/scenegraph/utils/keep-aspect-ratio.d.ts +4 -0
- package/es/scenegraph/utils/keep-aspect-ratio.js +11 -0
- package/es/scenegraph/utils/keep-aspect-ratio.js.map +1 -0
- package/es/scenegraph/utils/padding.d.ts +6 -0
- package/es/scenegraph/utils/padding.js +14 -0
- package/es/scenegraph/utils/padding.js.map +1 -0
- package/es/scenegraph/utils/render-service.d.ts +7 -0
- package/es/scenegraph/utils/render-service.js +19 -0
- package/es/scenegraph/utils/render-service.js.map +1 -0
- package/es/scenegraph/utils/text-icon-layout.d.ts +29 -0
- package/es/scenegraph/utils/text-icon-layout.js +334 -0
- package/es/scenegraph/utils/text-icon-layout.js.map +1 -0
- package/es/scenegraph/utils/text-measure.d.ts +38 -0
- package/es/scenegraph/utils/text-measure.js +163 -0
- package/es/scenegraph/utils/text-measure.js.map +1 -0
- package/es/scenegraph/utils/text-pos.d.ts +8 -0
- package/es/scenegraph/utils/text-pos.js +20 -0
- package/es/scenegraph/utils/text-pos.js.map +1 -0
- package/es/scenegraph/utils/update-container.d.ts +2 -0
- package/es/scenegraph/utils/update-container.js +6 -0
- package/es/scenegraph/utils/update-container.js.map +1 -0
- package/es/state/cell-move/adjust-header.d.ts +3 -0
- package/es/state/cell-move/adjust-header.js +20 -0
- package/es/state/cell-move/adjust-header.js.map +1 -0
- package/es/state/cell-move/index.d.ts +4 -0
- package/es/state/cell-move/index.js +106 -0
- package/es/state/cell-move/index.js.map +1 -0
- package/es/state/checkbox/checkbox.d.ts +12 -0
- package/es/state/checkbox/checkbox.js +199 -0
- package/es/state/checkbox/checkbox.js.map +1 -0
- package/es/state/common/check-in-select.d.ts +7 -0
- package/es/state/common/check-in-select.js +53 -0
- package/es/state/common/check-in-select.js.map +1 -0
- package/es/state/drill/index.d.ts +2 -0
- package/es/state/drill/index.js +9 -0
- package/es/state/drill/index.js.map +1 -0
- package/es/state/frozen/index.d.ts +2 -0
- package/es/state/frozen/index.js +4 -0
- package/es/state/frozen/index.js.map +1 -0
- package/es/state/hover/col.d.ts +4 -0
- package/es/state/hover/col.js +16 -0
- package/es/state/hover/col.js.map +1 -0
- package/es/state/hover/is-cell-hover.d.ts +5 -0
- package/es/state/hover/is-cell-hover.js +44 -0
- package/es/state/hover/is-cell-hover.js.map +1 -0
- package/es/state/hover/row.d.ts +4 -0
- package/es/state/hover/row.js +14 -0
- package/es/state/hover/row.js.map +1 -0
- package/es/state/hover/single.d.ts +4 -0
- package/es/state/hover/single.js +10 -0
- package/es/state/hover/single.js.map +1 -0
- package/es/state/hover/update-cell.d.ts +2 -0
- package/es/state/hover/update-cell.js +15 -0
- package/es/state/hover/update-cell.js.map +1 -0
- package/es/state/hover/update-position.d.ts +2 -0
- package/es/state/hover/update-position.js +36 -0
- package/es/state/hover/update-position.js.map +1 -0
- package/es/state/radio/radio.d.ts +7 -0
- package/es/state/radio/radio.js +80 -0
- package/es/state/radio/radio.js.map +1 -0
- package/es/state/resize/update-resize-column.d.ts +2 -0
- package/es/state/resize/update-resize-column.js +79 -0
- package/es/state/resize/update-resize-column.js.map +1 -0
- package/es/state/resize/update-resize-row.d.ts +2 -0
- package/es/state/resize/update-resize-row.js +58 -0
- package/es/state/resize/update-resize-row.js.map +1 -0
- package/es/state/select/custom-select.d.ts +7 -0
- package/es/state/select/custom-select.js +30 -0
- package/es/state/select/custom-select.js.map +1 -0
- package/es/state/select/is-cell-select-highlight.d.ts +6 -0
- package/es/state/select/is-cell-select-highlight.js +81 -0
- package/es/state/select/is-cell-select-highlight.js.map +1 -0
- package/es/state/select/update-position.d.ts +4 -0
- package/es/state/select/update-position.js +300 -0
- package/es/state/select/update-position.js.map +1 -0
- package/es/state/sort/index.d.ts +2 -0
- package/es/state/sort/index.js +50 -0
- package/es/state/sort/index.js.map +1 -0
- package/es/state/spark-line/index.d.ts +3 -0
- package/es/state/spark-line/index.js +96 -0
- package/es/state/spark-line/index.js.map +1 -0
- package/es/state/state.d.ts +206 -0
- package/es/state/state.js +834 -0
- package/es/state/state.js.map +1 -0
- package/es/themes/ARCO.d.ts +3 -0
- package/es/themes/ARCO.js +109 -0
- package/es/themes/ARCO.js.map +1 -0
- package/es/themes/BRIGHT.d.ts +3 -0
- package/es/themes/BRIGHT.js +66 -0
- package/es/themes/BRIGHT.js.map +1 -0
- package/es/themes/DARK.d.ts +3 -0
- package/es/themes/DARK.js +99 -0
- package/es/themes/DARK.js.map +1 -0
- package/es/themes/DEFAULT.d.ts +3 -0
- package/es/themes/DEFAULT.js +82 -0
- package/es/themes/DEFAULT.js.map +1 -0
- package/es/themes/SIMPLIFY.d.ts +3 -0
- package/es/themes/SIMPLIFY.js +49 -0
- package/es/themes/SIMPLIFY.js.map +1 -0
- package/es/themes/component.d.ts +35 -0
- package/es/themes/component.js +42 -0
- package/es/themes/component.js.map +1 -0
- package/es/themes/theme.d.ts +67 -0
- package/es/themes/theme.js +752 -0
- package/es/themes/theme.js.map +1 -0
- package/es/themes.d.ts +28 -0
- package/es/themes.js +64 -0
- package/es/themes.js.map +1 -0
- package/es/tools/LimitPromiseQueue.d.ts +8 -0
- package/es/tools/LimitPromiseQueue.js +21 -0
- package/es/tools/LimitPromiseQueue.js.map +1 -0
- package/es/tools/NumberMap.d.ts +23 -0
- package/es/tools/NumberMap.js +117 -0
- package/es/tools/NumberMap.js.map +1 -0
- package/es/tools/Rect.d.ts +24 -0
- package/es/tools/Rect.js +62 -0
- package/es/tools/Rect.js.map +1 -0
- package/es/tools/calc.d.ts +8 -0
- package/es/tools/calc.js +201 -0
- package/es/tools/calc.js.map +1 -0
- package/es/tools/cell-range.d.ts +2 -0
- package/es/tools/cell-range.js +4 -0
- package/es/tools/cell-range.js.map +1 -0
- package/es/tools/debounce.d.ts +1 -0
- package/es/tools/debounce.js +43 -0
- package/es/tools/debounce.js.map +1 -0
- package/es/tools/diff-cell.d.ts +72 -0
- package/es/tools/diff-cell.js +160 -0
- package/es/tools/diff-cell.js.map +1 -0
- package/es/tools/dom.d.ts +1 -0
- package/es/tools/dom.js +5 -0
- package/es/tools/dom.js.map +1 -0
- package/es/tools/env.d.ts +19 -0
- package/es/tools/env.js +42 -0
- package/es/tools/env.js.map +1 -0
- package/es/tools/get-data-path/create-dataset.d.ts +11 -0
- package/es/tools/get-data-path/create-dataset.js +147 -0
- package/es/tools/get-data-path/create-dataset.js.map +1 -0
- package/es/tools/get-data-path/index.d.ts +2 -0
- package/es/tools/get-data-path/index.js +51 -0
- package/es/tools/get-data-path/index.js.map +1 -0
- package/es/tools/global.d.ts +15 -0
- package/es/tools/global.js +30 -0
- package/es/tools/global.js.map +1 -0
- package/es/tools/helper.d.ts +72 -0
- package/es/tools/helper.js +226 -0
- package/es/tools/helper.js.map +1 -0
- package/es/tools/icons.d.ts +4 -0
- package/es/tools/icons.js +4 -0
- package/es/tools/icons.js.map +1 -0
- package/es/tools/isx.d.ts +16 -0
- package/es/tools/isx.js +79 -0
- package/es/tools/isx.js.map +1 -0
- package/es/tools/join.d.ts +1 -0
- package/es/tools/join.js +6 -0
- package/es/tools/join.js.map +1 -0
- package/es/tools/merge-range.d.ts +11 -0
- package/es/tools/merge-range.js +28 -0
- package/es/tools/merge-range.js.map +1 -0
- package/es/tools/pixel-ratio.d.ts +2 -0
- package/es/tools/pixel-ratio.js +12 -0
- package/es/tools/pixel-ratio.js.map +1 -0
- package/es/tools/sort.d.ts +2 -0
- package/es/tools/sort.js +12 -0
- package/es/tools/sort.js.map +1 -0
- package/es/tools/style.d.ts +5 -0
- package/es/tools/style.js +20 -0
- package/es/tools/style.js.map +1 -0
- package/es/tools/update-row.d.ts +19 -0
- package/es/tools/update-row.js +32 -0
- package/es/tools/update-row.js.map +1 -0
- package/es/tools/util.d.ts +46 -0
- package/es/tools/util.js +231 -0
- package/es/tools/util.js.map +1 -0
- package/es/ts-types/animation/appear.d.ts +11 -0
- package/es/ts-types/animation/appear.js +2 -0
- package/es/ts-types/animation/appear.js.map +1 -0
- package/es/ts-types/animation/index.d.ts +1 -0
- package/es/ts-types/animation/index.js +2 -0
- package/es/ts-types/animation/index.js.map +1 -0
- package/es/ts-types/base-table.d.ts +641 -0
- package/es/ts-types/base-table.js +2 -0
- package/es/ts-types/base-table.js.map +1 -0
- package/es/ts-types/column/index.d.ts +2 -0
- package/es/ts-types/column/index.js +4 -0
- package/es/ts-types/column/index.js.map +1 -0
- package/es/ts-types/column/style.d.ts +151 -0
- package/es/ts-types/column/style.js +2 -0
- package/es/ts-types/column/style.js.map +1 -0
- package/es/ts-types/column/type.d.ts +2 -0
- package/es/ts-types/column/type.js +2 -0
- package/es/ts-types/column/type.js.map +1 -0
- package/es/ts-types/common.d.ts +114 -0
- package/es/ts-types/common.js +13 -0
- package/es/ts-types/common.js.map +1 -0
- package/es/ts-types/component/axis.d.ts +2 -0
- package/es/ts-types/component/axis.js +2 -0
- package/es/ts-types/component/axis.js.map +1 -0
- package/es/ts-types/component/empty-tip.d.ts +20 -0
- package/es/ts-types/component/empty-tip.js +2 -0
- package/es/ts-types/component/empty-tip.js.map +1 -0
- package/es/ts-types/component/index.d.ts +1 -0
- package/es/ts-types/component/index.js +2 -0
- package/es/ts-types/component/index.js.map +1 -0
- package/es/ts-types/component/legend.d.ts +18 -0
- package/es/ts-types/component/legend.js +2 -0
- package/es/ts-types/component/legend.js.map +1 -0
- package/es/ts-types/component/title.d.ts +49 -0
- package/es/ts-types/component/title.js +2 -0
- package/es/ts-types/component/title.js.map +1 -0
- package/es/ts-types/component/util.d.ts +1 -0
- package/es/ts-types/component/util.js +2 -0
- package/es/ts-types/component/util.js.map +1 -0
- package/es/ts-types/customElement.d.ts +128 -0
- package/es/ts-types/customElement.js +2 -0
- package/es/ts-types/customElement.js.map +1 -0
- package/es/ts-types/customLayout.d.ts +9 -0
- package/es/ts-types/customLayout.js +2 -0
- package/es/ts-types/customLayout.js.map +1 -0
- package/es/ts-types/dataset/aggregation.d.ts +192 -0
- package/es/ts-types/dataset/aggregation.js +397 -0
- package/es/ts-types/dataset/aggregation.js.map +1 -0
- package/es/ts-types/dataset/index.d.ts +1 -0
- package/es/ts-types/dataset/index.js +2 -0
- package/es/ts-types/dataset/index.js.map +1 -0
- package/es/ts-types/events.d.ts +363 -0
- package/es/ts-types/events.js +2 -0
- package/es/ts-types/events.js.map +1 -0
- package/es/ts-types/icon.d.ts +93 -0
- package/es/ts-types/icon.js +30 -0
- package/es/ts-types/icon.js.map +1 -0
- package/es/ts-types/index.d.ts +17 -0
- package/es/ts-types/index.js +34 -0
- package/es/ts-types/index.js.map +1 -0
- package/es/ts-types/list-table/define/basic-define.d.ts +50 -0
- package/es/ts-types/list-table/define/basic-define.js +2 -0
- package/es/ts-types/list-table/define/basic-define.js.map +1 -0
- package/es/ts-types/list-table/define/button-define.d.ts +9 -0
- package/es/ts-types/list-table/define/button-define.js +2 -0
- package/es/ts-types/list-table/define/button-define.js.map +1 -0
- package/es/ts-types/list-table/define/chart-define.d.ts +11 -0
- package/es/ts-types/list-table/define/chart-define.js +2 -0
- package/es/ts-types/list-table/define/chart-define.js.map +1 -0
- package/es/ts-types/list-table/define/checkbox-define.d.ts +15 -0
- package/es/ts-types/list-table/define/checkbox-define.js +2 -0
- package/es/ts-types/list-table/define/checkbox-define.js.map +1 -0
- package/es/ts-types/list-table/define/composite-define.d.ts +26 -0
- package/es/ts-types/list-table/define/composite-define.js +2 -0
- package/es/ts-types/list-table/define/composite-define.js.map +1 -0
- package/es/ts-types/list-table/define/image-define.d.ts +17 -0
- package/es/ts-types/list-table/define/image-define.js +2 -0
- package/es/ts-types/list-table/define/image-define.js.map +1 -0
- package/es/ts-types/list-table/define/index.d.ts +31 -0
- package/es/ts-types/list-table/define/index.js +2 -0
- package/es/ts-types/list-table/define/index.js.map +1 -0
- package/es/ts-types/list-table/define/link-define.d.ts +22 -0
- package/es/ts-types/list-table/define/link-define.js +2 -0
- package/es/ts-types/list-table/define/link-define.js.map +1 -0
- package/es/ts-types/list-table/define/multilinetext-define.d.ts +11 -0
- package/es/ts-types/list-table/define/multilinetext-define.js +2 -0
- package/es/ts-types/list-table/define/multilinetext-define.js.map +1 -0
- package/es/ts-types/list-table/define/progressbar-define.d.ts +11 -0
- package/es/ts-types/list-table/define/progressbar-define.js +2 -0
- package/es/ts-types/list-table/define/progressbar-define.js.map +1 -0
- package/es/ts-types/list-table/define/radio-define.d.ts +11 -0
- package/es/ts-types/list-table/define/radio-define.js +2 -0
- package/es/ts-types/list-table/define/radio-define.js.map +1 -0
- package/es/ts-types/list-table/define/sparkline-define.d.ts +10 -0
- package/es/ts-types/list-table/define/sparkline-define.js +2 -0
- package/es/ts-types/list-table/define/sparkline-define.js.map +1 -0
- package/es/ts-types/list-table/define/switch-define.d.ts +11 -0
- package/es/ts-types/list-table/define/switch-define.js +2 -0
- package/es/ts-types/list-table/define/switch-define.js.map +1 -0
- package/es/ts-types/list-table/index.d.ts +2 -0
- package/es/ts-types/list-table/index.js +4 -0
- package/es/ts-types/list-table/index.js.map +1 -0
- package/es/ts-types/list-table/layout-map/api.d.ts +126 -0
- package/es/ts-types/list-table/layout-map/api.js +2 -0
- package/es/ts-types/list-table/layout-map/api.js.map +1 -0
- package/es/ts-types/list-table/layout-map/index.d.ts +1 -0
- package/es/ts-types/list-table/layout-map/index.js +2 -0
- package/es/ts-types/list-table/layout-map/index.js.map +1 -0
- package/es/ts-types/menu.d.ts +74 -0
- package/es/ts-types/menu.js +2 -0
- package/es/ts-types/menu.js.map +1 -0
- package/es/ts-types/new-data-set.d.ts +158 -0
- package/es/ts-types/new-data-set.js +15 -0
- package/es/ts-types/new-data-set.js.map +1 -0
- package/es/ts-types/pivot-table/PIVOT_TABLE_EVENT_TYPE.d.ts +10 -0
- package/es/ts-types/pivot-table/PIVOT_TABLE_EVENT_TYPE.js +13 -0
- package/es/ts-types/pivot-table/PIVOT_TABLE_EVENT_TYPE.js.map +1 -0
- package/es/ts-types/pivot-table/corner.d.ts +37 -0
- package/es/ts-types/pivot-table/corner.js +2 -0
- package/es/ts-types/pivot-table/corner.js.map +1 -0
- package/es/ts-types/pivot-table/dimension/basic-dimension.d.ts +43 -0
- package/es/ts-types/pivot-table/dimension/basic-dimension.js +2 -0
- package/es/ts-types/pivot-table/dimension/basic-dimension.js.map +1 -0
- package/es/ts-types/pivot-table/dimension/image-dimension.d.ts +10 -0
- package/es/ts-types/pivot-table/dimension/image-dimension.js +2 -0
- package/es/ts-types/pivot-table/dimension/image-dimension.js.map +1 -0
- package/es/ts-types/pivot-table/dimension/index.d.ts +6 -0
- package/es/ts-types/pivot-table/dimension/index.js +2 -0
- package/es/ts-types/pivot-table/dimension/index.js.map +1 -0
- package/es/ts-types/pivot-table/dimension/link-dimension.d.ts +13 -0
- package/es/ts-types/pivot-table/dimension/link-dimension.js +2 -0
- package/es/ts-types/pivot-table/dimension/link-dimension.js.map +1 -0
- package/es/ts-types/pivot-table/dimension/multilinetext-dimension.d.ts +7 -0
- package/es/ts-types/pivot-table/dimension/multilinetext-dimension.js +2 -0
- package/es/ts-types/pivot-table/dimension/multilinetext-dimension.js.map +1 -0
- package/es/ts-types/pivot-table/index.d.ts +4 -0
- package/es/ts-types/pivot-table/index.js +8 -0
- package/es/ts-types/pivot-table/index.js.map +1 -0
- package/es/ts-types/pivot-table/indicator/basic-indicator.d.ts +51 -0
- package/es/ts-types/pivot-table/indicator/basic-indicator.js +2 -0
- package/es/ts-types/pivot-table/indicator/basic-indicator.js.map +1 -0
- package/es/ts-types/pivot-table/indicator/chart-indicator.d.ts +11 -0
- package/es/ts-types/pivot-table/indicator/chart-indicator.js +2 -0
- package/es/ts-types/pivot-table/indicator/chart-indicator.js.map +1 -0
- package/es/ts-types/pivot-table/indicator/checkbox-indicator.d.ts +9 -0
- package/es/ts-types/pivot-table/indicator/checkbox-indicator.js +2 -0
- package/es/ts-types/pivot-table/indicator/checkbox-indicator.js.map +1 -0
- package/es/ts-types/pivot-table/indicator/composite-indicator.d.ts +24 -0
- package/es/ts-types/pivot-table/indicator/composite-indicator.js +2 -0
- package/es/ts-types/pivot-table/indicator/composite-indicator.js.map +1 -0
- package/es/ts-types/pivot-table/indicator/image-indicator.d.ts +17 -0
- package/es/ts-types/pivot-table/indicator/image-indicator.js +2 -0
- package/es/ts-types/pivot-table/indicator/image-indicator.js.map +1 -0
- package/es/ts-types/pivot-table/indicator/index.d.ts +12 -0
- package/es/ts-types/pivot-table/indicator/index.js +2 -0
- package/es/ts-types/pivot-table/indicator/index.js.map +1 -0
- package/es/ts-types/pivot-table/indicator/link-indicator.d.ts +22 -0
- package/es/ts-types/pivot-table/indicator/link-indicator.js +2 -0
- package/es/ts-types/pivot-table/indicator/link-indicator.js.map +1 -0
- package/es/ts-types/pivot-table/indicator/multilinetext-indicator.d.ts +11 -0
- package/es/ts-types/pivot-table/indicator/multilinetext-indicator.js +2 -0
- package/es/ts-types/pivot-table/indicator/multilinetext-indicator.js.map +1 -0
- package/es/ts-types/pivot-table/indicator/progress-indicator.d.ts +11 -0
- package/es/ts-types/pivot-table/indicator/progress-indicator.js +2 -0
- package/es/ts-types/pivot-table/indicator/progress-indicator.js.map +1 -0
- package/es/ts-types/pivot-table/indicator/sparkline-indicator.d.ts +10 -0
- package/es/ts-types/pivot-table/indicator/sparkline-indicator.js +2 -0
- package/es/ts-types/pivot-table/indicator/sparkline-indicator.js.map +1 -0
- package/es/ts-types/pivot-table/title.d.ts +20 -0
- package/es/ts-types/pivot-table/title.js +2 -0
- package/es/ts-types/pivot-table/title.js.map +1 -0
- package/es/ts-types/sparkline.d.ts +37 -0
- package/es/ts-types/sparkline.js +2 -0
- package/es/ts-types/sparkline.js.map +1 -0
- package/es/ts-types/style-define.d.ts +72 -0
- package/es/ts-types/style-define.js +2 -0
- package/es/ts-types/style-define.js.map +1 -0
- package/es/ts-types/table-engine.d.ts +405 -0
- package/es/ts-types/table-engine.js +13 -0
- package/es/ts-types/table-engine.js.map +1 -0
- package/es/ts-types/theme.d.ts +164 -0
- package/es/ts-types/theme.js +2 -0
- package/es/ts-types/theme.js.map +1 -0
- package/es/ts-types/tooltip.d.ts +26 -0
- package/es/ts-types/tooltip.js +2 -0
- package/es/ts-types/tooltip.js.map +1 -0
- package/es/vrender.d.ts +8 -0
- package/es/vrender.js +27 -0
- package/es/vrender.js.map +1 -0
- package/package.json +132 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/PivotTable.ts"],"names":[],"mappings":"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","file":"PivotTable.js","sourcesContent":["import type {\n FieldData,\n FieldDef,\n FieldFormat,\n PivotTableAPI,\n SortRules,\n PivotSortState,\n CellAddress,\n ICellHeaderPaths,\n DropDownMenuEventInfo,\n FieldKeyDef,\n PivotTableConstructorOptions,\n IHeaderTreeDefine,\n IDimensionInfo,\n SortOrder,\n IPagination,\n CellLocation,\n IIndicator,\n ColumnDefine,\n SortByIndicatorRule,\n SortTypeRule,\n SortRule,\n FilterRules,\n CellPivotRole\n} from './ts-types';\nimport { HierarchyState, SortType } from './ts-types';\nimport { PivotHeaderLayoutMap } from './layout/pivot-header-layout';\nimport { FlatDataToObjects } from './dataset/flatDataToObject';\nimport { PIVOT_TABLE_EVENT_TYPE } from './ts-types/pivot-table/PIVOT_TABLE_EVENT_TYPE';\nimport { cellInRange, emptyFn } from './tools/helper';\nimport { Dataset } from './dataset/dataset';\nimport { BaseTable } from './core/BaseTable';\nimport type { BaseTableAPI, HeaderData, PivotTableProtected } from './ts-types/base-table';\nimport type { ITitleComponent } from './components/title/title';\nimport { cloneDeep, isNumber, isValid } from '@visactor/vutils';\nimport { Env } from './tools/env';\nimport type { ITreeLayoutHeadNode } from './layout/tree-helper';\nimport { DimensionTree, type LayouTreeNode } from './layout/tree-helper';\nimport { TABLE_EVENT_TYPE } from './core/TABLE_EVENT_TYPE';\nimport { EditManager } from './edit/edit-manager';\nimport * as editors from './edit/editors';\nimport type { IEditor } from '@visactor/vtable-editors';\nimport { computeColWidth } from './scenegraph/layout/compute-col-width';\nimport { computeRowHeight } from './scenegraph/layout/compute-row-height';\nimport { isAllDigits } from './tools/util';\nimport type { IndicatorData } from './ts-types/list-table/layout-map/api';\nimport { cloneDeepSpec } from '@visactor/vutils-extension';\nimport {\n deleteHideIndicatorNode,\n parseColKeyRowKeyForPivotTable,\n supplementIndicatorNodesForCustomTree\n} from './layout/layout-helper';\nimport type { IEmptyTipComponent } from './components/empty-tip/empty-tip';\nimport { Factory } from './core/factory';\nimport { callUpdateColOnScenegraph, callUpdateRowOnScenegraph } from './tools/diff-cell';\nimport { clearChartRenderQueue } from './scenegraph/graphic/contributions/chart-render-helper';\n\nexport class PivotTable extends BaseTable implements PivotTableAPI {\n layoutNodeId: { seqId: number } = { seqId: 0 };\n declare internalProps: PivotTableProtected;\n declare options: PivotTableConstructorOptions;\n pivotSortState: {\n dimensions: IDimensionInfo[];\n order: SortOrder;\n }[];\n dataset?: Dataset; //数据处理对象 开启数据透视分析的表\n flatDataToObjects?: FlatDataToObjects; //数据处理对象 聚合后的flat数据 转成便于查询的行列二维数组\n // drillMenu: Menu; //上卷下钻的按钮\n // eslint-disable-next-line default-param-last\n constructor(options: PivotTableConstructorOptions);\n constructor(container: HTMLElement, options: PivotTableConstructorOptions);\n constructor(container?: HTMLElement | PivotTableConstructorOptions, options?: PivotTableConstructorOptions) {\n if (Env.mode === 'node') {\n options = container as PivotTableConstructorOptions;\n container = null;\n } else if (!(container instanceof HTMLElement)) {\n options = container as PivotTableConstructorOptions;\n if ((container as PivotTableConstructorOptions).container) {\n container = (container as PivotTableConstructorOptions).container;\n } else {\n container = null;\n }\n }\n super(container as HTMLElement, options);\n if (options) {\n if (!options.rowHierarchyType) {\n options.rowHierarchyType = 'grid';\n }\n if (!options.columnHierarchyType) {\n options.columnHierarchyType = 'grid';\n }\n if ((options as any).layout) {\n //TODO hack处理之前的demo都是定义到layout上的 所以这里直接并到options中\n Object.assign(options, (options as any).layout);\n }\n this.internalProps.columns = cloneDeep(options.columns);\n this.internalProps.rows = cloneDeep(options.rows);\n this.internalProps.indicators = cloneDeepSpec(options.indicators);\n options.indicators?.forEach((indicatorDefine, index) => {\n //如果editor 是一个IEditor的实例 需要这样重新赋值 否则clone后变质了\n if (typeof indicatorDefine === 'object' && indicatorDefine?.editor) {\n (this.internalProps.indicators![index] as IIndicator).editor = indicatorDefine.editor;\n }\n });\n this.internalProps.columnTree =\n options.indicatorsAsCol && !options.columns?.length && !options.columnTree ? [] : cloneDeep(options.columnTree);\n this.internalProps.rowTree =\n !options.indicatorsAsCol && !options.rows?.length && !options.rowTree ? [] : cloneDeep(options.rowTree);\n this.internalProps.records = options.records;\n\n //分页配置\n this.pagination = options.pagination;\n this.internalProps.columnResizeType = options.resize?.columnResizeType ?? options.columnResizeType ?? 'column';\n this.internalProps.rowResizeType = options.resize?.rowResizeType ?? options.rowResizeType ?? 'row';\n this.internalProps.dataConfig = cloneDeep(options.dataConfig);\n this.internalProps.columnWidthConfig = options.columnWidthConfig;\n this.internalProps.columnWidthConfigForRowHeader = options.columnWidthConfigForRowHeader;\n\n const records = this.internalProps.records;\n this.internalProps.recordsIsTwoDimensionalArray = false;\n if (records?.[0]?.constructor === Array) {\n this.internalProps.recordsIsTwoDimensionalArray = true;\n }\n if (options.customConfig?.enableDataAnalysis === false) {\n // let columnDimensionTree;\n // let rowDimensionTree;\n // if (options.columnTree) {\n const columnDimensionTree = new DimensionTree(\n (this.internalProps.columnTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.columnHierarchyType,\n this.options.columnHierarchyType !== 'grid' ? this.options.columnExpandLevel ?? 1 : undefined\n );\n // }\n // if (options.rowTree) {\n const rowDimensionTree = new DimensionTree(\n (this.internalProps.rowTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.rowHierarchyType,\n this.options.rowHierarchyType !== 'grid' ? this.options.rowExpandLevel ?? 1 : undefined\n );\n // }\n this.internalProps.layoutMap = new PivotHeaderLayoutMap(this, null, columnDimensionTree, rowDimensionTree);\n //判断如果数据是二维数组 则标识已经分析过 直接从二维数组挨个读取渲染即可\n //不是二维数组 对应是个object json对象 则表示flat数据,需要对应行列维度进行转成方便数据查询的行列树结构\n if (this.internalProps.recordsIsTwoDimensionalArray === false) {\n this.flatDataToObjects = new FlatDataToObjects(\n {\n rows: this.internalProps.layoutMap.fullRowDimensionKeys,\n columns: this.internalProps.layoutMap.colDimensionKeys,\n indicators: this.internalProps.layoutMap.indicatorKeys,\n indicatorsAsCol: this.internalProps.layoutMap.indicatorsAsCol,\n indicatorDimensionKey: this.internalProps.layoutMap.indicatorDimensionKey\n },\n records\n );\n }\n } else {\n const keysResults = parseColKeyRowKeyForPivotTable(this, options);\n const { rowKeys, columnKeys, indicatorKeys } = keysResults;\n let { columnDimensionTree, rowDimensionTree } = keysResults;\n this.dataset = new Dataset(\n this.internalProps.dataConfig,\n // this.pagination,\n rowKeys,\n columnKeys,\n // options.indicatorsAsCol === false ? rowKeys.concat(IndicatorDimensionKeyPlaceholder) : rowKeys,\n // options.indicatorsAsCol !== false ? columnKeys.concat(IndicatorDimensionKeyPlaceholder) : columnKeys,\n indicatorKeys,\n this.internalProps.indicators,\n options.indicatorsAsCol ?? true,\n options.records,\n options.rowHierarchyType,\n options.columnHierarchyType,\n this.internalProps.columnTree, //传递自定义树形结构会在dataset中补充指标节点children\n this.internalProps.rowTree,\n false,\n !!options.extensionRows,\n !!options.parseCustomTreeToMatchRecords\n );\n if (!options.columnTree) {\n if (options.indicatorsAsCol !== false) {\n this.dataset.colHeaderTree = supplementIndicatorNodesForCustomTree(\n this.dataset.colHeaderTree,\n options.indicators\n );\n }\n options.indicatorsAsCol !== false &&\n options.indicators &&\n this.dataset.colHeaderTree &&\n deleteHideIndicatorNode(this.dataset.colHeaderTree, options.indicators, false, this);\n columnDimensionTree = new DimensionTree(\n (this.dataset.colHeaderTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.columnHierarchyType,\n this.options.columnHierarchyType !== 'grid' ? this.options.columnExpandLevel ?? 1 : undefined\n );\n } else {\n if (columnDimensionTree.hasHideNode) {\n deleteHideIndicatorNode(columnDimensionTree.tree.children, options.indicators, true, this);\n columnDimensionTree.reset(columnDimensionTree.tree.children);\n }\n }\n if (!options.rowTree) {\n if (options.indicatorsAsCol === false) {\n this.dataset.rowHeaderTree = supplementIndicatorNodesForCustomTree(\n this.dataset.rowHeaderTree,\n options.indicators\n );\n }\n options.indicatorsAsCol === false &&\n this.dataset.rowHeaderTree &&\n options.indicators &&\n deleteHideIndicatorNode(this.dataset.rowHeaderTree, options.indicators, false, this);\n rowDimensionTree = new DimensionTree(\n (this.dataset.rowHeaderTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.rowHierarchyType,\n this.options.rowHierarchyType !== 'grid' ? this.options.rowExpandLevel ?? 1 : undefined\n );\n } else {\n if (rowDimensionTree.hasHideNode) {\n deleteHideIndicatorNode(rowDimensionTree.tree.children, options.indicators, true, this);\n rowDimensionTree.reset(rowDimensionTree.tree.children);\n }\n }\n this.internalProps.layoutMap = new PivotHeaderLayoutMap(\n this,\n this.dataset,\n columnDimensionTree,\n rowDimensionTree\n );\n }\n this._changePivotSortStateBySortRules();\n if ((options.pivotSortState?.length ?? 0) > 0) {\n this.pivotSortState = [];\n this.pivotSortState = options.pivotSortState;\n // this.updatePivotSortState(options.pivotSortState);\n }\n if (Env.mode !== 'node') {\n this.editorManager = new EditManager(this);\n }\n\n this.refreshHeader();\n this.internalProps.useOneRowHeightFillAll = false;\n this.stateManager.initCheckedState(records);\n // this.internalProps.frozenColCount = this.options.frozenColCount || this.rowHeaderLevelCount;\n\n // 生成单元格场景树\n this.scenegraph.createSceneGraph();\n // this.render();\n\n if (options.title) {\n const Title = Factory.getComponent('title') as ITitleComponent;\n this.internalProps.title = new Title(options.title, this);\n this.scenegraph.resize();\n }\n if (this.options.emptyTip) {\n if (this.internalProps.emptyTip) {\n this.internalProps.emptyTip?.resetVisible();\n } else {\n const EmptyTip = Factory.getComponent('emptyTip') as IEmptyTipComponent;\n this.internalProps.emptyTip = new EmptyTip(this.options.emptyTip, this);\n this.internalProps.emptyTip?.resetVisible();\n }\n }\n //为了确保用户监听得到这个事件 这里做了异步 确保vtable实例已经初始化完成\n setTimeout(() => {\n this.fireListeners(TABLE_EVENT_TYPE.INITIALIZED, null);\n }, 0);\n }\n }\n static get EVENT_TYPE(): typeof PIVOT_TABLE_EVENT_TYPE {\n return PIVOT_TABLE_EVENT_TYPE;\n }\n isListTable(): false {\n return false;\n }\n isPivotTable(): true {\n return true;\n }\n isPivotChart(): false {\n return false;\n }\n get recordsCount() {\n return this.records?.length;\n }\n _canResizeColumn(col: number, row: number): boolean {\n const ifCan = super._canResizeColumn(col, row);\n if (ifCan) {\n const isSeriesNumber = this.internalProps.layoutMap.isSeriesNumber(col, row);\n if (isSeriesNumber && this.internalProps.rowSeriesNumber.disableColumnResize === true) {\n return false;\n } else if (!this.internalProps.layoutMap.indicatorsAsCol) {\n // 列上是否配置了禁止拖拽列宽的配置项disableColumnResize\n const cellDefine = this.internalProps.layoutMap.getBody(col, this.columnHeaderLevelCount);\n if ((cellDefine as IndicatorData)?.disableColumnResize) {\n return false;\n }\n }\n }\n return ifCan;\n }\n updateOption(options: PivotTableConstructorOptions) {\n const internalProps = this.internalProps;\n //维护选中状态\n // const range = internalProps.selection.range; //保留原有单元格选中状态\n super.updateOption(options);\n if (!options.rowHierarchyType) {\n options.rowHierarchyType = 'grid';\n }\n if (!options.columnHierarchyType) {\n options.columnHierarchyType = 'grid';\n }\n this.layoutNodeId = { seqId: 0 };\n this.internalProps.columns = cloneDeep(options.columns);\n this.internalProps.rows = cloneDeep(options.rows);\n this.internalProps.indicators = !options.indicators?.length ? [] : cloneDeepSpec(options.indicators);\n options.indicators?.forEach((indicatorDefine, index) => {\n if (typeof indicatorDefine === 'object' && indicatorDefine?.editor) {\n (this.internalProps.indicators[index] as IIndicator).editor = indicatorDefine.editor;\n }\n });\n this.internalProps.columnTree =\n options.indicatorsAsCol && !options.columns?.length && !options.columnTree ? [] : cloneDeep(options.columnTree);\n this.internalProps.rowTree =\n !options.indicatorsAsCol && !options.rows?.length && !options.rowTree ? [] : cloneDeep(options.rowTree);\n options.records && (this.internalProps.records = options.records);\n this.stateManager.initCheckedState(this.internalProps.records);\n this.stateManager.updateDrillState(undefined, undefined, false, false, -1, -1);\n //分页配置\n this.pagination = options.pagination;\n // 更新protectedSpace\n internalProps.columnResizeType = options.resize?.columnResizeType ?? options.columnResizeType ?? 'column';\n internalProps.rowResizeType = options.resize?.rowResizeType ?? options.rowResizeType ?? 'row';\n internalProps.dataConfig = cloneDeep(options.dataConfig);\n this.internalProps.columnWidthConfig = options.columnWidthConfig;\n this.internalProps.columnWidthConfigForRowHeader = options.columnWidthConfigForRowHeader;\n\n //维护tree树形结构的展开状态\n if (\n options?.rowHierarchyType !== 'grid' &&\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).rowHierarchyType !== 'grid' &&\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).rowExpandLevel === options?.rowExpandLevel\n ) {\n const beforeRowDimensions = (this.internalProps.layoutMap as PivotHeaderLayoutMap).rowDimensionTree.tree.children;\n this.internalProps.rowTree?.forEach((node: IHeaderTreeDefine, index: number) => {\n const beforeRowDimension = beforeRowDimensions.find(\n item => item.dimensionKey === node.dimensionKey && item.value === node.value\n );\n if (beforeRowDimension) {\n this._syncHierarchyState(beforeRowDimension, node);\n }\n });\n }\n const records = this.internalProps.records;\n this.internalProps.recordsIsTwoDimensionalArray = false;\n if (records?.[0]?.constructor === Array) {\n this.internalProps.recordsIsTwoDimensionalArray = true;\n }\n\n //TODO 这里需要加上判断 dataConfig是否有配置变化\n if (options.customConfig?.enableDataAnalysis === false) {\n let columnDimensionTree;\n let rowDimensionTree;\n if (options.columnTree) {\n columnDimensionTree = new DimensionTree(\n (this.internalProps.columnTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.columnHierarchyType,\n this.options.columnHierarchyType !== 'grid' ? this.options.columnExpandLevel ?? 1 : undefined\n );\n }\n if (options.rowTree) {\n rowDimensionTree = new DimensionTree(\n (this.internalProps.rowTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.rowHierarchyType,\n this.options.rowHierarchyType !== 'grid' ? this.options.rowExpandLevel ?? 1 : undefined\n );\n }\n internalProps.layoutMap.clearHeaderPathCache();\n internalProps.layoutMap = new PivotHeaderLayoutMap(this, null, columnDimensionTree, rowDimensionTree);\n //判断如果数据是二维数组 则标识已经分析过 直接从二维数组挨个读取渲染即可\n //不是二维数组 对应是个object json对象 则表示flat数据,需要对应行列维度进行转成方便数据查询的行列树结构\n if (this.internalProps.recordsIsTwoDimensionalArray === false) {\n this.flatDataToObjects = new FlatDataToObjects(\n {\n rows: internalProps.layoutMap.fullRowDimensionKeys,\n columns: internalProps.layoutMap.colDimensionKeys,\n indicators: internalProps.layoutMap.indicatorKeys,\n indicatorsAsCol: internalProps.layoutMap.indicatorsAsCol,\n indicatorDimensionKey: internalProps.layoutMap.indicatorDimensionKey\n },\n records\n );\n }\n } else {\n const keysResults = parseColKeyRowKeyForPivotTable(this, options);\n const { rowKeys, columnKeys, indicatorKeys } = keysResults;\n let { columnDimensionTree, rowDimensionTree } = keysResults;\n this.dataset = new Dataset(\n internalProps.dataConfig,\n // this.pagination,\n rowKeys,\n columnKeys,\n indicatorKeys,\n this.internalProps.indicators,\n options.indicatorsAsCol ?? true,\n records,\n options.rowHierarchyType,\n options.columnHierarchyType,\n this.internalProps.columnTree, //传递自定义树形结构会在dataset中补充指标节点children\n this.internalProps.rowTree,\n false,\n !!options.extensionRows,\n !!options.parseCustomTreeToMatchRecords\n );\n if (!options.columnTree) {\n if (options.indicatorsAsCol !== false) {\n this.dataset.colHeaderTree = supplementIndicatorNodesForCustomTree(\n this.dataset.colHeaderTree,\n options.indicators\n );\n }\n options.indicatorsAsCol !== false &&\n options.indicators &&\n this.dataset.colHeaderTree &&\n deleteHideIndicatorNode(this.dataset.colHeaderTree, options.indicators, false, this);\n columnDimensionTree = new DimensionTree(\n (this.dataset.colHeaderTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.columnHierarchyType,\n this.options.columnHierarchyType !== 'grid' ? this.options.columnExpandLevel ?? 1 : undefined\n );\n } else {\n if (columnDimensionTree.hasHideNode) {\n deleteHideIndicatorNode(columnDimensionTree.tree.children, options.indicators, true, this);\n columnDimensionTree.reset(columnDimensionTree.tree.children);\n }\n }\n if (!options.rowTree) {\n if (options.indicatorsAsCol === false) {\n this.dataset.rowHeaderTree = supplementIndicatorNodesForCustomTree(\n this.dataset.rowHeaderTree,\n options.indicators\n );\n }\n options.indicatorsAsCol === false &&\n this.dataset.rowHeaderTree &&\n options.indicators &&\n deleteHideIndicatorNode(this.dataset.rowHeaderTree, options.indicators, false, this);\n rowDimensionTree = new DimensionTree(\n (this.dataset.rowHeaderTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.rowHierarchyType,\n this.options.rowHierarchyType !== 'grid' ? this.options.rowExpandLevel ?? 1 : undefined\n );\n } else {\n if (rowDimensionTree.hasHideNode) {\n deleteHideIndicatorNode(rowDimensionTree.tree.children, options.indicators, true, this);\n rowDimensionTree.reset(rowDimensionTree.tree.children);\n }\n }\n internalProps.layoutMap = new PivotHeaderLayoutMap(this, this.dataset, columnDimensionTree, rowDimensionTree);\n }\n this._changePivotSortStateBySortRules();\n\n if ((options.pivotSortState?.length ?? 0) > 0) {\n this.pivotSortState = [];\n this.pivotSortState = options.pivotSortState;\n // this.updatePivotSortState(options.pivotSortState);\n }\n\n // 更新表头\n this.refreshHeader();\n this.internalProps.useOneRowHeightFillAll = false;\n\n // this.hasMedia = null; // 避免重复绑定\n // 清空目前数据\n if (internalProps.releaseList) {\n internalProps.releaseList.forEach(releaseObj => releaseObj?.release?.());\n internalProps.releaseList = null;\n }\n // // 恢复selection状态\n // internalProps.selection.range = range;\n // this._updateSize();\n\n // 清空单元格内容\n this.scenegraph.clearCells();\n // this.internalProps.frozenColCount = this.options.frozenColCount || this.rowHeaderLevelCount;\n // 生成单元格场景树\n this.scenegraph.createSceneGraph();\n\n // if (this.internalProps.title && !this.internalProps.title.isReleased) {\n // this._updateSize();\n // this.internalProps.title.resize();\n // this.scenegraph.resize();\n // }\n if (options.title) {\n const Title = Factory.getComponent('title') as ITitleComponent;\n this.internalProps.title = new Title(options.title, this);\n this.scenegraph.resize();\n }\n if (this.options.emptyTip) {\n if (this.internalProps.emptyTip) {\n this.internalProps.emptyTip?.resetVisible();\n } else {\n const EmptyTip = Factory.getComponent('emptyTip') as IEmptyTipComponent;\n this.internalProps.emptyTip = new EmptyTip(this.options.emptyTip, this);\n this.internalProps.emptyTip?.resetVisible();\n }\n }\n // this.render();\n return new Promise(resolve => {\n setTimeout(resolve, 0);\n });\n }\n\n /**\n * 更新页码\n * @param pagination 修改页码\n */\n updatePagination(pagination?: IPagination): void {\n this.internalProps.layoutMap.clearHeaderPathCache();\n\n if (pagination) {\n if (!this.pagination) {\n this.pagination = { currentPage: 0, perPageCount: 0 };\n }\n typeof pagination.currentPage === 'number' &&\n pagination.currentPage >= 0 &&\n (this.pagination.currentPage = pagination.currentPage);\n pagination.perPageCount &&\n (this.pagination.perPageCount = pagination.perPageCount || this.pagination.perPageCount);\n // 清空单元格内容\n this.scenegraph.clearCells();\n //数据源缓存数据更新\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).setPagination(this.pagination);\n // this.refreshHeader();\n //刷新表头,原来这里是_refreshRowCount 后改名为_refreshRowColCount 因为表头定义会影响行数,而转置模式下会影响列数\n this.refreshRowColCount();\n // 生成单元格场景树\n this.scenegraph.createSceneGraph();\n this.render();\n } else if (this.pagination) {\n // 原来有分页 现在更新成不分页\n this.pagination = undefined;\n // 清空单元格内容\n this.scenegraph.clearCells();\n //数据源缓存数据更新\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).setPagination(undefined);\n // this.refreshHeader();\n //刷新表头,原来这里是_refreshRowCount 后改名为_refreshRowColCount 因为表头定义会影响行数,而转置模式下会影响列数\n this.refreshRowColCount();\n // 生成单元格场景树\n this.scenegraph.createSceneGraph();\n this.render();\n }\n }\n\n refreshHeader(): void {\n //设置列宽\n this.setMinMaxLimitWidth(true);\n //刷新表头,原来这里是_refreshRowCount 后改名为_refreshRowColCount 因为表头定义会影响行数,而转置模式下会影响列数\n this.refreshRowColCount();\n }\n\n refreshRowColCount(): void {\n const table = this;\n const { layoutMap } = table.internalProps;\n if (!layoutMap) {\n return;\n }\n table.colCount = layoutMap.colCount ?? 0;\n table.rowCount = layoutMap.rowCount ?? 0;\n\n this.internalProps.frozenColCount = this.options.frozenColCount\n ? this.options.frozenColCount\n : (layoutMap.rowHeaderLevelCount ?? 0) + layoutMap.leftRowSeriesNumberColumnCount;\n // this.internalProps.frozenColCount= Math.max(\n // (layoutMap.rowHeaderLevelCount ?? 0) + layoutMap.leftRowSeriesNumberColumnCount,\n // this.options.frozenColCount ?? 0\n // );\n table.frozenRowCount = Math.max(layoutMap.headerLevelCount, this.options.frozenRowCount ?? 0);\n\n if (table.bottomFrozenRowCount !== (this.options.bottomFrozenRowCount ?? 0)) {\n table.bottomFrozenRowCount = this.options.bottomFrozenRowCount ?? 0;\n }\n if (table.rightFrozenColCount !== (this.options.rightFrozenColCount ?? 0)) {\n table.rightFrozenColCount = this.options.rightFrozenColCount ?? 0;\n }\n this.stateManager.setFrozenCol(this.internalProps.frozenColCount);\n this.stateManager.setFrozenRow(this.frozenRowCount);\n }\n protected _getSortFuncFromHeaderOption(\n columns: undefined,\n field: FieldDef,\n fieldKey?: FieldKeyDef\n ): ((v1: any, v2: any, order: SortOrder) => 0 | 1 | -1) | undefined {\n return undefined;\n }\n /**\n * Get rowHierarchyType of pivotTable\n */\n get rowHierarchyType(): 'grid' | 'tree' | 'grid-tree' {\n return (this.internalProps.layoutMap as PivotHeaderLayoutMap).rowHierarchyType;\n }\n /**\n * Get columnHierarchyType of pivotTable\n */\n get columnHierarchyType(): 'grid' | 'grid-tree' {\n return (this.internalProps.layoutMap as PivotHeaderLayoutMap).columnHierarchyType;\n }\n /**\n * 将现有tree中的的hierarchyState同步到rows透视树中\n * @param sourceNode\n * @param targetNode\n */\n _syncHierarchyState(sourceNode: any, targetNode: IHeaderTreeDefine) {\n if (sourceNode.value === targetNode.value && sourceNode.dimensionKey === targetNode.dimensionKey) {\n targetNode.hierarchyState =\n targetNode.hierarchyState ?? (targetNode?.children ? sourceNode.hierarchyState : undefined);\n (targetNode?.children as IHeaderTreeDefine[])?.forEach((targetChildNode: IHeaderTreeDefine, index: number) => {\n if (sourceNode?.children?.[index] && targetChildNode) {\n const beforeRowDimension = sourceNode.children.find(\n (item: any) => item.dimensionKey === targetChildNode.dimensionKey && item.value === targetChildNode.value\n );\n if (beforeRowDimension) {\n this._syncHierarchyState(beforeRowDimension, targetChildNode);\n }\n }\n });\n }\n }\n getRecordShowIndexByCell(col: number, row: number): number {\n return undefined;\n }\n getTableIndexByRecordIndex(recordIndex: number): number {\n return undefined;\n }\n getTableIndexByField(field: FieldDef): number {\n return undefined;\n }\n getCellAddrByFieldRecord(field: FieldDef, recordIndex: number): CellAddress {\n return undefined;\n }\n getBodyIndexByRow(row: number): number {\n const { layoutMap } = this.internalProps;\n return layoutMap.getBodyIndexByRow(row);\n }\n getBodyIndexByCol(col: number): number {\n const { layoutMap } = this.internalProps;\n return layoutMap.getBodyIndexByCol(col);\n }\n getFieldData(field: string, col: number, row: number): FieldData {\n const table = this;\n if (table.internalProps.layoutMap.isHeader(col, row)) {\n return undefined;\n }\n if (this.internalProps.recordsIsTwoDimensionalArray) {\n const rowIndex = this.getBodyIndexByRow(row);\n const colIndex = this.getBodyIndexByCol(col);\n return this.records[rowIndex]?.[colIndex];\n } else if (this.dataset) {\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n if (cellDimensionPath) {\n let indicatorPosition: { position: 'col' | 'row'; index?: number };\n const colKeys = cellDimensionPath.colHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((colPath: any, index: number) => {\n if (colPath.indicatorKey) {\n indicatorPosition = {\n position: 'col',\n index\n };\n }\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((rowPath: any, index: number) => {\n if (rowPath.indicatorKey) {\n indicatorPosition = {\n position: 'row',\n index\n };\n }\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const aggregator = this.dataset.getAggregator(\n // !this.internalProps.layoutMap.indicatorsAsCol ? rowKeys.slice(0, -1) : rowKeys,\n // this.internalProps.layoutMap.indicatorsAsCol ? colKeys.slice(0, -1) : colKeys,\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).getIndicatorKey(col, row),\n true,\n indicatorPosition\n );\n if (aggregator.records && aggregator.records.length >= 1) {\n return aggregator.records[0][field];\n }\n // return ''\n }\n } else if (this.flatDataToObjects) {\n //数据为行列树结构 根据row col获取对应的维度名称 查找到对应值\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths.map((colPath: any) => {\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths.map((rowPath: any) => {\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const treeNode = this.flatDataToObjects.getTreeNode(\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap.getBody(col, row) as IndicatorData).indicatorKey,\n false\n );\n if (treeNode?.record) {\n return treeNode?.record[field];\n }\n }\n }\n getCellValue(col: number, row: number, skipCustomMerge?: boolean): FieldData {\n if (!skipCustomMerge) {\n const customMergeText = this.getCustomMergeValue(col, row);\n if (customMergeText) {\n return customMergeText;\n }\n }\n if (this.internalProps.layoutMap.isSeriesNumber(col, row)) {\n if (this.internalProps.layoutMap.isSeriesNumberInHeader(col, row)) {\n const { title } = this.internalProps.layoutMap.getSeriesNumberHeader(col, row);\n return title;\n }\n const { format } = this.internalProps.layoutMap.getSeriesNumberBody(col, row);\n return typeof format === 'function' ? format(col, row, this) : row - this.columnHeaderLevelCount + 1;\n } else if (this.internalProps.layoutMap.isHeader(col, row)) {\n const { title, fieldFormat } = this.internalProps.layoutMap.getHeader(col, row) as HeaderData;\n return typeof fieldFormat === 'function' ? fieldFormat(title, col, row, this as BaseTableAPI) : title;\n }\n if (this.internalProps.recordsIsTwoDimensionalArray) {\n const { fieldFormat } = this.internalProps.layoutMap.getBody(col, row) as IndicatorData;\n const rowIndex = this.getBodyIndexByRow(row);\n const colIndex = this.getBodyIndexByCol(col);\n const dataValue = this.records[rowIndex]?.[colIndex];\n // const cellHeaderPaths = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n if (typeof fieldFormat === 'function') {\n const fieldResult = fieldFormat(dataValue, col, row, this as BaseTableAPI);\n return fieldResult;\n }\n return dataValue;\n } else if (this.dataset) {\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n let indicatorPosition: { position: 'col' | 'row'; index?: number };\n const colKeys = cellDimensionPath.colHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n ?.map((colPath: any, index: number) => {\n if (colPath.indicatorKey) {\n indicatorPosition = {\n position: 'col',\n index\n };\n }\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n ?.map((rowPath: any, index: number) => {\n if (rowPath.indicatorKey) {\n indicatorPosition = {\n position: 'row',\n index\n };\n }\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const aggregator = this.dataset.getAggregator(\n // !this.internalProps.layoutMap.indicatorsAsCol ? rowKeys.slice(0, -1) : rowKeys,\n // this.internalProps.layoutMap.indicatorsAsCol ? colKeys.slice(0, -1) : colKeys,\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).getIndicatorKey(col, row),\n true,\n indicatorPosition\n );\n const { fieldFormat } = this.internalProps.layoutMap.getBody(col, row) as IndicatorData;\n // return typeof fieldFormat === 'function'\n // ? fieldFormat(valueNode?.value, col, row, this as BaseTableAPI)\n // : valueNode?.value ?? '';\n return aggregator.formatValue\n ? aggregator.formatValue(col, row, this as BaseTableAPI)\n : typeof fieldFormat === 'function'\n ? fieldFormat(aggregator?.value(), col, row, this as BaseTableAPI)\n : aggregator?.value() ?? '';\n } else if (this.flatDataToObjects) {\n //数据为行列树结构 根据row col获取对应的维度名称 查找到对应值\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths.map((colPath: any) => {\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths.map((rowPath: any) => {\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const valueNode = this.flatDataToObjects.getTreeNode(\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap.getBody(col, row) as IndicatorData).indicatorKey\n );\n const { fieldFormat } = this.internalProps.layoutMap.getBody(col, row) as IndicatorData;\n return typeof fieldFormat === 'function'\n ? fieldFormat(valueNode?.value, col, row, this as BaseTableAPI)\n : valueNode?.value ?? '';\n }\n // return this.getFieldData(fieldFormat || field, col, row);\n }\n\n getCellOriginValue(col: number, row: number): FieldData {\n const table = this;\n if (table.internalProps.layoutMap.isHeader(col, row)) {\n const { title } = table.internalProps.layoutMap.getHeader(col, row);\n return typeof title === 'function' ? title() : title;\n }\n if (this.internalProps.recordsIsTwoDimensionalArray) {\n const rowIndex = this.getBodyIndexByRow(row);\n const colIndex = this.getBodyIndexByCol(col);\n const dataValue = this.records[rowIndex]?.[colIndex];\n return dataValue;\n } else if (this.dataset) {\n let indicatorPosition: { position: 'col' | 'row'; index?: number };\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((colPath: any, index: number) => {\n if (colPath.indicatorKey) {\n indicatorPosition = {\n position: 'col',\n index\n };\n }\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((rowPath: any, index: number) => {\n if (rowPath.indicatorKey) {\n indicatorPosition = {\n position: 'row',\n index\n };\n }\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const aggregator = this.dataset.getAggregator(\n // !this.internalProps.layoutMap.indicatorsAsCol ? rowKeys.slice(0, -1) : rowKeys,\n // this.internalProps.layoutMap.indicatorsAsCol ? colKeys.slice(0, -1) : colKeys,\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).getIndicatorKey(col, row),\n true,\n indicatorPosition\n );\n return aggregator.value ? aggregator.value() : undefined;\n // return ''\n } else if (this.flatDataToObjects) {\n //数据为行列树结构 根据row col获取对应的维度名称 查找到对应值\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths.map((colPath: any) => {\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths.map((rowPath: any) => {\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const treeNode = this.flatDataToObjects.getTreeNode(\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap.getBody(col, row) as IndicatorData).indicatorKey\n );\n return treeNode?.value;\n }\n\n // const { field } = table.internalProps.layoutMap.getBody(col, row);\n // return table.getFieldData(field, col, row);\n }\n\n /** 获取单元格展示数据源最原始值 */\n getCellRawValue(col: number, row: number): FieldData {\n const table = this;\n if (table.internalProps.layoutMap.isHeader(col, row)) {\n const { title } = table.internalProps.layoutMap.getHeader(col, row);\n return typeof title === 'function' ? title() : title;\n }\n if (this.internalProps.recordsIsTwoDimensionalArray) {\n const rowIndex = this.getBodyIndexByRow(row);\n const colIndex = this.getBodyIndexByCol(col);\n const dataValue = this.records[rowIndex]?.[colIndex];\n return dataValue;\n } else if (this.dataset) {\n let indicatorPosition: { position: 'col' | 'row'; index?: number };\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((colPath: any, index: number) => {\n if (colPath.indicatorKey) {\n indicatorPosition = {\n position: 'col',\n index\n };\n }\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((rowPath: any, index: number) => {\n if (rowPath.indicatorKey) {\n indicatorPosition = {\n position: 'row',\n index\n };\n }\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const aggregator = this.dataset.getAggregator(\n // !this.internalProps.layoutMap.indicatorsAsCol ? rowKeys.slice(0, -1) : rowKeys,\n // this.internalProps.layoutMap.indicatorsAsCol ? colKeys.slice(0, -1) : colKeys,\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).getIndicatorKey(col, row),\n false,\n indicatorPosition\n );\n return aggregator.value ? aggregator.value() : undefined;\n } else if (this.flatDataToObjects) {\n //数据为行列树结构 根据row col获取对应的维度名称 查找到对应值\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths.map((colPath: any) => {\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths.map((rowPath: any) => {\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const treeNode = this.flatDataToObjects.getTreeNode(\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap.getBody(col, row) as IndicatorData).indicatorKey,\n false\n );\n return treeNode?.value;\n }\n }\n\n // 获取原始数据\n getCellOriginRecord(col: number, row: number) {\n const table = this;\n if (table.internalProps.layoutMap.isHeader(col, row)) {\n return undefined;\n }\n if (this.internalProps.recordsIsTwoDimensionalArray) {\n const rowIndex = this.getBodyIndexByRow(row);\n const colIndex = this.getBodyIndexByCol(col);\n const dataValue = this.records[rowIndex]?.[colIndex];\n return dataValue;\n } else if (this.dataset) {\n let indicatorPosition: { position: 'col' | 'row'; index?: number };\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((colPath: any, index: number) => {\n if (colPath.indicatorKey) {\n indicatorPosition = {\n position: 'col',\n index\n };\n }\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((rowPath: any, index: number) => {\n if (rowPath.indicatorKey) {\n indicatorPosition = {\n position: 'row',\n index\n };\n }\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const aggregator = this.dataset.getAggregator(\n // !this.internalProps.layoutMap.indicatorsAsCol ? rowKeys.slice(0, -1) : rowKeys,\n // this.internalProps.layoutMap.indicatorsAsCol ? colKeys.slice(0, -1) : colKeys,\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).getIndicatorKey(col, row),\n true,\n indicatorPosition\n );\n return aggregator.records;\n // return ''\n } else if (this.flatDataToObjects) {\n //数据为行列树结构 根据row col获取对应的维度名称 查找到对应值\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths.map((colPath: any) => {\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths.map((rowPath: any) => {\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const treeNode = this.flatDataToObjects.getTreeNode(\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap.getBody(col, row) as IndicatorData).indicatorKey\n );\n return treeNode?.record;\n }\n }\n\n getCellRawRecord(col: number, row: number) {\n const table = this;\n if (table.internalProps.layoutMap.isHeader(col, row)) {\n return undefined;\n }\n if (this.internalProps.recordsIsTwoDimensionalArray) {\n const rowIndex = this.getBodyIndexByRow(row);\n const colIndex = this.getBodyIndexByCol(col);\n const dataValue = this.records[rowIndex]?.[colIndex];\n return dataValue;\n } else if (this.dataset) {\n let indicatorPosition: { position: 'col' | 'row'; index?: number };\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((colPath: any, index: number) => {\n if (colPath.indicatorKey) {\n indicatorPosition = {\n position: 'col',\n index\n };\n }\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((rowPath: any, index: number) => {\n if (rowPath.indicatorKey) {\n indicatorPosition = {\n position: 'row',\n index\n };\n }\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const aggregator = this.dataset.getAggregator(\n // !this.internalProps.layoutMap.indicatorsAsCol ? rowKeys.slice(0, -1) : rowKeys,\n // this.internalProps.layoutMap.indicatorsAsCol ? colKeys.slice(0, -1) : colKeys,\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).getIndicatorKey(col, row),\n false,\n indicatorPosition\n );\n return aggregator.records;\n // return ''\n } else if (this.flatDataToObjects) {\n //数据为行列树结构 根据row col获取对应的维度名称 查找到对应值\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const colKeys = cellDimensionPath.colHeaderPaths.map((colPath: any) => {\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths.map((rowPath: any) => {\n return rowPath.indicatorKey ?? rowPath.value;\n });\n const treeNode = this.flatDataToObjects.getTreeNode(\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap.getBody(col, row) as IndicatorData).indicatorKey,\n false\n );\n return treeNode?.record;\n }\n }\n /**\n * 全量更新排序规则\n * @param sortRules\n */\n updateSortRules(sortRules: SortRules, col?: number, row?: number) {\n if (this.internalProps.dataConfig) {\n this.internalProps.dataConfig.sortRules = sortRules;\n } else {\n this.internalProps.dataConfig = { sortRules };\n }\n this.dataset.updateSortRules(sortRules);\n this._changePivotSortStateBySortRules();\n const { layoutMap } = this.internalProps;\n layoutMap.resetHeaderTree();\n // 清空单元格内容\n this.scenegraph.clearCells();\n if (isNumber(col) && isNumber(row)) {\n if (this.isRowHeader(col, row)) {\n this.setMinMaxLimitWidth(true);\n this.internalProps._widthResizedColMap.clear();\n } else if (this.isCornerHeader(col, row)) {\n if (layoutMap.cornerSetting.titleOnDimension === 'column') {\n this.setMinMaxLimitWidth(true);\n this.internalProps._widthResizedColMap.clear();\n } else if (layoutMap.cornerSetting.titleOnDimension === 'row') {\n this.internalProps._heightResizedRowMap.clear();\n }\n } else if (this.isColumnHeader(col, row)) {\n this.internalProps._heightResizedRowMap.clear();\n }\n this.refreshRowColCount();\n } else {\n this.refreshHeader();\n }\n this.internalProps.useOneRowHeightFillAll = false;\n // 生成单元格场景树\n this.scenegraph.createSceneGraph(true);\n this.render();\n }\n _changePivotSortStateBySortRules() {\n this.pivotSortState = [];\n const sortRules = this.internalProps.dataConfig?.sortRules ?? [];\n for (let i = 0; i < sortRules.length; i++) {\n const sortRule = sortRules[i];\n // if ((sortRule as SortByIndicatorRule).sortType) {\n const dimensions: IDimensionInfo[] = [];\n if (\n (sortRule as SortByIndicatorRule).sortByIndicator &&\n (sortRule as SortByIndicatorRule).sortField ===\n (this.dataset.indicatorsAsCol\n ? this.dataset.rows[this.dataset.rows.length - 1]\n : this.dataset.columns[this.dataset.columns.length - 1])\n ) {\n for (let j = 0; j < (sortRule as SortByIndicatorRule).query.length; j++) {\n dimensions.push({\n dimensionKey: this.dataset.indicatorsAsCol ? this.dataset.columns[j] : this.dataset.rows[j],\n value: (sortRule as SortByIndicatorRule).query[j]\n });\n }\n dimensions.push({\n indicatorKey: (sortRule as SortByIndicatorRule).sortByIndicator,\n value:\n this.internalProps.layoutMap.getIndicatorInfo((sortRule as SortByIndicatorRule).sortByIndicator)?.title ??\n (sortRule as SortByIndicatorRule).sortByIndicator\n });\n } else {\n dimensions.push({\n dimensionKey: (sortRule as SortTypeRule).sortField,\n isPivotCorner: true,\n value: (sortRule as SortTypeRule).sortField\n });\n }\n const sortType = sortRule.sortType ? (sortRule.sortType.toUpperCase() as 'ASC' | 'DESC' | 'NORMAL') : 'ASC';\n this.pivotSortState.push({\n dimensions,\n order: SortType[sortType]\n });\n // }\n }\n }\n /** 解析配置columnWidthConfig传入的列宽配置 */\n _parseColumnWidthConfig(columnWidthConfig: { dimensions: IDimensionInfo[]; width: number }[]) {\n for (let i = 0; i < columnWidthConfig?.length; i++) {\n const item = columnWidthConfig[i];\n const dimensions = item.dimensions;\n const width = item.width;\n const cell = this.getCellAddressByHeaderPaths(dimensions);\n if (cell && cell.col >= this.rowHeaderLevelCount) {\n const cellPath = this.getCellHeaderPaths(cell.col, this.columnHeaderLevelCount); //如单指标隐藏指标情况,从body行去取headerPath才会包括指标维度\n if (cellPath.colHeaderPaths.length === dimensions.length) {\n let match = true;\n for (let i = 0; i < dimensions.length; i++) {\n const dimension = dimensions[i];\n const finded = (cellPath.colHeaderPaths as IDimensionInfo[]).findIndex((colPath: IDimensionInfo, index) => {\n if (colPath.indicatorKey === dimension.indicatorKey) {\n return true;\n }\n if (colPath.dimensionKey === dimension.dimensionKey && colPath.value === dimension.value) {\n return true;\n }\n return false;\n });\n if (finded < 0) {\n match = false;\n break;\n }\n }\n if (match && !this.internalProps._widthResizedColMap.has(cell.col)) {\n this._setColWidth(cell.col, width);\n this.internalProps._widthResizedColMap.add(cell.col); // add resize tag\n }\n }\n } else if (cell && cell.col < this.rowHeaderLevelCount) {\n if (!this.internalProps._widthResizedColMap.has(cell.col)) {\n this._setColWidth(cell.col, width);\n this.internalProps._widthResizedColMap.add(cell.col); // add resize tag\n }\n }\n }\n }\n\n // particularly for row header in react-vtable keepColumnWidthChange config\n _parseColumnWidthConfigForRowHeader(columnWidthConfig: { dimensions: IDimensionInfo[]; width: number }[]) {\n for (let i = 0; i < columnWidthConfig?.length; i++) {\n const item = columnWidthConfig[i];\n const dimensions = item.dimensions;\n const width = item.width;\n const cell = this.getCellAddressByHeaderPaths(dimensions);\n if (cell && cell.col < this.rowHeaderLevelCount) {\n if (!this.internalProps._widthResizedColMap.has(cell.col)) {\n this._setColWidth(cell.col, width);\n this.internalProps._widthResizedColMap.add(cell.col); // add resize tag\n }\n }\n }\n }\n\n /**\n * 更新排序状态\n * @param pivotSortStateConfig.dimensions 排序状态维度对应关系;pivotSortStateConfig.order 排序状态\n */\n updatePivotSortState(\n pivotSortStateConfig: {\n dimensions: IDimensionInfo[];\n order: SortOrder;\n }[]\n ) {\n this.pivotSortState = pivotSortStateConfig;\n }\n // changePivotSortState(pivotSortState: { dimensions: IDimensionInfo[]; order: SortOrder }) {\n // let isExist = false;\n // for (let i = 0; i < this.pivotSortState.length; i++) {\n // const pivotSortStateItem = this.pivotSortState[i];\n // const dimensions = pivotSortStateItem.dimensions;\n // const isEqual = dimensions.every(\n // (item, index) =>\n // (item.dimensionKey === pivotSortState.dimensions[index].dimensionKey ||\n // item.indicatorKey === pivotSortState.dimensions[index].indicatorKey) &&\n // item.value === pivotSortState.dimensions[index].value &&\n // ((isValid(item.isPivotCorner ?? pivotSortState.dimensions[index].isPivotCorner) &&\n // item.isPivotCorner === pivotSortState.dimensions[index].isPivotCorner) ||\n // (!isValid(item.isPivotCorner) && !isValid(pivotSortState.dimensions[index].isPivotCorner)))\n // );\n // if (isEqual) {\n // isExist = true;\n // pivotSortStateItem.order = pivotSortState.order;\n // break;\n // }\n // }\n // if (!isExist) {\n // this.pivotSortState.push(pivotSortState);\n // }\n // }\n /** 如果单元格所在维度或者指标配置了sort自动 可以通过该接口进行排序 */\n sort(col: number, row: number, order: SortOrder) {\n let dimensions: IDimensionInfo[];\n if ((this as PivotTable).isCornerHeader(col, row)) {\n const dimensionInfo = (this as PivotTable).getHeaderDefine(col, row) as any;\n dimensions = [];\n const dimension: IDimensionInfo = {\n isPivotCorner: true,\n dimensionKey: dimensionInfo.value,\n value: dimensionInfo.value\n };\n dimensions.push(dimension);\n } else if ((this as PivotTable).isColumnHeader(col, row)) {\n dimensions = (this as PivotTable).getCellHeaderPaths(col, row).colHeaderPaths as IDimensionInfo[];\n } else {\n dimensions = (this as PivotTable).getCellHeaderPaths(col, row).rowHeaderPaths as IDimensionInfo[];\n }\n\n const sortIndicator = dimensions[dimensions.length - 1].indicatorKey;\n\n const headerDefine = this.getHeaderDefine(col, row) as any;\n if (headerDefine.sort) {\n if ((this as PivotTable).dataset.sortRules) {\n const cacheOldDimensionSortRule: Record<string, SortRule> = {};\n for (let i = (this as PivotTable).dataset.sortRules.length - 1; i >= 0; i--) {\n const sortRule = (this as PivotTable).dataset.sortRules[i];\n if (headerDefine.dimensionKey && sortRule.sortField === headerDefine.dimensionKey) {\n cacheOldDimensionSortRule[sortRule.sortField] = sortRule;\n (this as PivotTable).dataset.sortRules.splice(i, 1);\n } else if (\n sortIndicator &&\n // headerDefine.indicatorKey === sortIndicator &&\n // sortIndicator === (sortRule as SortByIndicatorRule).sortByIndicator &&\n sortRule.sortField ===\n (this.dataset.indicatorsAsCol\n ? this.dataset.rows[this.dataset.rows.length - 1]\n : this.dataset.columns[this.dataset.columns.length - 1])\n ) {\n cacheOldDimensionSortRule[sortRule.sortField] = sortRule;\n (this as PivotTable).dataset.sortRules.splice(i, 1);\n }\n }\n if (sortIndicator) {\n const sortField = this.dataset.indicatorsAsCol\n ? this.dataset.rows[this.dataset.rows.length - 1]\n : this.dataset.columns[this.dataset.columns.length - 1];\n (this as PivotTable).dataset.sortRules.push({\n sortField,\n sortType: SortType[order],\n sortByIndicator: sortIndicator,\n query: dimensions.reduce((arr, dimension) => {\n if (dimension.dimensionKey) {\n arr.push(dimension.value);\n }\n return arr;\n }, []),\n sortFunc: (cacheOldDimensionSortRule[sortField] as SortByIndicatorRule)?.sortFunc\n });\n } else {\n (this as PivotTable).dataset.sortRules.push(\n Object.assign(cacheOldDimensionSortRule[headerDefine.dimensionKey] ?? {}, {\n sortField: headerDefine.dimensionKey,\n sortType: SortType[order as 'ASC' | 'DESC']\n })\n );\n }\n } else {\n if (sortIndicator) {\n (this as PivotTable).dataset.sortRules = [\n {\n sortField: this.dataset.indicatorsAsCol\n ? this.dataset.rows[this.dataset.rows.length - 1]\n : this.dataset.columns[this.dataset.columns.length - 1],\n sortType: SortType[order as 'ASC' | 'DESC'],\n sortByIndicator: sortIndicator,\n query: dimensions.reduce((arr, dimension) => {\n if (dimension.dimensionKey) {\n arr.push(dimension.value);\n }\n return arr;\n }, [])\n }\n ];\n } else {\n (this as PivotTable).dataset.sortRules = [\n {\n sortField: headerDefine.dimensionKey,\n sortType: SortType[order as 'ASC' | 'DESC']\n }\n ];\n }\n }\n\n (this as PivotTable).updateSortRules((this as PivotTable).dataset.sortRules, col, row);\n }\n }\n\n getPivotSortState(col: number, row: number): SortOrder {\n if (!this.pivotSortState) {\n return undefined;\n }\n const cellRange = this.getCellRange(col, row);\n for (let i = 0; i < this.pivotSortState.length; i++) {\n const pivotState = this.pivotSortState[i];\n const dimensions = pivotState.dimensions;\n const cell = this.getCellAddressByHeaderPaths(dimensions);\n // const { col: sortCol, row: sortRow, order } = this.pivotSortState[i];\n const order = pivotState.order;\n\n if (cell && cellInRange(cellRange, cell.col, cell.row)) {\n return order;\n }\n }\n return undefined;\n }\n /**\n * 拖拽移动表头位置\n * @param source 移动源位置\n * @param target 移动目标位置\n */\n _moveHeaderPosition(source: CellAddress, target: CellAddress) {\n const sourceCellRange = this.getCellRange(source.col, source.row);\n const targetCellRange = this.getCellRange(target.col, target.row);\n // 调用布局类 布局数据结构调整为移动位置后的\n const moveContext = (this.internalProps.layoutMap as PivotHeaderLayoutMap).moveHeaderPosition(source, target);\n if (moveContext) {\n if (moveContext.moveType === 'column') {\n // 是扁平数据结构 需要将二维数组this.records进行调整\n if (this.internalProps.recordsIsTwoDimensionalArray) {\n for (let row = 0; row < this.internalProps.records.length; row++) {\n const sourceColumns = (this.internalProps.records[row] as unknown as number[]).splice(\n moveContext.sourceIndex - this.rowHeaderLevelCount,\n moveContext.sourceSize\n );\n sourceColumns.unshift((moveContext.targetIndex as any) - this.rowHeaderLevelCount, 0 as any);\n Array.prototype.splice.apply(this.internalProps.records[row] as unknown as number[], sourceColumns);\n }\n }\n //colWidthsMap 中存储着每列的宽度 根据移动 sourceCol targetCol 调整其中的位置\n // this.colWidthsMap.adjustOrder(moveContext.sourceIndex, moveContext.targetIndex, moveContext.moveSize);\n this.colWidthsMap.exchangeOrder(\n sourceCellRange.start.col,\n sourceCellRange.end.col - sourceCellRange.start.col + 1,\n targetCellRange.start.col,\n targetCellRange.end.col - targetCellRange.start.col + 1,\n moveContext.targetIndex\n );\n //下面代码取自refreshHeader列宽设置逻辑\n //设置列宽极限值 TODO 目前是有问题的 最大最小宽度限制 移动列位置后不正确\n this.setMinMaxLimitWidth();\n } else if (moveContext.moveType === 'row') {\n // 是扁平数据结构 需要将二维数组this.records进行调整\n if (this.internalProps.recordsIsTwoDimensionalArray) {\n const sourceRows = (this.internalProps.records as unknown as number[]).splice(\n moveContext.sourceIndex - this.columnHeaderLevelCount,\n moveContext.sourceSize\n );\n sourceRows.unshift((moveContext.targetIndex as any) - this.columnHeaderLevelCount, 0 as any);\n Array.prototype.splice.apply(this.internalProps.records, sourceRows);\n }\n //colWidthsMap 中存储着每列的宽度 根据移动 sourceCol targetCol 调整其中的位置\n // this.rowHeightsMap.adjustOrder(moveContext.sourceIndex, moveContext.targetIndex, moveContext.moveSize);\n if (moveContext.targetIndex > moveContext.sourceIndex) {\n this.rowHeightsMap.exchangeOrder(\n moveContext.sourceIndex,\n moveContext.sourceSize,\n moveContext.targetIndex + moveContext.sourceSize - moveContext.targetSize,\n moveContext.targetSize,\n moveContext.targetIndex\n );\n } else {\n this.rowHeightsMap.exchangeOrder(\n moveContext.sourceIndex,\n moveContext.sourceSize,\n moveContext.targetIndex,\n moveContext.targetSize,\n moveContext.targetIndex\n );\n }\n }\n return moveContext;\n }\n return null;\n }\n /**\n * 表头切换层级状态\n * @param col\n * @param row\n * @param recalculateColWidths 是否重新计算列宽 默认为true.(设置width:auto或者 autoWidth 情况下才有必要考虑该参数)\n */\n toggleHierarchyState(col: number, row: number, recalculateColWidths: boolean = true) {\n this.internalProps.layoutMap.clearHeaderPathCache();\n\n const hierarchyState = this.getHierarchyState(col, row);\n if (hierarchyState === HierarchyState.expand) {\n this._refreshHierarchyState(col, row, recalculateColWidths);\n this.fireListeners(PIVOT_TABLE_EVENT_TYPE.TREE_HIERARCHY_STATE_CHANGE, {\n col: col,\n row: row,\n hierarchyState: HierarchyState.collapse\n });\n } else if (hierarchyState === HierarchyState.collapse) {\n // const headerPaths = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const headerTreeNode = this.internalProps.layoutMap.getHeadNode(\n // headerPaths.rowHeaderPaths.slice(0, headerPaths.rowHeaderPaths.length),\n col,\n row\n );\n if (Array.isArray(headerTreeNode.children)) {\n //children 是数组 表示已经有子树节点信息\n this._refreshHierarchyState(col, row, recalculateColWidths);\n }\n this.fireListeners(PIVOT_TABLE_EVENT_TYPE.TREE_HIERARCHY_STATE_CHANGE, {\n col: col,\n row: row,\n hierarchyState: HierarchyState.expand,\n originData: headerTreeNode\n });\n }\n }\n\n // beforeUpdateCell主要用于setTreeNodeChildren方法\n _refreshHierarchyState(col: number, row: number, recalculateColWidths: boolean = true, beforeUpdateCell?: Function) {\n const oldFrozenColCount = this.frozenColCount;\n const oldFrozenRowCount = this.frozenRowCount;\n const visibleStartRow = this.getBodyVisibleRowRange().rowStart;\n this.internalProps._oldRowCount = this.rowCount;\n this.internalProps._oldColCount = this.colCount;\n let notFillWidth = false;\n let notFillHeight = false;\n this.stateManager.updateHoverIcon(col, row, undefined, undefined);\n const checkHasChart = this.internalProps.layoutMap.checkHasChart();\n // 检查当前状态总宽高未撑满autoFill是否在起作用\n if (checkHasChart) {\n if (this.autoFillWidth) {\n notFillWidth = this.getAllColsWidth() <= this.tableNoFrameWidth;\n }\n if (this.autoFillHeight) {\n notFillHeight = this.getAllRowsHeight() <= this.tableNoFrameHeight;\n }\n }\n const isChangeRowTree = this.internalProps.layoutMap.isRowHeader(col, row);\n const result: {\n addCellPositionsRowDirection?: CellAddress[];\n removeCellPositionsRowDirection?: CellAddress[];\n updateCellPositionsRowDirection?: CellAddress[];\n addCellPositionsColumnDirection?: CellAddress[];\n removeCellPositionsColumnDirection?: CellAddress[];\n updateCellPositionsColumnDirection?: CellAddress[];\n } = isChangeRowTree\n ? (this.internalProps.layoutMap as PivotHeaderLayoutMap).toggleHierarchyState(col, row)\n : (this.internalProps.layoutMap as PivotHeaderLayoutMap).toggleHierarchyStateForColumnTree(col, row);\n beforeUpdateCell && beforeUpdateCell();\n //影响行数\n this.refreshRowColCount(); //逻辑中有setFrozenCol处理 影响了原本bodyGroup的列数\n const newFrozenColCount = this.frozenColCount;\n const newFrozenRowCount = this.frozenRowCount;\n this.clearCellStyleCache();\n if (this.rowHierarchyType === 'tree') {\n //'grid-tree'模式下不用特意更新,updateRow会更新掉和`tree`模式不一样\n this.scenegraph.updateHierarchyIcon(col, row);\n }\n this.reactCustomLayout?.clearCache();\n if (this.rowHierarchyType !== 'grid-tree' && this.columnHierarchyType !== 'grid-tree') {\n //增加'grid-tree'之前的逻辑是这样子的\n this.scenegraph.updateRow(\n result.removeCellPositionsRowDirection,\n result.addCellPositionsRowDirection,\n result.updateCellPositionsRowDirection,\n recalculateColWidths\n );\n } else {\n // bug 太多了 直接先全部生成吧!! TODO 性能优化\n // if (\n // this.columnHierarchyType === 'grid-tree' &&\n // this.isColumnHeader(col, row) &&\n // oldFrozenRowCount > this.frozenRowCount //p判断这个\n // ) {\n // callUpdateRowOnScenegraph(result, recalculateColWidths, newFrozenRowCount, oldFrozenRowCount, this.scenegraph);\n // callUpdateColOnScenegraph(result, newFrozenColCount, oldFrozenColCount, this.scenegraph);\n // } else {\n // callUpdateColOnScenegraph(result, newFrozenColCount, oldFrozenColCount, this.scenegraph);\n // callUpdateRowOnScenegraph(result, recalculateColWidths, newFrozenRowCount, oldFrozenRowCount, this.scenegraph);\n // }\n\n // if (this.rowHierarchyType === 'grid-tree' || this.columnHierarchyType === 'grid-tree') {\n // this.scenegraph.updateCornerHeaderCells();\n // // if (newFrozenColCount !== oldFrozenColCount) {\n // this.scenegraph.updateRowHeaderCells();\n // // }\n // // if (newFrozenRowCount !== oldFrozenRowCount) {\n // this.scenegraph.updateColumnHeaderCells();\n // // }\n // }\n this.internalProps.stick.changedCells.clear();\n this.scenegraph.clearCells();\n this.clearCellStyleCache();\n this.scenegraph.createSceneGraph();\n this.scrollToRow(visibleStartRow);\n // this.renderWithRecreateCells();\n }\n this.reactCustomLayout?.updateAllCustomCell();\n\n if (checkHasChart) {\n // 检查更新节点状态后总宽高未撑满autoFill是否在起作用\n if (this.autoFillWidth && !notFillWidth) {\n notFillWidth = this.getAllColsWidth() <= this.tableNoFrameWidth;\n }\n if (this.autoFillHeight && !notFillHeight) {\n notFillHeight = this.getAllRowsHeight() <= this.tableNoFrameHeight;\n }\n if (this.widthMode === 'adaptive' || notFillWidth || this.heightMode === 'adaptive' || notFillHeight) {\n this.scenegraph.updateChartSizeForResizeColWidth(-1); // 如果收起展开有性能问题 可以排查下这个防范\n }\n }\n this.internalProps._oldRowCount = undefined;\n this.internalProps._oldColCount = undefined;\n }\n /**\n * 通过表头的维度值路径来计算单元格位置 getCellAddressByHeaderPaths接口更强大一些 不限表头 不限参数格式\n * @param dimensionPaths\n * @returns\n */\n getHeaderCellAddressByPath(dimensionPaths: IDimensionInfo[]): CellAddress {\n const cellAddress = (this.internalProps.layoutMap as PivotHeaderLayoutMap).getPivotCellAdress(dimensionPaths);\n return cellAddress;\n }\n /**\n * 通过表头的维度值路径来计算单元格位置\n * @param dimensionPaths\n * @returns\n */\n getCellAddressByHeaderPaths(\n dimensionPaths:\n | {\n colHeaderPaths: IDimensionInfo[];\n rowHeaderPaths: IDimensionInfo[];\n cellLocation: CellLocation;\n }\n | IDimensionInfo[]\n ): CellAddress {\n const cellAddress = (this.internalProps.layoutMap as PivotHeaderLayoutMap).getCellAdressByHeaderPath(\n dimensionPaths\n );\n return cellAddress;\n }\n\n /**\n * 通过传入的坐标 获取该位置当前单元格的维度路径;\n * @param coordinate 从body左上角为原点 coordinate为偏移距离 去计算单元格的headerPath;\n * 如不传coordinate坐标则按取body中左上角第一个单元格的维度路径\n * @returns\n */\n getHeaderPathByXY(coordinate?: { x: number; y: number }): ICellHeaderPaths {\n let cellAddr;\n if (coordinate) {\n cellAddr = this.getCellAt(\n coordinate.x + this.getFrozenColsWidth() + this.scrollLeft + 1,\n coordinate.y + this.getFrozenRowsHeight() + this.scrollTop + 1\n );\n } else {\n cellAddr = this.getCellAt(\n this.getFrozenColsWidth() + this.scrollLeft + 1,\n this.getFrozenRowsHeight() + this.scrollTop + 1\n );\n }\n const cellHeaderPaths = this.internalProps.layoutMap.getCellHeaderPaths(cellAddr.col, cellAddr.row);\n return cellHeaderPaths;\n }\n getHierarchyState(col: number, row: number): HierarchyState {\n return (this._getHeaderLayoutMap(col, row) as HeaderData)?.hierarchyState;\n }\n /** 获取列头树结构 */\n getLayoutColumnTree(): LayouTreeNode[] {\n const layoutMap = this.internalProps.layoutMap;\n return layoutMap.getLayoutColumnTree();\n }\n /** 获取表格列头树形结构的占位的总节点数 */\n getLayoutColumnTreeCount(): number {\n const layoutMap = this.internalProps.layoutMap;\n return layoutMap.getLayoutColumnTreeCount();\n }\n /** 获取行头树结构 */\n getLayoutRowTree(): LayouTreeNode[] {\n const layoutMap = this.internalProps.layoutMap;\n return layoutMap.getLayoutRowTree();\n }\n /** 获取表格行头树形结构的占位的总节点数 */\n getLayoutRowTreeCount(): number {\n const layoutMap = this.internalProps.layoutMap;\n return layoutMap.getLayoutRowTreeCount();\n }\n /**\n * 根据行列号获取表头tree节点,包含了用户在自定义树rowTree及columnTree树上的自定义属性(也是内部布局树的节点,获取后请不要随意修改)\n * @param col\n * @param row\n * @returns\n */\n getCellHeaderTreeNodes(col: number, row: number): ICellHeaderPaths {\n const layoutMap = this.internalProps.layoutMap;\n const headerNodes = layoutMap.getCellHeaderPathsWithTreeNode(col, row);\n return headerNodes;\n }\n\n getMenuInfo(col: number, row: number, type: string): DropDownMenuEventInfo {\n const dimensionInfos = (this.internalProps.layoutMap as PivotHeaderLayoutMap).getPivotDimensionInfo(col, row);\n const result: DropDownMenuEventInfo = {\n dimensionKey: dimensionInfos[dimensionInfos.length - 1].dimensionKey,\n value: this.getCellValue(col, row),\n cellLocation: this.getCellLocation(col, row),\n isPivotCorner: this.isCornerHeader(col, row),\n event: undefined\n };\n return result;\n }\n\n /**\n * 设置表格数据 及排序状态\n * @param records\n * @param sort\n */\n setRecords(records: Array<any>): void {\n clearChartRenderQueue();\n const oldHoverState = { col: this.stateManager.hover.cellPos.col, row: this.stateManager.hover.cellPos.row };\n this.options.records = this.internalProps.records = records;\n this.internalProps.recordsIsTwoDimensionalArray = false;\n if (records?.[0]?.constructor === Array) {\n this.internalProps.recordsIsTwoDimensionalArray = true;\n }\n const options = this.options;\n const internalProps = this.internalProps;\n if (this.options.customConfig?.enableDataAnalysis === false) {\n //判断如果数据是二维数组 则标识已经分析过 直接从二维数组挨个读取渲染即可\n //不是二维数组 对应是个object json对象 则表示flat数据,需要对应行列维度进行转成方便数据查询的行列树结构\n if (this.internalProps.recordsIsTwoDimensionalArray === false) {\n this.flatDataToObjects = new FlatDataToObjects(\n {\n rows: internalProps.layoutMap.fullRowDimensionKeys,\n columns: internalProps.layoutMap.colDimensionKeys,\n indicators: internalProps.layoutMap.indicatorKeys,\n indicatorsAsCol: internalProps.layoutMap.indicatorsAsCol,\n indicatorDimensionKey: internalProps.layoutMap.indicatorDimensionKey\n },\n records\n );\n }\n } else {\n this.dataset.setRecords(records);\n let columnDimensionTree;\n let rowDimensionTree;\n if (options.columnTree) {\n columnDimensionTree = internalProps.layoutMap.columnDimensionTree;\n } else {\n options.indicatorsAsCol !== false &&\n options.indicators &&\n this.dataset.colHeaderTree &&\n deleteHideIndicatorNode(this.dataset.colHeaderTree, options.indicators, false, this);\n columnDimensionTree = new DimensionTree(\n (this.dataset.colHeaderTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.columnHierarchyType,\n this.options.columnHierarchyType !== 'grid' ? this.options.columnExpandLevel ?? 1 : undefined\n );\n }\n if (options.rowTree) {\n rowDimensionTree = internalProps.layoutMap.rowDimensionTree;\n } else {\n options.indicatorsAsCol === false &&\n this.dataset.rowHeaderTree &&\n options.indicators &&\n deleteHideIndicatorNode(this.dataset.rowHeaderTree, options.indicators, false, this);\n rowDimensionTree = new DimensionTree(\n (this.dataset.rowHeaderTree as ITreeLayoutHeadNode[]) ?? [],\n this.layoutNodeId,\n this.options.rowHierarchyType,\n this.options.rowHierarchyType !== 'grid' ? this.options.rowExpandLevel ?? 1 : undefined\n );\n }\n internalProps.layoutMap = new PivotHeaderLayoutMap(this, this.dataset, columnDimensionTree, rowDimensionTree);\n this.pivotSortState = [];\n if (options.pivotSortState) {\n this.pivotSortState = options.pivotSortState;\n // this.updatePivotSortState(options.pivotSortState);\n }\n }\n\n // 更新表头\n this.refreshHeader();\n this.internalProps.useOneRowHeightFillAll = false;\n\n // 清空单元格内容\n this.scenegraph.clearCells();\n // this.internalProps.frozenColCount = this.options.frozenColCount || this.rowHeaderLevelCount;\n // 生成单元格场景树\n this.clearCellStyleCache();\n this.scenegraph.createSceneGraph();\n this.stateManager.updateHoverPos(oldHoverState.col, oldHoverState.row);\n if (this.internalProps.title && !this.internalProps.title.isReleased) {\n this._updateSize();\n this.internalProps.title.resize();\n this.scenegraph.resize();\n }\n this.eventManager.updateEventBinder();\n if (this.options.emptyTip) {\n if (this.internalProps.emptyTip) {\n this.internalProps.emptyTip?.resetVisible();\n } else {\n const EmptyTip = Factory.getComponent('emptyTip') as IEmptyTipComponent;\n this.internalProps.emptyTip = new EmptyTip(this.options.emptyTip, this);\n this.internalProps.emptyTip?.resetVisible();\n }\n }\n }\n\n startEditCell(col?: number, row?: number, value?: string | number) {\n if (isValid(col) && isValid(row)) {\n this.eventManager.isDraging = false;\n this.selectCell(col, row);\n this.editorManager.startEditCell(col, row, value);\n } else if (this.stateManager.select?.cellPos) {\n const { col, row } = this.stateManager.select.cellPos;\n if (isValid(col) && isValid(row)) {\n this.editorManager.startEditCell(col, row, value);\n }\n }\n }\n /** 结束编辑 */\n completeEditCell() {\n this.editorManager.completeEdit();\n }\n /** 获取单元格对应的编辑器 */\n getEditor(col: number, row: number) {\n let editorDefine;\n if (this.isCornerHeader(col, row)) {\n const define = this.getHeaderDefine(col, row);\n editorDefine = (define as ColumnDefine)?.headerEditor ?? this.options.headerEditor;\n } else if (this.isHeader(col, row)) {\n const define = this.getHeaderDefine(col, row);\n editorDefine = (define as ColumnDefine)?.headerEditor ?? this.options.headerEditor;\n } else {\n const define = this.getBodyColumnDefine(col, row);\n editorDefine = (define as ColumnDefine)?.editor ?? this.options.editor;\n }\n if (typeof editorDefine === 'function') {\n const arg = {\n col,\n row,\n dataValue: this.getCellOriginValue(col, row),\n value: this.getCellValue(col, row) || '',\n table: this\n };\n editorDefine = (editorDefine as Function)(arg);\n }\n if (typeof editorDefine === 'string') {\n return editors.get(editorDefine);\n }\n return editorDefine as IEditor;\n }\n /** 检查单元格是否定义过编辑器 不管编辑器是否有效 只要有定义就返回true */\n isHasEditorDefine(col: number, row: number) {\n const define = this.getBodyColumnDefine(col, row);\n let editorDefine = (define as ColumnDefine)?.editor ?? this.options.editor;\n\n if (typeof editorDefine === 'function') {\n const arg = {\n col,\n row,\n dataValue: this.getCellOriginValue(col, row),\n value: this.getCellValue(col, row) || '',\n table: this\n };\n editorDefine = (editorDefine as Function)(arg);\n }\n return isValid(editorDefine);\n }\n /** 更改单元格数据 会触发change_cell_value事件*/\n changeCellValue(col: number, row: number, value: string | undefined, workOnEditableCell = false) {\n if ((workOnEditableCell && this.isHasEditorDefine(col, row)) || workOnEditableCell === false) {\n let newValue: any = value;\n const oldValue = this.getCellOriginValue(col, row);\n const rawValue = this.getCellRawValue(col, row);\n if (typeof rawValue === 'number' && isAllDigits(value)) {\n newValue = parseFloat(value);\n }\n this._changeCellValueToDataSet(col, row, oldValue, newValue);\n // this.scenegraph.updateCellContent(col, row);\n const range = this.getCellRange(col, row);\n for (let sCol = range.start.col; sCol <= range.end.col; sCol++) {\n for (let sRow = range.start.row; sRow <= range.end.row; sRow++) {\n this.scenegraph.updateCellContent(sCol, sRow);\n }\n }\n if (this.widthMode === 'adaptive' || (this.autoFillWidth && this.getAllColsWidth() <= this.tableNoFrameWidth)) {\n if (this.internalProps._widthResizedColMap.size === 0) {\n //如果没有手动调整过行高列宽 则重新计算一遍并重新分配\n this.scenegraph.recalculateColWidths();\n }\n } else if (!this.internalProps._widthResizedColMap.has(col)) {\n const oldWidth = this.getColWidth(col);\n const newWidth = computeColWidth(col, 0, this.rowCount - 1, this, false);\n if (newWidth !== oldWidth) {\n this.scenegraph.updateColWidth(col, newWidth - oldWidth);\n }\n }\n if (\n this.heightMode === 'adaptive' ||\n (this.autoFillHeight && this.getAllRowsHeight() <= this.tableNoFrameHeight)\n ) {\n if (this.internalProps._heightResizedRowMap.size === 0) {\n this.scenegraph.recalculateRowHeights();\n }\n } else if (this.isAutoRowHeight(row) && !this.internalProps._heightResizedRowMap.has(row)) {\n const oldHeight = this.getRowHeight(row);\n const newHeight = computeRowHeight(row, 0, this.colCount - 1, this);\n this.scenegraph.updateRowHeight(row, newHeight - oldHeight);\n }\n if (oldValue !== newValue) {\n this.fireListeners(TABLE_EVENT_TYPE.CHANGE_CELL_VALUE, {\n col,\n row,\n rawValue,\n currentValue: oldValue,\n changedValue: newValue\n });\n }\n this.scenegraph.updateNextFrame();\n }\n }\n /**\n * 批量更新多个单元格的数据\n * @param col 粘贴数据的起始列号\n * @param row 粘贴数据的起始行号\n * @param values 多个单元格的数据数组\n * @param workOnEditableCell 是否仅更改可编辑单元格\n */\n changeCellValues(startCol: number, startRow: number, values: string[][], workOnEditableCell = false) {\n let pasteColEnd = startCol;\n let pasteRowEnd = startRow;\n // const rowCount = values.length;\n //#region 提前组织好未更改前的数据\n const beforeChangeValues: (string | number)[][] = [];\n const oldValues: (string | number)[][] = [];\n for (let i = 0; i < values.length; i++) {\n if (startRow + i > this.rowCount - 1) {\n break;\n }\n const rowValues = values[i];\n const rawRowValues: (string | number)[] = [];\n const oldRowValues: (string | number)[] = [];\n beforeChangeValues.push(rawRowValues);\n oldValues.push(oldRowValues);\n for (let j = 0; j < rowValues.length; j++) {\n if (startCol + j > this.colCount - 1) {\n break;\n }\n const beforeChangeValue = this.getCellRawValue(startCol + j, startRow + i);\n rawRowValues.push(beforeChangeValue);\n const oldValue = this.getCellOriginValue(startCol + j, startRow + i);\n oldRowValues.push(oldValue);\n }\n }\n //#endregion\n for (let i = 0; i < values.length; i++) {\n if (startRow + i > this.rowCount - 1) {\n break;\n }\n pasteRowEnd = startRow + i;\n const rowValues = values[i];\n let thisRowPasteColEnd = startCol;\n for (let j = 0; j < rowValues.length; j++) {\n if (startCol + j > this.colCount - 1) {\n break;\n }\n\n thisRowPasteColEnd = startCol + j;\n if (\n (workOnEditableCell && this.isHasEditorDefine(startCol + j, startRow + i)) ||\n workOnEditableCell === false\n ) {\n const value = rowValues[j];\n let newValue: string | number = value;\n const oldValue = oldValues[i][j];\n const rawValue = beforeChangeValues[i][j];\n if (typeof rawValue === 'number' && isAllDigits(value)) {\n newValue = parseFloat(value);\n }\n this._changeCellValueToDataSet(startCol + j, startRow + i, oldValue, newValue);\n const changedValue = this.getCellOriginValue(startCol + j, startRow + i);\n if (changedValue !== oldValue) {\n this.fireListeners(TABLE_EVENT_TYPE.CHANGE_CELL_VALUE, {\n col: startCol + j,\n row: startRow + i,\n rawValue,\n currentValue: oldValue,\n changedValue\n });\n }\n }\n }\n pasteColEnd = Math.max(pasteColEnd, thisRowPasteColEnd);\n }\n\n // const cell_value = this.getCellValue(col, row);\n const startRange = this.getCellRange(startCol, startRow);\n const range = this.getCellRange(pasteColEnd, pasteRowEnd);\n for (let sCol = startRange.start.col; sCol <= range.end.col; sCol++) {\n for (let sRow = startRange.start.row; sRow <= range.end.row; sRow++) {\n this.scenegraph.updateCellContent(sCol, sRow);\n }\n }\n if (this.widthMode === 'adaptive' || (this.autoFillWidth && this.getAllColsWidth() <= this.tableNoFrameWidth)) {\n if (this.internalProps._widthResizedColMap.size === 0) {\n //如果没有手动调整过行高列宽 则重新计算一遍并重新分配\n this.scenegraph.recalculateColWidths();\n }\n } else {\n for (let sCol = startCol; sCol <= range.end.col; sCol++) {\n if (!this.internalProps._widthResizedColMap.has(sCol)) {\n const oldWidth = this.getColWidth(sCol);\n const newWidth = computeColWidth(sCol, 0, this.rowCount - 1, this, false);\n if (newWidth !== oldWidth) {\n this.scenegraph.updateColWidth(sCol, newWidth - oldWidth);\n }\n }\n }\n }\n\n if (this.heightMode === 'adaptive' || (this.autoFillHeight && this.getAllRowsHeight() <= this.tableNoFrameHeight)) {\n this.scenegraph.recalculateRowHeights();\n } else if (this.isAutoRowHeight(startRow)) {\n const rows: number[] = [];\n const deltaYs: number[] = [];\n for (let sRow = startRow; sRow <= range.end.row; sRow++) {\n if (this.rowHeightsMap.get(sRow)) {\n // 已经计算过行高的才走更新逻辑\n const oldHeight = this.getRowHeight(sRow);\n const newHeight = computeRowHeight(sRow, 0, this.colCount - 1, this);\n rows.push(sRow);\n deltaYs.push(newHeight - oldHeight);\n }\n }\n this.scenegraph.updateRowsHeight(rows, deltaYs);\n }\n\n this.scenegraph.updateNextFrame();\n }\n\n private _changeCellValueToDataSet(col: number, row: number, oldValue: string | number, newValue: string | number) {\n if (this.internalProps.recordsIsTwoDimensionalArray) {\n const rowIndex = this.getBodyIndexByRow(row);\n const colIndex = this.getBodyIndexByCol(col);\n this.records[rowIndex][colIndex] = newValue;\n } else if (this.dataset) {\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n if (this.isCornerHeader(col, row)) {\n this.internalProps.layoutMap.changeCornerTitle(col, row, newValue as string);\n } else if (this.isHeader(col, row)) {\n this.internalProps.layoutMap.changeTreeNodeTitle(col, row, newValue as string);\n\n !this.isCornerHeader(col, row) &&\n this.dataset.changeRecordFieldValue(\n cellDimensionPath.colHeaderPaths?.length\n ? cellDimensionPath.colHeaderPaths[cellDimensionPath.colHeaderPaths.length - 1].indicatorKey ??\n cellDimensionPath.colHeaderPaths[cellDimensionPath.colHeaderPaths.length - 1].dimensionKey\n : cellDimensionPath.rowHeaderPaths[cellDimensionPath.rowHeaderPaths.length - 1].indicatorKey ??\n cellDimensionPath.rowHeaderPaths[cellDimensionPath.rowHeaderPaths.length - 1].dimensionKey,\n oldValue,\n newValue\n );\n } else {\n const colKeys = cellDimensionPath.colHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((colPath: any) => {\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths\n ?.filter((path: any) => {\n return !path.virtual;\n })\n .map((rowPath: any) => {\n return rowPath.indicatorKey ?? rowPath.value;\n });\n this.dataset.changeTreeNodeValue(\n !this.internalProps.layoutMap.indicatorsAsCol ? rowKeys.slice(0, -1) : rowKeys,\n this.internalProps.layoutMap.indicatorsAsCol ? colKeys.slice(0, -1) : colKeys,\n (this.internalProps.layoutMap as PivotHeaderLayoutMap).getIndicatorKey(col, row),\n newValue\n );\n }\n } else if (this.flatDataToObjects) {\n const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n\n if (this.isHeader(col, row)) {\n this.internalProps.layoutMap.changeTreeNodeTitle(col, row, newValue as string);\n\n !this.isCornerHeader(col, row) &&\n this.flatDataToObjects.changeRecordFieldValue(\n cellDimensionPath.colHeaderPaths?.length\n ? cellDimensionPath.colHeaderPaths[cellDimensionPath.colHeaderPaths.length - 1].indicatorKey ??\n cellDimensionPath.colHeaderPaths[cellDimensionPath.colHeaderPaths.length - 1].dimensionKey\n : cellDimensionPath.rowHeaderPaths[cellDimensionPath.rowHeaderPaths.length - 1].indicatorKey ??\n cellDimensionPath.rowHeaderPaths[cellDimensionPath.rowHeaderPaths.length - 1].dimensionKey,\n oldValue,\n newValue\n );\n } else {\n const colKeys = cellDimensionPath.colHeaderPaths.map((colPath: any) => {\n return colPath.indicatorKey ?? colPath.value;\n });\n const rowKeys = cellDimensionPath.rowHeaderPaths.map((rowPath: any) => {\n return rowPath.indicatorKey ?? rowPath.value;\n });\n this.flatDataToObjects.changeTreeNodeValue(\n rowKeys,\n colKeys,\n (this.internalProps.layoutMap.getBody(col, row) as IndicatorData).indicatorKey,\n newValue\n );\n }\n }\n }\n _hasCustomRenderOrLayout() {\n if (this.options.customRender) {\n return true;\n }\n const { columnsDefine, rowsDefine, indicatorsDefine } = this.internalProps.layoutMap;\n for (let i = 0; i < columnsDefine.length; i++) {\n const columnDefine = columnsDefine[i];\n if (typeof columnDefine !== 'string' && (columnDefine.headerCustomLayout || columnDefine.headerCustomRender)) {\n return true;\n }\n }\n for (let i = 0; i < rowsDefine.length; i++) {\n const rowDefine = rowsDefine[i];\n if (typeof rowDefine !== 'string' && (rowDefine.headerCustomLayout || rowDefine.headerCustomRender)) {\n return true;\n }\n }\n for (let i = 0; i < indicatorsDefine.length; i++) {\n const indicatorDefine = indicatorsDefine[i];\n if (\n typeof indicatorDefine !== 'string' &&\n (indicatorDefine.customLayout ||\n indicatorDefine.headerCustomLayout ||\n indicatorDefine.customRender ||\n indicatorDefine.headerCustomRender)\n ) {\n return true;\n }\n }\n return false;\n }\n\n changeRecordOrder(source: number, target: number) {\n //\n }\n\n /**\n * 树形展示场景下,如果需要动态插入子节点的数据可以配合使用该接口,其他情况不适用\n * @param children 设置到该单元格的子节点\n * @param records 该节点展开后新增数据\n * @param col 需要设置子节点的单元格地址\n * @param row 需要设置子节点的单元格地址\n */\n setTreeNodeChildren(children: IHeaderTreeDefine[], records: any[], col: number, row: number) {\n if (this.flatDataToObjects) {\n // const headerPaths = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const headerTreeNode = this.internalProps.layoutMap.getHeadNode(\n // headerPaths.rowHeaderPaths.slice(0, headerPaths.rowHeaderPaths.length),\n col,\n row\n );\n headerTreeNode.children = children;\n this._refreshHierarchyState(col, row, true, () => {\n this.flatDataToObjects.changeDataConfig({\n rows: this.internalProps.layoutMap.fullRowDimensionKeys,\n columns: this.internalProps.layoutMap.colDimensionKeys,\n indicators: this.internalProps.layoutMap.indicatorKeys,\n indicatorsAsCol: this.internalProps.layoutMap.indicatorsAsCol,\n indicatorDimensionKey: this.internalProps.layoutMap.indicatorDimensionKey\n });\n this.flatDataToObjects.addRecords(records);\n });\n } else {\n // const headerPaths = this.internalProps.layoutMap.getCellHeaderPaths(col, row);\n const headerTreeNode = this.internalProps.layoutMap.getHeadNode(\n // headerPaths.rowHeaderPaths.slice(0, headerPaths.rowHeaderPaths.length),\n col,\n row\n );\n headerTreeNode.children = children;\n this._refreshHierarchyState(col, row, true, () => {\n this.dataset._rowTreeHasChanged();\n this.dataset.changeDataConfig({\n rows: this.internalProps.layoutMap.fullRowDimensionKeys,\n columns: this.internalProps.layoutMap.colDimensionKeys\n });\n this.dataset.addRecords(records);\n });\n }\n }\n\n /** 更新数据过滤规则 对应dataConfig中filterRules配置格式 */\n updateFilterRules(filterRules: FilterRules) {\n this.internalProps.dataConfig.filterRules = filterRules;\n this.dataset.updateFilterRules(filterRules);\n this.renderWithRecreateCells();\n }\n /** 获取过滤后的数据 */\n getFilteredRecords() {\n return this.dataset?.filterRules;\n }\n\n getCellPivotRole(col: number, row: number) {\n const path = this.getCellHeaderPaths(col, row);\n const { cellLocation, colHeaderPaths, rowHeaderPaths } = path;\n\n let colRole: CellPivotRole = colHeaderPaths.length ? 'normal' : undefined;\n let rowRole: CellPivotRole = rowHeaderPaths.length ? 'normal' : undefined;\n\n (colHeaderPaths as IDimensionInfo[]).forEach((path: IDimensionInfo) => {\n if (path.role === 'sub-total') {\n colRole = 'sub-total';\n } else if (path.role === 'grand-total') {\n colRole = 'grand-total';\n }\n });\n\n (rowHeaderPaths as IDimensionInfo[]).forEach((path: IDimensionInfo) => {\n if (path.role === 'sub-total') {\n rowRole = 'sub-total';\n } else if (path.role === 'grand-total') {\n rowRole = 'grand-total';\n }\n });\n\n return {\n colRole,\n rowRole,\n cellLocation\n };\n }\n\n /**\n * 开启层级节点展开的loading动画状态,在设置数据调用setRecordChildren后会自动关闭loading\n * @param col\n * @param row\n */\n setLoadingHierarchyState(col: number, row: number) {\n this.scenegraph.setLoadingHierarchyState(col, row);\n }\n release() {\n this.internalProps.layoutMap.clearHeaderPathCache();\n this.editorManager.release();\n super.release();\n }\n}\n"]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { ColumnIconOption, SvgIcon } from '../ts-types';
|
|
2
|
+
import { Style } from './style/Style';
|
|
3
|
+
import type { BaseTableAPI } from '../ts-types/base-table';
|
|
4
|
+
import { CheckboxStyle } from './style/CheckboxStyle';
|
|
5
|
+
import { RadioStyle } from './style/RadioStyle';
|
|
6
|
+
import { SwitchStyle } from './style/SwitchStyle';
|
|
7
|
+
import { ButtonStyle } from './style/ButtonStyle';
|
|
8
|
+
export declare class BodyHelper {
|
|
9
|
+
expandIcon: SvgIcon;
|
|
10
|
+
collapseIcon: SvgIcon;
|
|
11
|
+
_table: BaseTableAPI;
|
|
12
|
+
constructor(_table: BaseTableAPI);
|
|
13
|
+
getIcons(col: number, row: number, cellValue: any, dataValue: any, context: CanvasRenderingContext2D): ColumnIconOption[];
|
|
14
|
+
getStyleClass(cellType: 'text' | 'link' | 'image' | 'video' | 'chart' | 'sparkline' | 'progressbar' | 'chart' | 'checkbox' | 'radio' | 'switch' | 'button'): typeof Style | typeof RadioStyle | typeof SwitchStyle | typeof ButtonStyle | typeof CheckboxStyle;
|
|
15
|
+
getCellIconFromRecordValue(icon: ColumnIconOption, col: number, row: number): ColumnIconOption;
|
|
16
|
+
getCellIconFromRecordValue(icon: ColumnIconOption[], col: number, row: number): ColumnIconOption[];
|
|
17
|
+
getCellIconFromRecordValue(icon: ColumnIconOption | ColumnIconOption[], col: number, row: number): ColumnIconOption | ColumnIconOption[];
|
|
18
|
+
getHierarchyIcon(col: number, row: number): SvgIcon;
|
|
19
|
+
getHierarchyIconWidth(): number;
|
|
20
|
+
}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __createBinding = this && this.__createBinding || (Object.create ? function(o, m, k, k2) {
|
|
4
|
+
void 0 === k2 && (k2 = k);
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
desc && !("get" in desc ? !m.__esModule : desc.writable || desc.configurable) || (desc = {
|
|
7
|
+
enumerable: !0,
|
|
8
|
+
get: function() {
|
|
9
|
+
return m[k];
|
|
10
|
+
}
|
|
11
|
+
}), Object.defineProperty(o, k2, desc);
|
|
12
|
+
} : function(o, m, k, k2) {
|
|
13
|
+
void 0 === k2 && (k2 = k), o[k2] = m[k];
|
|
14
|
+
}), __setModuleDefault = this && this.__setModuleDefault || (Object.create ? function(o, v) {
|
|
15
|
+
Object.defineProperty(o, "default", {
|
|
16
|
+
enumerable: !0,
|
|
17
|
+
value: v
|
|
18
|
+
});
|
|
19
|
+
} : function(o, v) {
|
|
20
|
+
o.default = v;
|
|
21
|
+
}), __importStar = this && this.__importStar || function(mod) {
|
|
22
|
+
if (mod && mod.__esModule) return mod;
|
|
23
|
+
var result = {};
|
|
24
|
+
if (null != mod) for (var k in mod) "default" !== k && Object.prototype.hasOwnProperty.call(mod, k) && __createBinding(result, mod, k);
|
|
25
|
+
return __setModuleDefault(result, mod), result;
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
Object.defineProperty(exports, "__esModule", {
|
|
29
|
+
value: !0
|
|
30
|
+
}), exports.BodyHelper = void 0;
|
|
31
|
+
|
|
32
|
+
const ts_types_1 = require("../ts-types"), registerIcons = __importStar(require("../icons")), Style_1 = require("./style/Style"), MultilineTextStyle_1 = require("./style/MultilineTextStyle"), ProgressBarStyle_1 = require("./style/ProgressBarStyle"), ImageStyle_1 = require("./style/ImageStyle"), icons = __importStar(require("../tools/icons")), helper_1 = require("../tools/helper"), CheckboxStyle_1 = require("./style/CheckboxStyle"), RadioStyle_1 = require("./style/RadioStyle"), vutils_1 = require("@visactor/vutils"), SwitchStyle_1 = require("./style/SwitchStyle"), ButtonStyle_1 = require("./style/ButtonStyle");
|
|
33
|
+
|
|
34
|
+
class BodyHelper {
|
|
35
|
+
constructor(_table) {
|
|
36
|
+
this._table = _table;
|
|
37
|
+
const regedIcons = registerIcons.get();
|
|
38
|
+
this.expandIcon = regedIcons[ts_types_1.InternalIconName.expandIconName], this.collapseIcon = regedIcons[ts_types_1.InternalIconName.collapseIconName];
|
|
39
|
+
}
|
|
40
|
+
getIcons(col, row, cellValue, dataValue, context) {
|
|
41
|
+
const iconArr = [], hierarchyIcon = this.getHierarchyIcon(col, row);
|
|
42
|
+
hierarchyIcon && iconArr.push(hierarchyIcon);
|
|
43
|
+
const {icon: iconDefine} = this._table.getBodyColumnDefine(col, row);
|
|
44
|
+
if (iconDefine) {
|
|
45
|
+
let iconResults;
|
|
46
|
+
if ("function" == typeof iconDefine) {
|
|
47
|
+
iconResults = iconDefine({
|
|
48
|
+
col: col,
|
|
49
|
+
row: row,
|
|
50
|
+
value: cellValue,
|
|
51
|
+
dataValue: dataValue,
|
|
52
|
+
table: this._table
|
|
53
|
+
});
|
|
54
|
+
} else iconResults = iconDefine;
|
|
55
|
+
const regedIcons = registerIcons.get(), addIcon = columnIcon => {
|
|
56
|
+
let icon;
|
|
57
|
+
icon = "string" == typeof columnIcon ? regedIcons[columnIcon] : columnIcon, icon && iconArr.push(icon);
|
|
58
|
+
};
|
|
59
|
+
Array.isArray(iconResults) ? iconResults.forEach(((columnIcon, index) => {
|
|
60
|
+
addIcon(columnIcon);
|
|
61
|
+
})) : addIcon(iconResults);
|
|
62
|
+
}
|
|
63
|
+
return context && iconArr.forEach(((i, index) => {
|
|
64
|
+
(i.content || i.src) && (iconArr[index] = this.getCellIconFromRecordValue(i, col, row));
|
|
65
|
+
})), iconArr;
|
|
66
|
+
}
|
|
67
|
+
getStyleClass(cellType) {
|
|
68
|
+
switch (cellType) {
|
|
69
|
+
case "text":
|
|
70
|
+
case "link":
|
|
71
|
+
return MultilineTextStyle_1.TextStyle;
|
|
72
|
+
|
|
73
|
+
case "image":
|
|
74
|
+
case "video":
|
|
75
|
+
return ImageStyle_1.ImageStyle;
|
|
76
|
+
|
|
77
|
+
case "chart":
|
|
78
|
+
case "sparkline":
|
|
79
|
+
return Style_1.Style;
|
|
80
|
+
|
|
81
|
+
case "progressbar":
|
|
82
|
+
return ProgressBarStyle_1.ProgressBarStyle;
|
|
83
|
+
|
|
84
|
+
case "checkbox":
|
|
85
|
+
return CheckboxStyle_1.CheckboxStyle;
|
|
86
|
+
|
|
87
|
+
case "radio":
|
|
88
|
+
return RadioStyle_1.RadioStyle;
|
|
89
|
+
|
|
90
|
+
case "switch":
|
|
91
|
+
return SwitchStyle_1.SwitchStyle;
|
|
92
|
+
|
|
93
|
+
case "button":
|
|
94
|
+
return ButtonStyle_1.ButtonStyle;
|
|
95
|
+
}
|
|
96
|
+
return MultilineTextStyle_1.TextStyle;
|
|
97
|
+
}
|
|
98
|
+
getCellIconFromRecordValue(icon, col, row) {
|
|
99
|
+
if (Array.isArray(icon)) return icon.map((i => this.getCellIconFromRecordValue(i, col, row)));
|
|
100
|
+
if (!helper_1.obj.isObject(icon) || "function" == typeof icon) return this._table.getFieldData(icon, col, row);
|
|
101
|
+
const retIcon = {}, iconOpt = icon;
|
|
102
|
+
return icons.iconPropKeys.forEach((k => {
|
|
103
|
+
var _a, _b;
|
|
104
|
+
if (void 0 !== iconOpt[k]) {
|
|
105
|
+
const f = this._table.getFieldData(iconOpt[k], col, row);
|
|
106
|
+
(0, vutils_1.isValid)(f) ? retIcon[k] = f : (null === (_b = (_a = this._table)._hasField) || void 0 === _b ? void 0 : _b.call(_a, iconOpt[k], col, row)) || (retIcon[k] = iconOpt[k]);
|
|
107
|
+
}
|
|
108
|
+
})), retIcon;
|
|
109
|
+
}
|
|
110
|
+
getHierarchyIcon(col, row) {
|
|
111
|
+
const hierarchyState = this._table.getHierarchyState(col, row);
|
|
112
|
+
return hierarchyState === ts_types_1.HierarchyState.expand ? this.expandIcon : hierarchyState === ts_types_1.HierarchyState.collapse ? this.collapseIcon : void 0;
|
|
113
|
+
}
|
|
114
|
+
getHierarchyIconWidth() {
|
|
115
|
+
var _a, _b;
|
|
116
|
+
return this.expandIcon.width + (null !== (_a = this.expandIcon.marginLeft) && void 0 !== _a ? _a : 0) + (null !== (_b = this.expandIcon.marginRight) && void 0 !== _b ? _b : 0);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
exports.BodyHelper = BodyHelper;
|
|
121
|
+
//# sourceMappingURL=body-helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/body-helper/body-helper.ts"],"names":[],"mappings":"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","file":"body-helper.js","sourcesContent":["import type { ColumnIconOption, ImageIcon, ListTableAPI, SvgIcon } from '../ts-types';\nimport { HierarchyState, InternalIconName } from '../ts-types';\nimport * as registerIcons from '../icons';\nimport { Style } from './style/Style';\nimport { TextStyle } from './style/MultilineTextStyle';\nimport { ProgressBarStyle } from './style/ProgressBarStyle';\nimport { ImageStyle } from './style/ImageStyle';\nimport type { BaseTableAPI } from '../ts-types/base-table';\nimport * as icons from '../tools/icons';\nimport { obj } from '../tools/helper';\nimport { CheckboxStyle } from './style/CheckboxStyle';\nimport { RadioStyle } from './style/RadioStyle';\nimport { isValid } from '@visactor/vutils';\nimport { SwitchStyle } from './style/SwitchStyle';\nimport { ButtonStyle } from './style/ButtonStyle';\nexport class BodyHelper {\n expandIcon: SvgIcon;\n collapseIcon: SvgIcon;\n _table: BaseTableAPI;\n constructor(_table: BaseTableAPI) {\n this._table = _table;\n const regedIcons = registerIcons.get();\n //展开折叠按钮\n this.expandIcon = regedIcons[InternalIconName.expandIconName] as SvgIcon;\n this.collapseIcon = regedIcons[InternalIconName.collapseIconName] as SvgIcon;\n }\n getIcons(\n col: number,\n row: number,\n cellValue: any,\n dataValue: any,\n context: CanvasRenderingContext2D\n ): ColumnIconOption[] {\n //加入固定列图标 排序 文本中元素\n const iconArr: ColumnIconOption[] = [];\n\n const hierarchyIcon = this.getHierarchyIcon(col, row);\n if (hierarchyIcon) {\n iconArr.push(hierarchyIcon);\n }\n\n const { icon: iconDefine } = this._table.getBodyColumnDefine(col, row);\n\n if (iconDefine) {\n let iconResults;\n if (typeof iconDefine === 'function') {\n const arg = {\n col,\n row,\n value: cellValue,\n dataValue,\n table: this._table\n };\n iconResults = iconDefine(arg);\n } else {\n iconResults = iconDefine;\n }\n const regedIcons = registerIcons.get();\n const addIcon = (columnIcon: string | ColumnIconOption) => {\n let icon;\n if (typeof columnIcon === 'string') {\n icon = regedIcons[columnIcon];\n } else {\n icon = columnIcon;\n }\n if (icon) {\n iconArr.push(icon);\n }\n };\n if (Array.isArray(iconResults)) {\n iconResults.forEach((columnIcon: string | ColumnIconOption, index: number) => {\n addIcon(columnIcon);\n });\n } else {\n addIcon(iconResults);\n }\n }\n\n context &&\n iconArr.forEach((i, index) => {\n if ((i as any).content || (<ImageIcon>i).src) {\n iconArr[index] = this.getCellIconFromRecordValue(i, col, row);\n // if ((<FontIcon>i).font)\n // helper.testFontLoad((<FontIcon>i).font, (<FontIcon>i).content, col, row);\n }\n });\n\n return iconArr;\n }\n getStyleClass(\n cellType:\n | 'text'\n | 'link'\n | 'image'\n | 'video'\n | 'chart'\n | 'sparkline'\n | 'progressbar'\n | 'chart'\n | 'checkbox'\n | 'radio'\n | 'switch'\n | 'button'\n ) {\n switch (cellType) {\n case 'text':\n return TextStyle;\n case 'image':\n return ImageStyle;\n case 'video':\n return ImageStyle;\n case 'link':\n return TextStyle;\n case 'chart':\n return Style;\n case 'sparkline':\n return Style;\n case 'progressbar':\n return ProgressBarStyle;\n case 'checkbox':\n return CheckboxStyle;\n case 'radio':\n return RadioStyle;\n case 'switch':\n return SwitchStyle;\n case 'button':\n return ButtonStyle;\n }\n return TextStyle;\n }\n getCellIconFromRecordValue(icon: ColumnIconOption, col: number, row: number): ColumnIconOption;\n getCellIconFromRecordValue(icon: ColumnIconOption[], col: number, row: number): ColumnIconOption[];\n getCellIconFromRecordValue(\n icon: ColumnIconOption | ColumnIconOption[],\n col: number,\n row: number\n ): ColumnIconOption | ColumnIconOption[];\n getCellIconFromRecordValue(\n icon: ColumnIconOption | ColumnIconOption[],\n col: number,\n row: number\n ): ColumnIconOption | ColumnIconOption[] {\n if (Array.isArray(icon)) {\n return icon.map(i => this.getCellIconFromRecordValue(i, col, row));\n }\n // icon.positionType = IconPosition.inlineFront;\n if (!obj.isObject(icon) || typeof icon === 'function') {\n return (this._table as ListTableAPI).getFieldData(icon, col, row);\n }\n // 新建对象 挨个属性赋值\n const retIcon: any = {};\n const iconOpt: any = icon;\n icons.iconPropKeys.forEach(k => {\n if (typeof iconOpt[k] !== 'undefined') {\n const f = (this._table as ListTableAPI).getFieldData(iconOpt[k], col, row);\n if (isValid(f)) {\n retIcon[k] = f;\n } else if (!this._table._hasField?.(iconOpt[k], col, row)) {\n retIcon[k] = iconOpt[k];\n }\n }\n });\n return retIcon;\n }\n\n getHierarchyIcon(col: number, row: number) {\n const hierarchyState = this._table.getHierarchyState(col, row);\n if (hierarchyState === HierarchyState.expand) {\n //展开状态 应该显示-号\n return this.expandIcon;\n } else if (hierarchyState === HierarchyState.collapse) {\n //折叠状态 应该显示-号\n return this.collapseIcon;\n }\n return undefined;\n }\n getHierarchyIconWidth() {\n return this.expandIcon.width + (this.expandIcon.marginLeft ?? 0) + (this.expandIcon.marginRight ?? 0);\n }\n}\n"]}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { IStyleOption, ButtonStyleOption } from '../../ts-types';
|
|
2
|
+
import { Style } from '../style';
|
|
3
|
+
import type { ButtonStyle as ButtonStyleThemeOption } from '../../ts-types/column/style';
|
|
4
|
+
export declare class ButtonStyle extends Style {
|
|
5
|
+
private _buttonColor;
|
|
6
|
+
private _buttonBorderColor;
|
|
7
|
+
private _buttonLineWidth;
|
|
8
|
+
private _buttonBorderRadius;
|
|
9
|
+
private _buttonHoverColor;
|
|
10
|
+
private _buttonHoverBorderColor;
|
|
11
|
+
private _buttonTextHoverColor;
|
|
12
|
+
private _buttonDisableColor;
|
|
13
|
+
private _buttonDisableBorderColor;
|
|
14
|
+
private _buttonTextDisableColor;
|
|
15
|
+
private _buttonTextHoverBorderColor;
|
|
16
|
+
private _buttonPadding;
|
|
17
|
+
static get DEFAULT(): ButtonStyle;
|
|
18
|
+
constructor(style?: ButtonStyleOption, headerStyle?: ButtonStyleOption, buttonThemeStyle?: ButtonStyleThemeOption);
|
|
19
|
+
get buttonColor(): string;
|
|
20
|
+
set buttonColor(buttonColor: string);
|
|
21
|
+
get buttonBorderColor(): string;
|
|
22
|
+
set buttonBorderColor(buttonBorderColor: string);
|
|
23
|
+
get buttonLineWidth(): number;
|
|
24
|
+
set buttonLineWidth(buttonLineWidth: number);
|
|
25
|
+
get buttonBorderRadius(): number;
|
|
26
|
+
set buttonBorderRadius(buttonBorderRadius: number);
|
|
27
|
+
get buttonHoverColor(): string;
|
|
28
|
+
set buttonHoverColor(buttonHoverColor: string);
|
|
29
|
+
get buttonHoverBorderColor(): string;
|
|
30
|
+
set buttonHoverBorderColor(buttonHoverBorderColor: string);
|
|
31
|
+
get buttonTextHoverColor(): string;
|
|
32
|
+
set buttonTextHoverColor(buttonTextHoverColor: string);
|
|
33
|
+
get buttonDisableColor(): string;
|
|
34
|
+
set buttonDisableColor(buttonDisableColor: string);
|
|
35
|
+
get buttonDisableBorderColor(): string;
|
|
36
|
+
set buttonDisableBorderColor(buttonDisableBorderColor: string);
|
|
37
|
+
get buttonTextDisableColor(): string;
|
|
38
|
+
set buttonTextDisableColor(buttonTextDisableColor: string);
|
|
39
|
+
get buttonTextHoverBorderColor(): string;
|
|
40
|
+
set buttonTextHoverBorderColor(buttonTextHoverBorderColor: string);
|
|
41
|
+
get buttonPadding(): number;
|
|
42
|
+
set buttonPadding(buttonPadding: number);
|
|
43
|
+
getStyle(style: IStyleOption): ButtonStyle;
|
|
44
|
+
clone(): ButtonStyle;
|
|
45
|
+
}
|