@threadlabs/looma 0.5.2 → 0.6.0-rc.1

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 (174) hide show
  1. package/components/shared/overlay.js +3 -0
  2. package/components/ui-button/ui-button.html +14 -14
  3. package/components/ui-callout/ui-callout.html +1 -1
  4. package/components/ui-checkbox/ui-checkbox.html +1 -1
  5. package/components/ui-cluster/ui-cluster.html +6 -6
  6. package/components/ui-combobox/ui-combobox.html +23 -23
  7. package/components/ui-container/ui-container.html +4 -4
  8. package/components/ui-context-menu/ui-context-menu.html +2 -2
  9. package/components/ui-dialog/ui-dialog.html +12 -12
  10. package/components/ui-disclosure/ui-disclosure.html +19 -4
  11. package/components/ui-editable/ui-editable.html +6 -6
  12. package/components/ui-editor-insert-table-grid/ui-editor-insert-table-grid.html +20 -20
  13. package/components/ui-editor-mention-menu/ui-editor-mention-menu.html +25 -25
  14. package/components/ui-editor-slash-menu/ui-editor-slash-menu.html +39 -39
  15. package/components/ui-editor-table-context-menu/ui-editor-table-context-menu.html +20 -20
  16. package/components/ui-editor-table-overlay/ui-editor-table-overlay.html +48 -48
  17. package/components/ui-editor-table-toolbar/ui-editor-table-toolbar.html +34 -34
  18. package/components/ui-editor-toolbar/ui-editor-toolbar.html +9 -9
  19. package/components/ui-floating-action-button/ui-floating-action-button.html +16 -22
  20. package/components/ui-grid/ui-grid.html +6 -6
  21. package/components/ui-icon-button/ui-icon-button.html +42 -38
  22. package/components/ui-input/ui-input.html +2 -2
  23. package/components/ui-menu/ui-menu.html +15 -4
  24. package/components/ui-menu-item/ui-menu-item.html +5 -5
  25. package/components/ui-popover/ui-popover.html +3 -3
  26. package/components/ui-reel/ui-reel.html +6 -6
  27. package/components/ui-search-result-row/ui-search-result-row.html +9 -9
  28. package/components/ui-search-shell/ui-search-shell.html +3 -3
  29. package/components/ui-select/ui-select.html +2 -2
  30. package/components/ui-sidebar/ui-sidebar.html +11 -11
  31. package/components/ui-stack/ui-stack.html +6 -6
  32. package/components/ui-switcher/ui-switcher.html +6 -6
  33. package/components/ui-tabs/ui-tabs.html +18 -4
  34. package/components/ui-textarea/ui-textarea.html +2 -2
  35. package/components/ui-toast-region/ui-toast-region.html +2 -2
  36. package/components/ui-tooltip/ui-tooltip.html +1 -1
  37. package/components/ui-top-bar/ui-top-bar.html +5 -5
  38. package/components/ui-tree/ui-tree.html +7 -0
  39. package/components/ui-tree-item/ui-tree-item.html +15 -7
  40. package/dist/index.js +1 -1
  41. package/package.json +1 -1
  42. package/styles/ui-button.css +14 -14
  43. package/styles/ui-callout.css +1 -1
  44. package/styles/ui-checkbox.css +1 -1
  45. package/styles/ui-cluster.css +6 -6
  46. package/styles/ui-combobox.css +23 -23
  47. package/styles/ui-container.css +4 -4
  48. package/styles/ui-context-menu.css +2 -2
  49. package/styles/ui-dialog.css +12 -12
  50. package/styles/ui-disclosure.css +22 -6
  51. package/styles/ui-editable.css +6 -6
  52. package/styles/ui-editor-insert-table-grid.css +20 -20
  53. package/styles/ui-editor-mention-menu.css +25 -25
  54. package/styles/ui-editor-slash-menu.css +39 -39
  55. package/styles/ui-editor-table-context-menu.css +20 -20
  56. package/styles/ui-editor-table-overlay.css +48 -48
  57. package/styles/ui-editor-table-toolbar.css +34 -34
  58. package/styles/ui-editor-toolbar.css +9 -9
  59. package/styles/ui-floating-action-button.css +16 -22
  60. package/styles/ui-grid.css +6 -6
  61. package/styles/ui-icon-button.css +42 -38
  62. package/styles/ui-input.css +2 -2
  63. package/styles/ui-menu-item.css +5 -5
  64. package/styles/ui-menu.css +18 -6
  65. package/styles/ui-popover.css +3 -3
  66. package/styles/ui-reel.css +6 -6
  67. package/styles/ui-search-result-row.css +9 -9
  68. package/styles/ui-search-shell.css +3 -3
  69. package/styles/ui-select.css +2 -2
  70. package/styles/ui-sidebar.css +11 -11
  71. package/styles/ui-stack.css +6 -6
  72. package/styles/ui-switcher.css +6 -6
  73. package/styles/ui-tabs.css +20 -6
  74. package/styles/ui-textarea.css +2 -2
  75. package/styles/ui-toast-region.css +2 -2
  76. package/styles/ui-tooltip.css +1 -1
  77. package/styles/ui-top-bar.css +5 -5
  78. package/styles/ui-tree-item.css +21 -8
  79. package/styles/ui-tree.css +7 -1
  80. package/theme-dark.css +42 -103
  81. package/theme-high-contrast.css +18 -22
  82. package/theme-light.css +15 -41
  83. package/tokens.css +149 -201
  84. package/vanilla/UiDisclosure.d.ts +1 -0
  85. package/vanilla/UiDisclosure.js +1 -1
  86. package/vanilla/UiMenu.d.ts +1 -0
  87. package/vanilla/UiMenu.js +1 -1
  88. package/vanilla/UiTabs.d.ts +1 -0
  89. package/vanilla/UiTabs.js +1 -1
  90. package/vanilla/UiTree.d.ts +1 -0
  91. package/vanilla/UiTree.js +1 -1
  92. package/vue/UiButton.vue +20 -14
  93. package/vue/UiCallout.vue +1 -1
  94. package/vue/UiCheckbox.vue +1 -1
  95. package/vue/UiCluster.vue +6 -6
  96. package/vue/UiCombobox.vue +23 -23
  97. package/vue/UiContainer.vue +4 -4
  98. package/vue/UiContextMenu.vue +2 -2
  99. package/vue/UiDialog.vue +12 -12
  100. package/vue/UiDisclosure.d.ts +2 -0
  101. package/vue/UiDisclosure.vue +21 -4
  102. package/vue/UiEditable.vue +6 -6
  103. package/vue/UiEditorInsertTableGrid.vue +20 -20
  104. package/vue/UiEditorMentionMenu.vue +25 -25
  105. package/vue/UiEditorSlashMenu.vue +39 -39
  106. package/vue/UiEditorTableContextMenu.vue +20 -20
  107. package/vue/UiEditorTableOverlay.vue +48 -57
  108. package/vue/UiEditorTableToolbar.vue +34 -34
  109. package/vue/UiEditorToolbar.vue +9 -9
  110. package/vue/UiFloatingActionButton.vue +17 -22
  111. package/vue/UiGrid.vue +6 -6
  112. package/vue/UiIconButton.vue +46 -42
  113. package/vue/UiInput.vue +2 -2
  114. package/vue/UiMenu.d.ts +2 -0
  115. package/vue/UiMenu.vue +17 -7
  116. package/vue/UiMenuItem.vue +6 -5
  117. package/vue/UiPopover.vue +3 -3
  118. package/vue/UiReel.vue +6 -6
  119. package/vue/UiSearchResultRow.vue +10 -13
  120. package/vue/UiSearchShell.vue +3 -3
  121. package/vue/UiSelect.vue +2 -2
  122. package/vue/UiSidebar.vue +11 -16
  123. package/vue/UiStack.vue +6 -6
  124. package/vue/UiSwitcher.vue +6 -6
  125. package/vue/UiTabs.d.ts +2 -0
  126. package/vue/UiTabs.vue +21 -4
  127. package/vue/UiTextarea.vue +2 -2
  128. package/vue/UiToastRegion.vue +2 -2
  129. package/vue/UiTooltip.vue +1 -1
  130. package/vue/UiTopBar.vue +5 -5
  131. package/vue/UiTree.d.ts +2 -0
  132. package/vue/UiTree.vue +24 -1
  133. package/vue/UiTreeItem.vue +16 -8
  134. package/vue/chunks/UiButton.js +1 -1
  135. package/vue/chunks/UiCallout.js +1 -1
  136. package/vue/chunks/UiCheckbox.js +1 -1
  137. package/vue/chunks/UiCluster.js +1 -1
  138. package/vue/chunks/UiCombobox.js +1 -1
  139. package/vue/chunks/UiContainer.js +1 -1
  140. package/vue/chunks/UiContextMenu.js +1 -1
  141. package/vue/chunks/UiDialog.js +1 -1
  142. package/vue/chunks/UiDisclosure.js +3 -2
  143. package/vue/chunks/UiEditable.js +1 -1
  144. package/vue/chunks/UiEditorInsertTableGrid.js +1 -1
  145. package/vue/chunks/UiEditorMentionMenu.js +1 -1
  146. package/vue/chunks/UiEditorSlashMenu.js +1 -1
  147. package/vue/chunks/UiEditorTableContextMenu.js +1 -1
  148. package/vue/chunks/UiEditorTableOverlay.js +1 -1
  149. package/vue/chunks/UiEditorTableToolbar.js +1 -1
  150. package/vue/chunks/UiEditorToolbar.js +1 -1
  151. package/vue/chunks/UiFloatingActionButton.js +1 -1
  152. package/vue/chunks/UiGrid.js +1 -1
  153. package/vue/chunks/UiIconButton.js +1 -1
  154. package/vue/chunks/UiInput.js +1 -1
  155. package/vue/chunks/UiMenu.js +3 -2
  156. package/vue/chunks/UiMenuItem.js +1 -1
  157. package/vue/chunks/UiPopover.js +1 -1
  158. package/vue/chunks/UiReel.js +1 -1
  159. package/vue/chunks/UiSearchResultRow.js +1 -1
  160. package/vue/chunks/UiSearchShell.js +1 -1
  161. package/vue/chunks/UiSelect.js +1 -1
  162. package/vue/chunks/UiSidebar.js +1 -1
  163. package/vue/chunks/UiStack.js +1 -1
  164. package/vue/chunks/UiSwitcher.js +1 -1
  165. package/vue/chunks/UiTabs.js +7 -2
  166. package/vue/chunks/UiTextarea.js +1 -1
  167. package/vue/chunks/UiToastRegion.js +1 -1
  168. package/vue/chunks/UiTooltip.js +1 -1
  169. package/vue/chunks/UiTopBar.js +1 -1
  170. package/vue/chunks/UiTree.js +8 -2
  171. package/vue/chunks/UiTreeItem.js +1 -1
  172. package/vue/components.css +1082 -1048
  173. package/vue/editor/LoomaEditor.d.ts +11 -0
  174. package/vue/editor/index.js +9 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@threadlabs/looma",
