@carto/ps-react-ui 4.4.2 → 4.5.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/download-config-DemuQ3Jm.js +56 -0
- package/dist/download-config-DemuQ3Jm.js.map +1 -0
- package/dist/error-Cj8eUMrl.js +40 -0
- package/dist/error-Cj8eUMrl.js.map +1 -0
- package/dist/formatter-B9Bxn1k7.js +6 -0
- package/dist/formatter-B9Bxn1k7.js.map +1 -0
- package/dist/no-data-DkIt7Qt1.js +61 -0
- package/dist/no-data-DkIt7Qt1.js.map +1 -0
- package/dist/row-D4VOhcNI.js +34 -0
- package/dist/row-D4VOhcNI.js.map +1 -0
- package/dist/series-Bola3CmD.js +90 -0
- package/dist/series-Bola3CmD.js.map +1 -0
- package/dist/styles-Y8q7Jff3.js +118 -0
- package/dist/styles-Y8q7Jff3.js.map +1 -0
- package/dist/types/widgets/actions/brush-toggle/types.d.ts +8 -2
- package/dist/types/widgets/category/components/category-row-multi.d.ts +2 -1
- package/dist/types/widgets/category/components/category-row-single.d.ts +2 -1
- package/dist/types/widgets/category/types.d.ts +1 -0
- package/dist/types/widgets/echart/shared-resize-observer.d.ts +12 -0
- package/dist/types/widgets/echart/types.d.ts +2 -0
- package/dist/types/widgets/histogram/config.d.ts +15 -3
- package/dist/types/widgets/histogram/index.d.ts +2 -1
- package/dist/types/widgets/histogram/types.d.ts +6 -3
- package/dist/types/widgets/stores/index.d.ts +2 -1
- package/dist/types/widgets/stores/types.d.ts +2 -0
- package/dist/types/widgets/stores/use-widget-selector.d.ts +35 -0
- package/dist/types/widgets/stores/widget-store-performance.test.d.ts +1 -0
- package/dist/types/widgets/stores/widget-store.d.ts +49 -27
- package/dist/types/widgets/table/types.d.ts +1 -1
- package/dist/types/widgets/utils/chart-config/index.d.ts +1 -1
- package/dist/types/widgets/utils/chart-config/option-builders.d.ts +13 -8
- package/dist/types/widgets/utils/formatter.d.ts +1 -0
- package/dist/types/widgets/utils/index.d.ts +1 -1
- package/dist/use-widget-ref-BFazQvJK.js +22 -0
- package/dist/use-widget-ref-BFazQvJK.js.map +1 -0
- package/dist/use-widget-selector-DqRmWQ1K.js +12 -0
- package/dist/use-widget-selector-DqRmWQ1K.js.map +1 -0
- package/dist/widget-store-CIrb9RKP.js +263 -0
- package/dist/widget-store-CIrb9RKP.js.map +1 -0
- package/dist/widgets/actions.js +799 -817
- package/dist/widgets/actions.js.map +1 -1
- package/dist/widgets/bar.js +53 -47
- package/dist/widgets/bar.js.map +1 -1
- package/dist/widgets/category.js +261 -255
- package/dist/widgets/category.js.map +1 -1
- package/dist/widgets/echart.js +109 -99
- package/dist/widgets/echart.js.map +1 -1
- package/dist/widgets/error.js +1 -1
- package/dist/widgets/formula.js +71 -63
- package/dist/widgets/formula.js.map +1 -1
- package/dist/widgets/histogram.js +119 -80
- package/dist/widgets/histogram.js.map +1 -1
- package/dist/widgets/loader.js +53 -60
- package/dist/widgets/loader.js.map +1 -1
- package/dist/widgets/markdown.js +51 -50
- package/dist/widgets/markdown.js.map +1 -1
- package/dist/widgets/no-data.js +1 -1
- package/dist/widgets/pie.js +111 -99
- package/dist/widgets/pie.js.map +1 -1
- package/dist/widgets/range.js +146 -144
- package/dist/widgets/range.js.map +1 -1
- package/dist/widgets/scatterplot.js +50 -44
- package/dist/widgets/scatterplot.js.map +1 -1
- package/dist/widgets/skeleton-loader.js +18 -17
- package/dist/widgets/skeleton-loader.js.map +1 -1
- package/dist/widgets/spread.js +110 -94
- package/dist/widgets/spread.js.map +1 -1
- package/dist/widgets/stores.js +5 -2
- package/dist/widgets/stores.js.map +1 -1
- package/dist/widgets/table.js +422 -436
- package/dist/widgets/table.js.map +1 -1
- package/dist/widgets/timeseries.js +52 -46
- package/dist/widgets/timeseries.js.map +1 -1
- package/dist/widgets/toolbar-actions.js +101 -6693
- package/dist/widgets/toolbar-actions.js.map +1 -1
- package/dist/widgets/utils.js +16 -14
- package/dist/widgets/utils.js.map +1 -1
- package/dist/widgets/wrapper.js +156 -158
- package/dist/widgets/wrapper.js.map +1 -1
- package/dist/widgets.js +4 -4
- package/package.json +5 -4
- package/src/hooks/use-widget-ref.ts +3 -4
- package/src/widgets/README.md +3 -3
- package/src/widgets/actions/brush-toggle/brush-toggle.tsx +60 -79
- package/src/widgets/actions/brush-toggle/types.ts +8 -2
- package/src/widgets/actions/change-column/change-column.tsx +15 -15
- package/src/widgets/actions/change-column/sortable-column-item.tsx +3 -1
- package/src/widgets/actions/download/download.tsx +4 -3
- package/src/widgets/actions/fullscreen/fullscreen.tsx +7 -11
- package/src/widgets/actions/lock-selection/lock-selection.tsx +12 -15
- package/src/widgets/actions/relative-data/relative-data.tsx +22 -26
- package/src/widgets/actions/searcher/searcher-toggle.tsx +11 -12
- package/src/widgets/actions/searcher/searcher.tsx +20 -21
- package/src/widgets/actions/stack-toggle/stack-toggle.tsx +15 -21
- package/src/widgets/actions/zoom-toggle/zoom-toggle.tsx +27 -43
- package/src/widgets/bar/config.ts +22 -14
- package/src/widgets/category/category-ui.tsx +31 -27
- package/src/widgets/category/components/category-row-multi.tsx +6 -2
- package/src/widgets/category/components/category-row-single.tsx +5 -1
- package/src/widgets/category/types.ts +1 -0
- package/src/widgets/echart/echart-ui.test.tsx +20 -16
- package/src/widgets/echart/echart-ui.tsx +6 -12
- package/src/widgets/echart/echart.tsx +13 -27
- package/src/widgets/echart/shared-resize-observer.ts +45 -0
- package/src/widgets/echart/types.ts +2 -0
- package/src/widgets/error/error.tsx +7 -9
- package/src/widgets/formula/components/prefix.tsx +4 -6
- package/src/widgets/formula/components/row.tsx +4 -4
- package/src/widgets/formula/components/series.tsx +4 -6
- package/src/widgets/formula/components/suffix.tsx +4 -6
- package/src/widgets/formula/components/value.tsx +9 -16
- package/src/widgets/histogram/config.ts +101 -20
- package/src/widgets/histogram/index.ts +6 -1
- package/src/widgets/histogram/types.ts +9 -3
- package/src/widgets/loader/loader.tsx +31 -44
- package/src/widgets/markdown/markdown.tsx +4 -7
- package/src/widgets/no-data/no-data.tsx +7 -10
- package/src/widgets/pie/config.ts +17 -5
- package/src/widgets/range/components/range-item.tsx +20 -18
- package/src/widgets/scatterplot/config.ts +8 -3
- package/src/widgets/skeleton-loader/skeleton-loader.tsx +2 -5
- package/src/widgets/spread/components/max-value.tsx +14 -16
- package/src/widgets/spread/components/min-value.tsx +14 -16
- package/src/widgets/stores/index.ts +2 -1
- package/src/widgets/stores/types.ts +2 -0
- package/src/widgets/stores/use-widget-selector.ts +47 -0
- package/src/widgets/stores/widget-store-performance.test.ts +750 -0
- package/src/widgets/stores/widget-store.test.ts +81 -0
- package/src/widgets/stores/widget-store.ts +225 -44
- package/src/widgets/table/config.ts +0 -1
- package/src/widgets/table/hooks/use-pagination.ts +28 -52
- package/src/widgets/table/hooks/use-selection.ts +20 -24
- package/src/widgets/table/hooks/use-sort.ts +22 -39
- package/src/widgets/table/types.ts +1 -1
- package/src/widgets/timeseries/config.ts +21 -13
- package/src/widgets/utils/chart-config/index.ts +1 -1
- package/src/widgets/utils/chart-config/option-builders.ts +22 -12
- package/src/widgets/utils/formatter.ts +2 -1
- package/src/widgets/utils/index.ts +1 -1
- package/src/widgets/wrapper/wrapper-ui.tsx +12 -13
- package/src/widgets/wrapper/wrapper.tsx +4 -6
- package/dist/error-CEkRPccv.js +0 -39
- package/dist/error-CEkRPccv.js.map +0 -1
- package/dist/formatter-B1Xh8XDH.js +0 -5
- package/dist/formatter-B1Xh8XDH.js.map +0 -1
- package/dist/no-data-hR3KcJ-_.js +0 -60
- package/dist/no-data-hR3KcJ-_.js.map +0 -1
- package/dist/row-DTCV0Ocm.js +0 -35
- package/dist/row-DTCV0Ocm.js.map +0 -1
- package/dist/series-CYNOu2Ju.js +0 -91
- package/dist/series-CYNOu2Ju.js.map +0 -1
- package/dist/styles-C_8vOEep.js +0 -167
- package/dist/styles-C_8vOEep.js.map +0 -1
- package/dist/use-widget-ref-wtFLDFCD.js +0 -25
- package/dist/use-widget-ref-wtFLDFCD.js.map +0 -1
- package/dist/widget-store-CzDt8oSK.js +0 -163
- package/dist/widget-store-CzDt8oSK.js.map +0 -1
package/dist/widgets/loader.js
CHANGED
|
@@ -1,71 +1,64 @@
|
|
|
1
|
-
import { c as
|
|
2
|
-
import {
|
|
3
|
-
import { u as
|
|
4
|
-
import { d as
|
|
5
|
-
function
|
|
6
|
-
const
|
|
7
|
-
let
|
|
8
|
-
|
|
9
|
-
const
|
|
10
|
-
let
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
},
|
|
14
|
-
let
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
type:
|
|
1
|
+
import { c as W } from "react/compiler-runtime";
|
|
2
|
+
import { useRef as x, useEffect as n } from "react";
|
|
3
|
+
import { u as w, w as y } from "../widget-store-CIrb9RKP.js";
|
|
4
|
+
import { d as A } from "../cjs-D4KH3azB.js";
|
|
5
|
+
function v(e) {
|
|
6
|
+
const i = W(25);
|
|
7
|
+
let t;
|
|
8
|
+
i[0] !== e.id ? (t = (L) => L.widgets[e.id]?.registeredTools, i[0] = e.id, i[1] = t) : t = i[1];
|
|
9
|
+
const F = w(t), C = x(e.data), h = x(e.config), P = x(!1);
|
|
10
|
+
let d;
|
|
11
|
+
i[2] !== e.config || i[3] !== e.data ? (d = () => {
|
|
12
|
+
C.current = e.data, h.current = e.config;
|
|
13
|
+
}, i[2] = e.config, i[3] = e.data, i[4] = d) : d = i[4], n(d);
|
|
14
|
+
let f, c;
|
|
15
|
+
i[5] !== e.error || i[6] !== e.id || i[7] !== e.isFetching || i[8] !== e.isLoading || i[9] !== e.type ? (f = () => {
|
|
16
|
+
y.setWidget(e.id, {
|
|
17
|
+
type: e.type,
|
|
18
|
+
isLoading: e.isLoading ?? !1,
|
|
19
|
+
isFetching: e.isFetching ?? !1,
|
|
20
|
+
error: e.error
|
|
18
21
|
});
|
|
19
|
-
},
|
|
20
|
-
let
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
},
|
|
28
|
-
let
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
let x, L;
|
|
33
|
-
e[22] !== n || e[23] !== t.data || e[24] !== t.id ? (x = () => {
|
|
34
|
-
n(t.id, t.data);
|
|
35
|
-
}, L = [t.id, t.data, n], e[22] = n, e[23] = t.data, e[24] = t.id, e[25] = x, e[26] = L) : (x = e[25], L = e[26]), f(x, L);
|
|
36
|
-
let F;
|
|
37
|
-
e[27] !== d || e[28] !== n || e[29] !== t.id ? (F = () => {
|
|
38
|
-
if (!T.current) {
|
|
39
|
-
T.current = !0;
|
|
22
|
+
}, c = [e.id, e.type, e.isLoading, e.isFetching, e.error], i[5] = e.error, i[6] = e.id, i[7] = e.isFetching, i[8] = e.isLoading, i[9] = e.type, i[10] = f, i[11] = c) : (f = i[10], c = i[11]), n(f, c);
|
|
23
|
+
let a, g;
|
|
24
|
+
i[12] !== e.config || i[13] !== e.id ? (a = () => {
|
|
25
|
+
e.config && y.executeConfigPipeline(e.id, e.config);
|
|
26
|
+
}, g = [e.id, e.config], i[12] = e.config, i[13] = e.id, i[14] = a, i[15] = g) : (a = i[14], g = i[15]), n(a, g);
|
|
27
|
+
let l, u;
|
|
28
|
+
i[16] !== e.data || i[17] !== e.id ? (l = () => {
|
|
29
|
+
y.executeToolPipeline(e.id, e.data);
|
|
30
|
+
}, u = [e.id, e.data], i[16] = e.data, i[17] = e.id, i[18] = l, i[19] = u) : (l = i[18], u = i[19]), n(l, u);
|
|
31
|
+
let r;
|
|
32
|
+
i[20] !== e.id ? (r = () => {
|
|
33
|
+
if (!P.current) {
|
|
34
|
+
P.current = !0;
|
|
40
35
|
return;
|
|
41
36
|
}
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
function w(t) {
|
|
54
|
-
return t.setWidget;
|
|
37
|
+
const L = requestAnimationFrame(() => {
|
|
38
|
+
const {
|
|
39
|
+
executeToolPipeline: R,
|
|
40
|
+
executeConfigPipeline: T
|
|
41
|
+
} = y;
|
|
42
|
+
R(e.id, C.current), h.current && T(e.id, h.current);
|
|
43
|
+
});
|
|
44
|
+
return () => cancelAnimationFrame(L);
|
|
45
|
+
}, i[20] = e.id, i[21] = r) : r = i[21];
|
|
46
|
+
let m;
|
|
47
|
+
return i[22] !== e.id || i[23] !== F ? (m = [F, e.id], i[22] = e.id, i[23] = F, i[24] = m) : m = i[24], n(r, m), e.children;
|
|
55
48
|
}
|
|
56
|
-
function
|
|
57
|
-
return typeof
|
|
49
|
+
function E(e, i, t) {
|
|
50
|
+
return typeof e == "function" ? e(i, t) : e;
|
|
58
51
|
}
|
|
59
|
-
function
|
|
60
|
-
return
|
|
61
|
-
arrayMerge(
|
|
62
|
-
return
|
|
52
|
+
function I(...e) {
|
|
53
|
+
return A(e[0] ?? {}, e[1] ?? {}, {
|
|
54
|
+
arrayMerge(i, t) {
|
|
55
|
+
return t;
|
|
63
56
|
}
|
|
64
57
|
});
|
|
65
58
|
}
|
|
66
59
|
export {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
60
|
+
v as WidgetLoader,
|
|
61
|
+
I as mergeWidgetConfig,
|
|
62
|
+
E as resolveConfig
|
|
70
63
|
};
|
|
71
64
|
//# sourceMappingURL=loader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sources":["../../src/widgets/loader/loader.tsx","../../src/widgets/loader/utils.ts"],"sourcesContent":["import { useEffect, useRef
|
|
1
|
+
{"version":3,"file":"loader.js","sources":["../../src/widgets/loader/loader.tsx","../../src/widgets/loader/utils.ts"],"sourcesContent":["import { useEffect, useRef } from 'react'\nimport type { WidgetLoaderProps } from './types'\nimport { useWidgetStore, widgetStoreActions } from '../stores/widget-store'\nimport type { WrapperState } from '../wrapper'\n\n/**\n * Foundation component for all widgets that manages state initialization, synchronization with the widget store, and data transformation pipeline execution.\n *\n * @remarks\n * The WidgetLoader is stateless -- it manages data flow but does not render any UI. Always wrap it with WidgetWrapper for consistent widget appearance.\n *\n * @example\n * ```tsx\n * <WidgetLoader\n * id=\"sales-chart\"\n * type=\"bar\"\n * data={data}\n * isLoading={false}\n * isFetching={false}\n * config={barConfig({ data })}\n * >\n * <WidgetWrapper id=\"sales-chart\" title=\"Sales\">\n * <Echart id=\"sales-chart\" />\n * </WidgetWrapper>\n * </WidgetLoader>\n * ```\n */\nexport function WidgetLoader<T extends object = Record<string, unknown>>(\n props: WidgetLoaderProps<T>,\n) {\n // Subscribe only to this widget's registeredTools via Zustand selector.\n // The selector returns a stable reference when other widgets change,\n // avoiding unnecessary re-evaluations of Effect 4.\n const registeredTools = useWidgetStore(\n (state) => state.widgets[props.id]?.registeredTools,\n )\n\n const dataRef = useRef(props.data)\n const configRef = useRef(props.config)\n const isMountedRef = useRef(false)\n\n useEffect(() => {\n dataRef.current = props.data\n configRef.current = props.config\n })\n\n // Effect 1: Metadata — type, loading, and error states in a single setWidget call.\n // Merged to reduce store updates from 2 to 1 per widget during initialization.\n useEffect(() => {\n widgetStoreActions.setWidget<WrapperState>(props.id, {\n type: props.type,\n isLoading: props.isLoading ?? false,\n isFetching: props.isFetching ?? false,\n error: props.error,\n })\n }, [props.id, props.type, props.isLoading, props.isFetching, props.error])\n\n // Effect 2: Config updates — run through config pipeline\n useEffect(() => {\n if (props.config) {\n void widgetStoreActions.executeConfigPipeline(props.id, props.config)\n }\n }, [props.id, props.config])\n\n // Effect 3: Execute tool pipeline when props.data changes\n useEffect(() => {\n void widgetStoreActions.executeToolPipeline(props.id, props.data)\n }, [props.id, props.data])\n\n // Effect 4: Re-execute pipelines when registered tools change.\n // Uses requestAnimationFrame to coalesce rapid successive registeredTools\n // changes (e.g., 6 action components each calling registerTool on mount)\n // into a single pipeline execution instead of 6 pairs.\n useEffect(() => {\n if (!isMountedRef.current) {\n isMountedRef.current = true\n return\n }\n\n const rafId = requestAnimationFrame(() => {\n const { executeToolPipeline, executeConfigPipeline } = widgetStoreActions\n void executeToolPipeline(props.id, dataRef.current)\n if (configRef.current) {\n void executeConfigPipeline(props.id, configRef.current)\n }\n })\n\n return () => cancelAnimationFrame(rafId)\n }, [registeredTools, props.id])\n\n return props.children\n}\n","import deepmerge from 'deepmerge'\n\n/**\n * Config can be either an object or a function that receives baseConfig and data\n * and returns a partial config to be merged with the base.\n */\nexport type ConfigOrFn<TConfig, TData = unknown> =\n | Partial<TConfig>\n | ((baseConfig: TConfig, data: TData) => Partial<TConfig>)\n\n/**\n * Resolves a widget config that may be either a partial object or a function receiving the computed base config and data. If it is a function, calls it with `baseConfig` and `data`; otherwise returns the value as-is.\n *\n * @param config - The config object or function to resolve.\n * @param baseConfig - The computed base configuration.\n * @param data - The widget data.\n * @returns Resolved partial config, or undefined.\n *\n * @example\n * ```tsx\n * const resolved = resolveConfig(\n * (base, data) => ({ maxItems: base.maxItems + 5 }),\n * baseConfig,\n * widgetData,\n * )\n * ```\n */\nexport function resolveConfig<TConfig, TData>(\n config: ConfigOrFn<TConfig, TData> | undefined,\n baseConfig: TConfig,\n data: TData,\n): Partial<TConfig> | undefined {\n if (typeof config === 'function') {\n return config(baseConfig, data)\n }\n return config\n}\n\n/**\n * Deep-merges two partial widget config objects using `deepmerge`, with arrays replaced rather than concatenated.\n *\n * @param options - A tuple of two partial configs to merge (base and override).\n * @returns The merged config object.\n *\n * @example\n * ```tsx\n * const finalConfig = mergeWidgetConfig(baseConfig, resolvedConfig)\n * ```\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":["WidgetLoader","props","$","_c","t0","id","state","widgets","registeredTools","useWidgetStore","dataRef","useRef","data","configRef","config","isMountedRef","t1","current","useEffect","t2","t3","error","isFetching","isLoading","type","widgetStoreActions","setWidget","t4","t5","executeConfigPipeline","t6","t7","executeToolPipeline","t8","rafId","requestAnimationFrame","cancelAnimationFrame","t9","children","resolveConfig","baseConfig","mergeWidgetConfig","options","deepmerge","arrayMerge","_","source"],"mappings":"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"}
|
package/dist/widgets/markdown.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { c } from "react/compiler-runtime";
|
|
3
|
-
import { u } from "../widget-
|
|
4
|
-
import {
|
|
5
|
-
import
|
|
6
|
-
import
|
|
1
|
+
import { jsx as r, jsxs as h } from "react/jsx-runtime";
|
|
2
|
+
import { c as s } from "react/compiler-runtime";
|
|
3
|
+
import { u as f } from "../use-widget-selector-DqRmWQ1K.js";
|
|
4
|
+
import { ListItem as u, List as d, Link as g, Typography as m, Skeleton as a, Box as w } from "@mui/material";
|
|
5
|
+
import k from "react-markdown";
|
|
6
|
+
import "../widget-store-CIrb9RKP.js";
|
|
7
7
|
import "@mui/icons-material";
|
|
8
8
|
import "react";
|
|
9
9
|
import "html2canvas";
|
|
@@ -12,20 +12,21 @@ import "../cjs-D4KH3azB.js";
|
|
|
12
12
|
import "@dnd-kit/core";
|
|
13
13
|
import "@dnd-kit/sortable";
|
|
14
14
|
import "@dnd-kit/utilities";
|
|
15
|
+
import "zustand/shallow";
|
|
15
16
|
import { a as p } from "../exports-Cr43OCul.js";
|
|
16
|
-
function
|
|
17
|
-
const o =
|
|
18
|
-
id:
|
|
19
|
-
} = t;
|
|
20
|
-
|
|
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)
|
|
17
|
+
function R(t) {
|
|
18
|
+
const o = s(2), {
|
|
19
|
+
id: n
|
|
20
|
+
} = t, e = f(n, y);
|
|
21
|
+
if (!e)
|
|
24
22
|
return null;
|
|
25
|
-
let
|
|
26
|
-
return o[
|
|
23
|
+
let i;
|
|
24
|
+
return o[0] !== e ? (i = /* @__PURE__ */ r(S, { children: e }), o[0] = e, o[1] = i) : i = o[1], i;
|
|
27
25
|
}
|
|
28
|
-
|
|
26
|
+
function y(t) {
|
|
27
|
+
return t?.data?.content;
|
|
28
|
+
}
|
|
29
|
+
const c = {
|
|
29
30
|
li: {
|
|
30
31
|
display: "list-item",
|
|
31
32
|
paddingTop: 0,
|
|
@@ -46,66 +47,66 @@ const a = {
|
|
|
46
47
|
}, x = {
|
|
47
48
|
h1: ({
|
|
48
49
|
children: t
|
|
49
|
-
}) => /* @__PURE__ */
|
|
50
|
+
}) => /* @__PURE__ */ r(m, { variant: "h4", gutterBottom: !0, color: "inherit", children: t }),
|
|
50
51
|
h2: ({
|
|
51
52
|
children: t
|
|
52
|
-
}) => /* @__PURE__ */
|
|
53
|
+
}) => /* @__PURE__ */ r(m, { variant: "h5", gutterBottom: !0, color: "inherit", children: t }),
|
|
53
54
|
h3: ({
|
|
54
55
|
children: t
|
|
55
|
-
}) => /* @__PURE__ */
|
|
56
|
+
}) => /* @__PURE__ */ r(m, { variant: "h6", gutterBottom: !0, color: "inherit", children: t }),
|
|
56
57
|
p: ({
|
|
57
58
|
children: t
|
|
58
|
-
}) => /* @__PURE__ */
|
|
59
|
+
}) => /* @__PURE__ */ r(m, { paragraph: !0, color: "inherit", children: t }),
|
|
59
60
|
a: ({
|
|
60
61
|
children: t,
|
|
61
62
|
href: o,
|
|
62
|
-
target:
|
|
63
|
+
target: n = "_blank",
|
|
63
64
|
rel: e = "noopener noreferrer"
|
|
64
|
-
}) => /* @__PURE__ */
|
|
65
|
+
}) => /* @__PURE__ */ r(g, { href: o, target: n, rel: e, children: t }),
|
|
65
66
|
ul: ({
|
|
66
67
|
children: t
|
|
67
|
-
}) => /* @__PURE__ */
|
|
68
|
+
}) => /* @__PURE__ */ r(d, { sx: c.ul, children: t }),
|
|
68
69
|
ol: ({
|
|
69
70
|
children: t
|
|
70
|
-
}) => /* @__PURE__ */
|
|
71
|
+
}) => /* @__PURE__ */ r(d, { component: "ol", sx: c.ol, children: t }),
|
|
71
72
|
li: ({
|
|
72
73
|
children: t
|
|
73
|
-
}) => /* @__PURE__ */
|
|
74
|
+
}) => /* @__PURE__ */ r(u, { sx: c.li, children: t })
|
|
74
75
|
};
|
|
75
|
-
function
|
|
76
|
-
const o =
|
|
77
|
-
children:
|
|
76
|
+
function S(t) {
|
|
77
|
+
const o = s(5), {
|
|
78
|
+
children: n,
|
|
78
79
|
overrides: e
|
|
79
80
|
} = t;
|
|
80
|
-
let
|
|
81
|
-
o[0] !== e ? (
|
|
81
|
+
let i;
|
|
82
|
+
o[0] !== e ? (i = {
|
|
82
83
|
...x,
|
|
83
84
|
...e
|
|
84
|
-
}, o[0] = e, o[1] =
|
|
85
|
+
}, o[0] = e, o[1] = i) : i = o[1];
|
|
85
86
|
let l;
|
|
86
|
-
return o[2] !==
|
|
87
|
+
return o[2] !== n || o[3] !== i ? (l = /* @__PURE__ */ r(k, { components: i, children: n }), o[2] = n, o[3] = i, o[4] = l) : l = o[4], l;
|
|
87
88
|
}
|
|
88
|
-
function
|
|
89
|
-
const t =
|
|
89
|
+
function U() {
|
|
90
|
+
const t = s(3);
|
|
90
91
|
let o;
|
|
91
|
-
t[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (o = /* @__PURE__ */
|
|
92
|
+
t[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (o = /* @__PURE__ */ r(a, { width: "80%", height: 24, sx: {
|
|
92
93
|
mb: 1
|
|
93
94
|
} }), t[0] = o) : o = t[0];
|
|
94
|
-
let
|
|
95
|
-
t[1] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (
|
|
95
|
+
let n;
|
|
96
|
+
t[1] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (n = /* @__PURE__ */ r(a, { width: "90%", height: 20, sx: {
|
|
96
97
|
mb: 0.5
|
|
97
|
-
} }), t[1] =
|
|
98
|
+
} }), t[1] = n) : n = t[1];
|
|
98
99
|
let e;
|
|
99
|
-
return t[2] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (e = /* @__PURE__ */
|
|
100
|
+
return t[2] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (e = /* @__PURE__ */ h(w, { "aria-label": "Markdown skeleton", children: [
|
|
100
101
|
o,
|
|
101
|
-
|
|
102
|
-
/* @__PURE__ */
|
|
102
|
+
n,
|
|
103
|
+
/* @__PURE__ */ r(a, { width: "85%", height: 20, sx: {
|
|
103
104
|
mb: 0.5
|
|
104
105
|
} }),
|
|
105
|
-
/* @__PURE__ */
|
|
106
|
+
/* @__PURE__ */ r(a, { width: "75%", height: 20 })
|
|
106
107
|
] }), t[2] = e) : e = t[2], e;
|
|
107
108
|
}
|
|
108
|
-
function
|
|
109
|
+
function V() {
|
|
109
110
|
return [{
|
|
110
111
|
...p,
|
|
111
112
|
modifier: async (t) => {
|
|
@@ -114,14 +115,14 @@ function U() {
|
|
|
114
115
|
}
|
|
115
116
|
}];
|
|
116
117
|
}
|
|
117
|
-
function
|
|
118
|
+
function W() {
|
|
118
119
|
return {};
|
|
119
120
|
}
|
|
120
121
|
export {
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
122
|
+
R as Markdown,
|
|
123
|
+
U as MarkdownSkeleton,
|
|
124
|
+
S as MarkdownUI,
|
|
125
|
+
W as markdownConfig,
|
|
126
|
+
V as markdownDownloadConfig
|
|
126
127
|
};
|
|
127
128
|
//# sourceMappingURL=markdown.js.map
|
|
@@ -1 +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
|
|
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 type { MarkdownWidgetData } from './types'\nimport { MarkdownUI } from '.'\nimport { useWidgetSelector } from '../stores/use-widget-selector'\n\n/**\n * Stateful markdown widget component that reads content from the widget store and renders it as formatted rich text.\n */\nexport function Markdown({ id }: MarkdownUIProps) {\n const content = useWidgetSelector(\n id,\n (w) => (w?.data as MarkdownWidgetData | undefined)?.content,\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\n/**\n * Presentational component that renders a Markdown string as MUI-styled HTML using react-markdown.\n *\n * @remarks\n * Maps Markdown elements (headings, paragraphs, links, lists) to MUI Typography and Link components.\n * Custom component overrides can be passed via the `overrides` prop.\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\n/**\n * Creates download configuration for markdown widgets, supporting CSV export of text content. Does not require `refUI` since it only exports text.\n *\n * @returns Array of download items for use with the Download action.\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\n/**\n * Returns the default configuration for markdown content display widgets.\n *\n * @returns Default markdown widget config (empty object).\n */\nexport function markdownConfig(): MarkdownWidgetConfig {\n return {}\n}\n"],"names":["Markdown","t0","$","_c","id","content","useWidgetSelector","_temp","t1","MarkdownUI","w","data","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","t2","ReactMarkdown","MarkdownSkeleton","Symbol","for","Skeleton","mb","jsxs","Box","markdownDownloadConfig","downloadToCSV","modifier","markdownConfig"],"mappings":"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"}
|
package/dist/widgets/no-data.js
CHANGED