@scattered-light/loomiere-mojave 0.5.3 → 0.7.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 (102) hide show
  1. package/dist/exports/AGENTS.md +24 -8
  2. package/dist/exports/catalog.json +21 -0
  3. package/dist/exports/chakra.js +333 -0
  4. package/dist/exports/design-system/README.md +23 -7
  5. package/dist/exports/design-system/components/Accordion/README.md +20 -20
  6. package/dist/exports/design-system/components/Accordion/preview.html +1 -1
  7. package/dist/exports/design-system/components/AlertDialog/README.md +8 -8
  8. package/dist/exports/design-system/components/AlertDialog/preview.html +1 -1
  9. package/dist/exports/design-system/components/Autocomplete/README.md +9 -9
  10. package/dist/exports/design-system/components/Autocomplete/preview.html +1 -1
  11. package/dist/exports/design-system/components/Avatar/README.md +3 -4
  12. package/dist/exports/design-system/components/Avatar/preview.html +1 -1
  13. package/dist/exports/design-system/components/Badge/README.md +35 -0
  14. package/dist/exports/design-system/components/Badge/preview.html +19 -0
  15. package/dist/exports/design-system/components/Checkbox/README.md +5 -5
  16. package/dist/exports/design-system/components/Checkbox/preview.html +1 -1
  17. package/dist/exports/design-system/components/CheckboxGroup/README.md +14 -14
  18. package/dist/exports/design-system/components/CheckboxGroup/preview.html +1 -1
  19. package/dist/exports/design-system/components/Collapsible/README.md +6 -6
  20. package/dist/exports/design-system/components/Collapsible/preview.html +1 -1
  21. package/dist/exports/design-system/components/Collection/README.md +14 -0
  22. package/dist/exports/design-system/components/CollectionPagination/README.md +15 -0
  23. package/dist/exports/design-system/components/CollectionToolbar/README.md +24 -0
  24. package/dist/exports/design-system/components/Combobox/README.md +11 -11
  25. package/dist/exports/design-system/components/Combobox/preview.html +1 -1
  26. package/dist/exports/design-system/components/ContextMenu/README.md +9 -9
  27. package/dist/exports/design-system/components/ContextMenu/preview.html +1 -1
  28. package/dist/exports/design-system/components/DataList/README.md +39 -0
  29. package/dist/exports/design-system/components/DataList/preview.html +475 -0
  30. package/dist/exports/design-system/components/DataTable/README.md +41 -0
  31. package/dist/exports/design-system/components/DataTable/preview.html +475 -0
  32. package/dist/exports/design-system/components/DatePicker/README.md +55 -0
  33. package/dist/exports/design-system/components/DatePicker/preview.html +475 -0
  34. package/dist/exports/design-system/components/Dialog/README.md +6 -6
  35. package/dist/exports/design-system/components/Dialog/preview.html +1 -1
  36. package/dist/exports/design-system/components/Drawer/README.md +1 -1
  37. package/dist/exports/design-system/components/Drawer/preview.html +1 -1
  38. package/dist/exports/design-system/components/EditableList/README.md +33 -0
  39. package/dist/exports/design-system/components/EditableList/preview.html +475 -0
  40. package/dist/exports/design-system/components/EmptyState/README.md +60 -0
  41. package/dist/exports/design-system/components/EmptyState/preview.html +475 -0
  42. package/dist/exports/design-system/components/ListDetail/README.md +43 -0
  43. package/dist/exports/design-system/components/ListDetail/preview.html +475 -0
  44. package/dist/exports/design-system/components/Menu/README.md +11 -11
  45. package/dist/exports/design-system/components/Menu/preview.html +1 -1
  46. package/dist/exports/design-system/components/Menubar/README.md +32 -32
  47. package/dist/exports/design-system/components/Menubar/preview.html +1 -1
  48. package/dist/exports/design-system/components/Meter/README.md +9 -8
  49. package/dist/exports/design-system/components/Meter/preview.html +1 -1
  50. package/dist/exports/design-system/components/MoneyField/README.md +52 -0
  51. package/dist/exports/design-system/components/MoneyField/preview.html +475 -0
  52. package/dist/exports/design-system/components/NumberField/README.md +10 -10
  53. package/dist/exports/design-system/components/NumberField/preview.html +1 -1
  54. package/dist/exports/design-system/components/OTPField/README.md +5 -5
  55. package/dist/exports/design-system/components/OTPField/preview.html +1 -1
  56. package/dist/exports/design-system/components/Popover/README.md +7 -7
  57. package/dist/exports/design-system/components/Popover/preview.html +1 -1
  58. package/dist/exports/design-system/components/PreviewCard/README.md +9 -11
  59. package/dist/exports/design-system/components/PreviewCard/preview.html +1 -1
  60. package/dist/exports/design-system/components/Progress/README.md +8 -8
  61. package/dist/exports/design-system/components/Progress/preview.html +1 -1
  62. package/dist/exports/design-system/components/Radio/README.md +16 -23
  63. package/dist/exports/design-system/components/Radio/preview.html +1 -1
  64. package/dist/exports/design-system/components/ScrollArea/README.md +6 -6
  65. package/dist/exports/design-system/components/ScrollArea/preview.html +2 -2
  66. package/dist/exports/design-system/components/Select/README.md +13 -12
  67. package/dist/exports/design-system/components/Select/preview.html +1 -1
  68. package/dist/exports/design-system/components/Separator/README.md +2 -2
  69. package/dist/exports/design-system/components/Separator/preview.html +1 -1
  70. package/dist/exports/design-system/components/Slider/README.md +6 -6
  71. package/dist/exports/design-system/components/Slider/preview.html +1 -1
  72. package/dist/exports/design-system/components/Splitter/README.md +42 -0
  73. package/dist/exports/design-system/components/Splitter/preview.html +475 -0
  74. package/dist/exports/design-system/components/Switch/README.md +3 -3
  75. package/dist/exports/design-system/components/Switch/preview.html +1 -1
  76. package/dist/exports/design-system/components/Table/README.md +2 -1
  77. package/dist/exports/design-system/components/Table/preview.html +1 -1
  78. package/dist/exports/design-system/components/Tabs/README.md +9 -9
  79. package/dist/exports/design-system/components/Tabs/preview.html +1 -1
  80. package/dist/exports/design-system/components/Toast/README.md +7 -7
  81. package/dist/exports/design-system/components/Toast/preview.html +1 -1
  82. package/dist/exports/design-system/components/Toggle/README.md +2 -2
  83. package/dist/exports/design-system/components/Toggle/preview.html +1 -1
  84. package/dist/exports/design-system/components/ToggleGroup/README.md +5 -5
  85. package/dist/exports/design-system/components/ToggleGroup/preview.html +1 -1
  86. package/dist/exports/design-system/components/Toolbar/README.md +11 -11
  87. package/dist/exports/design-system/components/Toolbar/preview.html +1 -1
  88. package/dist/exports/design-system/components/Tooltip/README.md +4 -4
  89. package/dist/exports/design-system/components/Tooltip/preview.html +1 -1
  90. package/dist/exports/design-system/components/bundle.css +2394 -193
  91. package/dist/exports/design-system/components/bundle.js +7 -5
  92. package/dist/exports/design-system/components/index.d.ts +627 -29
  93. package/dist/exports/design-system/tokens.json +15 -0
  94. package/dist/exports/figma.json +1 -1
  95. package/dist/exports/mui.js +727 -0
  96. package/dist/exports/tailwind.css +36 -0
  97. package/dist/exports/tokens.dtcg.json +316 -2
  98. package/dist/tokens.css +111 -4
  99. package/dist/tokens.d.ts +93 -0
  100. package/dist/tokens.js +94 -1
  101. package/dist/tokens.json +572 -2
  102. package/package.json +2 -2
