@carto/ps-react-ui 5.0.0-widgets.8 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/actions-CGJD6q0t.js +1318 -0
- package/dist/actions-CGJD6q0t.js.map +1 -0
- package/dist/actions-yPZwFxSZ.js +1004 -0
- package/dist/actions-yPZwFxSZ.js.map +1 -0
- package/dist/category-DGUDabsi.js +829 -0
- package/dist/category-DGUDabsi.js.map +1 -0
- package/dist/chart-config-B_fdIcD3.js +108 -0
- package/dist/chart-config-B_fdIcD3.js.map +1 -0
- package/dist/chat.js +1642 -0
- package/dist/chat.js.map +1 -0
- package/dist/cjs-CBrZjPCj.js +75 -0
- package/dist/cjs-CBrZjPCj.js.map +1 -0
- package/dist/components-FED-ArwH.js +4053 -0
- package/dist/components-FED-ArwH.js.map +1 -0
- package/dist/components.js +5 -1351
- package/dist/copy-button-TTlZONkX.js +34 -0
- package/dist/copy-button-TTlZONkX.js.map +1 -0
- package/dist/csv-modifiers-D6HGC24b.js +26 -0
- package/dist/csv-modifiers-D6HGC24b.js.map +1 -0
- package/dist/download-DdaK3qgC.js +232 -0
- package/dist/download-DdaK3qgC.js.map +1 -0
- package/dist/echart-BkaV3V5G.js +133 -0
- package/dist/echart-BkaV3V5G.js.map +1 -0
- package/dist/echart-DeBgdOtX.js +250 -0
- package/dist/echart-DeBgdOtX.js.map +1 -0
- package/dist/formatter-wVO81tYk.js +6 -0
- package/dist/formatter-wVO81tYk.js.map +1 -0
- package/dist/formula-YfZmmuYX.js +190 -0
- package/dist/formula-YfZmmuYX.js.map +1 -0
- package/dist/formula-noJzQwKo.js +285 -0
- package/dist/formula-noJzQwKo.js.map +1 -0
- package/dist/hooks-zf5gKZYq.js +22 -0
- package/dist/hooks-zf5gKZYq.js.map +1 -0
- package/dist/legend/stores.js +2 -0
- package/dist/legend.js +2284 -0
- package/dist/legend.js.map +1 -0
- package/dist/markdown-2dfL6Cmb.js +165 -0
- package/dist/markdown-2dfL6Cmb.js.map +1 -0
- package/dist/markdown-content-BWUqwx9F.js +8776 -0
- package/dist/markdown-content-BWUqwx9F.js.map +1 -0
- package/dist/range-BCMAl5xf.js +277 -0
- package/dist/range-BCMAl5xf.js.map +1 -0
- package/dist/rolldown-runtime-B0aSnxlc.js +20 -0
- package/dist/row-CvVGBuy_.js +35 -0
- package/dist/row-CvVGBuy_.js.map +1 -0
- package/dist/shared-resize-observer-BEiP2rQt.js +157 -0
- package/dist/shared-resize-observer-BEiP2rQt.js.map +1 -0
- package/dist/smart-tooltip-CwGHCqab.js +34 -0
- package/dist/smart-tooltip-CwGHCqab.js.map +1 -0
- package/dist/spread-Ccpg9fi0.js +149 -0
- package/dist/spread-Ccpg9fi0.js.map +1 -0
- package/dist/stores-mad-9yFn.js +369 -0
- package/dist/stores-mad-9yFn.js.map +1 -0
- package/dist/stores-tiFePP0A.js +243 -0
- package/dist/stores-tiFePP0A.js.map +1 -0
- package/dist/styles-Y-qGBELO.js +13 -0
- package/dist/styles-Y-qGBELO.js.map +1 -0
- package/dist/table-Bx9Uj3U0.js +440 -0
- package/dist/table-Bx9Uj3U0.js.map +1 -0
- package/dist/tooltip-DJUGNZxY.js +23 -0
- package/dist/tooltip-DJUGNZxY.js.map +1 -0
- package/dist/types/chat/bubbles/chat-agent-message-markdown.d.ts +12 -0
- package/dist/types/chat/bubbles/chat-agent-message.d.ts +9 -0
- package/dist/types/chat/bubbles/chat-error-message.d.ts +2 -0
- package/dist/types/chat/bubbles/chat-suggestion-button.d.ts +2 -0
- package/dist/types/chat/bubbles/chat-user-message.d.ts +2 -0
- package/dist/types/chat/bubbles/index.d.ts +5 -0
- package/dist/types/chat/bubbles/styles.d.ts +88 -0
- package/dist/types/chat/const.d.ts +4 -0
- package/dist/types/chat/containers/chat-content.d.ts +2 -0
- package/dist/types/chat/containers/chat-footer.d.ts +2 -0
- package/dist/types/chat/containers/chat-header.d.ts +2 -0
- package/dist/types/chat/containers/chat-starter.d.ts +2 -0
- package/dist/types/chat/containers/index.d.ts +4 -0
- package/dist/types/chat/containers/styles.d.ts +160 -0
- package/dist/types/chat/feedback/chat-actions-container.d.ts +3 -0
- package/dist/types/chat/feedback/chat-loader.d.ts +2 -0
- package/dist/types/chat/feedback/chat-rating-action.d.ts +2 -0
- package/dist/types/chat/feedback/chat-thinking.d.ts +2 -0
- package/dist/types/chat/feedback/chat-tool-code-area.d.ts +2 -0
- package/dist/types/chat/feedback/chat-tool-full-view-dialog.d.ts +2 -0
- package/dist/types/chat/feedback/chat-tool-group.d.ts +2 -0
- package/dist/types/chat/feedback/chat-tool-trace.d.ts +3 -0
- package/dist/types/chat/feedback/get-tool-label.d.ts +2 -0
- package/dist/types/chat/feedback/index.d.ts +8 -0
- package/dist/types/chat/feedback/styles.d.ts +212 -0
- package/dist/types/chat/index.d.ts +21 -0
- package/dist/types/chat/types.d.ts +214 -0
- package/dist/types/chat/use-typewriter.d.ts +32 -0
- package/dist/types/components/basemaps/basemaps.d.ts +21 -1
- package/dist/types/components/basemaps/const.d.ts +1 -1
- package/dist/types/components/basemaps/group-wrapper.d.ts +1 -1
- package/dist/types/components/basemaps/group.d.ts +2 -2
- package/dist/types/components/basemaps/header.d.ts +2 -2
- package/dist/types/components/common-types.d.ts +49 -0
- package/dist/types/components/copy-button/copy-button.d.ts +2 -0
- package/dist/types/components/copy-button/types.d.ts +6 -0
- package/dist/types/components/geolocation-controls/geolocation-controls.d.ts +12 -1
- package/dist/types/components/index.d.ts +37 -20
- package/dist/types/components/lasso-tool/chip.d.ts +2 -2
- package/dist/types/components/lasso-tool/const.d.ts +2 -2
- package/dist/types/components/lasso-tool/edit-confirm-toolbar.d.ts +26 -0
- package/dist/types/components/lasso-tool/geometry-toolbar.d.ts +49 -0
- package/dist/types/components/lasso-tool/icons.d.ts +22 -5
- package/dist/types/components/lasso-tool/lasso-tool-inline.d.ts +36 -3
- package/dist/types/components/lasso-tool/lasso-tool.d.ts +34 -9
- package/dist/types/components/lasso-tool/layer-filters.d.ts +10 -0
- package/dist/types/components/lasso-tool/message.d.ts +7 -0
- package/dist/types/components/lasso-tool/options-sections.d.ts +28 -0
- package/dist/types/components/lasso-tool/styles.d.ts +24 -2
- package/dist/types/components/lasso-tool/toolbar/actions/accept-action.d.ts +13 -0
- package/dist/types/components/lasso-tool/toolbar/actions/action-menu.d.ts +28 -0
- package/dist/types/components/lasso-tool/toolbar/actions/cancel-action.d.ts +13 -0
- package/dist/types/components/lasso-tool/toolbar/actions/color-action.d.ts +44 -0
- package/dist/types/components/lasso-tool/toolbar/actions/delete-action.d.ts +11 -0
- package/dist/types/components/lasso-tool/toolbar/actions/duplicate-action.d.ts +11 -0
- package/dist/types/components/lasso-tool/toolbar/actions/edit-geometry-action.d.ts +13 -0
- package/dist/types/components/lasso-tool/toolbar/actions/edit-properties-action.d.ts +60 -0
- package/dist/types/components/lasso-tool/toolbar/actions/fill-action.d.ts +26 -0
- package/dist/types/components/lasso-tool/toolbar/actions/intersect-action.d.ts +14 -0
- package/dist/types/components/lasso-tool/toolbar/actions/label-action.d.ts +69 -0
- package/dist/types/components/lasso-tool/toolbar/actions/lock-action.d.ts +17 -0
- package/dist/types/components/lasso-tool/toolbar/actions/redo-action.d.ts +14 -0
- package/dist/types/components/lasso-tool/toolbar/actions/split-action.d.ts +14 -0
- package/dist/types/components/lasso-tool/toolbar/actions/stroke-action.d.ts +27 -0
- package/dist/types/components/lasso-tool/toolbar/actions/subtract-action.d.ts +14 -0
- package/dist/types/components/lasso-tool/toolbar/actions/toggle-type-action.d.ts +19 -0
- package/dist/types/components/lasso-tool/toolbar/actions/undo-action.d.ts +14 -0
- package/dist/types/components/lasso-tool/toolbar/actions/union-action.d.ts +14 -0
- package/dist/types/components/lasso-tool/toolbar/button.d.ts +24 -0
- package/dist/types/components/lasso-tool/toolbar/connected.d.ts +55 -0
- package/dist/types/components/lasso-tool/toolbar/context.d.ts +31 -0
- package/dist/types/components/lasso-tool/toolbar/index.d.ts +41 -0
- package/dist/types/components/lasso-tool/toolbar/styles.d.ts +26 -0
- package/dist/types/components/lasso-tool/toolbar/toolbar.d.ts +30 -0
- package/dist/types/components/lasso-tool/tools-context.d.ts +12 -0
- package/dist/types/components/lasso-tool/types.d.ts +284 -10
- package/dist/types/components/lasso-tool/undo-redo.d.ts +25 -0
- package/dist/types/components/list-data/list-data-skeleton.d.ts +1 -1
- package/dist/types/components/list-data/list-data.d.ts +17 -1
- package/dist/types/components/measurement-tools/const.d.ts +2 -2
- package/dist/types/components/measurement-tools/icons.d.ts +3 -3
- package/dist/types/components/measurement-tools/measurement-tools.d.ts +21 -1
- package/dist/types/components/measurement-tools/styles.d.ts +14 -4
- package/dist/types/components/measurement-tools/types.d.ts +1 -1
- package/dist/types/components/no-data-alert/no-data-alert.d.ts +1 -1
- package/dist/types/components/responsive-drawer/responsive-drawer.d.ts +38 -6
- package/dist/types/components/smart-tooltip/smart-tooltip.d.ts +18 -1
- package/dist/types/components/tooltip/tooltip.d.ts +14 -1
- package/dist/types/components/types.d.ts +1 -1
- package/dist/types/components/zoom-controls/zoom-controls.d.ts +17 -1
- package/dist/types/hooks/index.d.ts +1 -2
- package/dist/types/hooks/use-widget-ref.d.ts +10 -6
- package/dist/types/legend/components/a11y.d.ts +6 -0
- package/dist/types/legend/components/contexts.d.ts +38 -0
- package/dist/types/legend/components/icons.d.ts +12 -0
- package/dist/types/legend/components/index.d.ts +26 -0
- package/dist/types/legend/components/legend-actions/legend-actions.d.ts +25 -0
- package/dist/types/legend/components/legend-actions/styles.d.ts +7 -0
- package/dist/types/legend/components/legend-category/legend-category-ui.d.ts +13 -0
- package/dist/types/legend/components/legend-category/styles.d.ts +52 -0
- package/dist/types/legend/components/legend-config-select/legend-config-select.d.ts +14 -0
- package/dist/types/legend/components/legend-config-select/styles.d.ts +44 -0
- package/dist/types/legend/components/legend-group/legend-group.d.ts +12 -0
- package/dist/types/legend/components/legend-group/styles.d.ts +129 -0
- package/dist/types/legend/components/legend-group-menu/legend-group-menu-items.d.ts +28 -0
- package/dist/types/legend/components/legend-group-menu/legend-group-menu.d.ts +11 -0
- package/dist/types/legend/components/legend-icon/legend-icon-ui.d.ts +10 -0
- package/dist/types/legend/components/legend-icon/styles.d.ts +52 -0
- package/dist/types/legend/components/legend-item/legend-item-ui.d.ts +14 -0
- package/dist/types/legend/components/legend-item/legend-item.d.ts +10 -0
- package/dist/types/{widgets/root/style.d.ts → legend/components/legend-item/styles.d.ts} +2 -3
- package/dist/types/legend/components/legend-opacity/legend-opacity.d.ts +22 -0
- package/dist/types/legend/components/legend-opacity/styles.d.ts +28 -0
- package/dist/types/legend/components/legend-overflow-menu/legend-overflow-menu.d.ts +12 -0
- package/dist/types/legend/components/legend-panel-menu/legend-panel-menu.d.ts +11 -0
- package/dist/types/legend/components/legend-proportion/legend-proportion-ui.d.ts +16 -0
- package/dist/types/legend/components/legend-proportion/styles.d.ts +37 -0
- package/dist/types/legend/components/legend-ramp/legend-ramp-ui.d.ts +20 -0
- package/dist/types/legend/components/legend-ramp/styles.d.ts +53 -0
- package/dist/types/legend/components/legend-row/legend-row.d.ts +16 -0
- package/dist/types/legend/components/legend-row/styles.d.ts +149 -0
- package/dist/types/legend/components/legend-row-menu/legend-row-menu-items.d.ts +12 -0
- package/dist/types/legend/components/legend-row-menu/legend-row-menu.d.ts +12 -0
- package/dist/types/legend/components/legend-row-menu/legend-zoom-to.d.ts +10 -0
- package/dist/types/legend/components/legend-sortable/contexts.d.ts +7 -0
- package/dist/types/legend/components/legend-sortable/legend-sortable.d.ts +11 -0
- package/dist/types/legend/components/legend-sortable/sortable-entity.d.ts +27 -0
- package/dist/types/legend/components/legend-sortable/sortable-ids.d.ts +6 -0
- package/dist/types/legend/components/legend-sortable/styles.d.ts +55 -0
- package/dist/types/legend/components/legend-swatch/legend-swatch.d.ts +26 -0
- package/dist/types/legend/components/legend-visibility-toggle/legend-visibility-toggle.d.ts +35 -0
- package/dist/types/legend/components/legend-visible-layers/legend-visible-layers.d.ts +7 -0
- package/dist/types/legend/components/legend-visible-layers/styles.d.ts +48 -0
- package/dist/types/legend/components/run-async-menu-action.d.ts +7 -0
- package/dist/types/legend/index.d.ts +135 -0
- package/dist/types/legend/provider/index.d.ts +6 -0
- package/dist/types/legend/provider/labels.d.ts +48 -0
- package/dist/types/legend/provider/legend-config-context.d.ts +7 -0
- package/dist/types/legend/provider/legend-provider.d.ts +38 -0
- package/dist/types/legend/stores/index.d.ts +5 -0
- package/dist/types/legend/stores/legend-context.d.ts +4 -0
- package/dist/types/legend/stores/legend-store-registry.d.ts +39 -0
- package/dist/types/legend/stores/selectors.d.ts +64 -0
- package/dist/types/legend/stores/types.d.ts +294 -0
- package/dist/types/widgets/actions/brush-toggle/brush-overlay.d.ts +24 -0
- package/dist/types/widgets/actions/brush-toggle/brush-toggle.d.ts +29 -0
- package/dist/types/widgets/actions/brush-toggle/hit-test.d.ts +19 -0
- package/dist/types/widgets/actions/brush-toggle/style.d.ts +21 -0
- package/dist/types/widgets/actions/brush-toggle/types.d.ts +73 -0
- package/dist/types/widgets/actions/change-column/change-column-icon.d.ts +1 -1
- package/dist/types/widgets/actions/change-column/change-column.d.ts +6 -2
- package/dist/types/widgets/actions/change-column/sortable-column-item.d.ts +2 -2
- package/dist/types/widgets/actions/download/download.d.ts +13 -2
- package/dist/types/widgets/actions/download/exports.d.ts +16 -1
- package/dist/types/widgets/actions/download/types.d.ts +1 -1
- package/dist/types/widgets/actions/fullscreen/fullscreen.d.ts +15 -2
- package/dist/types/widgets/actions/fullscreen/types.d.ts +3 -2
- package/dist/types/widgets/actions/index.d.ts +20 -18
- package/dist/types/widgets/actions/lock-selection/lock-selection.d.ts +2 -2
- package/dist/types/widgets/actions/lock-selection/types.d.ts +10 -10
- package/dist/types/widgets/actions/relative-data/relative-data.d.ts +10 -4
- package/dist/types/widgets/actions/relative-data/types.d.ts +3 -1
- package/dist/types/widgets/actions/relative-data/utils.d.ts +1 -1
- package/dist/types/widgets/actions/searcher/searcher-toggle.d.ts +2 -2
- package/dist/types/widgets/actions/searcher/searcher.d.ts +2 -2
- package/dist/types/widgets/actions/searcher/types.d.ts +2 -2
- package/dist/types/widgets/actions/stack-toggle/grouped-bar-chart-icon.d.ts +1 -1
- package/dist/types/widgets/actions/stack-toggle/stack-toggle.d.ts +5 -4
- package/dist/types/widgets/actions/stack-toggle/types.d.ts +1 -1
- package/dist/types/widgets/actions/zoom-toggle/types.d.ts +1 -1
- package/dist/types/widgets/actions/zoom-toggle/zoom-toggle.d.ts +10 -2
- package/dist/types/widgets/bar/config.d.ts +8 -4
- package/dist/types/widgets/bar/index.d.ts +3 -3
- package/dist/types/widgets/bar/skeleton.d.ts +1 -1
- package/dist/types/widgets/bar/types.d.ts +3 -3
- package/dist/types/widgets/category/category-ui.d.ts +5 -2
- package/dist/types/widgets/category/components/category-bar.d.ts +4 -1
- package/dist/types/widgets/category/components/category-legend.d.ts +5 -2
- package/dist/types/widgets/category/components/category-row-multi.d.ts +6 -2
- package/dist/types/widgets/category/components/category-row-other.d.ts +4 -1
- package/dist/types/widgets/category/components/category-row-single.d.ts +6 -2
- package/dist/types/widgets/category/config.d.ts +16 -12
- package/dist/types/widgets/category/index.d.ts +14 -6
- package/dist/types/widgets/category/skeleton.d.ts +1 -1
- package/dist/types/widgets/category/style.d.ts +1 -1
- package/dist/types/widgets/category/types.d.ts +4 -3
- package/dist/types/widgets/echart/echart-ui.d.ts +9 -2
- package/dist/types/widgets/echart/echart.d.ts +8 -2
- package/dist/types/widgets/echart/index.d.ts +5 -5
- package/dist/types/widgets/echart/options.d.ts +8 -1
- package/dist/types/widgets/echart/shared-resize-observer.d.ts +12 -0
- package/dist/types/widgets/echart/types.d.ts +7 -2
- package/dist/types/widgets/echart/utils.d.ts +57 -9
- package/dist/types/widgets/error/error.d.ts +12 -2
- package/dist/types/widgets/error/index.d.ts +2 -2
- package/dist/types/widgets/error/types.d.ts +9 -1
- package/dist/types/widgets/formula/components/item.d.ts +5 -2
- package/dist/types/widgets/formula/components/prefix.d.ts +5 -2
- package/dist/types/widgets/formula/components/row.d.ts +5 -2
- package/dist/types/widgets/formula/components/series.d.ts +5 -2
- package/dist/types/widgets/formula/components/suffix.d.ts +5 -2
- package/dist/types/widgets/formula/components/value.d.ts +5 -2
- package/dist/types/widgets/formula/config.d.ts +13 -2
- package/dist/types/widgets/formula/formula-ui.d.ts +5 -2
- package/dist/types/widgets/formula/index.d.ts +11 -11
- package/dist/types/widgets/formula/serializer.d.ts +1 -1
- package/dist/types/widgets/formula/skeleton.d.ts +1 -1
- package/dist/types/widgets/formula/types.d.ts +3 -3
- package/dist/types/widgets/histogram/config.d.ts +20 -4
- package/dist/types/widgets/histogram/index.d.ts +4 -3
- package/dist/types/widgets/histogram/skeleton.d.ts +1 -1
- package/dist/types/widgets/histogram/types.d.ts +8 -5
- package/dist/types/widgets/loader/index.d.ts +3 -0
- package/dist/types/widgets/loader/loader.d.ts +24 -0
- package/dist/types/widgets/loader/types.d.ts +9 -0
- package/dist/types/widgets/loader/utils.d.ts +35 -0
- package/dist/types/widgets/markdown/config.d.ts +12 -2
- package/dist/types/widgets/markdown/index.d.ts +5 -5
- package/dist/types/widgets/markdown/markdown-ui.d.ts +9 -2
- package/dist/types/widgets/markdown/markdown.d.ts +5 -2
- package/dist/types/widgets/markdown/skeleton.d.ts +1 -1
- package/dist/types/widgets/markdown/types.d.ts +4 -4
- package/dist/types/widgets/no-data/index.d.ts +2 -2
- package/dist/types/widgets/no-data/no-data.d.ts +5 -4
- package/dist/types/widgets/no-data/types.d.ts +6 -2
- package/dist/types/widgets/note/index.d.ts +2 -2
- package/dist/types/widgets/note/note.d.ts +12 -2
- package/dist/types/widgets/note/types.d.ts +1 -1
- package/dist/types/widgets/pie/config.d.ts +8 -4
- package/dist/types/widgets/pie/index.d.ts +3 -3
- package/dist/types/widgets/pie/skeleton.d.ts +1 -1
- package/dist/types/widgets/pie/types.d.ts +3 -3
- package/dist/types/widgets/range/components/range-item.d.ts +5 -2
- package/dist/types/widgets/range/config.d.ts +6 -5
- package/dist/types/widgets/range/index.d.ts +6 -6
- package/dist/types/widgets/range/range-ui.d.ts +5 -2
- package/dist/types/widgets/range/serializer.d.ts +1 -1
- package/dist/types/widgets/range/skeleton.d.ts +1 -1
- package/dist/types/widgets/range/types.d.ts +3 -3
- package/dist/types/widgets/scatterplot/config.d.ts +8 -4
- package/dist/types/widgets/scatterplot/index.d.ts +3 -3
- package/dist/types/widgets/scatterplot/skeleton.d.ts +1 -1
- package/dist/types/widgets/scatterplot/types.d.ts +3 -3
- package/dist/types/widgets/selection-summary/index.d.ts +2 -2
- package/dist/types/widgets/selection-summary/selection-summary.d.ts +13 -2
- package/dist/types/widgets/skeleton-loader/index.d.ts +2 -2
- package/dist/types/widgets/skeleton-loader/skeleton-loader.d.ts +12 -2
- package/dist/types/widgets/skeleton-loader/types.d.ts +1 -1
- package/dist/types/widgets/spread/components/max-value.d.ts +5 -2
- package/dist/types/widgets/spread/components/min-value.d.ts +5 -2
- package/dist/types/widgets/spread/components/separator.d.ts +5 -2
- package/dist/types/widgets/spread/config.d.ts +14 -8
- package/dist/types/widgets/spread/index.d.ts +9 -9
- package/dist/types/widgets/spread/skeleton.d.ts +1 -1
- package/dist/types/widgets/spread/spread-ui.d.ts +5 -2
- package/dist/types/widgets/spread/types.d.ts +4 -4
- package/dist/types/widgets/stores/index.d.ts +3 -2
- package/dist/types/widgets/stores/types.d.ts +31 -10
- package/dist/types/widgets/stores/use-widget-selector.d.ts +35 -0
- package/dist/types/widgets/stores/widget-store.d.ts +48 -27
- package/dist/types/widgets/subheader/index.d.ts +2 -2
- package/dist/types/widgets/subheader/subheader.d.ts +13 -2
- package/dist/types/widgets/table/components/cell-header.d.ts +2 -2
- package/dist/types/widgets/table/components/cell.d.ts +4 -2
- package/dist/types/widgets/table/components/pagination-actions.d.ts +2 -2
- package/dist/types/widgets/table/components/pagination.d.ts +2 -2
- package/dist/types/widgets/table/components/row.d.ts +2 -2
- package/dist/types/widgets/table/config.d.ts +10 -6
- package/dist/types/widgets/table/hooks/use-pagination.d.ts +12 -4
- package/dist/types/widgets/table/hooks/use-selection.d.ts +15 -6
- package/dist/types/widgets/table/hooks/use-sort.d.ts +13 -9
- package/dist/types/widgets/table/index.d.ts +17 -13
- package/dist/types/widgets/table/serializer.d.ts +1 -1
- package/dist/types/widgets/table/skeleton.d.ts +1 -1
- package/dist/types/widgets/table/table-ui.d.ts +8 -8
- package/dist/types/widgets/table/types.d.ts +6 -6
- package/dist/types/widgets/timeseries/config.d.ts +8 -4
- package/dist/types/widgets/timeseries/index.d.ts +3 -3
- package/dist/types/widgets/timeseries/skeleton.d.ts +1 -1
- package/dist/types/widgets/timeseries/types.d.ts +3 -3
- package/dist/types/widgets/toolbar-actions/index.d.ts +2 -2
- package/dist/types/widgets/toolbar-actions/toolbar-actions.d.ts +13 -4
- package/dist/types/widgets/toolbar-actions/types.d.ts +10 -3
- package/dist/types/widgets/{_shared → utils}/chart-config/config-factory.d.ts +1 -1
- package/dist/types/widgets/utils/chart-config/download-config.d.ts +3 -0
- package/dist/types/widgets/utils/chart-config/index.d.ts +9 -0
- package/dist/types/widgets/utils/chart-config/option-builders.d.ts +142 -0
- package/dist/types/widgets/utils/formatter.d.ts +2 -0
- package/dist/types/widgets/utils/index.d.ts +7 -0
- package/dist/types/widgets/utils/skeleton/index.d.ts +4 -0
- package/dist/types/widgets/wrapper/components/actions.d.ts +5 -2
- package/dist/types/widgets/wrapper/components/options.d.ts +5 -2
- package/dist/types/widgets/wrapper/components/title.d.ts +5 -2
- package/dist/types/widgets/wrapper/index.d.ts +6 -6
- package/dist/types/widgets/wrapper/types.d.ts +1 -1
- package/dist/types/widgets/wrapper/wrapper-ui.d.ts +16 -2
- package/dist/types/widgets/wrapper/wrapper.d.ts +16 -2
- package/dist/types/widgets-v2/actions/brush-toggle/brush-toggle.d.ts +56 -0
- package/dist/types/widgets-v2/actions/brush-toggle/index.d.ts +3 -0
- package/dist/types/widgets-v2/actions/brush-toggle/labels.d.ts +5 -0
- package/dist/types/widgets-v2/actions/brush-toggle/style.d.ts +12 -0
- package/dist/types/widgets-v2/actions/brush-toggle/transforms.d.ts +11 -0
- package/dist/types/widgets-v2/actions/change-column/change-column-icon.d.ts +2 -0
- package/dist/types/widgets-v2/actions/change-column/change-column.d.ts +29 -0
- package/dist/types/widgets-v2/actions/change-column/index.d.ts +3 -0
- package/dist/types/widgets-v2/actions/change-column/labels.d.ts +6 -0
- package/dist/types/widgets-v2/actions/change-column/sortable-column-item.d.ts +14 -0
- package/dist/types/widgets-v2/actions/change-column/style.d.ts +59 -0
- package/dist/types/widgets-v2/actions/change-column/types.d.ts +10 -0
- package/dist/types/widgets-v2/actions/download/constants.d.ts +12 -0
- package/dist/types/widgets-v2/actions/download/csv-item.d.ts +38 -0
- package/dist/types/widgets-v2/actions/download/download.d.ts +18 -0
- package/dist/types/widgets-v2/actions/download/exports.d.ts +37 -0
- package/dist/types/widgets-v2/actions/download/icons.d.ts +18 -0
- package/dist/types/widgets-v2/actions/download/index.d.ts +8 -0
- package/dist/types/widgets-v2/actions/download/labels.d.ts +11 -0
- package/dist/types/widgets-v2/actions/download/png-item.d.ts +24 -0
- package/dist/types/widgets-v2/actions/download/style.d.ts +1 -0
- package/dist/types/widgets-v2/actions/download/types.d.ts +35 -0
- package/dist/types/widgets-v2/actions/fullscreen/fullscreen.d.ts +59 -0
- package/dist/types/widgets-v2/actions/fullscreen/index.d.ts +3 -0
- package/dist/types/widgets-v2/actions/fullscreen/labels.d.ts +5 -0
- package/dist/types/widgets-v2/actions/fullscreen/style.d.ts +48 -0
- package/dist/types/widgets-v2/actions/fullscreen/types.d.ts +14 -0
- package/dist/types/widgets-v2/actions/index.d.ts +10 -0
- package/dist/types/widgets-v2/actions/lock-selection/index.d.ts +3 -0
- package/dist/types/widgets-v2/actions/lock-selection/labels.d.ts +6 -0
- package/dist/types/widgets-v2/actions/lock-selection/lock-selection.d.ts +57 -0
- package/dist/types/widgets-v2/actions/lock-selection/style.d.ts +12 -0
- package/dist/types/widgets-v2/actions/lock-selection/transforms.d.ts +6 -0
- package/dist/types/widgets-v2/actions/relative-data/index.d.ts +3 -0
- package/dist/types/widgets-v2/actions/relative-data/labels.d.ts +5 -0
- package/dist/types/widgets-v2/actions/relative-data/relative-data.d.ts +39 -0
- package/dist/types/widgets-v2/actions/relative-data/style.d.ts +12 -0
- package/dist/types/widgets-v2/actions/relative-data/transforms.d.ts +30 -0
- package/dist/types/widgets-v2/actions/searcher/filter.d.ts +6 -0
- package/dist/types/widgets-v2/actions/searcher/index.d.ts +4 -0
- package/dist/types/widgets-v2/actions/searcher/labels.d.ts +7 -0
- package/dist/types/widgets-v2/actions/searcher/searcher-toggle.d.ts +23 -0
- package/dist/types/widgets-v2/actions/searcher/searcher.d.ts +11 -0
- package/dist/types/widgets-v2/actions/searcher/style.d.ts +16 -0
- package/dist/types/widgets-v2/actions/show-all/index.d.ts +2 -0
- package/dist/types/widgets-v2/actions/show-all/labels.d.ts +5 -0
- package/dist/types/widgets-v2/actions/show-all/show-all.d.ts +33 -0
- package/dist/types/widgets-v2/actions/show-all/style.d.ts +8 -0
- package/dist/types/widgets-v2/actions/stack-toggle/index.d.ts +3 -0
- package/dist/types/widgets-v2/actions/stack-toggle/labels.d.ts +5 -0
- package/dist/types/widgets-v2/actions/stack-toggle/stack-toggle.d.ts +10 -0
- package/dist/types/widgets-v2/actions/stack-toggle/style.d.ts +12 -0
- package/dist/types/widgets-v2/actions/stack-toggle/transforms.d.ts +13 -0
- package/dist/types/widgets-v2/actions/zoom-toggle/index.d.ts +3 -0
- package/dist/types/widgets-v2/actions/zoom-toggle/labels.d.ts +5 -0
- package/dist/types/widgets-v2/actions/zoom-toggle/style.d.ts +12 -0
- package/dist/types/widgets-v2/actions/zoom-toggle/transforms.d.ts +51 -0
- package/dist/types/widgets-v2/actions/zoom-toggle/zoom-toggle.d.ts +35 -0
- package/dist/types/widgets-v2/bar/download.d.ts +24 -0
- package/dist/types/widgets-v2/bar/index.d.ts +4 -0
- package/dist/types/widgets-v2/bar/options.d.ts +43 -0
- package/dist/types/widgets-v2/bar/skeleton.d.ts +6 -0
- package/dist/types/widgets-v2/bar/types.d.ts +46 -0
- package/dist/types/widgets-v2/category/category-ui.d.ts +88 -0
- package/dist/types/widgets-v2/category/category.d.ts +55 -0
- package/dist/types/widgets-v2/category/components/category-bar-stacked.d.ts +28 -0
- package/dist/types/widgets-v2/category/components/category-bar.d.ts +23 -0
- package/dist/types/widgets-v2/category/components/category-legend.d.ts +34 -0
- package/dist/types/widgets-v2/category/components/category-row-multi.d.ts +31 -0
- package/dist/types/widgets-v2/category/components/category-row-other.d.ts +26 -0
- package/dist/types/widgets-v2/category/components/category-row-single.d.ts +28 -0
- package/dist/types/widgets-v2/category/components/category-row-stacked.d.ts +43 -0
- package/dist/types/widgets-v2/category/download.d.ts +16 -0
- package/dist/types/widgets-v2/category/index.d.ts +10 -0
- package/dist/types/widgets-v2/category/skeleton.d.ts +11 -0
- package/dist/types/widgets-v2/category/style.d.ts +193 -0
- package/dist/types/widgets-v2/category/types.d.ts +55 -0
- package/dist/types/widgets-v2/echart/echart-ui.d.ts +44 -0
- package/dist/types/widgets-v2/echart/echart.d.ts +75 -0
- package/dist/types/widgets-v2/echart/edge-label-clamp.d.ts +57 -0
- package/dist/types/widgets-v2/echart/index.d.ts +4 -0
- package/dist/types/widgets-v2/echart/shared-resize-observer.d.ts +5 -0
- package/dist/types/widgets-v2/echart/style.d.ts +6 -0
- package/dist/types/widgets-v2/echart/use-chart-selection.d.ts +57 -0
- package/dist/types/widgets-v2/formula/delta.d.ts +22 -0
- package/dist/types/widgets-v2/formula/download.d.ts +20 -0
- package/dist/types/widgets-v2/formula/formula-ui.d.ts +20 -0
- package/dist/types/widgets-v2/formula/formula.d.ts +8 -0
- package/dist/types/widgets-v2/formula/index.d.ts +11 -0
- package/dist/types/widgets-v2/formula/note.d.ts +11 -0
- package/dist/types/widgets-v2/formula/prefix.d.ts +12 -0
- package/dist/types/widgets-v2/formula/series.d.ts +16 -0
- package/dist/types/widgets-v2/formula/skeleton.d.ts +4 -0
- package/dist/types/widgets-v2/formula/style.d.ts +29 -0
- package/dist/types/widgets-v2/formula/suffix.d.ts +12 -0
- package/dist/types/widgets-v2/formula/types.d.ts +43 -0
- package/dist/types/widgets-v2/formula/value.d.ts +14 -0
- package/dist/types/widgets-v2/histogram/download.d.ts +17 -0
- package/dist/types/widgets-v2/histogram/index.d.ts +5 -0
- package/dist/types/widgets-v2/histogram/options.d.ts +42 -0
- package/dist/types/widgets-v2/histogram/skeleton.d.ts +9 -0
- package/dist/types/widgets-v2/histogram/transforms.d.ts +28 -0
- package/dist/types/widgets-v2/histogram/types.d.ts +60 -0
- package/dist/types/widgets-v2/index.d.ts +109 -0
- package/dist/types/widgets-v2/markdown/download.d.ts +16 -0
- package/dist/types/widgets-v2/markdown/index.d.ts +6 -0
- package/dist/types/widgets-v2/markdown/markdown-content.d.ts +40 -0
- package/dist/types/widgets-v2/markdown/markdown-ui.d.ts +12 -0
- package/dist/types/widgets-v2/markdown/markdown.d.ts +6 -0
- package/dist/types/widgets-v2/markdown/skeleton.d.ts +4 -0
- package/dist/types/widgets-v2/markdown/style.d.ts +61 -0
- package/dist/types/widgets-v2/markdown/types.d.ts +4 -0
- package/dist/types/widgets-v2/note/labels.d.ts +5 -0
- package/dist/types/widgets-v2/note/style.d.ts +26 -0
- package/dist/types/widgets-v2/note/widget-note.d.ts +46 -0
- package/dist/types/widgets-v2/pie/download.d.ts +17 -0
- package/dist/types/widgets-v2/pie/index.d.ts +4 -0
- package/dist/types/widgets-v2/pie/options.d.ts +35 -0
- package/dist/types/widgets-v2/pie/skeleton.d.ts +13 -0
- package/dist/types/widgets-v2/pie/types.d.ts +57 -0
- package/dist/types/widgets-v2/provider/widget-provider.d.ts +32 -0
- package/dist/types/widgets-v2/range/index.d.ts +4 -0
- package/dist/types/widgets-v2/range/range-ui.d.ts +27 -0
- package/dist/types/widgets-v2/range/range.d.ts +24 -0
- package/dist/types/widgets-v2/range/skeleton.d.ts +9 -0
- package/dist/types/widgets-v2/range/style.d.ts +40 -0
- package/dist/types/widgets-v2/range/types.d.ts +37 -0
- package/dist/types/widgets-v2/scatterplot/download.d.ts +16 -0
- package/dist/types/widgets-v2/scatterplot/index.d.ts +5 -0
- package/dist/types/widgets-v2/scatterplot/options.d.ts +42 -0
- package/dist/types/widgets-v2/scatterplot/skeleton.d.ts +12 -0
- package/dist/types/widgets-v2/scatterplot/transforms.d.ts +26 -0
- package/dist/types/widgets-v2/scatterplot/types.d.ts +54 -0
- package/dist/types/widgets-v2/selection-summary/labels.d.ts +11 -0
- package/dist/types/widgets-v2/selection-summary/selection-summary.d.ts +29 -0
- package/dist/types/widgets-v2/selection-summary/style.d.ts +38 -0
- package/dist/types/widgets-v2/spread/band.d.ts +37 -0
- package/dist/types/widgets-v2/spread/download.d.ts +15 -0
- package/dist/types/widgets-v2/spread/index.d.ts +7 -0
- package/dist/types/widgets-v2/spread/separator.d.ts +7 -0
- package/dist/types/widgets-v2/spread/skeleton.d.ts +9 -0
- package/dist/types/widgets-v2/spread/spread-ui.d.ts +18 -0
- package/dist/types/widgets-v2/spread/spread.d.ts +5 -0
- package/dist/types/widgets-v2/spread/types.d.ts +25 -0
- package/dist/types/widgets-v2/state/labels.d.ts +7 -0
- package/dist/types/widgets-v2/state/style.d.ts +19 -0
- package/dist/types/widgets-v2/state/widget-state.d.ts +19 -0
- package/dist/types/widgets-v2/stores/index.d.ts +8 -0
- package/dist/types/widgets-v2/stores/pipeline-middleware.d.ts +5 -0
- package/dist/types/widgets-v2/stores/transforms.d.ts +4 -0
- package/dist/types/widgets-v2/stores/types.d.ts +55 -0
- package/dist/types/widgets-v2/stores/use-echart-instance.d.ts +15 -0
- package/dist/types/widgets-v2/stores/use-transform-enabled.d.ts +17 -0
- package/dist/types/widgets-v2/stores/use-transform.d.ts +12 -0
- package/dist/types/widgets-v2/stores/widget-context.d.ts +2 -0
- package/dist/types/widgets-v2/stores/widget-store-registry.d.ts +74 -0
- package/dist/types/widgets-v2/subheader/style.d.ts +10 -0
- package/dist/types/widgets-v2/subheader/subheader.d.ts +11 -0
- package/dist/types/widgets-v2/table/download.d.ts +18 -0
- package/dist/types/widgets-v2/table/helpers.d.ts +32 -0
- package/dist/types/widgets-v2/table/index.d.ts +8 -0
- package/dist/types/widgets-v2/table/labels.d.ts +22 -0
- package/dist/types/widgets-v2/table/skeleton.d.ts +22 -0
- package/dist/types/widgets-v2/table/style.d.ts +40 -0
- package/dist/types/widgets-v2/table/table-ui.d.ts +44 -0
- package/dist/types/widgets-v2/table/table.d.ts +50 -0
- package/dist/types/widgets-v2/table/transforms.d.ts +15 -0
- package/dist/types/widgets-v2/table/types.d.ts +48 -0
- package/dist/types/widgets-v2/timeseries/download.d.ts +17 -0
- package/dist/types/widgets-v2/timeseries/index.d.ts +5 -0
- package/dist/types/widgets-v2/timeseries/options.d.ts +39 -0
- package/dist/types/widgets-v2/timeseries/skeleton.d.ts +8 -0
- package/dist/types/widgets-v2/timeseries/transforms.d.ts +10 -0
- package/dist/types/widgets-v2/timeseries/types.d.ts +60 -0
- package/dist/types/widgets-v2/toolbox/labels.d.ts +5 -0
- package/dist/types/widgets-v2/toolbox/style.d.ts +30 -0
- package/dist/types/widgets-v2/toolbox/toolbox.d.ts +49 -0
- package/dist/types/widgets-v2/types.d.ts +25 -0
- package/dist/types/widgets-v2/utils/data-zoom-layout.d.ts +11 -0
- package/dist/types/widgets-v2/utils/index.d.ts +3 -0
- package/dist/types/widgets-v2/utils/merge-options.d.ts +12 -0
- package/dist/types/widgets-v2/utils/resolve-theme-color.d.ts +18 -0
- package/dist/types/widgets-v2/wrapper/index.d.ts +4 -0
- package/dist/types/widgets-v2/wrapper/labels.d.ts +6 -0
- package/dist/types/widgets-v2/wrapper/style.d.ts +103 -0
- package/dist/types/widgets-v2/wrapper/widget-actions.d.ts +22 -0
- package/dist/types/widgets-v2/wrapper/widget-content.d.ts +12 -0
- package/dist/types/widgets-v2/wrapper/widget-wrapper.d.ts +56 -0
- package/dist/use-widget-selector-VSPhfhNm.js +12 -0
- package/dist/use-widget-selector-VSPhfhNm.js.map +1 -0
- package/dist/utils-Dr6gf3vD.js +58 -0
- package/dist/utils-Dr6gf3vD.js.map +1 -0
- package/dist/widget-store-BFPKYm4R.js +187 -0
- package/dist/widget-store-BFPKYm4R.js.map +1 -0
- package/dist/widgets/actions.js +2 -830
- package/dist/widgets/bar.js +183 -186
- package/dist/widgets/bar.js.map +1 -1
- package/dist/widgets/category.js +438 -455
- package/dist/widgets/category.js.map +1 -1
- package/dist/widgets/echart.js +3 -123
- package/dist/widgets/error.js +30 -5
- package/dist/widgets/error.js.map +1 -1
- package/dist/widgets/formula.js +3 -125
- package/dist/widgets/histogram.js +185 -167
- package/dist/widgets/histogram.js.map +1 -1
- package/dist/widgets/loader.js +66 -0
- package/dist/widgets/loader.js.map +1 -0
- package/dist/widgets/markdown.js +142 -121
- package/dist/widgets/markdown.js.map +1 -1
- package/dist/widgets/no-data.js +55 -5
- package/dist/widgets/no-data.js.map +1 -1
- package/dist/widgets/note.js +126 -4
- package/dist/widgets/note.js.map +1 -1
- package/dist/widgets/pie.js +244 -208
- package/dist/widgets/pie.js.map +1 -1
- package/dist/widgets/range.js +226 -210
- package/dist/widgets/range.js.map +1 -1
- package/dist/widgets/scatterplot.js +219 -216
- package/dist/widgets/scatterplot.js.map +1 -1
- package/dist/widgets/selection-summary.js +39 -38
- package/dist/widgets/selection-summary.js.map +1 -1
- package/dist/widgets/skeleton-loader.js +23 -23
- package/dist/widgets/skeleton-loader.js.map +1 -1
- package/dist/widgets/spread.js +150 -159
- package/dist/widgets/spread.js.map +1 -1
- package/dist/widgets/stores.js +3 -5
- package/dist/widgets/subheader.js +49 -50
- package/dist/widgets/subheader.js.map +1 -1
- package/dist/widgets/table.js +573 -665
- package/dist/widgets/table.js.map +1 -1
- package/dist/widgets/timeseries.js +175 -170
- package/dist/widgets/timeseries.js.map +1 -1
- package/dist/widgets/toolbar-actions.js +144 -6105
- package/dist/widgets/toolbar-actions.js.map +1 -1
- package/dist/widgets/utils.js +18 -0
- package/dist/widgets/utils.js.map +1 -0
- package/dist/widgets/wrapper.js +265 -287
- package/dist/widgets/wrapper.js.map +1 -1
- package/dist/widgets-v2/actions.js +4 -0
- package/dist/widgets-v2/bar.js +260 -0
- package/dist/widgets-v2/bar.js.map +1 -0
- package/dist/widgets-v2/category.js +2 -0
- package/dist/widgets-v2/echart.js +2 -0
- package/dist/widgets-v2/formula.js +2 -0
- package/dist/widgets-v2/histogram.js +297 -0
- package/dist/widgets-v2/histogram.js.map +1 -0
- package/dist/widgets-v2/markdown.js +3 -0
- package/dist/widgets-v2/pie.js +374 -0
- package/dist/widgets-v2/pie.js.map +1 -0
- package/dist/widgets-v2/range.js +2 -0
- package/dist/widgets-v2/scatterplot.js +330 -0
- package/dist/widgets-v2/scatterplot.js.map +1 -0
- package/dist/widgets-v2/spread.js +2 -0
- package/dist/widgets-v2/stores.js +2 -0
- package/dist/widgets-v2/table.js +2 -0
- package/dist/widgets-v2/timeseries.js +294 -0
- package/dist/widgets-v2/timeseries.js.map +1 -0
- package/dist/widgets-v2/utils.js +2 -0
- package/dist/widgets-v2.js +964 -0
- package/dist/widgets-v2.js.map +1 -0
- package/dist/zoom-toggle-IsF8BnAp.js +163 -0
- package/dist/zoom-toggle-IsF8BnAp.js.map +1 -0
- package/package.json +109 -17
- package/src/chat/bubbles/chat-agent-message-markdown.test.tsx +38 -0
- package/src/chat/bubbles/chat-agent-message-markdown.tsx +34 -0
- package/src/chat/bubbles/chat-agent-message.test.tsx +42 -0
- package/src/chat/bubbles/chat-agent-message.tsx +31 -0
- package/src/chat/bubbles/chat-error-message.test.tsx +40 -0
- package/src/chat/bubbles/chat-error-message.tsx +47 -0
- package/src/chat/bubbles/chat-suggestion-button.test.tsx +24 -0
- package/src/chat/bubbles/chat-suggestion-button.tsx +27 -0
- package/src/chat/bubbles/chat-user-message.test.tsx +27 -0
- package/src/chat/bubbles/chat-user-message.tsx +27 -0
- package/src/chat/bubbles/index.ts +5 -0
- package/src/chat/bubbles/styles.ts +171 -0
- package/src/chat/const.ts +4 -0
- package/src/chat/containers/chat-content.test.tsx +269 -0
- package/src/chat/containers/chat-content.tsx +145 -0
- package/src/chat/containers/chat-footer.test.tsx +93 -0
- package/src/chat/containers/chat-footer.tsx +166 -0
- package/src/chat/containers/chat-header.test.tsx +28 -0
- package/src/chat/containers/chat-header.tsx +29 -0
- package/src/chat/containers/chat-starter.test.tsx +32 -0
- package/src/chat/containers/chat-starter.tsx +75 -0
- package/src/chat/containers/index.ts +4 -0
- package/src/chat/containers/styles.ts +187 -0
- package/src/chat/feedback/chat-actions-container.test.tsx +64 -0
- package/src/chat/feedback/chat-actions-container.tsx +10 -0
- package/src/chat/feedback/chat-loader.test.tsx +10 -0
- package/src/chat/feedback/chat-loader.tsx +31 -0
- package/src/chat/feedback/chat-rating-action.tsx +43 -0
- package/src/chat/feedback/chat-thinking.test.tsx +15 -0
- package/src/chat/feedback/chat-thinking.tsx +23 -0
- package/src/chat/feedback/chat-tool-code-area.test.tsx +23 -0
- package/src/chat/feedback/chat-tool-code-area.tsx +71 -0
- package/src/chat/feedback/chat-tool-full-view-dialog.test.tsx +39 -0
- package/src/chat/feedback/chat-tool-full-view-dialog.tsx +121 -0
- package/src/chat/feedback/chat-tool-group.test.tsx +84 -0
- package/src/chat/feedback/chat-tool-group.tsx +156 -0
- package/src/chat/feedback/chat-tool-trace.test.tsx +81 -0
- package/src/chat/feedback/chat-tool-trace.tsx +192 -0
- package/src/chat/feedback/get-tool-label.test.tsx +91 -0
- package/src/chat/feedback/get-tool-label.ts +13 -0
- package/src/chat/feedback/index.ts +8 -0
- package/src/chat/feedback/styles.ts +239 -0
- package/src/chat/index.ts +62 -0
- package/src/chat/types.ts +247 -0
- package/src/chat/use-typewriter.test.tsx +38 -0
- package/src/chat/use-typewriter.ts +90 -0
- package/src/components/basemaps/basemaps.test.tsx +196 -0
- package/src/components/basemaps/basemaps.tsx +150 -0
- package/src/components/basemaps/const.ts +13 -0
- package/src/components/basemaps/group-wrapper.test.tsx +38 -0
- package/src/components/basemaps/group-wrapper.tsx +28 -0
- package/src/components/basemaps/group.test.tsx +52 -0
- package/src/components/basemaps/group.tsx +42 -0
- package/src/components/basemaps/header.test.tsx +54 -0
- package/src/components/basemaps/header.tsx +36 -0
- package/src/components/basemaps/styles.ts +76 -0
- package/src/components/basemaps/types.ts +30 -0
- package/src/components/common-types.ts +1 -0
- package/src/components/copy-button/copy-button.test.tsx +41 -0
- package/src/components/copy-button/copy-button.tsx +31 -0
- package/src/components/copy-button/types.ts +10 -0
- package/src/components/geolocation-controls/const.ts +6 -0
- package/src/components/geolocation-controls/geolocation-controls.test.tsx +148 -0
- package/src/components/geolocation-controls/geolocation-controls.tsx +126 -0
- package/src/components/geolocation-controls/types.ts +17 -0
- package/src/components/index.ts +163 -0
- package/src/components/lasso-tool/chip.test.tsx +257 -0
- package/src/components/lasso-tool/chip.tsx +66 -0
- package/src/components/lasso-tool/const.tsx +94 -0
- package/src/components/lasso-tool/edit-confirm-toolbar.test.tsx +67 -0
- package/src/components/lasso-tool/edit-confirm-toolbar.tsx +48 -0
- package/src/components/lasso-tool/geometry-toolbar.test.tsx +804 -0
- package/src/components/lasso-tool/geometry-toolbar.tsx +158 -0
- package/src/components/lasso-tool/icons.tsx +193 -0
- package/src/components/lasso-tool/lasso-tool-inline.test.tsx +759 -0
- package/src/components/lasso-tool/lasso-tool-inline.tsx +508 -0
- package/src/components/lasso-tool/lasso-tool.test.tsx +700 -0
- package/src/components/lasso-tool/lasso-tool.tsx +673 -0
- package/src/components/lasso-tool/layer-filters.test.tsx +103 -0
- package/src/components/lasso-tool/layer-filters.tsx +242 -0
- package/src/components/lasso-tool/message.tsx +36 -0
- package/src/components/lasso-tool/options-sections.test.tsx +101 -0
- package/src/components/lasso-tool/options-sections.tsx +104 -0
- package/src/components/lasso-tool/styles.test.ts +26 -0
- package/src/components/lasso-tool/styles.ts +190 -0
- package/src/components/lasso-tool/toolbar/actions/accept-action.tsx +34 -0
- package/src/components/lasso-tool/toolbar/actions/action-menu.tsx +103 -0
- package/src/components/lasso-tool/toolbar/actions/cancel-action.tsx +34 -0
- package/src/components/lasso-tool/toolbar/actions/color-action.tsx +201 -0
- package/src/components/lasso-tool/toolbar/actions/delete-action.tsx +31 -0
- package/src/components/lasso-tool/toolbar/actions/duplicate-action.tsx +30 -0
- package/src/components/lasso-tool/toolbar/actions/edit-geometry-action.tsx +44 -0
- package/src/components/lasso-tool/toolbar/actions/edit-properties-action.tsx +487 -0
- package/src/components/lasso-tool/toolbar/actions/fill-action.tsx +55 -0
- package/src/components/lasso-tool/toolbar/actions/intersect-action.tsx +33 -0
- package/src/components/lasso-tool/toolbar/actions/label-action.tsx +292 -0
- package/src/components/lasso-tool/toolbar/actions/lock-action.tsx +40 -0
- package/src/components/lasso-tool/toolbar/actions/redo-action.tsx +35 -0
- package/src/components/lasso-tool/toolbar/actions/split-action.tsx +33 -0
- package/src/components/lasso-tool/toolbar/actions/stroke-action.tsx +57 -0
- package/src/components/lasso-tool/toolbar/actions/style-actions.test.tsx +212 -0
- package/src/components/lasso-tool/toolbar/actions/subtract-action.tsx +33 -0
- package/src/components/lasso-tool/toolbar/actions/toggle-type-action.tsx +50 -0
- package/src/components/lasso-tool/toolbar/actions/undo-action.tsx +35 -0
- package/src/components/lasso-tool/toolbar/actions/union-action.tsx +40 -0
- package/src/components/lasso-tool/toolbar/button.tsx +62 -0
- package/src/components/lasso-tool/toolbar/connected.tsx +383 -0
- package/src/components/lasso-tool/toolbar/context.tsx +65 -0
- package/src/components/lasso-tool/toolbar/index.ts +70 -0
- package/src/components/lasso-tool/toolbar/styles.ts +42 -0
- package/src/components/lasso-tool/toolbar/toolbar.test.tsx +77 -0
- package/src/components/lasso-tool/toolbar/toolbar.tsx +50 -0
- package/src/components/lasso-tool/tools-context.tsx +47 -0
- package/src/components/lasso-tool/types.ts +384 -0
- package/src/components/lasso-tool/undo-redo.test.tsx +162 -0
- package/src/components/lasso-tool/undo-redo.tsx +55 -0
- package/src/components/list-data/list-data-skeleton.test.tsx +10 -0
- package/src/components/list-data/list-data-skeleton.tsx +40 -0
- package/src/components/list-data/list-data.test.tsx +167 -0
- package/src/components/list-data/list-data.tsx +124 -0
- package/src/components/list-data/styles.ts +37 -0
- package/src/components/list-data/types.ts +25 -0
- package/src/components/measurement-tools/const.tsx +108 -0
- package/src/components/measurement-tools/icons.tsx +54 -0
- package/src/components/measurement-tools/measurement-tools.test.tsx +165 -0
- package/src/components/measurement-tools/measurement-tools.tsx +467 -0
- package/src/components/measurement-tools/styles.ts +92 -0
- package/src/components/measurement-tools/types.ts +77 -0
- package/src/components/no-data-alert/no-data-alert.test.tsx +69 -0
- package/src/components/no-data-alert/no-data-alert.tsx +59 -0
- package/src/components/responsive-drawer/responsive-drawer.test.tsx +415 -0
- package/src/components/responsive-drawer/responsive-drawer.tsx +219 -0
- package/src/components/smart-tooltip/smart-tooltip.test.tsx +168 -0
- package/src/components/smart-tooltip/smart-tooltip.tsx +74 -0
- package/src/components/tooltip/tooltip.test.tsx +86 -0
- package/src/components/tooltip/tooltip.tsx +43 -0
- package/src/components/types.ts +1 -0
- package/src/components/zoom-controls/styles.ts +27 -0
- package/src/components/zoom-controls/types.ts +19 -0
- package/src/components/zoom-controls/zoom-controls.test.tsx +101 -0
- package/src/components/zoom-controls/zoom-controls.tsx +130 -0
- package/src/hooks/index.ts +1 -0
- package/src/hooks/use-skeleton.test.tsx +32 -0
- package/src/hooks/use-skeleton.ts +19 -0
- package/src/hooks/use-widget-ref.ts +34 -0
- package/src/legend/components/a11y.ts +14 -0
- package/src/legend/components/contexts.ts +57 -0
- package/src/legend/components/icons.tsx +22 -0
- package/src/legend/components/index.ts +38 -0
- package/src/legend/components/legend-actions/legend-actions.tsx +58 -0
- package/src/legend/components/legend-actions/styles.ts +9 -0
- package/src/legend/components/legend-category/legend-category-ui.tsx +91 -0
- package/src/legend/components/legend-category/styles.ts +61 -0
- package/src/legend/components/legend-config-select/legend-config-select.tsx +96 -0
- package/src/legend/components/legend-config-select/styles.ts +48 -0
- package/src/legend/components/legend-group/legend-group.test.tsx +297 -0
- package/src/legend/components/legend-group/legend-group.tsx +126 -0
- package/src/legend/components/legend-group/styles.ts +184 -0
- package/src/legend/components/legend-group-menu/legend-group-menu-items.tsx +132 -0
- package/src/legend/components/legend-group-menu/legend-group-menu.tsx +25 -0
- package/src/legend/components/legend-icon/legend-icon-ui.tsx +56 -0
- package/src/legend/components/legend-icon/styles.ts +56 -0
- package/src/legend/components/legend-item/legend-item-ui.test.tsx +362 -0
- package/src/legend/components/legend-item/legend-item-ui.tsx +43 -0
- package/src/legend/components/legend-item/legend-item.tsx +34 -0
- package/src/legend/components/legend-item/styles.ts +11 -0
- package/src/legend/components/legend-opacity/legend-opacity.tsx +152 -0
- package/src/legend/components/legend-opacity/styles.ts +33 -0
- package/src/legend/components/legend-overflow-menu/legend-overflow-menu.tsx +84 -0
- package/src/legend/components/legend-panel-menu/legend-panel-menu.tsx +23 -0
- package/src/legend/components/legend-proportion/legend-proportion-ui.tsx +122 -0
- package/src/legend/components/legend-proportion/styles.ts +43 -0
- package/src/legend/components/legend-ramp/legend-ramp-ui.tsx +160 -0
- package/src/legend/components/legend-ramp/styles.ts +62 -0
- package/src/legend/components/legend-row/legend-row.test.tsx +736 -0
- package/src/legend/components/legend-row/legend-row.tsx +170 -0
- package/src/legend/components/legend-row/styles.ts +219 -0
- package/src/legend/components/legend-row-menu/legend-row-menu-items.tsx +57 -0
- package/src/legend/components/legend-row-menu/legend-row-menu.tsx +30 -0
- package/src/legend/components/legend-row-menu/legend-zoom-to.tsx +43 -0
- package/src/legend/components/legend-sortable/contexts.ts +12 -0
- package/src/legend/components/legend-sortable/legend-sortable.test.tsx +144 -0
- package/src/legend/components/legend-sortable/legend-sortable.tsx +195 -0
- package/src/legend/components/legend-sortable/sortable-entity.tsx +91 -0
- package/src/legend/components/legend-sortable/sortable-ids.ts +17 -0
- package/src/legend/components/legend-sortable/styles.ts +65 -0
- package/src/legend/components/legend-swatch/legend-swatch.test.tsx +109 -0
- package/src/legend/components/legend-swatch/legend-swatch.tsx +237 -0
- package/src/legend/components/legend-visibility-toggle/legend-visibility-toggle.tsx +133 -0
- package/src/legend/components/legend-visible-layers/legend-visible-layers.test.tsx +86 -0
- package/src/legend/components/legend-visible-layers/legend-visible-layers.tsx +135 -0
- package/src/legend/components/legend-visible-layers/styles.ts +60 -0
- package/src/legend/components/run-async-menu-action.ts +20 -0
- package/src/legend/index.ts +176 -0
- package/src/legend/provider/index.ts +6 -0
- package/src/legend/provider/labels.ts +101 -0
- package/src/legend/provider/legend-config-context.ts +15 -0
- package/src/legend/provider/legend-provider.tsx +102 -0
- package/src/legend/stores/index.ts +50 -0
- package/src/legend/stores/legend-context.ts +17 -0
- package/src/legend/stores/legend-store-registry.ts +745 -0
- package/src/legend/stores/legend-store.test.ts +701 -0
- package/src/legend/stores/selectors.ts +127 -0
- package/src/legend/stores/types.ts +359 -0
- package/src/widgets/README.md +277 -0
- package/src/widgets/actions/brush-toggle/brush-overlay.test.tsx +465 -0
- package/src/widgets/actions/brush-toggle/brush-overlay.tsx +408 -0
- package/src/widgets/actions/brush-toggle/brush-toggle.test.tsx +208 -0
- package/src/widgets/actions/brush-toggle/brush-toggle.tsx +133 -0
- package/src/widgets/actions/brush-toggle/hit-test.test.ts +65 -0
- package/src/widgets/actions/brush-toggle/hit-test.ts +45 -0
- package/src/widgets/actions/brush-toggle/style.ts +46 -0
- package/src/widgets/actions/brush-toggle/types.ts +78 -0
- package/src/widgets/actions/change-column/change-column-dnd.test.tsx +193 -0
- package/src/widgets/actions/change-column/change-column-icon.tsx +10 -0
- package/src/widgets/actions/change-column/change-column.test.tsx +290 -0
- package/src/widgets/actions/change-column/change-column.tsx +218 -0
- package/src/widgets/actions/change-column/sortable-column-item.test.tsx +124 -0
- package/src/widgets/actions/change-column/sortable-column-item.tsx +51 -0
- package/src/widgets/actions/change-column/types.ts +20 -0
- package/src/widgets/actions/download/download.test.tsx +326 -0
- package/src/widgets/actions/download/download.tsx +132 -0
- package/src/widgets/actions/download/exports.test.tsx +288 -0
- package/src/widgets/actions/download/exports.tsx +118 -0
- package/src/widgets/actions/download/types.ts +21 -0
- package/src/widgets/actions/fullscreen/fullscreen.test.tsx +269 -0
- package/src/widgets/actions/fullscreen/fullscreen.tsx +98 -0
- package/src/widgets/actions/fullscreen/styles.ts +17 -0
- package/src/widgets/actions/fullscreen/types.ts +32 -0
- package/src/widgets/actions/index.ts +73 -0
- package/src/widgets/actions/lock-selection/lock-selection.test.tsx +198 -0
- package/src/widgets/actions/lock-selection/lock-selection.tsx +128 -0
- package/src/widgets/actions/lock-selection/types.ts +43 -0
- package/src/widgets/actions/relative-data/relative-data.test.tsx +542 -0
- package/src/widgets/actions/relative-data/relative-data.tsx +188 -0
- package/src/widgets/actions/relative-data/types.ts +33 -0
- package/src/widgets/actions/relative-data/utils.test.ts +223 -0
- package/src/widgets/actions/relative-data/utils.ts +58 -0
- package/src/widgets/actions/searcher/searcher-toggle.test.tsx +354 -0
- package/src/widgets/actions/searcher/searcher-toggle.tsx +72 -0
- package/src/widgets/actions/searcher/searcher.tsx +196 -0
- package/src/widgets/actions/searcher/types.ts +72 -0
- package/src/widgets/actions/shared/styles.ts +12 -0
- package/src/widgets/actions/stack-toggle/grouped-bar-chart-icon.tsx +14 -0
- package/src/widgets/actions/stack-toggle/stack-toggle.test.tsx +414 -0
- package/src/widgets/actions/stack-toggle/stack-toggle.tsx +129 -0
- package/src/widgets/actions/stack-toggle/types.ts +29 -0
- package/src/widgets/actions/zoom-toggle/style.ts +14 -0
- package/src/widgets/actions/zoom-toggle/types.ts +44 -0
- package/src/widgets/actions/zoom-toggle/zoom-toggle.test.tsx +322 -0
- package/src/widgets/actions/zoom-toggle/zoom-toggle.tsx +218 -0
- package/src/widgets/bar/config.ts +140 -0
- package/src/widgets/bar/index.ts +9 -0
- package/src/widgets/bar/skeleton.tsx +60 -0
- package/src/widgets/bar/style.ts +33 -0
- package/src/widgets/bar/types.ts +16 -0
- package/src/widgets/category/category-ui.test.tsx +399 -0
- package/src/widgets/category/category-ui.tsx +166 -0
- package/src/widgets/category/components/category-bar.tsx +31 -0
- package/src/widgets/category/components/category-legend.tsx +33 -0
- package/src/widgets/category/components/category-row-multi.tsx +57 -0
- package/src/widgets/category/components/category-row-other.tsx +26 -0
- package/src/widgets/category/components/category-row-single.tsx +54 -0
- package/src/widgets/category/components/category-rows.test.tsx +213 -0
- package/src/widgets/category/config.ts +86 -0
- package/src/widgets/category/index.ts +29 -0
- package/src/widgets/category/skeleton.tsx +24 -0
- package/src/widgets/category/style.ts +134 -0
- package/src/widgets/category/types.ts +41 -0
- package/src/widgets/echart/const.ts +1 -0
- package/src/widgets/echart/echart-ui.test.tsx +526 -0
- package/src/widgets/echart/echart-ui.tsx +78 -0
- package/src/widgets/echart/echart.test.tsx +546 -0
- package/src/widgets/echart/echart.tsx +66 -0
- package/src/widgets/echart/index.ts +16 -0
- package/src/widgets/echart/options.ts +57 -0
- package/src/widgets/echart/shared-resize-observer.ts +45 -0
- package/src/widgets/echart/types.ts +45 -0
- package/src/widgets/echart/utils.test.ts +277 -0
- package/src/widgets/echart/utils.ts +244 -0
- package/src/widgets/error/error.test.tsx +331 -0
- package/src/widgets/error/error.tsx +51 -0
- package/src/widgets/error/index.ts +2 -0
- package/src/widgets/error/types.ts +24 -0
- package/src/widgets/formula/components/item.test.tsx +249 -0
- package/src/widgets/formula/components/item.tsx +21 -0
- package/src/widgets/formula/components/prefix.test.tsx +341 -0
- package/src/widgets/formula/components/prefix.tsx +19 -0
- package/src/widgets/formula/components/row.test.tsx +364 -0
- package/src/widgets/formula/components/row.tsx +24 -0
- package/src/widgets/formula/components/series.tsx +35 -0
- package/src/widgets/formula/components/suffix.test.tsx +383 -0
- package/src/widgets/formula/components/suffix.tsx +29 -0
- package/src/widgets/formula/components/value.test.tsx +329 -0
- package/src/widgets/formula/components/value.tsx +24 -0
- package/src/widgets/formula/config.test.ts +37 -0
- package/src/widgets/formula/config.ts +38 -0
- package/src/widgets/formula/formula-ui.test.tsx +399 -0
- package/src/widgets/formula/formula-ui.tsx +30 -0
- package/src/widgets/formula/index.ts +24 -0
- package/src/widgets/formula/serializer.test.tsx +144 -0
- package/src/widgets/formula/serializer.ts +28 -0
- package/src/widgets/formula/skeleton.tsx +10 -0
- package/src/widgets/formula/style.ts +23 -0
- package/src/widgets/formula/types.ts +50 -0
- package/src/widgets/histogram/config.ts +230 -0
- package/src/widgets/histogram/index.ts +13 -0
- package/src/widgets/histogram/skeleton.tsx +52 -0
- package/src/widgets/histogram/style.ts +8 -0
- package/src/widgets/histogram/types.ts +23 -0
- package/src/widgets/loader/index.ts +4 -0
- package/src/widgets/loader/loader.tsx +92 -0
- package/src/widgets/loader/types.ts +13 -0
- package/src/widgets/loader/utils.test.ts +112 -0
- package/src/widgets/loader/utils.ts +57 -0
- package/src/widgets/markdown/config.ts +28 -0
- package/src/widgets/markdown/index.ts +14 -0
- package/src/widgets/markdown/markdown-ui.test.tsx +341 -0
- package/src/widgets/markdown/markdown-ui.tsx +59 -0
- package/src/widgets/markdown/markdown.tsx +20 -0
- package/src/widgets/markdown/skeleton.tsx +12 -0
- package/src/widgets/markdown/style.ts +28 -0
- package/src/widgets/markdown/types.ts +28 -0
- package/src/widgets/no-data/index.ts +2 -0
- package/src/widgets/no-data/no-data.test.tsx +497 -0
- package/src/widgets/no-data/no-data.tsx +112 -0
- package/src/widgets/no-data/style.ts +18 -0
- package/src/widgets/no-data/types.ts +76 -0
- package/src/widgets/note/index.ts +2 -0
- package/src/widgets/note/note.test.tsx +391 -0
- package/src/widgets/note/note.tsx +124 -0
- package/src/widgets/note/style.ts +29 -0
- package/src/widgets/note/types.ts +9 -0
- package/src/widgets/pie/config.ts +245 -0
- package/src/widgets/pie/index.ts +8 -0
- package/src/widgets/pie/skeleton.tsx +70 -0
- package/src/widgets/pie/style.ts +8 -0
- package/src/widgets/pie/types.ts +16 -0
- package/src/widgets/range/components/range-item.test.tsx +243 -0
- package/src/widgets/range/components/range-item.tsx +214 -0
- package/src/widgets/range/config.ts +10 -0
- package/src/widgets/range/index.ts +16 -0
- package/src/widgets/range/range-ui.test.tsx +203 -0
- package/src/widgets/range/range-ui.tsx +14 -0
- package/src/widgets/range/serializer.test.ts +70 -0
- package/src/widgets/range/serializer.ts +27 -0
- package/src/widgets/range/skeleton.tsx +14 -0
- package/src/widgets/range/style.ts +37 -0
- package/src/widgets/range/types.ts +39 -0
- package/src/widgets/scatterplot/config.ts +136 -0
- package/src/widgets/scatterplot/index.ts +8 -0
- package/src/widgets/scatterplot/skeleton.tsx +59 -0
- package/src/widgets/scatterplot/style.ts +21 -0
- package/src/widgets/scatterplot/types.ts +17 -0
- package/src/widgets/selection-summary/index.ts +6 -0
- package/src/widgets/selection-summary/selection-summary.tsx +57 -0
- package/src/widgets/selection-summary/style.ts +10 -0
- package/src/widgets/selection-summary/types.ts +14 -0
- package/src/widgets/skeleton-loader/index.ts +2 -0
- package/src/widgets/skeleton-loader/skeleton-loader.test.tsx +139 -0
- package/src/widgets/skeleton-loader/skeleton-loader.tsx +35 -0
- package/src/widgets/skeleton-loader/types.ts +8 -0
- package/src/widgets/spread/components/max-value.tsx +29 -0
- package/src/widgets/spread/components/min-value.tsx +29 -0
- package/src/widgets/spread/components/separator.tsx +9 -0
- package/src/widgets/spread/config.ts +39 -0
- package/src/widgets/spread/index.ts +23 -0
- package/src/widgets/spread/skeleton.tsx +10 -0
- package/src/widgets/spread/spread-ui.test.tsx +368 -0
- package/src/widgets/spread/spread-ui.tsx +32 -0
- package/src/widgets/spread/style.ts +22 -0
- package/src/widgets/spread/types.ts +47 -0
- package/src/widgets/stores/index.ts +13 -0
- package/src/widgets/stores/types.ts +203 -0
- package/src/widgets/stores/use-widget-selector.ts +47 -0
- package/src/widgets/stores/widget-store-branches.test.ts +275 -0
- package/src/widgets/stores/widget-store-performance.test.ts +750 -0
- package/src/widgets/stores/widget-store.test.ts +942 -0
- package/src/widgets/stores/widget-store.ts +484 -0
- package/src/widgets/subheader/index.ts +3 -0
- package/src/widgets/subheader/style.ts +20 -0
- package/src/widgets/subheader/subheader.test.tsx +45 -0
- package/src/widgets/subheader/subheader.tsx +35 -0
- package/src/widgets/subheader/types.ts +11 -0
- package/src/widgets/table/components/cell-header.tsx +58 -0
- package/src/widgets/table/components/cell.tsx +82 -0
- package/src/widgets/table/components/pagination-actions.tsx +67 -0
- package/src/widgets/table/components/pagination.tsx +41 -0
- package/src/widgets/table/components/row.tsx +65 -0
- package/src/widgets/table/config.test.ts +65 -0
- package/src/widgets/table/config.ts +75 -0
- package/src/widgets/table/helpers.test.ts +244 -0
- package/src/widgets/table/helpers.ts +107 -0
- package/src/widgets/table/hooks/use-pagination.test.ts +294 -0
- package/src/widgets/table/hooks/use-pagination.ts +148 -0
- package/src/widgets/table/hooks/use-selection.test.ts +504 -0
- package/src/widgets/table/hooks/use-selection.ts +194 -0
- package/src/widgets/table/hooks/use-sort.test.ts +296 -0
- package/src/widgets/table/hooks/use-sort.ts +131 -0
- package/src/widgets/table/index.ts +55 -0
- package/src/widgets/table/serializer.ts +54 -0
- package/src/widgets/table/skeleton.tsx +48 -0
- package/src/widgets/table/style.ts +34 -0
- package/src/widgets/table/table-ui.tsx +64 -0
- package/src/widgets/table/types.ts +223 -0
- package/src/widgets/timeseries/config.ts +136 -0
- package/src/widgets/timeseries/index.ts +8 -0
- package/src/widgets/timeseries/skeleton.tsx +55 -0
- package/src/widgets/timeseries/style.ts +36 -0
- package/src/widgets/timeseries/types.ts +17 -0
- package/src/widgets/toolbar-actions/index.ts +6 -0
- package/src/widgets/toolbar-actions/styles.ts +38 -0
- package/src/widgets/toolbar-actions/toolbar-actions.test.tsx +691 -0
- package/src/widgets/toolbar-actions/toolbar-actions.tsx +145 -0
- package/src/widgets/toolbar-actions/types.ts +60 -0
- package/src/widgets/utils/chart-config/config-factory.ts +67 -0
- package/src/widgets/utils/chart-config/csv-modifiers.ts +56 -0
- package/src/widgets/utils/chart-config/download-config.ts +22 -0
- package/src/widgets/utils/chart-config/index.ts +29 -0
- package/src/widgets/utils/chart-config/option-builders.test.ts +366 -0
- package/src/widgets/utils/chart-config/option-builders.ts +308 -0
- package/src/widgets/utils/formatter.ts +2 -0
- package/src/widgets/utils/index.ts +26 -0
- package/{dist/types/widgets/_shared/skeleton/index.d.ts → src/widgets/utils/skeleton/index.ts} +2 -1
- package/src/widgets/utils/skeleton/styles.ts +20 -0
- package/src/widgets/wrapper/components/actions.test.tsx +105 -0
- package/src/widgets/wrapper/components/actions.tsx +35 -0
- package/src/widgets/wrapper/components/options.test.tsx +331 -0
- package/src/widgets/wrapper/components/options.tsx +81 -0
- package/src/widgets/wrapper/components/title.test.tsx +126 -0
- package/src/widgets/wrapper/components/title.tsx +35 -0
- package/src/widgets/wrapper/index.ts +16 -0
- package/src/widgets/wrapper/styles.ts +98 -0
- package/src/widgets/wrapper/types.ts +55 -0
- package/src/widgets/wrapper/wrapper-ui.test.tsx +232 -0
- package/src/widgets/wrapper/wrapper-ui.tsx +72 -0
- package/src/widgets/wrapper/wrapper.test.tsx +365 -0
- package/src/widgets/wrapper/wrapper.tsx +60 -0
- package/src/widgets-v2/PERFORMANCE.md +189 -0
- package/src/widgets-v2/actions/brush-toggle/brush-toggle.test.tsx +180 -0
- package/src/widgets-v2/actions/brush-toggle/brush-toggle.tsx +154 -0
- package/src/widgets-v2/actions/brush-toggle/index.ts +3 -0
- package/src/widgets-v2/actions/brush-toggle/labels.ts +9 -0
- package/src/widgets-v2/actions/brush-toggle/style.ts +11 -0
- package/src/widgets-v2/actions/brush-toggle/transforms.test.ts +47 -0
- package/src/widgets-v2/actions/brush-toggle/transforms.ts +31 -0
- package/src/widgets-v2/actions/change-column/change-column-icon.tsx +14 -0
- package/src/widgets-v2/actions/change-column/change-column.test.tsx +59 -0
- package/src/widgets-v2/actions/change-column/change-column.tsx +189 -0
- package/src/widgets-v2/actions/change-column/index.ts +7 -0
- package/src/widgets-v2/actions/change-column/labels.ts +11 -0
- package/src/widgets-v2/actions/change-column/sortable-column-item.tsx +63 -0
- package/src/widgets-v2/actions/change-column/style.ts +58 -0
- package/src/widgets-v2/actions/change-column/types.ts +11 -0
- package/src/widgets-v2/actions/download/constants.ts +14 -0
- package/src/widgets-v2/actions/download/csv-item.test.tsx +77 -0
- package/src/widgets-v2/actions/download/csv-item.tsx +71 -0
- package/src/widgets-v2/actions/download/download.test.tsx +327 -0
- package/src/widgets-v2/actions/download/download.tsx +144 -0
- package/src/widgets-v2/actions/download/exports.test.tsx +198 -0
- package/src/widgets-v2/actions/download/exports.ts +115 -0
- package/src/widgets-v2/actions/download/icons.tsx +35 -0
- package/src/widgets-v2/actions/download/index.ts +15 -0
- package/src/widgets-v2/actions/download/labels.ts +16 -0
- package/src/widgets-v2/actions/download/png-item.test.tsx +72 -0
- package/src/widgets-v2/actions/download/png-item.tsx +53 -0
- package/src/widgets-v2/actions/download/style.ts +3 -0
- package/src/widgets-v2/actions/download/types.ts +32 -0
- package/src/widgets-v2/actions/fullscreen/fullscreen.test.tsx +150 -0
- package/src/widgets-v2/actions/fullscreen/fullscreen.tsx +230 -0
- package/src/widgets-v2/actions/fullscreen/index.ts +7 -0
- package/src/widgets-v2/actions/fullscreen/labels.ts +9 -0
- package/src/widgets-v2/actions/fullscreen/style.ts +59 -0
- package/src/widgets-v2/actions/fullscreen/types.ts +15 -0
- package/src/widgets-v2/actions/index.ts +95 -0
- package/src/widgets-v2/actions/lock-selection/index.ts +10 -0
- package/src/widgets-v2/actions/lock-selection/labels.ts +11 -0
- package/src/widgets-v2/actions/lock-selection/lock-selection.test.tsx +301 -0
- package/src/widgets-v2/actions/lock-selection/lock-selection.tsx +188 -0
- package/src/widgets-v2/actions/lock-selection/style.ts +11 -0
- package/src/widgets-v2/actions/lock-selection/transforms.ts +27 -0
- package/src/widgets-v2/actions/relative-data/index.ts +3 -0
- package/src/widgets-v2/actions/relative-data/labels.ts +9 -0
- package/src/widgets-v2/actions/relative-data/relative-data.test.tsx +71 -0
- package/src/widgets-v2/actions/relative-data/relative-data.tsx +107 -0
- package/src/widgets-v2/actions/relative-data/style.ts +11 -0
- package/src/widgets-v2/actions/relative-data/transforms.test.ts +151 -0
- package/src/widgets-v2/actions/relative-data/transforms.ts +70 -0
- package/src/widgets-v2/actions/searcher/filter.ts +28 -0
- package/src/widgets-v2/actions/searcher/index.ts +8 -0
- package/src/widgets-v2/actions/searcher/labels.ts +13 -0
- package/src/widgets-v2/actions/searcher/searcher-toggle.tsx +91 -0
- package/src/widgets-v2/actions/searcher/searcher.test.tsx +92 -0
- package/src/widgets-v2/actions/searcher/searcher.tsx +111 -0
- package/src/widgets-v2/actions/searcher/style.ts +15 -0
- package/src/widgets-v2/actions/show-all/index.ts +7 -0
- package/src/widgets-v2/actions/show-all/labels.ts +8 -0
- package/src/widgets-v2/actions/show-all/show-all.test.tsx +50 -0
- package/src/widgets-v2/actions/show-all/show-all.tsx +72 -0
- package/src/widgets-v2/actions/show-all/style.ts +8 -0
- package/src/widgets-v2/actions/stack-toggle/index.ts +3 -0
- package/src/widgets-v2/actions/stack-toggle/labels.ts +9 -0
- package/src/widgets-v2/actions/stack-toggle/stack-toggle.test.tsx +61 -0
- package/src/widgets-v2/actions/stack-toggle/stack-toggle.tsx +54 -0
- package/src/widgets-v2/actions/stack-toggle/style.ts +11 -0
- package/src/widgets-v2/actions/stack-toggle/transforms.test.ts +43 -0
- package/src/widgets-v2/actions/stack-toggle/transforms.ts +25 -0
- package/src/widgets-v2/actions/zoom-toggle/index.ts +9 -0
- package/src/widgets-v2/actions/zoom-toggle/labels.ts +9 -0
- package/src/widgets-v2/actions/zoom-toggle/style.ts +11 -0
- package/src/widgets-v2/actions/zoom-toggle/transforms.test.ts +148 -0
- package/src/widgets-v2/actions/zoom-toggle/transforms.ts +171 -0
- package/src/widgets-v2/actions/zoom-toggle/zoom-toggle.test.tsx +107 -0
- package/src/widgets-v2/actions/zoom-toggle/zoom-toggle.tsx +106 -0
- package/src/widgets-v2/bar/download.test.tsx +91 -0
- package/src/widgets-v2/bar/download.tsx +60 -0
- package/src/widgets-v2/bar/index.ts +10 -0
- package/src/widgets-v2/bar/options.test.ts +361 -0
- package/src/widgets-v2/bar/options.ts +333 -0
- package/src/widgets-v2/bar/skeleton.test.tsx +19 -0
- package/src/widgets-v2/bar/skeleton.tsx +69 -0
- package/src/widgets-v2/bar/types.ts +51 -0
- package/src/widgets-v2/category/category-ui.test.tsx +909 -0
- package/src/widgets-v2/category/category-ui.tsx +479 -0
- package/src/widgets-v2/category/category.relative-data.test.tsx +107 -0
- package/src/widgets-v2/category/category.stack-toggle.test.tsx +85 -0
- package/src/widgets-v2/category/category.test.tsx +305 -0
- package/src/widgets-v2/category/category.tsx +130 -0
- package/src/widgets-v2/category/components/category-bar-stacked.test.tsx +121 -0
- package/src/widgets-v2/category/components/category-bar-stacked.tsx +73 -0
- package/src/widgets-v2/category/components/category-bar.test.tsx +64 -0
- package/src/widgets-v2/category/components/category-bar.tsx +49 -0
- package/src/widgets-v2/category/components/category-legend.test.tsx +102 -0
- package/src/widgets-v2/category/components/category-legend.tsx +82 -0
- package/src/widgets-v2/category/components/category-row-multi.tsx +86 -0
- package/src/widgets-v2/category/components/category-row-other.test.tsx +57 -0
- package/src/widgets-v2/category/components/category-row-other.tsx +84 -0
- package/src/widgets-v2/category/components/category-row-single.tsx +76 -0
- package/src/widgets-v2/category/components/category-row-stacked.test.tsx +248 -0
- package/src/widgets-v2/category/components/category-row-stacked.tsx +104 -0
- package/src/widgets-v2/category/download.test.ts +80 -0
- package/src/widgets-v2/category/download.ts +50 -0
- package/src/widgets-v2/category/index.ts +32 -0
- package/src/widgets-v2/category/skeleton.test.tsx +26 -0
- package/src/widgets-v2/category/skeleton.tsx +74 -0
- package/src/widgets-v2/category/style.ts +329 -0
- package/src/widgets-v2/category/types.ts +61 -0
- package/src/widgets-v2/echart/echart-ui.test.tsx +327 -0
- package/src/widgets-v2/echart/echart-ui.tsx +232 -0
- package/src/widgets-v2/echart/echart.test.tsx +229 -0
- package/src/widgets-v2/echart/echart.tsx +199 -0
- package/src/widgets-v2/echart/edge-label-clamp.test.ts +198 -0
- package/src/widgets-v2/echart/edge-label-clamp.ts +217 -0
- package/src/widgets-v2/echart/index.ts +22 -0
- package/src/widgets-v2/echart/shared-resize-observer.test.ts +91 -0
- package/src/widgets-v2/echart/shared-resize-observer.ts +56 -0
- package/src/widgets-v2/echart/style.ts +8 -0
- package/src/widgets-v2/echart/use-chart-selection.test.tsx +120 -0
- package/src/widgets-v2/echart/use-chart-selection.ts +121 -0
- package/src/widgets-v2/formula/delta.tsx +61 -0
- package/src/widgets-v2/formula/download.test.tsx +65 -0
- package/src/widgets-v2/formula/download.tsx +63 -0
- package/src/widgets-v2/formula/formula-ui.test.tsx +91 -0
- package/src/widgets-v2/formula/formula-ui.tsx +66 -0
- package/src/widgets-v2/formula/formula.test.tsx +50 -0
- package/src/widgets-v2/formula/formula.tsx +34 -0
- package/src/widgets-v2/formula/index.ts +17 -0
- package/src/widgets-v2/formula/note.tsx +25 -0
- package/src/widgets-v2/formula/prefix.tsx +25 -0
- package/src/widgets-v2/formula/series.tsx +67 -0
- package/src/widgets-v2/formula/skeleton.test.tsx +21 -0
- package/src/widgets-v2/formula/skeleton.tsx +27 -0
- package/src/widgets-v2/formula/style.ts +31 -0
- package/src/widgets-v2/formula/subcomponents.test.tsx +107 -0
- package/src/widgets-v2/formula/suffix.tsx +25 -0
- package/src/widgets-v2/formula/types.ts +48 -0
- package/src/widgets-v2/formula/value.tsx +31 -0
- package/src/widgets-v2/histogram/download.test.ts +94 -0
- package/src/widgets-v2/histogram/download.ts +56 -0
- package/src/widgets-v2/histogram/index.ts +13 -0
- package/src/widgets-v2/histogram/options.test.ts +411 -0
- package/src/widgets-v2/histogram/options.ts +390 -0
- package/src/widgets-v2/histogram/skeleton.test.tsx +16 -0
- package/src/widgets-v2/histogram/skeleton.tsx +70 -0
- package/src/widgets-v2/histogram/transforms.test.ts +81 -0
- package/src/widgets-v2/histogram/transforms.ts +53 -0
- package/src/widgets-v2/histogram/types.ts +64 -0
- package/src/widgets-v2/index.ts +212 -0
- package/src/widgets-v2/markdown/download.test.ts +66 -0
- package/src/widgets-v2/markdown/download.tsx +56 -0
- package/src/widgets-v2/markdown/index.ts +6 -0
- package/src/widgets-v2/markdown/markdown-content.test.tsx +165 -0
- package/src/widgets-v2/markdown/markdown-content.tsx +81 -0
- package/src/widgets-v2/markdown/markdown-ui.test.tsx +75 -0
- package/src/widgets-v2/markdown/markdown-ui.tsx +55 -0
- package/src/widgets-v2/markdown/markdown.test.tsx +39 -0
- package/src/widgets-v2/markdown/markdown.tsx +17 -0
- package/src/widgets-v2/markdown/skeleton.test.tsx +15 -0
- package/src/widgets-v2/markdown/skeleton.tsx +32 -0
- package/src/widgets-v2/markdown/style.ts +53 -0
- package/src/widgets-v2/markdown/types.ts +4 -0
- package/src/widgets-v2/note/labels.ts +9 -0
- package/src/widgets-v2/note/style.ts +26 -0
- package/src/widgets-v2/note/widget-note.test.tsx +158 -0
- package/src/widgets-v2/note/widget-note.tsx +172 -0
- package/src/widgets-v2/pie/download.test.ts +78 -0
- package/src/widgets-v2/pie/download.ts +51 -0
- package/src/widgets-v2/pie/index.ts +10 -0
- package/src/widgets-v2/pie/options.test.ts +930 -0
- package/src/widgets-v2/pie/options.ts +611 -0
- package/src/widgets-v2/pie/skeleton.test.tsx +20 -0
- package/src/widgets-v2/pie/skeleton.tsx +94 -0
- package/src/widgets-v2/pie/types.ts +62 -0
- package/src/widgets-v2/provider/widget-provider.test.tsx +119 -0
- package/src/widgets-v2/provider/widget-provider.tsx +111 -0
- package/src/widgets-v2/range/index.ts +4 -0
- package/src/widgets-v2/range/range-ui.test.tsx +136 -0
- package/src/widgets-v2/range/range-ui.tsx +278 -0
- package/src/widgets-v2/range/range.test.tsx +68 -0
- package/src/widgets-v2/range/range.tsx +52 -0
- package/src/widgets-v2/range/skeleton.test.tsx +17 -0
- package/src/widgets-v2/range/skeleton.tsx +47 -0
- package/src/widgets-v2/range/style.ts +41 -0
- package/src/widgets-v2/range/types.ts +37 -0
- package/src/widgets-v2/scatterplot/download.test.ts +71 -0
- package/src/widgets-v2/scatterplot/download.ts +50 -0
- package/src/widgets-v2/scatterplot/index.ts +14 -0
- package/src/widgets-v2/scatterplot/options.test.ts +411 -0
- package/src/widgets-v2/scatterplot/options.ts +422 -0
- package/src/widgets-v2/scatterplot/skeleton.test.tsx +17 -0
- package/src/widgets-v2/scatterplot/skeleton.tsx +84 -0
- package/src/widgets-v2/scatterplot/transforms.test.ts +134 -0
- package/src/widgets-v2/scatterplot/transforms.ts +61 -0
- package/src/widgets-v2/scatterplot/types.ts +59 -0
- package/src/widgets-v2/selection-summary/labels.ts +15 -0
- package/src/widgets-v2/selection-summary/selection-summary.test.tsx +59 -0
- package/src/widgets-v2/selection-summary/selection-summary.tsx +82 -0
- package/src/widgets-v2/selection-summary/style.ts +38 -0
- package/src/widgets-v2/spread/band.test.ts +46 -0
- package/src/widgets-v2/spread/band.ts +47 -0
- package/src/widgets-v2/spread/download.test.ts +64 -0
- package/src/widgets-v2/spread/download.ts +55 -0
- package/src/widgets-v2/spread/index.ts +11 -0
- package/src/widgets-v2/spread/separator.tsx +11 -0
- package/src/widgets-v2/spread/skeleton.test.tsx +17 -0
- package/src/widgets-v2/spread/skeleton.tsx +38 -0
- package/src/widgets-v2/spread/spread-ui.test.tsx +108 -0
- package/src/widgets-v2/spread/spread-ui.tsx +52 -0
- package/src/widgets-v2/spread/spread.test.tsx +50 -0
- package/src/widgets-v2/spread/spread.tsx +31 -0
- package/src/widgets-v2/spread/types.ts +27 -0
- package/src/widgets-v2/state/labels.test.ts +33 -0
- package/src/widgets-v2/state/labels.ts +20 -0
- package/src/widgets-v2/state/style.ts +25 -0
- package/src/widgets-v2/state/widget-state.test.tsx +294 -0
- package/src/widgets-v2/state/widget-state.tsx +184 -0
- package/src/widgets-v2/stores/index.ts +49 -0
- package/src/widgets-v2/stores/pipeline-middleware.test.ts +187 -0
- package/src/widgets-v2/stores/pipeline-middleware.ts +91 -0
- package/src/widgets-v2/stores/transforms.test.ts +162 -0
- package/src/widgets-v2/stores/transforms.ts +70 -0
- package/src/widgets-v2/stores/types.ts +64 -0
- package/src/widgets-v2/stores/use-echart-instance.test.tsx +91 -0
- package/src/widgets-v2/stores/use-echart-instance.ts +29 -0
- package/src/widgets-v2/stores/use-transform-enabled.test.tsx +127 -0
- package/src/widgets-v2/stores/use-transform-enabled.ts +25 -0
- package/src/widgets-v2/stores/use-transform.test.tsx +262 -0
- package/src/widgets-v2/stores/use-transform.ts +158 -0
- package/src/widgets-v2/stores/widget-context.test.tsx +58 -0
- package/src/widgets-v2/stores/widget-context.ts +15 -0
- package/src/widgets-v2/stores/widget-store-registry.test.ts +292 -0
- package/src/widgets-v2/stores/widget-store-registry.ts +239 -0
- package/src/widgets-v2/subheader/style.ts +12 -0
- package/src/widgets-v2/subheader/subheader.test.tsx +30 -0
- package/src/widgets-v2/subheader/subheader.tsx +16 -0
- package/src/widgets-v2/table/download.test.ts +85 -0
- package/src/widgets-v2/table/download.ts +43 -0
- package/src/widgets-v2/table/helpers.test.ts +233 -0
- package/src/widgets-v2/table/helpers.ts +131 -0
- package/src/widgets-v2/table/index.ts +24 -0
- package/src/widgets-v2/table/labels.tsx +41 -0
- package/src/widgets-v2/table/skeleton.test.tsx +26 -0
- package/src/widgets-v2/table/skeleton.tsx +65 -0
- package/src/widgets-v2/table/style.ts +43 -0
- package/src/widgets-v2/table/table-ui.test.tsx +200 -0
- package/src/widgets-v2/table/table-ui.tsx +364 -0
- package/src/widgets-v2/table/table.test.tsx +119 -0
- package/src/widgets-v2/table/table.tsx +179 -0
- package/src/widgets-v2/table/transforms.test.ts +40 -0
- package/src/widgets-v2/table/transforms.ts +28 -0
- package/src/widgets-v2/table/types.ts +55 -0
- package/src/widgets-v2/test-utils.ts +107 -0
- package/src/widgets-v2/timeseries/download.test.ts +95 -0
- package/src/widgets-v2/timeseries/download.ts +82 -0
- package/src/widgets-v2/timeseries/index.ts +11 -0
- package/src/widgets-v2/timeseries/options.test.ts +399 -0
- package/src/widgets-v2/timeseries/options.ts +342 -0
- package/src/widgets-v2/timeseries/skeleton.test.tsx +13 -0
- package/src/widgets-v2/timeseries/skeleton.tsx +76 -0
- package/src/widgets-v2/timeseries/transforms.test.ts +49 -0
- package/src/widgets-v2/timeseries/transforms.ts +31 -0
- package/src/widgets-v2/timeseries/types.ts +65 -0
- package/src/widgets-v2/toolbox/labels.ts +9 -0
- package/src/widgets-v2/toolbox/style.ts +33 -0
- package/src/widgets-v2/toolbox/toolbox.test.tsx +200 -0
- package/src/widgets-v2/toolbox/toolbox.tsx +309 -0
- package/src/widgets-v2/types.ts +25 -0
- package/src/widgets-v2/utils/data-zoom-layout.ts +26 -0
- package/src/widgets-v2/utils/index.ts +3 -0
- package/src/widgets-v2/utils/merge-options.test.ts +52 -0
- package/src/widgets-v2/utils/merge-options.ts +50 -0
- package/src/widgets-v2/utils/resolve-theme-color.test.ts +43 -0
- package/src/widgets-v2/utils/resolve-theme-color.ts +34 -0
- package/src/widgets-v2/wrapper/index.ts +14 -0
- package/src/widgets-v2/wrapper/labels.ts +11 -0
- package/src/widgets-v2/wrapper/style.ts +128 -0
- package/src/widgets-v2/wrapper/widget-actions.test.tsx +52 -0
- package/src/widgets-v2/wrapper/widget-actions.tsx +43 -0
- package/src/widgets-v2/wrapper/widget-content.test.tsx +27 -0
- package/src/widgets-v2/wrapper/widget-content.tsx +29 -0
- package/src/widgets-v2/wrapper/widget-wrapper.test.tsx +255 -0
- package/src/widgets-v2/wrapper/widget-wrapper.tsx +194 -0
- package/dist/cjs-D9ro6BXv.js +0 -85
- package/dist/cjs-D9ro6BXv.js.map +0 -1
- package/dist/components.js.map +0 -1
- package/dist/error-G3sy6lw3.js +0 -38
- package/dist/error-G3sy6lw3.js.map +0 -1
- package/dist/exports-Cr43OCul.js +0 -51
- package/dist/exports-Cr43OCul.js.map +0 -1
- package/dist/lasso-tool-CYn3ivf-.js +0 -534
- package/dist/lasso-tool-CYn3ivf-.js.map +0 -1
- package/dist/no-data-DfkC_Kc_.js +0 -61
- package/dist/no-data-DfkC_Kc_.js.map +0 -1
- package/dist/note-Clng2ej6.js +0 -124
- package/dist/note-Clng2ej6.js.map +0 -1
- package/dist/options-D9wflre6.js +0 -49
- package/dist/options-D9wflre6.js.map +0 -1
- package/dist/row-B9hTUitn.js +0 -35
- package/dist/row-B9hTUitn.js.map +0 -1
- package/dist/series-DojKkd_o.js +0 -91
- package/dist/series-DojKkd_o.js.map +0 -1
- package/dist/smart-tooltip-BEtBaIdz.js +0 -39
- package/dist/smart-tooltip-BEtBaIdz.js.map +0 -1
- package/dist/styles-dOu_pRNb.js +0 -77
- package/dist/styles-dOu_pRNb.js.map +0 -1
- package/dist/tooltip-BDnrRKrp.js +0 -25
- package/dist/tooltip-BDnrRKrp.js.map +0 -1
- package/dist/types/common/common.d.ts +0 -3
- package/dist/types/common/index.d.ts +0 -26
- package/dist/types/common/lasso-tools.d.ts +0 -36
- package/dist/types/common/measurement-tools.d.ts +0 -65
- package/dist/types/hooks/use-debounce.d.ts +0 -19
- package/dist/types/widgets/_shared/chart-config/index.d.ts +0 -7
- package/dist/types/widgets/_shared/chart-config/option-builders.d.ts +0 -34
- package/dist/types/widgets/actions/relative-data/style.d.ts +0 -8
- package/dist/types/widgets/actions/relative-data/utils.test.d.ts +0 -1
- package/dist/types/widgets/actions/zoom-toggle/index.d.ts +0 -2
- package/dist/types/widgets/category/components/index.d.ts +0 -10
- package/dist/types/widgets/index.d.ts +0 -8
- package/dist/types/widgets/range/serializer.test.d.ts +0 -1
- package/dist/types/widgets/root/index.d.ts +0 -3
- package/dist/types/widgets/root/root.d.ts +0 -2
- package/dist/types/widgets/root/types.d.ts +0 -9
- package/dist/types/widgets/root/utils.d.ts +0 -1
- package/dist/types/widgets/stores/widget-store.test.d.ts +0 -1
- package/dist/types/widgets/table/components/index.d.ts +0 -4
- package/dist/types/widgets/table/helpers.test.d.ts +0 -1
- package/dist/types/widgets/table/hooks/index.d.ts +0 -6
- package/dist/types/widgets/table/hooks/use-pagination.test.d.ts +0 -1
- package/dist/types/widgets/table/hooks/use-selection.test.d.ts +0 -1
- package/dist/types/widgets/table/hooks/use-sort.test.d.ts +0 -1
- package/dist/utils-Dv5Z47UQ.js +0 -144
- package/dist/utils-Dv5Z47UQ.js.map +0 -1
- package/dist/widget-store-Dd7_sWZT.js +0 -132
- package/dist/widget-store-Dd7_sWZT.js.map +0 -1
- package/dist/widgets/actions.js.map +0 -1
- package/dist/widgets/echart.js.map +0 -1
- package/dist/widgets/formula.js.map +0 -1
- package/dist/widgets/root.js +0 -68
- package/dist/widgets/root.js.map +0 -1
- package/dist/widgets/stores.js.map +0 -1
- package/dist/widgets.js +0 -11
- package/dist/widgets.js.map +0 -1
- /package/dist/types/widgets/{_shared → utils}/chart-config/csv-modifiers.d.ts +0 -0
- /package/dist/types/widgets/{_shared → utils}/skeleton/styles.d.ts +0 -0
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
import { create as f } from "zustand";
|
|
2
|
-
const u = /* @__PURE__ */ new Map(), w = f()((c, T) => ({
|
|
3
|
-
// State
|
|
4
|
-
widgets: {},
|
|
5
|
-
// Actions
|
|
6
|
-
setWidget: (e, t) => c((o) => {
|
|
7
|
-
const r = o.widgets[e] ?? {};
|
|
8
|
-
return {
|
|
9
|
-
widgets: {
|
|
10
|
-
...o.widgets,
|
|
11
|
-
[e]: {
|
|
12
|
-
...r,
|
|
13
|
-
...t,
|
|
14
|
-
id: e
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
};
|
|
18
|
-
}),
|
|
19
|
-
removeWidget: (e) => c((t) => {
|
|
20
|
-
const o = {
|
|
21
|
-
...t.widgets
|
|
22
|
-
};
|
|
23
|
-
return delete o[e], {
|
|
24
|
-
widgets: o
|
|
25
|
-
};
|
|
26
|
-
}),
|
|
27
|
-
clearWidgets: () => c({
|
|
28
|
-
widgets: {}
|
|
29
|
-
}),
|
|
30
|
-
getWidget: (e) => T().widgets[e],
|
|
31
|
-
registerTool: (e, t) => c((o) => {
|
|
32
|
-
const r = o.widgets[e] ?? {}, l = (r.registeredTools ?? []).filter((g) => g.id !== t.id);
|
|
33
|
-
return {
|
|
34
|
-
widgets: {
|
|
35
|
-
...o.widgets,
|
|
36
|
-
[e]: {
|
|
37
|
-
...r,
|
|
38
|
-
id: e,
|
|
39
|
-
registeredTools: [...l, t]
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
};
|
|
43
|
-
}),
|
|
44
|
-
unregisterTool: (e, t) => c((o) => {
|
|
45
|
-
const r = o.widgets[e];
|
|
46
|
-
if (!r) return o;
|
|
47
|
-
const l = (r.registeredTools ?? []).filter((g) => g.id !== t);
|
|
48
|
-
return {
|
|
49
|
-
widgets: {
|
|
50
|
-
...o.widgets,
|
|
51
|
-
[e]: {
|
|
52
|
-
...r,
|
|
53
|
-
registeredTools: l
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
};
|
|
57
|
-
}),
|
|
58
|
-
updateToolConfig: (e, t, o) => c((r) => {
|
|
59
|
-
const i = r.widgets[e];
|
|
60
|
-
if (!i) return r;
|
|
61
|
-
const g = (i.registeredTools ?? []).map((n) => n.id === t ? {
|
|
62
|
-
...n,
|
|
63
|
-
config: {
|
|
64
|
-
...n.config,
|
|
65
|
-
...o
|
|
66
|
-
}
|
|
67
|
-
} : n);
|
|
68
|
-
return {
|
|
69
|
-
widgets: {
|
|
70
|
-
...r.widgets,
|
|
71
|
-
[e]: {
|
|
72
|
-
...i,
|
|
73
|
-
registeredTools: g
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
};
|
|
77
|
-
}),
|
|
78
|
-
setToolEnabled: (e, t, o) => c((r) => {
|
|
79
|
-
const i = r.widgets[e];
|
|
80
|
-
if (!i) return r;
|
|
81
|
-
const g = (i.registeredTools ?? []).map((n) => n.id === t ? {
|
|
82
|
-
...n,
|
|
83
|
-
enabled: o
|
|
84
|
-
} : n);
|
|
85
|
-
return {
|
|
86
|
-
widgets: {
|
|
87
|
-
...r.widgets,
|
|
88
|
-
[e]: {
|
|
89
|
-
...i,
|
|
90
|
-
registeredTools: g
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
};
|
|
94
|
-
}),
|
|
95
|
-
executeToolPipeline: async (e, t) => {
|
|
96
|
-
const o = T().widgets[e];
|
|
97
|
-
if (!o) return;
|
|
98
|
-
const r = (u.get(e) ?? 0) + 1;
|
|
99
|
-
u.set(e, r);
|
|
100
|
-
const i = o, l = /* @__PURE__ */ new Set();
|
|
101
|
-
for (const s of i.registeredTools ?? [])
|
|
102
|
-
s.enabled && s.disables && s.disables.forEach((d) => l.add(d));
|
|
103
|
-
const g = [...i.registeredTools ?? []].filter((s) => s.enabled && !l.has(s.id)).sort((s, d) => s.order - d.order);
|
|
104
|
-
let n = t;
|
|
105
|
-
for (const s of g) {
|
|
106
|
-
if (u.get(e) !== r)
|
|
107
|
-
return;
|
|
108
|
-
try {
|
|
109
|
-
const d = s.fn(n, s.config);
|
|
110
|
-
n = d instanceof Promise ? await d : d;
|
|
111
|
-
} catch (d) {
|
|
112
|
-
console.error(`Tool ${s.id} failed for widget ${e}:`, d);
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
u.get(e) === r && (c((s) => {
|
|
116
|
-
const d = s.widgets[e];
|
|
117
|
-
return d ? {
|
|
118
|
-
widgets: {
|
|
119
|
-
...s.widgets,
|
|
120
|
-
[e]: {
|
|
121
|
-
...d,
|
|
122
|
-
data: n
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
} : s;
|
|
126
|
-
}), u.get(e) === r && u.delete(e));
|
|
127
|
-
}
|
|
128
|
-
}));
|
|
129
|
-
export {
|
|
130
|
-
w as u
|
|
131
|
-
};
|
|
132
|
-
//# sourceMappingURL=widget-store-Dd7_sWZT.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"widget-store-Dd7_sWZT.js","sources":["../src/widgets/stores/widget-store.ts"],"sourcesContent":["import { create } from 'zustand'\nimport type { WidgetState, WidgetStore, ToolRegistration } from './types'\n\n// Track active pipeline executions for cancellation\nconst activePipelines = new Map<string, number>()\n\n/**\n * Zustand store for managing widget state across the application.\n *\n * This store provides centralized state management for all widget UI components\n *\n * @example\n * ```tsx\n * // Import the store\n * import { useWidgetStore } from '@carto/ps-react-ui/widgets'\n *\n * // Use in a component\n * function MyWidget() {\n * const setWidget = useWidgetStore((state) => state.setWidget)\n * const widget = useWidgetStore((state) => state.widgets['my-widget'])\n *\n * useEffect(() => {\n * setWidget({\n * id: 'my-widget',\n * type: 'formula',\n * title: 'Total Sales',\n * isLoading: false,\n * visible: true,\n * data: { value: 1000, prefix: '$' }\n * })\n * }, [setWidget])\n *\n * return <div>{widget?.data?.value}</div>\n * }\n * ```\n *\n * @example\n * ```tsx\n * // Get widgets by type\n * const getWidgetsByType = useWidgetStore((state) => state.getWidgetsByType)\n * const formulaWidgets = getWidgetsByType('formula')\n * ```\n */\nexport const useWidgetStore = create<WidgetStore>()((set, get) => ({\n // State\n widgets: {},\n\n // Actions\n setWidget: (id, widget) =>\n set((state) => {\n const current =\n state.widgets[id] ?? ({} as WidgetStore['widgets'][string])\n return {\n widgets: {\n ...state.widgets,\n [id]: {\n ...current,\n ...widget,\n id,\n },\n },\n }\n }),\n\n removeWidget: (id) =>\n set((state) => {\n const widgets = { ...state.widgets }\n\n delete widgets[id]\n\n return { widgets }\n }),\n\n clearWidgets: () =>\n set({\n widgets: {},\n }),\n\n getWidget: <T extends WidgetState>(id: string) => {\n return get().widgets[id] as T | undefined\n },\n\n registerTool: (widgetId: string, tool: ToolRegistration) =>\n set((state) => {\n const current = state.widgets[widgetId] ?? ({} as WidgetState)\n const registeredTools = current.registeredTools ?? []\n\n // Remove existing tool with same id if present\n const filteredTools = registeredTools.filter(\n (t: ToolRegistration) => t.id !== tool.id,\n )\n\n return {\n widgets: {\n ...state.widgets,\n [widgetId]: {\n ...current,\n id: widgetId,\n registeredTools: [...filteredTools, tool],\n },\n },\n }\n }),\n\n unregisterTool: (widgetId: string, toolId: string) =>\n set((state) => {\n const current = state.widgets[widgetId]\n if (!current) return state\n\n const registeredTools = current.registeredTools ?? []\n const filteredTools = registeredTools.filter(\n (t: ToolRegistration) => t.id !== toolId,\n )\n\n return {\n widgets: {\n ...state.widgets,\n [widgetId]: {\n ...current,\n registeredTools: filteredTools,\n },\n },\n }\n }),\n\n updateToolConfig: (\n widgetId: string,\n toolId: string,\n config: Record<string, unknown>,\n ) =>\n set((state) => {\n const current = state.widgets[widgetId]\n if (!current) return state\n\n const registeredTools = current.registeredTools ?? []\n const updatedTools = registeredTools.map((tool: ToolRegistration) =>\n tool.id === toolId\n ? {\n ...tool,\n config: { ...tool.config, ...config },\n }\n : tool,\n )\n\n return {\n widgets: {\n ...state.widgets,\n [widgetId]: {\n ...current,\n registeredTools: updatedTools,\n },\n },\n }\n }),\n\n setToolEnabled: (widgetId: string, toolId: string, enabled: boolean) =>\n set((state) => {\n const current = state.widgets[widgetId]\n if (!current) return state\n\n const registeredTools = current.registeredTools ?? []\n const updatedTools = registeredTools.map((tool: ToolRegistration) =>\n tool.id === toolId ? { ...tool, enabled } : tool,\n )\n\n return {\n widgets: {\n ...state.widgets,\n [widgetId]: {\n ...current,\n registeredTools: updatedTools,\n },\n },\n }\n }),\n\n executeToolPipeline: async (widgetId: string, sourceData: unknown) => {\n const widget = get().widgets[widgetId]\n if (!widget) return\n\n // Cancel any in-progress pipeline for this widget\n const currentExecution = (activePipelines.get(widgetId) ?? 0) + 1\n activePipelines.set(widgetId, currentExecution)\n\n const widgetWithTools = widget\n\n // Build set of tool IDs that should be disabled\n const disabledToolIds = new Set<string>()\n for (const tool of widgetWithTools.registeredTools ?? []) {\n if (tool.enabled && tool.disables) {\n tool.disables.forEach((id) => disabledToolIds.add(id))\n }\n }\n\n // Sort tools by order and filter enabled only, excluding disabled tools\n const sortedTools = [...(widgetWithTools.registeredTools ?? [])]\n .filter((tool) => tool.enabled && !disabledToolIds.has(tool.id))\n .sort((a, b) => a.order - b.order)\n\n // Execute pipeline - handle both sync and async tools\n let transformedData = sourceData\n for (const tool of sortedTools) {\n // Check if this execution was cancelled\n if (activePipelines.get(widgetId) !== currentExecution) {\n return\n }\n\n try {\n // Call tool function (may return Promise or direct value)\n const result = tool.fn(transformedData, tool.config)\n\n // Await if Promise, otherwise use directly\n transformedData = result instanceof Promise ? await result : result\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(`Tool ${tool.id} failed for widget ${widgetId}:`, error)\n // Continue with current data to prevent one tool from breaking all\n }\n }\n\n // Final check before updating store (in case cancelled during async operation)\n if (activePipelines.get(widgetId) !== currentExecution) {\n return\n }\n\n // Single store update with final transformed data\n set((state) => {\n const currentWidget = state.widgets[widgetId]\n if (!currentWidget) return state\n\n return {\n widgets: {\n ...state.widgets,\n [widgetId]: {\n ...currentWidget,\n data: transformedData,\n },\n },\n }\n })\n\n // Clean up tracking\n if (activePipelines.get(widgetId) === currentExecution) {\n activePipelines.delete(widgetId)\n }\n },\n}))\n"],"names":["activePipelines","Map","useWidgetStore","create","set","get","widgets","setWidget","id","widget","state","current","removeWidget","clearWidgets","getWidget","registerTool","widgetId","tool","filteredTools","registeredTools","filter","t","unregisterTool","toolId","updateToolConfig","config","updatedTools","map","setToolEnabled","enabled","executeToolPipeline","sourceData","currentExecution","widgetWithTools","disabledToolIds","Set","disables","forEach","add","sortedTools","has","sort","a","b","order","transformedData","result","fn","Promise","error","console","currentWidget","data","delete"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"actions.js","sources":["../../src/widgets/actions/fullscreen/styles.ts","../../src/widgets/actions/fullscreen/fullscreen.tsx","../../src/widgets/actions/download/download.tsx","../../src/widgets/actions/shared/styles.ts","../../src/widgets/actions/relative-data/utils.ts","../../src/widgets/actions/relative-data/relative-data.tsx","../../src/widgets/actions/zoom-toggle/style.ts","../../src/widgets/actions/zoom-toggle/zoom-toggle.tsx","../../src/widgets/actions/stack-toggle/grouped-bar-chart-icon.tsx","../../src/widgets/actions/stack-toggle/stack-toggle.tsx","../../src/widgets/actions/lock-selection/lock-selection.tsx","../../src/widgets/actions/searcher/searcher.tsx","../../src/widgets/actions/searcher/searcher-toggle.tsx","../../src/widgets/actions/change-column/change-column-icon.tsx","../../src/widgets/actions/change-column/sortable-column-item.tsx","../../src/widgets/actions/change-column/change-column.tsx"],"sourcesContent":["import type { SxProps, Theme } from '@mui/material'\n\nexport const styles = {\n title: {\n container: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n gap: 1,\n },\n },\n content: {\n display: 'flex',\n flexDirection: 'column',\n gap: ({ spacing }) => spacing(1),\n },\n} satisfies Record<string, SxProps<Theme>>\n","import {\n Dialog,\n DialogContent,\n DialogTitle,\n IconButton,\n Typography,\n} from '@mui/material'\nimport { useWidgetStore } from '../../stores/widget-store'\nimport { Close, FullscreenOutlined } from '@mui/icons-material'\nimport type {\n FullScreenConfig,\n FullScreenProps,\n FullScreenState,\n} from './types'\nimport { styles } from './styles'\nimport { useShallow } from 'zustand/shallow'\n\nexport function FullScreen({\n id,\n labels,\n children,\n Icon,\n IconButtonProps,\n DialogContentProps: { sx, ...DialogContentProps } = {},\n}: FullScreenProps) {\n const { isFullScreen, title } = useWidgetStore(\n useShallow((state) => {\n const widget = state.getWidget<FullScreenState>(id)\n return {\n isFullScreen: widget?.isFullScreen,\n title: widget?.title,\n }\n }),\n )\n const setWidget = useWidgetStore((state) => state.setWidget)\n\n const updateFullScreenConfig = (updates: Partial<FullScreenConfig>) => {\n setWidget<FullScreenState>(id, {\n isFullScreen: updates.isFullScreen,\n })\n }\n\n return (\n <>\n <IconButton\n {...IconButtonProps}\n onClick={() => updateFullScreenConfig({ isFullScreen: true })}\n >\n {Icon ?? <FullscreenOutlined />}\n </IconButton>\n <Dialog\n maxWidth={false}\n open={!!isFullScreen}\n aria-labelledby={labels?.ariaLabel ?? `fullscreen-dialog-title-${id}`}\n onClose={() => updateFullScreenConfig({ isFullScreen: false })}\n >\n <DialogTitle\n id={`fullscreen-dialog-title-${id}`}\n sx={styles.title.container}\n >\n <Typography variant='subtitle1' component='span'>\n {title}\n </Typography>\n <IconButton\n onClick={() => updateFullScreenConfig({ isFullScreen: false })}\n >\n <Close />\n </IconButton>\n </DialogTitle>\n <DialogContent\n sx={{\n ...styles.content,\n ...sx,\n }}\n {...DialogContentProps}\n >\n {children}\n </DialogContent>\n </Dialog>\n </>\n )\n}\n","import {\n CircularProgress,\n IconButton,\n ListItemIcon,\n ListItemText,\n Menu,\n MenuItem,\n} from '@mui/material'\nimport type { DownloadItem, DownloadProps } from './types'\nimport { FileDownloadOutlined } from '@mui/icons-material'\nimport { useState, type MouseEvent } from 'react'\nimport { useWidgetStore } from '../../../widgets'\nimport { useShallow } from 'zustand/shallow'\n\nexport function Download({\n id,\n items,\n labels = {},\n Icon,\n IconButtonProps,\n}: DownloadProps) {\n const data = useWidgetStore(useShallow((state) => state.getWidget(id)?.data))\n\n const [isDownloading, setIsDownloading] = useState(false)\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null)\n\n const handleToggle = (event: MouseEvent<HTMLElement>) => {\n event.stopPropagation()\n setAnchorEl(event.currentTarget)\n }\n\n const handleDownload = (data: string, option: DownloadItem) => {\n const link = document.createElement('a')\n link.href = data\n link.download = option.filename ?? id\n link.style.display = 'none'\n document.body.appendChild(link)\n link.click()\n document.body.removeChild(link)\n option.callback?.(link.href)\n }\n\n const handleClick = async (\n event: MouseEvent<HTMLElement>,\n option: DownloadItem,\n ) => {\n event.stopPropagation()\n\n setIsDownloading(true)\n setAnchorEl(null)\n\n const result = await option.modifier(data)\n\n if (!result) {\n setIsDownloading(false)\n return\n }\n\n handleDownload(result, option)\n setIsDownloading(false)\n }\n\n return (\n <>\n <IconButton\n size='small'\n aria-label={labels.ariaLabel ?? 'download options'}\n aria-controls='options-menu'\n aria-haspopup='true'\n onClick={handleToggle}\n {...IconButtonProps}\n disabled={isDownloading || items.length === 0}\n className={isDownloading || anchorEl ? 'active' : ''}\n >\n {isDownloading ? (\n <CircularProgress size={18} color='inherit' />\n ) : (\n (Icon ?? <FileDownloadOutlined />)\n )}\n </IconButton>\n <Menu\n variant='menu'\n elevation={8}\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'right',\n }}\n transformOrigin={{\n vertical: 'top',\n horizontal: 'right',\n }}\n anchorEl={anchorEl}\n open={Boolean(anchorEl)}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n sx: {\n paddingBottom: 0,\n },\n }}\n >\n {items.map((option) => (\n <MenuItem\n key={option.id}\n disabled={option.disabled}\n onClick={(e) => void handleClick(e, option)}\n >\n {option.icon && (\n <ListItemIcon sx={{ color: 'text.primary' }}>\n {option.icon}\n </ListItemIcon>\n )}\n <ListItemText>{option.label}</ListItemText>\n </MenuItem>\n ))}\n </Menu>\n </>\n )\n}\n","import type { SxProps, Theme } from '@mui/material'\n\n/**\n * Shared styles for widget action buttons\n */\nexport const actionButtonStyles = {\n trigger: {\n '&[data-active=\"true\"]': {\n background: (theme: Theme) => theme.palette.primary.relatedLight,\n },\n },\n} satisfies Record<string, SxProps<Theme>>\n","import type { EchartWidgetData } from '../../echart/types'\n\n/**\n * Calculates the sum of all numeric values in the data\n */\nexport function calculateTotal(data: EchartWidgetData): number {\n return data.reduce((total, series) => {\n return series.reduce((seriesTotal, item) => {\n return Object.values(item).reduce((itemTotal: number, value) => {\n return typeof value === 'number' ? itemTotal + value : itemTotal\n }, seriesTotal)\n }, total)\n }, 0)\n}\n\n/**\n * Transforms data to relative (percentage) values\n */\nexport function toRelativeData(\n data: EchartWidgetData,\n total: number,\n): EchartWidgetData {\n if (total === 0) return data\n\n return data.map((series) =>\n series.map((item) => {\n const transformed: Record<string, string | number> = {}\n\n for (const [key, value] of Object.entries(item)) {\n transformed[key] =\n typeof value === 'number' ? (value / total) * 100 : value\n }\n\n return transformed\n }),\n )\n}\n","import { IconButton } from '@mui/material'\nimport { PercentOutlined } from '@mui/icons-material'\nimport { useCallback, useEffect } from 'react'\nimport { useWidgetStore } from '../../stores/widget-store'\nimport type { RelativeDataProps, RelativeDataState } from './types'\nimport { actionButtonStyles } from '../shared/styles'\nimport { Tooltip } from '../../../components'\nimport { calculateTotal, toRelativeData } from './utils'\nimport type { EchartWidgetData } from '../../../widgets/echart'\n\nexport const RELATIVE_DATA_TOOL_ID = 'relative-data'\n\n/**\n * Widget action to toggle between relative (percentage) and absolute data display.\n *\n * Registers a transformation tool in the widget pipeline when mounted.\n * When relative mode is active, transforms data to percentages via the pipeline.\n *\n * @example\n * ```tsx\n * <RelativeData\n * id=\"my-widget\"\n * order={20}\n * defaultIsRelative={false}\n * />\n * ```\n */\nexport function RelativeData({\n id,\n order = 10,\n defaultIsRelative = false,\n labels,\n Icon,\n IconButtonProps,\n}: RelativeDataProps) {\n const setWidget = useWidgetStore((state) => state.setWidget)\n const getWidget = useWidgetStore((state) => state.getWidget)\n const registerTool = useWidgetStore((state) => state.registerTool)\n const unregisterTool = useWidgetStore((state) => state.unregisterTool)\n const setToolEnabled = useWidgetStore((state) => state.setToolEnabled)\n\n const storeIsRelative = useWidgetStore(\n (state) => state.getWidget<RelativeDataState>(id)?.isRelative,\n )\n\n const isRelative = storeIsRelative ?? defaultIsRelative\n\n // Initialize store with default value on mount\n useEffect(() => {\n const currentValue = getWidget<RelativeDataState>(id)?.isRelative\n if (currentValue === undefined) {\n setWidget(id, { isRelative: defaultIsRelative })\n }\n }, [defaultIsRelative, getWidget, id, setWidget])\n\n // Register tool on mount\n useEffect(() => {\n registerTool(id, {\n id: RELATIVE_DATA_TOOL_ID,\n order,\n enabled: isRelative,\n fn: (data) => {\n const echartData = data as EchartWidgetData\n const total = calculateTotal(echartData)\n return toRelativeData(echartData, total)\n },\n })\n\n return () => unregisterTool(id, RELATIVE_DATA_TOOL_ID)\n }, [id, order, registerTool, unregisterTool, isRelative])\n\n // Update enabled flag when toggle changes\n useEffect(() => {\n setToolEnabled(id, RELATIVE_DATA_TOOL_ID, isRelative)\n }, [id, isRelative, setToolEnabled])\n\n const handleToggle = useCallback(() => {\n const newIsRelative = !isRelative\n setWidget(id, { isRelative: newIsRelative })\n }, [isRelative, setWidget, id])\n\n const tooltipLabel = isRelative\n ? (labels?.absolute ?? 'Show absolute values')\n : (labels?.relative ?? 'Show relative values')\n\n return (\n <Tooltip title={tooltipLabel}>\n <IconButton\n size='small'\n aria-label={labels?.ariaLabel ?? tooltipLabel}\n onClick={handleToggle}\n sx={actionButtonStyles.trigger}\n data-active={isRelative}\n {...IconButtonProps}\n >\n {Icon ?? <PercentOutlined />}\n </IconButton>\n </Tooltip>\n )\n}\n","import type { SxProps, Theme } from '@mui/material'\n\nexport const styles = {\n container: {\n display: 'flex',\n alignItems: 'center',\n gap: ({ spacing }) => spacing(0.25),\n },\n trigger: {\n '&[data-active=\"true\"]': {\n background: (theme: Theme) => theme.palette.primary.relatedLight,\n },\n },\n} satisfies Record<string, SxProps<Theme>>\n","import { Box, IconButton, useTheme } from '@mui/material'\nimport {\n SubdirectoryArrowLeftOutlined,\n ZoomInOutlined,\n} from '@mui/icons-material'\nimport { useEffect, useCallback } from 'react'\nimport { useWidgetStore } from '../../stores/widget-store'\nimport type { ZoomToggleProps, ZoomState } from './types'\nimport { styles } from './style'\nimport { Tooltip } from '../../../components'\nimport { getEChartZoomConfig } from '../../echart/utils'\nimport type { EchartWidgetState } from '../../echart/types'\nimport { useShallow } from 'zustand/shallow'\n\n/**\n * Widget action to toggle EChart zoom functionality.\n *\n * When zoom is active, displays an inline reset button to disable zoom.\n * Only intended for use in fullscreen ToolbarActions for bar and histogram widgets.\n *\n * @example\n * ```tsx\n * <ZoomToggle\n * id=\"my-widget\"\n * defaultZoom={false}\n * zoomStart={0}\n * zoomEnd={100}\n * />\n * ```\n */\nexport function ZoomToggle({\n id,\n defaultZoom = false,\n defaultZoomStart = 0,\n defaultZoomEnd = 100,\n labels,\n Icon,\n ResetIcon,\n IconButtonProps,\n}: ZoomToggleProps) {\n const theme = useTheme()\n const setWidget = useWidgetStore((state) => state.setWidget)\n const getWidget = useWidgetStore((state) => state.getWidget)\n\n const zoom = useWidgetStore(\n useShallow((state) => {\n const widget = state.getWidget<ZoomState>(id)\n return widget?.zoom ?? false\n }),\n )\n\n const updateZoomOption = useCallback(\n (enabled: boolean, start: number, end: number) => {\n const zoomConfig = getEChartZoomConfig(\n enabled,\n { start, end },\n { inside: true, xSlider: true, ySlider: false },\n theme,\n )\n const currentOption = getWidget<EchartWidgetState>(id)?.option\n\n setWidget<EchartWidgetState & ZoomState>(id, {\n zoom: enabled,\n zoomStart: start,\n zoomEnd: end,\n option: {\n ...currentOption,\n ...zoomConfig,\n },\n })\n },\n [getWidget, id, setWidget, theme],\n )\n\n // Initialize zoom state from defaults only if not already set\n useEffect(() => {\n const existingState = getWidget<ZoomState>(id)\n\n if (existingState?.zoom) return\n\n // Apply initial zoom config\n updateZoomOption(\n existingState?.zoom ?? defaultZoom,\n existingState?.zoomStart ?? defaultZoomStart,\n existingState?.zoomEnd ?? defaultZoomEnd,\n )\n }, [\n defaultZoom,\n defaultZoomEnd,\n defaultZoomStart,\n getWidget,\n id,\n updateZoomOption,\n ])\n\n // Cleanup: reset zoom when component unmounts\n useEffect(() => {\n return () => {\n const existingState = getWidget<ZoomState>(id)\n updateZoomOption(\n false,\n existingState?.zoomStart ?? 0,\n existingState?.zoomEnd ?? 100,\n )\n }\n }, [getWidget, id, updateZoomOption])\n\n const handleToggle = () => {\n const newZoom = !zoom\n\n const existingState = getWidget<ZoomState>(id)\n\n updateZoomOption(\n newZoom,\n newZoom ? (existingState?.zoomStart ?? defaultZoomStart) : 0,\n newZoom ? (existingState?.zoomEnd ?? defaultZoomEnd) : 100,\n )\n }\n\n const handleReset = () => {\n updateZoomOption(true, defaultZoomStart, defaultZoomEnd)\n }\n\n // Handle dataZoom event to update zoom range in store\n const handleDataZoom = useCallback(\n (event: unknown) => {\n const zoomEvent = event as {\n start: number\n end: number\n }\n\n const start = zoomEvent.start\n const end = zoomEvent.end\n\n if (start !== undefined && end !== undefined) {\n updateZoomOption(true, start, end)\n }\n },\n [updateZoomOption],\n )\n\n // Register dataZoom event handler when zoom is enabled\n useEffect(() => {\n if (zoom) {\n setWidget<EchartWidgetState>(id, {\n onEvents: {\n dataZoom: handleDataZoom,\n },\n })\n }\n }, [id, zoom, handleDataZoom, setWidget])\n\n const enableLabel = labels?.enable ?? 'Enable zoom'\n const disableLabel = labels?.disable ?? 'Disable zoom'\n const resetLabel = labels?.reset ?? 'Reset zoom'\n const tooltipLabel = zoom ? disableLabel : enableLabel\n\n return (\n <Box sx={styles.container}>\n <Tooltip title={tooltipLabel}>\n <IconButton\n size='small'\n aria-label={labels?.ariaLabel ?? tooltipLabel}\n onClick={handleToggle}\n sx={styles.trigger}\n data-active={zoom}\n {...IconButtonProps}\n >\n {Icon ?? <ZoomInOutlined />}\n </IconButton>\n </Tooltip>\n {zoom && (\n <Tooltip title={resetLabel}>\n <IconButton\n size='small'\n aria-label={resetLabel}\n onClick={handleReset}\n {...IconButtonProps}\n >\n {ResetIcon ?? <SubdirectoryArrowLeftOutlined />}\n </IconButton>\n </Tooltip>\n )}\n </Box>\n )\n}\n","export const GroupedBarChartIcon = () => (\n <svg\n width='24'\n height='24'\n viewBox='0 0 24 24'\n fill='none'\n xmlns='http://www.w3.org/2000/svg'\n >\n <path\n d='M4 20V8H8V20H4ZM9 20V13H13V20H9ZM16 20V4H20V20H16Z'\n fill='currentColor'\n />\n </svg>\n)\n","import { IconButton } from '@mui/material'\nimport { useCallback, useEffect, useMemo } from 'react'\nimport { useWidgetStore } from '../../stores/widget-store'\nimport type { StackToggleProps, StackToggleState } from './types'\nimport { actionButtonStyles } from '../shared/styles'\nimport { Tooltip } from '../../../components'\nimport { GroupedBarChartIcon } from './grouped-bar-chart-icon'\nimport { getEChartStackConfig } from '../../echart/utils'\nimport { DEFAULT_STACK_GROUP } from '../../echart/const'\nimport type { EchartWidgetState } from '../../echart/types'\nimport { useShallow } from 'zustand/shallow'\n\n/**\n * Widget action to toggle stacking behavior in ECharts bar and histogram widgets.\n *\n * Stores the stack state in the widget store and updates the ECharts option\n * using getEChartStackConfig to apply stacking to all series.\n *\n * @example\n * ```tsx\n * <StackToggle\n * id=\"my-widget\"\n * defaultIsStacked={false}\n * />\n * ```\n */\nexport function StackToggle({\n id,\n defaultIsStacked = false,\n labels,\n Icon,\n IconButtonProps,\n}: StackToggleProps) {\n const setWidget = useWidgetStore((state) => state.setWidget)\n const storeIsStacked = useWidgetStore(\n useShallow((state) => state.getWidget<StackToggleState>(id)?.isStacked),\n )\n\n const getWidget = useWidgetStore((state) => state.getWidget)\n\n /**\n * Checks if any series in the option has a stack property defined\n */\n const hasStackInSeries = useMemo(() => {\n const option = getWidget<EchartWidgetState>(id)?.option\n if (!option) return false\n\n const series = Array.isArray(option.series)\n ? option.series\n : [option.series]\n\n return series.some((s) => (s as { stack?: string })?.stack)\n }, [getWidget, id])\n\n // If series already has stack defined, default to stacked=true\n const effectiveDefaultIsStacked = hasStackInSeries || defaultIsStacked\n const isStacked = storeIsStacked ?? effectiveDefaultIsStacked\n\n /**\n * Updates the ECharts option with the stack configuration\n * Preserves existing stack group names from series, falling back to DEFAULT_STACK_GROUP\n */\n const updateOptions = useCallback(\n (stacked: boolean) => {\n const option = getWidget<EchartWidgetState>(id)?.option\n\n if (!option) return\n\n const series = Array.isArray(option.series)\n ? option.series\n : [option.series]\n\n const updatedSeries = series.map((s) => {\n // Extract existing stack group from series, fallback to default\n const existingStack = (s as { stack?: string })?.stack\n const stackGroup =\n typeof existingStack === 'string'\n ? existingStack\n : DEFAULT_STACK_GROUP\n\n return {\n ...s,\n ...getEChartStackConfig(stacked, stackGroup),\n }\n })\n\n setWidget(id, {\n option: {\n ...option,\n series: updatedSeries,\n },\n })\n },\n [getWidget, id, setWidget],\n )\n\n // Initialize store with default value only if not already configured\n useEffect(() => {\n setWidget(id, { isStacked: effectiveDefaultIsStacked })\n }, [effectiveDefaultIsStacked, id, setWidget])\n\n const handleToggle = useCallback(() => {\n const newIsStacked = !isStacked\n\n setWidget(id, { isStacked: newIsStacked })\n updateOptions(newIsStacked)\n }, [isStacked, id, setWidget, updateOptions])\n\n const tooltipLabel = isStacked\n ? (labels?.unstacked ?? 'Disable stacking')\n : (labels?.stacked ?? 'Enable stacking')\n\n return (\n <Tooltip title={tooltipLabel}>\n <IconButton\n size='small'\n aria-label={labels?.ariaLabel ?? tooltipLabel}\n onClick={handleToggle}\n sx={actionButtonStyles.trigger}\n data-active={isStacked}\n {...IconButtonProps}\n >\n {Icon ?? <GroupedBarChartIcon />}\n </IconButton>\n </Tooltip>\n )\n}\n","import { IconButton } from '@mui/material'\nimport { CheckBoxOutlined } from '@mui/icons-material'\nimport { useCallback, useEffect, useMemo } from 'react'\nimport type { LockSelectionProps, LockSelectionState } from './types'\nimport { actionButtonStyles } from '../shared/styles'\nimport { Tooltip } from '../../../components'\nimport { useWidgetStore } from '../../stores/widget-store'\nimport { useShallow } from 'zustand/shallow'\nimport type { EchartWidgetData } from '../../echart/types'\n\nexport const LOCK_SELECTION_TOOL_ID = 'lock-selection'\n\n/**\n * Widget action button to lock the current selection.\n *\n * When locked, the widget data is filtered to only show the selected items.\n * The button is only visible when there are selected items.\n * Registers a transformation tool in the widget pipeline when mounted.\n *\n * @example\n * ```tsx\n * <LockSelection\n * id=\"my-widget\"\n * order={30}\n * selectedItems={selectedItems}\n * />\n * ```\n */\nexport function LockSelection({\n id,\n selectedItems,\n order = 30,\n labels,\n Icon,\n IconButtonProps,\n}: LockSelectionProps) {\n const setWidget = useWidgetStore((state) => state.setWidget)\n const registerTool = useWidgetStore((state) => state.registerTool)\n const unregisterTool = useWidgetStore((state) => state.unregisterTool)\n const setToolEnabled = useWidgetStore((state) => state.setToolEnabled)\n const updateToolConfig = useWidgetStore((state) => state.updateToolConfig)\n\n const storeIsLocked = useWidgetStore(\n useShallow((state) => state.getWidget<LockSelectionState>(id)?.isLocked),\n )\n const storeLockedItems = useWidgetStore(\n useShallow((state) => state.getWidget<LockSelectionState>(id)?.lockedItems),\n )\n\n const isLocked = storeIsLocked ?? false\n const lockedItems = useMemo(() => storeLockedItems ?? [], [storeLockedItems])\n\n // Register tool on mount\n useEffect(() => {\n registerTool(id, {\n id: LOCK_SELECTION_TOOL_ID,\n order,\n enabled: isLocked,\n fn: (data, config) => {\n const items = (config?.lockedItems as string[]) || []\n if (items.length === 0) return data\n\n return filterDataByLockedItems(data as EchartWidgetData, items)\n },\n config: { lockedItems },\n })\n\n return () => unregisterTool(id, LOCK_SELECTION_TOOL_ID)\n }, [id, order, registerTool, unregisterTool, isLocked, lockedItems])\n\n // Update enabled flag and config when they change\n useEffect(() => {\n setToolEnabled(id, LOCK_SELECTION_TOOL_ID, isLocked)\n updateToolConfig(id, LOCK_SELECTION_TOOL_ID, { lockedItems })\n }, [id, isLocked, lockedItems, setToolEnabled, updateToolConfig])\n\n const handleToggle = useCallback(() => {\n if (isLocked) {\n // Unlock: clear locked items and disable tool\n setWidget(id, {\n isLocked: false,\n lockedItems: [],\n })\n } else {\n // Lock: save selected items and enable tool\n setWidget(id, {\n isLocked: true,\n lockedItems: selectedItems,\n })\n }\n }, [id, isLocked, selectedItems, setWidget])\n\n // Don't render if no selections\n if (selectedItems.length === 0) {\n return null\n }\n\n const tooltipLabel = isLocked\n ? (labels?.unlock ?? 'Unlock selection')\n : (labels?.lock ?? 'Lock selection')\n\n const ariaLabel = labels?.ariaLabel ?? tooltipLabel\n\n return (\n <Tooltip title={tooltipLabel}>\n <IconButton\n size='small'\n aria-label={ariaLabel}\n onClick={handleToggle}\n sx={actionButtonStyles.trigger}\n data-active={isLocked}\n {...IconButtonProps}\n >\n {Icon ?? <CheckBoxOutlined fontSize='small' />}\n </IconButton>\n </Tooltip>\n )\n}\n\n/**\n * Filters widget data to only include items with names matching the locked items.\n */\nfunction filterDataByLockedItems(\n data: EchartWidgetData,\n lockedItems: string[],\n): EchartWidgetData {\n return data.map((series) =>\n series.filter((item) => {\n const name = item.name\n return typeof name === 'string' && lockedItems.includes(name)\n }),\n )\n}\n","import { TextField, InputAdornment, IconButton } from '@mui/material'\nimport { ClearOutlined, SearchOutlined } from '@mui/icons-material'\nimport { useEffect, useRef, useCallback } from 'react'\nimport { useWidgetStore } from '../../stores/widget-store'\nimport type { SearcherProps, SearcherFilterFn, SearcherState } from './types'\nimport type { EchartWidgetData } from '../../echart/types'\nimport { LOCK_SELECTION_TOOL_ID } from '../lock-selection/lock-selection'\n\nexport const SEARCHER_TOOL_ID = 'searcher'\n\nconst DEBOUNCE_DELAY = 300\n\n/**\n * Search input component that works with SearcherToggle.\n *\n * Registers a transformation tool in the widget pipeline when mounted.\n * Reads the enabled state from the widget store using the provided id.\n * Uses a debounced search to filter data via the transformation pipeline.\n * Auto-focuses when enabled becomes true.\n *\n * @example\n * ```tsx\n * <SearcherToggle id=\"my-widget\" />\n * <Searcher\n * id=\"my-widget\"\n * order={10}\n * labels={{ placeholder: 'Search categories...' }}\n * />\n * ```\n */\nexport function Searcher({\n id,\n filterFn,\n order = 20,\n labels,\n TextFieldProps,\n ClearIcon,\n debounceDelay = DEBOUNCE_DELAY,\n}: SearcherProps) {\n const inputRef = useRef<HTMLInputElement>(null)\n const debounceTimeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null)\n\n // Read enabled state and search text from widget store\n const widgetState = useWidgetStore((state) =>\n state.getWidget<SearcherState>(id),\n )\n const enabled = widgetState?.isSearchEnabled ?? false\n const searchText = widgetState?.searchText ?? ''\n const prevEnabledRef = useRef(enabled)\n\n const filter = filterFn ?? defaultFilterFn\n\n const setWidget = useWidgetStore((state) => state.setWidget)\n const registerTool = useWidgetStore((state) => state.registerTool)\n const unregisterTool = useWidgetStore((state) => state.unregisterTool)\n const setToolEnabled = useWidgetStore((state) => state.setToolEnabled)\n const updateToolConfig = useWidgetStore((state) => state.updateToolConfig)\n\n const setSearchText = useCallback(\n (text: string) => {\n setWidget(id, { searchText: text })\n },\n [id, setWidget],\n )\n\n // Register tool on mount\n useEffect(() => {\n registerTool(id, {\n id: SEARCHER_TOOL_ID,\n order,\n enabled,\n fn: async (data, config) => {\n const searchTextFromConfig = (config?.searchText as string) || ''\n\n // Execute filter (can be sync or async)\n const result = filter(data as EchartWidgetData, searchTextFromConfig)\n\n // Return result directly (pipeline will handle Promise)\n return result\n },\n config: { searchText },\n disables: [LOCK_SELECTION_TOOL_ID],\n })\n\n return () => unregisterTool(id, SEARCHER_TOOL_ID)\n }, [id, order, filter, registerTool, unregisterTool, enabled, searchText])\n\n // Update enabled flag when it changes\n useEffect(() => {\n setToolEnabled(id, SEARCHER_TOOL_ID, enabled)\n }, [id, enabled, setToolEnabled])\n\n // Update config when search text changes (debounced)\n const debouncedUpdateConfig = useCallback(\n (text: string) => {\n if (debounceTimeoutRef.current) {\n clearTimeout(debounceTimeoutRef.current)\n }\n debounceTimeoutRef.current = setTimeout(() => {\n updateToolConfig(id, SEARCHER_TOOL_ID, { searchText: text })\n }, debounceDelay)\n },\n [id, updateToolConfig, debounceDelay],\n )\n\n // Auto-focus when enabled becomes true\n useEffect(() => {\n // Transition from disabled to enabled - focus input\n if (enabled && !prevEnabledRef.current && inputRef.current) {\n inputRef.current.focus()\n }\n\n prevEnabledRef.current = enabled\n }, [enabled])\n\n // Cleanup debounce timeout on unmount\n useEffect(() => {\n return () => {\n if (debounceTimeoutRef.current) {\n clearTimeout(debounceTimeoutRef.current)\n }\n }\n }, [])\n\n const handleChange = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n const newValue = event.target.value\n setSearchText(newValue)\n debouncedUpdateConfig(newValue)\n },\n [debouncedUpdateConfig, setSearchText],\n )\n\n const handleClear = useCallback(() => {\n setSearchText('')\n updateToolConfig(id, SEARCHER_TOOL_ID, { searchText: '' })\n if (inputRef.current) {\n inputRef.current.focus()\n }\n }, [id, setSearchText, updateToolConfig])\n\n if (!enabled) {\n return null\n }\n\n const placeholder = labels?.placeholder ?? 'Search...'\n const clearAriaLabel = labels?.clearAriaLabel ?? 'Clear search'\n\n return (\n <TextField\n inputRef={inputRef}\n size='small'\n fullWidth\n variant='filled'\n placeholder={placeholder}\n value={searchText}\n onChange={handleChange}\n InputProps={{\n startAdornment: (\n <InputAdornment position='start'>\n <SearchOutlined />\n </InputAdornment>\n ),\n endAdornment: searchText ? (\n <InputAdornment position='end'>\n <IconButton\n size='small'\n aria-label={clearAriaLabel}\n onClick={handleClear}\n edge='end'\n >\n {ClearIcon ?? <ClearOutlined fontSize='small' />}\n </IconButton>\n </InputAdornment>\n ) : null,\n }}\n {...TextFieldProps}\n />\n )\n}\n\n/**\n * Default filter function that searches all string fields case-insensitively.\n * Note: Should be synchronous for the new pipeline architecture.\n */\nconst defaultFilterFn: SearcherFilterFn = (\n data: EchartWidgetData,\n searchText: string,\n) => {\n if (!searchText.trim()) return Promise.resolve(data)\n\n const lowerSearch = searchText.toLowerCase()\n\n return Promise.resolve(\n data.map((series) =>\n series.filter((item) =>\n Object.values(item).some(\n (value) =>\n typeof value === 'string' &&\n value.toLowerCase().includes(lowerSearch),\n ),\n ),\n ),\n )\n}\n","import { IconButton } from '@mui/material'\nimport { SearchOutlined } from '@mui/icons-material'\nimport { useCallback, useEffect } from 'react'\nimport type { SearcherToggleProps, SearcherState } from './types'\nimport { actionButtonStyles } from '../shared/styles'\nimport { Tooltip } from '../../../components'\nimport { useWidgetStore } from '../../stores/widget-store'\nimport { useShallow } from 'zustand/shallow'\n\n/**\n * Widget action button to toggle search functionality.\n *\n * Stores the enabled state in the widget store using the provided id.\n * When search is active, the button shows an active state with a light background.\n * Use in conjunction with the Searcher component to display the search input.\n *\n * @example\n * ```tsx\n * <SearcherToggle id=\"my-widget\" />\n * <Searcher\n * id=\"my-widget\"\n * data={widgetData}\n * />\n * ```\n */\nexport function SearcherToggle({\n id,\n defaultEnabled = false,\n labels,\n Icon,\n IconButtonProps,\n}: SearcherToggleProps) {\n const setWidget = useWidgetStore((state) => state.setWidget)\n const getWidget = useWidgetStore((state) => state.getWidget)\n const storeIsEnabled = useWidgetStore(\n useShallow((state) => state.getWidget<SearcherState>(id)?.isSearchEnabled),\n )\n\n const isEnabled = storeIsEnabled ?? defaultEnabled\n\n // Initialize store with default value on mount\n useEffect(() => {\n const currentValue = getWidget<SearcherState>(id)?.isSearchEnabled\n if (currentValue === undefined) {\n setWidget(id, { isSearchEnabled: defaultEnabled })\n }\n }, [defaultEnabled, getWidget, id, setWidget])\n\n const handleToggle = useCallback(() => {\n setWidget(id, { isSearchEnabled: !isEnabled })\n }, [id, isEnabled, setWidget])\n\n const tooltipLabel = isEnabled\n ? (labels?.disable ?? 'Disable search')\n : (labels?.enable ?? 'Enable search')\n\n const ariaLabel = labels?.ariaLabel ?? tooltipLabel\n\n return (\n <Tooltip title={tooltipLabel}>\n <IconButton\n size='small'\n aria-label={ariaLabel}\n onClick={handleToggle}\n sx={actionButtonStyles.trigger}\n data-active={isEnabled}\n {...IconButtonProps}\n >\n {Icon ?? <SearchOutlined fontSize='small' />}\n </IconButton>\n </Tooltip>\n )\n}\n","export const ChangeColumnIcon = () => (\n <svg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 18 18'>\n <path\n fill='currentColor'\n fillRule='evenodd'\n d='M14.25 2.25H3.75c-.825 0-1.5.675-1.5 1.5v10.5c0 .825.675 1.5 1.5 1.5h10.5c.825 0 1.5-.675 1.5-1.5V3.75c0-.825-.675-1.5-1.5-1.5m-3.75 12h-3V3.75h3zM3.75 3.75H6v10.5H3.75zM12 14.25V3.75h2.25v10.5z'\n clipRule='evenodd'\n />\n </svg>\n)\n","import { useSortable } from '@dnd-kit/sortable'\nimport { CSS } from '@dnd-kit/utilities'\nimport { ListItemText, MenuItem } from '@mui/material'\nimport type { TableColumn } from '../../table/types'\n\nexport interface SortableColumnItemProps {\n column: TableColumn\n}\n\n/**\n * A draggable menu item for column reordering.\n * Uses @dnd-kit/sortable for drag-and-drop functionality.\n */\nexport function SortableColumnItem({ column }: SortableColumnItemProps) {\n const {\n attributes,\n listeners,\n setNodeRef,\n transform,\n transition,\n isDragging,\n } = useSortable({ id: column.id })\n\n const style = {\n transform: CSS.Transform.toString(transform),\n transition,\n opacity: isDragging ? 0.5 : 1,\n cursor: isDragging ? 'grabbing' : 'grab',\n }\n\n return (\n <MenuItem\n ref={setNodeRef}\n style={style}\n {...attributes}\n {...listeners}\n role='menuitem'\n tabIndex={0}\n sx={{\n '&:focus-visible': {\n outline: (theme) => `2px solid ${theme.palette.primary.main}`,\n outlineOffset: -2,\n },\n }}\n >\n <ListItemText>{column.label}</ListItemText>\n </MenuItem>\n )\n}\n","import {\n DndContext,\n closestCenter,\n KeyboardSensor,\n PointerSensor,\n useSensor,\n useSensors,\n type DragEndEvent,\n} from '@dnd-kit/core'\nimport {\n arrayMove,\n SortableContext,\n sortableKeyboardCoordinates,\n verticalListSortingStrategy,\n} from '@dnd-kit/sortable'\nimport { IconButton, Menu, SvgIcon } from '@mui/material'\nimport { useCallback, useMemo, useState, type MouseEvent } from 'react'\nimport { useWidgetStore } from '../../stores/widget-store'\nimport type { ChangeColumnProps } from './types'\nimport { actionButtonStyles } from '../shared/styles'\nimport { Tooltip } from '../../../components'\nimport type { TableWidgetState } from '../../table/types'\nimport { ChangeColumnIcon } from './change-column-icon'\nimport { SortableColumnItem } from './sortable-column-item'\nimport { useShallow } from 'zustand/shallow'\n\n/**\n * Widget action to reorder columns in a table widget via drag-and-drop.\n *\n * This action reads the columns from the widget store and allows users to\n * drag and drop columns to reorder them. All columns are displayed and\n * can be reordered.\n *\n * Returns null if there are fewer than 2 columns.\n *\n * @example\n * ```tsx\n * <ChangeColumn id=\"my-table-widget\" />\n * ```\n */\nexport function ChangeColumn({\n id,\n labels,\n Icon,\n IconButtonProps,\n MenuProps,\n}: ChangeColumnProps) {\n const [anchorEl, setAnchorEl] = useState<HTMLElement | null>(null)\n const setWidget = useWidgetStore((state) => state.setWidget)\n const columns = useWidgetStore(\n useShallow((state) => state.getWidget<TableWidgetState>(id)?.columns),\n )\n\n const sensors = useSensors(\n useSensor(PointerSensor),\n useSensor(KeyboardSensor, {\n coordinateGetter: sortableKeyboardCoordinates,\n }),\n )\n\n const columnIds = useMemo(\n () => columns?.map((col) => col.id) ?? [],\n [columns],\n )\n\n const handleToggle = useCallback((event: MouseEvent<HTMLElement>) => {\n event.stopPropagation()\n setAnchorEl(event.currentTarget)\n }, [])\n\n const handleClose = useCallback(() => {\n setAnchorEl(null)\n }, [])\n\n const handleDragEnd = (event: DragEndEvent) => {\n const { active, over } = event\n if (!over || active.id === over.id || !columns) return\n const oldIndex = columns.findIndex((col) => col.id === active.id)\n const newIndex = columns.findIndex((col) => col.id === over.id)\n if (oldIndex !== -1 && newIndex !== -1) {\n const newColumns = arrayMove(columns, oldIndex, newIndex)\n setWidget(id, { columns: newColumns })\n }\n }\n\n // Return null if there are fewer than 2 columns\n if (!columns || columns.length < 2) {\n return null\n }\n\n const tooltipLabel = labels?.tooltip ?? 'Change column'\n const isOpen = Boolean(anchorEl)\n\n return (\n <>\n <Tooltip title={tooltipLabel}>\n <IconButton\n size='small'\n aria-label={labels?.ariaLabel ?? tooltipLabel}\n aria-controls={isOpen ? 'change-column-menu' : undefined}\n aria-haspopup='true'\n aria-expanded={isOpen ? 'true' : undefined}\n onClick={handleToggle}\n data-active={isOpen}\n sx={actionButtonStyles.trigger}\n {...IconButtonProps}\n >\n {Icon ?? (\n <SvgIcon>\n <ChangeColumnIcon />\n </SvgIcon>\n )}\n </IconButton>\n </Tooltip>\n <DndContext\n sensors={sensors}\n collisionDetection={closestCenter}\n onDragEnd={handleDragEnd}\n >\n <Menu\n id='change-column-menu'\n anchorEl={anchorEl}\n open={isOpen}\n onClose={handleClose}\n anchorOrigin={{ vertical: 'bottom', horizontal: 'right' }}\n transformOrigin={{ vertical: 'top', horizontal: 'right' }}\n {...MenuProps}\n >\n <SortableContext\n items={columnIds}\n strategy={verticalListSortingStrategy}\n >\n {columns.map((column) => (\n <SortableColumnItem key={column.id} column={column} />\n ))}\n </SortableContext>\n </Menu>\n </DndContext>\n </>\n )\n}\n"],"names":["styles","title","container","display","alignItems","justifyContent","gap","content","flexDirection","spacing","FullScreen","t0","$","_c","id","labels","children","Icon","IconButtonProps","DialogContentProps","t1","t2","undefined","sx","t3","state","widget","getWidget","isFullScreen","useWidgetStore","useShallow","setWidget","_temp","t4","updates","updateFullScreenConfig","t5","t6","FullscreenOutlined","t7","IconButton","t8","t9","ariaLabel","t10","t11","t12","Typography","t13","t14","Symbol","for","Close","t15","jsx","t16","DialogTitle","t17","t18","DialogContent","t19","jsxs","Dialog","t20","state_0","Download","items","data","isDownloading","setIsDownloading","useState","anchorEl","setAnchorEl","event","stopPropagation","currentTarget","handleToggle","data_0","option","link","document","createElement","href","download","filename","style","body","appendChild","click","removeChild","callback","handleDownload","event_0","option_0","result","modifier","handleClick","length","CircularProgress","FileDownloadOutlined","vertical","horizontal","Boolean","paddingBottom","option_1","MenuItem","disabled","e","icon","ListItemIcon","color","ListItemText","label","map","Menu","actionButtonStyles","trigger","background","theme","palette","primary","relatedLight","calculateTotal","reduce","total","series","seriesTotal","item","Object","values","itemTotal","value","toRelativeData","transformed","key","entries","RELATIVE_DATA_TOOL_ID","RelativeData","order","defaultIsRelative","_temp2","registerTool","_temp3","unregisterTool","_temp4","setToolEnabled","_temp5","state_4","isRelative","useEffect","enabled","fn","_temp6","newIsRelative","tooltipLabel","absolute","relative","PercentOutlined","Tooltip","echartData","state_3","state_2","state_1","ZoomToggle","defaultZoom","defaultZoomStart","defaultZoomEnd","ResetIcon","useTheme","zoom","start","end","zoomConfig","getEChartZoomConfig","inside","xSlider","ySlider","currentOption","zoomStart","zoomEnd","updateZoomOption","existingState","existingState_0","newZoom","existingState_1","handleReset","zoomEvent","start_0","end_0","handleDataZoom","onEvents","dataZoom","enableLabel","enable","disableLabel","disable","resetLabel","reset","ZoomInOutlined","SubdirectoryArrowLeftOutlined","Box","GroupedBarChartIcon","StackToggle","defaultIsStacked","isStacked","storeIsStacked","bb0","Array","isArray","some","effectiveDefaultIsStacked","stacked","updatedSeries","s_0","existingStack","s","stack","getEChartStackConfig","DEFAULT_STACK_GROUP","updateOptions","newIsStacked","unstacked","LOCK_SELECTION_TOOL_ID","LockSelection","selectedItems","updateToolConfig","isLocked","storeIsLocked","state_5","lockedItems","storeLockedItems","config","unlock","lock","CheckBoxOutlined","filterDataByLockedItems","filter","name","includes","SEARCHER_TOOL_ID","DEBOUNCE_DELAY","Searcher","filterFn","TextFieldProps","ClearIcon","debounceDelay","inputRef","useRef","debounceTimeoutRef","widgetState","isSearchEnabled","searchText","prevEnabledRef","defaultFilterFn","text","setSearchText","searchTextFromConfig","disables","text_0","current","clearTimeout","setTimeout","debouncedUpdateConfig","focus","newValue","target","handleChange","handleClear","placeholder","clearAriaLabel","InputAdornment","SearchOutlined","ClearOutlined","startAdornment","endAdornment","TextField","trim","Promise","resolve","lowerSearch","toLowerCase","SearcherToggle","defaultEnabled","isEnabled","ChangeColumnIcon","SortableColumnItem","column","attributes","listeners","setNodeRef","transform","transition","isDragging","useSortable","CSS","Transform","toString","opacity","cursor","outline","outlineOffset","main","ChangeColumn","MenuProps","columns","coordinateGetter","sortableKeyboardCoordinates","sensors","useSensors","useSensor","PointerSensor","KeyboardSensor","columnIds","handleClose","active","over","oldIndex","findIndex","col_0","col","newIndex","col_1","newColumns","arrayMove","handleDragEnd","tooltip","isOpen","SvgIcon","SortableContext","verticalListSortingStrategy","DndContext","closestCenter"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"echart.js","sources":["../../src/widgets/echart/echart-ui.tsx","../../src/widgets/echart/echart.tsx"],"sourcesContent":["import { useEffect, useRef, useImperativeHandle } from 'react'\nimport * as echarts from 'echarts'\nimport type { EchartUIProps } from './types'\nimport { useWidgetStore } from '../stores/widget-store'\n\nexport function EchartUI({\n id,\n ref,\n init,\n option,\n className,\n style,\n onEvents,\n}: EchartUIProps) {\n const chartRef = useRef<HTMLDivElement>(null)\n const chartInstance = useRef<echarts.ECharts>(null)\n const resizeObserverRef = useRef<ResizeObserver | null>(null)\n\n const setWidget = useWidgetStore((state) => state.setWidget)\n\n // Register chart instance in the widget store\n useEffect(() => {\n setWidget(id, { refUI: chartRef })\n }, [id, setWidget])\n\n useImperativeHandle(ref, () => chartInstance.current!, [])\n\n useEffect(() => {\n if (!chartRef.current) return\n\n chartInstance.current = echarts.init(chartRef.current, null, {\n renderer: 'svg',\n height: 304,\n ...init,\n })\n // Cleanup function\n return () => {\n chartInstance.current?.dispose()\n chartInstance.current = null\n }\n }, [init])\n\n // Update chart when options change\n useEffect(() => {\n chartInstance.current?.setOption(option, {\n lazyUpdate: true,\n // notMerge: true,\n })\n }, [option])\n\n // Handle resize using ResizeObserver\n useEffect(() => {\n const handleResize = () => {\n chartInstance.current?.resize()\n }\n\n resizeObserverRef.current = new ResizeObserver(handleResize)\n resizeObserverRef.current.observe(chartRef.current!)\n\n return () => {\n resizeObserverRef.current?.disconnect()\n resizeObserverRef.current = null\n }\n }, [])\n\n useEffect(() => {\n const _onEvents = { ...(onEvents ?? {}) }\n if (!_onEvents.click) {\n _onEvents.mousemove = () => {\n chartInstance.current?.getZr().setCursorStyle('default')\n }\n }\n\n // Attach event listeners\n Object.entries(_onEvents).forEach(([event, handler]) => {\n chartInstance.current?.on(event, handler)\n })\n // Cleanup function to remove event listeners\n return () => {\n Object.entries(_onEvents).forEach(([event]) => {\n chartInstance.current?.off(event)\n })\n }\n }, [onEvents])\n\n return <div id={id} ref={chartRef} style={style} className={className} />\n}\n","import type {\n EchartProps,\n EchartWidgetState,\n EchartWidgetData,\n EchartOptionsProps,\n} from './types'\nimport { EchartUI } from './echart-ui'\nimport { useWidgetStore } from '../stores/widget-store'\nimport { useShallow } from 'zustand/shallow'\nimport { useMemo } from 'react'\n\nexport function Echart(props: EchartProps) {\n const widget = useWidgetStore(\n useShallow((state) => {\n const widget = state.getWidget<EchartWidgetState>(props.id)\n return {\n id: widget?.id,\n data: widget?.data as EchartWidgetData | undefined,\n option: widget?.option,\n onEvents: widget?.onEvents,\n init: widget?.init,\n }\n }),\n )\n\n // Memoize dataset transformation to avoid re-computing on every render\n const dataset = useMemo(() => buildDataset(widget.data), [widget.data])\n\n if (!widget.id) {\n return null\n }\n const option: EchartOptionsProps = {\n ...widget.option,\n ...(dataset && { dataset }),\n }\n\n const onEvents = widget.onEvents\n const init = widget.init\n\n return (\n <EchartUI id={props.id} option={option} onEvents={onEvents} init={init} />\n )\n}\n\n/**\n * Builds the dataset configuration from widget data\n * @param data - The widget data array\n * @returns The dataset configuration for ECharts\n */\nfunction buildDataset(\n data: EchartWidgetData | undefined,\n): EchartOptionsProps['dataset'] {\n if (!data || data.length === 0) {\n return undefined\n }\n\n return data.map((d) => ({\n source: d,\n }))\n}\n"],"names":["EchartUI","t0","$","_c","id","ref","init","option","className","style","onEvents","chartRef","useRef","chartInstance","resizeObserverRef","setWidget","useWidgetStore","_temp","t1","t2","refUI","useEffect","t3","t4","Symbol","for","current","useImperativeHandle","t5","t6","echarts","renderer","height","dispose","t7","t8","setOption","lazyUpdate","t10","t9","handleResize","resize","ResizeObserver","observe","disconnect","t11","t12","_onEvents","click","mousemove","getZr","setCursorStyle","Object","entries","forEach","t13","event","handler","on","t14","event_0","off","state","Echart","props","widget","getWidget","data","widget_0","useShallow","buildDataset","dataset","length","map","d","source"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"formula.js","sources":["../../src/widgets/formula/components/value.tsx","../../src/widgets/formula/config.ts","../../src/widgets/formula/formula-ui.tsx","../../src/widgets/formula/skeleton.tsx","../../src/widgets/formula/serializer.ts"],"sourcesContent":["import { type FormulaWidgetState, type ValueProps } from '../types'\nimport { useWidgetStore } from '../../stores/widget-store'\nimport { Item } from './item'\nimport { useShallow } from 'zustand/shallow'\n\nconst defaultFormatter = (value: number) => value.toString()\n\nexport function Value({ id, index = 0, ...props }: ValueProps) {\n const {\n value,\n color,\n formatter = defaultFormatter,\n } = useWidgetStore(\n useShallow((state) => {\n const widget = state.getWidget<FormulaWidgetState>(id)\n return {\n value: widget?.data?.[index]?.value,\n color: widget?.data?.[index]?.color,\n formatter: widget?.formatter,\n }\n }),\n )\n\n return (\n <Item TypographyProps={{ color }} {...props}>\n {formatter(value ?? 0)}\n </Item>\n )\n}\n","import { downloadToCSV, downloadToPNG } from '../actions'\nimport type { ConfigProps } from '../root/types'\nimport type { FormulaDownloadConfig, FormulaWidgetConfig } from './types'\n\nexport function formulaDownloadConfig({\n refUI,\n}: ConfigProps): FormulaDownloadConfig {\n return [\n {\n ...downloadToPNG,\n modifier: () => downloadToPNG.modifier(refUI),\n },\n {\n ...downloadToCSV,\n modifier: async (data) => {\n const formulaData = [data?.map((item) => item.value) ?? []]\n return downloadToCSV.modifier(formulaData)\n },\n },\n ]\n}\n\nexport function formulaConfig(): FormulaWidgetConfig {\n return {\n series: [],\n }\n}\n","import type { FormulaUIProps } from './types'\nimport { Row } from './components/row'\nimport { Value } from './components/value'\nimport { Prefix } from './components/prefix'\nimport { Suffix } from './components/suffix'\nimport { Series } from './components/series'\nimport { useRef, useEffect } from 'react'\nimport { useWidgetStore } from '../stores/widget-store'\nimport { Box } from '@mui/material'\n\nexport function FormulaUI(props: FormulaUIProps) {\n const ref = useRef<HTMLElement | null>(null)\n const setWidget = useWidgetStore((store) => store.setWidget)\n\n useEffect(() => {\n if (ref.current) {\n setWidget(props.id, { refUI: ref })\n }\n }, [props.id, setWidget])\n\n return (\n <Box ref={ref}>\n <Row id={props.id}>\n {({ index }) => (\n <>\n <Series id={props.id} index={index} />\n <Prefix id={props.id} index={index} />\n <Value id={props.id} index={index} />\n <Suffix id={props.id} index={index} />\n </>\n )}\n </Row>\n </Box>\n )\n}\n","import { Box, Skeleton } from '@mui/material'\nimport { styles } from './style'\n\nexport function FormulaSkeleton() {\n return (\n <Box sx={styles.row} aria-label='Formula skeleton'>\n <Skeleton width={120} height={32} />\n </Box>\n )\n}\n","import type { DataItem } from './types'\n\n/**\n * Sanitizes DataItem by converting ReactNode prefix/suffix values to undefined.\n * This ensures only string values are stored in the widget state.\n *\n * @param item - The DataItem to sanitize\n * @returns A new DataItem with ReactNode prefix/suffix values converted to undefined\n */\nexport function sanitizeDataItem(item: DataItem): DataItem {\n return {\n ...item,\n prefix: typeof item.prefix === 'string' ? item.prefix : undefined,\n suffix: typeof item.suffix === 'string' ? item.suffix : undefined,\n }\n}\n\n/**\n * Sanitizes an array of DataItems by converting ReactNode prefix/suffix values to undefined.\n *\n * @param items - Array of DataItems to sanitize\n * @returns A new array with sanitized DataItems\n */\nexport function sanitizeDataItems(\n items: DataItem[] | undefined,\n): DataItem[] | undefined {\n return items?.map(sanitizeDataItem)\n}\n"],"names":["defaultFormatter","value","toString","Value","t0","$","_c","id","props","t1","index","undefined","t2","state","widget","getWidget","data","color","formatter","t3","useWidgetStore","useShallow","t4","t5","t6","t7","Item","formulaDownloadConfig","refUI","downloadToPNG","modifier","downloadToCSV","formulaData","map","item","formulaConfig","series","FormulaUI","ref","useRef","setWidget","_temp","current","useEffect","jsxs","Fragment","jsx","Series","Prefix","Suffix","Box","Row","store","FormulaSkeleton","Symbol","for","styles","row","Skeleton","sanitizeDataItem","prefix","suffix","sanitizeDataItems","items"],"mappings":"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"}
|
package/dist/widgets/root.js
DELETED
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { jsx as L } from "react/jsx-runtime";
|
|
2
|
-
import { c as W } from "react/compiler-runtime";
|
|
3
|
-
import { Box as _ } from "@mui/material";
|
|
4
|
-
import { useEffect as n } from "react";
|
|
5
|
-
import { u as b } from "../widget-store-Dd7_sWZT.js";
|
|
6
|
-
import { d as w } from "../cjs-D9ro6BXv.js";
|
|
7
|
-
const P = {
|
|
8
|
-
root: {
|
|
9
|
-
display: "flex",
|
|
10
|
-
flexDirection: "column",
|
|
11
|
-
gap: (e) => e.spacing(2)
|
|
12
|
-
}
|
|
13
|
-
};
|
|
14
|
-
function $(e) {
|
|
15
|
-
const i = W(29), t = b(j), d = b(S);
|
|
16
|
-
let l, c;
|
|
17
|
-
i[0] !== e.id || i[1] !== e.type || i[2] !== t ? (l = () => {
|
|
18
|
-
t(e.id, {
|
|
19
|
-
type: e.type
|
|
20
|
-
});
|
|
21
|
-
}, c = [e.id, e.type, t], i[0] = e.id, i[1] = e.type, i[2] = t, i[3] = l, i[4] = c) : (l = i[3], c = i[4]), n(l, c);
|
|
22
|
-
let a, g;
|
|
23
|
-
i[5] !== e.error || i[6] !== e.id || i[7] !== e.isFetching || i[8] !== e.isLoading || i[9] !== t ? (a = () => {
|
|
24
|
-
t(e.id, {
|
|
25
|
-
isLoading: e.isLoading ?? !1,
|
|
26
|
-
isFetching: e.isFetching ?? !1,
|
|
27
|
-
error: e.error
|
|
28
|
-
});
|
|
29
|
-
}, g = [e.id, e.isLoading, e.isFetching, e.error, t], i[5] = e.error, i[6] = e.id, i[7] = e.isFetching, i[8] = e.isLoading, i[9] = t, i[10] = a, i[11] = g) : (a = i[10], g = i[11]), n(a, g);
|
|
30
|
-
let f, u;
|
|
31
|
-
i[12] !== e.config || i[13] !== e.id || i[14] !== t ? (f = () => {
|
|
32
|
-
e.config && t(e.id, {
|
|
33
|
-
...e.config
|
|
34
|
-
});
|
|
35
|
-
}, u = [e.id, e.config, t], i[12] = e.config, i[13] = e.id, i[14] = t, i[15] = f, i[16] = u) : (f = i[15], u = i[16]), n(f, u);
|
|
36
|
-
let m, r;
|
|
37
|
-
i[17] !== d || i[18] !== e.data || i[19] !== e.id ? (m = () => {
|
|
38
|
-
d(e.id, e.data);
|
|
39
|
-
}, r = [e.id, e.data, d], i[17] = d, i[18] = e.data, i[19] = e.id, i[20] = m, i[21] = r) : (m = i[20], r = i[21]), n(m, r);
|
|
40
|
-
let h, x;
|
|
41
|
-
i[22] !== d || i[23] !== e.data || i[24] !== e.id ? (h = () => {
|
|
42
|
-
let o = b.getState().widgets[e.id]?.registeredTools;
|
|
43
|
-
return b.subscribe((F) => {
|
|
44
|
-
const T = F.widgets[e.id]?.registeredTools;
|
|
45
|
-
T !== o && (o = T, d(e.id, e.data));
|
|
46
|
-
});
|
|
47
|
-
}, x = [e.id, e.data, d], i[22] = d, i[23] = e.data, i[24] = e.id, i[25] = h, i[26] = x) : (h = i[25], x = i[26]), n(h, x);
|
|
48
|
-
let y;
|
|
49
|
-
return i[27] !== e.children ? (y = /* @__PURE__ */ L(_, { sx: P.root, children: e.children }), i[27] = e.children, i[28] = y) : y = i[28], y;
|
|
50
|
-
}
|
|
51
|
-
function S(e) {
|
|
52
|
-
return e.executeToolPipeline;
|
|
53
|
-
}
|
|
54
|
-
function j(e) {
|
|
55
|
-
return e.setWidget;
|
|
56
|
-
}
|
|
57
|
-
function k(...e) {
|
|
58
|
-
return w(e[0] ?? {}, e[1] ?? {}, {
|
|
59
|
-
arrayMerge(i, t) {
|
|
60
|
-
return t;
|
|
61
|
-
}
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
export {
|
|
65
|
-
$ as WidgetRoot,
|
|
66
|
-
k as mergeWidgetConfig
|
|
67
|
-
};
|
|
68
|
-
//# sourceMappingURL=root.js.map
|
package/dist/widgets/root.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"root.js","sources":["../../src/widgets/root/style.ts","../../src/widgets/root/root.tsx","../../src/widgets/root/utils.ts"],"sourcesContent":["import type { SxProps, Theme } from '@mui/material'\n\nexport const styles = {\n root: {\n display: 'flex',\n flexDirection: 'column',\n gap: (theme: Theme) => theme.spacing(2),\n },\n} satisfies Record<string, SxProps<Theme>>\n","import { Box } from '@mui/material'\nimport { styles } from './style'\nimport { useEffect } from 'react'\nimport type { WidgetRootProps } from './types'\nimport { useWidgetStore } from '../stores/widget-store'\nimport type { WrapperState } from '../wrapper'\n\nexport function WidgetRoot<T>(props: WidgetRootProps<T>) {\n const setWidget = useWidgetStore((state) => state.setWidget)\n const executeToolPipeline = useWidgetStore(\n (state) => state.executeToolPipeline,\n )\n\n // Split into 3 effects for metadata and 1 for data pipeline:\n // Each property that can be modified independently gets its own effect to avoid\n // accidentally resetting other properties.\n //\n // - Effect 1: Type (can be modified by tools that change visualization type)\n // - Effect 2: Loading/Error states (change during fetch lifecycle)\n // - Effect 3: Config (can be modified by tools that change widget configuration)\n // - Effect 4: Data pipeline execution (transforms data through registered tools)\n // - Effect 5: Re-execute pipeline when tool state changes\n\n // Effect 1: Type updates\n useEffect(() => {\n setWidget<WrapperState>(props.id, {\n type: props.type,\n })\n }, [props.id, props.type, setWidget])\n\n // Effect 2: Loading and error states\n useEffect(() => {\n setWidget<WrapperState>(props.id, {\n isLoading: props.isLoading ?? false,\n isFetching: props.isFetching ?? false,\n error: props.error,\n })\n }, [props.id, props.isLoading, props.isFetching, props.error, setWidget])\n\n // Effect 3: Config updates\n useEffect(() => {\n if (props.config) {\n setWidget<WrapperState>(props.id, {\n ...props.config,\n })\n }\n }, [props.id, props.config, setWidget])\n\n // Effect 4: Execute tool pipeline when props.data changes\n useEffect(() => {\n void executeToolPipeline(props.id, props.data)\n }, [props.id, props.data, executeToolPipeline])\n\n // Effect 5: Re-execute pipeline when tool state changes (enabled/config)\n useEffect(() => {\n let prevTools = useWidgetStore.getState().widgets[props.id]?.registeredTools\n\n const unsubscribe = useWidgetStore.subscribe((state) => {\n const currentTools = state.widgets[props.id]?.registeredTools\n\n // Only re-execute if tools array changed\n if (currentTools !== prevTools) {\n prevTools = currentTools\n void executeToolPipeline(props.id, props.data)\n }\n })\n\n return unsubscribe\n }, [props.id, props.data, executeToolPipeline])\n\n return <Box sx={styles.root}>{props.children}</Box>\n}\n","import deepmerge from 'deepmerge'\n\nexport function mergeWidgetConfig<T>(\n ...options: [Partial<T> | undefined, Partial<T> | undefined]\n): T {\n return deepmerge(options[0] ?? {}, options[1] ?? {}, {\n arrayMerge(_, source) {\n return source as T[keyof T][]\n },\n })\n}\n"],"names":["styles","root","display","flexDirection","gap","theme","spacing","WidgetRoot","props","$","_c","setWidget","useWidgetStore","_temp","executeToolPipeline","_temp2","t0","t1","id","type","useEffect","t2","t3","error","isFetching","isLoading","t4","t5","config","t6","t7","data","t8","t9","prevTools","getState","widgets","registeredTools","subscribe","state_1","currentTools","state","t10","children","Box","state_0","mergeWidgetConfig","options","deepmerge","arrayMerge","_","source"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stores.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
package/dist/widgets.js
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { u as e } from "./widget-store-Dd7_sWZT.js";
|
|
2
|
-
import { W } from "./no-data-DfkC_Kc_.js";
|
|
3
|
-
import { W as s } from "./error-G3sy6lw3.js";
|
|
4
|
-
import { W as f } from "./note-Clng2ej6.js";
|
|
5
|
-
export {
|
|
6
|
-
s as WidgetError,
|
|
7
|
-
W as WidgetNoData,
|
|
8
|
-
f as WidgetNote,
|
|
9
|
-
e as useWidgetStore
|
|
10
|
-
};
|
|
11
|
-
//# sourceMappingURL=widgets.js.map
|
package/dist/widgets.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"widgets.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
|
File without changes
|
|
File without changes
|