@carto/ps-react-ui 4.3.0-widgets.0 → 5.0.0-widgets.2
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/components.js +25 -23
- package/dist/components.js.map +1 -1
- package/dist/error-zHOU_QIB.js +38 -0
- package/dist/error-zHOU_QIB.js.map +1 -0
- package/dist/exports-Cr43OCul.js +51 -0
- package/dist/exports-Cr43OCul.js.map +1 -0
- package/dist/{lasso-tool-BC-rsMMW.js → lasso-tool-CYn3ivf-.js} +165 -183
- package/dist/lasso-tool-CYn3ivf-.js.map +1 -0
- package/dist/no-data-Cz80hEWj.js +61 -0
- package/dist/no-data-Cz80hEWj.js.map +1 -0
- package/dist/options-D9wflre6.js +49 -0
- package/dist/options-D9wflre6.js.map +1 -0
- package/dist/row-C_m1ovHv.js +35 -0
- package/dist/row-C_m1ovHv.js.map +1 -0
- package/dist/series-6xp-KQ0S.js +91 -0
- package/dist/series-6xp-KQ0S.js.map +1 -0
- package/dist/{smart-tooltip-BSlcAkBM.js → smart-tooltip-BEtBaIdz.js} +2 -2
- package/dist/{smart-tooltip-BSlcAkBM.js.map → smart-tooltip-BEtBaIdz.js.map} +1 -1
- package/dist/styles-dOu_pRNb.js +77 -0
- package/dist/styles-dOu_pRNb.js.map +1 -0
- package/dist/tooltip-BDnrRKrp.js +25 -0
- package/dist/tooltip-BDnrRKrp.js.map +1 -0
- package/dist/types/hooks/index.d.ts +2 -0
- package/dist/types/hooks/use-debounce.d.ts +19 -0
- package/dist/types/hooks/use-widget-ref.d.ts +17 -0
- package/dist/types/widgets/_shared/chart-config/config-factory.d.ts +5 -11
- package/dist/types/widgets/_shared/chart-config/option-builders.d.ts +3 -8
- package/dist/types/widgets/actions/change-column/change-column-icon.d.ts +1 -0
- package/dist/types/widgets/actions/change-column/change-column.d.ts +16 -0
- package/dist/types/widgets/actions/change-column/sortable-column-item.d.ts +9 -0
- package/dist/types/widgets/actions/change-column/types.d.ts +19 -0
- package/dist/types/widgets/actions/download/download.d.ts +1 -1
- package/dist/types/widgets/actions/download/exports.d.ts +1 -1
- package/dist/types/widgets/actions/download/types.d.ts +3 -11
- package/dist/types/widgets/actions/fullscreen/fullscreen.d.ts +1 -1
- package/dist/types/widgets/actions/fullscreen/styles.d.ts +6 -0
- package/dist/types/widgets/actions/fullscreen/types.d.ts +8 -9
- package/dist/types/widgets/actions/index.d.ts +14 -1
- package/dist/types/widgets/actions/lock-selection/lock-selection.d.ts +19 -0
- package/dist/types/widgets/actions/lock-selection/types.d.ts +38 -0
- package/dist/types/widgets/actions/relative-data/relative-data.d.ts +18 -0
- package/dist/types/widgets/actions/relative-data/style.d.ts +8 -0
- package/dist/types/widgets/actions/relative-data/types.d.ts +27 -0
- package/dist/types/widgets/actions/relative-data/utils.d.ts +9 -0
- package/dist/types/widgets/actions/relative-data/utils.test.d.ts +1 -0
- package/dist/types/widgets/actions/searcher/searcher-toggle.d.ts +18 -0
- package/dist/types/widgets/actions/searcher/searcher.d.ts +21 -0
- package/dist/types/widgets/actions/searcher/types.d.ts +64 -0
- package/dist/types/widgets/actions/shared/styles.d.ts +11 -0
- package/dist/types/widgets/actions/stack-toggle/grouped-bar-chart-icon.d.ts +1 -0
- package/dist/types/widgets/actions/stack-toggle/stack-toggle.d.ts +16 -0
- package/dist/types/widgets/actions/stack-toggle/types.d.ts +25 -0
- package/dist/types/widgets/actions/zoom-toggle/index.d.ts +2 -0
- package/dist/types/widgets/actions/zoom-toggle/style.d.ts +13 -0
- package/dist/types/widgets/actions/zoom-toggle/types.d.ts +41 -0
- package/dist/types/widgets/actions/zoom-toggle/zoom-toggle.d.ts +18 -0
- package/dist/types/widgets/bar/config.d.ts +5 -4
- package/dist/types/widgets/bar/index.d.ts +2 -2
- package/dist/types/widgets/bar/types.d.ts +6 -12
- package/dist/types/widgets/category/category-ui.d.ts +2 -0
- package/dist/types/widgets/category/components/category-bar.d.ts +7 -0
- package/dist/types/widgets/category/components/category-legend.d.ts +6 -0
- package/dist/types/widgets/category/components/category-row-multi.d.ts +11 -0
- package/dist/types/widgets/category/components/category-row-other.d.ts +6 -0
- package/dist/types/widgets/category/components/category-row-single.d.ts +11 -0
- package/dist/types/widgets/category/components/index.d.ts +10 -0
- package/dist/types/widgets/category/config.d.ts +15 -0
- package/dist/types/widgets/category/index.d.ts +6 -0
- package/dist/types/widgets/category/skeleton.d.ts +1 -0
- package/dist/types/widgets/category/style.d.ts +121 -0
- package/dist/types/widgets/category/types.d.ts +33 -0
- package/dist/types/widgets/echart/echart-ui.d.ts +1 -1
- package/dist/types/widgets/echart/index.d.ts +2 -2
- package/dist/types/widgets/echart/options.d.ts +2 -3
- package/dist/types/widgets/echart/types.d.ts +11 -10
- package/dist/types/widgets/echart/utils.d.ts +22 -16
- package/dist/types/widgets/error/error.d.ts +2 -0
- package/dist/types/widgets/error/index.d.ts +2 -0
- package/dist/types/widgets/error/types.d.ts +12 -0
- package/dist/types/widgets/formula/components/row.d.ts +1 -1
- package/dist/types/widgets/formula/config.d.ts +4 -2
- package/dist/types/widgets/formula/index.d.ts +2 -1
- package/dist/types/widgets/formula/types.d.ts +6 -18
- package/dist/types/widgets/histogram/config.d.ts +5 -4
- package/dist/types/widgets/histogram/index.d.ts +2 -2
- package/dist/types/widgets/histogram/types.d.ts +6 -12
- package/dist/types/widgets/index.d.ts +6 -4
- package/dist/types/widgets/markdown/config.d.ts +4 -2
- package/dist/types/widgets/markdown/index.d.ts +2 -2
- package/dist/types/widgets/markdown/markdown-ui.d.ts +1 -1
- package/dist/types/widgets/markdown/types.d.ts +6 -16
- package/dist/types/widgets/no-data/index.d.ts +2 -0
- package/dist/types/widgets/no-data/no-data.d.ts +35 -0
- package/dist/types/widgets/no-data/style.d.ts +6 -0
- package/dist/types/widgets/no-data/types.d.ts +67 -0
- package/dist/types/widgets/note/note.d.ts +1 -1
- package/dist/types/widgets/note/style.d.ts +12 -1
- package/dist/types/widgets/note/types.d.ts +4 -3
- package/dist/types/widgets/pie/config.d.ts +5 -4
- package/dist/types/widgets/pie/index.d.ts +2 -2
- package/dist/types/widgets/pie/types.d.ts +6 -12
- package/dist/types/widgets/range/config.d.ts +6 -2
- package/dist/types/widgets/range/index.d.ts +2 -1
- package/dist/types/widgets/range/types.d.ts +6 -17
- package/dist/types/widgets/root/index.d.ts +2 -1
- package/dist/types/widgets/root/root.d.ts +1 -1
- package/dist/types/widgets/root/types.d.ts +6 -12
- package/dist/types/widgets/root/utils.d.ts +1 -0
- package/dist/types/widgets/scatterplot/config.d.ts +5 -4
- package/dist/types/widgets/scatterplot/index.d.ts +2 -2
- package/dist/types/widgets/scatterplot/types.d.ts +6 -12
- package/dist/types/widgets/selection-summary/index.d.ts +2 -0
- package/dist/types/widgets/selection-summary/selection-summary.d.ts +2 -0
- package/dist/types/widgets/selection-summary/style.d.ts +9 -0
- package/dist/types/widgets/selection-summary/types.d.ts +13 -0
- package/dist/types/widgets/spread/config.d.ts +10 -2
- package/dist/types/widgets/spread/index.d.ts +2 -1
- package/dist/types/widgets/spread/types.d.ts +6 -18
- package/dist/types/widgets/stores/index.d.ts +2 -0
- package/dist/types/widgets/stores/types.d.ts +179 -12
- package/dist/types/widgets/stores/widget-store.d.ts +2 -27
- package/dist/types/widgets/subheader/index.d.ts +2 -0
- package/dist/types/widgets/subheader/style.d.ts +19 -0
- package/dist/types/widgets/subheader/subheader.d.ts +2 -0
- package/dist/types/widgets/subheader/types.d.ts +10 -0
- package/dist/types/widgets/table/components/cell-header.d.ts +5 -0
- package/dist/types/widgets/table/components/cell.d.ts +16 -0
- package/dist/types/widgets/table/components/index.d.ts +4 -0
- package/dist/types/widgets/table/components/pagination-actions.d.ts +5 -0
- package/dist/types/widgets/table/components/pagination.d.ts +5 -0
- package/dist/types/widgets/table/components/row.d.ts +5 -0
- package/dist/types/widgets/table/config.d.ts +11 -0
- package/dist/types/widgets/table/helpers.d.ts +38 -0
- package/dist/types/widgets/table/helpers.test.d.ts +1 -0
- package/dist/types/widgets/table/hooks/index.d.ts +6 -0
- package/dist/types/widgets/table/hooks/use-pagination.d.ts +45 -0
- package/dist/types/widgets/table/hooks/use-pagination.test.d.ts +1 -0
- package/dist/types/widgets/table/hooks/use-selection.d.ts +32 -0
- package/dist/types/widgets/table/hooks/use-selection.test.d.ts +1 -0
- package/dist/types/widgets/table/hooks/use-sort.d.ts +29 -0
- package/dist/types/widgets/table/hooks/use-sort.test.d.ts +1 -0
- package/dist/types/widgets/table/index.d.ts +13 -0
- package/dist/types/widgets/table/serializer.d.ts +16 -0
- package/dist/types/widgets/table/skeleton.d.ts +10 -0
- package/dist/types/widgets/table/style.d.ts +33 -0
- package/dist/types/widgets/table/table-ui.d.ts +32 -0
- package/dist/types/widgets/table/types.d.ts +201 -0
- package/dist/types/widgets/timeseries/config.d.ts +5 -4
- package/dist/types/widgets/timeseries/index.d.ts +2 -2
- package/dist/types/widgets/timeseries/types.d.ts +6 -12
- package/dist/types/widgets/toolbar-actions/index.d.ts +2 -0
- package/dist/types/widgets/toolbar-actions/styles.d.ts +37 -0
- package/dist/types/widgets/toolbar-actions/toolbar-actions.d.ts +8 -0
- package/dist/types/widgets/toolbar-actions/types.d.ts +45 -0
- package/dist/types/widgets/wrapper/index.d.ts +2 -2
- package/dist/types/widgets/wrapper/styles.d.ts +6 -0
- package/dist/types/widgets/wrapper/types.d.ts +7 -5
- package/dist/types/widgets/wrapper/wrapper-ui.d.ts +1 -1
- package/dist/types/widgets/wrapper/wrapper.d.ts +1 -1
- package/dist/utils-Dv5Z47UQ.js +144 -0
- package/dist/utils-Dv5Z47UQ.js.map +1 -0
- package/dist/widget-store-DNyVElxd.js +190 -0
- package/dist/widget-store-DNyVElxd.js.map +1 -0
- package/dist/widgets/actions.js +826 -6
- package/dist/widgets/actions.js.map +1 -1
- package/dist/widgets/bar.js +189 -4
- package/dist/widgets/bar.js.map +1 -1
- package/dist/widgets/category.js +460 -0
- package/dist/widgets/category.js.map +1 -0
- package/dist/widgets/echart.js +120 -8
- package/dist/widgets/echart.js.map +1 -1
- package/dist/widgets/error.js +5 -0
- package/dist/widgets/error.js.map +1 -0
- package/dist/widgets/formula.js +117 -20
- package/dist/widgets/formula.js.map +1 -1
- package/dist/widgets/histogram.js +172 -4
- package/dist/widgets/histogram.js.map +1 -1
- package/dist/widgets/markdown.js +127 -0
- package/dist/widgets/markdown.js.map +1 -0
- package/dist/widgets/no-data.js +5 -0
- package/dist/widgets/no-data.js.map +1 -0
- package/dist/widgets/note.js +121 -2
- package/dist/widgets/note.js.map +1 -1
- package/dist/widgets/pie.js +213 -4
- package/dist/widgets/pie.js.map +1 -1
- package/dist/widgets/range.js +210 -12
- package/dist/widgets/range.js.map +1 -1
- package/dist/widgets/root.js +65 -2
- package/dist/widgets/root.js.map +1 -1
- package/dist/widgets/scatterplot.js +219 -4
- package/dist/widgets/scatterplot.js.map +1 -1
- package/dist/widgets/selection-summary.js +40 -0
- package/dist/widgets/selection-summary.js.map +1 -0
- package/dist/widgets/skeleton-loader.js +21 -2
- package/dist/widgets/skeleton-loader.js.map +1 -1
- package/dist/widgets/spread.js +162 -17
- package/dist/widgets/spread.js.map +1 -1
- package/dist/widgets/stores.js +5 -0
- package/dist/widgets/stores.js.map +1 -0
- package/dist/widgets/subheader.js +52 -0
- package/dist/widgets/subheader.js.map +1 -0
- package/dist/widgets/table.js +691 -0
- package/dist/widgets/table.js.map +1 -0
- package/dist/widgets/timeseries.js +171 -4
- package/dist/widgets/timeseries.js.map +1 -1
- package/dist/widgets/toolbar-actions.js +6106 -0
- package/dist/widgets/toolbar-actions.js.map +1 -0
- package/dist/widgets/wrapper.js +292 -6
- package/dist/widgets/wrapper.js.map +1 -1
- package/dist/widgets.js +6 -83
- package/dist/widgets.js.map +1 -1
- package/package.json +46 -6
- package/dist/const-BLV7Tvte.js +0 -758
- package/dist/const-BLV7Tvte.js.map +0 -1
- package/dist/download-KroQ0SWg.js +0 -195
- package/dist/download-KroQ0SWg.js.map +0 -1
- package/dist/echart-CqfROFu3.js +0 -214
- package/dist/echart-CqfROFu3.js.map +0 -1
- package/dist/formula-ui-ChzvMEOG.js +0 -52
- package/dist/formula-ui-ChzvMEOG.js.map +0 -1
- package/dist/lasso-tool-BC-rsMMW.js.map +0 -1
- package/dist/markdown-n_tOtoiT.js +0 -27
- package/dist/markdown-n_tOtoiT.js.map +0 -1
- package/dist/markdown-ui-BBrzzd7Y.js +0 -62
- package/dist/markdown-ui-BBrzzd7Y.js.map +0 -1
- package/dist/note-DF-n70TX.js +0 -101
- package/dist/note-DF-n70TX.js.map +0 -1
- package/dist/range-ui-CtUX11Xm.js +0 -146
- package/dist/range-ui-CtUX11Xm.js.map +0 -1
- package/dist/root-L_WZnJY5.js +0 -46
- package/dist/root-L_WZnJY5.js.map +0 -1
- package/dist/row-DQaSxmDV.js +0 -18
- package/dist/row-DQaSxmDV.js.map +0 -1
- package/dist/series-CsyEPq-X.js +0 -83
- package/dist/series-CsyEPq-X.js.map +0 -1
- package/dist/skeleton-BSPcEvfq.js +0 -27
- package/dist/skeleton-BSPcEvfq.js.map +0 -1
- package/dist/skeleton-C4rOYTy-.js +0 -78
- package/dist/skeleton-C4rOYTy-.js.map +0 -1
- package/dist/skeleton-C9Jqc241.js +0 -82
- package/dist/skeleton-C9Jqc241.js.map +0 -1
- package/dist/skeleton-D-zHBBIw.js +0 -64
- package/dist/skeleton-D-zHBBIw.js.map +0 -1
- package/dist/skeleton-DMP-IwaJ.js +0 -109
- package/dist/skeleton-DMP-IwaJ.js.map +0 -1
- package/dist/skeleton-DRorqowB.js +0 -22
- package/dist/skeleton-DRorqowB.js.map +0 -1
- package/dist/skeleton-DsZhv-AH.js +0 -89
- package/dist/skeleton-DsZhv-AH.js.map +0 -1
- package/dist/skeleton-Dx3FCer0.js +0 -13
- package/dist/skeleton-Dx3FCer0.js.map +0 -1
- package/dist/skeleton-QVDdb1c2.js +0 -21
- package/dist/skeleton-QVDdb1c2.js.map +0 -1
- package/dist/skeleton-loader-DWC1-EAx.js +0 -23
- package/dist/skeleton-loader-DWC1-EAx.js.map +0 -1
- package/dist/spread-ui-BjzH190y.js +0 -82
- package/dist/spread-ui-BjzH190y.js.map +0 -1
- package/dist/style-BGeCtQkP.js +0 -19
- package/dist/style-BGeCtQkP.js.map +0 -1
- package/dist/style-C7v1iwqD.js +0 -34
- package/dist/style-C7v1iwqD.js.map +0 -1
- package/dist/styles-cohnxh9F.js +0 -23
- package/dist/styles-cohnxh9F.js.map +0 -1
- package/dist/types/widgets/config-loader/index.d.ts +0 -2
- package/dist/types/widgets/config-loader/types.d.ts +0 -12
- package/dist/types/widgets/config-loader/use-config.d.ts +0 -5
- package/dist/types/widgets/widget/const.d.ts +0 -2
- package/dist/types/widgets/widget/types.d.ts +0 -47
- package/dist/types/widgets/widget/widget.d.ts +0 -2
- package/dist/use-config-BYEOiIcu.js +0 -43
- package/dist/use-config-BYEOiIcu.js.map +0 -1
- package/dist/widget-store-yDO2ul8g.js +0 -44
- package/dist/widget-store-yDO2ul8g.js.map +0 -1
- package/dist/widgets/config-loader.js +0 -5
- package/dist/widgets/config-loader.js.map +0 -1
- package/dist/wrapper-57csMybC.js +0 -265
- package/dist/wrapper-57csMybC.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"echart.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
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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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
package/dist/widgets/formula.js
CHANGED
|
@@ -1,27 +1,124 @@
|
|
|
1
|
-
import { I as
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
|
|
1
|
+
import { I as F, S as D, P, a as W } from "../series-6xp-KQ0S.js";
|
|
2
|
+
import { jsx as l, jsxs as k, Fragment as C } from "react/jsx-runtime";
|
|
3
|
+
import { c as S } from "react/compiler-runtime";
|
|
4
|
+
import { u as y } from "../widget-store-DNyVElxd.js";
|
|
5
|
+
import { useShallow as R } from "zustand/shallow";
|
|
6
|
+
import { R as T, s as _ } from "../row-C_m1ovHv.js";
|
|
7
|
+
import { Box as I, Skeleton as $ } from "@mui/material";
|
|
8
|
+
import "@mui/icons-material";
|
|
9
|
+
import { useRef as b, useEffect as j } from "react";
|
|
10
|
+
import { d as v, a as w } from "../exports-Cr43OCul.js";
|
|
11
|
+
import "../lasso-tool-CYn3ivf-.js";
|
|
12
|
+
import "../cjs-D9ro6BXv.js";
|
|
13
|
+
import "@dnd-kit/core";
|
|
14
|
+
import "@dnd-kit/sortable";
|
|
15
|
+
import "@dnd-kit/utilities";
|
|
16
|
+
const z = (e) => e.toString();
|
|
17
|
+
function U(e) {
|
|
18
|
+
const t = S(16);
|
|
19
|
+
let o, i, n;
|
|
20
|
+
t[0] !== e ? ({
|
|
21
|
+
id: o,
|
|
22
|
+
index: n,
|
|
23
|
+
...i
|
|
24
|
+
} = e, t[0] = e, t[1] = o, t[2] = i, t[3] = n) : (o = t[1], i = t[2], n = t[3]);
|
|
25
|
+
const f = n === void 0 ? 0 : n;
|
|
26
|
+
let r;
|
|
27
|
+
t[4] !== o || t[5] !== f ? (r = (p) => {
|
|
28
|
+
const h = p.getWidget(o);
|
|
29
|
+
return {
|
|
30
|
+
value: h?.data?.[f]?.value,
|
|
31
|
+
color: h?.data?.[f]?.color,
|
|
32
|
+
formatter: h?.formatter
|
|
33
|
+
};
|
|
34
|
+
}, t[4] = o, t[5] = f, t[6] = r) : r = t[6];
|
|
35
|
+
const {
|
|
36
|
+
value: d,
|
|
37
|
+
color: u,
|
|
38
|
+
formatter: a
|
|
39
|
+
} = y(R(r)), x = a === void 0 ? z : a;
|
|
40
|
+
let s;
|
|
41
|
+
t[7] !== u ? (s = {
|
|
42
|
+
color: u
|
|
43
|
+
}, t[7] = u, t[8] = s) : s = t[8];
|
|
44
|
+
const g = d ?? 0;
|
|
45
|
+
let m;
|
|
46
|
+
t[9] !== x || t[10] !== g ? (m = x(g), t[9] = x, t[10] = g, t[11] = m) : m = t[11];
|
|
47
|
+
let c;
|
|
48
|
+
return t[12] !== i || t[13] !== s || t[14] !== m ? (c = /* @__PURE__ */ l(F, { TypographyProps: s, ...i, children: m }), t[12] = i, t[13] = s, t[14] = m, t[15] = c) : c = t[15], c;
|
|
49
|
+
}
|
|
50
|
+
function tt({
|
|
51
|
+
refUI: e
|
|
52
|
+
}) {
|
|
53
|
+
return [{
|
|
54
|
+
...v,
|
|
55
|
+
modifier: () => v.modifier(e)
|
|
56
|
+
}, {
|
|
57
|
+
...w,
|
|
58
|
+
modifier: async (t) => {
|
|
59
|
+
const o = [t?.map((i) => i.value) ?? []];
|
|
60
|
+
return w.modifier(o);
|
|
61
|
+
}
|
|
62
|
+
}];
|
|
63
|
+
}
|
|
64
|
+
function et() {
|
|
65
|
+
return {
|
|
66
|
+
series: []
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
function it(e) {
|
|
70
|
+
const t = S(9), o = b(null), i = y(V);
|
|
71
|
+
let n, f;
|
|
72
|
+
t[0] !== e.id || t[1] !== i ? (n = () => {
|
|
73
|
+
o.current && i(e.id, {
|
|
74
|
+
refUI: o
|
|
75
|
+
});
|
|
76
|
+
}, f = [e.id, i], t[0] = e.id, t[1] = i, t[2] = n, t[3] = f) : (n = t[2], f = t[3]), j(n, f);
|
|
77
|
+
let r;
|
|
78
|
+
t[4] !== e.id ? (r = (u) => {
|
|
79
|
+
const {
|
|
80
|
+
index: a
|
|
81
|
+
} = u;
|
|
82
|
+
return /* @__PURE__ */ k(C, { children: [
|
|
83
|
+
/* @__PURE__ */ l(D, { id: e.id, index: a }),
|
|
84
|
+
/* @__PURE__ */ l(P, { id: e.id, index: a }),
|
|
85
|
+
/* @__PURE__ */ l(U, { id: e.id, index: a }),
|
|
86
|
+
/* @__PURE__ */ l(W, { id: e.id, index: a })
|
|
87
|
+
] });
|
|
88
|
+
}, t[4] = e.id, t[5] = r) : r = t[5];
|
|
89
|
+
let d;
|
|
90
|
+
return t[6] !== e.id || t[7] !== r ? (d = /* @__PURE__ */ l(I, { ref: o, children: /* @__PURE__ */ l(T, { id: e.id, children: r }) }), t[6] = e.id, t[7] = r, t[8] = d) : d = t[8], d;
|
|
91
|
+
}
|
|
92
|
+
function V(e) {
|
|
93
|
+
return e.setWidget;
|
|
94
|
+
}
|
|
95
|
+
function ot() {
|
|
96
|
+
const e = S(1);
|
|
97
|
+
let t;
|
|
98
|
+
return e[0] === Symbol.for("react.memo_cache_sentinel") ? (t = /* @__PURE__ */ l(I, { sx: _.row, "aria-label": "Formula skeleton", children: /* @__PURE__ */ l($, { width: 120, height: 32 }) }), e[0] = t) : t = e[0], t;
|
|
99
|
+
}
|
|
100
|
+
function B(e) {
|
|
6
101
|
return {
|
|
7
|
-
...
|
|
8
|
-
prefix: typeof
|
|
9
|
-
suffix: typeof
|
|
102
|
+
...e,
|
|
103
|
+
prefix: typeof e.prefix == "string" ? e.prefix : void 0,
|
|
104
|
+
suffix: typeof e.suffix == "string" ? e.suffix : void 0
|
|
10
105
|
};
|
|
11
106
|
}
|
|
12
|
-
function e
|
|
13
|
-
return
|
|
107
|
+
function rt(e) {
|
|
108
|
+
return e?.map(B);
|
|
14
109
|
}
|
|
15
110
|
export {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
111
|
+
ot as FormulaSkeleton,
|
|
112
|
+
it as FormulaUI,
|
|
113
|
+
F as Item,
|
|
114
|
+
P as Prefix,
|
|
115
|
+
T as Row,
|
|
116
|
+
D as Series,
|
|
117
|
+
W as Suffix,
|
|
118
|
+
U as Value,
|
|
119
|
+
et as formulaConfig,
|
|
120
|
+
tt as formulaDownloadConfig,
|
|
121
|
+
B as sanitizeDataItem,
|
|
122
|
+
rt as sanitizeDataItems
|
|
26
123
|
};
|
|
27
124
|
//# sourceMappingURL=formula.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formula.js","sources":["../../src/widgets/formula/serializer.ts"],"sourcesContent":["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":["
|
|
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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"}
|
|
@@ -1,7 +1,175 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { jsx as o, jsxs as c } from "react/jsx-runtime";
|
|
2
|
+
import { c as f } from "react/compiler-runtime";
|
|
3
|
+
import "react";
|
|
4
|
+
import "echarts";
|
|
5
|
+
import "../widget-store-DNyVElxd.js";
|
|
6
|
+
import "zustand/shallow";
|
|
7
|
+
import { g } from "../options-D9wflre6.js";
|
|
8
|
+
import { m } from "../utils-Dv5Z47UQ.js";
|
|
9
|
+
import { f as u, c as h, b as y, a as d, d as b } from "../styles-dOu_pRNb.js";
|
|
10
|
+
import { Box as n, Skeleton as l } from "@mui/material";
|
|
11
|
+
import "@mui/icons-material";
|
|
12
|
+
import { d as a, a as s } from "../exports-Cr43OCul.js";
|
|
13
|
+
import "../lasso-tool-CYn3ivf-.js";
|
|
14
|
+
import "../cjs-D9ro6BXv.js";
|
|
15
|
+
import "@dnd-kit/core";
|
|
16
|
+
import "@dnd-kit/sortable";
|
|
17
|
+
import "@dnd-kit/utilities";
|
|
18
|
+
function H({
|
|
19
|
+
refUI: t
|
|
20
|
+
}) {
|
|
21
|
+
return [{
|
|
22
|
+
...a,
|
|
23
|
+
modifier: () => a.modifier(t)
|
|
24
|
+
}, {
|
|
25
|
+
...s,
|
|
26
|
+
modifier: async (e) => {
|
|
27
|
+
const i = u(e);
|
|
28
|
+
return s.modifier(i);
|
|
29
|
+
}
|
|
30
|
+
}];
|
|
31
|
+
}
|
|
32
|
+
function W(t) {
|
|
33
|
+
return {
|
|
34
|
+
type: "histogram",
|
|
35
|
+
option: m(g(t), x(t))
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
function x({
|
|
39
|
+
data: t = [],
|
|
40
|
+
theme: e
|
|
41
|
+
}) {
|
|
42
|
+
const i = (t?.length ?? 0) > 1;
|
|
43
|
+
return {
|
|
44
|
+
legend: d(i),
|
|
45
|
+
grid: y(i, e),
|
|
46
|
+
xAxis: {
|
|
47
|
+
type: "category",
|
|
48
|
+
axisLine: {
|
|
49
|
+
show: !1
|
|
50
|
+
},
|
|
51
|
+
axisLabel: {
|
|
52
|
+
fontSize: e.typography.overlineDelicate.fontSize,
|
|
53
|
+
fontFamily: e.typography.overlineDelicate.fontFamily,
|
|
54
|
+
showMinLabel: !0,
|
|
55
|
+
showMaxLabel: !0,
|
|
56
|
+
hideOverlap: !0,
|
|
57
|
+
margin: 0,
|
|
58
|
+
padding: [parseInt(e.spacing(0.5)), parseInt(e.spacing(0.5)), 0, parseInt(e.spacing(0.5))],
|
|
59
|
+
color: e.palette.black[60]
|
|
60
|
+
},
|
|
61
|
+
axisTick: {
|
|
62
|
+
show: !1
|
|
63
|
+
},
|
|
64
|
+
splitLine: {
|
|
65
|
+
show: !0,
|
|
66
|
+
lineStyle: {
|
|
67
|
+
color: e.palette.black[4]
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
yAxis: {
|
|
72
|
+
type: "value",
|
|
73
|
+
showMaxLabel: !0,
|
|
74
|
+
showMinLabel: !0,
|
|
75
|
+
splitNumber: 1,
|
|
76
|
+
axisLabel: {
|
|
77
|
+
fontSize: e.typography.overlineDelicate.fontSize,
|
|
78
|
+
fontFamily: e.typography.overlineDelicate.fontFamily,
|
|
79
|
+
margin: parseInt(e.spacing(1)),
|
|
80
|
+
show: !0,
|
|
81
|
+
showMaxLabel: !0,
|
|
82
|
+
showMinLabel: !0,
|
|
83
|
+
verticalAlign: "bottom"
|
|
84
|
+
},
|
|
85
|
+
axisLine: {
|
|
86
|
+
show: !1
|
|
87
|
+
},
|
|
88
|
+
axisTick: {
|
|
89
|
+
show: !1
|
|
90
|
+
},
|
|
91
|
+
splitLine: {
|
|
92
|
+
show: !0,
|
|
93
|
+
lineStyle: {
|
|
94
|
+
color: e.palette.black[4]
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
},
|
|
98
|
+
tooltip: {
|
|
99
|
+
position: h(e)
|
|
100
|
+
},
|
|
101
|
+
series: t.map((r, p) => ({
|
|
102
|
+
datasetIndex: p,
|
|
103
|
+
type: "bar",
|
|
104
|
+
barGap: "1%",
|
|
105
|
+
// No gap between bars in histogram
|
|
106
|
+
barCategoryGap: "1%",
|
|
107
|
+
// No gap between categories in histogram
|
|
108
|
+
emphasis: {
|
|
109
|
+
focus: "series"
|
|
110
|
+
}
|
|
111
|
+
}))
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
const w = {
|
|
115
|
+
skeleton: {
|
|
116
|
+
graph: b.graph
|
|
117
|
+
}
|
|
118
|
+
};
|
|
119
|
+
function q() {
|
|
120
|
+
const t = f(2);
|
|
121
|
+
let e;
|
|
122
|
+
t[0] === Symbol.for("react.memo_cache_sentinel") ? (e = /* @__PURE__ */ o(n, { sx: {
|
|
123
|
+
display: "flex",
|
|
124
|
+
alignItems: "flex-end",
|
|
125
|
+
justifyContent: "space-between",
|
|
126
|
+
gap: k,
|
|
127
|
+
height: C,
|
|
128
|
+
width: "100%"
|
|
129
|
+
}, children: Array(8).fill(0).map(S) }), t[0] = e) : e = t[0];
|
|
130
|
+
let i;
|
|
131
|
+
return t[1] === Symbol.for("react.memo_cache_sentinel") ? (i = /* @__PURE__ */ c(n, { sx: w.skeleton.graph.container, children: [
|
|
132
|
+
e,
|
|
133
|
+
/* @__PURE__ */ o(n, { sx: {
|
|
134
|
+
display: "flex",
|
|
135
|
+
alignItems: "center",
|
|
136
|
+
justifyContent: "space-between",
|
|
137
|
+
width: "100%",
|
|
138
|
+
mt: L
|
|
139
|
+
}, children: Array(4).fill(0).map(_) })
|
|
140
|
+
] }), t[1] = i) : i = t[1], i;
|
|
141
|
+
}
|
|
142
|
+
function _(t, e) {
|
|
143
|
+
return /* @__PURE__ */ o(l, { width: 32, height: 8 }, e);
|
|
144
|
+
}
|
|
145
|
+
function L(t) {
|
|
146
|
+
const {
|
|
147
|
+
spacing: e
|
|
148
|
+
} = t;
|
|
149
|
+
return e(1);
|
|
150
|
+
}
|
|
151
|
+
function S(t, e) {
|
|
152
|
+
const r = `${[60, 80, 95, 85, 70, 55, 40, 30][e]}%`;
|
|
153
|
+
return /* @__PURE__ */ o(l, { variant: "rectangular", sx: {
|
|
154
|
+
flex: 1,
|
|
155
|
+
height: r
|
|
156
|
+
} }, e);
|
|
157
|
+
}
|
|
158
|
+
function C(t) {
|
|
159
|
+
const {
|
|
160
|
+
spacing: e
|
|
161
|
+
} = t;
|
|
162
|
+
return e(30);
|
|
163
|
+
}
|
|
164
|
+
function k(t) {
|
|
165
|
+
const {
|
|
166
|
+
spacing: e
|
|
167
|
+
} = t;
|
|
168
|
+
return e(0.5);
|
|
169
|
+
}
|
|
3
170
|
export {
|
|
4
|
-
|
|
5
|
-
|
|
171
|
+
q as HistogramSkeleton,
|
|
172
|
+
W as histogramConfig,
|
|
173
|
+
H as histogramDownloadConfig
|
|
6
174
|
};
|
|
7
175
|
//# sourceMappingURL=histogram.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"histogram.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"histogram.js","sources":["../../src/widgets/histogram/config.ts","../../src/widgets/histogram/style.ts","../../src/widgets/histogram/skeleton.tsx"],"sourcesContent":["import {\n getCommonOptions,\n mergeEchartWidgetConfig,\n type EchartOptionsProps,\n} from '../echart'\nimport type {\n HistogramConfig,\n HistogramWidgetConfig,\n HistogramWidgetData,\n} from './types'\nimport {\n flattenObjectArrayToCSV,\n buildLegendConfig,\n buildGridConfig,\n createTooltipPositioner,\n} from '../_shared/chart-config'\nimport { downloadToCSV, downloadToPNG, type DownloadItem } from '../actions'\nimport type { ConfigProps } from '../root/types'\n\nexport function histogramDownloadConfig({\n refUI,\n}: ConfigProps): DownloadItem<HistogramWidgetData>[] {\n return [\n {\n ...downloadToPNG,\n modifier: () => downloadToPNG.modifier(refUI),\n },\n {\n ...downloadToCSV,\n modifier: async (data) => {\n const rows = flattenObjectArrayToCSV(data)\n return downloadToCSV.modifier(rows)\n },\n },\n ]\n}\nexport function histogramConfig(props: HistogramConfig): HistogramWidgetConfig {\n return {\n type: 'histogram',\n option: mergeEchartWidgetConfig(getCommonOptions(props), getOption(props)),\n }\n}\nfunction getOption({ data = [], theme }: HistogramConfig): EchartOptionsProps {\n const hasLegend = (data?.length ?? 0) > 1\n return {\n legend: buildLegendConfig(hasLegend),\n grid: buildGridConfig(hasLegend, theme),\n xAxis: {\n type: 'category',\n axisLine: {\n show: false,\n },\n axisLabel: {\n fontSize: theme.typography.overlineDelicate.fontSize,\n fontFamily: theme.typography.overlineDelicate.fontFamily,\n showMinLabel: true,\n showMaxLabel: true,\n hideOverlap: true,\n margin: 0,\n padding: [\n parseInt(theme.spacing(0.5)),\n parseInt(theme.spacing(0.5)),\n 0,\n parseInt(theme.spacing(0.5)),\n ],\n color: theme.palette.black[60],\n },\n axisTick: {\n show: false,\n },\n splitLine: {\n show: true,\n lineStyle: {\n color: theme.palette.black[4],\n },\n },\n },\n yAxis: {\n type: 'value',\n showMaxLabel: true,\n showMinLabel: true,\n splitNumber: 1,\n axisLabel: {\n fontSize: theme.typography.overlineDelicate.fontSize,\n fontFamily: theme.typography.overlineDelicate.fontFamily,\n margin: parseInt(theme.spacing(1)),\n show: true,\n showMaxLabel: true,\n showMinLabel: true,\n verticalAlign: 'bottom',\n },\n axisLine: {\n show: false,\n },\n axisTick: {\n show: false,\n },\n splitLine: {\n show: true,\n lineStyle: {\n color: theme.palette.black[4],\n },\n },\n },\n tooltip: {\n position: createTooltipPositioner(theme),\n },\n series: data.map((_: unknown, index: number) => ({\n datasetIndex: index,\n type: 'bar',\n barGap: '1%', // No gap between bars in histogram\n barCategoryGap: '1%', // No gap between categories in histogram\n emphasis: {\n focus: 'series',\n },\n })),\n } as EchartOptionsProps\n}\n","import type { SxProps, Theme } from '@mui/material'\nimport { baseSkeletonStyles } from '../_shared/skeleton'\n\nexport const styles = {\n skeleton: {\n graph: baseSkeletonStyles.graph,\n },\n} satisfies Record<string, SxProps<Theme>>\n","import { Box, Skeleton } from '@mui/material'\nimport { styles } from './style'\n\nexport function HistogramSkeleton() {\n return (\n <Box sx={styles.skeleton.graph.container}>\n <Box\n sx={{\n display: 'flex',\n alignItems: 'flex-end',\n justifyContent: 'space-between',\n gap: ({ spacing }) => spacing(0.5),\n height: ({ spacing }) => spacing(30),\n width: '100%',\n }}\n >\n {Array(8)\n .fill(0)\n .map((_, i) => {\n // Create varying heights for histogram bars\n const heights = [60, 80, 95, 85, 70, 55, 40, 30]\n const height = `${heights[i]}%`\n return (\n <Skeleton\n key={i}\n variant='rectangular'\n sx={{\n flex: 1,\n height,\n }}\n />\n )\n })}\n </Box>\n <Box\n sx={{\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n width: '100%',\n mt: ({ spacing }) => spacing(1),\n }}\n >\n {Array(4)\n .fill(0)\n .map((_, i) => (\n <Skeleton key={i} width={32} height={8} />\n ))}\n </Box>\n </Box>\n )\n}\n"],"names":["histogramDownloadConfig","refUI","downloadToPNG","modifier","downloadToCSV","data","rows","flattenObjectArrayToCSV","histogramConfig","props","type","option","mergeEchartWidgetConfig","getCommonOptions","getOption","theme","hasLegend","length","legend","buildLegendConfig","grid","buildGridConfig","xAxis","axisLine","show","axisLabel","fontSize","typography","overlineDelicate","fontFamily","showMinLabel","showMaxLabel","hideOverlap","margin","padding","parseInt","spacing","color","palette","black","axisTick","splitLine","lineStyle","yAxis","splitNumber","verticalAlign","tooltip","position","createTooltipPositioner","series","map","_","index","datasetIndex","barGap","barCategoryGap","emphasis","focus","styles","skeleton","graph","baseSkeletonStyles","HistogramSkeleton","$","_c","t0","Symbol","for","jsx","Box","display","alignItems","justifyContent","gap","_temp","height","_temp2","width","Array","fill","_temp3","t1","container","mt","_temp4","_temp5","__0","i_0","Skeleton","spacing_1","i","flex","spacing_0"],"mappings":"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"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { jsx as i, jsxs as f } from "react/jsx-runtime";
|
|
2
|
+
import { c } from "react/compiler-runtime";
|
|
3
|
+
import { u } from "../widget-store-DNyVElxd.js";
|
|
4
|
+
import { useShallow as g } from "zustand/shallow";
|
|
5
|
+
import { ListItem as w, List as d, Link as k, Typography as m, Skeleton as s, Box as y } from "@mui/material";
|
|
6
|
+
import S from "react-markdown";
|
|
7
|
+
import "@mui/icons-material";
|
|
8
|
+
import "react";
|
|
9
|
+
import "html2canvas";
|
|
10
|
+
import "../lasso-tool-CYn3ivf-.js";
|
|
11
|
+
import "../cjs-D9ro6BXv.js";
|
|
12
|
+
import "@dnd-kit/core";
|
|
13
|
+
import "@dnd-kit/sortable";
|
|
14
|
+
import "@dnd-kit/utilities";
|
|
15
|
+
import { a as p } from "../exports-Cr43OCul.js";
|
|
16
|
+
function P(t) {
|
|
17
|
+
const o = c(4), {
|
|
18
|
+
id: r
|
|
19
|
+
} = t;
|
|
20
|
+
let e;
|
|
21
|
+
o[0] !== r ? (e = (h) => h.getWidget(r)?.data?.content, o[0] = r, o[1] = e) : e = o[1];
|
|
22
|
+
const n = u(g(e));
|
|
23
|
+
if (!n)
|
|
24
|
+
return null;
|
|
25
|
+
let l;
|
|
26
|
+
return o[2] !== n ? (l = /* @__PURE__ */ i(b, { children: n }), o[2] = n, o[3] = l) : l = o[3], l;
|
|
27
|
+
}
|
|
28
|
+
const a = {
|
|
29
|
+
li: {
|
|
30
|
+
display: "list-item",
|
|
31
|
+
paddingTop: 0,
|
|
32
|
+
paddingBottom: 0
|
|
33
|
+
},
|
|
34
|
+
ul: {
|
|
35
|
+
listStyleType: "disc",
|
|
36
|
+
paddingLeft: ({
|
|
37
|
+
spacing: t
|
|
38
|
+
}) => t(2)
|
|
39
|
+
},
|
|
40
|
+
ol: {
|
|
41
|
+
listStyleType: "decimal",
|
|
42
|
+
paddingLeft: ({
|
|
43
|
+
spacing: t
|
|
44
|
+
}) => t(2)
|
|
45
|
+
}
|
|
46
|
+
}, x = {
|
|
47
|
+
h1: ({
|
|
48
|
+
children: t
|
|
49
|
+
}) => /* @__PURE__ */ i(m, { variant: "h4", gutterBottom: !0, color: "inherit", children: t }),
|
|
50
|
+
h2: ({
|
|
51
|
+
children: t
|
|
52
|
+
}) => /* @__PURE__ */ i(m, { variant: "h5", gutterBottom: !0, color: "inherit", children: t }),
|
|
53
|
+
h3: ({
|
|
54
|
+
children: t
|
|
55
|
+
}) => /* @__PURE__ */ i(m, { variant: "h6", gutterBottom: !0, color: "inherit", children: t }),
|
|
56
|
+
p: ({
|
|
57
|
+
children: t
|
|
58
|
+
}) => /* @__PURE__ */ i(m, { paragraph: !0, color: "inherit", children: t }),
|
|
59
|
+
a: ({
|
|
60
|
+
children: t,
|
|
61
|
+
href: o,
|
|
62
|
+
target: r = "_blank",
|
|
63
|
+
rel: e = "noopener noreferrer"
|
|
64
|
+
}) => /* @__PURE__ */ i(k, { href: o, target: r, rel: e, children: t }),
|
|
65
|
+
ul: ({
|
|
66
|
+
children: t
|
|
67
|
+
}) => /* @__PURE__ */ i(d, { sx: a.ul, children: t }),
|
|
68
|
+
ol: ({
|
|
69
|
+
children: t
|
|
70
|
+
}) => /* @__PURE__ */ i(d, { component: "ol", sx: a.ol, children: t }),
|
|
71
|
+
li: ({
|
|
72
|
+
children: t
|
|
73
|
+
}) => /* @__PURE__ */ i(w, { sx: a.li, children: t })
|
|
74
|
+
};
|
|
75
|
+
function b(t) {
|
|
76
|
+
const o = c(5), {
|
|
77
|
+
children: r,
|
|
78
|
+
overrides: e
|
|
79
|
+
} = t;
|
|
80
|
+
let n;
|
|
81
|
+
o[0] !== e ? (n = {
|
|
82
|
+
...x,
|
|
83
|
+
...e
|
|
84
|
+
}, o[0] = e, o[1] = n) : n = o[1];
|
|
85
|
+
let l;
|
|
86
|
+
return o[2] !== r || o[3] !== n ? (l = /* @__PURE__ */ i(S, { components: n, children: r }), o[2] = r, o[3] = n, o[4] = l) : l = o[4], l;
|
|
87
|
+
}
|
|
88
|
+
function R() {
|
|
89
|
+
const t = c(3);
|
|
90
|
+
let o;
|
|
91
|
+
t[0] === Symbol.for("react.memo_cache_sentinel") ? (o = /* @__PURE__ */ i(s, { width: "80%", height: 24, sx: {
|
|
92
|
+
mb: 1
|
|
93
|
+
} }), t[0] = o) : o = t[0];
|
|
94
|
+
let r;
|
|
95
|
+
t[1] === Symbol.for("react.memo_cache_sentinel") ? (r = /* @__PURE__ */ i(s, { width: "90%", height: 20, sx: {
|
|
96
|
+
mb: 0.5
|
|
97
|
+
} }), t[1] = r) : r = t[1];
|
|
98
|
+
let e;
|
|
99
|
+
return t[2] === Symbol.for("react.memo_cache_sentinel") ? (e = /* @__PURE__ */ f(y, { "aria-label": "Markdown skeleton", children: [
|
|
100
|
+
o,
|
|
101
|
+
r,
|
|
102
|
+
/* @__PURE__ */ i(s, { width: "85%", height: 20, sx: {
|
|
103
|
+
mb: 0.5
|
|
104
|
+
} }),
|
|
105
|
+
/* @__PURE__ */ i(s, { width: "75%", height: 20 })
|
|
106
|
+
] }), t[2] = e) : e = t[2], e;
|
|
107
|
+
}
|
|
108
|
+
function U() {
|
|
109
|
+
return [{
|
|
110
|
+
...p,
|
|
111
|
+
modifier: async (t) => {
|
|
112
|
+
const o = t?.content ?? "";
|
|
113
|
+
return p.modifier([["Content"], [o]]);
|
|
114
|
+
}
|
|
115
|
+
}];
|
|
116
|
+
}
|
|
117
|
+
function V() {
|
|
118
|
+
return {};
|
|
119
|
+
}
|
|
120
|
+
export {
|
|
121
|
+
P as Markdown,
|
|
122
|
+
R as MarkdownSkeleton,
|
|
123
|
+
b as MarkdownUI,
|
|
124
|
+
V as markdownConfig,
|
|
125
|
+
U as markdownDownloadConfig
|
|
126
|
+
};
|
|
127
|
+
//# sourceMappingURL=markdown.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markdown.js","sources":["../../src/widgets/markdown/markdown.tsx","../../src/widgets/markdown/style.ts","../../src/widgets/markdown/markdown-ui.tsx","../../src/widgets/markdown/skeleton.tsx","../../src/widgets/markdown/config.ts"],"sourcesContent":["import type { MarkdownUIProps } from './types'\nimport { useWidgetStore } from '../stores/widget-store'\nimport type { MarkdownWidgetData } from './types'\nimport { MarkdownUI } from '.'\nimport { useShallow } from 'zustand/shallow'\n\nexport function Markdown({ id }: MarkdownUIProps) {\n const content = useWidgetStore(\n useShallow(\n (state) =>\n (state.getWidget(id)?.data as MarkdownWidgetData | undefined)?.content,\n ),\n )\n\n if (!content) {\n return null\n }\n\n return <MarkdownUI>{content}</MarkdownUI>\n}\n","import type { SxProps, Theme } from '@mui/material'\n\nexport const styles: Record<string, SxProps<Theme>> = {\n container: {\n display: 'flex',\n flexDirection: 'column',\n gap: ({ spacing }) => spacing(2),\n },\n markdown: {\n overflow: 'hidden',\n typography: ({ typography }) => ({\n ...typography.body1,\n }),\n },\n li: {\n display: 'list-item',\n paddingTop: 0,\n paddingBottom: 0,\n },\n ul: {\n listStyleType: 'disc',\n paddingLeft: ({ spacing }) => spacing(2),\n },\n ol: {\n listStyleType: 'decimal',\n paddingLeft: ({ spacing }) => spacing(2),\n },\n}\n","import { Link, List, ListItem, Typography } from '@mui/material'\nimport ReactMarkdown, { type Components } from 'react-markdown'\nimport { styles } from '../markdown/style'\nimport type { MarkdownComponentProps } from './types'\n\nconst COMPONENTS: Components = {\n h1: ({ children }) => (\n <Typography variant='h4' gutterBottom color='inherit'>\n {children}\n </Typography>\n ),\n h2: ({ children }) => (\n <Typography variant='h5' gutterBottom color='inherit'>\n {children}\n </Typography>\n ),\n h3: ({ children }) => (\n <Typography variant='h6' gutterBottom color='inherit'>\n {children}\n </Typography>\n ),\n p: ({ children }) => (\n <Typography paragraph color='inherit'>\n {children}\n </Typography>\n ),\n a: ({ children, href, target = '_blank', rel = 'noopener noreferrer' }) => (\n <Link href={href} target={target} rel={rel}>\n {children}\n </Link>\n ),\n ul: ({ children }) => <List sx={styles.ul}>{children}</List>,\n ol: ({ children }) => (\n <List component='ol' sx={styles.ol}>\n {children}\n </List>\n ),\n li: ({ children }) => <ListItem sx={styles.li}>{children}</ListItem>,\n}\n\nexport function MarkdownUI({ children, overrides }: MarkdownComponentProps) {\n return (\n <ReactMarkdown\n components={{\n ...COMPONENTS,\n ...overrides,\n }}\n >\n {children}\n </ReactMarkdown>\n )\n}\n","import { Box, Skeleton } from '@mui/material'\n\nexport function MarkdownSkeleton() {\n return (\n <Box aria-label='Markdown skeleton'>\n <Skeleton width='80%' height={24} sx={{ mb: 1 }} />\n <Skeleton width='90%' height={20} sx={{ mb: 0.5 }} />\n <Skeleton width='85%' height={20} sx={{ mb: 0.5 }} />\n <Skeleton width='75%' height={20} />\n </Box>\n )\n}\n","import { downloadToCSV, type DownloadItem } from '../actions'\nimport type { MarkdownWidgetConfig, MarkdownWidgetData } from './types'\n\nexport function markdownDownloadConfig(): DownloadItem<MarkdownWidgetData>[] {\n return [\n {\n ...downloadToCSV,\n modifier: async (data) => {\n const content = data?.content ?? ''\n return downloadToCSV.modifier([['Content'], [content]])\n },\n },\n ]\n}\n\nexport function markdownConfig(): MarkdownWidgetConfig {\n return {}\n}\n"],"names":["Markdown","t0","$","_c","id","t1","state","getWidget","data","content","useWidgetStore","useShallow","t2","MarkdownUI","styles","li","display","paddingTop","paddingBottom","ul","listStyleType","paddingLeft","spacing","ol","COMPONENTS","h1","children","Typography","h2","h3","p","jsx","a","href","target","rel","Link","List","ListItem","overrides","ReactMarkdown","MarkdownSkeleton","Symbol","for","Skeleton","mb","jsxs","Box","markdownDownloadConfig","downloadToCSV","modifier","markdownConfig"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"no-data.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|