@carto/ps-react-ui 4.4.0-chat-ui.5 → 4.4.0-chat-ui.7
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/dist/category-DwaeYjpX.js +656 -0
- package/dist/category-DwaeYjpX.js.map +1 -0
- package/dist/change-column-Cidl_M-4.js +1110 -0
- package/dist/change-column-Cidl_M-4.js.map +1 -0
- package/dist/chat.js +622 -673
- package/dist/chat.js.map +1 -1
- package/dist/components.js.map +1 -1
- package/dist/data-zoom-layout-DVYB8mIx.js +29 -0
- package/dist/data-zoom-layout-DVYB8mIx.js.map +1 -0
- package/dist/download-config-C7hf33ip.js +58 -0
- package/dist/download-config-C7hf33ip.js.map +1 -0
- package/dist/echart-CU0KmClP.js +176 -0
- package/dist/echart-CU0KmClP.js.map +1 -0
- package/dist/exports-Cr43OCul.js.map +1 -1
- package/dist/exports-Cx-f6m6U.js +63 -0
- package/dist/exports-Cx-f6m6U.js.map +1 -0
- package/dist/formatter-B9Bxn1k7.js +6 -0
- package/dist/formatter-B9Bxn1k7.js.map +1 -0
- package/dist/formula-DuC0NQLH.js +79 -0
- package/dist/formula-DuC0NQLH.js.map +1 -0
- package/dist/lasso-tool-BYbxrJ-7.js.map +1 -1
- package/dist/markdown-BD1jcknS.js +8326 -0
- package/dist/markdown-BD1jcknS.js.map +1 -0
- package/dist/option-builders-F-c9ELi1.js +122 -0
- package/dist/option-builders-F-c9ELi1.js.map +1 -0
- package/dist/options-CthfUJDz.js +46 -0
- package/dist/options-CthfUJDz.js.map +1 -0
- package/dist/png-item-CS4z1iSH.js +45 -0
- package/dist/png-item-CS4z1iSH.js.map +1 -0
- package/dist/range-l4fNHLEg.js +213 -0
- package/dist/range-l4fNHLEg.js.map +1 -0
- package/dist/resolve-theme-color-BdojIw0K.js +47 -0
- package/dist/resolve-theme-color-BdojIw0K.js.map +1 -0
- package/dist/row-DZSP99LW.js +34 -0
- package/dist/row-DZSP99LW.js.map +1 -0
- package/dist/series-DLNHDWs0.js +90 -0
- package/dist/series-DLNHDWs0.js.map +1 -0
- package/dist/shared-resize-observer-98b1SK1e.js +17 -0
- package/dist/shared-resize-observer-98b1SK1e.js.map +1 -0
- package/dist/smart-tooltip-D4vwQpFf.js.map +1 -1
- package/dist/spread-CngWB5KF.js +68 -0
- package/dist/spread-CngWB5KF.js.map +1 -0
- package/dist/style-DVnT6HC1.js +131 -0
- package/dist/style-DVnT6HC1.js.map +1 -0
- package/dist/styles-cohnxh9F.js +23 -0
- package/dist/styles-cohnxh9F.js.map +1 -0
- package/dist/table-CQCAnDLb.js +388 -0
- package/dist/table-CQCAnDLb.js.map +1 -0
- package/dist/tooltip-BDnrRKrp.js.map +1 -1
- package/dist/transforms-Cdx4fkU5.js +106 -0
- package/dist/transforms-Cdx4fkU5.js.map +1 -0
- package/dist/types/chat/containers/chat-content.d.ts +2 -2
- package/dist/types/chat/containers/styles.d.ts +10 -27
- package/dist/types/chat/feedback/chat-tool-code-area.d.ts +1 -3
- package/dist/types/chat/index.d.ts +1 -1
- package/dist/types/chat/types.d.ts +35 -3
- package/dist/types/components/basemaps/basemaps.d.ts +20 -0
- package/dist/types/components/geolocation-controls/geolocation-controls.d.ts +11 -0
- package/dist/types/components/lasso-tool/lasso-tool-inline.d.ts +17 -0
- package/dist/types/components/lasso-tool/lasso-tool.d.ts +21 -0
- package/dist/types/components/list-data/list-data.d.ts +16 -0
- package/dist/types/components/measurement-tools/measurement-tools.d.ts +20 -0
- package/dist/types/components/smart-tooltip/smart-tooltip.d.ts +17 -0
- package/dist/types/components/tooltip/tooltip.d.ts +13 -0
- package/dist/types/components/zoom-controls/zoom-controls.d.ts +16 -0
- package/dist/types/hooks/index.d.ts +0 -1
- package/dist/types/hooks/use-widget-ref.d.ts +9 -6
- package/dist/types/widgets/actions/brush-toggle/brush-overlay.d.ts +24 -0
- package/dist/types/widgets/actions/brush-toggle/brush-toggle.d.ts +29 -0
- package/dist/types/widgets/actions/brush-toggle/hit-test.d.ts +19 -0
- package/dist/types/widgets/actions/brush-toggle/hit-test.test.d.ts +1 -0
- package/dist/types/widgets/actions/brush-toggle/style.d.ts +21 -0
- package/dist/types/widgets/actions/brush-toggle/types.d.ts +73 -0
- package/dist/types/widgets/actions/download/download.d.ts +11 -0
- package/dist/types/widgets/actions/download/exports.d.ts +15 -0
- package/dist/types/widgets/actions/fullscreen/fullscreen.d.ts +13 -0
- package/dist/types/widgets/actions/index.d.ts +7 -5
- package/dist/types/widgets/actions/lock-selection/types.d.ts +2 -0
- package/dist/types/widgets/actions/relative-data/relative-data.d.ts +8 -2
- package/dist/types/widgets/actions/relative-data/types.d.ts +2 -0
- package/dist/types/widgets/actions/zoom-toggle/zoom-toggle.d.ts +4 -0
- package/dist/types/widgets/bar/config.d.ts +8 -4
- package/dist/types/widgets/category/category-ui.d.ts +3 -0
- package/dist/types/widgets/category/components/category-bar.d.ts +3 -0
- package/dist/types/widgets/category/components/category-legend.d.ts +3 -0
- package/dist/types/widgets/category/components/category-row-multi.d.ts +5 -1
- package/dist/types/widgets/category/components/category-row-other.d.ts +3 -0
- package/dist/types/widgets/category/components/category-row-single.d.ts +5 -1
- package/dist/types/widgets/category/config.d.ts +11 -0
- package/dist/types/widgets/category/index.d.ts +10 -2
- package/dist/types/widgets/category/style.d.ts +1 -0
- package/dist/types/widgets/category/types.d.ts +1 -0
- package/dist/types/widgets/echart/echart-ui.d.ts +7 -0
- package/dist/types/widgets/echart/echart.d.ts +6 -0
- package/dist/types/widgets/echart/options.d.ts +7 -0
- package/dist/types/widgets/echart/shared-resize-observer.d.ts +12 -0
- package/dist/types/widgets/echart/types.d.ts +5 -1
- package/dist/types/widgets/echart/utils.d.ts +54 -7
- package/dist/types/widgets/echart/utils.test.d.ts +1 -0
- package/dist/types/widgets/error/error.d.ts +10 -0
- package/dist/types/widgets/formula/components/item.d.ts +3 -0
- package/dist/types/widgets/formula/components/prefix.d.ts +3 -0
- package/dist/types/widgets/formula/components/row.d.ts +3 -0
- package/dist/types/widgets/formula/components/series.d.ts +3 -0
- package/dist/types/widgets/formula/components/suffix.d.ts +3 -0
- package/dist/types/widgets/formula/components/value.d.ts +3 -0
- package/dist/types/widgets/formula/config.d.ts +11 -0
- package/dist/types/widgets/formula/config.test.d.ts +1 -0
- package/dist/types/widgets/formula/formula-ui.d.ts +3 -0
- package/dist/types/widgets/histogram/config.d.ts +18 -2
- package/dist/types/widgets/histogram/index.d.ts +2 -1
- package/dist/types/widgets/histogram/types.d.ts +6 -3
- package/dist/types/widgets/loader/loader.d.ts +22 -0
- package/dist/types/widgets/loader/utils.d.ts +26 -3
- package/dist/types/widgets/markdown/config.d.ts +10 -0
- package/dist/types/widgets/markdown/markdown-ui.d.ts +7 -0
- package/dist/types/widgets/markdown/markdown.d.ts +3 -0
- package/dist/types/widgets/no-data/no-data.d.ts +3 -2
- package/dist/types/widgets/no-data/types.d.ts +5 -1
- package/dist/types/widgets/note/note.d.ts +10 -0
- package/dist/types/widgets/pie/config.d.ts +8 -4
- package/dist/types/widgets/range/components/range-item.d.ts +3 -0
- package/dist/types/widgets/range/config.d.ts +5 -0
- package/dist/types/widgets/range/range-ui.d.ts +3 -0
- package/dist/types/widgets/scatterplot/config.d.ts +7 -3
- package/dist/types/widgets/selection-summary/selection-summary.d.ts +11 -0
- package/dist/types/widgets/skeleton-loader/skeleton-loader.d.ts +10 -0
- package/dist/types/widgets/spread/components/max-value.d.ts +3 -0
- package/dist/types/widgets/spread/components/min-value.d.ts +3 -0
- package/dist/types/widgets/spread/components/separator.d.ts +3 -0
- package/dist/types/widgets/spread/config.d.ts +11 -0
- package/dist/types/widgets/spread/spread-ui.d.ts +3 -0
- package/dist/types/widgets/stores/index.d.ts +3 -2
- package/dist/types/widgets/stores/types.d.ts +12 -10
- package/dist/types/widgets/stores/use-widget-selector.d.ts +35 -0
- package/dist/types/widgets/stores/widget-store-branches.test.d.ts +1 -0
- package/dist/types/widgets/stores/widget-store-performance.test.d.ts +1 -0
- package/dist/types/widgets/stores/widget-store.d.ts +48 -27
- package/dist/types/widgets/subheader/subheader.d.ts +11 -0
- package/dist/types/widgets/table/config.d.ts +8 -3
- package/dist/types/widgets/table/config.test.d.ts +1 -0
- package/dist/types/widgets/table/hooks/use-pagination.d.ts +11 -3
- package/dist/types/widgets/table/hooks/use-selection.d.ts +11 -2
- package/dist/types/widgets/table/hooks/use-sort.d.ts +11 -3
- package/dist/types/widgets/table/index.d.ts +6 -2
- package/dist/types/widgets/table/types.d.ts +1 -1
- package/dist/types/widgets/timeseries/config.d.ts +8 -4
- package/dist/types/widgets/utils/chart-config/download-config.d.ts +3 -0
- package/dist/types/widgets/{_shared → utils}/chart-config/index.d.ts +3 -1
- package/dist/types/widgets/{_shared → utils}/chart-config/option-builders.d.ts +41 -9
- package/dist/types/widgets/utils/chart-config/option-builders.test.d.ts +1 -0
- package/dist/types/widgets/utils/formatter.d.ts +2 -0
- package/dist/types/widgets/utils/index.d.ts +7 -0
- package/dist/types/widgets/wrapper/components/actions.d.ts +3 -0
- package/dist/types/widgets/wrapper/components/options.d.ts +3 -0
- package/dist/types/widgets/wrapper/components/title.d.ts +3 -0
- package/dist/types/widgets/wrapper/wrapper-ui.d.ts +14 -0
- package/dist/types/widgets/wrapper/wrapper.d.ts +14 -0
- package/dist/types/widgets-v2/actions/brush-toggle/brush-toggle.d.ts +56 -0
- package/dist/types/widgets-v2/actions/brush-toggle/index.d.ts +3 -0
- package/dist/types/widgets-v2/actions/brush-toggle/labels.d.ts +5 -0
- package/dist/types/widgets-v2/actions/brush-toggle/style.d.ts +12 -0
- package/dist/types/widgets-v2/actions/brush-toggle/transforms.d.ts +11 -0
- package/dist/types/widgets-v2/actions/change-column/change-column-icon.d.ts +2 -0
- package/dist/types/widgets-v2/actions/change-column/change-column.d.ts +29 -0
- package/dist/types/widgets-v2/actions/change-column/index.d.ts +3 -0
- package/dist/types/widgets-v2/actions/change-column/labels.d.ts +5 -0
- package/dist/types/widgets-v2/actions/change-column/sortable-column-item.d.ts +14 -0
- package/dist/types/widgets-v2/actions/change-column/style.d.ts +33 -0
- package/dist/types/widgets-v2/actions/change-column/types.d.ts +10 -0
- package/dist/types/widgets-v2/actions/download/download.d.ts +18 -0
- package/dist/types/widgets-v2/actions/download/exports.d.ts +37 -0
- package/dist/types/widgets-v2/actions/download/icons.d.ts +12 -0
- package/dist/types/widgets-v2/actions/download/index.d.ts +6 -0
- package/dist/types/widgets-v2/actions/download/labels.d.ts +11 -0
- package/dist/types/widgets-v2/actions/download/png-item.d.ts +24 -0
- package/dist/types/widgets-v2/actions/download/style.d.ts +1 -0
- package/dist/types/widgets-v2/actions/download/types.d.ts +35 -0
- package/dist/types/widgets-v2/actions/fullscreen/fullscreen.d.ts +59 -0
- package/dist/types/widgets-v2/actions/fullscreen/index.d.ts +3 -0
- package/dist/types/widgets-v2/actions/fullscreen/labels.d.ts +5 -0
- package/dist/types/widgets-v2/actions/fullscreen/style.d.ts +48 -0
- package/dist/types/widgets-v2/actions/fullscreen/types.d.ts +14 -0
- package/dist/types/widgets-v2/actions/index.d.ts +9 -0
- package/dist/types/widgets-v2/actions/lock-selection/index.d.ts +3 -0
- package/dist/types/widgets-v2/actions/lock-selection/labels.d.ts +6 -0
- package/dist/types/widgets-v2/actions/lock-selection/lock-selection.d.ts +36 -0
- package/dist/types/widgets-v2/actions/lock-selection/style.d.ts +12 -0
- package/dist/types/widgets-v2/actions/lock-selection/transforms.d.ts +6 -0
- package/dist/types/widgets-v2/actions/relative-data/index.d.ts +3 -0
- package/dist/types/widgets-v2/actions/relative-data/labels.d.ts +5 -0
- package/dist/types/widgets-v2/actions/relative-data/relative-data.d.ts +39 -0
- package/dist/types/widgets-v2/actions/relative-data/style.d.ts +12 -0
- package/dist/types/widgets-v2/actions/relative-data/transforms.d.ts +30 -0
- package/dist/types/widgets-v2/actions/relative-data/transforms.test.d.ts +1 -0
- package/dist/types/widgets-v2/actions/searcher/filter.d.ts +6 -0
- package/dist/types/widgets-v2/actions/searcher/index.d.ts +4 -0
- package/dist/types/widgets-v2/actions/searcher/labels.d.ts +7 -0
- package/dist/types/widgets-v2/actions/searcher/searcher-toggle.d.ts +23 -0
- package/dist/types/widgets-v2/actions/searcher/searcher.d.ts +11 -0
- package/dist/types/widgets-v2/actions/searcher/style.d.ts +16 -0
- package/dist/types/widgets-v2/actions/stack-toggle/index.d.ts +3 -0
- package/dist/types/widgets-v2/actions/stack-toggle/labels.d.ts +5 -0
- package/dist/types/widgets-v2/actions/stack-toggle/stack-toggle.d.ts +10 -0
- package/dist/types/widgets-v2/actions/stack-toggle/style.d.ts +12 -0
- package/dist/types/widgets-v2/actions/stack-toggle/transforms.d.ts +13 -0
- package/dist/types/widgets-v2/actions/stack-toggle/transforms.test.d.ts +1 -0
- package/dist/types/widgets-v2/actions/zoom-toggle/index.d.ts +3 -0
- package/dist/types/widgets-v2/actions/zoom-toggle/labels.d.ts +5 -0
- package/dist/types/widgets-v2/actions/zoom-toggle/style.d.ts +12 -0
- package/dist/types/widgets-v2/actions/zoom-toggle/transforms.d.ts +51 -0
- package/dist/types/widgets-v2/actions/zoom-toggle/transforms.test.d.ts +1 -0
- package/dist/types/widgets-v2/actions/zoom-toggle/zoom-toggle.d.ts +35 -0
- package/dist/types/widgets-v2/bar/download.d.ts +24 -0
- package/dist/types/widgets-v2/bar/index.d.ts +4 -0
- package/dist/types/widgets-v2/bar/options.d.ts +43 -0
- package/dist/types/widgets-v2/bar/options.test.d.ts +1 -0
- package/dist/types/widgets-v2/bar/skeleton.d.ts +6 -0
- package/dist/types/widgets-v2/bar/types.d.ts +46 -0
- package/dist/types/widgets-v2/category/category-ui.d.ts +81 -0
- package/dist/types/widgets-v2/category/category.d.ts +48 -0
- package/dist/types/widgets-v2/category/components/category-bar-stacked.d.ts +28 -0
- package/dist/types/widgets-v2/category/components/category-bar.d.ts +23 -0
- package/dist/types/widgets-v2/category/components/category-legend.d.ts +18 -0
- package/dist/types/widgets-v2/category/components/category-row-multi.d.ts +31 -0
- package/dist/types/widgets-v2/category/components/category-row-other.d.ts +13 -0
- package/dist/types/widgets-v2/category/components/category-row-single.d.ts +28 -0
- package/dist/types/widgets-v2/category/components/category-row-stacked.d.ts +38 -0
- package/dist/types/widgets-v2/category/download.d.ts +16 -0
- package/dist/types/widgets-v2/category/download.test.d.ts +1 -0
- package/dist/types/widgets-v2/category/index.d.ts +10 -0
- package/dist/types/widgets-v2/category/skeleton.d.ts +11 -0
- package/dist/types/widgets-v2/category/style.d.ts +166 -0
- package/dist/types/widgets-v2/category/types.d.ts +53 -0
- package/dist/types/widgets-v2/echart/echart-ui.d.ts +44 -0
- package/dist/types/widgets-v2/echart/echart.d.ts +75 -0
- package/dist/types/widgets-v2/echart/index.d.ts +4 -0
- package/dist/types/widgets-v2/echart/shared-resize-observer.d.ts +5 -0
- package/dist/types/widgets-v2/echart/shared-resize-observer.test.d.ts +1 -0
- package/dist/types/widgets-v2/echart/style.d.ts +6 -0
- package/dist/types/widgets-v2/echart/use-chart-selection.d.ts +51 -0
- package/dist/types/widgets-v2/formula/delta.d.ts +22 -0
- package/dist/types/widgets-v2/formula/download.d.ts +20 -0
- package/dist/types/widgets-v2/formula/formula-ui.d.ts +20 -0
- package/dist/types/widgets-v2/formula/formula.d.ts +8 -0
- package/dist/types/widgets-v2/formula/index.d.ts +11 -0
- package/dist/types/widgets-v2/formula/note.d.ts +11 -0
- package/dist/types/widgets-v2/formula/prefix.d.ts +12 -0
- package/dist/types/widgets-v2/formula/series.d.ts +16 -0
- package/dist/types/widgets-v2/formula/skeleton.d.ts +4 -0
- package/dist/types/widgets-v2/formula/style.d.ts +29 -0
- package/dist/types/widgets-v2/formula/suffix.d.ts +12 -0
- package/dist/types/widgets-v2/formula/types.d.ts +43 -0
- package/dist/types/widgets-v2/formula/value.d.ts +14 -0
- package/dist/types/widgets-v2/histogram/download.d.ts +17 -0
- package/dist/types/widgets-v2/histogram/download.test.d.ts +1 -0
- package/dist/types/widgets-v2/histogram/index.d.ts +5 -0
- package/dist/types/widgets-v2/histogram/options.d.ts +42 -0
- package/dist/types/widgets-v2/histogram/options.test.d.ts +1 -0
- package/dist/types/widgets-v2/histogram/skeleton.d.ts +9 -0
- package/dist/types/widgets-v2/histogram/transforms.d.ts +17 -0
- package/dist/types/widgets-v2/histogram/transforms.test.d.ts +1 -0
- package/dist/types/widgets-v2/histogram/types.d.ts +51 -0
- package/dist/types/widgets-v2/index.d.ts +108 -0
- package/dist/types/widgets-v2/markdown/download.d.ts +16 -0
- package/dist/types/widgets-v2/markdown/download.test.d.ts +1 -0
- package/dist/types/widgets-v2/markdown/index.d.ts +6 -0
- package/dist/types/widgets-v2/markdown/markdown-content.d.ts +34 -0
- package/dist/types/widgets-v2/markdown/markdown-ui.d.ts +12 -0
- package/dist/types/widgets-v2/markdown/markdown.d.ts +6 -0
- package/dist/types/widgets-v2/markdown/skeleton.d.ts +4 -0
- package/dist/types/widgets-v2/markdown/style.d.ts +61 -0
- package/dist/types/widgets-v2/markdown/types.d.ts +4 -0
- package/dist/types/widgets-v2/note/labels.d.ts +5 -0
- package/dist/types/widgets-v2/note/style.d.ts +26 -0
- package/dist/types/widgets-v2/note/widget-note.d.ts +46 -0
- package/dist/types/widgets-v2/pie/download.d.ts +17 -0
- package/dist/types/widgets-v2/pie/download.test.d.ts +1 -0
- package/dist/types/widgets-v2/pie/index.d.ts +4 -0
- package/dist/types/widgets-v2/pie/options.d.ts +35 -0
- package/dist/types/widgets-v2/pie/options.test.d.ts +1 -0
- package/dist/types/widgets-v2/pie/skeleton.d.ts +4 -0
- package/dist/types/widgets-v2/pie/types.d.ts +57 -0
- package/dist/types/widgets-v2/provider/widget-provider.d.ts +32 -0
- package/dist/types/widgets-v2/range/index.d.ts +4 -0
- package/dist/types/widgets-v2/range/range-ui.d.ts +27 -0
- package/dist/types/widgets-v2/range/range.d.ts +24 -0
- package/dist/types/widgets-v2/range/skeleton.d.ts +9 -0
- package/dist/types/widgets-v2/range/style.d.ts +40 -0
- package/dist/types/widgets-v2/range/types.d.ts +37 -0
- package/dist/types/widgets-v2/scatterplot/download.d.ts +16 -0
- package/dist/types/widgets-v2/scatterplot/download.test.d.ts +1 -0
- package/dist/types/widgets-v2/scatterplot/index.d.ts +5 -0
- package/dist/types/widgets-v2/scatterplot/options.d.ts +42 -0
- package/dist/types/widgets-v2/scatterplot/options.test.d.ts +1 -0
- package/dist/types/widgets-v2/scatterplot/skeleton.d.ts +12 -0
- package/dist/types/widgets-v2/scatterplot/transforms.d.ts +17 -0
- package/dist/types/widgets-v2/scatterplot/transforms.test.d.ts +1 -0
- package/dist/types/widgets-v2/scatterplot/types.d.ts +54 -0
- package/dist/types/widgets-v2/selection-summary/labels.d.ts +6 -0
- package/dist/types/widgets-v2/selection-summary/selection-summary.d.ts +22 -0
- package/dist/types/widgets-v2/selection-summary/style.d.ts +23 -0
- package/dist/types/widgets-v2/spread/download.d.ts +15 -0
- package/dist/types/widgets-v2/spread/download.test.d.ts +1 -0
- package/dist/types/widgets-v2/spread/index.d.ts +6 -0
- package/dist/types/widgets-v2/spread/separator.d.ts +7 -0
- package/dist/types/widgets-v2/spread/skeleton.d.ts +9 -0
- package/dist/types/widgets-v2/spread/spread-ui.d.ts +18 -0
- package/dist/types/widgets-v2/spread/spread.d.ts +5 -0
- package/dist/types/widgets-v2/spread/types.d.ts +25 -0
- package/dist/types/widgets-v2/state/labels.d.ts +7 -0
- package/dist/types/widgets-v2/state/labels.test.d.ts +1 -0
- package/dist/types/widgets-v2/state/style.d.ts +19 -0
- package/dist/types/widgets-v2/state/widget-state.d.ts +19 -0
- package/dist/types/widgets-v2/stores/index.d.ts +8 -0
- package/dist/types/widgets-v2/stores/pipeline-middleware.d.ts +5 -0
- package/dist/types/widgets-v2/stores/pipeline-middleware.test.d.ts +1 -0
- package/dist/types/widgets-v2/stores/transforms.d.ts +4 -0
- package/dist/types/widgets-v2/stores/transforms.test.d.ts +1 -0
- package/dist/types/widgets-v2/stores/types.d.ts +55 -0
- package/dist/types/widgets-v2/stores/use-echart-instance.d.ts +15 -0
- package/dist/types/widgets-v2/stores/use-transform-enabled.d.ts +17 -0
- package/dist/types/widgets-v2/stores/use-transform.d.ts +12 -0
- package/dist/types/widgets-v2/stores/widget-context.d.ts +2 -0
- package/dist/types/widgets-v2/stores/widget-store-registry.d.ts +74 -0
- package/dist/types/widgets-v2/stores/widget-store-registry.test.d.ts +1 -0
- package/dist/types/widgets-v2/subheader/style.d.ts +10 -0
- package/dist/types/widgets-v2/subheader/subheader.d.ts +11 -0
- package/dist/types/widgets-v2/table/download.d.ts +18 -0
- package/dist/types/widgets-v2/table/download.test.d.ts +1 -0
- package/dist/types/widgets-v2/table/helpers.d.ts +32 -0
- package/dist/types/widgets-v2/table/helpers.test.d.ts +1 -0
- package/dist/types/widgets-v2/table/index.d.ts +7 -0
- package/dist/types/widgets-v2/table/labels.d.ts +22 -0
- package/dist/types/widgets-v2/table/skeleton.d.ts +22 -0
- package/dist/types/widgets-v2/table/style.d.ts +40 -0
- package/dist/types/widgets-v2/table/table-ui.d.ts +44 -0
- package/dist/types/widgets-v2/table/table.d.ts +50 -0
- package/dist/types/widgets-v2/table/types.d.ts +48 -0
- package/dist/types/widgets-v2/test-utils.d.ts +52 -0
- package/dist/types/widgets-v2/timeseries/download.d.ts +17 -0
- package/dist/types/widgets-v2/timeseries/download.test.d.ts +1 -0
- package/dist/types/widgets-v2/timeseries/index.d.ts +4 -0
- package/dist/types/widgets-v2/timeseries/options.d.ts +39 -0
- package/dist/types/widgets-v2/timeseries/options.test.d.ts +1 -0
- package/dist/types/widgets-v2/timeseries/skeleton.d.ts +8 -0
- package/dist/types/widgets-v2/timeseries/types.d.ts +60 -0
- package/dist/types/widgets-v2/toolbox/labels.d.ts +5 -0
- package/dist/types/widgets-v2/toolbox/style.d.ts +30 -0
- package/dist/types/widgets-v2/toolbox/toolbox.d.ts +49 -0
- package/dist/types/widgets-v2/types.d.ts +25 -0
- package/dist/types/widgets-v2/utils/data-zoom-layout.d.ts +11 -0
- package/dist/types/widgets-v2/utils/index.d.ts +3 -0
- package/dist/types/widgets-v2/utils/merge-options.d.ts +12 -0
- package/dist/types/widgets-v2/utils/merge-options.test.d.ts +1 -0
- package/dist/types/widgets-v2/utils/resolve-theme-color.d.ts +18 -0
- package/dist/types/widgets-v2/utils/resolve-theme-color.test.d.ts +1 -0
- package/dist/types/widgets-v2/wrapper/index.d.ts +4 -0
- package/dist/types/widgets-v2/wrapper/labels.d.ts +6 -0
- package/dist/types/widgets-v2/wrapper/style.d.ts +111 -0
- package/dist/types/widgets-v2/wrapper/widget-actions.d.ts +22 -0
- package/dist/types/widgets-v2/wrapper/widget-content.d.ts +12 -0
- package/dist/types/widgets-v2/wrapper/widget-wrapper.d.ts +51 -0
- package/dist/use-transform-DXPN3nY7.js +110 -0
- package/dist/use-transform-DXPN3nY7.js.map +1 -0
- package/dist/use-widget-ref-Ddr_SlJJ.js +22 -0
- package/dist/use-widget-ref-Ddr_SlJJ.js.map +1 -0
- package/dist/use-widget-selector-DFl2hW0R.js +12 -0
- package/dist/use-widget-selector-DFl2hW0R.js.map +1 -0
- package/dist/{utils-idmvq0Oa.js → utils-BOhInag6.js} +95 -70
- package/dist/utils-BOhInag6.js.map +1 -0
- package/dist/widget-context-DTGO0Yta.js +13 -0
- package/dist/widget-context-DTGO0Yta.js.map +1 -0
- package/dist/widget-store-Bw5zRUGg.js +261 -0
- package/dist/widget-store-Bw5zRUGg.js.map +1 -0
- package/dist/widget-store-registry-_W4Z4xp-.js +178 -0
- package/dist/widget-store-registry-_W4Z4xp-.js.map +1 -0
- package/dist/widgets/actions.js +1120 -760
- package/dist/widgets/actions.js.map +1 -1
- package/dist/widgets/bar.js +87 -97
- package/dist/widgets/bar.js.map +1 -1
- package/dist/widgets/category.js +247 -236
- package/dist/widgets/category.js.map +1 -1
- package/dist/widgets/echart.js +100 -99
- package/dist/widgets/echart.js.map +1 -1
- package/dist/widgets/error.js +37 -2
- package/dist/widgets/error.js.map +1 -1
- package/dist/widgets/formula.js +78 -67
- package/dist/widgets/formula.js.map +1 -1
- package/dist/widgets/histogram.js +116 -92
- package/dist/widgets/histogram.js.map +1 -1
- package/dist/widgets/loader.js +53 -60
- package/dist/widgets/loader.js.map +1 -1
- package/dist/widgets/markdown.js +55 -53
- package/dist/widgets/markdown.js.map +1 -1
- package/dist/widgets/no-data.js +58 -2
- package/dist/widgets/no-data.js.map +1 -1
- package/dist/widgets/note.js +121 -2
- package/dist/widgets/note.js.map +1 -1
- package/dist/widgets/pie.js +148 -112
- package/dist/widgets/pie.js.map +1 -1
- package/dist/widgets/range.js +147 -144
- package/dist/widgets/range.js.map +1 -1
- package/dist/widgets/scatterplot.js +52 -65
- package/dist/widgets/scatterplot.js.map +1 -1
- package/dist/widgets/selection-summary.js.map +1 -1
- package/dist/widgets/skeleton-loader.js +18 -17
- package/dist/widgets/skeleton-loader.js.map +1 -1
- package/dist/widgets/spread.js +108 -90
- package/dist/widgets/spread.js.map +1 -1
- package/dist/widgets/stores.js +5 -2
- package/dist/widgets/stores.js.map +1 -1
- package/dist/widgets/subheader.js +29 -29
- package/dist/widgets/subheader.js.map +1 -1
- package/dist/widgets/table.js +429 -440
- package/dist/widgets/table.js.map +1 -1
- package/dist/widgets/timeseries.js +56 -69
- package/dist/widgets/timeseries.js.map +1 -1
- package/dist/widgets/toolbar-actions.js +50 -50
- package/dist/widgets/utils.js +34 -0
- package/dist/widgets/utils.js.map +1 -0
- package/dist/widgets/wrapper.js +156 -158
- package/dist/widgets/wrapper.js.map +1 -1
- package/dist/widgets-v2/actions.js +43 -0
- package/dist/widgets-v2/actions.js.map +1 -0
- package/dist/widgets-v2/bar.js +331 -0
- package/dist/widgets-v2/bar.js.map +1 -0
- package/dist/widgets-v2/category.js +105 -0
- package/dist/widgets-v2/category.js.map +1 -0
- package/dist/widgets-v2/echart.js +57 -0
- package/dist/widgets-v2/echart.js.map +1 -0
- package/dist/widgets-v2/formula.js +75 -0
- package/dist/widgets-v2/formula.js.map +1 -0
- package/dist/widgets-v2/histogram.js +354 -0
- package/dist/widgets-v2/histogram.js.map +1 -0
- package/dist/widgets-v2/markdown.js +69 -0
- package/dist/widgets-v2/markdown.js.map +1 -0
- package/dist/widgets-v2/pie.js +388 -0
- package/dist/widgets-v2/pie.js.map +1 -0
- package/dist/widgets-v2/range.js +52 -0
- package/dist/widgets-v2/range.js.map +1 -0
- package/dist/widgets-v2/scatterplot.js +412 -0
- package/dist/widgets-v2/scatterplot.js.map +1 -0
- package/dist/widgets-v2/spread.js +73 -0
- package/dist/widgets-v2/spread.js.map +1 -0
- package/dist/widgets-v2/stores.js +42 -0
- package/dist/widgets-v2/stores.js.map +1 -0
- package/dist/widgets-v2/table.js +79 -0
- package/dist/widgets-v2/table.js.map +1 -0
- package/dist/widgets-v2/timeseries.js +359 -0
- package/dist/widgets-v2/timeseries.js.map +1 -0
- package/dist/widgets-v2/utils.js +8 -0
- package/dist/widgets-v2/utils.js.map +1 -0
- package/dist/widgets-v2.js +954 -0
- package/dist/widgets-v2.js.map +1 -0
- package/package.json +84 -13
- package/src/chat/containers/chat-content.test.tsx +260 -6
- package/src/chat/containers/chat-content.tsx +137 -27
- package/src/chat/containers/chat-starter.tsx +2 -2
- package/src/chat/containers/styles.ts +16 -36
- package/src/chat/feedback/chat-tool-code-area.tsx +1 -1
- package/src/chat/feedback/chat-tool-group.tsx +1 -1
- package/src/chat/feedback/chat-tool-trace.tsx +6 -1
- package/src/chat/index.ts +1 -1
- package/src/chat/types.ts +36 -4
- package/src/components/basemaps/basemaps.tsx +20 -0
- package/src/components/geolocation-controls/geolocation-controls.tsx +11 -0
- package/src/components/lasso-tool/chip.test.tsx +176 -0
- package/src/components/lasso-tool/lasso-tool-inline.test.tsx +171 -0
- package/src/components/lasso-tool/lasso-tool-inline.tsx +17 -0
- package/src/components/lasso-tool/lasso-tool.test.tsx +198 -0
- package/src/components/lasso-tool/lasso-tool.tsx +21 -0
- package/src/components/list-data/list-data.test.tsx +73 -0
- package/src/components/list-data/list-data.tsx +16 -0
- package/src/components/measurement-tools/measurement-tools.tsx +20 -0
- package/src/components/no-data-alert/no-data-alert.test.tsx +38 -0
- package/src/components/responsive-drawer/responsive-drawer.test.tsx +68 -0
- package/src/components/smart-tooltip/smart-tooltip.tsx +17 -0
- package/src/components/tooltip/tooltip.tsx +13 -0
- package/src/components/zoom-controls/zoom-controls.tsx +16 -0
- package/src/hooks/index.ts +0 -1
- package/src/hooks/use-widget-ref.ts +10 -10
- package/src/widgets/README.md +13 -13
- package/src/widgets/actions/brush-toggle/brush-overlay.test.tsx +465 -0
- package/src/widgets/actions/brush-toggle/brush-overlay.tsx +408 -0
- package/src/widgets/actions/brush-toggle/brush-toggle.test.tsx +208 -0
- package/src/widgets/actions/brush-toggle/brush-toggle.tsx +133 -0
- package/src/widgets/actions/brush-toggle/hit-test.test.ts +65 -0
- package/src/widgets/actions/brush-toggle/hit-test.ts +45 -0
- package/src/widgets/actions/brush-toggle/style.ts +46 -0
- package/src/widgets/actions/brush-toggle/types.ts +78 -0
- package/src/widgets/actions/change-column/change-column-dnd.test.tsx +193 -0
- package/src/widgets/actions/change-column/change-column.test.tsx +1 -1
- package/src/widgets/actions/change-column/change-column.tsx +15 -15
- package/src/widgets/actions/change-column/sortable-column-item.test.tsx +124 -0
- package/src/widgets/actions/change-column/sortable-column-item.tsx +3 -1
- package/src/widgets/actions/download/download.test.tsx +1 -1
- package/src/widgets/actions/download/download.tsx +15 -3
- package/src/widgets/actions/download/exports.tsx +15 -0
- package/src/widgets/actions/fullscreen/fullscreen.tsx +20 -11
- package/src/widgets/actions/index.ts +21 -2
- package/src/widgets/actions/lock-selection/lock-selection.test.tsx +14 -0
- package/src/widgets/actions/lock-selection/lock-selection.tsx +26 -31
- package/src/widgets/actions/lock-selection/types.ts +2 -0
- package/src/widgets/actions/relative-data/relative-data.test.tsx +276 -1
- package/src/widgets/actions/relative-data/relative-data.tsx +113 -54
- package/src/widgets/actions/relative-data/types.ts +2 -0
- package/src/widgets/actions/searcher/searcher-toggle.tsx +11 -12
- package/src/widgets/actions/searcher/searcher.tsx +39 -42
- package/src/widgets/actions/stack-toggle/stack-toggle.test.tsx +4 -4
- package/src/widgets/actions/stack-toggle/stack-toggle.tsx +24 -32
- package/src/widgets/actions/zoom-toggle/zoom-toggle.test.tsx +322 -0
- package/src/widgets/actions/zoom-toggle/zoom-toggle.tsx +62 -80
- package/src/widgets/bar/config.ts +39 -34
- package/src/widgets/bar/style.ts +1 -1
- package/src/widgets/category/category-ui.tsx +41 -34
- package/src/widgets/category/components/category-bar.tsx +3 -0
- package/src/widgets/category/components/category-legend.tsx +3 -0
- package/src/widgets/category/components/category-row-multi.tsx +9 -2
- package/src/widgets/category/components/category-row-other.tsx +3 -0
- package/src/widgets/category/components/category-row-single.tsx +8 -1
- package/src/widgets/category/components/category-rows.test.tsx +213 -0
- package/src/widgets/category/config.ts +11 -0
- package/src/widgets/category/index.ts +13 -14
- package/src/widgets/category/style.ts +1 -0
- package/src/widgets/category/types.ts +1 -0
- package/src/widgets/echart/echart-ui.test.tsx +20 -16
- package/src/widgets/echart/echart-ui.tsx +18 -14
- package/src/widgets/echart/echart.tsx +19 -27
- package/src/widgets/echart/options.ts +8 -4
- package/src/widgets/echart/shared-resize-observer.ts +45 -0
- package/src/widgets/echart/types.ts +5 -1
- package/src/widgets/echart/utils.test.ts +277 -0
- package/src/widgets/echart/utils.ts +94 -21
- package/src/widgets/error/error.tsx +17 -9
- package/src/widgets/formula/components/item.tsx +3 -0
- package/src/widgets/formula/components/prefix.tsx +7 -6
- package/src/widgets/formula/components/row.tsx +7 -4
- package/src/widgets/formula/components/series.tsx +7 -6
- package/src/widgets/formula/components/suffix.tsx +7 -6
- package/src/widgets/formula/components/value.tsx +13 -18
- package/src/widgets/formula/config.test.ts +37 -0
- package/src/widgets/formula/config.ts +11 -0
- package/src/widgets/formula/formula-ui.tsx +4 -1
- package/src/widgets/histogram/config.ts +99 -24
- package/src/widgets/histogram/index.ts +6 -1
- package/src/widgets/histogram/style.ts +1 -1
- package/src/widgets/histogram/types.ts +9 -3
- package/src/widgets/loader/loader.tsx +53 -44
- package/src/widgets/loader/utils.ts +26 -3
- package/src/widgets/markdown/config.ts +10 -0
- package/src/widgets/markdown/markdown-ui.tsx +7 -0
- package/src/widgets/markdown/markdown.tsx +7 -7
- package/src/widgets/no-data/no-data.test.tsx +90 -40
- package/src/widgets/no-data/no-data.tsx +12 -13
- package/src/widgets/no-data/types.ts +5 -1
- package/src/widgets/note/note.tsx +10 -0
- package/src/widgets/pie/config.ts +102 -33
- package/src/widgets/pie/style.ts +1 -1
- package/src/widgets/range/components/range-item.test.tsx +243 -0
- package/src/widgets/range/components/range-item.tsx +25 -20
- package/src/widgets/range/config.ts +5 -0
- package/src/widgets/range/range-ui.tsx +3 -0
- package/src/widgets/scatterplot/config.ts +21 -23
- package/src/widgets/scatterplot/style.ts +1 -1
- package/src/widgets/selection-summary/selection-summary.tsx +11 -0
- package/src/widgets/skeleton-loader/skeleton-loader.tsx +12 -5
- package/src/widgets/spread/components/max-value.tsx +18 -18
- package/src/widgets/spread/components/min-value.tsx +18 -18
- package/src/widgets/spread/components/separator.tsx +3 -0
- package/src/widgets/spread/config.ts +11 -0
- package/src/widgets/spread/spread-ui.tsx +4 -1
- package/src/widgets/stores/index.ts +4 -1
- package/src/widgets/stores/types.ts +12 -18
- package/src/widgets/stores/use-widget-selector.ts +47 -0
- package/src/widgets/stores/widget-store-branches.test.ts +275 -0
- package/src/widgets/stores/widget-store-performance.test.ts +750 -0
- package/src/widgets/stores/widget-store.test.ts +213 -13
- package/src/widgets/stores/widget-store.ts +240 -65
- package/src/widgets/subheader/subheader.tsx +22 -3
- package/src/widgets/table/config.test.ts +65 -0
- package/src/widgets/table/config.ts +8 -4
- package/src/widgets/table/hooks/use-pagination.ts +39 -55
- package/src/widgets/table/hooks/use-selection.ts +31 -26
- package/src/widgets/table/hooks/use-sort.ts +33 -42
- package/src/widgets/table/index.ts +6 -4
- package/src/widgets/table/table-ui.tsx +1 -1
- package/src/widgets/table/types.ts +1 -1
- package/src/widgets/timeseries/config.ts +34 -33
- package/src/widgets/timeseries/style.ts +1 -1
- package/src/widgets/utils/chart-config/download-config.ts +22 -0
- package/src/widgets/{_shared → utils}/chart-config/index.ts +6 -0
- package/src/widgets/utils/chart-config/option-builders.test.ts +332 -0
- package/src/widgets/{_shared → utils}/chart-config/option-builders.ts +79 -13
- package/src/widgets/utils/formatter.ts +2 -0
- package/src/widgets/utils/index.ts +26 -0
- package/src/widgets/wrapper/components/actions.tsx +3 -0
- package/src/widgets/wrapper/components/options.tsx +3 -0
- package/src/widgets/wrapper/components/title.tsx +3 -0
- package/src/widgets/wrapper/wrapper-ui.tsx +26 -13
- package/src/widgets/wrapper/wrapper.tsx +18 -6
- package/src/widgets-v2/PERFORMANCE.md +189 -0
- package/src/widgets-v2/actions/brush-toggle/brush-toggle.test.tsx +180 -0
- package/src/widgets-v2/actions/brush-toggle/brush-toggle.tsx +154 -0
- package/src/widgets-v2/actions/brush-toggle/index.ts +3 -0
- package/src/widgets-v2/actions/brush-toggle/labels.ts +9 -0
- package/src/widgets-v2/actions/brush-toggle/style.ts +11 -0
- package/src/widgets-v2/actions/brush-toggle/transforms.test.ts +47 -0
- package/src/widgets-v2/actions/brush-toggle/transforms.ts +31 -0
- package/src/widgets-v2/actions/change-column/change-column-icon.tsx +14 -0
- package/src/widgets-v2/actions/change-column/change-column.test.tsx +59 -0
- package/src/widgets-v2/actions/change-column/change-column.tsx +180 -0
- package/src/widgets-v2/actions/change-column/index.ts +7 -0
- package/src/widgets-v2/actions/change-column/labels.ts +9 -0
- package/src/widgets-v2/actions/change-column/sortable-column-item.tsx +56 -0
- package/src/widgets-v2/actions/change-column/style.ts +32 -0
- package/src/widgets-v2/actions/change-column/types.ts +11 -0
- package/src/widgets-v2/actions/download/download.test.tsx +327 -0
- package/src/widgets-v2/actions/download/download.tsx +144 -0
- package/src/widgets-v2/actions/download/exports.test.tsx +198 -0
- package/src/widgets-v2/actions/download/exports.ts +115 -0
- package/src/widgets-v2/actions/download/icons.tsx +26 -0
- package/src/widgets-v2/actions/download/index.ts +13 -0
- package/src/widgets-v2/actions/download/labels.ts +16 -0
- package/src/widgets-v2/actions/download/png-item.test.tsx +72 -0
- package/src/widgets-v2/actions/download/png-item.tsx +52 -0
- package/src/widgets-v2/actions/download/style.ts +3 -0
- package/src/widgets-v2/actions/download/types.ts +32 -0
- package/src/widgets-v2/actions/fullscreen/fullscreen.test.tsx +150 -0
- package/src/widgets-v2/actions/fullscreen/fullscreen.tsx +230 -0
- package/src/widgets-v2/actions/fullscreen/index.ts +7 -0
- package/src/widgets-v2/actions/fullscreen/labels.ts +9 -0
- package/src/widgets-v2/actions/fullscreen/style.ts +59 -0
- package/src/widgets-v2/actions/fullscreen/types.ts +15 -0
- package/src/widgets-v2/actions/index.ts +82 -0
- package/src/widgets-v2/actions/lock-selection/index.ts +10 -0
- package/src/widgets-v2/actions/lock-selection/labels.ts +11 -0
- package/src/widgets-v2/actions/lock-selection/lock-selection.test.tsx +187 -0
- package/src/widgets-v2/actions/lock-selection/lock-selection.tsx +130 -0
- package/src/widgets-v2/actions/lock-selection/style.ts +11 -0
- package/src/widgets-v2/actions/lock-selection/transforms.ts +27 -0
- package/src/widgets-v2/actions/relative-data/index.ts +3 -0
- package/src/widgets-v2/actions/relative-data/labels.ts +9 -0
- package/src/widgets-v2/actions/relative-data/relative-data.test.tsx +71 -0
- package/src/widgets-v2/actions/relative-data/relative-data.tsx +107 -0
- package/src/widgets-v2/actions/relative-data/style.ts +11 -0
- package/src/widgets-v2/actions/relative-data/transforms.test.ts +151 -0
- package/src/widgets-v2/actions/relative-data/transforms.ts +70 -0
- package/src/widgets-v2/actions/searcher/filter.ts +28 -0
- package/src/widgets-v2/actions/searcher/index.ts +8 -0
- package/src/widgets-v2/actions/searcher/labels.ts +13 -0
- package/src/widgets-v2/actions/searcher/searcher-toggle.tsx +91 -0
- package/src/widgets-v2/actions/searcher/searcher.test.tsx +92 -0
- package/src/widgets-v2/actions/searcher/searcher.tsx +112 -0
- package/src/widgets-v2/actions/searcher/style.ts +15 -0
- package/src/widgets-v2/actions/stack-toggle/index.ts +3 -0
- package/src/widgets-v2/actions/stack-toggle/labels.ts +9 -0
- package/src/widgets-v2/actions/stack-toggle/stack-toggle.test.tsx +61 -0
- package/src/widgets-v2/actions/stack-toggle/stack-toggle.tsx +54 -0
- package/src/widgets-v2/actions/stack-toggle/style.ts +11 -0
- package/src/widgets-v2/actions/stack-toggle/transforms.test.ts +43 -0
- package/src/widgets-v2/actions/stack-toggle/transforms.ts +25 -0
- package/src/widgets-v2/actions/zoom-toggle/index.ts +9 -0
- package/src/widgets-v2/actions/zoom-toggle/labels.ts +9 -0
- package/src/widgets-v2/actions/zoom-toggle/style.ts +11 -0
- package/src/widgets-v2/actions/zoom-toggle/transforms.test.ts +148 -0
- package/src/widgets-v2/actions/zoom-toggle/transforms.ts +171 -0
- package/src/widgets-v2/actions/zoom-toggle/zoom-toggle.test.tsx +107 -0
- package/src/widgets-v2/actions/zoom-toggle/zoom-toggle.tsx +106 -0
- package/src/widgets-v2/bar/download.test.tsx +91 -0
- package/src/widgets-v2/bar/download.tsx +66 -0
- package/src/widgets-v2/bar/index.ts +10 -0
- package/src/widgets-v2/bar/options.test.ts +334 -0
- package/src/widgets-v2/bar/options.ts +332 -0
- package/src/widgets-v2/bar/skeleton.test.tsx +19 -0
- package/src/widgets-v2/bar/skeleton.tsx +69 -0
- package/src/widgets-v2/bar/types.ts +51 -0
- package/src/widgets-v2/category/category-ui.test.tsx +746 -0
- package/src/widgets-v2/category/category-ui.tsx +389 -0
- package/src/widgets-v2/category/category.relative-data.test.tsx +107 -0
- package/src/widgets-v2/category/category.stack-toggle.test.tsx +85 -0
- package/src/widgets-v2/category/category.test.tsx +305 -0
- package/src/widgets-v2/category/category.tsx +121 -0
- package/src/widgets-v2/category/components/category-bar-stacked.test.tsx +121 -0
- package/src/widgets-v2/category/components/category-bar-stacked.tsx +73 -0
- package/src/widgets-v2/category/components/category-bar.test.tsx +64 -0
- package/src/widgets-v2/category/components/category-bar.tsx +49 -0
- package/src/widgets-v2/category/components/category-legend.test.tsx +51 -0
- package/src/widgets-v2/category/components/category-legend.tsx +39 -0
- package/src/widgets-v2/category/components/category-row-multi.tsx +86 -0
- package/src/widgets-v2/category/components/category-row-other.test.tsx +28 -0
- package/src/widgets-v2/category/components/category-row-other.tsx +33 -0
- package/src/widgets-v2/category/components/category-row-single.tsx +76 -0
- package/src/widgets-v2/category/components/category-row-stacked.test.tsx +244 -0
- package/src/widgets-v2/category/components/category-row-stacked.tsx +99 -0
- package/src/widgets-v2/category/download.test.ts +71 -0
- package/src/widgets-v2/category/download.ts +54 -0
- package/src/widgets-v2/category/index.ts +32 -0
- package/src/widgets-v2/category/skeleton.test.tsx +26 -0
- package/src/widgets-v2/category/skeleton.tsx +74 -0
- package/src/widgets-v2/category/style.ts +290 -0
- package/src/widgets-v2/category/types.ts +59 -0
- package/src/widgets-v2/echart/echart-ui.test.tsx +232 -0
- package/src/widgets-v2/echart/echart-ui.tsx +184 -0
- package/src/widgets-v2/echart/echart.test.tsx +229 -0
- package/src/widgets-v2/echart/echart.tsx +199 -0
- package/src/widgets-v2/echart/index.ts +22 -0
- package/src/widgets-v2/echart/shared-resize-observer.test.ts +91 -0
- package/src/widgets-v2/echart/shared-resize-observer.ts +56 -0
- package/src/widgets-v2/echart/style.ts +8 -0
- package/src/widgets-v2/echart/use-chart-selection.test.tsx +118 -0
- package/src/widgets-v2/echart/use-chart-selection.ts +115 -0
- package/src/widgets-v2/formula/delta.tsx +61 -0
- package/src/widgets-v2/formula/download.test.tsx +65 -0
- package/src/widgets-v2/formula/download.tsx +69 -0
- package/src/widgets-v2/formula/formula-ui.test.tsx +91 -0
- package/src/widgets-v2/formula/formula-ui.tsx +66 -0
- package/src/widgets-v2/formula/formula.test.tsx +50 -0
- package/src/widgets-v2/formula/formula.tsx +34 -0
- package/src/widgets-v2/formula/index.ts +17 -0
- package/src/widgets-v2/formula/note.tsx +25 -0
- package/src/widgets-v2/formula/prefix.tsx +25 -0
- package/src/widgets-v2/formula/series.tsx +67 -0
- package/src/widgets-v2/formula/skeleton.test.tsx +21 -0
- package/src/widgets-v2/formula/skeleton.tsx +27 -0
- package/src/widgets-v2/formula/style.ts +31 -0
- package/src/widgets-v2/formula/subcomponents.test.tsx +107 -0
- package/src/widgets-v2/formula/suffix.tsx +25 -0
- package/src/widgets-v2/formula/types.ts +48 -0
- package/src/widgets-v2/formula/value.tsx +31 -0
- package/src/widgets-v2/histogram/download.test.ts +94 -0
- package/src/widgets-v2/histogram/download.ts +60 -0
- package/src/widgets-v2/histogram/index.ts +10 -0
- package/src/widgets-v2/histogram/options.test.ts +318 -0
- package/src/widgets-v2/histogram/options.ts +338 -0
- package/src/widgets-v2/histogram/skeleton.test.tsx +16 -0
- package/src/widgets-v2/histogram/skeleton.tsx +70 -0
- package/src/widgets-v2/histogram/transforms.test.ts +46 -0
- package/src/widgets-v2/histogram/transforms.ts +30 -0
- package/src/widgets-v2/histogram/types.ts +55 -0
- package/src/widgets-v2/index.ts +204 -0
- package/src/widgets-v2/markdown/download.test.ts +66 -0
- package/src/widgets-v2/markdown/download.ts +53 -0
- package/src/widgets-v2/markdown/index.ts +6 -0
- package/src/widgets-v2/markdown/markdown-content.test.tsx +155 -0
- package/src/widgets-v2/markdown/markdown-content.tsx +72 -0
- package/src/widgets-v2/markdown/markdown-ui.test.tsx +75 -0
- package/src/widgets-v2/markdown/markdown-ui.tsx +55 -0
- package/src/widgets-v2/markdown/markdown.test.tsx +39 -0
- package/src/widgets-v2/markdown/markdown.tsx +17 -0
- package/src/widgets-v2/markdown/skeleton.test.tsx +15 -0
- package/src/widgets-v2/markdown/skeleton.tsx +32 -0
- package/src/widgets-v2/markdown/style.ts +53 -0
- package/src/widgets-v2/markdown/types.ts +4 -0
- package/src/widgets-v2/note/labels.ts +9 -0
- package/src/widgets-v2/note/style.ts +26 -0
- package/src/widgets-v2/note/widget-note.test.tsx +158 -0
- package/src/widgets-v2/note/widget-note.tsx +172 -0
- package/src/widgets-v2/pie/download.test.ts +78 -0
- package/src/widgets-v2/pie/download.ts +55 -0
- package/src/widgets-v2/pie/index.ts +10 -0
- package/src/widgets-v2/pie/options.test.ts +601 -0
- package/src/widgets-v2/pie/options.ts +513 -0
- package/src/widgets-v2/pie/skeleton.test.tsx +17 -0
- package/src/widgets-v2/pie/skeleton.tsx +32 -0
- package/src/widgets-v2/pie/types.ts +62 -0
- package/src/widgets-v2/provider/widget-provider.test.tsx +119 -0
- package/src/widgets-v2/provider/widget-provider.tsx +111 -0
- package/src/widgets-v2/range/index.ts +4 -0
- package/src/widgets-v2/range/range-ui.test.tsx +136 -0
- package/src/widgets-v2/range/range-ui.tsx +278 -0
- package/src/widgets-v2/range/range.test.tsx +68 -0
- package/src/widgets-v2/range/range.tsx +52 -0
- package/src/widgets-v2/range/skeleton.test.tsx +17 -0
- package/src/widgets-v2/range/skeleton.tsx +47 -0
- package/src/widgets-v2/range/style.ts +41 -0
- package/src/widgets-v2/range/types.ts +37 -0
- package/src/widgets-v2/scatterplot/download.test.ts +71 -0
- package/src/widgets-v2/scatterplot/download.ts +54 -0
- package/src/widgets-v2/scatterplot/index.ts +11 -0
- package/src/widgets-v2/scatterplot/options.test.ts +411 -0
- package/src/widgets-v2/scatterplot/options.ts +425 -0
- package/src/widgets-v2/scatterplot/skeleton.test.tsx +17 -0
- package/src/widgets-v2/scatterplot/skeleton.tsx +84 -0
- package/src/widgets-v2/scatterplot/transforms.test.ts +97 -0
- package/src/widgets-v2/scatterplot/transforms.ts +38 -0
- package/src/widgets-v2/scatterplot/types.ts +59 -0
- package/src/widgets-v2/selection-summary/labels.ts +11 -0
- package/src/widgets-v2/selection-summary/selection-summary.test.tsx +53 -0
- package/src/widgets-v2/selection-summary/selection-summary.tsx +62 -0
- package/src/widgets-v2/selection-summary/style.ts +23 -0
- package/src/widgets-v2/spread/download.test.ts +64 -0
- package/src/widgets-v2/spread/download.ts +59 -0
- package/src/widgets-v2/spread/index.ts +6 -0
- package/src/widgets-v2/spread/separator.tsx +11 -0
- package/src/widgets-v2/spread/skeleton.test.tsx +17 -0
- package/src/widgets-v2/spread/skeleton.tsx +38 -0
- package/src/widgets-v2/spread/spread-ui.test.tsx +108 -0
- package/src/widgets-v2/spread/spread-ui.tsx +52 -0
- package/src/widgets-v2/spread/spread.test.tsx +50 -0
- package/src/widgets-v2/spread/spread.tsx +31 -0
- package/src/widgets-v2/spread/types.ts +27 -0
- package/src/widgets-v2/state/labels.test.ts +33 -0
- package/src/widgets-v2/state/labels.ts +20 -0
- package/src/widgets-v2/state/style.ts +25 -0
- package/src/widgets-v2/state/widget-state.test.tsx +294 -0
- package/src/widgets-v2/state/widget-state.tsx +184 -0
- package/src/widgets-v2/stores/index.ts +49 -0
- package/src/widgets-v2/stores/pipeline-middleware.test.ts +187 -0
- package/src/widgets-v2/stores/pipeline-middleware.ts +91 -0
- package/src/widgets-v2/stores/transforms.test.ts +162 -0
- package/src/widgets-v2/stores/transforms.ts +70 -0
- package/src/widgets-v2/stores/types.ts +64 -0
- package/src/widgets-v2/stores/use-echart-instance.test.tsx +91 -0
- package/src/widgets-v2/stores/use-echart-instance.ts +29 -0
- package/src/widgets-v2/stores/use-transform-enabled.test.tsx +127 -0
- package/src/widgets-v2/stores/use-transform-enabled.ts +25 -0
- package/src/widgets-v2/stores/use-transform.test.tsx +262 -0
- package/src/widgets-v2/stores/use-transform.ts +158 -0
- package/src/widgets-v2/stores/widget-context.test.tsx +58 -0
- package/src/widgets-v2/stores/widget-context.ts +15 -0
- package/src/widgets-v2/stores/widget-store-registry.test.ts +292 -0
- package/src/widgets-v2/stores/widget-store-registry.ts +248 -0
- package/src/widgets-v2/subheader/style.ts +12 -0
- package/src/widgets-v2/subheader/subheader.test.tsx +30 -0
- package/src/widgets-v2/subheader/subheader.tsx +16 -0
- package/src/widgets-v2/table/download.test.ts +75 -0
- package/src/widgets-v2/table/download.ts +47 -0
- package/src/widgets-v2/table/helpers.test.ts +214 -0
- package/src/widgets-v2/table/helpers.ts +136 -0
- package/src/widgets-v2/table/index.ts +23 -0
- package/src/widgets-v2/table/labels.tsx +41 -0
- package/src/widgets-v2/table/skeleton.test.tsx +26 -0
- package/src/widgets-v2/table/skeleton.tsx +65 -0
- package/src/widgets-v2/table/style.ts +43 -0
- package/src/widgets-v2/table/table-ui.test.tsx +200 -0
- package/src/widgets-v2/table/table-ui.tsx +364 -0
- package/src/widgets-v2/table/table.test.tsx +119 -0
- package/src/widgets-v2/table/table.tsx +179 -0
- package/src/widgets-v2/table/types.ts +55 -0
- package/src/widgets-v2/test-utils.ts +107 -0
- package/src/widgets-v2/timeseries/download.test.ts +95 -0
- package/src/widgets-v2/timeseries/download.ts +86 -0
- package/src/widgets-v2/timeseries/index.ts +10 -0
- package/src/widgets-v2/timeseries/options.test.ts +394 -0
- package/src/widgets-v2/timeseries/options.ts +348 -0
- package/src/widgets-v2/timeseries/skeleton.test.tsx +13 -0
- package/src/widgets-v2/timeseries/skeleton.tsx +76 -0
- package/src/widgets-v2/timeseries/types.ts +65 -0
- package/src/widgets-v2/toolbox/labels.ts +9 -0
- package/src/widgets-v2/toolbox/style.ts +33 -0
- package/src/widgets-v2/toolbox/toolbox.test.tsx +200 -0
- package/src/widgets-v2/toolbox/toolbox.tsx +309 -0
- package/src/widgets-v2/types.ts +25 -0
- package/src/widgets-v2/utils/data-zoom-layout.ts +26 -0
- package/src/widgets-v2/utils/index.ts +3 -0
- package/src/widgets-v2/utils/merge-options.test.ts +52 -0
- package/src/widgets-v2/utils/merge-options.ts +50 -0
- package/src/widgets-v2/utils/resolve-theme-color.test.ts +43 -0
- package/src/widgets-v2/utils/resolve-theme-color.ts +34 -0
- package/src/widgets-v2/wrapper/index.ts +14 -0
- package/src/widgets-v2/wrapper/labels.ts +11 -0
- package/src/widgets-v2/wrapper/style.ts +134 -0
- package/src/widgets-v2/wrapper/widget-actions.test.tsx +52 -0
- package/src/widgets-v2/wrapper/widget-actions.tsx +43 -0
- package/src/widgets-v2/wrapper/widget-content.test.tsx +27 -0
- package/src/widgets-v2/wrapper/widget-content.tsx +29 -0
- package/src/widgets-v2/wrapper/widget-wrapper.test.tsx +159 -0
- package/src/widgets-v2/wrapper/widget-wrapper.tsx +178 -0
- package/dist/error-CEkRPccv.js +0 -39
- package/dist/error-CEkRPccv.js.map +0 -1
- package/dist/index-BnyeR7Qx.js +0 -6601
- package/dist/index-BnyeR7Qx.js.map +0 -1
- package/dist/no-data-hR3KcJ-_.js +0 -60
- package/dist/no-data-hR3KcJ-_.js.map +0 -1
- package/dist/note-t51drNe0.js +0 -124
- package/dist/note-t51drNe0.js.map +0 -1
- package/dist/options-D9wflre6.js +0 -49
- package/dist/options-D9wflre6.js.map +0 -1
- package/dist/row-DTCV0Ocm.js +0 -35
- package/dist/row-DTCV0Ocm.js.map +0 -1
- package/dist/series-CYNOu2Ju.js +0 -91
- package/dist/series-CYNOu2Ju.js.map +0 -1
- package/dist/styles-CAroD5Rc.js +0 -123
- package/dist/styles-CAroD5Rc.js.map +0 -1
- package/dist/types/hooks/use-debounce.d.ts +0 -19
- package/dist/types/widgets/category/components/index.d.ts +0 -10
- package/dist/types/widgets/index.d.ts +0 -9
- package/dist/types/widgets/table/hooks/index.d.ts +0 -6
- package/dist/use-widget-ref-P-2i0MJG.js +0 -19
- package/dist/use-widget-ref-P-2i0MJG.js.map +0 -1
- package/dist/utils-idmvq0Oa.js.map +0 -1
- package/dist/widget-store-CzDt8oSK.js +0 -163
- package/dist/widget-store-CzDt8oSK.js.map +0 -1
- package/dist/widgets.js +0 -13
- package/dist/widgets.js.map +0 -1
- package/src/hooks/use-debounce.ts +0 -55
- package/src/widgets/_shared/chart-config/option-builders.test.ts +0 -40
- package/src/widgets/category/components/index.ts +0 -14
- package/src/widgets/index.ts +0 -25
- package/src/widgets/table/hooks/index.ts +0 -7
- /package/dist/types/widgets/{_shared → utils}/chart-config/config-factory.d.ts +0 -0
- /package/dist/types/widgets/{_shared → utils}/chart-config/csv-modifiers.d.ts +0 -0
- /package/dist/types/widgets/{_shared → utils}/skeleton/index.d.ts +0 -0
- /package/dist/types/widgets/{_shared → utils}/skeleton/styles.d.ts +0 -0
- /package/dist/types/{widgets/_shared/chart-config/option-builders.test.d.ts → widgets-v2/actions/brush-toggle/transforms.test.d.ts} +0 -0
- /package/src/widgets/{_shared → utils}/chart-config/config-factory.ts +0 -0
- /package/src/widgets/{_shared → utils}/chart-config/csv-modifiers.ts +0 -0
- /package/src/widgets/{_shared → utils}/skeleton/index.ts +0 -0
- /package/src/widgets/{_shared → utils}/skeleton/styles.ts +0 -0
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { CategoryKey, CategorySize } from '../types';
|
|
2
|
+
export interface CategoryRowMultiProps {
|
|
3
|
+
/** Raw category key — what gets emitted to `onToggle`. */
|
|
4
|
+
name: CategoryKey;
|
|
5
|
+
/** Display label (post-`labelFormatter`). Falls back to `name`. */
|
|
6
|
+
displayName?: string | number;
|
|
7
|
+
/** One value per series. `0` is rendered as an empty bar (track only). */
|
|
8
|
+
values: readonly number[];
|
|
9
|
+
/** One color per series (palette + per-series overrides resolved upstream). */
|
|
10
|
+
colors: readonly string[];
|
|
11
|
+
/** Shared max across all series + rows (or `maxOverride`). */
|
|
12
|
+
maxValue: number;
|
|
13
|
+
formatter: (n: number) => string;
|
|
14
|
+
selected: boolean;
|
|
15
|
+
onToggle: (name: CategoryKey) => void;
|
|
16
|
+
/** Bar visual density. Forwarded to every {@link CategoryBar} in the row. */
|
|
17
|
+
size?: CategorySize;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Multi-series category row: label spans the top; bar+value pairs stack
|
|
21
|
+
* vertically below, one per series. Each bar uses the full row width
|
|
22
|
+
* track (no shared grid) for legibility at N>=2 series. Click anywhere
|
|
23
|
+
* in the row (label OR any bar/value) toggles selection by `name`.
|
|
24
|
+
*
|
|
25
|
+
* Visual selection / dim signal lives ENTIRELY in the bar colors
|
|
26
|
+
* (`colors` prop) — every series in a dimmed row receives
|
|
27
|
+
* `theme.palette.action.disabled`; selected / unselected-no-selection
|
|
28
|
+
* rows receive their real palette colors. Computed upstream by
|
|
29
|
+
* `CategoryUI`. The row itself has no bg tint, no opacity rule.
|
|
30
|
+
*/
|
|
31
|
+
export declare function CategoryRowMulti({ name, displayName, values, colors, maxValue, formatter, selected, onToggle, size, }: CategoryRowMultiProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export interface CategoryRowOtherProps {
|
|
2
|
+
hiddenCount: number;
|
|
3
|
+
/** Label for the overflow row. Defaults to `'Other'`. */
|
|
4
|
+
otherLabel?: string;
|
|
5
|
+
/** Count text with `{count}` placeholder. Defaults to `'{count} more'`. */
|
|
6
|
+
otherCountLabel?: string;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Static "Other (X more)" overflow summary row. Rendered after the last
|
|
10
|
+
* visible category row when `data.length > maxItems`. Non-interactive —
|
|
11
|
+
* no selection, no keyboard target.
|
|
12
|
+
*/
|
|
13
|
+
export declare function CategoryRowOther({ hiddenCount, otherLabel, otherCountLabel, }: CategoryRowOtherProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { CategoryKey, CategorySize } from '../types';
|
|
2
|
+
export interface CategoryRowSingleProps {
|
|
3
|
+
/** Raw category key — what gets emitted to `onToggle` regardless of formatter. */
|
|
4
|
+
name: CategoryKey;
|
|
5
|
+
/** Display label (post-`labelFormatter`). Falls back to `name` when omitted. */
|
|
6
|
+
displayName?: string | number;
|
|
7
|
+
value: number;
|
|
8
|
+
maxValue: number;
|
|
9
|
+
color: string;
|
|
10
|
+
formatter: (n: number) => string;
|
|
11
|
+
selected: boolean;
|
|
12
|
+
onToggle: (name: CategoryKey) => void;
|
|
13
|
+
/** Bar visual density. Forwarded to {@link CategoryBar}. */
|
|
14
|
+
size?: CategorySize;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Single-series category row: `[label] [bar] [value]` grid. Click /
|
|
18
|
+
* Enter / Space toggles `name` in/out of the selection set via
|
|
19
|
+
* `onToggle`. Selection key is always the raw `name` — `displayName` is
|
|
20
|
+
* presentation only.
|
|
21
|
+
*
|
|
22
|
+
* Visual selection / dim signal lives ENTIRELY in the bar color
|
|
23
|
+
* (`color` prop) — computed upstream by `CategoryUI` (real palette
|
|
24
|
+
* color when selected or no-selection; `theme.palette.action.disabled`
|
|
25
|
+
* when a selection exists and this row isn't in it). The row itself
|
|
26
|
+
* has no bg tint, no opacity rule.
|
|
27
|
+
*/
|
|
28
|
+
export declare function CategoryRowSingle({ name, displayName, value, maxValue, color, formatter, selected, onToggle, size, }: CategoryRowSingleProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { CategoryKey, CategorySize } from '../types';
|
|
2
|
+
export interface CategoryRowStackedProps {
|
|
3
|
+
/** Raw category key — what gets emitted to `onToggle`. */
|
|
4
|
+
name: CategoryKey;
|
|
5
|
+
/** Display label (post-`labelFormatter`). Falls back to `name`. */
|
|
6
|
+
displayName?: string | number;
|
|
7
|
+
/** One value per series. Zero values still appear in the breakdown row. */
|
|
8
|
+
values: readonly number[];
|
|
9
|
+
/** One color per series (palette + per-series overrides resolved upstream). */
|
|
10
|
+
colors: readonly string[];
|
|
11
|
+
/** Series names for the breakdown row. Missing entries fall back to `Series N`. */
|
|
12
|
+
seriesNames: readonly string[];
|
|
13
|
+
formatter: (n: number) => string;
|
|
14
|
+
selected: boolean;
|
|
15
|
+
onToggle: (name: CategoryKey) => void;
|
|
16
|
+
/** Bar visual density. Forwarded to the inner {@link CategoryBarStacked}. */
|
|
17
|
+
size?: CategorySize;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Stacked-mode category row: label + total share a header line; a single
|
|
21
|
+
* segmented bar sits below; an inline breakdown lists each series with its
|
|
22
|
+
* formatted value. Click anywhere in the row toggles selection by `name`.
|
|
23
|
+
*
|
|
24
|
+
* Per-row normalization: the stacked bar always fills 100% of the track,
|
|
25
|
+
* with each segment sized as `value_i / sum(values)`. This is intentionally
|
|
26
|
+
* different from `CategoryRowMulti` (which scales bars against the global
|
|
27
|
+
* `maxValue` for cross-row comparison) — in stacked mode the comparable
|
|
28
|
+
* axis is the proportion of each series within the row, not the row's
|
|
29
|
+
* total relative to other rows. The total numeric value is still shown in
|
|
30
|
+
* the header so the per-row magnitude isn't lost.
|
|
31
|
+
*
|
|
32
|
+
* Visual selection / dim signal lives entirely in the segment colors
|
|
33
|
+
* (`colors` prop) — every series in a dimmed row receives
|
|
34
|
+
* `theme.palette.action.disabled`. The bar visually collapses to a single
|
|
35
|
+
* grey shape when dimmed, but the breakdown text stays at full color so the
|
|
36
|
+
* per-series values remain legible.
|
|
37
|
+
*/
|
|
38
|
+
export declare function CategoryRowStacked({ name, displayName, values, colors, seriesNames, formatter, selected, onToggle, size, }: CategoryRowStackedProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { DownloadItem } from '../actions/download';
|
|
2
|
+
import { CategoryWidgetData } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Download menu items for the Category widget. Always includes a CSV item
|
|
5
|
+
* with `series, name, value` columns (one row per item). When
|
|
6
|
+
* `getCaptureEl` is supplied, prepends a PNG item that rasterises the
|
|
7
|
+
* captured element via `html2canvas`.
|
|
8
|
+
*/
|
|
9
|
+
export declare function createCategoryDownloadConfig(args: {
|
|
10
|
+
filename: string;
|
|
11
|
+
getData: () => CategoryWidgetData;
|
|
12
|
+
seriesNames?: readonly string[];
|
|
13
|
+
getCaptureEl?: () => HTMLElement | null;
|
|
14
|
+
pngPixelRatio?: number;
|
|
15
|
+
pngBackgroundColor?: string | null;
|
|
16
|
+
}): DownloadItem[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export { Category, type CategoryProps } from './category';
|
|
2
|
+
export { CategoryUI, type CategoryUIProps } from './category-ui';
|
|
3
|
+
export { CategorySkeleton, type CategorySkeletonProps } from './skeleton';
|
|
4
|
+
export { createCategoryDownloadConfig } from './download';
|
|
5
|
+
export { CategoryBar, type CategoryBarProps } from './components/category-bar';
|
|
6
|
+
export { CategoryRowSingle, type CategoryRowSingleProps, } from './components/category-row-single';
|
|
7
|
+
export { CategoryRowMulti, type CategoryRowMultiProps, } from './components/category-row-multi';
|
|
8
|
+
export { CategoryRowOther, type CategoryRowOtherProps, } from './components/category-row-other';
|
|
9
|
+
export { CategoryLegend, type CategoryLegendProps, } from './components/category-legend';
|
|
10
|
+
export type { CategoryDataItem, CategoryWidgetData, CategoryKey, CategorySeriesConfig, CategoryLabels, CategorySize, } from './types';
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { CategorySize } from './types';
|
|
2
|
+
export interface CategorySkeletonProps {
|
|
3
|
+
rows?: number;
|
|
4
|
+
/**
|
|
5
|
+
* Visual density. Mirrors the live widget's `size` prop so the loading
|
|
6
|
+
* shimmer's bar height matches what's about to render — no row jump
|
|
7
|
+
* on data settle.
|
|
8
|
+
*/
|
|
9
|
+
size?: CategorySize;
|
|
10
|
+
}
|
|
11
|
+
export declare function CategorySkeleton({ rows, size, }: CategorySkeletonProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import { SxProps, Theme } from '@mui/material';
|
|
2
|
+
import { CategorySize } from './types';
|
|
3
|
+
export declare const styles: {
|
|
4
|
+
root: {
|
|
5
|
+
display: string;
|
|
6
|
+
flexDirection: string;
|
|
7
|
+
position: string;
|
|
8
|
+
width: string;
|
|
9
|
+
};
|
|
10
|
+
list: {
|
|
11
|
+
display: string;
|
|
12
|
+
flexDirection: string;
|
|
13
|
+
gap: number;
|
|
14
|
+
py: number;
|
|
15
|
+
};
|
|
16
|
+
rowSingle: {
|
|
17
|
+
display: string;
|
|
18
|
+
flexDirection: string;
|
|
19
|
+
gap: number;
|
|
20
|
+
cursor: string;
|
|
21
|
+
userSelect: string;
|
|
22
|
+
transition: string;
|
|
23
|
+
'&:hover [data-bar-fill="true"]': {
|
|
24
|
+
filter: string;
|
|
25
|
+
};
|
|
26
|
+
'&:focus-visible': {
|
|
27
|
+
outline: string;
|
|
28
|
+
outlineColor: string;
|
|
29
|
+
outlineOffset: number;
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
rowHeader: {
|
|
33
|
+
display: string;
|
|
34
|
+
justifyContent: string;
|
|
35
|
+
alignItems: string;
|
|
36
|
+
gap: number;
|
|
37
|
+
};
|
|
38
|
+
rowMulti: {
|
|
39
|
+
display: string;
|
|
40
|
+
flexDirection: string;
|
|
41
|
+
gap: number;
|
|
42
|
+
cursor: string;
|
|
43
|
+
userSelect: string;
|
|
44
|
+
transition: string;
|
|
45
|
+
'&:hover [data-bar-fill="true"]': {
|
|
46
|
+
filter: string;
|
|
47
|
+
};
|
|
48
|
+
'&:focus-visible': {
|
|
49
|
+
outline: string;
|
|
50
|
+
outlineColor: string;
|
|
51
|
+
outlineOffset: number;
|
|
52
|
+
};
|
|
53
|
+
};
|
|
54
|
+
name: {
|
|
55
|
+
overflow: string;
|
|
56
|
+
whiteSpace: string;
|
|
57
|
+
textOverflow: string;
|
|
58
|
+
color: string;
|
|
59
|
+
fontWeight: string;
|
|
60
|
+
};
|
|
61
|
+
multiName: {
|
|
62
|
+
overflow: string;
|
|
63
|
+
whiteSpace: string;
|
|
64
|
+
textOverflow: string;
|
|
65
|
+
color: string;
|
|
66
|
+
fontWeight: string;
|
|
67
|
+
};
|
|
68
|
+
value: {
|
|
69
|
+
color: string;
|
|
70
|
+
fontVariantNumeric: string;
|
|
71
|
+
minWidth: number;
|
|
72
|
+
textAlign: string;
|
|
73
|
+
};
|
|
74
|
+
bar: Record<CategorySize, SxProps<Theme>>;
|
|
75
|
+
barFill: Record<CategorySize, SxProps<Theme>>;
|
|
76
|
+
stackedSegment: Record<CategorySize, SxProps<Theme>>;
|
|
77
|
+
multiBarRow: {
|
|
78
|
+
display: string;
|
|
79
|
+
alignItems: string;
|
|
80
|
+
gap: number;
|
|
81
|
+
};
|
|
82
|
+
multiBarContainer: {
|
|
83
|
+
flex: number;
|
|
84
|
+
};
|
|
85
|
+
rowStacked: {
|
|
86
|
+
display: string;
|
|
87
|
+
flexDirection: string;
|
|
88
|
+
gap: number;
|
|
89
|
+
cursor: string;
|
|
90
|
+
userSelect: string;
|
|
91
|
+
transition: string;
|
|
92
|
+
'&:hover [data-bar-fill="true"]': {
|
|
93
|
+
filter: string;
|
|
94
|
+
};
|
|
95
|
+
'&:focus-visible': {
|
|
96
|
+
outline: string;
|
|
97
|
+
outlineColor: string;
|
|
98
|
+
outlineOffset: number;
|
|
99
|
+
};
|
|
100
|
+
};
|
|
101
|
+
stackedHeader: {
|
|
102
|
+
display: string;
|
|
103
|
+
justifyContent: string;
|
|
104
|
+
alignItems: string;
|
|
105
|
+
gap: number;
|
|
106
|
+
};
|
|
107
|
+
stackedTotal: {
|
|
108
|
+
color: string;
|
|
109
|
+
fontWeight: string;
|
|
110
|
+
fontVariantNumeric: string;
|
|
111
|
+
minWidth: number;
|
|
112
|
+
textAlign: string;
|
|
113
|
+
};
|
|
114
|
+
stackedBreakdown: {
|
|
115
|
+
display: string;
|
|
116
|
+
flexWrap: string;
|
|
117
|
+
columnGap: number;
|
|
118
|
+
rowGap: number;
|
|
119
|
+
};
|
|
120
|
+
stackedBreakdownItem: {
|
|
121
|
+
color: string;
|
|
122
|
+
fontVariantNumeric: string;
|
|
123
|
+
};
|
|
124
|
+
legend: {
|
|
125
|
+
display: string;
|
|
126
|
+
alignItems: string;
|
|
127
|
+
gap: number;
|
|
128
|
+
flexWrap: string;
|
|
129
|
+
pt: number;
|
|
130
|
+
mt: number;
|
|
131
|
+
position: string;
|
|
132
|
+
bottom: number;
|
|
133
|
+
bgcolor: string;
|
|
134
|
+
borderTop: (theme: Theme) => string;
|
|
135
|
+
};
|
|
136
|
+
legendItem: {
|
|
137
|
+
display: string;
|
|
138
|
+
alignItems: string;
|
|
139
|
+
gap: number;
|
|
140
|
+
};
|
|
141
|
+
legendDot: {
|
|
142
|
+
width: number;
|
|
143
|
+
height: number;
|
|
144
|
+
borderRadius: string;
|
|
145
|
+
};
|
|
146
|
+
legendLabel: {
|
|
147
|
+
color: string;
|
|
148
|
+
textTransform: string;
|
|
149
|
+
fontWeight: string;
|
|
150
|
+
};
|
|
151
|
+
otherRow: {
|
|
152
|
+
display: string;
|
|
153
|
+
justifyContent: string;
|
|
154
|
+
alignItems: string;
|
|
155
|
+
py: number;
|
|
156
|
+
px: number;
|
|
157
|
+
};
|
|
158
|
+
otherLabel: {
|
|
159
|
+
fontStyle: string;
|
|
160
|
+
color: string;
|
|
161
|
+
fontWeight: string;
|
|
162
|
+
};
|
|
163
|
+
otherCount: {
|
|
164
|
+
color: string;
|
|
165
|
+
};
|
|
166
|
+
};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { WidgetSeries } from '../types';
|
|
2
|
+
/** A single row in a Category widget. `name` is the category key. */
|
|
3
|
+
export interface CategoryDataItem {
|
|
4
|
+
name: string | number;
|
|
5
|
+
value: number;
|
|
6
|
+
/** Optional per-row color override (wins over series + palette). */
|
|
7
|
+
color?: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Category widget data — array of series, each a flat list of `{name, value}`.
|
|
11
|
+
*
|
|
12
|
+
* Single-series (`data.length === 1`) renders one bar per row.
|
|
13
|
+
* Multi-series (`data.length > 1`) groups items by `name` across series and
|
|
14
|
+
* renders N vertically-stacked bars per row, with a sticky legend at the
|
|
15
|
+
* bottom when `series` metadata is supplied.
|
|
16
|
+
*/
|
|
17
|
+
export type CategoryWidgetData = readonly (readonly CategoryDataItem[])[];
|
|
18
|
+
/**
|
|
19
|
+
* The keyspace of selectable items. Per the destination-owned selection
|
|
20
|
+
* principle, the consumer keeps this in their own store.
|
|
21
|
+
*/
|
|
22
|
+
export type CategoryKey = string | number;
|
|
23
|
+
/**
|
|
24
|
+
* Per-series metadata. Supplied to enable the legend and override the
|
|
25
|
+
* auto-assigned palette color for a given series index. Length should
|
|
26
|
+
* mirror `data.length` for a full legend; shorter/longer arrays degrade
|
|
27
|
+
* gracefully (extra entries ignored; missing entries get palette
|
|
28
|
+
* defaults and are absent from the legend).
|
|
29
|
+
*/
|
|
30
|
+
/**
|
|
31
|
+
* Per-series metadata. Type alias of the cross-widget
|
|
32
|
+
* {@link WidgetSeries} shape (`{ name, color? }`) so Category, Formula,
|
|
33
|
+
* Spread, and the echart-based widgets all consume the same input
|
|
34
|
+
* shape. Kept as a named export for backwards compatibility.
|
|
35
|
+
*/
|
|
36
|
+
export type CategorySeriesConfig = WidgetSeries;
|
|
37
|
+
/**
|
|
38
|
+
* Labels for the "Other" overflow row (rendered when `data.length`
|
|
39
|
+
* exceeds `maxItems`). `{count}` in `otherCount` is replaced with the
|
|
40
|
+
* number of hidden categories.
|
|
41
|
+
*/
|
|
42
|
+
export interface CategoryLabels {
|
|
43
|
+
other?: string;
|
|
44
|
+
otherCount?: string;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Visual density of the bar primitive. `'small'` (default) keeps the
|
|
48
|
+
* original 4px-tall, fully-rounded track. `'medium'` renders a 12px-tall
|
|
49
|
+
* track with a 2px corner radius (squarer affordance for denser layouts).
|
|
50
|
+
* Only the bar track + fill are affected — row layout, label typography,
|
|
51
|
+
* value column, legend, and hover affordance are unchanged.
|
|
52
|
+
*/
|
|
53
|
+
export type CategorySize = 'small' | 'medium';
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { SxProps, Theme } from '@mui/material';
|
|
2
|
+
import * as echarts from 'echarts';
|
|
3
|
+
export declare const DEFAULT_INIT_OPTS: {
|
|
4
|
+
renderer: "svg";
|
|
5
|
+
height: number;
|
|
6
|
+
};
|
|
7
|
+
export type EchartsEventHandler = (event: unknown) => void;
|
|
8
|
+
export interface EchartUIProps {
|
|
9
|
+
option: echarts.EChartsOption;
|
|
10
|
+
/**
|
|
11
|
+
* Keys to merge as arrays (replace by index) instead of by id. The middleware
|
|
12
|
+
* memoizes this content-stably, so identical sets don't re-trigger setOption.
|
|
13
|
+
*/
|
|
14
|
+
replaceMerge?: readonly string[];
|
|
15
|
+
/**
|
|
16
|
+
* Opaque ECharts event passthrough — handlers fire untransformed.
|
|
17
|
+
*
|
|
18
|
+
* **Must be referentially stable** (memoize it with `useMemo` /
|
|
19
|
+
* `useCallback`, or hoist to module scope). The binding effect depends on
|
|
20
|
+
* the `onEvents` object identity; an inline `{ click: handler }` literal
|
|
21
|
+
* recreates the object on every render and causes every listener to be
|
|
22
|
+
* detached and re-attached each commit.
|
|
23
|
+
*/
|
|
24
|
+
onEvents?: Record<string, EchartsEventHandler>;
|
|
25
|
+
/**
|
|
26
|
+
* Init options forwarded to echarts.init. Captured at mount only — to change
|
|
27
|
+
* `renderer` or `height` after mount, unmount and remount the chart.
|
|
28
|
+
* Defaults: `{ renderer: 'svg', height: 304 }`.
|
|
29
|
+
*/
|
|
30
|
+
init?: echarts.EChartsInitOpts;
|
|
31
|
+
/**
|
|
32
|
+
* Optional callback fired once after the ECharts instance is created
|
|
33
|
+
* (`onInstance(chart)`) and once when it's about to be disposed
|
|
34
|
+
* (`onInstance(null)`). Used by `Widget.Echart` to publish the live
|
|
35
|
+
* instance to the per-widget registry so other actions (e.g.
|
|
36
|
+
* `ZoomToggle`'s disable handler) can reach it without DOM lookups.
|
|
37
|
+
* No need to memoize — the bridge wraps it in `useEffectEvent` so an
|
|
38
|
+
* unstable reference does not re-init the chart.
|
|
39
|
+
*/
|
|
40
|
+
onInstance?: (chart: echarts.ECharts | null) => void;
|
|
41
|
+
className?: string;
|
|
42
|
+
sx?: SxProps<Theme>;
|
|
43
|
+
}
|
|
44
|
+
export declare function EchartUI({ option, replaceMerge, onEvents, init, onInstance, className, sx, }: EchartUIProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { EchartsEventHandler } from './echart-ui';
|
|
2
|
+
import type * as echarts from 'echarts';
|
|
3
|
+
/**
|
|
4
|
+
* Reactive context passed to every {@link OptionFactory} call so the
|
|
5
|
+
* factory can rebuild render-time pieces (axis label / tooltip formatters)
|
|
6
|
+
* from the live store. Drives RelativeData / consumer-formatter changes
|
|
7
|
+
* through to the chart without rebuilding the structural option.
|
|
8
|
+
*/
|
|
9
|
+
export interface OptionFactoryContext {
|
|
10
|
+
formatter?: (value: number) => string;
|
|
11
|
+
labelFormatter?: (value: string | number) => string | number;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* The per-widget option factory — a single callable that owns BOTH phases
|
|
15
|
+
* of option construction:
|
|
16
|
+
*
|
|
17
|
+
* - **Structural phase** — when `option == null`, return the theme-aware
|
|
18
|
+
* structural option (tooltip / legend / color palette / series
|
|
19
|
+
* template, optionally merged with a consumer-supplied `optionsOverride`).
|
|
20
|
+
* No data is read. `<Widget.Echart>` calls the factory with
|
|
21
|
+
* `(undefined, undefined)` synchronously during render to derive the
|
|
22
|
+
* structural base; `configTransforms` (Stack/Zoom/Brush) then mutate it
|
|
23
|
+
* in the same render pass.
|
|
24
|
+
* - **Merge phase** — when `option` is defined, fuse `data` into the
|
|
25
|
+
* post-configTransforms option at fusion time. `<Widget.Echart>` calls
|
|
26
|
+
* the factory with `(transformed, data, ctx)` on every render.
|
|
27
|
+
*
|
|
28
|
+
* The two phases share a closure (the factory creator captures `theme`,
|
|
29
|
+
* `formatter`, `labelFormatter`, `seriesNames`, `selection`, `optionsOverride`,
|
|
30
|
+
* …), so structural and merge agree on the same widget configuration.
|
|
31
|
+
*
|
|
32
|
+
* The third arg `ctx` carries the **live** store-side formatters at the
|
|
33
|
+
* call site — distinct from the closure-time formatters because actions
|
|
34
|
+
* like RelativeData can install a percent formatter on the store after
|
|
35
|
+
* the factory was constructed. The merge phase reads from `ctx`; the
|
|
36
|
+
* structural phase typically uses the closure-time values.
|
|
37
|
+
*/
|
|
38
|
+
export type OptionFactory = (option: echarts.EChartsOption | undefined, data: unknown, ctx?: OptionFactoryContext) => echarts.EChartsOption;
|
|
39
|
+
export interface EchartProps {
|
|
40
|
+
/**
|
|
41
|
+
* The per-widget {@link OptionFactory}. Required — `<Widget.Echart>`
|
|
42
|
+
* derives the structural option from it (so configTransforms have a base
|
|
43
|
+
* to mutate) and fuses `state.data` into the post-pipeline option at
|
|
44
|
+
* render time. Wrap the factory creator in `useMemo` so its identity is
|
|
45
|
+
* stable across renders.
|
|
46
|
+
*/
|
|
47
|
+
optionFactory: OptionFactory;
|
|
48
|
+
onEvents?: Record<string, EchartsEventHandler>;
|
|
49
|
+
init?: echarts.EChartsInitOpts;
|
|
50
|
+
className?: string;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Stateful Echart bridge — owns the entire ECharts coupling. The whole
|
|
54
|
+
* option pipeline lives here, not in the store:
|
|
55
|
+
*
|
|
56
|
+
* 1. **Structural** — `optionFactory(undefined, undefined)` produces the
|
|
57
|
+
* theme-aware base. Memoized on the factory identity, so the consumer's
|
|
58
|
+
* `useMemo` ID gates the rebuild.
|
|
59
|
+
* 2. **Transformed** — `applyTransforms(structural, configTransforms)`
|
|
60
|
+
* applies any registered configTransforms (Stack/Zoom/Brush) over the
|
|
61
|
+
* structural base. Memoized on `[structural, configTransforms]`.
|
|
62
|
+
* 3. **`replaceMerge`** — derived from the enabled configTransforms'
|
|
63
|
+
* `replaceMergeKeys`, deduped and sorted, seeded with
|
|
64
|
+
* {@link DEFAULT_REPLACE_MERGE}. Memoized on `[configTransforms]` so
|
|
65
|
+
* ECharts sees a stable array reference across non-transform changes.
|
|
66
|
+
* 4. **Merge** — `optionFactory(transformed, data, ctx)` fuses post-
|
|
67
|
+
* pipeline data into the option. Reactive `ctx` carries the live store
|
|
68
|
+
* formatters so RelativeData's percent formatter flows through without
|
|
69
|
+
* a structural rebuild.
|
|
70
|
+
*
|
|
71
|
+
* The `<Widget.Provider>` doesn't know about the factory at all: it stays
|
|
72
|
+
* a renderer-agnostic shell. The `ProviderProps` surface has no ECharts
|
|
73
|
+
* coupling, so non-Echart widgets don't transitively import the type.
|
|
74
|
+
*/
|
|
75
|
+
export declare function Echart({ optionFactory, onEvents, init, className, }: EchartProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { EchartUI, DEFAULT_INIT_OPTS, type EchartUIProps, type EchartsEventHandler, } from './echart-ui';
|
|
2
|
+
export { Echart, type EchartProps, type OptionFactory, type OptionFactoryContext, } from './echart';
|
|
3
|
+
export { useChartSelection, type SelectionKey, type UseChartSelectionOptions, type ChartSelectionWiring, } from './use-chart-selection';
|
|
4
|
+
export { observeResize, __resetSharedResizeObserver, } from './shared-resize-observer';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { CallbackDataParams } from 'echarts/types/dist/shared';
|
|
2
|
+
import { EchartsEventHandler } from './echart-ui';
|
|
3
|
+
export type SelectionKey = string | number;
|
|
4
|
+
export interface UseChartSelectionOptions<K extends SelectionKey> {
|
|
5
|
+
/** Controlled selection. `undefined` is treated the same as `[]`. */
|
|
6
|
+
selection?: readonly K[];
|
|
7
|
+
/** Receives the next selection. When omitted the wiring is a no-op. */
|
|
8
|
+
onSelectionChange?: (next: readonly K[]) => void;
|
|
9
|
+
/**
|
|
10
|
+
* Pull a selection key out of an ECharts `click` event. Return `null` to
|
|
11
|
+
* skip (e.g. a click on empty plot area). For Bar/Pie/Timeseries this is
|
|
12
|
+
* usually `(p) => p.name`; for Histogram/Scatterplot it's the dataIndex.
|
|
13
|
+
*/
|
|
14
|
+
keyFromClick: (params: CallbackDataParams) => K | null;
|
|
15
|
+
/**
|
|
16
|
+
* Map a `brushSelected` payload's `selected[*]` entries (each carrying a
|
|
17
|
+
* `seriesIndex` + `dataIndex[]`) into the full set of selection keys for
|
|
18
|
+
* the brushed area. Called once per brush event.
|
|
19
|
+
*/
|
|
20
|
+
keysFromBrush: (selected: readonly {
|
|
21
|
+
seriesIndex: number;
|
|
22
|
+
dataIndex: number[];
|
|
23
|
+
}[]) => K[];
|
|
24
|
+
}
|
|
25
|
+
export interface ChartSelectionWiring<K extends SelectionKey> {
|
|
26
|
+
/**
|
|
27
|
+
* Pass straight to `<Widget.Echart onEvents={…}>`. Wires `click` and
|
|
28
|
+
* `brushSelected` so the user's interactions reach `onSelectionChange`.
|
|
29
|
+
*/
|
|
30
|
+
onEvents: Record<string, EchartsEventHandler>;
|
|
31
|
+
/**
|
|
32
|
+
* The current selection — `null` when the consumer didn't pass one or it's
|
|
33
|
+
* empty. Mergers should treat `null` as "no dimming" and a non-null array
|
|
34
|
+
* as "render only these as fully opaque, dim the rest".
|
|
35
|
+
*/
|
|
36
|
+
selection: readonly K[] | null;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Translate ECharts' click + brush events into a consumer-owned selection
|
|
40
|
+
* with the expected dashboard semantics:
|
|
41
|
+
*
|
|
42
|
+
* - **Click toggles** — clicking an item adds it to the selection if
|
|
43
|
+
* absent, removes it if present.
|
|
44
|
+
* - **Brush replaces** — finishing a brush stroke overwrites the selection
|
|
45
|
+
* with whatever the brush covered (drag-to-empty clears).
|
|
46
|
+
*
|
|
47
|
+
* Wire the returned `onEvents` into `<Widget.Echart>` and feed
|
|
48
|
+
* `wiring.selection` to the widget's option factory so the merger can dim
|
|
49
|
+
* non-selected rows at fusion time.
|
|
50
|
+
*/
|
|
51
|
+
export declare function useChartSelection<K extends SelectionKey>({ selection, onSelectionChange, keyFromClick, keysFromBrush, }: UseChartSelectionOptions<K>): ChartSelectionWiring<K>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { ChipProps } from '@mui/material';
|
|
2
|
+
import { DeltaSeverity } from './types';
|
|
3
|
+
export interface DeltaProps {
|
|
4
|
+
/** Numeric magnitude. Used for the default percent label and severity inference. */
|
|
5
|
+
value: number;
|
|
6
|
+
/** Pre-formatted label override; skips the default percent formatter. */
|
|
7
|
+
label?: string;
|
|
8
|
+
/**
|
|
9
|
+
* Visual treatment. When omitted it's derived from the sign of `value`:
|
|
10
|
+
* `>0 → 'positive'`, `<0 → 'negative'`, `=0 → 'neutral'`.
|
|
11
|
+
*/
|
|
12
|
+
severity?: DeltaSeverity;
|
|
13
|
+
/** Override the default `Intl.NumberFormat({style:'percent'})` formatter. */
|
|
14
|
+
format?: (value: number) => string;
|
|
15
|
+
ChipProps?: ChipProps;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Comparative delta rendered as a small filled chip. Colour is driven by
|
|
19
|
+
* `severity` (or the sign of `value`); content is `label`, the result of
|
|
20
|
+
* `format(value)`, or the default percent format.
|
|
21
|
+
*/
|
|
22
|
+
export declare function Delta({ value, label, severity, format, ChipProps: chipProps, }: DeltaProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { DownloadItem } from '../actions/download';
|
|
2
|
+
import { FormulaWidgetData } from './types';
|
|
3
|
+
export interface FormulaDownloadConfigArgs {
|
|
4
|
+
filename: string;
|
|
5
|
+
getData: () => FormulaWidgetData;
|
|
6
|
+
/**
|
|
7
|
+
* Optional getter for the widget's capture element (registered by
|
|
8
|
+
* `Widget.State`). When provided, a PNG item is prepended.
|
|
9
|
+
*/
|
|
10
|
+
getCaptureEl?: () => HTMLElement | null;
|
|
11
|
+
pngPixelRatio?: number;
|
|
12
|
+
pngBackgroundColor?: string | null;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Builds download items for the Formula widget. Always includes a CSV item
|
|
16
|
+
* with one row per KPI (`prefix`, `value`, `suffix`, `note`, `delta`).
|
|
17
|
+
* When `getCaptureEl` is supplied, prepends a PNG item that rasterises the
|
|
18
|
+
* captured element via `html2canvas`.
|
|
19
|
+
*/
|
|
20
|
+
export declare function createFormulaDownloadConfig(args: FormulaDownloadConfigArgs): DownloadItem[];
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Ref } from 'react';
|
|
2
|
+
import { FormulaDataItem } from './types';
|
|
3
|
+
export interface FormulaUIProps {
|
|
4
|
+
items: readonly FormulaDataItem[];
|
|
5
|
+
/** Number formatter — applied to each item's `value`. */
|
|
6
|
+
formatter?: (value: number) => string;
|
|
7
|
+
/** Forwarded to the root `<Box>` so consumers can capture the DOM (PNG export). */
|
|
8
|
+
ref?: Ref<HTMLDivElement>;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Pure presentational component for the Formula widget. Each item renders as
|
|
12
|
+
* a row containing (in order): optional `Series` avatar, a body with
|
|
13
|
+
* `[prefix] value [suffix]` plus optional `Note`, and an optional `Delta`
|
|
14
|
+
* chip pushed to the right edge.
|
|
15
|
+
*
|
|
16
|
+
* For fully custom layouts, compose {@link Series}, {@link Prefix},
|
|
17
|
+
* {@link Value}, {@link Suffix}, {@link Note}, and {@link Delta} directly
|
|
18
|
+
* instead of passing `items`.
|
|
19
|
+
*/
|
|
20
|
+
export declare function FormulaUI({ items, formatter, ref }: FormulaUIProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Stateful Formula bridge — reads `data` (post-pipeline) and `formatter` from
|
|
3
|
+
* the per-widget store and forwards them to the pure {@link FormulaUI}. Sits
|
|
4
|
+
* inside `<Widget.Provider>`. Demonstrates that the composition shell
|
|
5
|
+
* (Provider, Wrapper, State) doesn't care whether the rendered child is
|
|
6
|
+
* ECharts (Bar) or a custom DOM tree (Formula).
|
|
7
|
+
*/
|
|
8
|
+
export declare function Formula(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export { Formula } from './formula';
|
|
2
|
+
export { FormulaUI, type FormulaUIProps } from './formula-ui';
|
|
3
|
+
export { Prefix, type PrefixProps } from './prefix';
|
|
4
|
+
export { Suffix, type SuffixProps } from './suffix';
|
|
5
|
+
export { Value, type ValueProps } from './value';
|
|
6
|
+
export { Series, type SeriesProps } from './series';
|
|
7
|
+
export { Note, type NoteProps } from './note';
|
|
8
|
+
export { Delta, type DeltaProps } from './delta';
|
|
9
|
+
export { FormulaSkeleton, type FormulaSkeletonProps } from './skeleton';
|
|
10
|
+
export { createFormulaDownloadConfig } from './download';
|
|
11
|
+
export type { FormulaDataItem, FormulaWidgetData, FormulaSeries, FormulaDelta, DeltaSeverity, } from './types';
|