@carto/ps-react-ui 5.3.0 → 6.1.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/dist/actions-BWlS5tpP.js +1150 -0
- package/dist/actions-BWlS5tpP.js.map +1 -0
- package/dist/category-alzjKzvQ.js +839 -0
- package/dist/category-alzjKzvQ.js.map +1 -0
- package/dist/chat.js +548 -526
- package/dist/chat.js.map +1 -1
- package/dist/{components-FED-ArwH.js → components-CTUpdQuj.js} +1526 -1782
- package/dist/components-CTUpdQuj.js.map +1 -0
- package/dist/components.js +4 -5
- package/dist/{download-DGgFOaXj.js → download-B4sykOFm.js} +33 -23
- package/dist/download-B4sykOFm.js.map +1 -0
- package/dist/{echart-CwzbPElc.js → echart-CV8F50gn.js} +9 -9
- package/dist/echart-CV8F50gn.js.map +1 -0
- package/dist/formula-DJS-JLpk.js +276 -0
- package/dist/formula-DJS-JLpk.js.map +1 -0
- package/dist/legend.js +263 -258
- package/dist/legend.js.map +1 -1
- package/dist/{markdown-oo9mnJun.js → markdown-Bn2nKCbn.js} +13 -19
- package/dist/markdown-Bn2nKCbn.js.map +1 -0
- package/dist/{markdown-content-BWUqwx9F.js → markdown-content-kYNLOX0T.js} +2 -2
- package/dist/markdown-content-kYNLOX0T.js.map +1 -0
- package/dist/{chart-config-B_fdIcD3.js → option-builders-DQivvvbb.js} +10 -56
- package/dist/option-builders-DQivvvbb.js.map +1 -0
- package/dist/{range-BCMAl5xf.js → range-BpU2zBmq.js} +8 -8
- package/dist/range-BpU2zBmq.js.map +1 -0
- package/dist/smart-tooltip-Dc_rHhyI.js +51 -0
- package/dist/smart-tooltip-Dc_rHhyI.js.map +1 -0
- package/dist/{spread-CgCTKPQD.js → spread-CQwFIwuz.js} +12 -18
- package/dist/spread-CQwFIwuz.js.map +1 -0
- package/dist/{stores-tiFePP0A.js → stores-DcBOZlU3.js} +40 -34
- package/dist/stores-DcBOZlU3.js.map +1 -0
- package/dist/stores-mad-9yFn.js.map +1 -1
- package/dist/styles-BCEBm7xh.js +146 -0
- package/dist/styles-BCEBm7xh.js.map +1 -0
- package/dist/{table-lb5momun.js → table-DEdW_fDj.js} +17 -23
- package/dist/table-DEdW_fDj.js.map +1 -0
- package/dist/types/chat/bubbles/chat-suggestion-button.d.ts +1 -1
- package/dist/types/chat/types.d.ts +5 -2
- package/dist/types/components/index.d.ts +1 -3
- package/dist/types/components/lasso-tool/geometry-toolbar.d.ts +1 -1
- package/dist/types/components/lasso-tool/toolbar/context.d.ts +1 -1
- package/dist/types/components/types.d.ts +15 -0
- package/dist/types/legend/components/legend-actions/legend-actions.d.ts +2 -2
- package/dist/types/legend/components/legend-swatch/legend-swatch.d.ts +2 -1
- package/dist/types/legend/index.d.ts +1 -1
- package/dist/types/legend/provider/legend-provider.d.ts +2 -2
- package/dist/types/migration/v4/classes.d.ts +16 -0
- package/dist/types/migration/v4/icons.d.ts +31 -0
- package/dist/types/migration/v4/index.d.ts +17 -0
- package/dist/types/migration/v4/rules.d.ts +42 -0
- package/dist/types/migration/v4/transform.d.ts +4 -0
- package/dist/types/migration/v4/transforms/helpers.d.ts +97 -0
- package/dist/types/migration/v4/transforms/meridian-5.d.ts +22 -0
- package/dist/types/migration/v4/transforms/ps-react-ui.d.ts +20 -0
- package/dist/types/migration/v4/transforms/v5-v6.d.ts +27 -0
- package/dist/types/migration/v4/transforms/v6-v7.d.ts +54 -0
- package/dist/types/migration/v4/transforms/v7-v9-dom.d.ts +63 -0
- package/dist/types/migration/v4/transforms/v7-v9-props.d.ts +64 -0
- package/dist/types/migration/v4/widgets-v1.d.ts +12 -0
- package/dist/types/widgets/actions/brush-toggle/brush-toggle.d.ts +51 -24
- package/dist/types/widgets/actions/brush-toggle/style.d.ts +7 -16
- package/dist/types/widgets/actions/change-column/change-column-icon.d.ts +2 -1
- package/dist/types/widgets/actions/change-column/change-column.d.ts +26 -17
- package/dist/types/widgets/actions/change-column/sortable-column-item.d.ts +10 -5
- package/dist/types/widgets/actions/change-column/types.d.ts +9 -18
- package/dist/types/widgets/actions/download/download.d.ts +18 -13
- package/dist/types/widgets/actions/download/exports.d.ts +33 -17
- package/dist/types/{widgets-v2 → widgets}/actions/download/index.d.ts +1 -0
- package/dist/types/{widgets-v2 → widgets}/actions/download/png-item.d.ts +1 -1
- package/dist/types/widgets/actions/download/types.d.ts +41 -16
- package/dist/types/widgets/actions/download/widget-download.d.ts +26 -0
- package/dist/types/widgets/actions/fullscreen/fullscreen.d.ts +80 -10
- package/dist/types/widgets/actions/fullscreen/types.d.ts +13 -20
- package/dist/types/widgets/actions/index.d.ts +10 -20
- package/dist/types/widgets/actions/lock-selection/lock-selection.d.ts +54 -16
- package/dist/types/widgets/actions/relative-data/relative-data.d.ts +36 -21
- package/dist/types/{widgets-v2 → widgets}/actions/relative-data/transforms.d.ts +2 -2
- package/dist/types/widgets/actions/searcher/searcher-toggle.d.ts +24 -16
- package/dist/types/widgets/actions/searcher/searcher.d.ts +9 -19
- package/dist/types/widgets/actions/stack-toggle/stack-toggle.d.ts +10 -17
- package/dist/types/widgets/actions/zoom-toggle/style.d.ts +7 -8
- package/dist/types/widgets/actions/zoom-toggle/zoom-toggle.d.ts +31 -22
- package/dist/types/widgets/bar/download.d.ts +10 -0
- package/dist/types/widgets/bar/index.d.ts +3 -2
- package/dist/types/widgets/bar/skeleton.d.ts +5 -0
- package/dist/types/widgets/bar/types.d.ts +46 -9
- package/dist/types/widgets/category/category-ui.d.ts +94 -3
- package/dist/types/{widgets-v2 → widgets}/category/components/category-bar-stacked.d.ts +2 -1
- package/dist/types/widgets/category/components/category-bar.d.ts +18 -4
- package/dist/types/widgets/category/components/category-legend.d.ts +30 -4
- package/dist/types/widgets/category/components/category-row-multi.d.ts +27 -10
- package/dist/types/widgets/category/components/category-row-other.d.ts +19 -2
- package/dist/types/widgets/category/components/category-row-single.d.ts +23 -9
- package/dist/types/{widgets-v2 → widgets}/category/components/category-row-stacked.d.ts +2 -1
- package/dist/types/widgets/category/download.d.ts +11 -0
- package/dist/types/widgets/category/helpers.d.ts +10 -0
- package/dist/types/widgets/category/index.d.ts +10 -14
- package/dist/types/widgets/category/skeleton.d.ts +11 -1
- package/dist/types/widgets/category/style.d.ts +155 -83
- package/dist/types/widgets/category/types.d.ts +49 -29
- package/dist/types/widgets/echart/echart-ui.d.ts +44 -9
- package/dist/types/widgets/echart/echart.d.ts +80 -5
- package/dist/types/widgets/echart/index.d.ts +4 -5
- package/dist/types/widgets/echart/shared-resize-observer.d.ts +2 -9
- package/dist/types/widgets/formula/download.d.ts +10 -0
- package/dist/types/widgets/formula/formula-ui.d.ts +18 -3
- package/dist/types/widgets/formula/index.d.ts +11 -11
- package/dist/types/{widgets-v2 → widgets}/formula/series.d.ts +2 -1
- package/dist/types/widgets/formula/skeleton.d.ts +4 -1
- package/dist/types/widgets/formula/style.d.ts +20 -12
- package/dist/types/widgets/formula/types.d.ts +41 -39
- package/dist/types/{widgets-v2 → widgets}/formula/value.d.ts +2 -1
- package/dist/types/widgets/histogram/download.d.ts +12 -0
- package/dist/types/widgets/histogram/index.d.ts +5 -4
- package/dist/types/widgets/histogram/skeleton.d.ts +9 -1
- package/dist/types/widgets/histogram/types.d.ts +60 -12
- package/dist/types/{widgets-v2 → widgets}/index.d.ts +2 -2
- package/dist/types/widgets/markdown/download.d.ts +10 -0
- package/dist/types/widgets/markdown/index.d.ts +5 -4
- package/dist/types/widgets/markdown/markdown-ui.d.ts +10 -7
- package/dist/types/widgets/markdown/markdown.d.ts +4 -3
- package/dist/types/widgets/markdown/skeleton.d.ts +4 -1
- package/dist/types/widgets/markdown/style.d.ts +61 -2
- package/dist/types/widgets/markdown/types.d.ts +2 -16
- package/dist/types/widgets/note/style.d.ts +14 -16
- package/dist/types/widgets/pie/download.d.ts +12 -0
- package/dist/types/widgets/pie/index.d.ts +4 -3
- package/dist/types/widgets/pie/skeleton.d.ts +13 -1
- package/dist/types/widgets/pie/types.d.ts +57 -9
- package/dist/types/widgets/range/index.d.ts +4 -6
- package/dist/types/widgets/range/range-ui.d.ts +25 -3
- package/dist/types/widgets/range/skeleton.d.ts +9 -1
- package/dist/types/widgets/range/style.d.ts +40 -2
- package/dist/types/widgets/range/types.d.ts +26 -22
- package/dist/types/widgets/scatterplot/download.d.ts +11 -0
- package/dist/types/widgets/scatterplot/index.d.ts +5 -3
- package/dist/types/widgets/scatterplot/skeleton.d.ts +12 -1
- package/dist/types/widgets/scatterplot/types.d.ts +54 -9
- package/dist/types/widgets/selection-summary/selection-summary.d.ts +26 -10
- package/dist/types/widgets/selection-summary/style.d.ts +32 -3
- package/dist/types/widgets/spread/download.d.ts +9 -0
- package/dist/types/widgets/spread/index.d.ts +7 -9
- package/dist/types/widgets/spread/skeleton.d.ts +9 -1
- package/dist/types/widgets/spread/spread-ui.d.ts +16 -3
- package/dist/types/widgets/spread/types.d.ts +20 -35
- package/dist/types/widgets/stores/index.d.ts +8 -3
- package/dist/types/widgets/stores/types.d.ts +45 -172
- package/dist/types/{widgets-v2 → widgets}/stores/widget-store-registry.d.ts +14 -0
- package/dist/types/widgets/subheader/style.d.ts +5 -14
- package/dist/types/widgets/subheader/subheader.d.ts +9 -11
- package/dist/types/widgets/table/download.d.ts +12 -0
- package/dist/types/widgets/table/helpers.d.ts +28 -34
- package/dist/types/widgets/table/index.d.ts +8 -17
- package/dist/types/widgets/table/skeleton.d.ts +17 -5
- package/dist/types/widgets/table/style.d.ts +21 -14
- package/dist/types/widgets/table/table-ui.d.ts +41 -29
- package/dist/types/widgets/table/types.d.ts +34 -182
- package/dist/types/widgets/timeseries/download.d.ts +12 -0
- package/dist/types/widgets/timeseries/index.d.ts +4 -2
- package/dist/types/widgets/timeseries/skeleton.d.ts +7 -0
- package/dist/types/widgets/timeseries/types.d.ts +60 -9
- package/dist/types/{widgets-v2 → widgets}/types.d.ts +7 -6
- package/dist/types/widgets/utils/index.d.ts +3 -7
- package/dist/types/widgets/wrapper/index.d.ts +4 -6
- package/dist/types/{widgets-v2 → widgets}/wrapper/style.d.ts +2 -31
- package/dist/types/{widgets-v2 → widgets}/wrapper/widget-actions.d.ts +2 -2
- package/dist/types/{widgets-v2 → widgets}/wrapper/widget-wrapper.d.ts +2 -2
- package/dist/{utils-Dr6gf3vD.js → utils-C-eWwOhE.js} +5 -5
- package/dist/utils-C-eWwOhE.js.map +1 -0
- package/dist/widgets/actions.js +4 -2
- package/dist/widgets/bar.js +196 -132
- package/dist/widgets/bar.js.map +1 -1
- package/dist/widgets/category.js +2 -450
- package/dist/widgets/echart.js +2 -3
- package/dist/widgets/formula.js +2 -3
- package/dist/widgets/histogram.js +257 -160
- package/dist/widgets/histogram.js.map +1 -1
- package/dist/widgets/markdown.js +3 -148
- package/dist/widgets/pie.js +311 -197
- package/dist/widgets/pie.js.map +1 -1
- package/dist/widgets/range.js +2 -233
- package/dist/widgets/scatterplot.js +294 -196
- package/dist/widgets/scatterplot.js.map +1 -1
- package/dist/widgets/spread.js +2 -158
- package/dist/widgets/stores.js +2 -3
- package/dist/widgets/table.js +2 -599
- package/dist/widgets/timeseries.js +244 -136
- package/dist/widgets/timeseries.js.map +1 -1
- package/dist/widgets/utils.js +2 -18
- package/dist/widgets.js +911 -0
- package/dist/widgets.js.map +1 -0
- package/dist/{zoom-toggle-IsF8BnAp.js → zoom-toggle-MmLjMTEw.js} +5 -5
- package/dist/zoom-toggle-MmLjMTEw.js.map +1 -0
- package/package.json +43 -129
- package/src/chat/bubbles/chat-agent-message-markdown.tsx +1 -1
- package/src/chat/bubbles/chat-error-message.tsx +9 -3
- package/src/chat/bubbles/chat-suggestion-button.tsx +8 -3
- package/src/chat/containers/chat-footer.tsx +6 -2
- package/src/chat/containers/chat-starter.tsx +6 -4
- package/src/chat/feedback/chat-tool-full-view-dialog.tsx +3 -1
- package/src/chat/feedback/chat-tool-group.test.tsx +1 -1
- package/src/chat/feedback/chat-tool-group.tsx +40 -9
- package/src/chat/feedback/chat-tool-trace.tsx +55 -19
- package/src/chat/types.ts +5 -2
- package/src/components/basemaps/header.tsx +6 -1
- package/src/components/index.ts +2 -3
- package/src/components/lasso-tool/geometry-toolbar.tsx +1 -1
- package/src/components/lasso-tool/lasso-tool-inline.tsx +12 -4
- package/src/components/lasso-tool/lasso-tool.tsx +26 -15
- package/src/components/lasso-tool/layer-filters.tsx +36 -11
- package/src/components/lasso-tool/options-sections.test.tsx +13 -2
- package/src/components/lasso-tool/options-sections.tsx +17 -7
- package/src/components/lasso-tool/toolbar/connected.tsx +1 -1
- package/src/components/lasso-tool/toolbar/context.tsx +1 -1
- package/src/components/measurement-tools/measurement-tools.tsx +28 -13
- package/src/components/no-data-alert/no-data-alert.tsx +12 -2
- package/src/components/responsive-drawer/responsive-drawer.tsx +0 -1
- package/src/components/types.ts +17 -0
- package/src/components/zoom-controls/zoom-controls.tsx +3 -1
- package/src/legend/components/legend-actions/legend-actions.tsx +2 -2
- package/src/legend/components/legend-category/legend-category-ui.tsx +7 -3
- package/src/legend/components/legend-config-select/legend-config-select.tsx +6 -2
- package/src/legend/components/legend-group/legend-group.tsx +6 -2
- package/src/legend/components/legend-group/styles.ts +1 -1
- package/src/legend/components/legend-icon/legend-icon-ui.tsx +7 -3
- package/src/legend/components/legend-opacity/legend-opacity.tsx +9 -3
- package/src/legend/components/legend-proportion/legend-proportion-ui.tsx +19 -3
- package/src/legend/components/legend-ramp/legend-ramp-ui.tsx +31 -7
- package/src/legend/components/legend-row/legend-row.tsx +2 -2
- package/src/legend/components/legend-row/styles.ts +1 -1
- package/src/legend/components/legend-sortable/legend-sortable.tsx +7 -3
- package/src/legend/components/legend-swatch/legend-swatch.tsx +2 -1
- package/src/legend/components/legend-visible-layers/legend-visible-layers.tsx +18 -9
- package/src/legend/index.ts +1 -1
- package/src/legend/provider/legend-provider.tsx +2 -2
- package/src/legend/stores/legend-store-registry.ts +1 -1
- package/src/migration/v4/classes.ts +56 -0
- package/src/migration/v4/icons.ts +56 -0
- package/src/migration/v4/index.ts +17 -0
- package/src/migration/v4/migration.test.ts +772 -0
- package/src/migration/v4/rules.ts +444 -0
- package/src/migration/v4/transform.ts +92 -0
- package/src/migration/v4/transforms/helpers.ts +369 -0
- package/src/migration/v4/transforms/meridian-5.ts +163 -0
- package/src/migration/v4/transforms/ps-react-ui.ts +99 -0
- package/src/migration/v4/transforms/v5-v6.ts +161 -0
- package/src/migration/v4/transforms/v6-v7.ts +342 -0
- package/src/migration/v4/transforms/v7-v9-dom.ts +403 -0
- package/src/migration/v4/transforms/v7-v9-props.ts +529 -0
- package/src/migration/v4/widgets-v1.ts +199 -0
- package/src/{widgets-v2 → widgets}/PERFORMANCE.md +5 -5
- package/src/widgets/actions/brush-toggle/brush-toggle.test.tsx +144 -172
- package/src/widgets/actions/brush-toggle/brush-toggle.tsx +129 -108
- package/src/widgets/actions/brush-toggle/style.ts +5 -40
- package/src/widgets/actions/change-column/change-column-icon.tsx +14 -10
- package/src/widgets/actions/change-column/change-column.test.tsx +57 -288
- package/src/widgets/actions/change-column/change-column.tsx +116 -145
- package/src/widgets/actions/change-column/sortable-column-item.tsx +29 -17
- package/src/widgets/actions/change-column/types.ts +9 -18
- package/src/widgets/actions/download/download.test.tsx +290 -289
- package/src/widgets/actions/download/download.tsx +103 -89
- package/src/widgets/actions/download/exports.test.tsx +157 -247
- package/src/{widgets-v2 → widgets}/actions/download/exports.ts +1 -1
- package/src/{widgets-v2 → widgets}/actions/download/index.ts +1 -0
- package/src/{widgets-v2 → widgets}/actions/download/png-item.tsx +2 -2
- package/src/widgets/actions/download/types.ts +40 -15
- package/src/widgets/actions/download/widget-download.test.ts +30 -0
- package/src/widgets/actions/download/widget-download.ts +41 -0
- package/src/widgets/actions/fullscreen/fullscreen.test.tsx +162 -221
- package/src/widgets/actions/fullscreen/fullscreen.tsx +383 -76
- package/src/widgets/actions/fullscreen/types.ts +14 -31
- package/src/widgets/actions/index.ts +93 -68
- package/src/widgets/actions/lock-selection/lock-selection.test.tsx +259 -156
- package/src/widgets/actions/lock-selection/lock-selection.tsx +162 -102
- package/src/widgets/actions/relative-data/relative-data.test.tsx +65 -536
- package/src/widgets/actions/relative-data/relative-data.tsx +82 -163
- package/src/{widgets-v2 → widgets}/actions/relative-data/transforms.ts +2 -2
- package/src/widgets/actions/searcher/searcher-toggle.tsx +82 -55
- package/src/widgets/actions/searcher/searcher.tsx +96 -169
- package/src/widgets/actions/stack-toggle/stack-toggle.test.tsx +49 -402
- package/src/widgets/actions/stack-toggle/stack-toggle.tsx +39 -114
- package/src/widgets/actions/zoom-toggle/style.ts +5 -8
- package/src/widgets/actions/zoom-toggle/zoom-toggle.test.tsx +88 -303
- package/src/widgets/actions/zoom-toggle/zoom-toggle.tsx +87 -199
- package/src/widgets/bar/download.tsx +36 -0
- package/src/widgets/bar/index.ts +6 -5
- package/src/{widgets-v2 → widgets}/bar/options.ts +1 -1
- package/src/widgets/bar/skeleton.tsx +61 -52
- package/src/widgets/bar/types.ts +46 -11
- package/src/widgets/category/category-ui.test.tsx +846 -317
- package/src/widgets/category/category-ui.tsx +456 -127
- package/src/{widgets-v2 → widgets}/category/category.tsx +4 -4
- package/src/{widgets-v2 → widgets}/category/components/category-bar-stacked.tsx +2 -1
- package/src/widgets/category/components/category-bar.tsx +31 -12
- package/src/{widgets-v2 → widgets}/category/components/category-legend.test.tsx +7 -3
- package/src/widgets/category/components/category-legend.tsx +67 -18
- package/src/widgets/category/components/category-row-multi.tsx +66 -36
- package/src/widgets/category/components/category-row-other.tsx +63 -5
- package/src/widgets/category/components/category-row-single.tsx +48 -25
- package/src/{widgets-v2 → widgets}/category/components/category-row-stacked.tsx +2 -1
- package/src/widgets/category/download.ts +37 -0
- package/src/widgets/category/helpers.test.ts +17 -0
- package/src/widgets/category/helpers.ts +16 -0
- package/src/widgets/category/index.ts +25 -22
- package/src/widgets/category/skeleton.tsx +60 -10
- package/src/widgets/category/style.ts +267 -72
- package/src/widgets/category/types.ts +52 -32
- package/src/widgets/echart/echart-ui.test.tsx +250 -446
- package/src/widgets/echart/echart-ui.tsx +210 -52
- package/src/widgets/echart/echart.test.tsx +203 -518
- package/src/widgets/echart/echart.tsx +195 -52
- package/src/widgets/echart/index.ts +21 -15
- package/src/widgets/echart/shared-resize-observer.ts +30 -19
- package/src/{widgets-v2 → widgets}/echart/style.ts +3 -3
- package/src/{widgets-v2 → widgets}/formula/download.tsx +8 -29
- package/src/widgets/formula/formula-ui.test.tsx +68 -376
- package/src/widgets/formula/formula-ui.tsx +58 -22
- package/src/widgets/formula/index.ts +14 -21
- package/src/{widgets-v2 → widgets}/formula/note.tsx +8 -2
- package/src/{widgets-v2 → widgets}/formula/series.tsx +8 -25
- package/src/widgets/formula/skeleton.tsx +21 -4
- package/src/widgets/formula/style.ts +20 -12
- package/src/widgets/formula/types.ts +44 -45
- package/src/{widgets-v2 → widgets}/formula/value.tsx +2 -1
- package/src/{widgets-v2 → widgets}/histogram/download.ts +11 -25
- package/src/widgets/histogram/index.ts +10 -10
- package/src/{widgets-v2 → widgets}/histogram/options.ts +1 -1
- package/src/widgets/histogram/skeleton.tsx +63 -45
- package/src/widgets/histogram/types.ts +59 -18
- package/src/{widgets-v2 → widgets}/index.ts +3 -3
- package/src/{widgets-v2 → widgets}/markdown/download.tsx +9 -25
- package/src/widgets/markdown/index.ts +5 -13
- package/src/widgets/markdown/markdown-ui.test.tsx +53 -319
- package/src/widgets/markdown/markdown-ui.tsx +43 -47
- package/src/widgets/markdown/markdown.tsx +12 -15
- package/src/widgets/markdown/skeleton.tsx +26 -6
- package/src/widgets/markdown/style.ts +48 -23
- package/src/widgets/markdown/types.ts +2 -26
- package/src/widgets/note/style.ts +14 -17
- package/src/{widgets-v2 → widgets}/note/widget-note.tsx +15 -2
- package/src/{widgets-v2 → widgets}/pie/download.ts +10 -24
- package/src/widgets/pie/index.ts +7 -5
- package/src/{widgets-v2 → widgets}/pie/options.ts +1 -1
- package/src/widgets/pie/skeleton.tsx +84 -60
- package/src/widgets/pie/types.ts +57 -11
- package/src/widgets/range/index.ts +4 -16
- package/src/widgets/range/range-ui.test.tsx +115 -182
- package/src/widgets/range/range-ui.tsx +274 -8
- package/src/widgets/range/skeleton.tsx +41 -8
- package/src/widgets/range/style.ts +16 -12
- package/src/widgets/range/types.ts +26 -28
- package/src/widgets/scatterplot/download.ts +37 -0
- package/src/widgets/scatterplot/index.ts +11 -5
- package/src/{widgets-v2 → widgets}/scatterplot/options.ts +1 -1
- package/src/widgets/scatterplot/skeleton.tsx +76 -51
- package/src/widgets/scatterplot/types.ts +54 -12
- package/src/widgets/selection-summary/selection-summary.tsx +64 -39
- package/src/widgets/selection-summary/style.ts +30 -2
- package/src/widgets/spread/download.ts +41 -0
- package/src/widgets/spread/index.ts +11 -23
- package/src/widgets/spread/skeleton.tsx +32 -4
- package/src/widgets/spread/spread-ui.test.tsx +98 -358
- package/src/widgets/spread/spread-ui.tsx +44 -24
- package/src/widgets/spread/types.ts +21 -41
- package/src/{widgets-v2 → widgets}/state/widget-state.tsx +13 -3
- package/src/widgets/stores/index.ts +48 -10
- package/src/{widgets-v2 → widgets}/stores/transforms.ts +1 -1
- package/src/widgets/stores/types.ts +42 -181
- package/src/{widgets-v2 → widgets}/stores/use-transform.ts +1 -1
- package/src/{widgets-v2 → widgets}/stores/widget-store-registry.test.ts +25 -0
- package/src/{widgets-v2 → widgets}/stores/widget-store-registry.ts +24 -2
- package/src/widgets/subheader/style.ts +5 -13
- package/src/widgets/subheader/subheader.test.tsx +22 -37
- package/src/widgets/subheader/subheader.tsx +11 -30
- package/src/widgets/table/download.ts +29 -0
- package/src/widgets/table/helpers.test.ts +197 -208
- package/src/widgets/table/helpers.ts +108 -84
- package/src/widgets/table/index.ts +23 -54
- package/src/widgets/table/skeleton.tsx +38 -21
- package/src/widgets/table/style.ts +23 -14
- package/src/widgets/table/table-ui.tsx +348 -44
- package/src/widgets/table/types.ts +37 -205
- package/src/{widgets-v2 → widgets}/test-utils.ts +1 -1
- package/src/{widgets-v2 → widgets}/timeseries/download.ts +14 -28
- package/src/widgets/timeseries/index.ts +8 -5
- package/src/{widgets-v2 → widgets}/timeseries/options.ts +1 -1
- package/src/widgets/timeseries/skeleton.tsx +67 -46
- package/src/widgets/timeseries/types.ts +60 -12
- package/src/{widgets-v2 → widgets}/types.ts +8 -6
- package/src/widgets/utils/index.ts +3 -26
- package/src/widgets/wrapper/index.ts +14 -16
- package/src/{widgets-v2 → widgets}/wrapper/style.ts +2 -38
- package/src/{widgets-v2 → widgets}/wrapper/widget-actions.tsx +2 -2
- package/src/{widgets-v2 → widgets}/wrapper/widget-wrapper.test.tsx +2 -32
- package/src/{widgets-v2 → widgets}/wrapper/widget-wrapper.tsx +36 -58
- package/dist/actions-CGJD6q0t.js +0 -1318
- package/dist/actions-CGJD6q0t.js.map +0 -1
- package/dist/actions-Dhlz_adK.js +0 -1167
- package/dist/actions-Dhlz_adK.js.map +0 -1
- package/dist/category-D01ruG-l.js +0 -842
- package/dist/category-D01ruG-l.js.map +0 -1
- package/dist/chart-config-B_fdIcD3.js.map +0 -1
- package/dist/cjs-CBrZjPCj.js +0 -75
- package/dist/cjs-CBrZjPCj.js.map +0 -1
- package/dist/components-FED-ArwH.js.map +0 -1
- package/dist/copy-button-TTlZONkX.js +0 -34
- package/dist/copy-button-TTlZONkX.js.map +0 -1
- package/dist/csv-modifiers-D6HGC24b.js +0 -26
- package/dist/csv-modifiers-D6HGC24b.js.map +0 -1
- package/dist/download-DGgFOaXj.js.map +0 -1
- package/dist/echart-BkaV3V5G.js +0 -133
- package/dist/echart-BkaV3V5G.js.map +0 -1
- package/dist/echart-CwzbPElc.js.map +0 -1
- package/dist/formatter-wVO81tYk.js +0 -6
- package/dist/formatter-wVO81tYk.js.map +0 -1
- package/dist/formula-BIxJr1P3.js +0 -285
- package/dist/formula-BIxJr1P3.js.map +0 -1
- package/dist/formula-YfZmmuYX.js +0 -190
- package/dist/formula-YfZmmuYX.js.map +0 -1
- package/dist/hooks-zf5gKZYq.js +0 -22
- package/dist/hooks-zf5gKZYq.js.map +0 -1
- package/dist/markdown-content-BWUqwx9F.js.map +0 -1
- package/dist/markdown-oo9mnJun.js.map +0 -1
- package/dist/range-BCMAl5xf.js.map +0 -1
- package/dist/row-CvVGBuy_.js +0 -35
- package/dist/row-CvVGBuy_.js.map +0 -1
- package/dist/shared-resize-observer-BEiP2rQt.js +0 -157
- package/dist/shared-resize-observer-BEiP2rQt.js.map +0 -1
- package/dist/smart-tooltip-CwGHCqab.js +0 -34
- package/dist/smart-tooltip-CwGHCqab.js.map +0 -1
- package/dist/spread-CgCTKPQD.js.map +0 -1
- package/dist/stores-tiFePP0A.js.map +0 -1
- package/dist/styles-Y-qGBELO.js +0 -13
- package/dist/styles-Y-qGBELO.js.map +0 -1
- package/dist/table-lb5momun.js.map +0 -1
- package/dist/tooltip-DJUGNZxY.js +0 -23
- package/dist/tooltip-DJUGNZxY.js.map +0 -1
- package/dist/types/components/list-data/list-data-skeleton.d.ts +0 -5
- package/dist/types/components/list-data/list-data.d.ts +0 -19
- package/dist/types/components/list-data/styles.d.ts +0 -34
- package/dist/types/components/list-data/types.d.ts +0 -23
- package/dist/types/hooks/index.d.ts +0 -1
- package/dist/types/hooks/use-skeleton.d.ts +0 -1
- package/dist/types/hooks/use-widget-ref.d.ts +0 -21
- package/dist/types/widgets/actions/brush-toggle/brush-overlay.d.ts +0 -24
- package/dist/types/widgets/actions/brush-toggle/hit-test.d.ts +0 -19
- package/dist/types/widgets/actions/brush-toggle/types.d.ts +0 -73
- package/dist/types/widgets/actions/fullscreen/styles.d.ts +0 -16
- package/dist/types/widgets/actions/lock-selection/types.d.ts +0 -38
- package/dist/types/widgets/actions/relative-data/types.d.ts +0 -29
- package/dist/types/widgets/actions/relative-data/utils.d.ts +0 -9
- package/dist/types/widgets/actions/searcher/types.d.ts +0 -64
- package/dist/types/widgets/actions/shared/styles.d.ts +0 -11
- package/dist/types/widgets/actions/stack-toggle/grouped-bar-chart-icon.d.ts +0 -1
- package/dist/types/widgets/actions/stack-toggle/types.d.ts +0 -25
- package/dist/types/widgets/actions/zoom-toggle/types.d.ts +0 -41
- package/dist/types/widgets/bar/config.d.ts +0 -9
- package/dist/types/widgets/bar/style.d.ts +0 -37
- package/dist/types/widgets/category/config.d.ts +0 -20
- package/dist/types/widgets/echart/const.d.ts +0 -1
- package/dist/types/widgets/echart/options.d.ts +0 -9
- package/dist/types/widgets/echart/types.d.ts +0 -38
- package/dist/types/widgets/echart/utils.d.ts +0 -128
- package/dist/types/widgets/error/error.d.ts +0 -12
- package/dist/types/widgets/error/index.d.ts +0 -2
- package/dist/types/widgets/error/types.d.ts +0 -20
- package/dist/types/widgets/formula/components/item.d.ts +0 -5
- package/dist/types/widgets/formula/components/prefix.d.ts +0 -5
- package/dist/types/widgets/formula/components/row.d.ts +0 -5
- package/dist/types/widgets/formula/components/series.d.ts +0 -5
- package/dist/types/widgets/formula/components/suffix.d.ts +0 -5
- package/dist/types/widgets/formula/components/value.d.ts +0 -5
- package/dist/types/widgets/formula/config.d.ts +0 -15
- package/dist/types/widgets/formula/serializer.d.ts +0 -16
- package/dist/types/widgets/histogram/config.d.ts +0 -21
- package/dist/types/widgets/histogram/style.d.ts +0 -15
- package/dist/types/widgets/loader/index.d.ts +0 -3
- package/dist/types/widgets/loader/loader.d.ts +0 -24
- package/dist/types/widgets/loader/types.d.ts +0 -9
- package/dist/types/widgets/loader/utils.d.ts +0 -35
- package/dist/types/widgets/markdown/config.d.ts +0 -14
- package/dist/types/widgets/no-data/index.d.ts +0 -2
- package/dist/types/widgets/no-data/no-data.d.ts +0 -36
- package/dist/types/widgets/no-data/style.d.ts +0 -6
- package/dist/types/widgets/no-data/types.d.ts +0 -71
- package/dist/types/widgets/note/index.d.ts +0 -2
- package/dist/types/widgets/note/note.d.ts +0 -12
- package/dist/types/widgets/note/types.d.ts +0 -8
- package/dist/types/widgets/pie/config.d.ts +0 -9
- package/dist/types/widgets/pie/style.d.ts +0 -15
- package/dist/types/widgets/range/components/range-item.d.ts +0 -5
- package/dist/types/widgets/range/config.d.ts +0 -7
- package/dist/types/widgets/range/serializer.d.ts +0 -16
- package/dist/types/widgets/scatterplot/config.d.ts +0 -9
- package/dist/types/widgets/scatterplot/style.d.ts +0 -24
- package/dist/types/widgets/selection-summary/index.d.ts +0 -2
- package/dist/types/widgets/selection-summary/types.d.ts +0 -13
- package/dist/types/widgets/skeleton-loader/index.d.ts +0 -2
- package/dist/types/widgets/skeleton-loader/skeleton-loader.d.ts +0 -12
- package/dist/types/widgets/skeleton-loader/types.d.ts +0 -7
- package/dist/types/widgets/spread/components/max-value.d.ts +0 -5
- package/dist/types/widgets/spread/components/min-value.d.ts +0 -5
- package/dist/types/widgets/spread/components/separator.d.ts +0 -5
- package/dist/types/widgets/spread/config.d.ts +0 -16
- package/dist/types/widgets/spread/style.d.ts +0 -21
- package/dist/types/widgets/stores/use-widget-selector.d.ts +0 -35
- package/dist/types/widgets/stores/widget-store.d.ts +0 -60
- package/dist/types/widgets/subheader/index.d.ts +0 -2
- package/dist/types/widgets/subheader/types.d.ts +0 -10
- package/dist/types/widgets/table/components/cell-header.d.ts +0 -5
- package/dist/types/widgets/table/components/cell.d.ts +0 -18
- package/dist/types/widgets/table/components/pagination-actions.d.ts +0 -5
- package/dist/types/widgets/table/components/pagination.d.ts +0 -5
- package/dist/types/widgets/table/components/row.d.ts +0 -5
- package/dist/types/widgets/table/config.d.ts +0 -21
- package/dist/types/widgets/table/hooks/use-pagination.d.ts +0 -41
- package/dist/types/widgets/table/hooks/use-selection.d.ts +0 -39
- package/dist/types/widgets/table/hooks/use-sort.d.ts +0 -30
- package/dist/types/widgets/table/serializer.d.ts +0 -16
- package/dist/types/widgets/timeseries/config.d.ts +0 -9
- package/dist/types/widgets/timeseries/style.d.ts +0 -38
- package/dist/types/widgets/toolbar-actions/index.d.ts +0 -2
- package/dist/types/widgets/toolbar-actions/styles.d.ts +0 -37
- package/dist/types/widgets/toolbar-actions/toolbar-actions.d.ts +0 -17
- package/dist/types/widgets/toolbar-actions/types.d.ts +0 -52
- package/dist/types/widgets/utils/chart-config/config-factory.d.ts +0 -38
- package/dist/types/widgets/utils/chart-config/csv-modifiers.d.ts +0 -19
- package/dist/types/widgets/utils/chart-config/download-config.d.ts +0 -3
- package/dist/types/widgets/utils/chart-config/index.d.ts +0 -9
- package/dist/types/widgets/utils/formatter.d.ts +0 -2
- package/dist/types/widgets/utils/skeleton/index.d.ts +0 -4
- package/dist/types/widgets/utils/skeleton/styles.d.ts +0 -19
- package/dist/types/widgets/wrapper/components/actions.d.ts +0 -5
- package/dist/types/widgets/wrapper/components/options.d.ts +0 -5
- package/dist/types/widgets/wrapper/components/title.d.ts +0 -9
- package/dist/types/widgets/wrapper/styles.d.ts +0 -89
- package/dist/types/widgets/wrapper/types.d.ts +0 -37
- package/dist/types/widgets/wrapper/wrapper-ui.d.ts +0 -16
- package/dist/types/widgets/wrapper/wrapper.d.ts +0 -16
- package/dist/types/widgets-v2/actions/brush-toggle/brush-toggle.d.ts +0 -56
- package/dist/types/widgets-v2/actions/change-column/change-column-icon.d.ts +0 -2
- package/dist/types/widgets-v2/actions/change-column/change-column.d.ts +0 -29
- package/dist/types/widgets-v2/actions/change-column/sortable-column-item.d.ts +0 -14
- package/dist/types/widgets-v2/actions/change-column/types.d.ts +0 -10
- package/dist/types/widgets-v2/actions/download/download.d.ts +0 -18
- package/dist/types/widgets-v2/actions/download/exports.d.ts +0 -37
- package/dist/types/widgets-v2/actions/download/types.d.ts +0 -46
- package/dist/types/widgets-v2/actions/fullscreen/fullscreen.d.ts +0 -85
- package/dist/types/widgets-v2/actions/fullscreen/types.d.ts +0 -14
- package/dist/types/widgets-v2/actions/index.d.ts +0 -10
- package/dist/types/widgets-v2/actions/lock-selection/lock-selection.d.ts +0 -57
- package/dist/types/widgets-v2/actions/relative-data/relative-data.d.ts +0 -39
- package/dist/types/widgets-v2/actions/searcher/searcher-toggle.d.ts +0 -23
- package/dist/types/widgets-v2/actions/searcher/searcher.d.ts +0 -11
- package/dist/types/widgets-v2/actions/stack-toggle/stack-toggle.d.ts +0 -10
- package/dist/types/widgets-v2/actions/stack-toggle/style.d.ts +0 -12
- package/dist/types/widgets-v2/actions/zoom-toggle/style.d.ts +0 -12
- package/dist/types/widgets-v2/actions/zoom-toggle/zoom-toggle.d.ts +0 -35
- package/dist/types/widgets-v2/bar/download.d.ts +0 -24
- package/dist/types/widgets-v2/bar/index.d.ts +0 -4
- package/dist/types/widgets-v2/bar/skeleton.d.ts +0 -6
- package/dist/types/widgets-v2/bar/types.d.ts +0 -46
- package/dist/types/widgets-v2/category/category-ui.d.ts +0 -96
- package/dist/types/widgets-v2/category/components/category-bar.d.ts +0 -23
- package/dist/types/widgets-v2/category/components/category-legend.d.ts +0 -34
- package/dist/types/widgets-v2/category/components/category-row-multi.d.ts +0 -31
- package/dist/types/widgets-v2/category/components/category-row-other.d.ts +0 -26
- package/dist/types/widgets-v2/category/components/category-row-single.d.ts +0 -28
- package/dist/types/widgets-v2/category/download.d.ts +0 -16
- package/dist/types/widgets-v2/category/index.d.ts +0 -10
- package/dist/types/widgets-v2/category/skeleton.d.ts +0 -11
- package/dist/types/widgets-v2/category/style.d.ts +0 -193
- package/dist/types/widgets-v2/category/types.d.ts +0 -55
- package/dist/types/widgets-v2/echart/echart-ui.d.ts +0 -44
- package/dist/types/widgets-v2/echart/echart.d.ts +0 -83
- package/dist/types/widgets-v2/echart/index.d.ts +0 -4
- package/dist/types/widgets-v2/echart/shared-resize-observer.d.ts +0 -5
- package/dist/types/widgets-v2/formula/download.d.ts +0 -20
- package/dist/types/widgets-v2/formula/formula-ui.d.ts +0 -20
- package/dist/types/widgets-v2/formula/index.d.ts +0 -11
- package/dist/types/widgets-v2/formula/skeleton.d.ts +0 -4
- package/dist/types/widgets-v2/formula/style.d.ts +0 -29
- package/dist/types/widgets-v2/formula/types.d.ts +0 -43
- package/dist/types/widgets-v2/histogram/download.d.ts +0 -17
- package/dist/types/widgets-v2/histogram/index.d.ts +0 -5
- package/dist/types/widgets-v2/histogram/skeleton.d.ts +0 -9
- package/dist/types/widgets-v2/histogram/types.d.ts +0 -60
- package/dist/types/widgets-v2/markdown/download.d.ts +0 -16
- package/dist/types/widgets-v2/markdown/index.d.ts +0 -6
- package/dist/types/widgets-v2/markdown/markdown-ui.d.ts +0 -12
- package/dist/types/widgets-v2/markdown/markdown.d.ts +0 -6
- package/dist/types/widgets-v2/markdown/skeleton.d.ts +0 -4
- package/dist/types/widgets-v2/markdown/style.d.ts +0 -61
- package/dist/types/widgets-v2/markdown/types.d.ts +0 -4
- package/dist/types/widgets-v2/note/style.d.ts +0 -26
- package/dist/types/widgets-v2/pie/download.d.ts +0 -17
- package/dist/types/widgets-v2/pie/index.d.ts +0 -4
- package/dist/types/widgets-v2/pie/skeleton.d.ts +0 -13
- package/dist/types/widgets-v2/pie/types.d.ts +0 -57
- package/dist/types/widgets-v2/range/index.d.ts +0 -4
- package/dist/types/widgets-v2/range/range-ui.d.ts +0 -27
- package/dist/types/widgets-v2/range/skeleton.d.ts +0 -9
- package/dist/types/widgets-v2/range/style.d.ts +0 -40
- package/dist/types/widgets-v2/range/types.d.ts +0 -37
- package/dist/types/widgets-v2/scatterplot/download.d.ts +0 -16
- package/dist/types/widgets-v2/scatterplot/index.d.ts +0 -5
- package/dist/types/widgets-v2/scatterplot/skeleton.d.ts +0 -12
- package/dist/types/widgets-v2/scatterplot/types.d.ts +0 -54
- package/dist/types/widgets-v2/selection-summary/selection-summary.d.ts +0 -29
- package/dist/types/widgets-v2/selection-summary/style.d.ts +0 -38
- package/dist/types/widgets-v2/spread/download.d.ts +0 -15
- package/dist/types/widgets-v2/spread/index.d.ts +0 -7
- package/dist/types/widgets-v2/spread/skeleton.d.ts +0 -9
- package/dist/types/widgets-v2/spread/spread-ui.d.ts +0 -18
- package/dist/types/widgets-v2/spread/types.d.ts +0 -25
- package/dist/types/widgets-v2/stores/index.d.ts +0 -8
- package/dist/types/widgets-v2/stores/types.d.ts +0 -55
- package/dist/types/widgets-v2/subheader/style.d.ts +0 -10
- package/dist/types/widgets-v2/subheader/subheader.d.ts +0 -11
- package/dist/types/widgets-v2/table/download.d.ts +0 -18
- package/dist/types/widgets-v2/table/helpers.d.ts +0 -32
- package/dist/types/widgets-v2/table/index.d.ts +0 -8
- package/dist/types/widgets-v2/table/skeleton.d.ts +0 -22
- package/dist/types/widgets-v2/table/style.d.ts +0 -40
- package/dist/types/widgets-v2/table/table-ui.d.ts +0 -44
- package/dist/types/widgets-v2/table/types.d.ts +0 -48
- package/dist/types/widgets-v2/timeseries/download.d.ts +0 -17
- package/dist/types/widgets-v2/timeseries/index.d.ts +0 -5
- package/dist/types/widgets-v2/timeseries/skeleton.d.ts +0 -8
- package/dist/types/widgets-v2/timeseries/types.d.ts +0 -60
- package/dist/types/widgets-v2/utils/index.d.ts +0 -3
- package/dist/types/widgets-v2/wrapper/index.d.ts +0 -4
- package/dist/use-widget-selector-VSPhfhNm.js +0 -12
- package/dist/use-widget-selector-VSPhfhNm.js.map +0 -1
- package/dist/utils-Dr6gf3vD.js.map +0 -1
- package/dist/widget-store-BFPKYm4R.js +0 -187
- package/dist/widget-store-BFPKYm4R.js.map +0 -1
- package/dist/widgets/category.js.map +0 -1
- package/dist/widgets/error.js +0 -30
- package/dist/widgets/error.js.map +0 -1
- package/dist/widgets/loader.js +0 -66
- package/dist/widgets/loader.js.map +0 -1
- package/dist/widgets/markdown.js.map +0 -1
- package/dist/widgets/no-data.js +0 -55
- package/dist/widgets/no-data.js.map +0 -1
- package/dist/widgets/note.js +0 -127
- package/dist/widgets/note.js.map +0 -1
- package/dist/widgets/range.js.map +0 -1
- package/dist/widgets/selection-summary.js +0 -41
- package/dist/widgets/selection-summary.js.map +0 -1
- package/dist/widgets/skeleton-loader.js +0 -24
- package/dist/widgets/skeleton-loader.js.map +0 -1
- package/dist/widgets/spread.js.map +0 -1
- package/dist/widgets/subheader.js +0 -51
- package/dist/widgets/subheader.js.map +0 -1
- package/dist/widgets/table.js.map +0 -1
- package/dist/widgets/toolbar-actions.js +0 -145
- package/dist/widgets/toolbar-actions.js.map +0 -1
- package/dist/widgets/utils.js.map +0 -1
- package/dist/widgets/wrapper.js +0 -273
- package/dist/widgets/wrapper.js.map +0 -1
- package/dist/widgets-v2/actions.js +0 -4
- package/dist/widgets-v2/bar.js +0 -260
- package/dist/widgets-v2/bar.js.map +0 -1
- package/dist/widgets-v2/category.js +0 -2
- package/dist/widgets-v2/echart.js +0 -2
- package/dist/widgets-v2/formula.js +0 -2
- package/dist/widgets-v2/histogram.js +0 -297
- package/dist/widgets-v2/histogram.js.map +0 -1
- package/dist/widgets-v2/markdown.js +0 -3
- package/dist/widgets-v2/pie.js +0 -373
- package/dist/widgets-v2/pie.js.map +0 -1
- package/dist/widgets-v2/range.js +0 -2
- package/dist/widgets-v2/scatterplot.js +0 -330
- package/dist/widgets-v2/scatterplot.js.map +0 -1
- package/dist/widgets-v2/spread.js +0 -2
- package/dist/widgets-v2/stores.js +0 -2
- package/dist/widgets-v2/table.js +0 -2
- package/dist/widgets-v2/timeseries.js +0 -294
- package/dist/widgets-v2/timeseries.js.map +0 -1
- package/dist/widgets-v2/utils.js +0 -2
- package/dist/widgets-v2.js +0 -952
- package/dist/widgets-v2.js.map +0 -1
- package/dist/zoom-toggle-IsF8BnAp.js.map +0 -1
- package/src/components/list-data/list-data-skeleton.test.tsx +0 -10
- package/src/components/list-data/list-data-skeleton.tsx +0 -40
- package/src/components/list-data/list-data.test.tsx +0 -167
- package/src/components/list-data/list-data.tsx +0 -124
- package/src/components/list-data/styles.ts +0 -37
- package/src/components/list-data/types.ts +0 -25
- package/src/hooks/index.ts +0 -1
- package/src/hooks/use-skeleton.test.tsx +0 -32
- package/src/hooks/use-skeleton.ts +0 -19
- package/src/hooks/use-widget-ref.ts +0 -34
- package/src/widgets/README.md +0 -277
- package/src/widgets/actions/brush-toggle/brush-overlay.test.tsx +0 -465
- package/src/widgets/actions/brush-toggle/brush-overlay.tsx +0 -408
- package/src/widgets/actions/brush-toggle/hit-test.test.ts +0 -65
- package/src/widgets/actions/brush-toggle/hit-test.ts +0 -45
- package/src/widgets/actions/brush-toggle/types.ts +0 -78
- package/src/widgets/actions/change-column/change-column-dnd.test.tsx +0 -193
- package/src/widgets/actions/change-column/sortable-column-item.test.tsx +0 -124
- package/src/widgets/actions/download/exports.tsx +0 -118
- package/src/widgets/actions/fullscreen/styles.ts +0 -17
- package/src/widgets/actions/lock-selection/types.ts +0 -43
- package/src/widgets/actions/relative-data/types.ts +0 -33
- package/src/widgets/actions/relative-data/utils.test.ts +0 -223
- package/src/widgets/actions/relative-data/utils.ts +0 -58
- package/src/widgets/actions/searcher/searcher-toggle.test.tsx +0 -354
- package/src/widgets/actions/searcher/types.ts +0 -72
- package/src/widgets/actions/shared/styles.ts +0 -12
- package/src/widgets/actions/stack-toggle/grouped-bar-chart-icon.tsx +0 -14
- package/src/widgets/actions/stack-toggle/types.ts +0 -29
- package/src/widgets/actions/zoom-toggle/types.ts +0 -44
- package/src/widgets/bar/config.ts +0 -140
- package/src/widgets/bar/style.ts +0 -33
- package/src/widgets/category/components/category-rows.test.tsx +0 -213
- package/src/widgets/category/config.ts +0 -86
- package/src/widgets/echart/const.ts +0 -1
- package/src/widgets/echart/options.ts +0 -57
- package/src/widgets/echart/types.ts +0 -45
- package/src/widgets/echart/utils.test.ts +0 -277
- package/src/widgets/echart/utils.ts +0 -244
- package/src/widgets/error/error.test.tsx +0 -331
- package/src/widgets/error/error.tsx +0 -51
- package/src/widgets/error/index.ts +0 -2
- package/src/widgets/error/types.ts +0 -24
- package/src/widgets/formula/components/item.test.tsx +0 -249
- package/src/widgets/formula/components/item.tsx +0 -21
- package/src/widgets/formula/components/prefix.test.tsx +0 -341
- package/src/widgets/formula/components/prefix.tsx +0 -19
- package/src/widgets/formula/components/row.test.tsx +0 -364
- package/src/widgets/formula/components/row.tsx +0 -24
- package/src/widgets/formula/components/series.tsx +0 -35
- package/src/widgets/formula/components/suffix.test.tsx +0 -383
- package/src/widgets/formula/components/suffix.tsx +0 -29
- package/src/widgets/formula/components/value.test.tsx +0 -329
- package/src/widgets/formula/components/value.tsx +0 -24
- package/src/widgets/formula/config.test.ts +0 -37
- package/src/widgets/formula/config.ts +0 -38
- package/src/widgets/formula/serializer.test.tsx +0 -144
- package/src/widgets/formula/serializer.ts +0 -28
- package/src/widgets/histogram/config.ts +0 -230
- package/src/widgets/histogram/style.ts +0 -8
- package/src/widgets/loader/index.ts +0 -4
- package/src/widgets/loader/loader.tsx +0 -92
- package/src/widgets/loader/types.ts +0 -13
- package/src/widgets/loader/utils.test.ts +0 -112
- package/src/widgets/loader/utils.ts +0 -57
- package/src/widgets/markdown/config.ts +0 -28
- package/src/widgets/no-data/index.ts +0 -2
- package/src/widgets/no-data/no-data.test.tsx +0 -497
- package/src/widgets/no-data/no-data.tsx +0 -112
- package/src/widgets/no-data/style.ts +0 -18
- package/src/widgets/no-data/types.ts +0 -76
- package/src/widgets/note/index.ts +0 -2
- package/src/widgets/note/note.test.tsx +0 -391
- package/src/widgets/note/note.tsx +0 -124
- package/src/widgets/note/types.ts +0 -9
- package/src/widgets/pie/config.ts +0 -245
- package/src/widgets/pie/style.ts +0 -8
- package/src/widgets/range/components/range-item.test.tsx +0 -243
- package/src/widgets/range/components/range-item.tsx +0 -214
- package/src/widgets/range/config.ts +0 -10
- package/src/widgets/range/serializer.test.ts +0 -70
- package/src/widgets/range/serializer.ts +0 -27
- package/src/widgets/scatterplot/config.ts +0 -136
- package/src/widgets/scatterplot/style.ts +0 -21
- package/src/widgets/selection-summary/index.ts +0 -6
- package/src/widgets/selection-summary/types.ts +0 -14
- package/src/widgets/skeleton-loader/index.ts +0 -2
- package/src/widgets/skeleton-loader/skeleton-loader.test.tsx +0 -139
- package/src/widgets/skeleton-loader/skeleton-loader.tsx +0 -35
- package/src/widgets/skeleton-loader/types.ts +0 -8
- package/src/widgets/spread/components/max-value.tsx +0 -29
- package/src/widgets/spread/components/min-value.tsx +0 -29
- package/src/widgets/spread/components/separator.tsx +0 -9
- package/src/widgets/spread/config.ts +0 -39
- package/src/widgets/spread/style.ts +0 -22
- package/src/widgets/stores/use-widget-selector.ts +0 -47
- package/src/widgets/stores/widget-store-branches.test.ts +0 -275
- package/src/widgets/stores/widget-store-performance.test.ts +0 -750
- package/src/widgets/stores/widget-store.test.ts +0 -942
- package/src/widgets/stores/widget-store.ts +0 -484
- package/src/widgets/subheader/index.ts +0 -3
- package/src/widgets/subheader/types.ts +0 -11
- package/src/widgets/table/components/cell-header.tsx +0 -58
- package/src/widgets/table/components/cell.tsx +0 -82
- package/src/widgets/table/components/pagination-actions.tsx +0 -67
- package/src/widgets/table/components/pagination.tsx +0 -41
- package/src/widgets/table/components/row.tsx +0 -65
- package/src/widgets/table/config.test.ts +0 -65
- package/src/widgets/table/config.ts +0 -75
- package/src/widgets/table/hooks/use-pagination.test.ts +0 -294
- package/src/widgets/table/hooks/use-pagination.ts +0 -148
- package/src/widgets/table/hooks/use-selection.test.ts +0 -504
- package/src/widgets/table/hooks/use-selection.ts +0 -194
- package/src/widgets/table/hooks/use-sort.test.ts +0 -296
- package/src/widgets/table/hooks/use-sort.ts +0 -131
- package/src/widgets/table/serializer.ts +0 -54
- package/src/widgets/timeseries/config.ts +0 -136
- package/src/widgets/timeseries/style.ts +0 -36
- package/src/widgets/toolbar-actions/index.ts +0 -6
- package/src/widgets/toolbar-actions/styles.ts +0 -38
- package/src/widgets/toolbar-actions/toolbar-actions.test.tsx +0 -691
- package/src/widgets/toolbar-actions/toolbar-actions.tsx +0 -145
- package/src/widgets/toolbar-actions/types.ts +0 -60
- package/src/widgets/utils/chart-config/config-factory.ts +0 -67
- package/src/widgets/utils/chart-config/csv-modifiers.ts +0 -56
- package/src/widgets/utils/chart-config/download-config.ts +0 -22
- package/src/widgets/utils/chart-config/index.ts +0 -29
- package/src/widgets/utils/formatter.ts +0 -2
- package/src/widgets/utils/skeleton/index.ts +0 -5
- package/src/widgets/utils/skeleton/styles.ts +0 -20
- package/src/widgets/wrapper/components/actions.test.tsx +0 -105
- package/src/widgets/wrapper/components/actions.tsx +0 -35
- package/src/widgets/wrapper/components/options.test.tsx +0 -331
- package/src/widgets/wrapper/components/options.tsx +0 -81
- package/src/widgets/wrapper/components/title.test.tsx +0 -126
- package/src/widgets/wrapper/components/title.tsx +0 -35
- package/src/widgets/wrapper/styles.ts +0 -98
- package/src/widgets/wrapper/types.ts +0 -55
- package/src/widgets/wrapper/wrapper-ui.test.tsx +0 -232
- package/src/widgets/wrapper/wrapper-ui.tsx +0 -72
- package/src/widgets/wrapper/wrapper.test.tsx +0 -365
- package/src/widgets/wrapper/wrapper.tsx +0 -60
- package/src/widgets-v2/actions/brush-toggle/brush-toggle.test.tsx +0 -180
- package/src/widgets-v2/actions/brush-toggle/brush-toggle.tsx +0 -154
- package/src/widgets-v2/actions/change-column/change-column-icon.tsx +0 -14
- package/src/widgets-v2/actions/change-column/change-column.test.tsx +0 -59
- package/src/widgets-v2/actions/change-column/change-column.tsx +0 -189
- package/src/widgets-v2/actions/change-column/sortable-column-item.tsx +0 -63
- package/src/widgets-v2/actions/change-column/types.ts +0 -11
- package/src/widgets-v2/actions/download/download.test.tsx +0 -327
- package/src/widgets-v2/actions/download/download.tsx +0 -146
- package/src/widgets-v2/actions/download/exports.test.tsx +0 -198
- package/src/widgets-v2/actions/download/types.ts +0 -46
- package/src/widgets-v2/actions/fullscreen/fullscreen.test.tsx +0 -210
- package/src/widgets-v2/actions/fullscreen/fullscreen.tsx +0 -416
- package/src/widgets-v2/actions/fullscreen/types.ts +0 -15
- package/src/widgets-v2/actions/index.ts +0 -96
- package/src/widgets-v2/actions/lock-selection/lock-selection.test.tsx +0 -301
- package/src/widgets-v2/actions/lock-selection/lock-selection.tsx +0 -188
- package/src/widgets-v2/actions/relative-data/relative-data.test.tsx +0 -71
- package/src/widgets-v2/actions/relative-data/relative-data.tsx +0 -107
- package/src/widgets-v2/actions/searcher/searcher-toggle.tsx +0 -96
- package/src/widgets-v2/actions/searcher/searcher.tsx +0 -127
- package/src/widgets-v2/actions/stack-toggle/stack-toggle.test.tsx +0 -61
- package/src/widgets-v2/actions/stack-toggle/stack-toggle.tsx +0 -54
- package/src/widgets-v2/actions/stack-toggle/style.ts +0 -11
- package/src/widgets-v2/actions/zoom-toggle/style.ts +0 -11
- package/src/widgets-v2/actions/zoom-toggle/zoom-toggle.test.tsx +0 -107
- package/src/widgets-v2/actions/zoom-toggle/zoom-toggle.tsx +0 -106
- package/src/widgets-v2/bar/download.tsx +0 -61
- package/src/widgets-v2/bar/index.ts +0 -10
- package/src/widgets-v2/bar/skeleton.tsx +0 -69
- package/src/widgets-v2/bar/types.ts +0 -51
- package/src/widgets-v2/category/category-ui.test.tsx +0 -909
- package/src/widgets-v2/category/category-ui.tsx +0 -490
- package/src/widgets-v2/category/components/category-bar.tsx +0 -49
- package/src/widgets-v2/category/components/category-legend.tsx +0 -82
- package/src/widgets-v2/category/components/category-row-multi.tsx +0 -86
- package/src/widgets-v2/category/components/category-row-other.tsx +0 -84
- package/src/widgets-v2/category/components/category-row-single.tsx +0 -76
- package/src/widgets-v2/category/download.ts +0 -51
- package/src/widgets-v2/category/index.ts +0 -32
- package/src/widgets-v2/category/skeleton.tsx +0 -74
- package/src/widgets-v2/category/style.ts +0 -329
- package/src/widgets-v2/category/types.ts +0 -61
- package/src/widgets-v2/echart/echart-ui.test.tsx +0 -330
- package/src/widgets-v2/echart/echart-ui.tsx +0 -236
- package/src/widgets-v2/echart/echart.test.tsx +0 -229
- package/src/widgets-v2/echart/echart.tsx +0 -209
- package/src/widgets-v2/echart/index.ts +0 -22
- package/src/widgets-v2/echart/shared-resize-observer.ts +0 -56
- package/src/widgets-v2/formula/formula-ui.test.tsx +0 -91
- package/src/widgets-v2/formula/formula-ui.tsx +0 -66
- package/src/widgets-v2/formula/index.ts +0 -17
- package/src/widgets-v2/formula/skeleton.tsx +0 -27
- package/src/widgets-v2/formula/style.ts +0 -31
- package/src/widgets-v2/formula/types.ts +0 -48
- package/src/widgets-v2/histogram/index.ts +0 -13
- package/src/widgets-v2/histogram/skeleton.tsx +0 -70
- package/src/widgets-v2/histogram/types.ts +0 -64
- package/src/widgets-v2/markdown/index.ts +0 -6
- package/src/widgets-v2/markdown/markdown-ui.test.tsx +0 -75
- package/src/widgets-v2/markdown/markdown-ui.tsx +0 -55
- package/src/widgets-v2/markdown/markdown.tsx +0 -17
- package/src/widgets-v2/markdown/skeleton.tsx +0 -32
- package/src/widgets-v2/markdown/style.ts +0 -53
- package/src/widgets-v2/markdown/types.ts +0 -4
- package/src/widgets-v2/note/style.ts +0 -26
- package/src/widgets-v2/pie/index.ts +0 -10
- package/src/widgets-v2/pie/skeleton.tsx +0 -94
- package/src/widgets-v2/pie/types.ts +0 -62
- package/src/widgets-v2/range/index.ts +0 -4
- package/src/widgets-v2/range/range-ui.test.tsx +0 -136
- package/src/widgets-v2/range/range-ui.tsx +0 -278
- package/src/widgets-v2/range/skeleton.tsx +0 -47
- package/src/widgets-v2/range/style.ts +0 -41
- package/src/widgets-v2/range/types.ts +0 -37
- package/src/widgets-v2/scatterplot/download.ts +0 -51
- package/src/widgets-v2/scatterplot/index.ts +0 -14
- package/src/widgets-v2/scatterplot/skeleton.tsx +0 -84
- package/src/widgets-v2/scatterplot/types.ts +0 -59
- package/src/widgets-v2/selection-summary/selection-summary.tsx +0 -82
- package/src/widgets-v2/selection-summary/style.ts +0 -38
- package/src/widgets-v2/spread/download.ts +0 -56
- package/src/widgets-v2/spread/index.ts +0 -11
- package/src/widgets-v2/spread/skeleton.tsx +0 -38
- package/src/widgets-v2/spread/spread-ui.test.tsx +0 -108
- package/src/widgets-v2/spread/spread-ui.tsx +0 -52
- package/src/widgets-v2/spread/types.ts +0 -27
- package/src/widgets-v2/stores/index.ts +0 -49
- package/src/widgets-v2/stores/types.ts +0 -64
- package/src/widgets-v2/subheader/style.ts +0 -12
- package/src/widgets-v2/subheader/subheader.test.tsx +0 -30
- package/src/widgets-v2/subheader/subheader.tsx +0 -16
- package/src/widgets-v2/table/download.ts +0 -44
- package/src/widgets-v2/table/helpers.test.ts +0 -233
- package/src/widgets-v2/table/helpers.ts +0 -131
- package/src/widgets-v2/table/index.ts +0 -24
- package/src/widgets-v2/table/skeleton.tsx +0 -65
- package/src/widgets-v2/table/style.ts +0 -43
- package/src/widgets-v2/table/table-ui.tsx +0 -364
- package/src/widgets-v2/table/types.ts +0 -55
- package/src/widgets-v2/timeseries/index.ts +0 -11
- package/src/widgets-v2/timeseries/skeleton.tsx +0 -76
- package/src/widgets-v2/timeseries/types.ts +0 -65
- package/src/widgets-v2/utils/index.ts +0 -3
- package/src/widgets-v2/wrapper/index.ts +0 -14
- /package/dist/types/{widgets-v2 → widgets}/actions/brush-toggle/index.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/brush-toggle/labels.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/brush-toggle/transforms.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/change-column/index.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/change-column/labels.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/change-column/style.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/download/constants.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/download/csv-item.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/download/icons.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/download/labels.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/download/style.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/fullscreen/index.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/fullscreen/labels.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/fullscreen/style.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/lock-selection/index.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/lock-selection/labels.d.ts +0 -0
- /package/dist/types/{widgets-v2/actions/brush-toggle → widgets/actions/lock-selection}/style.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/lock-selection/transforms.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/relative-data/index.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/relative-data/labels.d.ts +0 -0
- /package/dist/types/{widgets-v2/actions/lock-selection → widgets/actions/relative-data}/style.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/searcher/filter.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/searcher/index.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/searcher/labels.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/searcher/style.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/show-all/index.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/show-all/labels.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/show-all/show-all.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/show-all/style.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/stack-toggle/index.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/stack-toggle/labels.d.ts +0 -0
- /package/dist/types/{widgets-v2/actions/relative-data → widgets/actions/stack-toggle}/style.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/stack-toggle/transforms.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/zoom-toggle/index.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/zoom-toggle/labels.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/actions/zoom-toggle/transforms.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/bar/options.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/category/category.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/echart/edge-label-clamp.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/echart/style.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/echart/use-chart-selection.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/formula/delta.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/formula/formula.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/formula/note.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/formula/prefix.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/formula/suffix.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/histogram/options.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/histogram/transforms.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/markdown/markdown-content.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/note/labels.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/note/widget-note.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/pie/options.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/provider/widget-provider.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/range/range.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/scatterplot/options.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/scatterplot/transforms.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/selection-summary/labels.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/spread/band.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/spread/separator.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/spread/spread.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/state/labels.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/state/style.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/state/widget-state.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/stores/pipeline-middleware.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/stores/transforms.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/stores/use-echart-instance.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/stores/use-transform-enabled.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/stores/use-transform.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/stores/widget-context.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/table/labels.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/table/table.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/table/transforms.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/timeseries/options.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/timeseries/transforms.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/toolbox/labels.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/toolbox/style.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/toolbox/toolbox.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/utils/data-zoom-layout.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/utils/merge-options.d.ts +0 -0
- /package/dist/types/widgets/utils/{chart-config/option-builders.d.ts → option-builders.d.ts} +0 -0
- /package/dist/types/{widgets-v2 → widgets}/utils/resolve-theme-color.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/wrapper/labels.d.ts +0 -0
- /package/dist/types/{widgets-v2 → widgets}/wrapper/widget-content.d.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/brush-toggle/index.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/brush-toggle/labels.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/brush-toggle/transforms.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/brush-toggle/transforms.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/change-column/index.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/change-column/labels.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/change-column/style.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/download/constants.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/download/csv-item.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/actions/download/csv-item.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/actions/download/icons.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/actions/download/labels.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/download/png-item.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/actions/download/style.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/fullscreen/fullscreen-store.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/actions/fullscreen/index.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/fullscreen/labels.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/fullscreen/style.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/lock-selection/index.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/lock-selection/labels.ts +0 -0
- /package/src/{widgets-v2/actions/brush-toggle → widgets/actions/lock-selection}/style.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/lock-selection/transforms.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/relative-data/index.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/relative-data/labels.ts +0 -0
- /package/src/{widgets-v2/actions/lock-selection → widgets/actions/relative-data}/style.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/relative-data/transforms.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/searcher/filter.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/searcher/filter.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/searcher/index.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/searcher/labels.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/searcher/searcher.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/actions/searcher/style.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/show-all/index.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/show-all/labels.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/show-all/show-all.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/actions/show-all/show-all.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/actions/show-all/style.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/stack-toggle/index.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/stack-toggle/labels.ts +0 -0
- /package/src/{widgets-v2/actions/relative-data → widgets/actions/stack-toggle}/style.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/stack-toggle/transforms.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/stack-toggle/transforms.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/zoom-toggle/index.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/zoom-toggle/labels.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/zoom-toggle/transforms.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/actions/zoom-toggle/transforms.ts +0 -0
- /package/src/{widgets-v2 → widgets}/bar/download.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/bar/options.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/bar/skeleton.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/category/category.relative-data.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/category/category.stack-toggle.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/category/category.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/category/components/category-bar-stacked.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/category/components/category-bar.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/category/components/category-row-other.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/category/components/category-row-stacked.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/category/download.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/category/skeleton.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/echart/edge-label-clamp.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/echart/edge-label-clamp.ts +0 -0
- /package/src/{widgets-v2 → widgets}/echart/shared-resize-observer.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/echart/use-chart-selection.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/echart/use-chart-selection.ts +0 -0
- /package/src/{widgets-v2 → widgets}/formula/delta.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/formula/download.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/formula/formula.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/formula/formula.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/formula/prefix.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/formula/skeleton.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/formula/subcomponents.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/formula/suffix.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/histogram/download.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/histogram/options.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/histogram/skeleton.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/histogram/transforms.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/histogram/transforms.ts +0 -0
- /package/src/{widgets-v2 → widgets}/markdown/download.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/markdown/markdown-content.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/markdown/markdown-content.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/markdown/markdown.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/markdown/skeleton.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/note/labels.ts +0 -0
- /package/src/{widgets-v2 → widgets}/note/widget-note.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/pie/download.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/pie/options.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/pie/skeleton.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/provider/widget-provider.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/provider/widget-provider.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/range/range.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/range/range.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/range/skeleton.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/scatterplot/download.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/scatterplot/options.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/scatterplot/skeleton.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/scatterplot/transforms.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/scatterplot/transforms.ts +0 -0
- /package/src/{widgets-v2 → widgets}/selection-summary/labels.ts +0 -0
- /package/src/{widgets-v2 → widgets}/selection-summary/selection-summary.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/spread/band.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/spread/band.ts +0 -0
- /package/src/{widgets-v2 → widgets}/spread/download.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/spread/separator.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/spread/skeleton.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/spread/spread.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/spread/spread.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/state/labels.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/state/labels.ts +0 -0
- /package/src/{widgets-v2 → widgets}/state/style.ts +0 -0
- /package/src/{widgets-v2 → widgets}/state/widget-state.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/stores/pipeline-middleware.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/stores/pipeline-middleware.ts +0 -0
- /package/src/{widgets-v2 → widgets}/stores/transforms.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/stores/use-echart-instance.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/stores/use-echart-instance.ts +0 -0
- /package/src/{widgets-v2 → widgets}/stores/use-transform-enabled.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/stores/use-transform-enabled.ts +0 -0
- /package/src/{widgets-v2 → widgets}/stores/use-transform.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/stores/widget-context.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/stores/widget-context.ts +0 -0
- /package/src/{widgets-v2 → widgets}/table/download.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/table/labels.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/table/skeleton.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/table/table-ui.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/table/table.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/table/table.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/table/transforms.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/table/transforms.ts +0 -0
- /package/src/{widgets-v2 → widgets}/timeseries/download.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/timeseries/options.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/timeseries/skeleton.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/timeseries/transforms.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/timeseries/transforms.ts +0 -0
- /package/src/{widgets-v2 → widgets}/toolbox/labels.ts +0 -0
- /package/src/{widgets-v2 → widgets}/toolbox/style.ts +0 -0
- /package/src/{widgets-v2 → widgets}/toolbox/toolbox.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/toolbox/toolbox.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/utils/data-zoom-layout.ts +0 -0
- /package/src/{widgets-v2 → widgets}/utils/merge-options.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/utils/merge-options.ts +0 -0
- /package/src/widgets/utils/{chart-config/option-builders.test.ts → option-builders.test.ts} +0 -0
- /package/src/widgets/utils/{chart-config/option-builders.ts → option-builders.ts} +0 -0
- /package/src/{widgets-v2 → widgets}/utils/resolve-theme-color.test.ts +0 -0
- /package/src/{widgets-v2 → widgets}/utils/resolve-theme-color.ts +0 -0
- /package/src/{widgets-v2 → widgets}/wrapper/labels.ts +0 -0
- /package/src/{widgets-v2 → widgets}/wrapper/widget-actions.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/wrapper/widget-content.test.tsx +0 -0
- /package/src/{widgets-v2 → widgets}/wrapper/widget-content.tsx +0 -0
|
@@ -1,490 +0,0 @@
|
|
|
1
|
-
import { useCallback, useMemo, useRef, useState } from 'react'
|
|
2
|
-
import { Box, useTheme } from '@mui/material'
|
|
3
|
-
import { CategoryRowSingle } from './components/category-row-single'
|
|
4
|
-
import { CategoryRowMulti } from './components/category-row-multi'
|
|
5
|
-
import { CategoryRowStacked } from './components/category-row-stacked'
|
|
6
|
-
import { CategoryRowOther } from './components/category-row-other'
|
|
7
|
-
import { CategoryLegend } from './components/category-legend'
|
|
8
|
-
import type {
|
|
9
|
-
CategoryKey,
|
|
10
|
-
CategoryLabels,
|
|
11
|
-
CategorySeriesConfig,
|
|
12
|
-
CategorySize,
|
|
13
|
-
CategoryWidgetData,
|
|
14
|
-
} from './types'
|
|
15
|
-
import { styles } from './style'
|
|
16
|
-
|
|
17
|
-
const DEFAULT_MAX_ITEMS = 20
|
|
18
|
-
|
|
19
|
-
// Fallback viewport height used in scroll mode ONLY when no natural
|
|
20
|
-
// measurement is available yet — i.e., the consumer mounts directly into
|
|
21
|
-
// `maxItems === 0` (e.g., SearcherToggle pre-enabled), so the list has
|
|
22
|
-
// never rendered in capped form for us to measure.
|
|
23
|
-
//
|
|
24
|
-
// small: label(~20) + gap(4) + bar(4) + list-gap(8) ≈ 36
|
|
25
|
-
// medium: label(~20) + gap(4) + bar(12) + list-gap(8) ≈ 44
|
|
26
|
-
const ROW_HEIGHT_PX: Record<CategorySize, number> = { small: 36, medium: 44 }
|
|
27
|
-
const SCROLL_VIEWPORT_FALLBACK_ROWS = 8
|
|
28
|
-
|
|
29
|
-
export interface CategoryUIProps {
|
|
30
|
-
data: CategoryWidgetData
|
|
31
|
-
/** Currently-selected category names (destination-owned). */
|
|
32
|
-
selection?: readonly CategoryKey[]
|
|
33
|
-
/** Fires with the next selection set when a row is clicked. */
|
|
34
|
-
onSelectionChange?: (next: readonly CategoryKey[]) => void
|
|
35
|
-
/** Number formatter applied to each row's value. */
|
|
36
|
-
formatter?: (value: number) => string
|
|
37
|
-
/**
|
|
38
|
-
* Display-only transform for category names. Selection callbacks always
|
|
39
|
-
* receive the raw `item.name` regardless of this formatter.
|
|
40
|
-
*/
|
|
41
|
-
labelFormatter?: (value: string | number) => string | number
|
|
42
|
-
/**
|
|
43
|
-
* Per-series metadata. Enables the legend (for multi-series) and
|
|
44
|
-
* overrides palette colors per series index. Length need not match
|
|
45
|
-
* `data.length`; mismatches degrade gracefully (extras ignored, gaps
|
|
46
|
-
* fall back to palette).
|
|
47
|
-
*/
|
|
48
|
-
series?: readonly CategorySeriesConfig[]
|
|
49
|
-
/**
|
|
50
|
-
* Caps the number of visible category rows.
|
|
51
|
-
*
|
|
52
|
-
* - `undefined` (omitted) — caps at {@link DEFAULT_MAX_ITEMS} (20).
|
|
53
|
-
* Surplus rows fold into a single "Others <count>" footer row.
|
|
54
|
-
* `undefined` cannot mean "no cap" because it's consumed by the
|
|
55
|
-
* default-parameter syntax — pass `null` instead.
|
|
56
|
-
* - positive finite N — same as the default but with a custom cap.
|
|
57
|
-
* - `0` — **no cap WITH scroll**: every row renders inside a
|
|
58
|
-
* fixed-height viewport that scrolls internally. The viewport's
|
|
59
|
-
* max-height is the list's natural `clientHeight` measured on the
|
|
60
|
-
* first render where the list was NOT in scroll mode (i.e., the
|
|
61
|
-
* capped view) — frozen for the component's lifetime. If the
|
|
62
|
-
* consumer mounts directly into scroll mode and we never see a
|
|
63
|
-
* capped render, the viewport falls back to `8 × ROW_HEIGHT_PX`.
|
|
64
|
-
* Composers flip into this mode while the user is searching
|
|
65
|
-
* (`maxItems = searcherOpen ? 0 : userMaxItems`) so the widget
|
|
66
|
-
* card height stays stable.
|
|
67
|
-
* - `null` / `Infinity` / negative — **no cap, no scroll**: render
|
|
68
|
-
* every row; the list grows with content. Matches v1's "undefined"
|
|
69
|
-
* behavior. Use `null` as the canonical explicit form.
|
|
70
|
-
*/
|
|
71
|
-
maxItems?: number | null
|
|
72
|
-
/** Labels for the "Other" overflow row. `{count}` placeholder is replaced. */
|
|
73
|
-
labels?: CategoryLabels
|
|
74
|
-
/**
|
|
75
|
-
* When provided, the "Other" overflow row becomes a button — clicking it
|
|
76
|
-
* fires `onShowAll`, which a composer typically wires to expand the widget
|
|
77
|
-
* (drop the row cap) so every category becomes reachable. When omitted the
|
|
78
|
-
* overflow row stays a static summary.
|
|
79
|
-
*/
|
|
80
|
-
onShowAll?: () => void
|
|
81
|
-
/** Manual override for the bar-width denominator. */
|
|
82
|
-
maxOverride?: number
|
|
83
|
-
/**
|
|
84
|
-
* Visual density of the bar primitive. `'small'` (default) keeps the
|
|
85
|
-
* historical 4px-tall pill; `'medium'` switches to a 12px-tall track
|
|
86
|
-
* with a 2px corner radius. Only the bar track + fill change.
|
|
87
|
-
*/
|
|
88
|
-
size?: CategorySize
|
|
89
|
-
/**
|
|
90
|
-
* Multi-series stacked mode. When `true` and `data.length > 1`, each
|
|
91
|
-
* category renders as a single segmented bar (one segment per series)
|
|
92
|
-
* with a `formatter(sum)` total in the header and a per-series
|
|
93
|
-
* breakdown line below. Composers typically thread this from
|
|
94
|
-
* `useTransformEnabled(id, 'stack-toggle')`.
|
|
95
|
-
*
|
|
96
|
-
* No-op for single-series data — same convention as the legend.
|
|
97
|
-
*/
|
|
98
|
-
stacked?: boolean
|
|
99
|
-
/**
|
|
100
|
-
* Series indices hidden via the legend. Leave both this and
|
|
101
|
-
* `onHiddenSeriesChange` unset and CategoryUI keeps the set itself; pass
|
|
102
|
-
* them to own it — `Category` does, so the card and the fullscreen copy
|
|
103
|
-
* share it through the widget store.
|
|
104
|
-
*/
|
|
105
|
-
hiddenSeries?: ReadonlySet<number>
|
|
106
|
-
onHiddenSeriesChange?: (next: ReadonlySet<number>) => void
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
interface GroupedRow {
|
|
110
|
-
name: CategoryKey
|
|
111
|
-
values: number[]
|
|
112
|
-
/** Per-series per-row color override (first non-undefined wins). */
|
|
113
|
-
rowColors: (string | undefined)[]
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
/**
|
|
117
|
-
* The hidden set as the chart applies it: indices past the current series
|
|
118
|
-
* count are ignored, and an all-hidden result falls back to all visible.
|
|
119
|
-
* The stored set is never rewritten from here, so hidden indices survive a
|
|
120
|
-
* data shrink and come back if the data regrows.
|
|
121
|
-
*/
|
|
122
|
-
function effectiveHidden(
|
|
123
|
-
hidden: ReadonlySet<number>,
|
|
124
|
-
seriesCount: number,
|
|
125
|
-
): Set<number> {
|
|
126
|
-
const clamped = new Set([...hidden].filter((i) => i < seriesCount))
|
|
127
|
-
return clamped.size >= seriesCount ? new Set<number>() : clamped
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
/**
|
|
131
|
-
* Group items by `name` across series so each unique name produces one
|
|
132
|
-
* row containing N values (zero-filled where a series has no entry for
|
|
133
|
-
* that name). First-seen order across series is preserved.
|
|
134
|
-
*
|
|
135
|
-
* Ported from v1
|
|
136
|
-
* (`packages/react-ui/src/widgets/category/category-ui.tsx:137-166`)
|
|
137
|
-
* with readonly typing + per-row color capture.
|
|
138
|
-
*/
|
|
139
|
-
function generateGroupedData(data: CategoryWidgetData): GroupedRow[] {
|
|
140
|
-
if (!data || data.length === 0) return []
|
|
141
|
-
const seriesCount = Math.max(data.length, 1)
|
|
142
|
-
const grouped = new Map<CategoryKey, GroupedRow>()
|
|
143
|
-
const order: CategoryKey[] = []
|
|
144
|
-
for (let s = 0; s < data.length; s++) {
|
|
145
|
-
const series = data[s] ?? []
|
|
146
|
-
for (const item of series) {
|
|
147
|
-
let row = grouped.get(item.name)
|
|
148
|
-
if (!row) {
|
|
149
|
-
row = {
|
|
150
|
-
name: item.name,
|
|
151
|
-
values: new Array<number>(seriesCount).fill(0),
|
|
152
|
-
rowColors: new Array<string | undefined>(seriesCount).fill(undefined),
|
|
153
|
-
}
|
|
154
|
-
grouped.set(item.name, row)
|
|
155
|
-
order.push(item.name)
|
|
156
|
-
}
|
|
157
|
-
row.values[s] = item.value
|
|
158
|
-
row.rowColors[s] = item.color
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
return order.map((k) => grouped.get(k)!)
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
/**
|
|
165
|
-
* Pure presentational component for the Category widget. Renders
|
|
166
|
-
* single-series rows (`data.length === 1`) as a compact grid or
|
|
167
|
-
* multi-series rows (`data.length > 1`) as stacked-bar groups, capped at
|
|
168
|
-
* `maxItems` with an overflow summary, and an optional sticky color
|
|
169
|
-
* legend when `series` metadata is supplied.
|
|
170
|
-
*
|
|
171
|
-
* Selection is destination-owned: clicking a row fires
|
|
172
|
-
* `onSelectionChange(next)` with the toggled set; the consumer keeps the
|
|
173
|
-
* list in their own store. `aria-pressed` + Enter/Space keyboard
|
|
174
|
-
* activation give full a11y parity with the mouse path.
|
|
175
|
-
*
|
|
176
|
-
* Returns `null` when there's nothing to render — `Widget.State` is the
|
|
177
|
-
* empty-state authority in the canonical compositor.
|
|
178
|
-
*/
|
|
179
|
-
export function CategoryUI({
|
|
180
|
-
data,
|
|
181
|
-
selection,
|
|
182
|
-
onSelectionChange,
|
|
183
|
-
formatter,
|
|
184
|
-
labelFormatter,
|
|
185
|
-
series,
|
|
186
|
-
maxItems = DEFAULT_MAX_ITEMS,
|
|
187
|
-
labels,
|
|
188
|
-
onShowAll,
|
|
189
|
-
maxOverride,
|
|
190
|
-
size = 'small',
|
|
191
|
-
stacked = false,
|
|
192
|
-
hiddenSeries: hiddenSeriesProp,
|
|
193
|
-
onHiddenSeriesChange,
|
|
194
|
-
}: CategoryUIProps) {
|
|
195
|
-
const theme = useTheme()
|
|
196
|
-
const fmt = formatter ?? ((n: number) => String(n))
|
|
197
|
-
|
|
198
|
-
const hasSelection = !!selection && selection.length > 0
|
|
199
|
-
const selectionSet = useMemo(
|
|
200
|
-
() => new Set<CategoryKey>(selection ?? []),
|
|
201
|
-
[selection],
|
|
202
|
-
)
|
|
203
|
-
|
|
204
|
-
const toggle = useCallback(
|
|
205
|
-
(name: CategoryKey) => {
|
|
206
|
-
if (!onSelectionChange) return
|
|
207
|
-
const cur = selection ?? []
|
|
208
|
-
const next = cur.includes(name)
|
|
209
|
-
? cur.filter((n) => n !== name)
|
|
210
|
-
: [...cur, name]
|
|
211
|
-
onSelectionChange(next)
|
|
212
|
-
},
|
|
213
|
-
[onSelectionChange, selection],
|
|
214
|
-
)
|
|
215
|
-
|
|
216
|
-
// Palette: same convention as Bar/Pie/Histogram/Scatterplot/Timeseries v2.
|
|
217
|
-
const paletteColors = useMemo<readonly string[]>(
|
|
218
|
-
() => [
|
|
219
|
-
theme.palette.secondary.main,
|
|
220
|
-
...Object.values(
|
|
221
|
-
(theme.palette as { qualitative?: { bold?: Record<string, string> } })
|
|
222
|
-
.qualitative?.bold ?? {},
|
|
223
|
-
),
|
|
224
|
-
],
|
|
225
|
-
[theme],
|
|
226
|
-
)
|
|
227
|
-
|
|
228
|
-
const colorAt = useCallback(
|
|
229
|
-
(seriesIndex: number, rowColor?: string): string => {
|
|
230
|
-
if (rowColor) return rowColor
|
|
231
|
-
const seriesColor = series?.[seriesIndex]?.color
|
|
232
|
-
if (seriesColor) return seriesColor
|
|
233
|
-
return (
|
|
234
|
-
paletteColors[seriesIndex % paletteColors.length] ??
|
|
235
|
-
theme.palette.secondary.main
|
|
236
|
-
)
|
|
237
|
-
},
|
|
238
|
-
[series, paletteColors, theme],
|
|
239
|
-
)
|
|
240
|
-
|
|
241
|
-
// Dim color for non-selected rows when a selection exists. Swapped in
|
|
242
|
-
// at the bar-fill level only — text + track stay at their real colors.
|
|
243
|
-
// Theme-driven so it survives palette swaps.
|
|
244
|
-
const dimColor = theme.palette.action.disabled
|
|
245
|
-
|
|
246
|
-
const grouped = useMemo(() => generateGroupedData(data), [data])
|
|
247
|
-
|
|
248
|
-
const maxValue = useMemo(() => {
|
|
249
|
-
if (typeof maxOverride === 'number' && maxOverride > 0) return maxOverride
|
|
250
|
-
let m = 0
|
|
251
|
-
for (const row of grouped) {
|
|
252
|
-
for (const v of row.values) if (v > m) m = v
|
|
253
|
-
}
|
|
254
|
-
return m
|
|
255
|
-
}, [grouped, maxOverride])
|
|
256
|
-
|
|
257
|
-
// Three modes:
|
|
258
|
-
// * positive finite N (default `DEFAULT_MAX_ITEMS = 20` when prop
|
|
259
|
-
// omitted): cap at N rows; surplus folds into "Others <count>".
|
|
260
|
-
// * `0`: no cap WITH scroll — every row renders, the list locks to a
|
|
261
|
-
// fixed viewport and scrolls internally. Composers use this to
|
|
262
|
-
// bypass pagination while the user is searching:
|
|
263
|
-
// `maxItems = searcherOpen ? 0 : userMaxItems`
|
|
264
|
-
// * `null` / `Infinity` / negative: no cap, no scroll — every row
|
|
265
|
-
// renders and the list grows with content. `null` is the canonical
|
|
266
|
-
// explicit form (`undefined` is consumed by the default param above).
|
|
267
|
-
const scrollMode = maxItems === 0
|
|
268
|
-
|
|
269
|
-
// Natural-height measurement. In scroll mode (`maxItems === 0`,
|
|
270
|
-
// set by the composer when the SearcherToggle is open) every row
|
|
271
|
-
// renders inside a scrollable viewport. The viewport's max-height
|
|
272
|
-
// must match the pre-overflow content area — i.e., whatever the
|
|
273
|
-
// list was rendering BEFORE the composer dropped the cap.
|
|
274
|
-
//
|
|
275
|
-
// We measure the list's `clientHeight` exactly once, the first time
|
|
276
|
-
// it attaches while NOT in scroll mode (otherwise we'd capture the
|
|
277
|
-
// wrong layout). Once set, `naturalHeight` is the lock anchor
|
|
278
|
-
// forever — matches v1's frozen-at-mount semantics, just with a
|
|
279
|
-
// real DOM measurement instead of a hard-coded constant.
|
|
280
|
-
//
|
|
281
|
-
// Implemented via a callback ref instead of `useLayoutEffect` so
|
|
282
|
-
// setState fires during commit, not inside an effect — satisfies
|
|
283
|
-
// the `react-hooks/set-state-in-effect` rule. React invokes
|
|
284
|
-
// callback refs on attach (and re-invokes them when the callback
|
|
285
|
-
// identity changes, which it does when `scrollMode` flips), so
|
|
286
|
-
// toggling the searcher off after a scroll-mode mount triggers the
|
|
287
|
-
// first measurement at that point.
|
|
288
|
-
//
|
|
289
|
-
// Fallback: if the consumer never lands a non-scroll render
|
|
290
|
-
// (e.g., searcher pre-enabled and never closed), `naturalHeight`
|
|
291
|
-
// stays `null` → viewport falls back to `8 × ROW_HEIGHT_PX`.
|
|
292
|
-
const measuredRef = useRef(false)
|
|
293
|
-
const [naturalHeight, setNaturalHeight] = useState<number | null>(null)
|
|
294
|
-
const listRefCallback = useCallback(
|
|
295
|
-
(node: HTMLDivElement | null) => {
|
|
296
|
-
if (!node) return
|
|
297
|
-
if (measuredRef.current) return
|
|
298
|
-
if (scrollMode) return
|
|
299
|
-
const h = node.clientHeight
|
|
300
|
-
if (h > 0) {
|
|
301
|
-
measuredRef.current = true
|
|
302
|
-
setNaturalHeight(h)
|
|
303
|
-
}
|
|
304
|
-
},
|
|
305
|
-
[scrollMode],
|
|
306
|
-
)
|
|
307
|
-
|
|
308
|
-
// Which series are hidden via a legend click. Local UI-only state — not
|
|
309
|
-
// synced to `selection`/`onSelectionChange` (that's row-level filter
|
|
310
|
-
// selection, unrelated). Never allowed to reach "every series hidden":
|
|
311
|
-
// toggling the last visible one instead resets to "all visible" rather
|
|
312
|
-
// than leaving the widget blank.
|
|
313
|
-
const [localHidden, setLocalHidden] = useState<ReadonlySet<number>>(
|
|
314
|
-
() => new Set(),
|
|
315
|
-
)
|
|
316
|
-
const hiddenSeries = hiddenSeriesProp ?? localHidden
|
|
317
|
-
// A reload with a different series breakdown invalidates hidden indices —
|
|
318
|
-
// index 2 may now point at an entirely different series. Reset rather
|
|
319
|
-
// than keep hiding whatever now occupies a stale index. Adjusted directly
|
|
320
|
-
// during render (React's documented "adjusting state when a prop changes"
|
|
321
|
-
// pattern) instead of in a `useEffect`, which would commit the stale
|
|
322
|
-
// hidden-set for one extra frame before the effect fires. Compared by a
|
|
323
|
-
// content-derived key, not the raw `series` reference — an inline
|
|
324
|
-
// `series={[...]}` literal (no useMemo) gets a new reference on every
|
|
325
|
-
// unrelated parent re-render, which would otherwise reset hiddenSeries
|
|
326
|
-
// right after the user hides one.
|
|
327
|
-
const seriesKey = JSON.stringify(series?.map((s) => s.name) ?? [])
|
|
328
|
-
const [prevSeriesKey, setPrevSeriesKey] = useState(seriesKey)
|
|
329
|
-
if (seriesKey !== prevSeriesKey) {
|
|
330
|
-
setPrevSeriesKey(seriesKey)
|
|
331
|
-
setLocalHidden(new Set())
|
|
332
|
-
}
|
|
333
|
-
// Real number of data series — NOT `series?.length`, which is legend
|
|
334
|
-
// metadata and may legitimately be shorter than the actual series count
|
|
335
|
-
// (unnamed trailing series fall back to `Series N`). Using the metadata
|
|
336
|
-
// length here would trip the "never fully hidden" guard early whenever
|
|
337
|
-
// `series` is shorter than `data`.
|
|
338
|
-
const seriesCount = Math.max(data.length, 1)
|
|
339
|
-
const toggleSeries = useCallback(
|
|
340
|
-
(index: number) => {
|
|
341
|
-
// Start from what the user sees, not the stored set: `data` can
|
|
342
|
-
// shrink while the `series` names hold (the reset only watches the
|
|
343
|
-
// names), and a stale index would otherwise count toward the guard
|
|
344
|
-
// below — or make unchecking one series hide a different one.
|
|
345
|
-
const next = effectiveHidden(hiddenSeries, seriesCount)
|
|
346
|
-
if (next.has(index)) next.delete(index)
|
|
347
|
-
else next.add(index)
|
|
348
|
-
;(onHiddenSeriesChange ?? setLocalHidden)(
|
|
349
|
-
next.size >= seriesCount ? new Set() : next,
|
|
350
|
-
)
|
|
351
|
-
},
|
|
352
|
-
[hiddenSeries, onHiddenSeriesChange, seriesCount],
|
|
353
|
-
)
|
|
354
|
-
|
|
355
|
-
if (grouped.length === 0) return null
|
|
356
|
-
|
|
357
|
-
const hasCap =
|
|
358
|
-
typeof maxItems === 'number' && Number.isFinite(maxItems) && maxItems > 0
|
|
359
|
-
const visible = hasCap ? grouped.slice(0, maxItems) : grouped
|
|
360
|
-
const hiddenCount = hasCap ? grouped.length - visible.length : 0
|
|
361
|
-
|
|
362
|
-
const isMulti = data.length > 1
|
|
363
|
-
const hasLegend = isMulti && !!series && series.length > 0
|
|
364
|
-
// Invariant across every row in this render — only depends on
|
|
365
|
-
// `hiddenSeries`/`seriesCount`, not on any particular row's data — so
|
|
366
|
-
// it's computed once here instead of per row inside the render loop.
|
|
367
|
-
const activeHidden = effectiveHidden(hiddenSeries, seriesCount)
|
|
368
|
-
const visibleIdx = Array.from({ length: seriesCount }, (_, i) => i).filter(
|
|
369
|
-
(i) => !activeHidden.has(i),
|
|
370
|
-
)
|
|
371
|
-
|
|
372
|
-
// Fallback viewport height matches the documented "8 × ROW_HEIGHT_PX"
|
|
373
|
-
// (see the constants at the top of the file). Earlier code multiplied
|
|
374
|
-
// this by `seriesCount`, making a 3-series widget render 3× the
|
|
375
|
-
// intended viewport on the first frame before `naturalHeight` was
|
|
376
|
-
// measured — a visible layout jump.
|
|
377
|
-
const scrollMaxHeight = scrollMode
|
|
378
|
-
? (naturalHeight ?? ROW_HEIGHT_PX[size] * SCROLL_VIEWPORT_FALLBACK_ROWS)
|
|
379
|
-
: undefined
|
|
380
|
-
|
|
381
|
-
return (
|
|
382
|
-
<Box sx={styles.root}>
|
|
383
|
-
<Box
|
|
384
|
-
ref={listRefCallback}
|
|
385
|
-
sx={scrollMode ? { ...styles.list, ...styles.listScroll } : styles.list}
|
|
386
|
-
style={
|
|
387
|
-
scrollMaxHeight !== undefined
|
|
388
|
-
? { maxHeight: scrollMaxHeight, overflowY: 'auto' }
|
|
389
|
-
: undefined
|
|
390
|
-
}
|
|
391
|
-
>
|
|
392
|
-
{visible.map((row) => {
|
|
393
|
-
const selected = selectionSet.has(row.name)
|
|
394
|
-
const dimmed = hasSelection && !selected
|
|
395
|
-
const displayName = labelFormatter
|
|
396
|
-
? labelFormatter(row.name)
|
|
397
|
-
: undefined
|
|
398
|
-
// When the row is dimmed, every series' bar fill is replaced
|
|
399
|
-
// with `dimColor`. Text + track are untouched. This is the
|
|
400
|
-
// ONLY visual difference between selected and non-selected
|
|
401
|
-
// rows — no row-level opacity, no `rowSelected` bg tint.
|
|
402
|
-
const fill = (i: number): string =>
|
|
403
|
-
dimmed ? dimColor : colorAt(i, row.rowColors[i])
|
|
404
|
-
// Series hidden via the legend are dropped before reaching the
|
|
405
|
-
// row components — they render whatever arrays they're given
|
|
406
|
-
// with no notion of "hidden" themselves. `visibleIdx` is hoisted
|
|
407
|
-
// above this loop (same for every row).
|
|
408
|
-
if (isMulti) {
|
|
409
|
-
if (stacked) {
|
|
410
|
-
// Stacked-mode branch: one segmented bar per row. Toggling
|
|
411
|
-
// `stacked` after the natural-height measurement does NOT
|
|
412
|
-
// re-trigger measurement (see the `naturalHeight` comment
|
|
413
|
-
// above) — accepted trade-off: stacked rows have a slightly
|
|
414
|
-
// different height, so the scroll viewport may show extra
|
|
415
|
-
// whitespace after the toggle. Visual only, not functional.
|
|
416
|
-
// Stacked rows are per-row normalized — they don't take
|
|
417
|
-
// the global `maxValue`. Each row's bar fills 100% of the
|
|
418
|
-
// track and the segments split it by `value_i / sum`. The
|
|
419
|
-
// numeric total in the header preserves the per-row
|
|
420
|
-
// magnitude information.
|
|
421
|
-
return (
|
|
422
|
-
<CategoryRowStacked
|
|
423
|
-
key={String(row.name)}
|
|
424
|
-
name={row.name}
|
|
425
|
-
displayName={displayName}
|
|
426
|
-
values={visibleIdx.map((i) => row.values[i]!)}
|
|
427
|
-
colors={visibleIdx.map((i) => fill(i))}
|
|
428
|
-
seriesNames={visibleIdx.map(
|
|
429
|
-
(i) => series?.[i]?.name ?? `Series ${i + 1}`,
|
|
430
|
-
)}
|
|
431
|
-
formatter={fmt}
|
|
432
|
-
selected={selected}
|
|
433
|
-
onToggle={toggle}
|
|
434
|
-
size={size}
|
|
435
|
-
/>
|
|
436
|
-
)
|
|
437
|
-
}
|
|
438
|
-
return (
|
|
439
|
-
<CategoryRowMulti
|
|
440
|
-
key={String(row.name)}
|
|
441
|
-
name={row.name}
|
|
442
|
-
displayName={displayName}
|
|
443
|
-
values={visibleIdx.map((i) => row.values[i]!)}
|
|
444
|
-
colors={visibleIdx.map((i) => fill(i))}
|
|
445
|
-
maxValue={maxValue}
|
|
446
|
-
formatter={fmt}
|
|
447
|
-
selected={selected}
|
|
448
|
-
onToggle={toggle}
|
|
449
|
-
size={size}
|
|
450
|
-
/>
|
|
451
|
-
)
|
|
452
|
-
}
|
|
453
|
-
return (
|
|
454
|
-
<CategoryRowSingle
|
|
455
|
-
key={String(row.name)}
|
|
456
|
-
name={row.name}
|
|
457
|
-
displayName={displayName}
|
|
458
|
-
value={row.values[0] ?? 0}
|
|
459
|
-
maxValue={maxValue}
|
|
460
|
-
color={fill(0)}
|
|
461
|
-
formatter={fmt}
|
|
462
|
-
selected={selected}
|
|
463
|
-
onToggle={toggle}
|
|
464
|
-
size={size}
|
|
465
|
-
/>
|
|
466
|
-
)
|
|
467
|
-
})}
|
|
468
|
-
{hiddenCount > 0 && (
|
|
469
|
-
<CategoryRowOther
|
|
470
|
-
hiddenCount={hiddenCount}
|
|
471
|
-
otherLabel={labels?.other}
|
|
472
|
-
otherCountLabel={labels?.otherCount}
|
|
473
|
-
showAllLabel={labels?.showAll}
|
|
474
|
-
onShowAll={onShowAll}
|
|
475
|
-
/>
|
|
476
|
-
)}
|
|
477
|
-
</Box>
|
|
478
|
-
{hasLegend && series && (
|
|
479
|
-
<CategoryLegend
|
|
480
|
-
// Trimmed: `series` is caller metadata and may outrun `data`,
|
|
481
|
-
// and an entry with no data behind it has nothing to hide.
|
|
482
|
-
series={series.slice(0, seriesCount)}
|
|
483
|
-
colorAt={(i) => colorAt(i)}
|
|
484
|
-
hiddenSeries={activeHidden}
|
|
485
|
-
onToggle={toggleSeries}
|
|
486
|
-
/>
|
|
487
|
-
)}
|
|
488
|
-
</Box>
|
|
489
|
-
)
|
|
490
|
-
}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { Box } from '@mui/material'
|
|
2
|
-
import type { CategorySize } from '../types'
|
|
3
|
-
import { styles } from '../style'
|
|
4
|
-
|
|
5
|
-
export interface CategoryBarProps {
|
|
6
|
-
/** Numeric value driving the fill width. */
|
|
7
|
-
value: number
|
|
8
|
-
/** Denominator for the percentage fill. `0` → empty bar (no division by zero). */
|
|
9
|
-
maxValue: number
|
|
10
|
-
/** Fill color. Honors any CSS color or MUI theme token. */
|
|
11
|
-
color: string
|
|
12
|
-
/**
|
|
13
|
-
* Visual density. `'small'` (default) keeps the historical 4px pill;
|
|
14
|
-
* `'medium'` renders a 12px-tall track with a 2px corner radius. Only
|
|
15
|
-
* the bar track + fill change — every other token in the parent row is
|
|
16
|
-
* size-invariant.
|
|
17
|
-
*/
|
|
18
|
-
size?: CategorySize
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* Single horizontal bar (track + proportional fill). Pure presentation.
|
|
23
|
-
* Selection / dimming live at the row level; this component is unaware of
|
|
24
|
-
* both — bars stay vivid regardless of selection state (per the v2
|
|
25
|
-
* "row-bg + row-dim, never muted bar" rule).
|
|
26
|
-
*/
|
|
27
|
-
export function CategoryBar({
|
|
28
|
-
value,
|
|
29
|
-
maxValue,
|
|
30
|
-
color,
|
|
31
|
-
size = 'small',
|
|
32
|
-
}: CategoryBarProps) {
|
|
33
|
-
const pct = maxValue > 0 ? (value / maxValue) * 100 : 0
|
|
34
|
-
// Width + color rendered as inline `style` (not `sx`) to avoid
|
|
35
|
-
// generating a new emotion class for every distinct value/color pair
|
|
36
|
-
// — also makes the rendered DOM testable without computed-style math.
|
|
37
|
-
return (
|
|
38
|
-
<Box sx={styles.bar[size]} data-size={size}>
|
|
39
|
-
<Box
|
|
40
|
-
sx={styles.barFill[size]}
|
|
41
|
-
style={{ width: `${pct}%`, backgroundColor: color }}
|
|
42
|
-
// Tag the fill so an ancestor row's `:hover` selector can target
|
|
43
|
-
// it (`&:hover [data-bar-fill]`) — the brightening affordance now
|
|
44
|
-
// fires from anywhere in the row, not only the bar track.
|
|
45
|
-
data-bar-fill='true'
|
|
46
|
-
/>
|
|
47
|
-
</Box>
|
|
48
|
-
)
|
|
49
|
-
}
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import { Box, Typography } from '@mui/material'
|
|
2
|
-
import type { CategorySeriesConfig } from '../types'
|
|
3
|
-
import { styles } from '../style'
|
|
4
|
-
|
|
5
|
-
export interface CategoryLegendProps {
|
|
6
|
-
/** Series metadata. Empty array → renders nothing. */
|
|
7
|
-
series: readonly CategorySeriesConfig[]
|
|
8
|
-
/**
|
|
9
|
-
* Per-series colour resolver. Receives the series index and returns the
|
|
10
|
-
* palette colour (or `undefined` to fall back to the MUI default). The
|
|
11
|
-
* legend derives its dot colour from this on the fly — the caller does
|
|
12
|
-
* NOT pre-compute a `colors` array (avoids passing two views of the
|
|
13
|
-
* same source).
|
|
14
|
-
*/
|
|
15
|
-
colorAt: (index: number) => string | undefined
|
|
16
|
-
/**
|
|
17
|
-
* Series indices currently hidden from the chart. Renders dimmed.
|
|
18
|
-
* Optional — defaults to none hidden. Added after this component's first
|
|
19
|
-
* release; kept optional (not required) so it stays a non-breaking
|
|
20
|
-
* addition for any direct consumer of `CategoryLegend` (a public
|
|
21
|
-
* subpath export) that predates the hide feature.
|
|
22
|
-
*/
|
|
23
|
-
hiddenSeries?: ReadonlySet<number>
|
|
24
|
-
/**
|
|
25
|
-
* Fires with the series index when its legend item is clicked. Optional
|
|
26
|
-
* — omitting it renders a legend with no hide affordance (same
|
|
27
|
-
* reasoning as `hiddenSeries`).
|
|
28
|
-
*/
|
|
29
|
-
onToggle?: (index: number) => void
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
const NO_HIDDEN_SERIES: ReadonlySet<number> = new Set()
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* Sticky color legend rendered below a multi-series Category list.
|
|
36
|
-
* Per-series `color` overrides the matching `colorAt(i)` result. Clicking an
|
|
37
|
-
* item toggles that series' visibility in the rows above (mirrors ECharts'
|
|
38
|
-
* native legend click-to-hide).
|
|
39
|
-
*/
|
|
40
|
-
export function CategoryLegend({
|
|
41
|
-
series,
|
|
42
|
-
colorAt,
|
|
43
|
-
hiddenSeries = NO_HIDDEN_SERIES,
|
|
44
|
-
onToggle,
|
|
45
|
-
}: CategoryLegendProps) {
|
|
46
|
-
if (series.length === 0) return null
|
|
47
|
-
return (
|
|
48
|
-
<Box sx={styles.legend}>
|
|
49
|
-
{series.map((s, i) => {
|
|
50
|
-
const hidden = hiddenSeries.has(i)
|
|
51
|
-
return (
|
|
52
|
-
<Box
|
|
53
|
-
key={s.name}
|
|
54
|
-
// `checkbox`/`aria-checked`, not `button`/`aria-pressed` — this
|
|
55
|
-
// toggles a persistent visibility state (closer to a checkbox)
|
|
56
|
-
// AND keeps it out of `getByRole('button')` queries that count
|
|
57
|
-
// category ROWS throughout this widget's test suite.
|
|
58
|
-
role='checkbox'
|
|
59
|
-
aria-checked={!hidden}
|
|
60
|
-
tabIndex={0}
|
|
61
|
-
onClick={() => onToggle?.(i)}
|
|
62
|
-
onKeyDown={(e) => {
|
|
63
|
-
if (e.key === 'Enter' || e.key === ' ') {
|
|
64
|
-
e.preventDefault()
|
|
65
|
-
onToggle?.(i)
|
|
66
|
-
}
|
|
67
|
-
}}
|
|
68
|
-
sx={hidden ? styles.legendItemHidden : styles.legendItem}
|
|
69
|
-
>
|
|
70
|
-
<Box
|
|
71
|
-
sx={styles.legendDot}
|
|
72
|
-
style={{ backgroundColor: s.color ?? colorAt(i) }}
|
|
73
|
-
/>
|
|
74
|
-
<Typography variant='caption' sx={styles.legendLabel}>
|
|
75
|
-
{s.name}
|
|
76
|
-
</Typography>
|
|
77
|
-
</Box>
|
|
78
|
-
)
|
|
79
|
-
})}
|
|
80
|
-
</Box>
|
|
81
|
-
)
|
|
82
|
-
}
|