@carto/meridian-ds 4.0.1-alpha.8b0892c.291 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. package/CHANGELOG.md +5 -3
  2. package/dist/{TablePaginationActions-BvKjTAmB.js → TablePaginationActions-XEVsnuDF.js} +1 -1
  3. package/dist/bin/meridian-ds-mcp.js +0 -36
  4. package/dist/components/index.js +3 -3
  5. package/dist/conventions.md +1 -2
  6. package/dist/metadata.json +4 -2607
  7. package/dist/{palette-utils-d-9NY8qw.js → palette-utils-F7dMdI2q.js} +3 -3
  8. package/dist/theme/index.cjs +75 -75
  9. package/dist/theme/index.js +78 -78
  10. package/dist/types/components/AccordionGroup/AccordionGroup.stories.d.ts +0 -11
  11. package/dist/types/components/AccordionGroup/AccordionGroup.stories.d.ts.map +1 -1
  12. package/dist/types/components/Alert/Alert.stories.d.ts +0 -8
  13. package/dist/types/components/Alert/Alert.stories.d.ts.map +1 -1
  14. package/dist/types/components/AppBar/AppBar.stories.d.ts +1 -11
  15. package/dist/types/components/AppBar/AppBar.stories.d.ts.map +1 -1
  16. package/dist/types/components/Autocomplete/Autocomplete/Autocomplete.stories.d.ts +0 -14
  17. package/dist/types/components/Autocomplete/Autocomplete/Autocomplete.stories.d.ts.map +1 -1
  18. package/dist/types/components/Autocomplete/CreatableAutocomplete/CreatableAutocomplete.stories.d.ts +0 -16
  19. package/dist/types/components/Autocomplete/CreatableAutocomplete/CreatableAutocomplete.stories.d.ts.map +1 -1
  20. package/dist/types/components/Autocomplete/MultipleAutocomplete/MultipleAutocomplete.stories.d.ts +0 -22
  21. package/dist/types/components/Autocomplete/MultipleAutocomplete/MultipleAutocomplete.stories.d.ts.map +1 -1
  22. package/dist/types/components/Avatar/Avatar.stories.d.ts +0 -11
  23. package/dist/types/components/Avatar/Avatar.stories.d.ts.map +1 -1
  24. package/dist/types/components/Button/Button.stories.d.ts +0 -11
  25. package/dist/types/components/Button/Button.stories.d.ts.map +1 -1
  26. package/dist/types/components/ChipGroup/ChipGroup.stories.d.ts +0 -23
  27. package/dist/types/components/ChipGroup/ChipGroup.stories.d.ts.map +1 -1
  28. package/dist/types/components/CircularProgress/CircularProgress.stories.d.ts +0 -11
  29. package/dist/types/components/CircularProgress/CircularProgress.stories.d.ts.map +1 -1
  30. package/dist/types/components/CodeArea/CodeAreaDialog/CodeAreaDialog.stories.d.ts +0 -11
  31. package/dist/types/components/CodeArea/CodeAreaDialog/CodeAreaDialog.stories.d.ts.map +1 -1
  32. package/dist/types/components/CodeArea/CodeAreaField/CodeAreaField.stories.d.ts +0 -8
  33. package/dist/types/components/CodeArea/CodeAreaField/CodeAreaField.stories.d.ts.map +1 -1
  34. package/dist/types/components/CopiableComponent/CopiableComponent.stories.d.ts.map +1 -1
  35. package/dist/types/components/CopiableInputText/CopiableInputText.stories.d.ts +0 -16
  36. package/dist/types/components/CopiableInputText/CopiableInputText.stories.d.ts.map +1 -1
  37. package/dist/types/components/DatePickers/DateCalendar.stories.d.ts +1 -13
  38. package/dist/types/components/DatePickers/DateCalendar.stories.d.ts.map +1 -1
  39. package/dist/types/components/DatePickers/DatePicker/DatePicker.stories.d.ts +0 -14
  40. package/dist/types/components/DatePickers/DatePicker/DatePicker.stories.d.ts.map +1 -1
  41. package/dist/types/components/DatePickers/DateRangeCalendar/DateRangeCalendar.stories.d.ts +0 -13
  42. package/dist/types/components/DatePickers/DateRangeCalendar/DateRangeCalendar.stories.d.ts.map +1 -1
  43. package/dist/types/components/DatePickers/DateRangePicker/DateRangePicker.stories.d.ts +0 -11
  44. package/dist/types/components/DatePickers/DateRangePicker/DateRangePicker.stories.d.ts.map +1 -1
  45. package/dist/types/components/DatePickers/DateTimePicker/DateTimePicker.stories.d.ts +0 -8
  46. package/dist/types/components/DatePickers/DateTimePicker/DateTimePicker.stories.d.ts.map +1 -1
  47. package/dist/types/components/DatePickers/TimePicker/TimePicker.stories.d.ts +0 -8
  48. package/dist/types/components/DatePickers/TimePicker/TimePicker.stories.d.ts.map +1 -1
  49. package/dist/types/components/Dialog/Dialog/Dialog.stories.d.ts +0 -8
  50. package/dist/types/components/Dialog/Dialog/Dialog.stories.d.ts.map +1 -1
  51. package/dist/types/components/Dialog/DialogAlert/DialogAlert.stories.d.ts +0 -8
  52. package/dist/types/components/Dialog/DialogAlert/DialogAlert.stories.d.ts.map +1 -1
  53. package/dist/types/components/Dialog/DialogConfirmation/DialogConfirmation.stories.d.ts +0 -11
  54. package/dist/types/components/Dialog/DialogConfirmation/DialogConfirmation.stories.d.ts.map +1 -1
  55. package/dist/types/components/Dialog/DialogFooter/DialogFooter.stories.d.ts +0 -8
  56. package/dist/types/components/Dialog/DialogFooter/DialogFooter.stories.d.ts.map +1 -1
  57. package/dist/types/components/Dialog/DialogHeader/DialogHeader.stories.d.ts +0 -8
  58. package/dist/types/components/Dialog/DialogHeader/DialogHeader.stories.d.ts.map +1 -1
  59. package/dist/types/components/Dialog/DialogStepper/DialogStepper.stories.d.ts +0 -8
  60. package/dist/types/components/Dialog/DialogStepper/DialogStepper.stories.d.ts.map +1 -1
  61. package/dist/types/components/EllipsisWithTooltip/EllipsisWithTooltip.stories.d.ts +0 -26
  62. package/dist/types/components/EllipsisWithTooltip/EllipsisWithTooltip.stories.d.ts.map +1 -1
  63. package/dist/types/components/EmptyState/EmptyState.stories.d.ts +0 -8
  64. package/dist/types/components/EmptyState/EmptyState.stories.d.ts.map +1 -1
  65. package/dist/types/components/FilterDropdown/FilterDropdown.stories.d.ts +0 -13
  66. package/dist/types/components/FilterDropdown/FilterDropdown.stories.d.ts.map +1 -1
  67. package/dist/types/components/IconButton/IconButton.stories.d.ts +1 -19
  68. package/dist/types/components/IconButton/IconButton.stories.d.ts.map +1 -1
  69. package/dist/types/components/IconWrapper/IconWrapper.stories.d.ts +0 -14
  70. package/dist/types/components/IconWrapper/IconWrapper.stories.d.ts.map +1 -1
  71. package/dist/types/components/LabelWithIndicator/LabelWithIndicator.stories.d.ts +0 -11
  72. package/dist/types/components/LabelWithIndicator/LabelWithIndicator.stories.d.ts.map +1 -1
  73. package/dist/types/components/Link/Link.stories.d.ts +0 -8
  74. package/dist/types/components/Link/Link.stories.d.ts.map +1 -1
  75. package/dist/types/components/List/List.metadata.d.ts.map +1 -1
  76. package/dist/types/components/List/List.stories.d.ts +0 -8
  77. package/dist/types/components/List/List.stories.d.ts.map +1 -1
  78. package/dist/types/components/List/ListItem/ListItem.stories.d.ts +0 -8
  79. package/dist/types/components/List/ListItem/ListItem.stories.d.ts.map +1 -1
  80. package/dist/types/components/Loader/Loader.stories.d.ts +0 -8
  81. package/dist/types/components/Loader/Loader.stories.d.ts.map +1 -1
  82. package/dist/types/components/Menu/Menu/Menu.stories.d.ts +0 -11
  83. package/dist/types/components/Menu/Menu/Menu.stories.d.ts.map +1 -1
  84. package/dist/types/components/MessageField/MessageField.stories.d.ts +0 -8
  85. package/dist/types/components/MessageField/MessageField.stories.d.ts.map +1 -1
  86. package/dist/types/components/PasswordField/PasswordField.stories.d.ts +0 -8
  87. package/dist/types/components/PasswordField/PasswordField.stories.d.ts.map +1 -1
  88. package/dist/types/components/ScreenReaderOnly/ScreenReaderOnly.stories.d.ts +0 -8
  89. package/dist/types/components/ScreenReaderOnly/ScreenReaderOnly.stories.d.ts.map +1 -1
  90. package/dist/types/components/SearchField/SearchField.stories.d.ts +0 -8
  91. package/dist/types/components/SearchField/SearchField.stories.d.ts.map +1 -1
  92. package/dist/types/components/SelectField/MultipleSelectField/MultipleSelectField.stories.d.ts +0 -11
  93. package/dist/types/components/SelectField/MultipleSelectField/MultipleSelectField.stories.d.ts.map +1 -1
  94. package/dist/types/components/SelectField/SelectField/SelectField.stories.d.ts +0 -11
  95. package/dist/types/components/SelectField/SelectField/SelectField.stories.d.ts.map +1 -1
  96. package/dist/types/components/Snackbar/Snackbar.stories.d.ts +0 -8
  97. package/dist/types/components/Snackbar/Snackbar.stories.d.ts.map +1 -1
  98. package/dist/types/components/SplitButton/SplitButton.stories.d.ts +0 -14
  99. package/dist/types/components/SplitButton/SplitButton.stories.d.ts.map +1 -1
  100. package/dist/types/components/TablePaginationActions/TablePaginationActions.stories.d.ts +0 -8
  101. package/dist/types/components/TablePaginationActions/TablePaginationActions.stories.d.ts.map +1 -1
  102. package/dist/types/components/Tag/Tag.stories.d.ts +0 -8
  103. package/dist/types/components/Tag/Tag.stories.d.ts.map +1 -1
  104. package/dist/types/components/ToggleButtonGroup/ToggleButtonGroup.stories.d.ts +0 -11
  105. package/dist/types/components/ToggleButtonGroup/ToggleButtonGroup.stories.d.ts.map +1 -1
  106. package/dist/types/components/TooltipData/TooltipData.stories.d.ts +0 -11
  107. package/dist/types/components/TooltipData/TooltipData.stories.d.ts.map +1 -1
  108. package/dist/types/components/Typography/Typography.stories.d.ts +0 -8
  109. package/dist/types/components/Typography/Typography.stories.d.ts.map +1 -1
  110. package/dist/types/components/UploadField/UploadField.stories.d.ts +0 -11
  111. package/dist/types/components/UploadField/UploadField.stories.d.ts.map +1 -1
  112. package/dist/types/custom-icons/__docs__/CustomIcons.stories.d.ts +1 -8
  113. package/dist/types/custom-icons/__docs__/CustomIcons.stories.d.ts.map +1 -1
  114. package/dist/types/theme/carto-theme.d.ts +2569 -2568
  115. package/dist/types/theme/carto-theme.d.ts.map +1 -1
  116. package/dist/types/theme/components/stories/Accordion.stories.d.ts +0 -3
  117. package/dist/types/theme/components/stories/Accordion.stories.d.ts.map +1 -1
  118. package/dist/types/theme/components/stories/Breadcrumb.stories.d.ts +0 -3
  119. package/dist/types/theme/components/stories/Breadcrumb.stories.d.ts.map +1 -1
  120. package/dist/types/theme/components/stories/ButtonGroup.stories.d.ts +0 -3
  121. package/dist/types/theme/components/stories/ButtonGroup.stories.d.ts.map +1 -1
  122. package/dist/types/theme/components/stories/Checkbox.stories.d.ts +0 -3
  123. package/dist/types/theme/components/stories/Checkbox.stories.d.ts.map +1 -1
  124. package/dist/types/theme/components/stories/Chip.stories.d.ts +0 -3
  125. package/dist/types/theme/components/stories/Chip.stories.d.ts.map +1 -1
  126. package/dist/types/theme/components/stories/Divider.stories.d.ts +0 -3
  127. package/dist/types/theme/components/stories/Divider.stories.d.ts.map +1 -1
  128. package/dist/types/theme/components/stories/FAB.stories.d.ts +0 -3
  129. package/dist/types/theme/components/stories/FAB.stories.d.ts.map +1 -1
  130. package/dist/types/theme/components/stories/HelperText.stories.d.ts +0 -3
  131. package/dist/types/theme/components/stories/HelperText.stories.d.ts.map +1 -1
  132. package/dist/types/theme/components/stories/InputLabel.stories.d.ts +0 -3
  133. package/dist/types/theme/components/stories/InputLabel.stories.d.ts.map +1 -1
  134. package/dist/types/theme/components/stories/LinearProgress.stories.d.ts +2 -6
  135. package/dist/types/theme/components/stories/LinearProgress.stories.d.ts.map +1 -1
  136. package/dist/types/theme/components/stories/Paper.stories.d.ts +0 -3
  137. package/dist/types/theme/components/stories/Paper.stories.d.ts.map +1 -1
  138. package/dist/types/theme/components/stories/Radio.stories.d.ts +0 -3
  139. package/dist/types/theme/components/stories/Radio.stories.d.ts.map +1 -1
  140. package/dist/types/theme/components/stories/Slider.stories.d.ts +0 -3
  141. package/dist/types/theme/components/stories/Slider.stories.d.ts.map +1 -1
  142. package/dist/types/theme/components/stories/Switch.stories.d.ts +0 -3
  143. package/dist/types/theme/components/stories/Switch.stories.d.ts.map +1 -1
  144. package/dist/types/theme/components/stories/Table.stories.d.ts +0 -3
  145. package/dist/types/theme/components/stories/Table.stories.d.ts.map +1 -1
  146. package/dist/types/theme/components/stories/TablePagination.stories.d.ts +0 -3
  147. package/dist/types/theme/components/stories/TablePagination.stories.d.ts.map +1 -1
  148. package/dist/types/theme/components/stories/Tabs.stories.d.ts +0 -6
  149. package/dist/types/theme/components/stories/Tabs.stories.d.ts.map +1 -1
  150. package/dist/types/theme/components/stories/TextArea.stories.d.ts +0 -3
  151. package/dist/types/theme/components/stories/TextArea.stories.d.ts.map +1 -1
  152. package/dist/types/theme/components/stories/TextField.stories.d.ts +0 -6
  153. package/dist/types/theme/components/stories/TextField.stories.d.ts.map +1 -1
  154. package/dist/types/theme/components/stories/ToggleButton.stories.d.ts +0 -3
  155. package/dist/types/theme/components/stories/ToggleButton.stories.d.ts.map +1 -1
  156. package/dist/types/theme/components/stories/Tooltip.stories.d.ts +0 -12
  157. package/dist/types/theme/components/stories/Tooltip.stories.d.ts.map +1 -1
  158. package/dist/types/theme/tokens/LayoutTokens.stories.d.ts +0 -3
  159. package/dist/types/theme/tokens/LayoutTokens.stories.d.ts.map +1 -1
  160. package/dist/types/widgets/legend/LegendWidgetUI.stories.d.ts +0 -3
  161. package/dist/types/widgets/legend/LegendWidgetUI.stories.d.ts.map +1 -1
  162. package/dist/widgets/index.js +1 -1
  163. package/package.json +6 -3
  164. package/dist/types/custom-icons/__docs__/icon-keywords.d.ts +0 -284
  165. package/dist/types/custom-icons/__docs__/icon-keywords.d.ts.map +0 -1
  166. package/dist/types/theme/base-theme-options.d.ts +0 -1775
  167. package/dist/types/theme/base-theme-options.d.ts.map +0 -1
