@signal9/era-ui 8.0.0 → 9.0.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 (224) hide show
  1. package/dist/ai/artifact/artifact-close.svelte +1 -1
  2. package/dist/ai/artifact/artifact-content.svelte +1 -1
  3. package/dist/ai/artifact/artifact-header.svelte +1 -1
  4. package/dist/ai/artifact/artifact.svelte +1 -1
  5. package/dist/ai/chain-of-thought/chain-of-thought-step.svelte +1 -1
  6. package/dist/ai/chain-of-thought/chain-of-thought.svelte +1 -1
  7. package/dist/ai/checkpoint.svelte +1 -1
  8. package/dist/ai/confirmation/confirmation-args.svelte +2 -2
  9. package/dist/ai/confirmation/confirmation.svelte +4 -4
  10. package/dist/ai/context/context.svelte +1 -1
  11. package/dist/ai/conversation/conversation-content.svelte +1 -1
  12. package/dist/ai/conversation/conversation-empty-state.svelte +1 -1
  13. package/dist/ai/conversation/conversation-scroll-button.svelte +2 -2
  14. package/dist/ai/conversations/conversations-group.svelte +1 -1
  15. package/dist/ai/conversations/conversations-item.svelte +7 -7
  16. package/dist/ai/error-panel/error-panel.svelte +4 -4
  17. package/dist/ai/image.svelte +1 -1
  18. package/dist/ai/inline-citation/inline-citation.svelte +2 -2
  19. package/dist/ai/loader.svelte +1 -1
  20. package/dist/ai/message/message-branch-selector.svelte +3 -3
  21. package/dist/ai/message/message-content.svelte +1 -1
  22. package/dist/ai/message/message-usage.svelte +4 -4
  23. package/dist/ai/model-selector/model-selector.svelte +1 -1
  24. package/dist/ai/open-in-chat/open-in-chat.svelte +2 -2
  25. package/dist/ai/plan/plan-content.svelte +1 -1
  26. package/dist/ai/plan/plan-header.svelte +2 -2
  27. package/dist/ai/plan/plan.svelte +1 -1
  28. package/dist/ai/prompt-input/prompt-input-add-attachments.svelte +1 -1
  29. package/dist/ai/prompt-input/prompt-input-attachments.svelte +5 -5
  30. package/dist/ai/prompt-input/prompt-input-submit.svelte +3 -3
  31. package/dist/ai/prompt-input/prompt-input-textarea.svelte +3 -3
  32. package/dist/ai/prompt-input/prompt-input.svelte +1 -1
  33. package/dist/ai/queue/queue-item.svelte +1 -1
  34. package/dist/ai/queue/queue.svelte +1 -1
  35. package/dist/ai/reasoning/reasoning-trigger.svelte +1 -1
  36. package/dist/ai/response/response.svelte +2 -2
  37. package/dist/ai/run-status/run-status.svelte +5 -5
  38. package/dist/ai/runtime-feed/runtime-feed-item.svelte +1 -1
  39. package/dist/ai/sources/source.svelte +1 -1
  40. package/dist/ai/sources/sources-trigger.svelte +1 -1
  41. package/dist/ai/structured-value/structured-value.svelte +1 -1
  42. package/dist/ai/suggestion/suggestion.svelte +2 -2
  43. package/dist/ai/swarm/swarm-agent.svelte +1 -1
  44. package/dist/ai/swarm/swarm-artifact.svelte +1 -1
  45. package/dist/ai/swarm/swarm-barrier.svelte +1 -1
  46. package/dist/ai/swarm/swarm-barriers.svelte +1 -1
  47. package/dist/ai/swarm/swarm-counts.svelte +1 -1
  48. package/dist/ai/swarm/swarm-footer.svelte +1 -1
  49. package/dist/ai/swarm/swarm-grid.svelte +2 -2
  50. package/dist/ai/swarm/swarm-header.svelte +1 -1
  51. package/dist/ai/swarm/swarm-node.svelte +7 -7
  52. package/dist/ai/swarm/swarm-role.svelte +1 -1
  53. package/dist/ai/swarm/swarm-root.svelte +1 -1
  54. package/dist/ai/swarm/swarm-sandbox.svelte +3 -3
  55. package/dist/ai/swarm/swarm-tree.svelte +1 -1
  56. package/dist/ai/task/task-content.svelte +1 -1
  57. package/dist/ai/task/task-trigger.svelte +1 -1
  58. package/dist/ai/tool/tool-chip.svelte +2 -2
  59. package/dist/ai/tool/tool-exec.svelte +3 -3
  60. package/dist/ai/tool/tool-header.svelte +1 -1
  61. package/dist/ai/web-preview/web-preview.svelte +3 -3
  62. package/dist/ai/workflow/canvas.svelte +1 -1
  63. package/dist/ai/workflow/node.svelte +3 -3
  64. package/dist/apps/llm-shell/llm-shell.svelte +7 -7
  65. package/dist/apps/notes/editor/slash-menu.svelte +7 -5
  66. package/dist/apps/notes/notes.svelte +9 -9
  67. package/dist/dev/audit/audits/_helpers.js +1 -1
  68. package/dist/dev/audit/audits/resting-gap.js +1 -1
  69. package/dist/dev/audit/audits/single-glyph-square.js +2 -2
  70. package/dist/dev/audit-overlay.svelte +7 -7
  71. package/dist/dev/measure.d.ts +1 -1
  72. package/dist/dev/measure.js +1 -1
  73. package/dist/docs/badge.md +1 -1
  74. package/dist/docs/css-utilities.d.ts +1 -1
  75. package/dist/docs/css-utilities.js +8 -8
  76. package/dist/docs/llms-txt.js +1 -1
  77. package/dist/era-ui.css +1 -1
  78. package/dist/generated-docs/badge.md +1 -1
  79. package/dist/generated-docs/bar.md +2 -2
  80. package/dist/generated-docs/chip.md +1 -1
  81. package/dist/generated-docs/input.md +1 -1
  82. package/dist/generated-docs/llms-full.txt +99 -119
  83. package/dist/generated-docs/llms.txt +11 -12
  84. package/dist/generated-docs/manifest.json +52 -65
  85. package/dist/generated-docs/utilities.json +45 -57
  86. package/dist/generated-docs/utilities.md +87 -106
  87. package/dist/os/notification-center.svelte +6 -6
  88. package/dist/os/pane.svelte +7 -5
  89. package/dist/os/taskbar.svelte +10 -10
  90. package/dist/os/toast.svelte +3 -3
  91. package/dist/os/toaster.svelte +1 -1
  92. package/dist/styles/density.css +93 -67
  93. package/dist/styles/index.css +89 -101
  94. package/dist/styles/prose.css +12 -12
  95. package/dist/styles/surfaces/base.css +3 -3
  96. package/dist/styles/surfaces/bevel.css +2 -2
  97. package/dist/ui/accordion/accordion-trigger.svelte +2 -2
  98. package/dist/ui/alert-dialog/alert-dialog-content.svelte +1 -1
  99. package/dist/ui/aspect-ratio/aspect-ratio.svelte +1 -1
  100. package/dist/ui/avatar/avatar-root.svelte +1 -1
  101. package/dist/ui/badge/badge.svelte +1 -1
  102. package/dist/ui/badge/badge.svelte.d.ts +1 -1
  103. package/dist/ui/bar/bar.svelte +23 -15
  104. package/dist/ui/bar/bar.svelte.d.ts +26 -26
  105. package/dist/ui/button/button.svelte +1 -1
  106. package/dist/ui/button/variants.js +18 -18
  107. package/dist/ui/button-group/button-group.svelte +2 -2
  108. package/dist/ui/calendar/calendar-day.svelte +1 -1
  109. package/dist/ui/calendar/calendar-head-cell.svelte +1 -1
  110. package/dist/ui/calendar/calendar-header.svelte +1 -1
  111. package/dist/ui/calendar/calendar-next-button.svelte +1 -1
  112. package/dist/ui/calendar/calendar-prev-button.svelte +1 -1
  113. package/dist/ui/card/card.svelte +5 -5
  114. package/dist/ui/card/card.svelte.d.ts +4 -4
  115. package/dist/ui/checkbox/checkbox.svelte +3 -3
  116. package/dist/ui/chip/chip.svelte +14 -10
  117. package/dist/ui/chip/chip.svelte.d.ts +7 -7
  118. package/dist/ui/code-block/code-block.svelte +6 -6
  119. package/dist/ui/collapsible/collapsible-trigger.svelte +1 -1
  120. package/dist/ui/combobox/combobox-content.svelte +1 -1
  121. package/dist/ui/combobox/combobox-empty.svelte +4 -1
  122. package/dist/ui/combobox/combobox-group-heading.svelte +4 -1
  123. package/dist/ui/combobox/combobox-item.svelte +1 -1
  124. package/dist/ui/combobox/combobox-trigger.svelte +2 -2
  125. package/dist/ui/command/command-group-heading.svelte +4 -1
  126. package/dist/ui/command/command-item.svelte +1 -1
  127. package/dist/ui/command/command-link-item.svelte +1 -1
  128. package/dist/ui/command/command-root.svelte +1 -1
  129. package/dist/ui/command-bar/command-bar.svelte +16 -12
  130. package/dist/ui/context-menu/context-menu-checkbox-item.svelte +1 -1
  131. package/dist/ui/context-menu/context-menu-content.svelte +1 -1
  132. package/dist/ui/context-menu/context-menu-group-heading.svelte +4 -1
  133. package/dist/ui/context-menu/context-menu-item.svelte +1 -1
  134. package/dist/ui/context-menu/context-menu-radio-item.svelte +1 -1
  135. package/dist/ui/context-menu/context-menu-sub-content.svelte +1 -1
  136. package/dist/ui/context-menu/context-menu-sub-trigger.svelte +2 -2
  137. package/dist/ui/copy-button/copy-button.svelte +2 -2
  138. package/dist/ui/cycle/cycle.svelte +1 -1
  139. package/dist/ui/date-field/date-field-segment.svelte +1 -1
  140. package/dist/ui/date-picker/date-picker-content.svelte +1 -1
  141. package/dist/ui/date-picker/date-picker-day.svelte +1 -1
  142. package/dist/ui/date-picker/date-picker-head-cell.svelte +1 -1
  143. package/dist/ui/date-picker/date-picker-header.svelte +1 -1
  144. package/dist/ui/date-picker/date-picker-next-button.svelte +1 -1
  145. package/dist/ui/date-picker/date-picker-prev-button.svelte +1 -1
  146. package/dist/ui/date-picker/date-picker-segment.svelte +1 -1
  147. package/dist/ui/date-picker/date-picker-trigger.svelte +2 -2
  148. package/dist/ui/date-range-field/date-range-field-segment.svelte +1 -1
  149. package/dist/ui/date-range-picker/date-range-picker-content.svelte +1 -1
  150. package/dist/ui/date-range-picker/date-range-picker-day.svelte +1 -1
  151. package/dist/ui/date-range-picker/date-range-picker-head-cell.svelte +1 -1
  152. package/dist/ui/date-range-picker/date-range-picker-header.svelte +1 -1
  153. package/dist/ui/date-range-picker/date-range-picker-next-button.svelte +1 -1
  154. package/dist/ui/date-range-picker/date-range-picker-prev-button.svelte +1 -1
  155. package/dist/ui/date-range-picker/date-range-picker-segment.svelte +1 -1
  156. package/dist/ui/date-range-picker/date-range-picker-trigger.svelte +2 -2
  157. package/dist/ui/dialog/dialog-content.svelte +4 -2
  158. package/dist/ui/dialog/dialog-header.svelte +2 -2
  159. package/dist/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte +1 -1
  160. package/dist/ui/dropdown-menu/dropdown-menu-content.svelte +1 -1
  161. package/dist/ui/dropdown-menu/dropdown-menu-group-heading.svelte +4 -1
  162. package/dist/ui/dropdown-menu/dropdown-menu-item.svelte +1 -1
  163. package/dist/ui/dropdown-menu/dropdown-menu-radio-item.svelte +1 -1
  164. package/dist/ui/dropdown-menu/dropdown-menu-sub-content.svelte +1 -1
  165. package/dist/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte +2 -2
  166. package/dist/ui/dropdown-menu/dropdown-menu-trigger.svelte +2 -2
  167. package/dist/ui/file-upload/file-upload.svelte +2 -2
  168. package/dist/ui/input/input.svelte +3 -3
  169. package/dist/ui/input/input.svelte.d.ts +1 -1
  170. package/dist/ui/input/textarea.svelte +1 -1
  171. package/dist/ui/input/variants.d.ts +24 -24
  172. package/dist/ui/input/variants.js +9 -9
  173. package/dist/ui/kv/kv.svelte +2 -2
  174. package/dist/ui/link-preview/link-preview-content.svelte +1 -1
  175. package/dist/ui/menubar/menubar-checkbox-item.svelte +1 -1
  176. package/dist/ui/menubar/menubar-content.svelte +1 -1
  177. package/dist/ui/menubar/menubar-group-heading.svelte +4 -1
  178. package/dist/ui/menubar/menubar-item.svelte +1 -1
  179. package/dist/ui/menubar/menubar-radio-item.svelte +1 -1
  180. package/dist/ui/menubar/menubar-root.svelte +1 -1
  181. package/dist/ui/menubar/menubar-sub-content.svelte +1 -1
  182. package/dist/ui/menubar/menubar-sub-trigger.svelte +2 -2
  183. package/dist/ui/menubar/menubar-trigger.svelte +1 -1
  184. package/dist/ui/meter/meter.svelte +1 -1
  185. package/dist/ui/pagination/pagination-next-button.svelte +1 -1
  186. package/dist/ui/pagination/pagination-prev-button.svelte +1 -1
  187. package/dist/ui/pane/pane-close.svelte +2 -2
  188. package/dist/ui/pane/pane-content.svelte +1 -1
  189. package/dist/ui/pane/pane-handle.svelte +3 -3
  190. package/dist/ui/pane/pane-root.svelte +12 -12
  191. package/dist/ui/pane/pane-tab-list.svelte +1 -1
  192. package/dist/ui/pane/pane-tab-panel.svelte +1 -1
  193. package/dist/ui/pane/pane-tab.svelte +1 -1
  194. package/dist/ui/pane/pane.svelte +1 -1
  195. package/dist/ui/pin-input/pin-input-cell.svelte +1 -1
  196. package/dist/ui/popover/popover-content.svelte +1 -1
  197. package/dist/ui/progress/progress.svelte +1 -1
  198. package/dist/ui/radio-group/radio-group-item.svelte +2 -2
  199. package/dist/ui/rating-group/rating-group-item.svelte +1 -1
  200. package/dist/ui/scroll-area/scroll-area-thumb.svelte +1 -1
  201. package/dist/ui/scroll-area/scroll-area.svelte +1 -1
  202. package/dist/ui/select/select-content.svelte +1 -1
  203. package/dist/ui/select/select-group-heading.svelte +4 -1
  204. package/dist/ui/select/select-item.svelte +1 -1
  205. package/dist/ui/select/select-trigger.svelte +2 -2
  206. package/dist/ui/select/select-value.svelte +1 -1
  207. package/dist/ui/sheet/sheet-content.svelte +3 -3
  208. package/dist/ui/sheet/sheet-content.svelte.d.ts +6 -6
  209. package/dist/ui/skeleton/skeleton.svelte +3 -3
  210. package/dist/ui/skeleton/skeleton.svelte.d.ts +9 -9
  211. package/dist/ui/slider/slider-range.svelte +1 -1
  212. package/dist/ui/slider/slider-thumb.svelte +1 -1
  213. package/dist/ui/step/step-content.svelte +1 -1
  214. package/dist/ui/step/step-summary.svelte +6 -6
  215. package/dist/ui/switch/switch.svelte +3 -3
  216. package/dist/ui/table/table-cell.svelte +1 -1
  217. package/dist/ui/table/table-head-cell.svelte +1 -1
  218. package/dist/ui/time-field/time-field-segment.svelte +1 -1
  219. package/dist/ui/time-range-field/time-range-field-segment.svelte +1 -1
  220. package/dist/ui/toggle-group/toggle-group-item.svelte +1 -1
  221. package/dist/ui/tooltip/tooltip-content.svelte +1 -1
  222. package/dist/ui/video-player/video-player.svelte +44 -44
  223. package/dist/utils/index.js +4 -4
  224. package/package.json +1 -1