@@ -321,6 +321,7 @@
321
321
  --color-field-fg: var(--sl-field-color);
322
322
  --color-field-fg-disabled: var(--sl-field-color-disabled);
323
323
  --color-field-placeholder: var(--sl-field-placeholder-color);
324
+ --color-field-affix: var(--sl-field-affix-color);
324
325
  --color-item-fg: var(--sl-item-color);
325
326
  --color-item-fg-hover: var(--sl-item-color-hover);
326
327
  --color-item-fg-selected: var(--sl-item-color-selected);
@@ -359,6 +360,8 @@
359
360
  --color-table-row-border: var(--sl-table-row-border-color);
360
361
  --color-table-row-hover: var(--sl-table-row-hover);
361
362
  --color-table-row-selected: var(--sl-table-row-selected);
363
+ --color-table-row-current: var(--sl-table-row-current);
364
+ --color-table-group-header: var(--sl-table-group-header-background);
362
365
  --color-table-column-hover: var(--sl-table-column-hover);
363
366
  --color-table-range: var(--sl-table-range-background);
364
367
  --color-table-range-border: var(--sl-table-range-border);
@@ -984,6 +987,13 @@
984
987
  --sl-bar-background: var(--sl-surface-tray);
985
988
  --sl-bar-border-color: var(--sl-border-default);