package/CHANGELOG.md CHANGED
@@ -2,15 +2,17 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
- - feat(ai-metadata): serve custom-icon and theme-token knowledge to AI agents — new `meridian_list_icons` and `meridian_get_tokens` MCP tools (icons searchable by curated keywords; tokens projected straight from the composed theme: palette / typography / spacing / shape / breakpoints / shadows), plus surfaced List `direction`/`spacing` props [#463](https://github.com/CartoDB/meridian-ds/pull/463) [sc-559510] [sc-559550]
6
-
7
5
  ## 4.0
8
6
 
7
+ ### 4.1.0
8
+
9
+ - Storybook: replace Chromatic visual regression with a mandatory self-hosted Playwright harness (in-repo baselines, PR diff report, label-driven baseline updates); Chromatic is now deploy-only for the MCP integration [#412](https://github.com/CartoDB/meridian-ds/pull/412)
10
+ - feat(DateRangeCalendar): new component to select a date range in a single, always-visible calendar (no separate input fields), with a neutral hover preview of the pending range that turns into the selection color once committed — reuses `PickersDay` so styling stays token-driven [#465](https://github.com/CartoDB/meridian-ds/pull/465)
11
+
9
12
  ### 4.0.0
10
13
 
11
14
  - **BREAKING** feat(widgets): move all Builder chart/data widgets to their sole consumer (workspace-www) and remove echarts from Meridian. Removes `PieWidgetUI`, `TimeSeriesWidgetUI`, `CategoryWidgetUI`, `HistogramWidgetUI`, `BarWidgetUI`, `ScatterPlotWidgetUI`, `FormulaWidgetUI`, `RangeWidgetUI`, `TableWidgetUI`, `WrapperWidgetUI`, `FeatureSelectionWidgetUI`, `NoDataAlert`, `ChartLegend`, and the comparative widgets; only the `legend` widgets remain. Adds public `./charts` and `./hooks` subpaths for the shared chart infrastructure (skeleton primitives, chart constants, formatter/animation utils) and the hooks the extracted widgets depend on; `theme` now also exports `commonPalette`. Drops the `echarts`/`echarts-for-react` dependencies and the `ReactEcharts` wrapper. [#462](https://github.com/CartoDB/meridian-ds/pull/462)
12
15
  - fix(tooltip): prevent the hover "wave" (cascading tooltips) when scrubbing across icon-button lists — tune `MuiTooltip` defaults (`enterNextDelay`, `leaveDelay`, `Fade` transition) [#458](https://github.com/CartoDB/meridian-ds/pull/458)
13
- - feat(DateRangeCalendar): new component to select a date range in a single, always-visible calendar (no separate input fields), with a neutral hover preview of the pending range that turns into the selection color once committed — reuses `PickersDay` so styling stays token-driven [#465](https://github.com/CartoDB/meridian-ds/pull/465)
14
16
 
15
17
  ## 3.0
16
18
 
@@ -1,7 +1,7 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { forwardRef } from "react";
3
3
  import { styled, MenuItem as MenuItem$1, Tooltip, CircularProgress, IconButton as IconButton$1, Box } from "@mui/material";
4
- import { d as MENU_ITEM_SIZE_DENSE, M as MENU_ITEM_SIZE_EXTENDED, e as ICON_SIZE_LARGE, a as ICON_SIZE_MEDIUM, I as ICON_SIZE_SMALL } from "./palette-utils-d-9NY8qw.js";
4
+ import { d as MENU_ITEM_SIZE_DENSE, M as MENU_ITEM_SIZE_EXTENDED, e as ICON_SIZE_LARGE, a as ICON_SIZE_MEDIUM, I as ICON_SIZE_SMALL } from "./palette-utils-F7dMdI2q.js";
5
5
  import { KeyboardArrowLeftOutlined, KeyboardArrowRightOutlined } from "@mui/icons-material";
6
6
  import { useIntl } from "react-intl";
7
7
  import { u as useImperativeIntl } from "./useImperativeIntl-BUw_LXAO.js";
@@ -32,8 +32,6 @@ function resolveBundlePath() {
32
32
  }
33
33
  var DOCS = [];
34
34
  var KNOWN = [];
35
- var ICONS = [];
36
- var TOKENS;
37
35
  var CONVENTIONS = "";
38
36
  var VERSION = "0.0.0";
39
37
  var TOOLS = [
@@ -82,24 +80,6 @@ var TOOLS = [
82
80
  properties: {},
83
81
  additionalProperties: false
84
82
  }
85
- },
86
- {
87
- name: "meridian_list_icons",
88
- description: "List every Meridian custom icon by name, with search keywords where curated (e.g. Bigquery \u2192 warehouse/database). There's no search tool \u2014 match by meaning against the name + keywords. Import the one you pick from '@carto/meridian-ds/custom-icons' and render it as `<Name />`. All icons share one prop type (CustomIconProps): MUI SvgIconProps \u2014 `color`, `fontSize`, `sx`, \u2026 \u2014 plus `width`/`height`; the result's `props` field has the details and the .d.ts pointer. Prefer a Meridian custom icon over an ad-hoc SVG or a MUI icon.",
89
- inputSchema: {
90
- type: "object",
91
- properties: {},
92
- additionalProperties: false
93
- }
94
- },
95
- {
96
- name: "meridian_get_tokens",
97
- description: "The design tokens (exact values) to reference instead of hardcoding: palette (semantic text/background/action/divider, the intents, and the color scales), the typography ramp (per-variant fontSize/fontWeight/lineHeight/letterSpacing), spacing base, shape.borderRadius, breakpoints, and shadows. Use these with the rules in meridian_get_conventions (which says to use tokens, not raw hex/px) \u2014 this tool supplies the actual values. Projected from the theme, so it always matches the installed Meridian version. These are theme-level tokens (the global palette/type/spacing scale); for a component's internal spacing (e.g. Button padding, List row gap) use meridian_get_component, not this.",
98
- inputSchema: {
99
- type: "object",
100
- properties: {},
101
- additionalProperties: false
102
- }
103
83
  }
104
84
  ];
105
85
  var find = (name) => DOCS.find((d) => d.name.toLowerCase() === String(name).toLowerCase());
@@ -270,22 +250,10 @@ Fetch any with meridian_get_examples(storyId):
270
250
  }
271
251
  return md;
272
252
  }
273
- function listIcons() {
274
- return {
275
- note: "Import from '@carto/meridian-ds/custom-icons' and render as <Name />. Match by name or keywords \u2014 there's no search tool.",
276
- props: "Every icon is an identical forwardRef component sharing one prop type, CustomIconProps: MUI SvgIconProps \u2014 color, fontSize ('small'|'medium'|'large'|'inherit'), sx, htmlColor, titleAccess \u2014 plus width/height (number|string) to override the fontSize-based size. Prefer color/fontSize for theming/sizing; width/height only for a specific px size. The exact type ships at node_modules/@carto/meridian-ds/dist/types/custom-icons/types.d.ts (the per-icon <Name>.d.ts is identical boilerplate \u2014 no icon-specific props).",
277
- count: ICONS.length,
278
- icons: ICONS
279
- };
280
- }
281
253
  function callTool(name, args) {
282
254
  switch (name) {
283
255
  case "meridian_list_components":
284
256
  return listComponents();
285
- case "meridian_list_icons":
286
- return listIcons();
287
- case "meridian_get_tokens":
288
- return TOKENS ?? { error: "No tokens in this bundle." };
289
257
  case "meridian_get_component":
290
258
  return getComponent(String(args.name ?? ""));
291
259
  case "meridian_get_examples":
@@ -308,8 +276,6 @@ Flow:
308
276
  2. meridian_list_components \u2014 read the (small) catalog and pick by description + keywords. There is no search tool; match by meaning (the model already knows "picker" \u2248 "dropdown" \u2248 "select").
309
277
  3. meridian_get_component(name) \u2014 when to use it, its decisionTree (conditions that point to a different component), and the high-value inherited MUI props worth knowing (curation.mui; some carry an aiHint). It also returns the example story ids.
310
278
  4. meridian_get_examples(name[, storyId]) \u2014 real, copy-able example code. With no storyId: the lead usage story and the notable stories in full plus a list of the rest; pass a storyId for one story's full code.
311
- 5. meridian_list_icons \u2014 when you need an icon, list the custom icons and match by name/keyword; import from '@carto/meridian-ds/custom-icons' and render as <Name />.
312
- 6. meridian_get_tokens \u2014 exact palette/typography/spacing/shape/breakpoint/shadow values to use instead of hardcoding (the conventions say use tokens; this gives the values).
313
279
 
314
280
  Three tiers of components, by how much each carries (all are real and importable \u2014 always prefer one over a bare MUI equivalent): CURATED (most) have full when-to-use / decisionTree / promoted-prop guidance; LISTED (flagged "documented": false, with example stories) carry no curation yet \u2014 lean on get_examples + the .d.ts; KNOWN (flagged "documented": false, no stories) are real components not yet documented \u2014 get_component/get_examples point you at their type declarations (.d.ts).
315
281
 
@@ -368,8 +334,6 @@ function load() {
368
334
  );
369
335
  DOCS = bundle.components;
370
336
  KNOWN = bundle.knownComponents ?? [];
371
- ICONS = bundle.icons ?? [];
372
- TOKENS = bundle.tokens;
373
337
  CONVENTIONS = bundle.conventions;
374
338
  VERSION = bundle.version;
375
339
  process.stderr.write(
@@ -2,12 +2,12 @@ import { jsx, jsxs, Fragment } from "react/jsx-runtime";
2
2
  import React, { forwardRef, useState, useRef, useEffect, useMemo, createElement, Fragment as Fragment$1, useCallback, useImperativeHandle, createContext, useContext } from "react";
3
3
  import { styled, Button as Button$1, Box, CircularProgress as CircularProgress$1, Tooltip, Popper, Grow, Paper, ClickAwayListener, MenuList as MenuList$1, MenuItem, ButtonGroup as ButtonGroup$1, TextField, InputAdornment, FormControl, InputLabel, FormHelperText, Select, Checkbox, Link as Link$1, ListItemText as ListItemText$1, IconButton as IconButton$1, ToggleButtonGroup as ToggleButtonGroup$1, Stack, Autocomplete as Autocomplete$1, Divider, ListItemIcon as ListItemIcon$1, createFilterOptions, alpha, useTheme, Toolbar as Toolbar$1, AppBar as AppBar$1, Dialog as Dialog$1, Chip as Chip$1, DialogTitle as DialogTitle$1, DialogContent as DialogContent$1, Fade, AlertTitle, Alert as Alert$2, DialogActions as DialogActions$1, Slide, Accordion, AccordionSummary, AccordionDetails, Avatar as Avatar$1, Menu as Menu$2, useMediaQuery, Portal, Snackbar as Snackbar$1, List as List$2, ListItemButton as ListItemButton$1, ListItem as ListItem$1, ListSubheader as ListSubheader$1, Typography as Typography$1, Popover } from "@mui/material";
4
4
  import { ListItemAvatar, ListItemSecondaryAction } from "@mui/material";
5
- import { T as Typography, I as ICON_SIZE_SMALL, a as ICON_SIZE_MEDIUM, M as MENU_ITEM_SIZE_EXTENDED, b as MENU_ITEM_SIZE_DEFAULT, c as MENU_LIST_MAX_SIZE, d as MENU_ITEM_SIZE_DENSE, A as APPBAR_SIZE, e as ICON_SIZE_LARGE, N as NOTIFICATION_DURATION_IN_MS, L as LIST_MAX_SIZE, f as LIST_ITEM_SIZE_DENSE, g as LIST_ITEM_SIZE_DEFAULT, h as LIST_OVERSCAN_ITEMS_COUNT, F as FontWeight, r as resolvePalettePath } from "../palette-utils-d-9NY8qw.js";
5
+ import { T as Typography, I as ICON_SIZE_SMALL, a as ICON_SIZE_MEDIUM, M as MENU_ITEM_SIZE_EXTENDED, b as MENU_ITEM_SIZE_DEFAULT, c as MENU_LIST_MAX_SIZE, d as MENU_ITEM_SIZE_DENSE, A as APPBAR_SIZE, e as ICON_SIZE_LARGE, N as NOTIFICATION_DURATION_IN_MS, L as LIST_MAX_SIZE, f as LIST_ITEM_SIZE_DENSE, g as LIST_ITEM_SIZE_DEFAULT, h as LIST_OVERSCAN_ITEMS_COUNT, F as FontWeight, r as resolvePalettePath } from "../palette-utils-F7dMdI2q.js";
6
6
  import { OpenInNewOutlined, VisibilityOffOutlined, VisibilityOutlined, Cancel, ContentCopyOutlined, AddCircleOutlineOutlined, MenuOutlined, MoreVertOutlined, HelpOutline, ErrorOutline, ArrowBackOutlined, CloseOutlined, Check, TodayOutlined, StopCircleOutlined, ArrowUpwardOutlined } from "@mui/icons-material";
7
7
  import { F as ForwardedComponent$1 } from "../ArrowDown-Bho9Ssnw.js";
8
8
  import * as ReactWindow from "react-window";
9
- import { u as useTranslationWithFallback, I as IconButton, M as MenuItem$1, g as getThemeColor, e as ellipsisStyles, S as SVG_SELECTOR } from "../TablePaginationActions-BvKjTAmB.js";
10
- import { T } from "../TablePaginationActions-BvKjTAmB.js";
9
+ import { u as useTranslationWithFallback, I as IconButton, M as MenuItem$1, g as getThemeColor, e as ellipsisStyles, S as SVG_SELECTOR } from "../TablePaginationActions-XEVsnuDF.js";
10
+ import { T } from "../TablePaginationActions-XEVsnuDF.js";
11
11
  import { F as ForwardedComponent, a as ForwardedComponent$2, b as ForwardedComponent$3, c as ForwardedComponent$4 } from "../Search-DXfTNnxj.js";
12
12
  import "cartocolor";
13
13
  import { Controlled, UnControlled } from "react-codemirror2";
@@ -21,7 +21,6 @@ Meridian is the source of truth: when an existing codebase pattern contradicts M
21
21
  - Source icons from Meridian's custom-icons first, then `@mui/icons-material`;
22
22
  add a local SVG only when neither has an equivalent. Don't duplicate an icon
23
23
  the design system already ships.
24
- - Find the right custom icon with `meridian_list_icons` — match by name or keyword (e.g. "warehouse" → `Bigquery`), import it from `@carto/meridian-ds/custom-icons`, and render `<Name />`. Every icon shares one prop type, `CustomIconProps` (MUI `SvgIconProps` — `color`/`fontSize`/`sx` — plus `width`/`height`).
25
24
  - Use the standard icon sizes — small 12px, medium (default) 18px, large 24px;
26
25
  a value off this scale (e.g. 16, 20) needs design sign-off. Prefer the
27
26
  outlined variants.
@@ -48,7 +47,7 @@ Meridian is the source of truth: when an existing codebase pattern contradicts M
48
47
 
49
48
  ## Styling
50
49
 
51
- - Use theme tokens, never hardcoded values: colors from the palette (`text.*`, `background.*`, `divider`, semantic `*.main`) and spacing from the theme spacing scale — no raw hex/rgb or pixel literals for color or spacing. Use integer steps on the spacing scale (`theme.spacing(n)`, or `sx` numeric spacing like `px: 2` / `mt: 3` which resolve to it) — not fractional steps or raw px. Get the exact values — palette keys, spacing base, type ramp, `shape.borderRadius`, breakpoints, shadows — from `meridian_get_tokens`.
50
+ - Use theme tokens, never hardcoded values: colors from the palette (`text.*`, `background.*`, `divider`, semantic `*.main`) and spacing from the theme spacing scale — no raw hex/rgb or pixel literals for color or spacing. Use integer steps on the spacing scale (`theme.spacing(n)`, or `sx` numeric spacing like `px: 2` / `mt: 3` which resolve to it) — not fractional steps or raw px.
52
51
  - Text uses `<Typography variant=…>` (with the `weight` prop for emphasis), never hardcoded `fontSize`/`fontWeight`/`lineHeight`/`fontFamily`.
53
52
  - Meridian's type scale is custom and does not match MUI defaults (e.g. `body2`/`caption` differ from MUI's sizes, and there are Meridian-only variants like `code1`/`code2`/`code3` and `overlineDelicate`). Pick the variant by role from Typography's variant list (`meridian_get_examples('Typography')`) — don't assume a px size or map px → variant yourself.
54
53
  - `sx` is the right tool for one-off layout/spacing on primitives (`Box`/`Grid`/`Stack`), not the deprecated MUI system props