@@ -5,10 +5,10 @@
5
5
  // ~2× the vertical inset — see density.css) so words breathe, and both
6
6
  // nesting an xs dismiss button with the concentric xs-inset-T gap so the
7
7
  // even-gap law holds at either size:
8
- // sm (default) — the standalone free chip (h-sm = 2·sp + 6). Switch
8
+ // sm (default) — the standalone free chip (h-chip = 2·sp + 6). Switch
9
9
  // track / KV row tier.
10
10
  // xxs — the pill that nests INSIDE an md container (button,
11
- // select trigger): h-xxs = sp + 10, leaving the 3/5/7
11
+ // select trigger): h-pill = sp + 10, leaving the 3/5/7
12
12
  // concentric gap so it sits evenly inset, not cramped.
13
13
  export const chipVariants = tv({
14
14
  // shrink-0 + nowrap for the same reason Badge carries them: the pill is
@@ -16,19 +16,19 @@
16
16
  base: 'inline-flex shrink-0 items-center bg-fill font-mono text-body leading-none whitespace-nowrap text-fg shadow-(--era-shadow) era-text-trim',
17
17
  variants: {
18
18
  size: {
19
- sm: 'h-(--era-h-sm) min-w-(--era-h-sm) rounded-(--era-rd-sm) pl-(--era-pill-sm)',
20
- xxs: 'h-(--era-h-xxs) min-w-(--era-h-xxs) rounded-(--era-rd-xxs) pl-(--era-pill-xxs)'
19
+ sm: 'h-(--era-h-chip) min-w-(--era-h-chip) rounded-(--era-rd-chip) pl-(--era-chip-px)',
20
+ xxs: 'h-(--era-h-pill) min-w-(--era-h-pill) rounded-(--era-rd-pill) pl-(--era-pill-px)'
21
21
  },
22
22
  dismissible: { true: '', false: '' }
23
23
  },
24
24
  compoundVariants: [
25
25
  // Text-only: symmetric pill padding, inter-element gap for a lead icon.
26
- { size: 'sm', dismissible: false, class: 'gap-(--era-gap) pr-(--era-pill-sm)' },
27
- { size: 'xxs', dismissible: false, class: 'gap-(--era-gap) pr-(--era-pill-xxs)' },
26
+ { size: 'sm', dismissible: false, class: 'gap-(--era-gap) pr-(--era-chip-px)' },
27
+ { size: 'xxs', dismissible: false, class: 'gap-(--era-gap) pr-(--era-pill-px)' },
28
28
  // Dismissible, two geometries because the two tiers afford different ones:
29
29
  //
30
30
  // sm — the xxs-tier button NESTS, with its concentric gap mirrored as
31
- // the right padding (--era-xxs-inset-sm). 18px of hit target, and
31
+ // the right padding (--era-pill-inset-chip). 18px of hit target, and
32
32
  // since the dismiss glyph is 12px in every box, the ink sits where
33
33
  // the old 14px button put it — (h − glyph)/2 telescopes.
34
34
  // xxs — nesting has run out of road: density.css's own note says xxs
@@ -38,8 +38,12 @@
38
38
  // (pr-0; the button supplies the right edge). Flush means offset
39
39
  // zero, and at offset zero concentric radius = the chip's own, so
40
40
  // the cap shares rd-xxs exactly rather than approximating it.
41
- { size: 'sm', dismissible: true, class: 'gap-(--era-xxs-inset-sm) pr-(--era-xxs-inset-sm)' },
42
- { size: 'xxs', dismissible: true, class: 'gap-(--era-xs-inset-xxs) pr-0' }
41
+ {
42
+ size: 'sm',
43
+ dismissible: true,
44
+ class: 'gap-(--era-pill-inset-chip) pr-(--era-pill-inset-chip)'
45
+ },
46
+ { size: 'xxs', dismissible: true, class: 'gap-(--era-icon-inset-pill) pr-0' }
43
47
  ],
44
48
  defaultVariants: { size: 'sm', dismissible: false }
45
49
  });