986
989
  --sl-bar-separator-color: var(--sl-border-default);
990
+ --sl-calendar-day-color: var(--sl-text-primary);
991
+ --sl-calendar-day-color-outside: var(--sl-text-tertiary);
992
+ --sl-calendar-day-color-disabled: var(--sl-text-disabled);
993
+ --sl-calendar-range-background: var(--sl-interactive-tint-active);
994
+ --sl-calendar-range-color: var(--sl-text-on-tint-strong);
995
+ --sl-calendar-today-ring: var(--sl-border-accent);
996
+ --sl-calendar-weekday-color: var(--sl-text-tertiary);
987
997
  --sl-check-border-color: var(--sl-border-control);
988
998
  --sl-check-border-color-hover: var(--sl-border-control-hover);
989
999
  --sl-check-background-checked: var(--sl-interactive-default);
@@ -1012,6 +1022,7 @@
1012
1022
  --sl-field-color-disabled: var(--sl-text-disabled);
1013
1023
  --sl-field-placeholder-color: var(--sl-text-tertiary);
1014
1024
  --sl-field-shadow-focus: var(--sl-focus-shadow-3px-primary);
1025
+ --sl-field-affix-color: var(--sl-text-secondary);
1015
1026
  --sl-gauge-track-color: var(--sl-fill-track);
1016
1027
  --sl-gauge-label-color: var(--sl-text-primary);
1017
1028
  --sl-gauge-value-color: var(--sl-text-secondary);
@@ -1045,10 +1056,13 @@
1045
1056
  --sl-table-row-border-color: var(--sl-border-subtle);
1046
1057
  --sl-table-row-hover: var(--sl-item-background-hover);
1047
1058
  --sl-table-row-selected: var(--sl-item-background-selected);
1059
+ --sl-table-row-current: var(--sl-surface-tray);
1060
+ --sl-table-group-header-background: var(--sl-surface-tray);
1048
1061
  --sl-table-column-hover: var(--sl-fill-subtle);
1049
1062
  --sl-table-range-background: var(--sl-interactive-tint);
1050
1063
  --sl-table-range-border: var(--sl-focus-ring);
1051
1064
  --sl-drawer-handle-color: var(--sl-border-strong);
1065
+ --sl-calendar-day-background-hover: var(--sl-item-background-hover);
1052
1066
  --sl-check-background: var(--sl-field-background);
1053
1067
  }
1054
1068
 
@@ -1119,6 +1133,13 @@
1119
1133
  --sl-bar-background: var(--sl-surface-tray);
1120
1134
  --sl-bar-border-color: var(--sl-border-default);
1121
1135
  --sl-bar-separator-color: var(--sl-border-default);
1136
+ --sl-calendar-day-color: var(--sl-text-primary);
1137
+ --sl-calendar-day-color-outside: var(--sl-text-tertiary);
1138
+ --sl-calendar-day-color-disabled: var(--sl-text-disabled);
1139
+ --sl-calendar-range-background: var(--sl-interactive-tint-active);
1140
+ --sl-calendar-range-color: var(--sl-text-on-tint-strong);
1141
+ --sl-calendar-today-ring: var(--sl-border-accent);
1142
+ --sl-calendar-weekday-color: var(--sl-text-tertiary);
1122
1143
  --sl-check-border-color: var(--sl-border-control);
1123
1144
  --sl-check-border-color-hover: var(--sl-border-control-hover);
1124
1145
  --sl-check-background-checked: var(--sl-interactive-default);
@@ -1147,6 +1168,7 @@
1147
1168
  --sl-field-color-disabled: var(--sl-text-disabled);
1148
1169
  --sl-field-placeholder-color: var(--sl-text-tertiary);
1149
1170
  --sl-field-shadow-focus: var(--sl-focus-shadow-3px-primary);
1171
+ --sl-field-affix-color: var(--sl-text-secondary);
1150
1172
  --sl-gauge-track-color: var(--sl-fill-track);