3
- "version": "0.5.2",
3
+ "version": "0.6.0-rc.1",
4
4
  "type": "module",
5
5
  "description": "Looma components as HTML, Vue, and plain DOM, with design tokens.",
6
6
  "license": "MIT",
@@ -24,16 +24,16 @@
24
24
 
25
25
  :scope {
26
26
  appearance: none;
27
- min-block-size: var(--ui-button-min-block-size, var(--ui-control-size-md, 2.5rem));
27
+ min-block-size: var(--ui-button-min-block-size, var(--ui-control-size-md));
28
28
  border: 1px solid var(--ui-button-border, var(--ui-border-strong));
29
- border-radius: var(--ui-button-radius, var(--ui-radius-2));
29
+ border-radius: var(--ui-button-radius, var(--ui-radius-md));
30
30
  background: var(--ui-button-surface, var(--ui-surface-elevated));
31
31
  color: var(--ui-button-text, var(--ui-action-secondary-text, var(--ui-text-primary)));
32
32
  font: inherit;
33
- font-weight: var(--ui-font-medium, 500);
33
+ font-weight: var(--ui-font-medium);
34
34
  line-height: var(--ui-line-height-tight);
35
35
  padding: var(--ui-space-2) var(--ui-space-3);
36
- background-image: var(--ui-raised-highlight, none);
36
+ background-image: var(--ui-raised-highlight);
37
37
  box-shadow: var(--ui-button-shadow, var(--ui-raised, var(--ui-shadow-xs)));
38
38
  cursor: pointer;
39
39
  transition:
@@ -53,13 +53,13 @@
53
53
  }
