@carto/ps-react-ui 4.14.1 → 4.16.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.
Files changed (116) hide show
  1. package/dist/chat.js +494 -466
  2. package/dist/chat.js.map +1 -1
  3. package/dist/components.js +837 -774
  4. package/dist/components.js.map +1 -1
  5. package/dist/legend/stores.js +20 -16
  6. package/dist/legend-store-registry-CVYzhR1-.js +464 -0
  7. package/dist/legend-store-registry-CVYzhR1-.js.map +1 -0
  8. package/dist/legend.js +1478 -794
  9. package/dist/legend.js.map +1 -1
  10. package/dist/markdown-DdqANCiN.js +102 -0
  11. package/dist/markdown-DdqANCiN.js.map +1 -0
  12. package/dist/markdown-content-Dk2DSgbf.js +10287 -0
  13. package/dist/markdown-content-Dk2DSgbf.js.map +1 -0
  14. package/dist/types/chat/bubbles/chat-agent-message-markdown.d.ts +12 -0
  15. package/dist/types/chat/bubbles/chat-agent-message.d.ts +9 -0
  16. package/dist/types/chat/bubbles/index.d.ts +1 -0
  17. package/dist/types/chat/index.d.ts +2 -1
  18. package/dist/types/chat/types.d.ts +9 -0
  19. package/dist/types/components/index.d.ts +2 -1
  20. package/dist/types/components/lasso-tool/message.d.ts +7 -0
  21. package/dist/types/components/lasso-tool/types.d.ts +17 -2
  22. package/dist/types/components/responsive-drawer/responsive-drawer.d.ts +2 -9
  23. package/dist/types/legend/components/a11y.d.ts +6 -0
  24. package/dist/types/legend/components/contexts.d.ts +22 -4
  25. package/dist/types/legend/components/index.d.ts +2 -2
  26. package/dist/types/legend/components/legend-actions/legend-actions.d.ts +4 -3
  27. package/dist/types/legend/components/legend-group/legend-group.d.ts +2 -11
  28. package/dist/types/legend/components/legend-group/styles.d.ts +40 -2
  29. package/dist/types/legend/components/legend-group-menu/legend-group-menu-items.d.ts +28 -0
  30. package/dist/types/legend/components/legend-group-menu/legend-group-menu.d.ts +11 -0
  31. package/dist/types/legend/components/legend-opacity/legend-opacity.d.ts +7 -17
  32. package/dist/types/legend/components/legend-opacity/styles.d.ts +11 -6
  33. package/dist/types/legend/components/legend-overflow-menu/legend-overflow-menu.d.ts +12 -0
  34. package/dist/types/legend/components/legend-panel-menu/legend-panel-menu.d.ts +11 -0
  35. package/dist/types/legend/components/legend-row/legend-row.d.ts +4 -11
  36. package/dist/types/legend/components/legend-row/styles.d.ts +36 -1
  37. package/dist/types/legend/components/legend-row-menu/legend-row-menu-items.d.ts +12 -0
  38. package/dist/types/legend/components/legend-row-menu/legend-row-menu.d.ts +4 -10
  39. package/dist/types/legend/components/legend-row-menu/legend-zoom-to.d.ts +3 -8
  40. package/dist/types/legend/components/legend-sortable/contexts.d.ts +7 -0
  41. package/dist/types/legend/components/legend-sortable/legend-sortable.d.ts +11 -0
  42. package/dist/types/legend/components/legend-sortable/sortable-entity.d.ts +27 -0
  43. package/dist/types/legend/components/legend-sortable/sortable-ids.d.ts +6 -0
  44. package/dist/types/legend/components/legend-sortable/styles.d.ts +54 -0
  45. package/dist/types/legend/components/legend-visible-layers/legend-visible-layers.d.ts +7 -0
  46. package/dist/types/legend/components/legend-visible-layers/styles.d.ts +48 -0
  47. package/dist/types/legend/components/run-async-menu-action.d.ts +7 -0
  48. package/dist/types/legend/index.d.ts +53 -6
  49. package/dist/types/legend/provider/labels.d.ts +21 -0
  50. package/dist/types/legend/stores/index.d.ts +1 -1
  51. package/dist/types/legend/stores/selectors.d.ts +31 -0
  52. package/dist/types/legend/stores/types.d.ts +11 -0
  53. package/dist/types/widgets-v2/markdown/markdown-content.d.ts +7 -1
  54. package/dist/widgets-v2/markdown.js +9 -8
  55. package/dist/widgets-v2/markdown.js.map +1 -1
  56. package/dist/widgets-v2.js +23 -22
  57. package/dist/widgets-v2.js.map +1 -1
  58. package/package.json +5 -4
  59. package/src/chat/bubbles/chat-agent-message-markdown.test.tsx +38 -0
  60. package/src/chat/bubbles/chat-agent-message-markdown.tsx +34 -0
  61. package/src/chat/bubbles/chat-agent-message.test.tsx +12 -0
  62. package/src/chat/bubbles/chat-agent-message.tsx +21 -1
  63. package/src/chat/bubbles/index.ts +1 -0
  64. package/src/chat/index.ts +2 -0
  65. package/src/chat/types.ts +10 -0
  66. package/src/components/index.ts +2 -0
  67. package/src/components/lasso-tool/message.tsx +36 -0
  68. package/src/components/lasso-tool/types.ts +20 -1
  69. package/src/components/responsive-drawer/responsive-drawer.test.tsx +138 -0
  70. package/src/components/responsive-drawer/responsive-drawer.tsx +77 -51
  71. package/src/legend/components/a11y.ts +14 -0
  72. package/src/legend/components/contexts.ts +29 -4
  73. package/src/legend/components/index.ts +3 -4
  74. package/src/legend/components/legend-actions/legend-actions.tsx +4 -3
  75. package/src/legend/components/legend-group/legend-group.test.tsx +166 -9
  76. package/src/legend/components/legend-group/legend-group.tsx +88 -49
  77. package/src/legend/components/legend-group/styles.ts +59 -2
  78. package/src/legend/components/legend-group-menu/legend-group-menu-items.tsx +132 -0
  79. package/src/legend/components/legend-group-menu/legend-group-menu.tsx +25 -0
  80. package/src/legend/components/legend-opacity/legend-opacity.tsx +43 -70
  81. package/src/legend/components/legend-opacity/styles.ts +14 -9
  82. package/src/legend/components/legend-overflow-menu/legend-overflow-menu.tsx +84 -0
  83. package/src/legend/components/legend-panel-menu/legend-panel-menu.tsx +23 -0
  84. package/src/legend/components/legend-ramp/legend-ramp-ui.tsx +2 -1
  85. package/src/legend/components/legend-row/legend-row.test.tsx +304 -85
  86. package/src/legend/components/legend-row/legend-row.tsx +73 -50
  87. package/src/legend/components/legend-row/styles.ts +54 -1
  88. package/src/legend/components/legend-row-menu/legend-row-menu-items.tsx +57 -0
  89. package/src/legend/components/legend-row-menu/legend-row-menu.tsx +12 -50
  90. package/src/legend/components/legend-row-menu/legend-zoom-to.tsx +25 -17
  91. package/src/legend/components/legend-sortable/contexts.ts +12 -0
  92. package/src/legend/components/legend-sortable/legend-sortable.test.tsx +144 -0
  93. package/src/legend/components/legend-sortable/legend-sortable.tsx +195 -0
  94. package/src/legend/components/legend-sortable/sortable-entity.tsx +91 -0
  95. package/src/legend/components/legend-sortable/sortable-ids.ts +17 -0
  96. package/src/legend/components/legend-sortable/styles.ts +56 -0
  97. package/src/legend/components/legend-visibility-toggle/legend-visibility-toggle.tsx +14 -8
  98. package/src/legend/components/legend-visible-layers/legend-visible-layers.test.tsx +86 -0
  99. package/src/legend/components/legend-visible-layers/legend-visible-layers.tsx +135 -0
  100. package/src/legend/components/legend-visible-layers/styles.ts +60 -0
  101. package/src/legend/components/run-async-menu-action.ts +20 -0
  102. package/src/legend/index.ts +59 -4
  103. package/src/legend/provider/labels.ts +43 -1
  104. package/src/legend/stores/index.ts +4 -0
  105. package/src/legend/stores/legend-store-registry.ts +60 -0
  106. package/src/legend/stores/legend-store.test.ts +116 -0
  107. package/src/legend/stores/selectors.ts +64 -2
  108. package/src/legend/stores/types.ts +11 -0
  109. package/src/widgets/actions/download/exports.test.tsx +14 -1
  110. package/src/widgets-v2/markdown/markdown-content.test.tsx +10 -0
  111. package/src/widgets-v2/markdown/markdown-content.tsx +9 -0
  112. package/src/widgets-v2/wrapper/widget-wrapper.tsx +4 -1
  113. package/dist/markdown-BD1jcknS.js +0 -8326
  114. package/dist/markdown-BD1jcknS.js.map +0 -1
  115. package/dist/selectors-DwHj6mE2.js +0 -388
  116. package/dist/selectors-DwHj6mE2.js.map +0 -1