1151
1173
  --sl-gauge-label-color: var(--sl-text-primary);
1152
1174
  --sl-gauge-value-color: var(--sl-text-secondary);
@@ -1180,10 +1202,13 @@
1180
1202
  --sl-table-row-border-color: var(--sl-border-subtle);
1181
1203
  --sl-table-row-hover: var(--sl-item-background-hover);
1182
1204
  --sl-table-row-selected: var(--sl-item-background-selected);
1205
+ --sl-table-row-current: var(--sl-surface-tray);
1206
+ --sl-table-group-header-background: var(--sl-surface-tray);
1183
1207
  --sl-table-column-hover: var(--sl-fill-subtle);
1184
1208
  --sl-table-range-background: var(--sl-interactive-tint);
1185
1209
  --sl-table-range-border: var(--sl-focus-ring);
1186
1210
  --sl-drawer-handle-color: var(--sl-border-strong);
1211
+ --sl-calendar-day-background-hover: var(--sl-item-background-hover);
1187
1212
  --sl-check-background: var(--sl-field-background);
1188
1213
  }
1189
1214
 
@@ -1254,6 +1279,13 @@
1254
1279
  --sl-bar-background: var(--sl-surface-tray);
1255
1280
  --sl-bar-border-color: var(--sl-border-default);
1256
1281
  --sl-bar-separator-color: var(--sl-border-default);
1282
+ --sl-calendar-day-color: var(--sl-text-primary);
1283
+ --sl-calendar-day-color-outside: var(--sl-text-tertiary);
1284
+ --sl-calendar-day-color-disabled: var(--sl-text-disabled);
1285
+ --sl-calendar-range-background: var(--sl-interactive-tint-active);
1286
+ --sl-calendar-range-color: var(--sl-text-on-tint-strong);
1287
+ --sl-calendar-today-ring: var(--sl-border-accent);
1288
+ --sl-calendar-weekday-color: var(--sl-text-tertiary);
1257
1289
  --sl-check-border-color: var(--sl-border-control);
1258
1290
  --sl-check-border-color-hover: var(--sl-border-control-hover);
1259
1291
  --sl-check-background-checked: var(--sl-interactive-default);
@@ -1282,6 +1314,7 @@
1282
1314
  --sl-field-color-disabled: var(--sl-text-disabled);
1283
1315
  --sl-field-placeholder-color: var(--sl-text-tertiary);
1284
1316
  --sl-field-shadow-focus: var(--sl-focus-shadow-3px-primary);
1317
+ --sl-field-affix-color: var(--sl-text-secondary);
1285
1318
  --sl-gauge-track-color: var(--sl-fill-track);
1286
1319
  --sl-gauge-label-color: var(--sl-text-primary);
1287
1320
  --sl-gauge-value-color: var(--sl-text-secondary);
@@ -1315,10 +1348,13 @@
1315
1348
  --sl-table-row-border-color: var(--sl-border-subtle);
1316
1349
  --sl-table-row-hover: var(--sl-item-background-hover);
1317
1350
  --sl-table-row-selected: var(--sl-item-background-selected);
1351
+ --sl-table-row-current: var(--sl-surface-tray);
1352
+ --sl-table-group-header-background: var(--sl-surface-tray);
1318
1353
  --sl-table-column-hover: var(--sl-fill-subtle);
1319
1354
  --sl-table-range-background: var(--sl-interactive-tint);
1320
1355
  --sl-table-range-border: var(--sl-focus-ring);
1321
1356
  --sl-drawer-handle-color: var(--sl-border-strong);
1357
+ --sl-calendar-day-background-hover: var(--sl-item-background-hover);
1322
1358
  --sl-check-background: var(--sl-field-background);
1323
1359
  }
1324
1360
 
@@ -7160,6 +7160,10 @@
7160
7160
  "$value": "0.125em",
7161
7161
  "$description": "A slight em-based rounding so inline focus rings hug the text."
7162
7162
  },
7163
+ "min-target": {
7164
+ "$value": "24px",
7165
+ "$description": "Smallest target for a fine pointer (WCAG 2.5.8). A mouse can hit 24px; a finger still needs min-touch-target. The splitter handle uses this so the grab area does not cover the scrollbar beside it."
7166
+ },
7163
7167
  "min-touch-target": {
7164
7168
  "$value": "44px",
7165
7169
  "$description": "Smallest tap area for any control (WCAG 2.5.5 and Apple HIG both use 44px)."
@@ -7250,6 +7254,78 @@
7250
7254
  "$description": "Extra space either side of a divider."
7251
7255
  }