54
54
 
55
55
  :scope[data-ui-button-state~="size=sm"] {
56
- min-block-size: var(--ui-control-size-sm, 2rem);
56
+ min-block-size: var(--ui-control-size-sm);
57
57
  padding: var(--ui-space-1) var(--ui-space-2);
58
58
  font-size: 0.875rem;
59
59
  }
60
60
 
61
61
  :scope[data-ui-button-state~="size=lg"] {
62
- min-block-size: var(--ui-control-size-lg, 3rem);
62
+ min-block-size: var(--ui-control-size-lg);
63
63
  padding: var(--ui-space-3) var(--ui-space-4);
64
64
  font-size: 1rem;
65
65
  }
@@ -122,12 +122,12 @@
122
122
 
123
123
  /* Tints derive from the text colour, not a surface token, so hover and press show on any background. */
124
124
  :scope[data-ui-button-state~="variant=ghost"]:hover:enabled {
125
- background: var(--ui-button-ghost-hover, color-mix(in srgb, currentColor 8%, transparent));
125
+ background: var(--ui-button-ghost-hover-surface, color-mix(in srgb, currentColor 8%, transparent));
126
126
  border-color: transparent;
127
127
  }
128
128
 
129
129
  :scope[data-ui-button-state~="variant=ghost"]:active:enabled {
130
- background: var(--ui-button-ghost-active, color-mix(in srgb, currentColor 14%, transparent));
130
+ background: var(--ui-button-ghost-active-surface, color-mix(in srgb, currentColor 14%, transparent));
131
131
  border-color: transparent;
132
132
  }
133
133
 
@@ -174,7 +174,7 @@
174
174
 
175
175
  @media (pointer: coarse) {
176
176
  :scope {
177
- min-block-size: var(--ui-control-min-block-size, 2.75rem);
177
+ min-block-size: var(--ui-control-min-block-size);
178
178
  }
179
179
  }
180
180
 
@@ -185,11 +185,11 @@
185
185
  min-block-size: 0;
186
186
  padding: 0;
187
187
  border: 0;
188
- border-radius: var(--ui-radius-sm, 4px);
188
+ border-radius: var(--ui-radius-sm);
189
189
  background: none;
190
190
  box-shadow: none;