@@ -0,0 +1,102 @@
1
+ import { jsx as i } from "react/jsx-runtime";
2
+ import { c as l } from "react/compiler-runtime";
3
+ import { u as p } from "./widget-context-DTGO0Yta.js";
4
+ import { v as s } from "./widget-store-registry-_W4Z4xp-.js";
5
+ import "react";
6
+ import "zustand";
7
+ import { Box as c, Typography as d } from "@mui/material";
8
+ import { MarkdownContent as m } from "./markdown-content-Dk2DSgbf.js";
9
+ const a = {
10
+ root: {
11
+ color: "text.primary",
12
+ "& a": {
13
+ color: "primary.main"
14
+ },
15
+ "& code": {
16
+ bgcolor: "action.hover",
17
+ px: 0.5,
18
+ borderRadius: 0.5,
19
+ fontFamily: "monospace",
20
+ fontSize: "0.875em"
21
+ },
22
+ "& pre": {
23
+ bgcolor: "action.hover",
24
+ p: 1.5,
25
+ borderRadius: 1,
26
+ overflowX: "auto"
27
+ },
28
+ "& blockquote": {
29
+ borderLeft: "3px solid",
30
+ borderColor: "divider",
31
+ pl: 1.5,
32
+ ml: 0,
33
+ color: "text.secondary",
34
+ fontStyle: "italic"
35
+ },
36
+ "& ul, & ol": {
37
+ pl: 3,
38
+ my: 1
39
+ },
40
+ "& li": {
41
+ my: 0.25
42
+ },
43
+ "& hr": {
44
+ border: "none",
45
+ borderTop: "1px solid",
46
+ borderColor: "divider",
47
+ my: 1.5
48
+ },
49
+ "& table": {
50
+ borderCollapse: "collapse",
51
+ width: "100%"
52
+ },
53
+ "& th, & td": {
54
+ border: "1px solid",
55
+ borderColor: "divider",
56
+ px: 1,
57
+ py: 0.5,
58
+ textAlign: "left"
59
+ }
60
+ },
61
+ paragraph: {
62
+ my: 1
63
+ },
64
+ heading: {
65
+ mt: 2,
66
+ mb: 1,
67
+ fontWeight: 600
68
+ }
69
+ }, h = {
70
+ h1: (o) => n(o, "h4"),
71
+ h2: (o) => n(o, "h5"),
72
+ h3: (o) => n(o, "h6"),
73
+ h4: (o) => n(o, "subtitle1"),
74
+ h5: (o) => n(o, "subtitle2"),
75
+ h6: (o) => n(o, "subtitle2"),
76
+ p: ({
77
+ children: o
78
+ }) => /* @__PURE__ */ i(d, { variant: "body2", component: "p", sx: a.paragraph, children: o })
79
+ };
80
+ function n(o, t) {
81
+ return /* @__PURE__ */ i(d, { variant: t, component: "div", sx: a.heading, children: o.children });
82
+ }
83
+ function u(o) {
84
+ const t = l(2), {
85
+ content: e
86
+ } = o;
87
+ let r;
88
+ return t[0] !== e ? (r = /* @__PURE__ */ i(c, { sx: a.root, children: /* @__PURE__ */ i(m, { content: e, components: h, allowHtml: !0, allowImages: !0 }) }), t[0] = e, t[1] = r) : r = t[1], r;
89
+ }
90
+ function M() {
91
+ const o = l(2), t = p(), e = s(t, b);
92
+ let r;
93
+ return o[0] !== e ? (r = /* @__PURE__ */ i(u, { content: e }), o[0] = e, o[1] = r) : r = o[1], r;
94
+ }
95
+ function b(o) {
96
+ return o.data?.content ?? "";
97
+ }
98
+ export {
99
+ M,
100
+ u as a
101
+ };
102
+ //# sourceMappingURL=markdown-DdqANCiN.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown-DdqANCiN.js","sources":["../src/widgets-v2/markdown/style.ts","../src/widgets-v2/markdown/markdown-ui.tsx","../src/widgets-v2/markdown/markdown.tsx"],"sourcesContent":["import type { SxProps, Theme } from '@mui/material'\n\nexport const styles = {\n root: {\n color: 'text.primary',\n '& a': { color: 'primary.main' },\n '& code': {\n bgcolor: 'action.hover',\n px: 0.5,\n borderRadius: 0.5,\n fontFamily: 'monospace',\n fontSize: '0.875em',\n },\n '& pre': {\n bgcolor: 'action.hover',\n p: 1.5,\n borderRadius: 1,\n overflowX: 'auto',\n },\n '& blockquote': {\n borderLeft: '3px solid',\n borderColor: 'divider',\n pl: 1.5,\n ml: 0,\n color: 'text.secondary',\n fontStyle: 'italic',\n },\n '& ul, & ol': { pl: 3, my: 1 },\n '& li': { my: 0.25 },\n '& hr': {\n border: 'none',\n borderTop: '1px solid',\n borderColor: 'divider',\n my: 1.5,\n },\n '& table': { borderCollapse: 'collapse', width: '100%' },\n '& th, & td': {\n border: '1px solid',\n borderColor: 'divider',\n px: 1,\n py: 0.5,\n textAlign: 'left',\n },\n },\n paragraph: {\n my: 1,\n },\n heading: {\n mt: 2,\n mb: 1,\n fontWeight: 600,\n },\n} satisfies Record<string, SxProps<Theme>>\n","import { Box, Typography, type TypographyProps } from '@mui/material'\nimport type { Components } from 'react-markdown'\nimport { MarkdownContent } from './markdown-content'\nimport { styles } from './style'\n\nexport interface MarkdownUIProps {\n content: string\n}\n\n/** MUI-styled element mapping for `react-markdown`. */\nconst components: Components = {\n h1: (props) => mdHeading(props, 'h4'),\n h2: (props) => mdHeading(props, 'h5'),\n h3: (props) => mdHeading(props, 'h6'),\n h4: (props) => mdHeading(props, 'subtitle1'),\n h5: (props) => mdHeading(props, 'subtitle2'),\n h6: (props) => mdHeading(props, 'subtitle2'),\n p: ({ children }) => (\n <Typography variant='body2' component='p' sx={styles.paragraph}>\n {children}\n </Typography>\n ),\n}\n\nfunction mdHeading(\n props: { children?: React.ReactNode },\n variant: TypographyProps['variant'],\n) {\n return (\n <Typography variant={variant} component='div' sx={styles.heading}>\n {props.children}\n </Typography>\n )\n}\n\n/**\n * Pure presentational component for the Markdown widget. Delegates the\n * `react-markdown` engine to {@link MarkdownContent} and supplies a\n * document-style MUI element mapping (body2 paragraphs, real heading\n * typography). Opts INTO raw HTML and inline images — the Markdown widget is\n * the one slot in the library where authors can ship rich content. Caption\n * slots like `Note` keep the conservative defaults.\n */\nexport function MarkdownUI({ content }: MarkdownUIProps) {\n return (\n <Box sx={styles.root}>\n <MarkdownContent\n content={content}\n components={components}\n allowHtml\n allowImages\n />\n </Box>\n )\n}\n","import { useWidgetId, useWidget } from '../stores'\nimport { MarkdownUI } from './markdown-ui'\nimport type { MarkdownWidgetData } from './types'\n\n/**\n * Stateful Markdown bridge — reads `data.content` (post-pipeline) from the\n * per-widget store and forwards it to the pure {@link MarkdownUI}. Sits\n * inside `<Widget.Provider>`.\n */\nexport function Markdown() {\n const id = useWidgetId()\n const content = useWidget(id, (s) => {\n const data = s.data as MarkdownWidgetData | undefined\n return data?.content ?? ''\n })\n return <MarkdownUI content={content} />\n}\n"],"names":["styles","root","color","bgcolor","px","borderRadius","fontFamily","fontSize","p","overflowX","borderLeft","borderColor","pl","ml","fontStyle","my","border","borderTop","borderCollapse","width","py","textAlign","paragraph","heading","mt","mb","fontWeight","components","h1","props","mdHeading","h2","h3","h4","h5","h6","children","jsx","Typography","variant","MarkdownUI","t0","$","_c","content","t1","Box","MarkdownContent","Markdown","id","useWidgetId","useWidget","_temp","s","data"],"mappings":"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"}