7252
7256
  },
7257
+ "calendar": {
7258
+ "day-size": {
7259
+ "$type": "dimension",
7260
+ "$value": "{space.10}",
7261
+ "$description": "A day cell on a pointer. space.10 keeps seven columns inside a phone; touch layouts raise the cell to the minimum touch target in CSS."
7262
+ },
7263
+ "day-radius": {
7264
+ "$type": "dimension",
7265
+ "$value": "{radius.pill}",
7266
+ "$description": "Selected days are circles. The pill radius is the same full radius badges and switches use."
7267
+ },
7268
+ "day-color": {
7269
+ "$type": "color",
7270
+ "$value": "{text.primary}",
7271
+ "$description": "A day in the month being shown."
7272
+ },
7273
+ "day-color-outside": {
7274
+ "$type": "color",
7275
+ "$value": "{text.tertiary}",
7276
+ "$description": "A day from the previous or next month, still selectable, drawn back so it does not compete with this month."
7277
+ },
7278
+ "day-color-disabled": {
7279
+ "$type": "color",
7280
+ "$value": "{text.disabled}",
7281
+ "$description": "A day outside the allowed period, or one a length rule rejects. It stays in the tab order so the reason can be read."
7282
+ },
7283
+ "day-background-hover": {
7284
+ "$type": "color",
7285
+ "$value": "{item.background-hover}",
7286
+ "$description": "The same hover tint as a list item, so a day feels like a choice in a list."
7287
+ },
7288
+ "range-background": {
7289
+ "$type": "color",
7290
+ "$value": "{interactive.tint-active}",
7291
+ "$description": "The band between the start and end of a period. Same tint as a selected list item, quieter than the start and end circles."
7292
+ },
7293
+ "range-color": {
7294
+ "$type": "color",
7295
+ "$value": "{text.on-tint-strong}",
7296
+ "$description": "Day numbers that sit on the range band. The on-tint text color is the one that stays readable on interactive.tint-active."
7297
+ },
7298
+ "today-ring": {
7299
+ "$type": "color",
7300
+ "$value": "{border.accent}",
7301
+ "$description": "An inset ring on today, including when today is also selected, so today is never only a color of the number."
7302
+ },
7303
+ "weekday-color": {
7304
+ "$type": "color",
7305
+ "$value": "{text.tertiary}",
7306
+ "$description": "Weekday initials and week numbers are labels, not choices."
7307
+ },
7308
+ "grid-gap": {
7309
+ "$type": "dimension",
7310
+ "$value": "{space.0-5}",
7311
+ "$description": "Space between week rows. Days in a week share an edge, so the range band reads as one shape."
7312
+ },
7313
+ "month-gap": {
7314
+ "$type": "dimension",
7315
+ "$value": "{space.4}",
7316
+ "$description": "Space between months shown side by side, the same step as panel padding so the two columns line up."
7317
+ },
7318
+ "header-gap": {
7319
+ "$type": "dimension",
7320
+ "$value": "{space.2}",
7321
+ "$description": "Space between the month title and the weekday row."
7322
+ },
7323
+ "panel-padding": {
7324
+ "$type": "dimension",
7325
+ "$value": "{space.4}",
7326
+ "$description": "Padding inside the popup. The shared popup padding is one step and is too tight for a calendar."
7327
+ }
7328
+ },
7253
7329
  "check": {
7254
7330
  "background": {
7255
7331
  "$value": "{field.background}",
@@ -7762,6 +7838,82 @@
7762
7838
  "$value": "{shadow.xs}"
7763
7839
  }
7764
7840
  },