@@ -61,7 +65,7 @@
61
65
  ...restProps
62
66
  }: HTMLAttributes<HTMLDivElement> & {
63
67
  ref?: HTMLDivElement | null;
64
- /** `sm` (default) is the standalone free chip; `xxs` is the smaller pill
68
+ /** `sm` (default) is the standalone free chip; `pill` is the smaller pill
65
69
  * that nests inside an md container (a select trigger, a button). */
66
70
  size?: 'sm' | 'xxs';
67
71
  ondismiss?: () => void;
@@ -1,7 +1,7 @@
1
1
  export declare const chipVariants: import("tailwind-variants").TVReturnType<{
2
2
  size: {
3
- sm: "h-(--era-h-sm) min-w-(--era-h-sm) rounded-(--era-rd-sm) pl-(--era-pill-sm)";
4
- xxs: "h-(--era-h-xxs) min-w-(--era-h-xxs) rounded-(--era-rd-xxs) pl-(--era-pill-xxs)";
3
+ sm: "h-(--era-h-chip) min-w-(--era-h-chip) rounded-(--era-rd-chip) pl-(--era-chip-px)";
4
+ xxs: "h-(--era-h-pill) min-w-(--era-h-pill) rounded-(--era-rd-pill) pl-(--era-pill-px)";
5
5
  };
6
6
  dismissible: {
7
7
  true: "";
@@ -9,8 +9,8 @@ export declare const chipVariants: import("tailwind-variants").TVReturnType<{
9
9
  };
10
10
  }, undefined, "inline-flex shrink-0 items-center bg-fill font-mono text-body leading-none whitespace-nowrap text-fg shadow-(--era-shadow) era-text-trim", {
11
11
  size: {
12
- sm: "h-(--era-h-sm) min-w-(--era-h-sm) rounded-(--era-rd-sm) pl-(--era-pill-sm)";
13
- xxs: "h-(--era-h-xxs) min-w-(--era-h-xxs) rounded-(--era-rd-xxs) pl-(--era-pill-xxs)";
12
+ sm: "h-(--era-h-chip) min-w-(--era-h-chip) rounded-(--era-rd-chip) pl-(--era-chip-px)";
13
+ xxs: "h-(--era-h-pill) min-w-(--era-h-pill) rounded-(--era-rd-pill) pl-(--era-pill-px)";
14
14
  };
15
15
  dismissible: {
16
16
  true: "";
@@ -18,8 +18,8 @@ export declare const chipVariants: import("tailwind-variants").TVReturnType<{
18
18
  };
19
19
  }, undefined, import("tailwind-variants").TVReturnTypeLike<{
20
20
  size: {
21
- sm: "h-(--era-h-sm) min-w-(--era-h-sm) rounded-(--era-rd-sm) pl-(--era-pill-sm)";
22
- xxs: "h-(--era-h-xxs) min-w-(--era-h-xxs) rounded-(--era-rd-xxs) pl-(--era-pill-xxs)";
21
+ sm: "h-(--era-h-chip) min-w-(--era-h-chip) rounded-(--era-rd-chip) pl-(--era-chip-px)";
22
+ xxs: "h-(--era-h-pill) min-w-(--era-h-pill) rounded-(--era-rd-pill) pl-(--era-pill-px)";
23
23
  };
24
24
  dismissible: {
25
25
  true: "";
@@ -30,7 +30,7 @@ import type { Snippet } from 'svelte';
30
30
  import type { HTMLAttributes } from 'svelte/elements';
31
31
  type $$ComponentProps = HTMLAttributes<HTMLDivElement> & {
32
32
  ref?: HTMLDivElement | null;
33
- /** `sm` (default) is the standalone free chip; `xxs` is the smaller pill
33
+ /** `sm` (default) is the standalone free chip; `pill` is the smaller pill
34
34
  * that nests inside an md container (a select trigger, a button). */
35
35
  size?: 'sm' | 'xxs';
36
36
  ondismiss?: () => void;
@@ -33,19 +33,19 @@
33
33
 
34
34
  The radius stays rd-lg where the field's is rd-md, and that is the one
35
35
  deliberate difference: a container's radius follows its corner REGION, and
36
- this corner holds the sm-tier copy button at --era-inset-md, so rd-sm + that
36
+ this corner holds the sm-tier copy button at --era-inset-control, so rd-sm + that
37
37
  inset is what the corner has to be. An md radius here would leave the button
38
38
  visibly off its curve. -->
39
39
  <div
40
40
  bind:this={ref}
41
41
  class={cn(
42
- 'relative rounded-(--era-rd-lg) bg-(--era-field-bg) shadow-(--era-shadow-well)',
42
+ 'relative rounded-(--era-rd-bar) bg-(--era-field-bg) shadow-(--era-shadow-well)',
43
43
  className
44
44
  )}
45
45
  {...restProps}
46
46
  >
47
47
  <pre
48
- class="overflow-x-auto px-(--era-field-px) py-(--era-inset-md) pr-[calc(var(--era-sm-inset-lg)+var(--era-h-sm)+var(--era-field-px))] font-mono text-body leading-body text-fg"><code
48
+ class="overflow-x-auto px-(--era-field-px) py-(--era-inset-control) pr-[calc(var(--era-chip-inset-bar)+var(--era-h-chip)+var(--era-field-px))] font-mono text-body leading-body text-fg"><code
49
49
  >{#if children}{@render children()}{:else}{code}{/if}</code
50
50
  ></pre>
51
51
  {#if copyable}
@@ -53,16 +53,16 @@
53
53
  long lines would show through a chromeless one. It carries the block's
54
54
  OWN fill, so at rest it is pixel-identical to no background — it just
55
55
  occludes whatever scrolls beneath. -->
56
- <!-- --era-sm-inset-lg on BOTH axes: an sm control in an rd-lg corner, and
56
+ <!-- --era-chip-inset-bar on BOTH axes: an sm control in an rd-lg corner, and
57
57
  the token IS the concentric inset for that pairing (rd-lg − rd-sm =
58
- (h-lg − h-sm)/2 — the corner identity). The old offsets centred the
58
+ (h-bar − h-chip)/2 — the corner identity). The old offsets centred the
59
59
  button against the first TEXT LINE with the line-height constant baked
60
60
  in, which broke the moment the leading changed and was never the
61
61
  corner's own law: the button sat 4.75px from the top and 6.15px from
62
62
  the right edge at dense, visibly off the curve. -->
63
63
  <CopyButton
64
64
  text={copyText}
65
- class="absolute top-(--era-sm-inset-lg) right-(--era-sm-inset-lg) bg-(--era-field-bg)"
65
+ class="absolute top-(--era-chip-inset-bar) right-(--era-chip-inset-bar) bg-(--era-field-bg)"
66
66
  />
67
67
  {/if}
68
68
  </div>
@@ -13,7 +13,7 @@
13
13
  <Collapsible.Trigger
14
14
  bind:ref
15
15
  class={cn(
16
- 'flex h-(--era-h-md) w-full items-center rounded-(--era-rd-md) px-(--era-inset-md) text-body text-fg hover:bg-(--era-highlight) focus:outline-none disabled:opacity-50',
16
+ 'flex h-(--era-h-control) w-full items-center rounded-(--era-rd-control) px-(--era-inset-control) text-body text-fg hover:bg-(--era-highlight) focus:outline-none disabled:opacity-50',
17
17
  className
18
18
  )}
19
19
  {...restProps}
@@ -15,7 +15,7 @@
15
15
  bind:ref
16
16
  align="start"
17
17
  class={cn(
18
- 'z-50 w-max min-w-(--bits-combobox-anchor-width) overflow-hidden rounded-(--era-rd-md) bg-(--era-surface-bg-elevated) p-(--era-panel-inset) shadow-(--era-shadow-lg) glass-blur data-[side=bottom]:rounded-t-none data-[side=top]:rounded-b-none',
18
+ 'z-50 w-max min-w-(--bits-combobox-anchor-width) overflow-hidden rounded-(--era-rd-control) bg-(--era-surface-bg-elevated) p-(--era-panel-inset) shadow-(--era-shadow-lg) glass-blur data-[side=bottom]:rounded-t-none data-[side=top]:rounded-b-none',
19
19
  className
20
20
  )}
21
21
  {sideOffset}
@@ -12,7 +12,10 @@
12
12
  </script>
13
13
 
14
14
  <div
15
- class={cn('flex h-(--era-h-md) items-center px-(--era-inset-md) text-body text-muted', className)}
15
+ class={cn(
16
+ 'flex h-(--era-h-control) items-center px-(--era-inset-control) text-body text-muted',
17
+ className
18
+ )}
16
19
  >
17
20
  {#if children}
18
21
  {@render children()}
@@ -12,7 +12,10 @@
12
12
 
13
13
  <Combobox.GroupHeading
14
14
  bind:ref
15
- class={cn('flex h-(--era-h-md) items-center px-(--era-inset-md) text-body text-muted', className)}
15
+ class={cn(
16
+ 'flex h-(--era-h-control) items-center px-(--era-inset-control) text-body text-muted',
17
+ className
18
+ )}
16
19
  {...restProps}
17
20
  >
18
21
  {@render children?.()}
@@ -10,7 +10,7 @@
10
10
  <Combobox.Item
11
11
  bind:ref
12
12
  class={cn(
13
- 'flex h-(--era-h-md) cursor-pointer items-center rounded-(--era-item-rd) px-(--era-inset-md) text-body text-fg data-[highlighted]:bg-(--era-highlight) data-[highlighted]:shadow-(--era-highlight-shadow)',
13
+ 'flex h-(--era-h-control) cursor-pointer items-center rounded-(--era-item-rd) px-(--era-inset-control) text-body text-fg data-[highlighted]:bg-(--era-highlight) data-[highlighted]:shadow-(--era-highlight-shadow)',
14
14
  className
15
15
  )}
16
16
  {...restProps}
@@ -14,7 +14,7 @@
14
14
  <Combobox.Trigger
15
15
  bind:ref
16
16
  class={cn(
17
- 'flex size-(--era-h-md) shrink-0 items-center justify-center rounded-(--era-rd-md) text-muted focus:outline-none',
17
+ 'flex size-(--era-h-control) shrink-0 items-center justify-center rounded-(--era-rd-control) text-muted focus:outline-none',
18
18
  className
19
19
  )}
20
20
  {...restProps}
@@ -22,6 +22,6 @@
22
22
  {#if children}
23
23
  {@render children()}
24
24
  {:else}
25
- <ChevronDown class="size-(--era-h-xs)" />
25
+ <ChevronDown class="size-(--era-h-icon)" />
26
26
  {/if}
27
27
  </Combobox.Trigger>
@@ -11,6 +11,9 @@
11
11
 
12
12
  <Command.GroupHeading
13
13
  bind:ref
14
- class={cn('flex h-(--era-h-md) items-center px-(--era-inset-md) text-body text-muted', className)}
14
+ class={cn(
15
+ 'flex h-(--era-h-control) items-center px-(--era-inset-control) text-body text-muted',
16
+ className
17
+ )}
15
18
  {...restProps}
16
19
  />
@@ -8,7 +8,7 @@
8
8
  <Command.Item
9
9
  bind:ref
10
10
  class={cn(
11
- 'flex h-(--era-h-md) cursor-pointer items-center gap-(--era-gap) rounded-(--era-rd-md) px-(--era-inset-md) text-body era-text-trim text-fg outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[selected]:bg-(--era-highlight)',
11
+ 'flex h-(--era-h-control) cursor-pointer items-center gap-(--era-gap) rounded-(--era-rd-control) px-(--era-inset-control) text-body era-text-trim text-fg outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[selected]:bg-(--era-highlight)',
12
12
  className
13
13
  )}
14
14
  {...restProps}
@@ -8,7 +8,7 @@
8
8
  <Command.LinkItem
9
9
  bind:ref
10
10
  class={cn(
11
- 'flex h-(--era-h-md) cursor-pointer items-center gap-(--era-gap) rounded-(--era-rd-md) px-(--era-inset-md) text-body era-text-trim text-fg no-underline outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[selected]:bg-(--era-highlight)',
11
+ 'flex h-(--era-h-control) cursor-pointer items-center gap-(--era-gap) rounded-(--era-rd-control) px-(--era-inset-control) text-body era-text-trim text-fg no-underline outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[selected]:bg-(--era-highlight)',
12
12
  className
13
13
  )}
14
14
  {...restProps}
@@ -24,7 +24,7 @@
24
24
  // glass-blur, like every other floating panel (menus, dialogs, pickers):
25
25
  // inert on opaque surfaces, blurs the backdrop when the palette floats.
26
26
  !bare &&
27
- 'overflow-hidden rounded-(--era-rd-lg) border border-(color:--era-border-color) bg-(--era-surface-bg) p-(--era-gap) shadow-(--era-shadow-lg) glass-blur',
27
+ 'overflow-hidden rounded-(--era-rd-bar) border border-(color:--era-border-color) bg-(--era-surface-bg) p-(--era-gap) shadow-(--era-shadow-lg) glass-blur',
28
28
  className
29
29
  )}
30
30
  {...restProps}
@@ -190,25 +190,27 @@
190
190
  glass-blur: a flat sheet on flat (shadow resolves to none), the chisel frame
191
191
  on bevel, frost on glass — so it reads as "dedicated" on every surface, not
192
192
  an undifferentiated rectangle. -->
193
- <div class={cn('relative flex h-(--era-h-md) w-full min-w-0 items-center font-mono', className)}>
194
- <ChevronRight class="mx-(--era-gap) size-(--era-h-xs) shrink-0 text-fg" />
193
+ <div
194
+ class={cn('relative flex h-(--era-h-control) w-full min-w-0 items-center font-mono', className)}
195
+ >
196
+ <ChevronRight class="mx-(--era-gap) size-(--era-h-icon) shrink-0 text-fg" />
195
197
 
196
198
  <!-- Completed segments: the locked prefix. Backspace (empty input) pops. -->
197
199
  <!-- ONE chevron, one size, everywhere in the bar: the prompt's, the
198
- breadcrumb separators', and the submenu indicator's are all h-xs — the
200
+ breadcrumb separators', and the submenu indicator's are all h-icon — the
199
201
  icon tier every other glyph in the bar sits on. They differ only in
200
202
  ink (fg for the live prompt, muted for the locked path), so
201
203
  "> workspace > which workspace" reads as one repeated mark, not three
202
204
  sizes of it. -->
203
205
  {#each stack as seg (seg.value)}
204
206
  <span class="shrink-0 text-body text-muted">{seg.label}</span>
205
- <ChevronRight class="mx-(--era-gap) size-(--era-h-xs) shrink-0 text-muted" />
207
+ <ChevronRight class="mx-(--era-gap) size-(--era-h-icon) shrink-0 text-muted" />
206
208
  {/each}
207
209
 
208
210
  <!-- ONE source of truth for the field's type: font size and text colour live on
209
211
  the container, and both the input and the ghost mirror inherit them. Change
210
212
  the field's look here and the ghost follows automatically. -->
211
- <!-- leading-(--era-h-md) is the whole trick for vertical alignment: line-height
213
+ <!-- leading-(--era-h-control) is the whole trick for vertical alignment: line-height
212
214
  equals the field height, so a single line of text fills the box and centres
213
215
  itself by the font's own metrics. The input and the ghost mirror BOTH inherit
214
216
  it, so they centre by the identical mechanism — no native-input-centering vs
@@ -217,9 +219,9 @@
217
219
  MIRROR that actually paints it did not — so in a host narrower than the
218
220
  prompt line (placeholder included), the text bled past the bar's rounded
219
221
  end where any real input would clip. Safe with the line-height centring:
220
- the box is the bar's full h-md, well above the ink (clipped-glyphs' law). -->
222
+ the box is the bar's full h-control, well above the ink (clipped-glyphs' law). -->
221
223
  <div
222
- class="relative h-full min-w-0 flex-1 overflow-hidden text-body leading-(--era-h-md) text-bright"
224
+ class="relative h-full min-w-0 flex-1 overflow-hidden text-body leading-(--era-h-control) text-bright"
223
225
  >
224
226
  <!-- Transparent input: it owns editing and the caret only, so the visible text
225
227
  can come entirely from the mirror below (see it for why). Everything but
@@ -270,7 +272,9 @@
270
272
  onmousedown={(e) => e.preventDefault()}
271
273
  >
272
274
  {#if !filtered.length}
273
- <div class="flex h-(--era-h-md) items-center px-(--era-inset-md) text-body text-muted">
275
+ <div
276
+ class="flex h-(--era-h-control) items-center px-(--era-inset-control) text-body text-muted"
277
+ >
274
278
  {empty}
275
279
  </div>
276
280
  {:else}
@@ -286,7 +290,7 @@
286
290
  tabindex={-1}
287
291
  aria-selected={i === selectedIndex}
288
292
  class={cn(
289
- 'flex h-(--era-h-md) cursor-default items-center gap-(--era-gap) px-(--era-inset-md) text-body era-text-trim whitespace-nowrap',
293
+ 'flex h-(--era-h-control) cursor-default items-center gap-(--era-gap) px-(--era-inset-control) text-body era-text-trim whitespace-nowrap',
290
294
  i === selectedIndex ? 'bg-3 text-bright' : 'text-fg'
291
295
  )}
292
296
  onclick={() => choose(item)}
@@ -295,14 +299,14 @@
295
299
  <span class="shrink-0">{item.icon}</span>
296
300
  {:else if item.icon}
297
301
  {@const Icon = item.icon}
298
- <Icon class="size-(--era-h-xs) shrink-0 text-muted" />
302
+ <Icon class="size-(--era-h-icon) shrink-0 text-muted" />
299
303
  {/if}
300
304
  <span class="shrink-0">{item.label}</span>
301
305
  {#if item.items}
302
- <ChevronRight class="size-(--era-h-xs) shrink-0 text-muted" />
306
+ <ChevronRight class="size-(--era-h-icon) shrink-0 text-muted" />
303
307
  {/if}
304
308
  {#if item.sublabel}
305
- <span class="ml-auto truncate pl-(--era-inset-md) text-body text-muted">
309
+ <span class="ml-auto truncate pl-(--era-inset-control) text-body text-muted">
306
310
  {item.sublabel}
307
311
  </span>
308
312
  {/if}
@@ -14,7 +14,7 @@
14
14
  bind:ref
15
15
  bind:checked
16
16
  class={cn(
17
- 'flex h-(--era-h-md) cursor-pointer items-center rounded-(--era-item-rd) px-(--era-inset-md) text-body text-fg data-[disabled]:cursor-not-allowed data-[disabled]:opacity-50 data-[highlighted]:bg-(--era-highlight) data-[highlighted]:shadow-(--era-highlight-shadow)',
17
+ 'flex h-(--era-h-control) cursor-pointer items-center rounded-(--era-item-rd) px-(--era-inset-control) text-body text-fg data-[disabled]:cursor-not-allowed data-[disabled]:opacity-50 data-[highlighted]:bg-(--era-highlight) data-[highlighted]:shadow-(--era-highlight-shadow)',
18
18
  className
19
19
  )}
20
20
  {...restProps}
@@ -21,7 +21,7 @@
21
21
  // 2px frame that stops a full-width highlight from breaking their chrome.
22
22
  // A fixed gutter was tried here and rejected: it padded flat menus too.
23
23
  class={cn(
24
- 'z-50 w-max overflow-hidden rounded-(--era-rd-md) bg-(--era-surface-bg-elevated) p-(--era-panel-inset) shadow-(--era-shadow-lg) glass-blur',
24
+ 'z-50 w-max overflow-hidden rounded-(--era-rd-control) bg-(--era-surface-bg-elevated) p-(--era-panel-inset) shadow-(--era-shadow-lg) glass-blur',
25
25
  className
26
26
  )}
27
27
  {sideOffset}
@@ -11,6 +11,9 @@
11
11
 
12
12
  <ContextMenu.GroupHeading
13
13
  bind:ref
14
- class={cn('flex h-(--era-h-md) items-center px-(--era-inset-md) text-body text-muted', className)}
14
+ class={cn(
15
+ 'flex h-(--era-h-control) items-center px-(--era-inset-control) text-body text-muted',
16
+ className
17
+ )}
15
18
  {...restProps}
16
19
  />
@@ -13,7 +13,7 @@
13
13
  <ContextMenu.Item
14
14
  bind:ref
15
15
  class={cn(
16
- 'flex h-(--era-h-md) cursor-pointer items-center gap-(--era-gap) rounded-(--era-item-rd) px-(--era-inset-md) text-body text-fg data-[disabled]:cursor-not-allowed data-[disabled]:opacity-50 data-[highlighted]:bg-(--era-highlight) data-[highlighted]:shadow-(--era-highlight-shadow)',
16
+ 'flex h-(--era-h-control) cursor-pointer items-center gap-(--era-gap) rounded-(--era-item-rd) px-(--era-inset-control) text-body text-fg data-[disabled]:cursor-not-allowed data-[disabled]:opacity-50 data-[highlighted]:bg-(--era-highlight) data-[highlighted]:shadow-(--era-highlight-shadow)',
17
17
  className
18
18
  )}
19
19
  {...restProps}
@@ -12,7 +12,7 @@
12
12
  <ContextMenu.RadioItem
13
13
  bind:ref
14
14
  class={cn(
15
- 'flex h-(--era-h-md) cursor-pointer items-center rounded-(--era-item-rd) px-(--era-inset-md) text-body text-fg data-[disabled]:cursor-not-allowed data-[disabled]:opacity-50 data-[highlighted]:bg-(--era-highlight) data-[highlighted]:shadow-(--era-highlight-shadow)',
15
+ 'flex h-(--era-h-control) cursor-pointer items-center rounded-(--era-item-rd) px-(--era-inset-control) text-body text-fg data-[disabled]:cursor-not-allowed data-[disabled]:opacity-50 data-[highlighted]:bg-(--era-highlight) data-[highlighted]:shadow-(--era-highlight-shadow)',
16
16
  className
17
17
  )}
18
18
  {...restProps}
@@ -15,7 +15,7 @@
15
15
  <ContextMenu.SubContent
16
16
  bind:ref
17
17
  class={cn(
18
- 'z-50 w-max overflow-hidden rounded-(--era-rd-md) bg-(--era-surface-bg-elevated) p-(--era-panel-inset) shadow-(--era-shadow-lg) glass-blur',
18
+ 'z-50 w-max overflow-hidden rounded-(--era-rd-control) bg-(--era-surface-bg-elevated) p-(--era-panel-inset) shadow-(--era-shadow-lg) glass-blur',
19
19
  className
20
20
  )}
21
21
  {sideOffset}
@@ -14,11 +14,11 @@
14
14
  <ContextMenu.SubTrigger
15
15
  bind:ref
16
16
  class={cn(
17
- 'flex h-(--era-h-md) cursor-pointer items-center justify-between gap-(--era-xs-inset-sm) rounded-(--era-item-rd) px-(--era-inset-md) text-body text-fg data-[highlighted]:bg-(--era-highlight) data-[highlighted]:shadow-(--era-highlight-shadow) data-[state=open]:bg-hover',
17
+ 'flex h-(--era-h-control) cursor-pointer items-center justify-between gap-(--era-icon-inset-chip) rounded-(--era-item-rd) px-(--era-inset-control) text-body text-fg data-[highlighted]:bg-(--era-highlight) data-[highlighted]:shadow-(--era-highlight-shadow) data-[state=open]:bg-hover',
18
18
  className
19
19
  )}
20
20
  {...restProps}
21
21
  >
22
22
  {@render children?.()}
23
- <ChevronRight class="size-(--era-h-xs) text-muted" />
23
+ <ChevronRight class="size-(--era-h-icon) text-muted" />
24
24
  </ContextMenu.SubTrigger>
@@ -75,7 +75,7 @@
75
75
  // leaving one does the reverse; timing rides the motion axis, so the swap
76
76
  // snaps at instant, is decisive at normal, and overshoots at extra.
77
77
  const iconBase =
78
- 'absolute inset-0 size-(--era-h-xs) transition-[opacity,scale,filter] duration-(--era-duration) ease-(--era-ease)';
78
+ 'absolute inset-0 size-(--era-h-icon) transition-[opacity,scale,filter] duration-(--era-duration) ease-(--era-ease)';
79
79
  const iconIn = 'scale-100 opacity-100 blur-none';
80
80
  const iconOut = 'scale-25 opacity-0 blur-xs';
81
81
  </script>
@@ -89,7 +89,7 @@
89
89
  onclick={copy}
90
90
  {...restProps}
91
91
  >
92
- <span class="relative block size-(--era-h-xs) shrink-0">
92
+ <span class="relative block size-(--era-h-icon) shrink-0">
93
93
  <IdleIcon class={cn(iconBase, status === 'idle' ? iconIn : iconOut)} />
94
94
  <SuccessIcon class={cn(iconBase, 'text-success', status === 'success' ? iconIn : iconOut)} />
95
95
  <FailureIcon
@@ -140,7 +140,7 @@
140
140
  {@render children(option)}
141
141
  {:else if option.icon}
142
142
  {@const Icon = option.icon}
143
- <Icon class="size-(--era-h-xs) shrink-0" />
143
+ <Icon class="size-(--era-h-icon) shrink-0" />
144
144
  {:else}
145
145
  {option.label}
146
146
  {/if}
@@ -8,7 +8,7 @@
8
8
  <DateField.Segment
9
9
  bind:ref
10
10
  class={cn(
11
- 'inline-flex h-(--era-h-sm) items-center rounded-(--era-rd-sm) px-[calc(var(--era-sp)/2)] focus:bg-(--era-highlight) focus:text-bright focus:outline-none aria-[valuetext=Empty]:text-muted data-[segment=literal]:text-muted',
11
+ 'inline-flex h-(--era-h-chip) items-center rounded-(--era-rd-chip) px-[calc(var(--era-sp)/2)] focus:bg-(--era-highlight) focus:text-bright focus:outline-none aria-[valuetext=Empty]:text-muted data-[segment=literal]:text-muted',
12
12
  className
13
13
  )}
14
14
  {...restProps}
@@ -15,7 +15,7 @@
15
15
  bind:ref
16
16
  align="start"
17
17
  class={cn(
18
- 'z-50 rounded-(--era-rd-lg) bg-(--era-surface-bg-elevated) p-(--era-pad-lg) shadow-(--era-shadow-lg) glass-blur',
18
+ 'z-50 rounded-(--era-rd-bar) bg-(--era-surface-bg-elevated) p-(--era-pad-content) shadow-(--era-shadow-lg) glass-blur',
19
19
  className
20
20
  )}
21
21
  {sideOffset}
@@ -8,7 +8,7 @@
8
8
  <DatePicker.Day
9
9
  bind:ref
10
10
  class={cn(
11
- 'inline-flex size-(--era-h-md) cursor-default items-center justify-center rounded-(--era-rd-md) text-body text-fg hover:bg-(--era-highlight) focus:outline-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[outside-month]:pointer-events-none data-[outside-month]:text-muted/40 data-[selected]:bg-hover data-[selected]:text-bright data-[unavailable]:text-muted data-[unavailable]:line-through',
11
+ 'inline-flex size-(--era-h-control) cursor-default items-center justify-center rounded-(--era-rd-control) text-body text-fg hover:bg-(--era-highlight) focus:outline-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[outside-month]:pointer-events-none data-[outside-month]:text-muted/40 data-[selected]:bg-hover data-[selected]:text-bright data-[unavailable]:text-muted data-[unavailable]:line-through',
12
12
  className
13
13
  )}
14
14
  {...restProps}
@@ -12,7 +12,7 @@
12
12
  <DatePicker.HeadCell
13
13
  bind:ref
14
14
  class={cn(
15
- 'flex size-(--era-h-md) items-center justify-center text-body font-normal text-muted',
15
+ 'flex size-(--era-h-control) items-center justify-center text-body font-normal text-muted',
16
16
  className
17
17
  )}
18
18
  {...restProps}
@@ -7,6 +7,6 @@
7
7
 
8
8
  <DatePicker.Header
9
9
  bind:ref
10
- class={cn('flex h-(--era-h-md) items-center justify-between gap-(--era-gap)', className)}
10
+ class={cn('flex h-(--era-h-control) items-center justify-between gap-(--era-gap)', className)}
11
11
  {...restProps}
12
12
  />
@@ -23,7 +23,7 @@
23
23
  {#if children}
24
24
  {@render children()}
25
25
  {:else}
26
- <ChevronRight class="size-(--era-h-xs)" />
26
+ <ChevronRight class="size-(--era-h-icon)" />
27
27
  {/if}
28
28
  </Button>
29
29
  {/snippet}
@@ -23,7 +23,7 @@
23
23
  {#if children}
24
24
  {@render children()}
25
25
  {:else}
26
- <ChevronLeft class="size-(--era-h-xs)" />
26
+ <ChevronLeft class="size-(--era-h-icon)" />
27
27
  {/if}
28
28
  </Button>
29
29
  {/snippet}
@@ -8,7 +8,7 @@
8
8
  <DatePicker.Segment
9
9
  bind:ref
10
10
  class={cn(
11
- 'inline-flex h-(--era-h-sm) items-center rounded-(--era-rd-sm) px-[calc(var(--era-sp)/2)] focus:bg-(--era-highlight) focus:text-bright focus:outline-none aria-[valuetext=Empty]:text-muted data-[segment=literal]:text-muted',
11
+ 'inline-flex h-(--era-h-chip) items-center rounded-(--era-rd-chip) px-[calc(var(--era-sp)/2)] focus:bg-(--era-highlight) focus:text-bright focus:outline-none aria-[valuetext=Empty]:text-muted data-[segment=literal]:text-muted',
12
12
  className
13
13
  )}
14
14
  {...restProps}
@@ -14,7 +14,7 @@
14
14
  <DatePicker.Trigger
15
15
  bind:ref
16
16
  class={cn(
17
- 'ml-auto flex size-(--era-h-sm) shrink-0 items-center justify-center rounded-(--era-rd-sm) text-muted hover:bg-(--era-highlight) hover:text-fg focus:outline-none',
17
+ 'ml-auto flex size-(--era-h-chip) shrink-0 items-center justify-center rounded-(--era-rd-chip) text-muted hover:bg-(--era-highlight) hover:text-fg focus:outline-none',
18
18
  className
19
19
  )}
20
20
  {...restProps}
@@ -22,6 +22,6 @@
22
22
  {#if children}
23
23
  {@render children()}
24
24
  {:else}
25
- <CalendarDays class="size-(--era-h-xs)" />
25
+ <CalendarDays class="size-(--era-h-icon)" />
26
26
  {/if}
27
27
  </DatePicker.Trigger>
@@ -12,7 +12,7 @@
12
12
  <DateRangeField.Segment
13
13
  bind:ref
14
14
  class={cn(
15
- 'inline-flex h-(--era-h-sm) items-center rounded-(--era-rd-sm) px-[calc(var(--era-sp)/2)] focus:bg-(--era-highlight) focus:text-bright focus:outline-none aria-[valuetext=Empty]:text-muted data-[segment=literal]:text-muted',
15
+ 'inline-flex h-(--era-h-chip) items-center rounded-(--era-rd-chip) px-[calc(var(--era-sp)/2)] focus:bg-(--era-highlight) focus:text-bright focus:outline-none aria-[valuetext=Empty]:text-muted data-[segment=literal]:text-muted',
16
16
  className
17
17
  )}
18
18
  {...restProps}
@@ -15,7 +15,7 @@
15
15
  bind:ref
16
16
  align="start"
17
17
  class={cn(
18
- 'z-50 rounded-(--era-rd-lg) bg-(--era-surface-bg-elevated) p-(--era-pad-lg) shadow-(--era-shadow-lg) glass-blur',
18
+ 'z-50 rounded-(--era-rd-bar) bg-(--era-surface-bg-elevated) p-(--era-pad-content) shadow-(--era-shadow-lg) glass-blur',
19
19
  className
20
20
  )}
21
21
  {sideOffset}
@@ -12,7 +12,7 @@
12
12
  <DateRangePicker.Day
13
13
  bind:ref
14
14
  class={cn(
15
- 'inline-flex size-(--era-h-md) cursor-default items-center justify-center rounded-(--era-rd-md) text-body text-fg hover:bg-(--era-highlight) focus:outline-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[highlighted]:bg-(--era-highlight) data-[highlighted]:shadow-(--era-highlight-shadow) data-[outside-month]:pointer-events-none data-[outside-month]:text-muted/40 data-[range-end]:bg-primary data-[range-end]:text-primary-fg data-[range-start]:bg-primary data-[range-start]:text-primary-fg data-[selected]:bg-hover data-[selected]:text-bright data-[unavailable]:text-muted data-[unavailable]:line-through',
15
+ 'inline-flex size-(--era-h-control) cursor-default items-center justify-center rounded-(--era-rd-control) text-body text-fg hover:bg-(--era-highlight) focus:outline-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[highlighted]:bg-(--era-highlight) data-[highlighted]:shadow-(--era-highlight-shadow) data-[outside-month]:pointer-events-none data-[outside-month]:text-muted/40 data-[range-end]:bg-primary data-[range-end]:text-primary-fg data-[range-start]:bg-primary data-[range-start]:text-primary-fg data-[selected]:bg-hover data-[selected]:text-bright data-[unavailable]:text-muted data-[unavailable]:line-through',
16
16
  className
17
17
  )}
18
18
  {...restProps}
@@ -12,7 +12,7 @@
12
12
  <DateRangePicker.HeadCell
13
13
  bind:ref
14
14
  class={cn(
15
- 'flex size-(--era-h-md) items-center justify-center text-body font-normal text-muted',
15
+ 'flex size-(--era-h-control) items-center justify-center text-body font-normal text-muted',
16
16
  className
17
17
  )}
18
18
  {...restProps}
@@ -11,6 +11,6 @@
11
11
 
12
12
  <DateRangePicker.Header
13
13
  bind:ref
14
- class={cn('flex h-(--era-h-md) items-center justify-between gap-(--era-gap)', className)}
14
+ class={cn('flex h-(--era-h-control) items-center justify-between gap-(--era-gap)', className)}
15
15
  {...restProps}
16
16
  />
@@ -23,7 +23,7 @@
23
23
  {#if children}
24
24
  {@render children()}
25
25
  {:else}
26
- <ChevronRight class="size-(--era-h-xs)" />
26
+ <ChevronRight class="size-(--era-h-icon)" />
27
27
  {/if}
28
28
  </Button>
29
29
  {/snippet}
@@ -23,7 +23,7 @@
23
23
  {#if children}
24
24
  {@render children()}
25
25
  {:else}
26
- <ChevronLeft class="size-(--era-h-xs)" />
26
+ <ChevronLeft class="size-(--era-h-icon)" />
27
27
  {/if}
28
28
  </Button>
29
29
  {/snippet}