@threadlabs/looma 0.28.12 → 0.28.14

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 (427) hide show
  1. package/components/ui-affordance-scope/ui-affordance-scope.html +1 -1
  2. package/components/ui-avatar/ui-avatar.html +1 -1
  3. package/components/ui-combobox/ui-combobox.html +1 -1
  4. package/components/ui-disclosure/ui-disclosure.html +4 -4
  5. package/components/ui-editable/ui-editable.html +3 -3
  6. package/components/ui-menu/ui-menu.html +1 -1
  7. package/components/ui-popover/ui-popover.html +1 -1
  8. package/components/ui-sidebar/ui-sidebar.html +4 -4
  9. package/components/ui-switcher/ui-switcher.html +1 -1
  10. package/components/ui-tree-item/ui-tree-item.html +2 -2
  11. package/dist/index.js +1 -1
  12. package/editor/formatting-selection.d.ts +49 -0
  13. package/package.json +3 -3
  14. package/styles/ui-action-bar.css +1 -1
  15. package/styles/ui-affordance-scope.css +1 -1
  16. package/styles/ui-avatar-group.css +1 -1
  17. package/styles/ui-avatar.css +1 -1
  18. package/styles/ui-badge.css +1 -1
  19. package/styles/ui-breadcrumb-item.css +1 -1
  20. package/styles/ui-breadcrumbs.css +1 -1
  21. package/styles/ui-button.css +1 -1
  22. package/styles/ui-callout.css +1 -1
  23. package/styles/ui-card.css +1 -1
  24. package/styles/ui-checkbox.css +1 -1
  25. package/styles/ui-cluster.css +1 -1
  26. package/styles/ui-combobox.css +1 -1
  27. package/styles/ui-container.css +1 -1
  28. package/styles/ui-context-menu.css +1 -1
  29. package/styles/ui-cover.css +1 -1
  30. package/styles/ui-description-item.css +1 -1
  31. package/styles/ui-description-list.css +1 -1
  32. package/styles/ui-dialog.css +1 -1
  33. package/styles/ui-disclosure.css +2 -2
  34. package/styles/ui-editable.css +1 -1
  35. package/styles/ui-editor-block-actions.css +1 -1
  36. package/styles/ui-editor-chip-editor.css +1 -1
  37. package/styles/ui-editor-code-language.css +1 -1
  38. package/styles/ui-editor-image-toolbar.css +1 -1
  39. package/styles/ui-editor-insert-table-grid.css +1 -1
  40. package/styles/ui-editor-link-card.css +1 -1
  41. package/styles/ui-editor-link-form.css +1 -1
  42. package/styles/ui-editor-mention-menu-item.css +1 -1
  43. package/styles/ui-editor-mention-menu.css +1 -1
  44. package/styles/ui-editor-slash-menu-group.css +1 -1
  45. package/styles/ui-editor-slash-menu-item.css +1 -1
  46. package/styles/ui-editor-slash-menu.css +1 -1
  47. package/styles/ui-editor-surface.css +1 -1
  48. package/styles/ui-editor-table-context-menu.css +1 -1
  49. package/styles/ui-editor-table-overlay.css +1 -1
  50. package/styles/ui-editor-table-toolbar.css +1 -1
  51. package/styles/ui-editor-toolbar.css +1 -1
  52. package/styles/ui-floating-action-button.css +1 -1
  53. package/styles/ui-form-field.css +1 -1
  54. package/styles/ui-grid.css +1 -1
  55. package/styles/ui-icon-button.css +1 -1
  56. package/styles/ui-icon.css +1 -1
  57. package/styles/ui-image.css +1 -1
  58. package/styles/ui-input-group.css +1 -1
  59. package/styles/ui-input.css +1 -1
  60. package/styles/ui-list-item.css +1 -1
  61. package/styles/ui-list.css +1 -1
  62. package/styles/ui-listbox.css +1 -1
  63. package/styles/ui-menu-group.css +1 -1
  64. package/styles/ui-menu-item.css +1 -1
  65. package/styles/ui-menu.css +2 -2
  66. package/styles/ui-meter.css +1 -1
  67. package/styles/ui-nav-item.css +1 -1
  68. package/styles/ui-page-header.css +1 -1
  69. package/styles/ui-popover.css +2 -2
  70. package/styles/ui-radio-group.css +1 -1
  71. package/styles/ui-radio.css +1 -1
  72. package/styles/ui-reel.css +1 -1
  73. package/styles/ui-scroll-area.css +1 -1
  74. package/styles/ui-search-result-row.css +1 -1
  75. package/styles/ui-search-shell.css +1 -1
  76. package/styles/ui-section.css +1 -1
  77. package/styles/ui-select.css +1 -1
  78. package/styles/ui-separator.css +1 -1
  79. package/styles/ui-sidebar.css +2 -2
  80. package/styles/ui-spinner.css +1 -1
  81. package/styles/ui-stack.css +1 -1
  82. package/styles/ui-status-message.css +1 -1
  83. package/styles/ui-swatch.css +1 -1
  84. package/styles/ui-switch.css +1 -1
  85. package/styles/ui-switcher.css +1 -1
  86. package/styles/ui-table.css +1 -1
  87. package/styles/ui-tabs.css +1 -1
  88. package/styles/ui-text.css +1 -1
  89. package/styles/ui-textarea.css +1 -1
  90. package/styles/ui-toast-region.css +1 -1
  91. package/styles/ui-toast.css +1 -1
  92. package/styles/ui-tooltip.css +1 -1
  93. package/styles/ui-top-bar.css +1 -1
  94. package/styles/ui-tree-item.css +1 -1
  95. package/styles/ui-tree.css +1 -1
  96. package/vanilla/UiActionBar.d.ts +1 -1
  97. package/vanilla/UiActionBar.js +1 -1
  98. package/vanilla/UiAffordanceScope.d.ts +1 -1
  99. package/vanilla/UiAffordanceScope.js +2 -2
  100. package/vanilla/UiAvatar.d.ts +1 -1
  101. package/vanilla/UiAvatar.js +2 -2
  102. package/vanilla/UiAvatarGroup.d.ts +1 -1
  103. package/vanilla/UiAvatarGroup.js +2 -2
  104. package/vanilla/UiBadge.d.ts +1 -1
  105. package/vanilla/UiBadge.js +2 -2
  106. package/vanilla/UiBreadcrumbItem.d.ts +1 -1
  107. package/vanilla/UiBreadcrumbItem.js +2 -2
  108. package/vanilla/UiBreadcrumbs.d.ts +1 -1
  109. package/vanilla/UiBreadcrumbs.js +2 -2
  110. package/vanilla/UiButton.d.ts +1 -1
  111. package/vanilla/UiButton.js +3 -3
  112. package/vanilla/UiCallout.d.ts +1 -1
  113. package/vanilla/UiCallout.js +2 -2
  114. package/vanilla/UiCard.d.ts +1 -1
  115. package/vanilla/UiCard.js +3 -3
  116. package/vanilla/UiCheckbox.d.ts +1 -1
  117. package/vanilla/UiCheckbox.js +2 -2
  118. package/vanilla/UiCluster.d.ts +1 -1
  119. package/vanilla/UiCluster.js +2 -2
  120. package/vanilla/UiCombobox.d.ts +1 -1
  121. package/vanilla/UiCombobox.js +2 -2
  122. package/vanilla/UiContainer.d.ts +1 -1
  123. package/vanilla/UiContainer.js +2 -2
  124. package/vanilla/UiContextMenu.d.ts +1 -1
  125. package/vanilla/UiContextMenu.js +2 -2
  126. package/vanilla/UiCover.d.ts +1 -1
  127. package/vanilla/UiCover.js +2 -2
  128. package/vanilla/UiDescriptionItem.d.ts +1 -1
  129. package/vanilla/UiDescriptionItem.js +2 -2
  130. package/vanilla/UiDescriptionList.d.ts +1 -1
  131. package/vanilla/UiDescriptionList.js +2 -2
  132. package/vanilla/UiDialog.d.ts +1 -1
  133. package/vanilla/UiDialog.js +2 -2
  134. package/vanilla/UiDisclosure.d.ts +1 -1
  135. package/vanilla/UiDisclosure.js +2 -2
  136. package/vanilla/UiEditable.d.ts +1 -1
  137. package/vanilla/UiEditable.js +2 -2
  138. package/vanilla/UiEditorBlockActions.d.ts +1 -1
  139. package/vanilla/UiEditorBlockActions.js +2 -2
  140. package/vanilla/UiEditorChipEditor.d.ts +1 -1
  141. package/vanilla/UiEditorChipEditor.js +2 -2
  142. package/vanilla/UiEditorCodeLanguage.d.ts +1 -1
  143. package/vanilla/UiEditorCodeLanguage.js +2 -2
  144. package/vanilla/UiEditorImageToolbar.d.ts +1 -1
  145. package/vanilla/UiEditorImageToolbar.js +2 -2
  146. package/vanilla/UiEditorInsertTableGrid.d.ts +1 -1
  147. package/vanilla/UiEditorInsertTableGrid.js +2 -2
  148. package/vanilla/UiEditorLinkCard.d.ts +1 -1
  149. package/vanilla/UiEditorLinkCard.js +2 -2
  150. package/vanilla/UiEditorLinkForm.d.ts +1 -1
  151. package/vanilla/UiEditorLinkForm.js +2 -2
  152. package/vanilla/UiEditorMentionMenu.d.ts +1 -1
  153. package/vanilla/UiEditorMentionMenu.js +2 -2
  154. package/vanilla/UiEditorMentionMenuItem.d.ts +1 -1
  155. package/vanilla/UiEditorMentionMenuItem.js +3 -3
  156. package/vanilla/UiEditorSlashMenu.d.ts +1 -1
  157. package/vanilla/UiEditorSlashMenu.js +2 -2
  158. package/vanilla/UiEditorSlashMenuGroup.d.ts +1 -1
  159. package/vanilla/UiEditorSlashMenuGroup.js +2 -2
  160. package/vanilla/UiEditorSlashMenuItem.d.ts +1 -1
  161. package/vanilla/UiEditorSlashMenuItem.js +3 -3
  162. package/vanilla/UiEditorSurface.d.ts +1 -1
  163. package/vanilla/UiEditorSurface.js +2 -2
  164. package/vanilla/UiEditorTableContextMenu.d.ts +1 -1
  165. package/vanilla/UiEditorTableContextMenu.js +2 -2
  166. package/vanilla/UiEditorTableOverlay.d.ts +1 -1
  167. package/vanilla/UiEditorTableOverlay.js +2 -2
  168. package/vanilla/UiEditorTableToolbar.d.ts +1 -1
  169. package/vanilla/UiEditorTableToolbar.js +2 -2
  170. package/vanilla/UiEditorToolbar.d.ts +1 -1
  171. package/vanilla/UiEditorToolbar.js +2 -2
  172. package/vanilla/UiFloatingActionButton.d.ts +1 -1
  173. package/vanilla/UiFloatingActionButton.js +2 -2
  174. package/vanilla/UiFormField.d.ts +1 -1
  175. package/vanilla/UiFormField.js +2 -2
  176. package/vanilla/UiGrid.d.ts +1 -1
  177. package/vanilla/UiGrid.js +2 -2
  178. package/vanilla/UiIcon.d.ts +1 -1
  179. package/vanilla/UiIcon.js +2 -2
  180. package/vanilla/UiIconButton.d.ts +1 -1
  181. package/vanilla/UiIconButton.js +3 -3
  182. package/vanilla/UiImage.d.ts +1 -1
  183. package/vanilla/UiImage.js +2 -2
  184. package/vanilla/UiInput.d.ts +1 -1
  185. package/vanilla/UiInput.js +2 -2
  186. package/vanilla/UiInputGroup.d.ts +1 -1
  187. package/vanilla/UiInputGroup.js +2 -2
  188. package/vanilla/UiList.d.ts +1 -1
  189. package/vanilla/UiList.js +3 -3
  190. package/vanilla/UiListItem.d.ts +1 -1
  191. package/vanilla/UiListItem.js +2 -2
  192. package/vanilla/UiListbox.d.ts +1 -1
  193. package/vanilla/UiListbox.js +2 -2
  194. package/vanilla/UiMenu.d.ts +1 -1
  195. package/vanilla/UiMenu.js +2 -2
  196. package/vanilla/UiMenuGroup.d.ts +1 -1
  197. package/vanilla/UiMenuGroup.js +2 -2
  198. package/vanilla/UiMenuItem.d.ts +1 -1
  199. package/vanilla/UiMenuItem.js +4 -4
  200. package/vanilla/UiMeter.d.ts +1 -1
  201. package/vanilla/UiMeter.js +2 -2
  202. package/vanilla/UiNavItem.d.ts +1 -1
  203. package/vanilla/UiNavItem.js +3 -3
  204. package/vanilla/UiPageHeader.d.ts +1 -1
  205. package/vanilla/UiPageHeader.js +2 -2
  206. package/vanilla/UiPopover.d.ts +1 -1
  207. package/vanilla/UiPopover.js +2 -2
  208. package/vanilla/UiRadio.d.ts +1 -1
  209. package/vanilla/UiRadio.js +2 -2
  210. package/vanilla/UiRadioGroup.d.ts +1 -1
  211. package/vanilla/UiRadioGroup.js +2 -2
  212. package/vanilla/UiReel.d.ts +1 -1
  213. package/vanilla/UiReel.js +2 -2
  214. package/vanilla/UiScrollArea.d.ts +1 -1
  215. package/vanilla/UiScrollArea.js +2 -2
  216. package/vanilla/UiSearchResultRow.d.ts +1 -1
  217. package/vanilla/UiSearchResultRow.js +2 -2
  218. package/vanilla/UiSearchShell.d.ts +1 -1
  219. package/vanilla/UiSearchShell.js +2 -2
  220. package/vanilla/UiSection.d.ts +1 -1
  221. package/vanilla/UiSection.js +2 -2
  222. package/vanilla/UiSelect.d.ts +1 -1
  223. package/vanilla/UiSelect.js +2 -2
  224. package/vanilla/UiSeparator.d.ts +1 -1
  225. package/vanilla/UiSeparator.js +2 -2
  226. package/vanilla/UiSidebar.d.ts +1 -1
  227. package/vanilla/UiSidebar.js +2 -2
  228. package/vanilla/UiSpinner.d.ts +1 -1
  229. package/vanilla/UiSpinner.js +2 -2
  230. package/vanilla/UiStack.d.ts +1 -1
  231. package/vanilla/UiStack.js +2 -2
  232. package/vanilla/UiStatusMessage.d.ts +1 -1
  233. package/vanilla/UiStatusMessage.js +2 -2
  234. package/vanilla/UiSwatch.d.ts +1 -1
  235. package/vanilla/UiSwatch.js +2 -2
  236. package/vanilla/UiSwitch.d.ts +1 -1
  237. package/vanilla/UiSwitch.js +2 -2
  238. package/vanilla/UiSwitcher.d.ts +1 -1
  239. package/vanilla/UiSwitcher.js +2 -2
  240. package/vanilla/UiTable.d.ts +1 -1
  241. package/vanilla/UiTable.js +2 -2
  242. package/vanilla/UiTabs.d.ts +1 -1
  243. package/vanilla/UiTabs.js +2 -2
  244. package/vanilla/UiText.d.ts +1 -1
  245. package/vanilla/UiText.js +3 -3
  246. package/vanilla/UiTextarea.d.ts +1 -1
  247. package/vanilla/UiTextarea.js +2 -2
  248. package/vanilla/UiToast.d.ts +1 -1
  249. package/vanilla/UiToast.js +2 -2
  250. package/vanilla/UiToastRegion.d.ts +1 -1
  251. package/vanilla/UiToastRegion.js +2 -2
  252. package/vanilla/UiTooltip.d.ts +1 -1
  253. package/vanilla/UiTooltip.js +2 -2
  254. package/vanilla/UiTopBar.d.ts +1 -1
  255. package/vanilla/UiTopBar.js +1 -1
  256. package/vanilla/UiTree.d.ts +1 -1
  257. package/vanilla/UiTree.js +2 -2
  258. package/vanilla/UiTreeItem.d.ts +1 -1
  259. package/vanilla/UiTreeItem.js +3 -3
  260. package/vue/UiActionBar.vue +23 -15
  261. package/vue/UiAffordanceScope.vue +11 -9
  262. package/vue/UiAvatar.vue +34 -27
  263. package/vue/UiAvatarGroup.vue +22 -17
  264. package/vue/UiBadge.vue +78 -69
  265. package/vue/UiBreadcrumbItem.vue +17 -14
  266. package/vue/UiBreadcrumbs.vue +9 -7
  267. package/vue/UiButton.vue +150 -138
  268. package/vue/UiCallout.vue +68 -43
  269. package/vue/UiCard.vue +52 -44
  270. package/vue/UiCheckbox.vue +48 -40
  271. package/vue/UiCluster.vue +35 -33
  272. package/vue/UiCombobox.vue +158 -107
  273. package/vue/UiContainer.vue +16 -14
  274. package/vue/UiContextMenu.vue +24 -13
  275. package/vue/UiCover.vue +10 -8
  276. package/vue/UiDescriptionItem.vue +11 -9
  277. package/vue/UiDescriptionList.vue +20 -18
  278. package/vue/UiDialog.vue +41 -37
  279. package/vue/UiDisclosure.vue +65 -51
  280. package/vue/UiEditable.vue +34 -33
  281. package/vue/UiEditorBlockActions.vue +4 -3
  282. package/vue/UiEditorChipEditor.vue +4 -3
  283. package/vue/UiEditorCodeLanguage.vue +5 -4
  284. package/vue/UiEditorImageToolbar.vue +5 -4
  285. package/vue/UiEditorInsertTableGrid.vue +19 -18
  286. package/vue/UiEditorLinkCard.vue +7 -6
  287. package/vue/UiEditorLinkForm.vue +15 -14
  288. package/vue/UiEditorMentionMenu.vue +52 -37
  289. package/vue/UiEditorMentionMenuItem.vue +30 -20
  290. package/vue/UiEditorSlashMenu.vue +49 -36
  291. package/vue/UiEditorSlashMenuGroup.vue +16 -10
  292. package/vue/UiEditorSlashMenuItem.vue +36 -26
  293. package/vue/UiEditorSurface.vue +8 -6
  294. package/vue/UiEditorTableContextMenu.vue +26 -25
  295. package/vue/UiEditorTableOverlay.vue +56 -51
  296. package/vue/UiEditorTableToolbar.vue +37 -36
  297. package/vue/UiEditorToolbar.vue +24 -20
  298. package/vue/UiFloatingActionButton.vue +17 -15
  299. package/vue/UiFormField.vue +27 -22
  300. package/vue/UiGrid.vue +17 -15
  301. package/vue/UiIcon.vue +7 -6
  302. package/vue/UiIconButton.vue +75 -70
  303. package/vue/UiImage.vue +61 -46
  304. package/vue/UiInput.vue +28 -28
  305. package/vue/UiInputGroup.vue +48 -43
  306. package/vue/UiList.vue +25 -21
  307. package/vue/UiListItem.vue +54 -44
  308. package/vue/UiListbox.vue +29 -22
  309. package/vue/UiMenu.vue +25 -23
  310. package/vue/UiMenuGroup.vue +11 -7
  311. package/vue/UiMenuItem.vue +52 -43
  312. package/vue/UiMeter.vue +42 -41
  313. package/vue/UiNavItem.vue +60 -47
  314. package/vue/UiPageHeader.vue +27 -20
  315. package/vue/UiPopover.vue +21 -19
  316. package/vue/UiRadio.vue +32 -28
  317. package/vue/UiRadioGroup.vue +24 -19
  318. package/vue/UiReel.vue +24 -22
  319. package/vue/UiScrollArea.vue +30 -24
  320. package/vue/UiSearchResultRow.vue +41 -26
  321. package/vue/UiSearchShell.vue +37 -29
  322. package/vue/UiSection.vue +31 -24
  323. package/vue/UiSelect.vue +23 -21
  324. package/vue/UiSeparator.vue +14 -13
  325. package/vue/UiSidebar.vue +48 -40
  326. package/vue/UiSpinner.vue +14 -13
  327. package/vue/UiStack.vue +26 -24
  328. package/vue/UiStatusMessage.vue +26 -21
  329. package/vue/UiSwatch.vue +13 -12
  330. package/vue/UiSwitch.vue +37 -33
  331. package/vue/UiSwitcher.vue +27 -22
  332. package/vue/UiTable.vue +23 -19
  333. package/vue/UiTabs.vue +48 -33
  334. package/vue/UiText.vue +173 -151
  335. package/vue/UiTextarea.vue +27 -27
  336. package/vue/UiToast.vue +17 -15
  337. package/vue/UiToastRegion.vue +36 -31
  338. package/vue/UiTooltip.vue +40 -34
  339. package/vue/UiTopBar.vue +17 -13
  340. package/vue/UiTree.vue +17 -15
  341. package/vue/UiTreeItem.vue +202 -133
  342. package/vue/chunks/UiActionBar.js +21 -6
  343. package/vue/chunks/UiAffordanceScope.js +8 -6
  344. package/vue/chunks/UiAvatar.js +30 -20
  345. package/vue/chunks/UiAvatarGroup.js +16 -13
  346. package/vue/chunks/UiBadge.js +19 -13
  347. package/vue/chunks/UiBreadcrumbItem.js +13 -7
  348. package/vue/chunks/UiBreadcrumbs.js +9 -4
  349. package/vue/chunks/UiButton.js +158 -124
  350. package/vue/chunks/UiCallout.js +105 -37
  351. package/vue/chunks/UiCard.js +50 -42
  352. package/vue/chunks/UiCheckbox.js +32 -22
  353. package/vue/chunks/UiCluster.js +18 -16
  354. package/vue/chunks/UiCombobox.js +130 -73
  355. package/vue/chunks/UiContainer.js +10 -8
  356. package/vue/chunks/UiContextMenu.js +7 -4
  357. package/vue/chunks/UiCover.js +7 -5
  358. package/vue/chunks/UiDescriptionItem.js +9 -3
  359. package/vue/chunks/UiDescriptionList.js +10 -8
  360. package/vue/chunks/UiDialog.js +26 -19
  361. package/vue/chunks/UiDisclosure.js +43 -25
  362. package/vue/chunks/UiEditable.js +25 -24
  363. package/vue/chunks/UiEditorBlockActions.js +4 -3
  364. package/vue/chunks/UiEditorChipEditor.js +4 -3
  365. package/vue/chunks/UiEditorCodeLanguage.js +5 -4
  366. package/vue/chunks/UiEditorImageToolbar.js +7 -6
  367. package/vue/chunks/UiEditorInsertTableGrid.js +10 -9
  368. package/vue/chunks/UiEditorLinkCard.js +11 -10
  369. package/vue/chunks/UiEditorLinkForm.js +26 -25
  370. package/vue/chunks/UiEditorMentionMenu.js +41 -24
  371. package/vue/chunks/UiEditorMentionMenuItem.js +23 -11
  372. package/vue/chunks/UiEditorSlashMenu.js +41 -20
  373. package/vue/chunks/UiEditorSlashMenuGroup.js +16 -5
  374. package/vue/chunks/UiEditorSlashMenuItem.js +28 -14
  375. package/vue/chunks/UiEditorSurface.js +6 -4
  376. package/vue/chunks/UiEditorTableContextMenu.js +14 -13
  377. package/vue/chunks/UiEditorTableOverlay.js +6 -5
  378. package/vue/chunks/UiEditorTableToolbar.js +14 -13
  379. package/vue/chunks/UiEditorToolbar.js +8 -5
  380. package/vue/chunks/UiFloatingActionButton.js +11 -9
  381. package/vue/chunks/UiFormField.js +30 -16
  382. package/vue/chunks/UiGrid.js +10 -8
  383. package/vue/chunks/UiIcon.js +6 -3
  384. package/vue/chunks/UiIconButton.js +33 -26
  385. package/vue/chunks/UiImage.js +31 -22
  386. package/vue/chunks/UiInput.js +17 -16
  387. package/vue/chunks/UiInputGroup.js +30 -16
  388. package/vue/chunks/UiList.js +24 -20
  389. package/vue/chunks/UiListItem.js +39 -22
  390. package/vue/chunks/UiListbox.js +35 -25
  391. package/vue/chunks/UiMenu.js +22 -17
  392. package/vue/chunks/UiMenuGroup.js +7 -4
  393. package/vue/chunks/UiMenuItem.js +57 -38
  394. package/vue/chunks/UiMeter.js +22 -21
  395. package/vue/chunks/UiNavItem.js +78 -42
  396. package/vue/chunks/UiPageHeader.js +30 -10
  397. package/vue/chunks/UiPopover.js +16 -11
  398. package/vue/chunks/UiRadio.js +26 -16
  399. package/vue/chunks/UiRadioGroup.js +24 -19
  400. package/vue/chunks/UiReel.js +11 -9
  401. package/vue/chunks/UiScrollArea.js +16 -13
  402. package/vue/chunks/UiSearchResultRow.js +39 -19
  403. package/vue/chunks/UiSearchShell.js +36 -18
  404. package/vue/chunks/UiSection.js +31 -13
  405. package/vue/chunks/UiSelect.js +14 -12
  406. package/vue/chunks/UiSeparator.js +11 -10
  407. package/vue/chunks/UiSidebar.js +33 -23
  408. package/vue/chunks/UiSpinner.js +7 -6
  409. package/vue/chunks/UiStack.js +14 -12
  410. package/vue/chunks/UiStatusMessage.js +23 -11
  411. package/vue/chunks/UiSwatch.js +5 -4
  412. package/vue/chunks/UiSwitch.js +26 -16
  413. package/vue/chunks/UiSwitcher.js +13 -11
  414. package/vue/chunks/UiTable.js +9 -7
  415. package/vue/chunks/UiTabs.js +23 -18
  416. package/vue/chunks/UiText.js +277 -255
  417. package/vue/chunks/UiTextarea.js +21 -20
  418. package/vue/chunks/UiToast.js +13 -7
  419. package/vue/chunks/UiToastRegion.js +15 -8
  420. package/vue/chunks/UiTooltip.js +27 -19
  421. package/vue/chunks/UiTopBar.js +21 -6
  422. package/vue/chunks/UiTree.js +18 -16
  423. package/vue/chunks/UiTreeItem.js +82 -45
  424. package/vue/chunks/_plugin-vue_export-helper.js +17 -4
  425. package/vue/components.css +1507 -1479
  426. package/vue/editor/index.js +108 -65
  427. package/vue/host.ts +26 -6