7841
+ "empty": {
7842
+ "padding-block": {
7843
+ "compact": {
7844
+ "$value": "{space.6}",
7845
+ "$description": "24px above and below a compact empty state. The same room a popup already gives a plain 'No results' line, so the two stay one height."
7846
+ },
7847
+ "standard": {
7848
+ "$value": "{space.10}",
7849
+ "$description": "40px. A pane or a section needs more air than a table row, or the block looks stuck to the content around it."
7850
+ },
7851
+ "spacious": {
7852
+ "$value": "{space.16}",
7853
+ "$description": "64px. A page with nothing else on it. The extra space above keeps the block off the top of the viewport."
7854
+ }
7855
+ },
7856
+ "padding-inline": {
7857
+ "compact": {
7858
+ "$value": "{space.4}",
7859
+ "$description": "16px. Enough that a compact row doesn't touch the cell or popup edge."
7860
+ },
7861
+ "standard": {
7862
+ "$value": "{space.6}",
7863
+ "$description": "24px. A pane can be wide; the inline padding keeps the block off the sides before the description's own cap does."
7864
+ },
7865
+ "spacious": {
7866
+ "$value": "{space.8}",
7867
+ "$description": "32px. A full page, a step wider than a pane."
7868
+ }
7869
+ },
7870
+ "gap": {
7871
+ "compact": {
7872
+ "$value": "{space.3}",
7873
+ "$description": "12px between the icon, the text and the actions in a table row or a popup. Tight, because the row is short."
7874
+ },
7875
+ "standard": {
7876
+ "$value": "{space.4}",
7877
+ "$description": "16px. The stack in a pane: media, then words, then actions."
7878
+ },
7879
+ "spacious": {
7880
+ "$value": "{space.6}",
7881
+ "$description": "24px. A page-sized stack needs the steps to separate, or the circle sits on the title."
7882
+ }
7883
+ },
7884
+ "text-gap": {
7885
+ "compact": {
7886
+ "$value": "{space.1}",
7887
+ "$description": "4px between the title and the description in a compact row. They read as one message."
7888
+ },
7889
+ "standard": {
7890
+ "$value": "{space.1}",
7891
+ "$description": "4px. Same as compact: the description belongs to the title, so it stays close."
7892
+ },
7893
+ "spacious": {
7894
+ "$value": "{space.2}",
7895
+ "$description": "8px. The page title is larger, so the description steps down a little further."
7896
+ }
7897
+ },
7898
+ "media-size": {
7899
+ "standard": {
7900
+ "$value": "{space.12}",
7901
+ "$description": "48px circle around a magnify icon (20px). The icon needs a field, or it reads as a bullet."
7902
+ },
7903
+ "spacious": {
7904
+ "$value": "{space.16}",
7905
+ "$description": "64px circle around a maximize icon (24px). A page can carry a larger mark. Compact has no circle: the icon is icon-size.condense on its own."
7906
+ }
7907
+ },
7908
+ "description-max-width": {
7909
+ "$value": "{measure.narrow}",
7910
+ "$description": "45ch. A description is one sentence. Past a caption's measure it stretches across a wide pane and stops being a sentence."
7911
+ },
7912
+ "actions-gap": {
7913
+ "$value": "{space.2}",
7914
+ "$description": "8px between actions, the same gap a control uses between its icon and its label. The first action is the main one; the rest sit beside it."
7915
+ }
7916
+ },
7765
7917
  "field": {
7766
7918
  "background": {
7767
7919
  "$value": "{surface.base}",
@@ -7834,6 +7986,10 @@
7834
7986
  "opacity-disabled": {
7835
7987
  "$value": "0.6",
7836
7988
  "$description": "A disabled field fades as a whole, label included."
7989
+ },
7990
+ "affix-color": {
7991
+ "$value": "{text.secondary}",
7992
+ "$description": "A prefix or suffix drawn inside the field (a currency symbol, a unit). Muted so it reads as part of the control, not as the value."
7837
7993
  }
7838
7994
  },
7839
7995
  "gauge": {
@@ -8210,8 +8366,8 @@
8210
8366
  "$description": "Space between a group label and its first row."
8211
8367
  },
8212
8368
  "empty-padding-block": {
8213
- "$value": "{space.6}",
8214
- "$description": "Room around a 'No results' message, so an empty list doesn't collapse to a sliver."
8369
+ "$value": "{empty.padding-block.compact}",
8370
+ "$description": "Room around a plain 'No results' line. The same padding as a compact empty state, so a sentence and an EmptyState in that slot take the same space. An EmptyState drops this padding and uses its own."
8215
8371
  },
8216
8372
  "min-width": {
8217
8373
  "$value": "200px",
@@ -8346,6 +8502,14 @@
8346
8502
  "$value": "{item.background-selected}",
8347
8503
  "$description": "Selected rows. Same tint as the chosen menu row."
8348
8504
  },
8505
+ "row-current": {
8506
+ "$value": "{surface.tray}",
8507
+ "$description": "The open row beside a detail pane. The tray, a step off the page, so secondary text on it still passes AA in dark. A selected row keeps its own tint, so a checked row and the row you are reading can both show."
8508
+ },
8509
+ "group-header-background": {
8510
+ "$value": "{surface.tray}",
8511
+ "$description": "A group header. The tray, like the column header, so a group reads as chrome rather than another data row."
8512
+ },
8349
8513
  "column-hover": {
8350
8514
  "$value": "{fill.subtle}",
8351
8515
  "$description": "Column under the pointer, when column hover is on. Neutral so it never reads as a selection."
@@ -11779,6 +11943,56 @@
11779
11943
  "$description": "Sized to the avatar, not a text style: initials have to fit inside the circle at each size. The rest of the type is title-base."
11780
11944
  }
11781
11945
  },