191
191
  font: inherit;
192
- color: var(--ui-button-link-color, var(--ui-text-secondary));
192
+ color: var(--ui-button-link-text, var(--ui-text-secondary));
193
193
  text-decoration-line: underline;
194
194
  text-decoration-thickness: 1px;
195
195
  text-decoration-color: color-mix(in srgb, currentColor 40%, transparent);
@@ -198,7 +198,7 @@
198
198
  }
199
199
 
200
200
  :scope[data-ui-button-state~="variant=link"]:hover:enabled {
201
- color: var(--ui-button-link-hover-color, var(--ui-text-primary));
201
+ color: var(--ui-button-link-hover-text, var(--ui-text-primary));
202
202
  text-decoration-color: currentColor;
203
203
  background: none;
204
204
  transform: none;
@@ -211,13 +211,13 @@
211
211
 
212
212
  :scope[data-ui-button-state~="variant=link"]:disabled {
213
213
  background: none;
214
- color: var(--ui-button-disabled-text, var(--ui-button-link-color, var(--ui-text-secondary)));
214
+ color: var(--ui-button-disabled-text, var(--ui-button-link-text, var(--ui-text-secondary)));
215
215
  }
216
216
 
217
217
  :scope[data-ui-button-state~="variant=link"]:focus-visible {
218
218
  box-shadow: none;
219
219
  /* Fallback keeps the ring if the token is missing: an unresolved var() would void the outline. */
220
- outline: 2px solid var(--ui-focus-ring, currentColor);
220
+ outline: 2px solid var(--ui-focus-ring);
221
221
  outline-offset: 2px;
222
222
  }
223
223
 
@@ -13,7 +13,7 @@
13
13
  padding: var(--ui-callout-padding-block, var(--ui-space-2)) var(--ui-callout-padding-inline, var(--ui-space-3));
14
14
  border: var(--ui-callout-border-width, 1px) solid color-mix(in srgb, var(--ui-callout-border, var(--_callout-border)) 35%, transparent);
15
15
  border-inline-start: var(--ui-callout-leading-border-width, 4px) solid var(--ui-callout-border, var(--_callout-border));
16
- border-radius: var(--ui-radius-2);
16
+ border-radius: var(--ui-radius-md);
17
17
  background: var(--ui-callout-surface, var(--_callout-surface));
18
18
  color: var(--ui-callout-text, var(--ui-text-primary));
19
19
  font-family: var(--ui-font-family-sans);
@@ -23,7 +23,7 @@
23
23
  block-size: var(--ui-checkbox-size, 1.125rem);
24
24
  margin: 0.125em 0 0;
25
25
  border: 1px solid var(--ui-control-border-hover, var(--ui-border-strong));
26
- border-radius: var(--ui-radius-1);
26
+ border-radius: var(--ui-radius-sm);
27
27
  background: var(--ui-control-surface, var(--ui-surface-default));
28
28
  box-shadow: inset 0 1px 2px color-mix(in srgb, var(--ui-text-primary) 8%, transparent);
29
29
  cursor: pointer;
@@ -1,7 +1,7 @@
1
1
  /* Generated by HTML Next 1.0.0-alpha.2. Do not edit. */
2
2
  @scope ([data-component~="ui-cluster"]) to ([data-component], [data-slotted]) {
3
3
  :scope {
4
- --_layout-gap: var(--ui-space-3, 0.75rem);
4
+ --_layout-gap: var(--ui-space-3);
5
5
  display: flex;
6
6
  flex-wrap: wrap;
7
7
  align-items: center;
@@ -12,19 +12,19 @@
12
12
  }
13
13
 
14
14
  :scope[data-ui-cluster-state~="gap=xs"] {
15
- --_layout-gap: var(--ui-space-2, 0.5rem);
15
+ --_layout-gap: var(--ui-space-2);
16
16
  }
17
17
  :scope[data-ui-cluster-state~="gap=s"] {
18
- --_layout-gap: var(--ui-space-3, 0.75rem);
18
+ --_layout-gap: var(--ui-space-3);
19
19
  }
20
20
  :scope[data-ui-cluster-state~="gap=m"] {
21
- --_layout-gap: var(--ui-space-4, 1rem);
21
+ --_layout-gap: var(--ui-space-4);
22
22
  }
23
23
  :scope[data-ui-cluster-state~="gap=l"] {
24
- --_layout-gap: var(--ui-space-5, 1.5rem);
24
+ --_layout-gap: var(--ui-space-5);
25
25
  }
26
26
  :scope[data-ui-cluster-state~="gap=xl"] {
27
- --_layout-gap: var(--ui-space-6, 2rem);
27
+ --_layout-gap: var(--ui-space-6);
28
28
  }
29
29
  :scope[data-ui-cluster-state~="align=start"] {
30
30
  align-items: flex-start;
@@ -8,15 +8,15 @@
8
8
  font: inherit;
9
9
  }
10
10
  label {
11
- color: var(--ui-field-label-color, var(--ui-text-primary));
12
- font-size: var(--ui-field-label-size, 0.875rem);
13
- font-weight: var(--ui-field-label-weight, 500);
11
+ color: var(--ui-combobox-label-text, var(--ui-text-primary));
12
+ font-size: var(--ui-combobox-label-font-size, 0.875rem);
13
+ font-weight: 500;
14
14
  }
15
15
  .field {
16
16
  display: flex;
17
17
  min-inline-size: 0;
18
18
  border: 1px solid var(--ui-control-border, var(--ui-border-default));
19
- border-radius: var(--ui-radius-2);
19
+ border-radius: var(--ui-radius-md);
20
20
  background: var(--ui-control-surface, var(--ui-surface-default));
21
21
  box-shadow: var(--ui-control-inset);
22
22
  transition: border-color var(--ui-motion-fast) var(--ui-motion-ease), box-shadow var(--ui-motion-fast) var(--ui-motion-ease);
@@ -35,7 +35,7 @@
35
35
  appearance: none;
36
36
  width: 100%;
37
37
  min-inline-size: 0;
38
- min-block-size: calc(var(--ui-control-size-md, 2.5rem) - 2px);
38
+ min-block-size: calc(var(--ui-control-size-md) - 2px);
39
39
  box-sizing: border-box;
40
40
  border: 0;
41
41
  border-radius: inherit;
@@ -48,7 +48,7 @@
48
48
  outline: none;
49
49
  }
50
50
  :scope[data-ui-combobox-state~="size=sm"] input {
51
- min-block-size: calc(var(--ui-field-compact-size, var(--ui-control-size-sm, 2rem)) - 2px);
51
+ min-block-size: calc(var(--ui-control-size-sm) - 2px);
52
52
  padding: var(--ui-space-1) var(--ui-space-2);
53
53
  }
54
54
  button {
@@ -57,19 +57,19 @@
57
57
  place-items: center;
58
58
  align-self: stretch;
59
59
  border: 0;
60
- border-radius: var(--ui-radius-2);
60
+ border-radius: var(--ui-radius-md);
61
61
  background: transparent;
62
- color: var(--ui-field-affordance-color, var(--ui-text-secondary));
62
+ color: var(--ui-combobox-affordance-text, var(--ui-text-secondary));
63
63
  font: inherit;
64
- font-weight: var(--ui-field-affordance-weight, 400);
64
+ font-weight: 400;
65
65
  min-inline-size: 2rem;
66
66
  padding: 0 var(--ui-space-1);
67
67
  cursor: pointer;
68
68
  }
69
69
  .affordance-icon {
70
70
  display: block;
71
- inline-size: var(--ui-icon-size-sm, 1rem);
72
- block-size: var(--ui-icon-size-sm, 1rem);
71
+ inline-size: var(--ui-icon-size-sm);
72
+ block-size: var(--ui-icon-size-sm);
73
73
  }
74
74
  button:hover:enabled {
75
75
  background: var(--ui-surface-muted);
@@ -99,7 +99,7 @@
99
99
  margin: 0;
100
100
  padding: var(--ui-space-1);
101
101
  border: 1px solid var(--ui-border-default);
102
- border-radius: var(--ui-radius-2);
102
+ border-radius: var(--ui-radius-md);
103
103
  background: var(--ui-surface-elevated);
104
104
  color: var(--ui-text-primary);
105
105
  box-shadow: var(--ui-elevation-overlay, var(--ui-shadow-lg));
@@ -109,13 +109,13 @@
109
109
  }
110
110
  .option {
111
111
  padding: var(--ui-space-2) var(--ui-space-3);
112
- border-radius: var(--ui-radius-1);
112
+ border-radius: var(--ui-radius-sm);
113
113
  cursor: pointer;
114
114
  overflow-wrap: anywhere;
115
115
  }
116
116
  .option:hover, .option.active {
117
117
  background: var(--ui-surface-muted);
118
- outline: 1px solid var(--ui-focus-ring, currentColor);
118
+ outline: 1px solid var(--ui-focus-ring);
119
119
  outline-offset: -1px;
120
120
  }
121
121
  .option[aria-disabled="true"] {
@@ -124,12 +124,12 @@
124
124
  }
125
125
  .primary {
126
126
  display: block;
127
- color: var(--ui-option-primary-color, var(--ui-text-primary));
128
- font-weight: var(--ui-option-primary-weight, 500);
127
+ color: var(--ui-combobox-option-text, var(--ui-text-primary));
128
+ font-weight: 500;
129
129
  }
130
130
  .message, .group {
131
- color: var(--ui-field-message-color, var(--ui-text-secondary));
132
- font-weight: var(--ui-field-message-weight, 400);
131
+ color: var(--ui-combobox-message-text, var(--ui-text-secondary));
132
+ font-weight: 400;
133
133
  font-size: var(--ui-font-size-sm);
134
134
  line-height: var(--ui-line-height-md);
135
135
  overflow-wrap: anywhere;
@@ -165,11 +165,11 @@
165
165
  flex-wrap: wrap;
166
166
  align-items: center;
167
167
  gap: var(--ui-space-1);
168
- min-block-size: var(--ui-multi-combobox-min-block-size, 2.5rem);
168
+ min-block-size: var(--ui-combobox-item-min-block-size, 2.5rem);
169
169
  padding: var(--ui-space-1);
170
170
  }
171
171
  :scope[data-ui-combobox-state~="multiple"] input {
172
- flex: 1 0 var(--ui-multi-combobox-input-min-inline-size, 5rem);
172
+ flex: 1 0 var(--ui-combobox-item-input-min-inline-size, 5rem);
173
173
  width: auto;
174
174
  min-block-size: 1.75rem;
175
175
  padding: var(--ui-space-0-5) var(--ui-space-1);
@@ -178,18 +178,18 @@
178
178
  appearance: none;
179
179
  display: inline-flex;
180
180
  min-inline-size: 0;
181
- max-inline-size: min(100%, var(--ui-multi-combobox-item-max-inline-size, 12rem));
181
+ max-inline-size: min(100%, var(--ui-combobox-item-item-max-inline-size, 12rem));
182
182
  overflow: hidden;
183
183
  padding: 0;
184
184
  border: 0;
185
- border-radius: var(--ui-radius-1);
185
+ border-radius: var(--ui-radius-sm);
186
186
  background: transparent;
187
187
  color: inherit;
188
188
  font: inherit;
189
189
  cursor: default;
190
190
  }
191
191
  .item:focus-visible {
192
- outline: 2px solid var(--ui-focus-ring, currentColor);
192
+ outline: 2px solid var(--ui-focus-ring);
193
193
  outline-offset: 1px;
194
194
  }
195
195
  .item:disabled {
@@ -2,7 +2,7 @@
2
2
  @scope ([data-component~="ui-container"]) to ([data-component], [data-slotted]) {
3
3
  :scope {
4
4
  --_container-measure: 65ch;
5
- --_container-gutters: var(--ui-space-4, 1rem);
5
+ --_container-gutters: var(--ui-space-4);
6
6
  display: block;
7
7
  inline-size: 100%;
8
8
  max-inline-size: var(--ui-container-measure, var(--_container-measure));
@@ -17,13 +17,13 @@
17
17
  --_container-measure: 80ch;
18
18
  }
19
19
  :scope[data-ui-container-state~="gutters=s"] {
20
- --_container-gutters: var(--ui-space-3, 0.75rem);
20
+ --_container-gutters: var(--ui-space-3);
21
21
  }
22
22
  :scope[data-ui-container-state~="gutters=m"] {
23
- --_container-gutters: var(--ui-space-4, 1rem);
23
+ --_container-gutters: var(--ui-space-4);
24
24
  }
25
25
  :scope[data-ui-container-state~="gutters=l"] {
26
- --_container-gutters: var(--ui-space-5, 1.5rem);
26
+ --_container-gutters: var(--ui-space-5);
27
27
  }
28
28
 
29
29
  /* A component that sets its display still honours the hidden attribute on its root. */
@@ -14,11 +14,11 @@
14
14
  padding: var(--ui-space-1);
15
15
  background: var(--ui-surface-elevated);
16
16
  border: 1px solid var(--ui-border-default);
17
- border-radius: var(--ui-radius-3);
17
+ border-radius: var(--ui-radius-lg);
18
18
  box-shadow: var(--ui-elevation-overlay, var(--ui-shadow-lg));
19
19
  outline: 0;
20
20
  overflow: auto;
21
- z-index: var(--ui-z-overlay, 1000);
21
+ z-index: var(--ui-context-menu-z-index, 1000);
22
22
  min-width: 12rem;
23
23
  opacity: 0;
24
24
  transform: translateY(-4px) scale(0.99);
@@ -16,11 +16,11 @@
16
16
  inset: 0;
17
17
  box-sizing: border-box;
18
18
  inline-size: min(
19
- calc(100% - var(--ui-dialog-viewport-gap, var(--ui-space-4, 1rem)) * 2),
19
+ calc(100% - var(--ui-dialog-viewport-gap, var(--ui-space-4)) * 2),
20
20
  var(--ui-dialog-max-width, 440px)
21
21
  );
22
22
  max-inline-size: none;
23
- max-block-size: calc(100dvh - var(--ui-dialog-viewport-gap, var(--ui-space-4, 1rem)) * 2);
23
+ max-block-size: calc(100dvh - var(--ui-dialog-viewport-gap, var(--ui-space-4)) * 2);
24
24
  margin: auto;
25
25
  padding: 0;
26
26
  overflow: hidden;
@@ -69,8 +69,8 @@
69
69
  border: 0;
70
70
  color: var(--ui-text-primary);
71
71
  letter-spacing: normal;
72
- font-size: var(--ui-font-size-lg, 1.125rem);
73
- font-weight: var(--ui-font-semibold, 600);
72
+ font-size: var(--ui-font-size-lg);
73
+ font-weight: var(--ui-font-semibold);
74
74
  line-height: var(--ui-line-height-tight);
75
75
  }
76
76
 
@@ -79,11 +79,11 @@
79
79
  place-items: center;
80
80
  flex: none;
81
81
  margin-inline-start: auto;
82
- inline-size: var(--ui-control-size-sm, 2rem);
83
- block-size: var(--ui-control-size-sm, 2rem);
82
+ inline-size: var(--ui-control-size-sm);
83
+ block-size: var(--ui-control-size-sm);
84
84
  padding: 0;
85
85
  border: 0;
86
- border-radius: var(--ui-radius-round, 999px);
86
+ border-radius: var(--ui-radius-round);
87
87
  background: transparent;
88
88
  color: var(--ui-text-secondary);
89
89
  cursor: pointer;
@@ -112,21 +112,21 @@
112
112
  }
113
113
 
114
114
  .close:focus-visible {
115
- outline: 2px solid var(--ui-focus-ring, currentColor);
115
+ outline: 2px solid var(--ui-focus-ring);
116
116
  outline-offset: 2px;
117
117
  }
118
118
 
119
119
  /* A touch target, like Button on coarse pointers. */
120
120
  @media (pointer: coarse) {
121
121
  .close {
122
- inline-size: var(--ui-control-min-block-size, 2.75rem);
123
- block-size: var(--ui-control-min-block-size, 2.75rem);
122
+ inline-size: var(--ui-control-min-block-size);
123
+ block-size: var(--ui-control-min-block-size);
124
124
  }
125
125
  }
126
126
 
127
127
  html[data-ui-input-modality="touch"] :scope .close {
128
- inline-size: var(--ui-control-min-block-size, 2.75rem);
129
- block-size: var(--ui-control-min-block-size, 2.75rem);
128
+ inline-size: var(--ui-control-min-block-size);
129
+ block-size: var(--ui-control-min-block-size);
130
130
  }
131
131
 
132
132
  .body {
@@ -1,6 +1,19 @@
1
1
  /* Generated by HTML Next 1.0.0-alpha.2. Do not edit. */
2
2
  @scope ([data-component~="ui-disclosure"]) to ([data-component], [data-slotted]) {
3
- /* An accordion row, not a field: no enclosing box, just a divider, so it never reads as a
3
+ /* Density resolves into the summary row's own values; the public tokens still override them. */
4
+ :scope {
5
+ --_trigger-min-block-size: var(--ui-control-size);
6
+ --_trigger-padding-block: var(--ui-space-2);
7
+ --_trigger-padding-inline: var(--ui-space-3);
8
+ }
9
+
10
+ :scope[data-ui-disclosure-state~="density=compact"] {
11
+ --_trigger-min-block-size: var(--ui-control-size-sm);
12
+ --_trigger-padding-block: var(--ui-space-1);
13
+ --_trigger-padding-inline: var(--ui-space-2);
14
+ }
15
+
16
+ /* An accordion row, not a field: no enclosing box, just a divider, so it never reads as a
4
17
  * select or combobox. Stacked disclosures share their dividers. */
5
18
  :scope {
6
19
  display: block;
@@ -16,16 +29,17 @@
16
29
  gap: var(--ui-space-3);
17
30
  align-items: center;
18
31
  inline-size: 100%;
19
- min-block-size: 2.5rem;
20
- padding: var(--ui-space-2) var(--ui-space-3);
32
+ min-block-size: var(--ui-disclosure-trigger-min-block-size, var(--_trigger-min-block-size));
33
+ padding: var(--ui-disclosure-trigger-padding-block, var(--_trigger-padding-block))
34
+ var(--ui-disclosure-trigger-padding-inline, var(--_trigger-padding-inline));
21
35
  border: 0;
22
36
  background: transparent;
23
37
  color: inherit;
24
38
  font: inherit;
25
- font-weight: var(--ui-font-semibold, 600);
39
+ font-weight: var(--ui-font-semibold);
26
40
  text-align: start;
27
41
  cursor: pointer;
28
- border-radius: var(--ui-radius-1);
42
+ border-radius: var(--ui-radius-sm);
29
43
  transition: background-color var(--ui-motion-fast) var(--ui-motion-ease);
30
44
  }
31
45
 
@@ -85,7 +99,9 @@
85
99
  }
86
100
  }
87
101
  @scope ([data-component~="ui-disclosure"]) to ([data-component]) {
88
- /* An accordion row, not a field: no enclosing box, just a divider, so it never reads as a
102
+ /* Density resolves into the summary row's own values; the public tokens still override them. */
103
+
104
+ /* An accordion row, not a field: no enclosing box, just a divider, so it never reads as a
89
105
  * select or combobox. Stacked disclosures share their dividers. */
90
106
 
91
107
  @media (prefers-reduced-motion: reduce) {
@@ -21,11 +21,11 @@
21
21
  .input {
22
22
  grid-area: 1 / 1;
23
23
  box-sizing: border-box;
24
- min-block-size: var(--ui-control-size-sm, 2rem);
24
+ min-block-size: var(--ui-control-size-sm);
25
25
  margin: 0;
26
26
  padding: var(--ui-space-1) var(--ui-space-2);
27
27
  border: 1px solid transparent;
28
- border-radius: var(--ui-radius-2);
28
+ border-radius: var(--ui-radius-md);
29
29
  font: inherit;
30
30
  line-height: var(--ui-line-height-md);
31
31
  color: inherit;
@@ -95,13 +95,13 @@
95
95
  }
96
96
 
97
97
  .actions button {
98
- min-block-size: var(--ui-control-size-sm, 2rem);
98
+ min-block-size: var(--ui-control-size-sm);
99
99
  padding: 0 var(--ui-space-3);
100
100
  border: 1px solid var(--ui-border-strong);
101
- border-radius: var(--ui-radius-2);
101
+ border-radius: var(--ui-radius-md);
102
102
  background: var(--ui-surface-elevated);
103
- background-image: var(--ui-raised-highlight, none);
104
- box-shadow: var(--ui-raised, none);
103
+ background-image: var(--ui-raised-highlight);
104
+ box-shadow: var(--ui-raised);
105
105
  color: inherit;
106
106
  font: inherit;
107
107
  font-size: var(--ui-font-size-sm);
@@ -1,17 +1,17 @@
1
1
  /* Generated by HTML Next 1.0.0-alpha.2. Do not edit. */
2
2
  @scope ([data-component~="ui-editor-insert-table-grid"]) to ([data-component], [data-slotted]) {
3
3
  :scope {
4
- padding: var(--ui-space-3, 12px);
5
- background: var(--ui-surface, #fff);
6
- border: 1px solid var(--ui-border, #e5e7eb);
7
- border-radius: var(--ui-radius-md, 6px);
4
+ padding: var(--ui-space-3);
5
+ background: var(--ui-surface);
6
+ border: 1px solid var(--ui-border);
7
+ border-radius: var(--ui-radius-md);
8
8
  box-shadow: var(--ui-shadow-lg, 0 10px 15px -3px rgb(0 0 0 / 0.1));
9
9
  }
10
10
 
11
11
  .hint {
12
- margin: 0 0 var(--ui-space-2, 8px);
13
- font-size: var(--ui-text-sm, 0.875rem);
14
- color: var(--ui-text-muted, #6b7280);
12
+ margin: 0 0 var(--ui-space-2);
13
+ font-size: var(--ui-font-size-sm);
14
+ color: var(--ui-text-muted);
15
15
  }
16
16
 
17
17
  .grid {
@@ -19,39 +19,39 @@
19
19
  grid-template-columns: repeat(var(--ui-editor-table-grid-cols, 8), 1.25rem);
20
20
  grid-template-rows: repeat(var(--ui-editor-table-grid-rows, 8), 1.25rem);
21
21
  gap: 2px;
22
- margin-bottom: var(--ui-space-2, 8px);
22
+ margin-bottom: var(--ui-space-2);
23
23
  }
24
24
 
25
25
  .cell {
26
26
  width: 1.25rem;
27
27
  height: 1.25rem;
28
28
  padding: 0;
29
- border: 1px solid var(--ui-border, #e5e7eb);
29
+ border: 1px solid var(--ui-border);
30
30
  border-radius: 2px;
31
- background: var(--ui-surface, #fff);
31
+ background: var(--ui-surface);
32
32
  cursor: pointer;
33
33
  }
34
34
 
35
35
  .cell.selected {
36
- background: var(--ui-accent-solid, var(--ui-accent, #0066cc));
37
- border-color: var(--ui-accent-solid, var(--ui-accent, #0066cc));
36
+ background: var(--ui-accent-solid, var(--ui-accent));
37
+ border-color: var(--ui-accent-solid, var(--ui-accent));
38
38
  }
39
39
 
40
40
  .header {
41
41
  display: block;
42
- margin-bottom: var(--ui-space-2, 8px);
43
- font-size: var(--ui-text-sm, 0.875rem);
42
+ margin-bottom: var(--ui-space-2);
43
+ font-size: var(--ui-font-size-sm);
44
44
  cursor: pointer;
45
45
  }
46
46
 
47
47
  :scope .insert {
48
48
  width: 100%;
49
- padding: var(--ui-space-2, 8px) var(--ui-space-3, 12px);
50
- border: 1px solid var(--ui-border, #e5e7eb);
51
- border-radius: var(--ui-radius-sm, 4px);
52
- background: var(--ui-accent-solid, var(--ui-accent, #0066cc));
53
- color: var(--ui-accent-contrast, #fff);
54
- font-size: var(--ui-text-sm, 0.875rem);
49
+ padding: var(--ui-space-2) var(--ui-space-3);
50
+ border: 1px solid var(--ui-border);
51
+ border-radius: var(--ui-radius-sm);
52
+ background: var(--ui-accent-solid, var(--ui-accent));
53
+ color: var(--ui-accent-contrast);
54
+ font-size: var(--ui-font-size-sm);
55
55
  cursor: pointer;
56
56
  }
57
57