package/vue/UiMeter.vue CHANGED
@@ -1,4 +1,4 @@
1
- <!-- Generated by HTML Next 1.0.0-alpha.51 for Vue 3.5. Do not edit. -->
1
+ <!-- Generated by HTML Next 1.0.0-alpha.52 for Vue 3.5. Do not edit. -->
2
2
  <script setup lang="ts">
3
3
  import { computed, watchSyncEffect } from 'vue'
4
4
  import type { PropType } from 'vue'
@@ -784,7 +784,7 @@ const guardedBinding7 = computed(() => {
784
784
  })
785
785
  checkHydratedRoot('span', 'ui-meter')
786
786
 
787
- /** The values the styles' :host-state() rules test. */
787
+ /** The values the styles' :host() prop and state rules test. */
788
788
  const hostState = computed(() =>
789
789
  [
790
790
  checkedProps.value.size && 'size',
@@ -802,6 +802,7 @@ const hostState = computed(() =>
802
802
  <span
803
803
  class="ui-meter"
804
804
  v-bind="nativeAttrs($attrs)"
805
+ data-hn
805
806
  :role="guarded"
806
807
  :aria-valuemin="guardedBinding"
807
808
  :aria-valuemax="guardedBinding2"
@@ -810,15 +811,15 @@ const hostState = computed(() =>
810
811
  :aria-label="guardedBinding5"
811
812
  :data-ui-meter-segments="guardedBinding6"
812
813
  v-prop-validity="{ contract: propValidityContract, values: { ...props } }"
813
- :data-label="reflectedProp('label', 'label', checkedProps.label, undefined, false)"
814
- :data-max="reflectedProp('max', 'max', checkedProps.max, undefined, false)"
815
- :data-parts="reflectedProp('parts', 'parts', checkedProps.parts, undefined, false)"
816
- :data-segments="reflectedProp('segments', 'segments', checkedProps.segments, undefined, false)"
817
- :data-size="reflectedProp('size', 'size', checkedProps.size, undefined, false)"
818
- :data-tone="reflectedProp('tone', 'tone', checkedProps.tone, undefined, false)"
819
- :data-value="reflectedProp('value', 'value', checkedProps.value, undefined, false)"
820
- :data-value-text="reflectedProp('valueText', 'value-text', checkedProps.valueText, undefined, false)"
821
- :data-variant="reflectedProp('variant', 'variant', checkedProps.variant, undefined, false)"
814
+ :data-ui-meter-prop-label="reflectedProp('label', 'label', checkedProps.label, undefined, false)"
815
+ :data-ui-meter-prop-max="reflectedProp('max', 'max', checkedProps.max, undefined, false)"
816
+ :data-ui-meter-prop-parts="reflectedProp('parts', 'parts', checkedProps.parts, undefined, false)"
817
+ :data-ui-meter-prop-segments="reflectedProp('segments', 'segments', checkedProps.segments, undefined, false)"
818
+ :data-ui-meter-prop-size="reflectedProp('size', 'size', checkedProps.size, undefined, false)"
819
+ :data-ui-meter-prop-tone="reflectedProp('tone', 'tone', checkedProps.tone, undefined, false)"
820
+ :data-ui-meter-prop-value="reflectedProp('value', 'value', checkedProps.value, undefined, false)"
821
+ :data-ui-meter-prop-value-text="reflectedProp('valueText', 'value-text', checkedProps.valueText, undefined, false)"
822
+ :data-ui-meter-prop-variant="reflectedProp('variant', 'variant', checkedProps.variant, undefined, false)"
822
823
  :data-ui-meter-state="hostState || undefined"
823
824
  ><span
824
825
  v-if="checkedProps.variant === 'progress'"
@@ -826,7 +827,7 @@ const hostState = computed(() =>
826
827
  :style="{ 'inline-size': guardedBinding7 }"
827
828
  ></span>
828
829
  <template v-if="checkedProps.variant === 'distribution'"><template
829
- v-for="(part, index) in checkedProps.parts"
830
+ v-for="(part, index) in checkedProps.parts ?? []"
830
831
  :key="index"
831
832
  ><span
832
833
  v-if="part.value > 0 && (decimalSubtract(part.value, part.value)) === 0"
@@ -861,8 +862,8 @@ const hostState = computed(() =>
861
862
 
862
863
  /* A component that sets its display still honours the hidden attribute on its root. */
863
864
 
864
- @scope (.ui-meter) {
865
- :scope:where(:scope) {
865
+ @scope (.ui-meter) to ([data-hn]) {
866
+ :global(:scope) {
866
867
  --_meter-fill: var(--ui-text-muted);
867
868
 
868
869
  display: inline-block;
@@ -879,12 +880,12 @@ const hostState = computed(() =>
879
880
  outline: var(--ui-border-width) solid transparent;
880
881
  }
881
882
 
882
- :scope:where(:scope):is([data-ui-meter-state~="size=sm"]) {
883
+ :global(:scope[data-ui-meter-state~="size=sm"]) {
883
884
  inline-size: var(--ui-meter-inline-size, 5rem);
884
885
  block-size: var(--ui-space-1);
885
886
  }
886
887
 
887
- .fill {
888
+ :global(.fill) {
888
889
  display: block;
889
890
  block-size: 100%;
890
891
  background-color: var(--_meter-fill);
@@ -892,70 +893,70 @@ const hostState = computed(() =>
892
893
  box-shadow: inset 0 1px rgb(255 255 255 / 0.26), inset 0 -1px rgb(0 0 0 / 0.1);
893
894
  }
894
895
 
895
- :scope:where(:scope):is([data-ui-meter-state~="tone=accent"]) {
896
+ :global(:scope[data-ui-meter-state~="tone=accent"]) {
896
897
  --_meter-fill: var(--ui-accent-solid);
897
898
  }
898
899
 
899
- :scope:where(:scope):is([data-ui-meter-state~="tone=info"]) {
900
+ :global(:scope[data-ui-meter-state~="tone=info"]) {
900
901
  --_meter-fill: var(--ui-info-solid);
901
902
  }
902
903
 
903
- :scope:where(:scope):is([data-ui-meter-state~="tone=success"]) {
904
+ :global(:scope[data-ui-meter-state~="tone=success"]) {
904
905
  --_meter-fill: var(--ui-success-solid);
905
906
  }
906
907
 
907
- :scope:where(:scope):is([data-ui-meter-state~="tone=warning"]) {
908
+ :global(:scope[data-ui-meter-state~="tone=warning"]) {
908
909
  --_meter-fill: var(--ui-warning-solid);
909
910
  }
910
911
 
911
- :scope:where(:scope):is([data-ui-meter-state~="tone=danger"]) {
912
+ :global(:scope[data-ui-meter-state~="tone=danger"]) {
912
913
  --_meter-fill: var(--ui-danger-solid);
913
914
  }
914
- :scope:where(:scope):is([data-ui-meter-segments="2"]) {
915
+ :global(:scope[data-ui-meter-segments="2"]) {
915
916
  --_segments: 2;
916
917
  }
917
918
 
918
- :scope:where(:scope):is([data-ui-meter-segments="3"]) {
919
+ :global(:scope[data-ui-meter-segments="3"]) {
919
920
  --_segments: 3;
920
921
  }
921
922
 
922
- :scope:where(:scope):is([data-ui-meter-segments="4"]) {
923
+ :global(:scope[data-ui-meter-segments="4"]) {
923
924
  --_segments: 4;
924
925
  }
925
926
 
926
- :scope:where(:scope):is([data-ui-meter-segments="5"]) {
927
+ :global(:scope[data-ui-meter-segments="5"]) {
927
928
  --_segments: 5;
928
929
  }
929
930
 
930
- :scope:where(:scope):is([data-ui-meter-segments="6"]) {
931
+ :global(:scope[data-ui-meter-segments="6"]) {
931
932
  --_segments: 6;
932
933
  }
933
934
 
934
- :scope:where(:scope):is([data-ui-meter-segments="7"]) {
935
+ :global(:scope[data-ui-meter-segments="7"]) {
935
936
  --_segments: 7;
936
937
  }
937
938
 
938
- :scope:where(:scope):is([data-ui-meter-segments="8"]) {
939
+ :global(:scope[data-ui-meter-segments="8"]) {
939
940
  --_segments: 8;
940
941
  }
941
942
 
942
- :scope:where(:scope):is([data-ui-meter-segments="9"]) {
943
+ :global(:scope[data-ui-meter-segments="9"]) {
943
944
  --_segments: 9;
944
945
  }
945
946
 
946
- :scope:where(:scope):is([data-ui-meter-segments="10"]) {
947
+ :global(:scope[data-ui-meter-segments="10"]) {
947
948
  --_segments: 10;
948
949
  }
949
950
 
950
- :scope:where(:scope):is([data-ui-meter-segments="11"]) {
951
+ :global(:scope[data-ui-meter-segments="11"]) {
951
952
  --_segments: 11;
952
953
  }
953
954
 
954
- :scope:where(:scope):is([data-ui-meter-segments="12"]) {
955
+ :global(:scope[data-ui-meter-segments="12"]) {
955
956
  --_segments: 12;
956
957
  }
957
958
 
958
- :scope:where(:scope):is([data-ui-meter-segments]) {
959
+ :global(:scope[data-ui-meter-segments]) {
959
960
  --_meter-gap: var(--ui-space-1);
960
961
  --_meter-period: calc((100% + var(--_meter-gap)) / var(--_segments));
961
962
  --_meter-segment: calc(var(--_meter-period) - var(--_meter-gap));
@@ -967,28 +968,28 @@ const hostState = computed(() =>
967
968
  );
968
969
  }
969
970
 
970
- :scope:where(:scope):is([data-ui-meter-state~="size=sm"][data-ui-meter-segments]) {
971
+ :global(:scope[data-ui-meter-state~="size=sm"][data-ui-meter-segments]) {
971
972
  --_meter-gap: var(--ui-space-0-5);
972
973
  }
973
- :scope:where(:scope):is([data-ui-meter-state~="variant=distribution"]) {
974
+ :global(:scope[data-ui-meter-state~="variant=distribution"]) {
974
975
  display: flex;
975
976
  inline-size: 100%;
976
977
  block-size: var(--ui-space-4);
977
978
  gap: var(--ui-space-0-5);
978
979
  }
979
980
 
980
- :scope:where(:scope):is([data-ui-meter-state~="variant=distribution"][size="sm"]) {
981
+ :global(:scope[data-ui-meter-state~="variant=distribution"][size="sm"]) {
981
982
  block-size: var(--ui-space-2);
982
983
  }
983
984
 
984
- .part {
985
+ :global(.part) {
985
986
  flex-basis: 0;
986
987
  min-inline-size: 0;
987
988
  block-size: 100%;
988
989
  }
989
990
 
990
991
  @media (forced-colors: active) {
991
- .part {
992
+ :global(.part) {
992
993
  forced-color-adjust: none;
993
994
  background: CanvasText !important;
994
995
  outline: var(--ui-border-width) solid Canvas;
@@ -996,14 +997,14 @@ const hostState = computed(() =>
996
997
  }
997
998
  }
998
999
  @media (forced-colors: active) {
999
- .fill {
1000
+ :global(.fill) {
1000
1001
  forced-color-adjust: none;
1001
1002
  background: CanvasText;
1002
1003
  }
1003
1004
 
1004
1005
  /* The mask clips the track's outline, so each segment draws its own: the inset shadow draws the
1005
1006
  top and bottom edges and the gradient the ends. */
1006
- :scope:where(:scope):is([data-ui-meter-segments]) {
1007
+ :global(:scope[data-ui-meter-segments]) {
1007
1008
  forced-color-adjust: none;
1008
1009
  background: repeating-linear-gradient(
1009
1010
  to right,
@@ -1015,7 +1016,7 @@ const hostState = computed(() =>
1015
1016
  box-shadow: inset 0 0 0 1px CanvasText;
1016
1017
  }
1017
1018
  }
1018
- :scope:where(:scope):is([hidden]) {
1019
+ :global(:scope[hidden]) {
1019
1020
  display: none;
1020
1021
  }
1021
1022
  }
package/vue/UiNavItem.vue CHANGED
@@ -1,4 +1,4 @@
1
- <!-- Generated by HTML Next 1.0.0-alpha.51 for Vue 3.5. Do not edit. -->
1
+ <!-- Generated by HTML Next 1.0.0-alpha.52 for Vue 3.5. Do not edit. -->
2
2
  <script setup lang="ts">
3
3
  import { computed, useTemplateRef, watchSyncEffect } from 'vue'
4
4
  import type { PropType } from 'vue'
@@ -236,7 +236,7 @@ const guardedBinding = computed(() => {
236
236
  })
237
237
  checkHydratedRoot((checkedProps.value.as === 'a') ? 'a' : ('button'), 'ui-nav-item')
238
238
 
239
- /** The values the styles' :host-state() rules test. */
239
+ /** The values the styles' :host() prop and state rules test. */
240
240
  const hostState = computed(() =>
241
241
  [
242
242
  checkedProps.value.variant && 'variant',
@@ -254,47 +254,57 @@ const hostState = computed(() =>
254
254
  v-if="checkedProps.as === 'a'"
255
255
  class="ui-nav-item"
256
256
  v-bind="nativeAttrs($attrs)"
257
+ data-hn
258
+ data-hn-ui-nav-item
257
259
  :href="checkedProps.href ?? undefined"
258
260
  :target="checkedProps.target ?? undefined"
259
261
  :rel="checkedProps.rel ?? undefined"
260
262
  :aria-current="guarded"
261
263
  v-prop-validity="{ contract: propValidityContract, values: { ...props } }"
262
- :data-as="reflectedProp('as', 'as', checkedProps.as, undefined, false)"
263
- :data-current="reflectedProp('current', 'current', checkedProps.current, undefined, false)"
264
- :data-density="reflectedProp('density', 'density', checkedProps.density, undefined, false)"
265
- :data-href="reflectedProp('href', 'href', checkedProps.href, undefined, false)"
266
- :data-rel="reflectedProp('rel', 'rel', checkedProps.rel, undefined, false)"
267
- :data-target="reflectedProp('target', 'target', checkedProps.target, undefined, false)"
268
- :data-variant="reflectedProp('variant', 'variant', checkedProps.variant, undefined, false)"
264
+ :data-ui-nav-item-prop-as="reflectedProp('as', 'as', checkedProps.as, undefined, false)"
265
+ :data-ui-nav-item-prop-current="reflectedProp('current', 'current', checkedProps.current, undefined, false)"
266
+ :data-ui-nav-item-prop-density="reflectedProp('density', 'density', checkedProps.density, undefined, false)"
267
+ :data-ui-nav-item-prop-href="reflectedProp('href', 'href', checkedProps.href, undefined, false)"
268
+ :data-ui-nav-item-prop-rel="reflectedProp('rel', 'rel', checkedProps.rel, undefined, false)"
269
+ :data-ui-nav-item-prop-target="reflectedProp('target', 'target', checkedProps.target, undefined, false)"
270
+ :data-ui-nav-item-prop-variant="reflectedProp('variant', 'variant', checkedProps.variant, undefined, false)"
269
271
  :data-ui-nav-item-state="hostState || undefined"
270
272
  ref="@html-next/root"
271
- ><span class="indicator" aria-hidden="true"></span>
272
- <span class="leading"><slot name="leading" /></span>
273
- <span class="content"><span class="label"><slot /></span>
274
- <span class="description"><slot name="description" /></span></span>
275
- <span class="trailing"><slot name="trailing" /></span></a>
273
+ ><span class="indicator" aria-hidden="true" data-hn-ui-nav-item></span>
274
+ <span class="leading" data-hn-ui-nav-item><slot name="leading" /></span>
275
+ <span class="content" data-hn-ui-nav-item><span
276
+ class="label"
277
+ data-hn-ui-nav-item
278
+ ><slot /></span>
279
+ <span class="description" data-hn-ui-nav-item><slot name="description" /></span></span>
280
+ <span class="trailing" data-hn-ui-nav-item><slot name="trailing" /></span></a>
276
281
  <button
277
282
  v-else
278
283
  class="ui-nav-item"
279
284
  type="button"
280
285
  v-bind="nativeAttrs($attrs)"
286
+ data-hn
287
+ data-hn-ui-nav-item
281
288
  :aria-current="guardedBinding"
282
289
  v-prop-validity="{ contract: propValidityContract, values: { ...props } }"
283
- :data-as="reflectedProp('as', 'as', checkedProps.as, undefined, false)"
284
- :data-current="reflectedProp('current', 'current', checkedProps.current, undefined, false)"
285
- :data-density="reflectedProp('density', 'density', checkedProps.density, undefined, false)"
286
- :data-href="reflectedProp('href', 'href', checkedProps.href, undefined, false)"
287
- :data-rel="reflectedProp('rel', 'rel', checkedProps.rel, undefined, false)"
288
- :data-target="reflectedProp('target', 'target', checkedProps.target, undefined, false)"
289
- :data-variant="reflectedProp('variant', 'variant', checkedProps.variant, undefined, false)"
290
+ :data-ui-nav-item-prop-as="reflectedProp('as', 'as', checkedProps.as, undefined, false)"
291
+ :data-ui-nav-item-prop-current="reflectedProp('current', 'current', checkedProps.current, undefined, false)"
292
+ :data-ui-nav-item-prop-density="reflectedProp('density', 'density', checkedProps.density, undefined, false)"
293
+ :data-ui-nav-item-prop-href="reflectedProp('href', 'href', checkedProps.href, undefined, false)"
294
+ :data-ui-nav-item-prop-rel="reflectedProp('rel', 'rel', checkedProps.rel, undefined, false)"
295
+ :data-ui-nav-item-prop-target="reflectedProp('target', 'target', checkedProps.target, undefined, false)"
296
+ :data-ui-nav-item-prop-variant="reflectedProp('variant', 'variant', checkedProps.variant, undefined, false)"
290
297
  :data-ui-nav-item-state="hostState || undefined"
291
298
  ref="@html-next/root"
292
299
  >
293
- <span class="indicator" aria-hidden="true"></span>
294
- <span class="leading"><slot name="leading" /></span>
295
- <span class="content"><span class="label"><slot /></span>
296
- <span class="description"><slot name="description" /></span></span>
297
- <span class="trailing"><slot name="trailing" /></span>
300
+ <span class="indicator" aria-hidden="true" data-hn-ui-nav-item></span>
301
+ <span class="leading" data-hn-ui-nav-item><slot name="leading" /></span>
302
+ <span class="content" data-hn-ui-nav-item><span
303
+ class="label"
304
+ data-hn-ui-nav-item
305
+ ><slot /></span>
306
+ <span class="description" data-hn-ui-nav-item><slot name="description" /></span></span>
307
+ <span class="trailing" data-hn-ui-nav-item><slot name="trailing" /></span>
298
308
  </button>
299
309
  </template>
300
310
 
@@ -337,8 +347,8 @@ const hostState = computed(() =>
337
347
 
338
348
  /* A component that sets its display still honours the hidden attribute on its root. */
339
349
 
340
- @scope (.ui-nav-item) {
341
- :scope:where(:scope) {
350
+ @scope (.ui-nav-item) to ([data-hn]) {
351
+ :global(:scope:where([data-hn-ui-nav-item])) {
342
352
  --_indicator-width: var(--ui-nav-item-indicator-width, var(--ui-accent-line-width));
343
353
  --_indicator-color: var(--ui-nav-item-indicator-color, var(--ui-accent));
344
354
  position: relative;
@@ -367,31 +377,31 @@ const hostState = computed(() =>
367
377
  color var(--ui-motion-fast) var(--ui-motion-ease);
368
378
  }
369
379
 
370
- :scope:where(:scope):is(:hover:not([aria-current])) {
380
+ :global(:scope:hover:not([aria-current]):where([data-hn-ui-nav-item])) {
371
381
  background: var(--_ui-selection-context-surface, var(--ui-nav-hover-surface));
372
382
  color: var(--ui-text-primary);
373
383
  }
374
- :scope:where(:scope):is(:focus-visible) {
384
+ :global(:scope:focus-visible:where([data-hn-ui-nav-item])) {
375
385
  outline: var(--ui-focus-width) solid var(--ui-focus-ring);
376
386
  outline-offset: calc(-1 * var(--ui-focus-width));
377
387
  }
378
388
 
379
- :scope:where(:scope):is([aria-current]) {
389
+ :global(:scope[aria-current]:where([data-hn-ui-nav-item])) {
380
390
  background: var(
381
391
  --ui-nav-item-current-surface,
382
392
  var(--_ui-selection-context-surface, var(--ui-selection-surface))
383
393
  );
384
394
  color: var(--_ui-selection-context-text, var(--ui-selection-text));
385
395
  }
386
- :scope:where(:scope):is([data-ui-nav-item-state~="variant=surface"]:is(:hover, [aria-current])) {
396
+ :global(:scope[data-ui-nav-item-state~="variant=surface"]:is(:hover, [aria-current]):where([data-hn-ui-nav-item])) {
387
397
  box-shadow: inset 0 0 0 var(--ui-border-width)
388
398
  var(--_ui-selection-context-border, var(--ui-selection-border));
389
399
  }
390
400
 
391
- :scope:where(:scope):is([data-ui-nav-item-state~="variant=line"]) {
401
+ :global(:scope[data-ui-nav-item-state~="variant=line"]:where([data-hn-ui-nav-item])) {
392
402
  border-radius: 0;
393
403
  }
394
- .indicator {
404
+ :global(.indicator:where([data-hn-ui-nav-item])) {
395
405
  position: absolute;
396
406
  inset-block: 0;
397
407
  inset-inline-start: 0;
@@ -399,23 +409,24 @@ const hostState = computed(() =>
399
409
  border-inline-start: var(--_indicator-width) solid var(--_indicator-color);
400
410
  }
401
411
 
402
- :scope[data-ui-nav-item-state~="variant=line"][aria-current] .indicator {
412
+ :global(:scope[data-ui-nav-item-state~="variant=line"][aria-current]
413
+ .indicator:where([data-hn-ui-nav-item])) {
403
414
  display: block;
404
415
  }
405
416
 
406
417
  @media (forced-colors: active) {
407
418
  /* System colors may erase the selected fill. Trace the complete surface, without
408
419
  creating an edge stripe; the stronger keyboard focus outline keeps precedence. */
409
- :scope:where(:scope):is([data-ui-nav-item-state~="variant=surface"][aria-current]:not(:focus-visible)) {
420
+ :global(:scope[data-ui-nav-item-state~="variant=surface"][aria-current]:not(:focus-visible):where([data-hn-ui-nav-item])) {
410
421
  outline: var(--ui-border-width) solid Highlight;
411
422
  outline-offset: calc(-1 * var(--ui-border-width));
412
423
  }
413
- .indicator {
424
+ :global(.indicator:where([data-hn-ui-nav-item])) {
414
425
  border-inline-start-color: Highlight;
415
426
  }
416
427
  }
417
428
 
418
- .leading, .trailing {
429
+ :global(.leading:where([data-hn-ui-nav-item])), :global(.trailing:where([data-hn-ui-nav-item])) {
419
430
  display: inline-flex;
420
431
  flex: none;
421
432
  align-items: center;
@@ -425,7 +436,7 @@ const hostState = computed(() =>
425
436
  font-size: var(--ui-nav-icon-size);
426
437
  }
427
438
 
428
- .content {
439
+ :global(.content:where([data-hn-ui-nav-item])) {
429
440
  display: flex;
430
441
  flex: 1;
431
442
  flex-direction: column;
@@ -433,7 +444,7 @@ const hostState = computed(() =>
433
444
  min-inline-size: 0;
434
445
  }
435
446
 
436
- .label, .description {
447
+ :global(.label:where([data-hn-ui-nav-item])), :global(.description:where([data-hn-ui-nav-item])) {
437
448
  display: block;
438
449
  min-inline-size: 0;
439
450
  overflow: hidden;
@@ -441,36 +452,38 @@ const hostState = computed(() =>
441
452
  white-space: nowrap;
442
453
  }
443
454
 
444
- .label {
455
+ :global(.label:where([data-hn-ui-nav-item])) {
445
456
  font-size: var(--ui-font-size-md);
446
457
  line-height: var(--ui-line-height-tight);
447
458
  }
448
459
 
449
- .description {
460
+ :global(.description:where([data-hn-ui-nav-item])) {
450
461
  color: var(--ui-text-muted);
451
462
  font-size: var(--ui-font-size-sm);
452
463
  font-weight: var(--ui-font-normal);
453
464
  line-height: var(--ui-line-height-tight);
454
465
  }
455
466
 
456
- :scope:where(:scope):is([data-ui-nav-item-state~="density=compact"]) {
467
+ :global(:scope[data-ui-nav-item-state~="density=compact"]:where([data-hn-ui-nav-item])) {
457
468
  min-block-size: var(--ui-nav-compact-min-block-size);
458
469
  padding-block: var(--ui-nav-compact-padding-block);
459
470
  padding-inline: var(--ui-nav-compact-padding-inline);
460
471
  }
461
- :scope[data-ui-nav-item-state~="density=compact"] .label {
472
+ :global(:scope[data-ui-nav-item-state~="density=compact"] .label:where([data-hn-ui-nav-item])) {
462
473
  font-size: var(--ui-font-size-sm);
463
474
  }
464
475
 
465
476
  @media (pointer: coarse) {
466
- :scope:where(:scope):is([data-ui-nav-item-state~="density=compact"]) {
477
+ :global(:scope[data-ui-nav-item-state~="density=compact"]:where([data-hn-ui-nav-item])) {
467
478
  min-block-size: var(--ui-control-min-block-size);
468
479
  }
469
480
  }
470
- .leading:empty, .trailing:empty, .description:empty {
481
+ :global(.leading:empty:where([data-hn-ui-nav-item])),
482
+ :global(.trailing:empty:where([data-hn-ui-nav-item])),
483
+ :global(.description:empty:where([data-hn-ui-nav-item])) {
471
484
  display: none;
472
485
  }
473
- :scope:where(:scope):is([hidden]) {
486
+ :global(:scope[hidden]:where([data-hn-ui-nav-item])) {
474
487
  display: none;
475
488
  }
476
489
  }
@@ -1,4 +1,4 @@
1
- <!-- Generated by HTML Next 1.0.0-alpha.51 for Vue 3.5. Do not edit. -->
1
+ <!-- Generated by HTML Next 1.0.0-alpha.52 for Vue 3.5. Do not edit. -->
2
2
  <script setup lang="ts">
3
3
  import { computed, watchSyncEffect } from 'vue'
4
4
  import type { PropType } from 'vue'
@@ -41,7 +41,7 @@ const reflectedProp = useReflectedProp()
41
41
 
42
42
  checkHydratedRoot('header', 'ui-page-header')
43
43
 
44
- /** The values the styles' :host-state() rules test. */
44
+ /** The values the styles' :host() prop and state rules test. */
45
45
  const hostState = computed(() =>
46
46
  [
47
47
  checkedProps.value.align && 'align',
@@ -54,15 +54,19 @@ const hostState = computed(() =>
54
54
  <header
55
55
  class="ui-page-header"
56
56
  v-bind="nativeAttrs($attrs)"
57
+ data-hn
58
+ data-hn-ui-page-header
57
59
  v-prop-validity="{ contract: propValidityContract, values: { ...props } }"
58
- :data-align="reflectedProp('align', 'align', checkedProps.align, undefined, false)"
60
+ :data-ui-page-header-prop-align="reflectedProp('align', 'align', checkedProps.align, undefined, false)"
59
61
  :data-ui-page-header-state="hostState || undefined"
60
62
  >
61
- <span class="leading"><slot name="leading" /></span>
62
- <span class="copy"><span class="eyebrow"><slot name="eyebrow" /></span>
63
- <h1 class="title"><slot /></h1>
64
- <span class="description"><slot name="description" /></span></span>
65
- <span class="actions"><slot name="actions" /></span>
63
+ <span class="leading" data-hn-ui-page-header><slot name="leading" /></span>
64
+ <span class="copy" data-hn-ui-page-header><span class="eyebrow" data-hn-ui-page-header><slot
65
+ name="eyebrow"
66
+ /></span>
67
+ <h1 class="title" data-hn-ui-page-header><slot /></h1>
68
+ <span class="description" data-hn-ui-page-header><slot name="description" /></span></span>
69
+ <span class="actions" data-hn-ui-page-header><slot name="actions" /></span>
66
70
  </header>
67
71
  </template>
68
72
 
@@ -73,8 +77,8 @@ const hostState = computed(() =>
73
77
 
74
78
  /* A component that sets its display still honours the hidden attribute on its root. */
75
79
 
76
- @scope (.ui-page-header) {
77
- :scope:where(:scope) {
80
+ @scope (.ui-page-header) to ([data-hn]) {
81
+ :global(:scope:where([data-hn-ui-page-header])) {
78
82
  display: flex;
79
83
  flex-wrap: wrap;
80
84
  inline-size: 100%;
@@ -83,7 +87,7 @@ const hostState = computed(() =>
83
87
  min-inline-size: 0;
84
88
  }
85
89
 
86
- .leading {
90
+ :global(.leading:where([data-hn-ui-page-header])) {
87
91
  display: inline-flex;
88
92
  flex: none;
89
93
  align-self: center;
@@ -91,7 +95,7 @@ const hostState = computed(() =>
91
95
  font-size: var(--ui-font-size-2xl);
92
96
  }
93
97
 
94
- .copy {
98
+ :global(.copy:where([data-hn-ui-page-header])) {
95
99
  display: flex;
96
100
  flex: 1 1 16rem;
97
101
  flex-direction: column;
@@ -99,7 +103,7 @@ const hostState = computed(() =>
99
103
  min-inline-size: 0;
100
104
  }
101
105
 
102
- .eyebrow {
106
+ :global(.eyebrow:where([data-hn-ui-page-header])) {
103
107
  color: var(--ui-text-muted);
104
108
  font-size: var(--ui-font-size-xs);
105
109
  font-weight: var(--ui-font-semibold);
@@ -107,7 +111,7 @@ const hostState = computed(() =>
107
111
  text-transform: uppercase;
108
112
  }
109
113
 
110
- .title {
114
+ :global(.title:where([data-hn-ui-page-header])) {
111
115
  margin: 0;
112
116
  color: var(--ui-text-primary);
113
117
  font-size: var(--ui-font-size-2xl);
@@ -116,13 +120,13 @@ const hostState = computed(() =>
116
120
  overflow-wrap: anywhere;
117
121
  }
118
122
 
119
- .description {
123
+ :global(.description:where([data-hn-ui-page-header])) {
120
124
  color: var(--ui-text-secondary);
121
125
  font-size: var(--ui-font-size-md);
122
126
  line-height: var(--ui-line-height);
123
127
  }
124
128
 
125
- .actions {
129
+ :global(.actions:where([data-hn-ui-page-header])) {
126
130
  display: inline-flex;
127
131
  flex: none;
128
132
  flex-wrap: wrap;
@@ -130,20 +134,23 @@ const hostState = computed(() =>
130
134
  gap: var(--ui-space-2);
131
135
  }
132
136
 
133
- :scope:where(:scope):is([data-ui-page-header-state~="align=center"]) {
137
+ :global(:scope[data-ui-page-header-state~="align=center"]:where([data-hn-ui-page-header])) {
134
138
  flex-direction: column;
135
139
  text-align: center;
136
140
  }
137
141
 
138
- :scope[data-ui-page-header-state~="align=center"] .copy {
142
+ :global(:scope[data-ui-page-header-state~="align=center"] .copy:where([data-hn-ui-page-header])) {
139
143
  align-items: center;
140
144
  flex-basis: auto;
141
145
  }
142
146
 
143
- .leading:empty, .eyebrow:empty, .description:empty, .actions:empty {
147
+ :global(.leading:empty:where([data-hn-ui-page-header])),
148
+ :global(.eyebrow:empty:where([data-hn-ui-page-header])),
149
+ :global(.description:empty:where([data-hn-ui-page-header])),
150
+ :global(.actions:empty:where([data-hn-ui-page-header])) {
144
151
  display: none;
145
152
  }
146
- :scope:where(:scope):is([hidden]) {
153
+ :global(:scope[hidden]:where([data-hn-ui-page-header])) {
147
154
  display: none;
148
155
  }
149
156
  }