11946
+ "badge": {
11947
+ "height-minimize": {
11948
+ "$value": "{space.5}",
11949
+ "$description": "20px. The smallest pill that still holds trigger-minimize."
11950
+ },
11951
+ "height-condense": {
11952
+ "$value": "{space.6}",
11953
+ "$description": "24px, the default. Sits in a line of text and in dense rows."
11954
+ },
11955
+ "height-base": {
11956
+ "$value": "{space.7}",
11957
+ "$description": "28px, the small control height, for a badge beside base text."
11958
+ },
11959
+ "padding-inline-minimize": {
11960
+ "$value": "{space.1}",
11961
+ "$description": "4px. Tighter than a control so a short label stays a pill, not a button."
11962
+ },
11963
+ "padding-inline-condense": {
11964
+ "$value": "{space.1-5}",
11965
+ "$description": "6px, the default."
11966
+ },
11967
+ "padding-inline-base": {
11968
+ "$value": "{space.2}",
11969
+ "$description": "8px, still inside the small control's inline padding."
11970
+ },
11971
+ "gap-minimize": {
11972
+ "$value": "{space.1}",
11973
+ "$description": "4px between a dot or icon and the label at the smallest size."
11974
+ },
11975
+ "gap-condense": {
11976
+ "$value": "{space.1}",
11977
+ "$description": "4px, the default. The same gap as the smallest control."
11978
+ },
11979
+ "gap-base": {
11980
+ "$value": "{space.1-5}",
11981
+ "$description": "6px, a step wider once the label is base-sized."
11982
+ },
11983
+ "dot-minimize": {
11984
+ "$value": "{space.1-5}",
11985
+ "$description": "6px status dot. Smaller than icon-size-minimize so it reads as a mark, not an icon."
11986
+ },
11987
+ "dot-condense": {
11988
+ "$value": "{space.2}",
11989
+ "$description": "8px, the default."
11990
+ },
11991
+ "dot-base": {
11992
+ "$value": "{space.2}",
11993
+ "$description": "8px. The base badge is taller, but the dot stays a mark."
11994
+ }
11995
+ },
11782
11996
  "button": {
11783
11997
  "radius": {
11784
11998
  "$value": "{radius.pill}",
@@ -11789,6 +12003,52 @@
11789
12003
  "$description": "A disabled button fades as a whole, keeping its shape so the layout doesn't jump."
11790
12004
  }
11791
12005
  },
12006
+ "collection": {
12007
+ "row-height-sm": {
12008
+ "$value": "{control.height-sm}",
12009
+ "$description": "The dense row, the same height the plain table already uses, so a checkbox fits."
12010
+ },
12011
+ "row-height-md": {
12012
+ "$value": "{control.height-md}",
12013
+ "$description": "A roomier row when the collection is the page rather than a dense register."
12014
+ },
12015
+ "header-height-sm": {
12016
+ "$value": "{control.height-md}",
12017
+ "$description": "The dense header, a step above the dense row, matching today's table header."
12018
+ },
12019
+ "header-height-md": {
12020
+ "$value": "{control.height-lg}",
12021
+ "$description": "The header for the roomier row."
12022
+ },
12023
+ "tree-indent": {
12024
+ "$value": "{space.4}",
12025
+ "$description": "How far each deeper level steps in, so a child sits under its parent's text."
12026
+ },
12027
+ "list-row-padding-block": {
12028
+ "$value": "{space.3}",
12029
+ "$description": "Vertical padding of a list row. The row is not a fixed height, because a second line and an extra slot have to fit."
12030
+ },
12031
+ "list-row-gap": {
12032
+ "$value": "{space.2}",
12033
+ "$description": "Between the checkbox, the text, the amount and the actions in a list row."
12034
+ },
12035
+ "toolbar-gap": {
12036
+ "$value": "{space.2}",
12037
+ "$description": "Between the search, the filters and the actions."
12038
+ },
12039
+ "narrow-width": {
12040
+ "$value": "{space.96}",
12041
+ "$description": "Below this, a table with narrow=\"list\" becomes a list, and the toolbar's search takes the full width. A 360px pane is under it."
12042
+ },
12043
+ "editable-list-stack-width": {
12044
+ "$value": "{space.80}",
12045
+ "$description": "Below this, editable rows stack and show their own labels. 320px matches."
12046
+ },
12047
+ "selection-column-width": {
12048
+ "$value": "{space.10}",
12049
+ "$description": "The checkbox column. Wide enough for the control, no wider, so the data keeps the room."
12050
+ }
12051
+ },
11792
12052
  "drawer": {
11793
12053
  "popup-size": {
11794
12054
  "$value": "min(420px, 90vw)",
@@ -11812,6 +12072,38 @@
11812
12072
  "$description": "Grab bar thickness."
11813
12073
  }
11814
12074
  },
12075
+ "list-detail": {
12076
+ "split-min-width": {
12077
+ "$value": "720px",
12078
+ "$description": "Side by side once this element, not the window, is this wide. Dryden used 1100px of the window. A container needs less: a list around 320px and a form around 400px still read at 720px. Narrower, the detail becomes a drawer or a page."
12079
+ },
12080
+ "detail-default-size": {
12081
+ "$value": "45%",
12082
+ "$description": "The detail's share when it opens. The list fills the rest, about 55%, which is the split Dryden started from."
12083
+ },
12084
+ "detail-min-size": {
12085
+ "$value": "35%",
12086
+ "$description": "The detail cannot be dragged narrower than this, so the form stays readable."
12087
+ },
12088
+ "detail-max-size": {
12089
+ "$value": "65%",
12090
+ "$description": "The detail cannot cover more than this, so the list stays usable. Dryden kept the detail between 35% and 65%."
12091
+ },
12092
+ "header-gap": {
12093
+ "$value": "{space.3}",
12094
+ "$description": "Space between the title, the actions and Close."
12095
+ },
12096
+ "header-padding": {
12097
+ "$value": "{space.4}",
12098
+ "$description": "Padding inside the detail header. One step under a dialog, because this is a pane, not a modal."
12099
+ }
12100
+ },
12101
+ "money-field": {
12102
+ "picker-min-inline-size": {
12103
+ "$value": "{space.56}",
12104
+ "$description": "The currency list shows a code, a name and a symbol, so the popup is wider than the code trigger inside the field."
12105
+ }
12106
+ },
11815
12107
  "navigation-menu": {
11816
12108
  "popup-min-width": {
11817
12109
  "$value": "400px",
@@ -11852,6 +12144,28 @@
11852
12144
  "$description": "Default length of a vertical slider."
11853
12145
  }
11854
12146
  },
12147
+ "splitter": {
12148
+ "handle-size": {
12149
+ "$value": "{stroke.default}",
12150
+ "$description": "The visible separator. One stroke, the same hairline as Separator, so a splitter reads as a divider you can grab."
12151
+ },
12152
+ "handle-hit-size": {
12153
+ "$value": "{a11y.min-touch-target}",
12154
+ "$description": "The part a finger grabs. The line stays one stroke. A fine pointer uses a11y.min-target (24px) instead, so the grab area does not cover the panel's scrollbar. Coarse pointers keep this 44px."
12155
+ },
12156
+ "grip-size": {
12157
+ "$value": "{space.1}",
12158
+ "$description": "4px. The diameter of one grip dot. Small enough to sit on the hairline without becoming a second control."
12159
+ },
12160
+ "key-step": {
12161
+ "$value": "5%",
12162
+ "$description": "One arrow press moves the handle by 5% of the splitter. Dryden used 5%: a nudge you can see, not a jump."
12163
+ },
12164
+ "key-step-large": {
12165
+ "$value": "10%",
12166
+ "$description": "The Shift step. Twice the arrow step, so a few presses cross the panel without holding the key."
12167
+ }
12168
+ },
11855
12169
  "switch": {
11856
12170
  "track-width": {
11857
12171
  "$value": "48px",