@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
@@ -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, getCurrentInstance, provide, ref, useTemplateRef, watchSyncEffect } from 'vue'
4
4
  import type { PropType } from 'vue'
@@ -404,7 +404,7 @@ provide('html-next:ui-tree-item:isContainer', isContainer)
404
404
  provide('html-next:ui-tree-item:moving', moving)
405
405
  checkHydratedRoot('div', 'ui-tree-item')
406
406
 
407
- /** The values the styles' :host-state() rules test. */
407
+ /** The values the styles' :host() prop and state rules test. */
408
408
  const hostState = computed(() =>
409
409
  [
410
410
  checkedProps.value.selected && 'selected',
@@ -496,35 +496,44 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
496
496
  class="ui-tree-item"
497
497
  role="treeitem"
498
498
  v-bind="nativeAttrs($attrs)"
499
+ data-hn
500
+ data-hn-ui-tree-item
499
501
  :aria-label="checkedProps.label ?? undefined"
500
502
  :aria-level="structuralLevel"
501
503
  :aria-selected="checkedProps.selected ?? undefined"
502
504
  :aria-disabled="checkedProps.disabled ?? undefined"
505
+ :data-item-id="checkedProps.itemId ?? undefined"
506
+ :data-drag-type="checkedProps.dragType ?? undefined"
507
+ :data-drop-scope="checkedProps.dropScope ?? undefined"
508
+ :data-accepts="checkedProps.accepts ?? undefined"
509
+ :data-drop-depth="checkedProps.dropDepth ?? undefined"
510
+ :data-subtree-depth="checkedProps.subtreeDepth ?? undefined"
503
511
  v-prop-validity="{ contract: propValidityContract, values: { ...props } }"
504
- :data-accepts="reflectedProp('accepts', 'accepts', checkedProps.accepts, undefined, true)"
505
- :data-actions-visible="reflectedProp('actionsVisible', 'actions-visible', checkedProps.actionsVisible, undefined, false)"
506
- :data-container="reflectedProp('container', 'container', checkedProps.container, undefined, false)"
507
- :data-disabled="reflectedProp('disabled', 'disabled', checkedProps.disabled, undefined, false)"
508
- :data-drag-type="reflectedProp('dragType', 'drag-type', checkedProps.dragType, undefined, true)"
509
- :data-drop-depth="reflectedProp('dropDepth', 'drop-depth', checkedProps.dropDepth, undefined, true)"
510
- :data-drop-scope="reflectedProp('dropScope', 'drop-scope', checkedProps.dropScope, undefined, true)"
511
- :data-expanded="reflectedProp('expanded', 'expanded', checkedProps.expanded, undefined, false)"
512
- :data-item-id="reflectedProp('itemId', 'item-id', checkedProps.itemId, undefined, true)"
513
- :data-label="reflectedProp('label', 'label', checkedProps.label, undefined, false)"
514
- :data-lazy="reflectedProp('lazy', 'lazy', checkedProps.lazy, undefined, false)"
515
- :data-marquee="reflectedProp('marquee', 'marquee', checkedProps.marquee, undefined, false)"
516
- :data-selected="reflectedProp('selected', 'selected', checkedProps.selected, undefined, false)"
517
- :data-sortable="reflectedProp('sortable', 'sortable', checkedProps.sortable, undefined, false)"
518
- :data-subtree-depth="reflectedProp('subtreeDepth', 'subtree-depth', checkedProps.subtreeDepth, undefined, true)"
512
+ :data-ui-tree-item-prop-accepts="reflectedProp('accepts', 'accepts', checkedProps.accepts, undefined, false)"
513
+ :data-ui-tree-item-prop-actions-visible="reflectedProp('actionsVisible', 'actions-visible', checkedProps.actionsVisible, undefined, false)"
514
+ :data-ui-tree-item-prop-container="reflectedProp('container', 'container', checkedProps.container, undefined, false)"
515
+ :data-ui-tree-item-prop-disabled="reflectedProp('disabled', 'disabled', checkedProps.disabled, undefined, false)"
516
+ :data-ui-tree-item-prop-drag-type="reflectedProp('dragType', 'drag-type', checkedProps.dragType, undefined, false)"
517
+ :data-ui-tree-item-prop-drop-depth="reflectedProp('dropDepth', 'drop-depth', checkedProps.dropDepth, undefined, false)"
518
+ :data-ui-tree-item-prop-drop-scope="reflectedProp('dropScope', 'drop-scope', checkedProps.dropScope, undefined, false)"
519
+ :data-ui-tree-item-prop-expanded="reflectedProp('expanded', 'expanded', checkedProps.expanded, undefined, false)"
520
+ :data-ui-tree-item-prop-item-id="reflectedProp('itemId', 'item-id', checkedProps.itemId, undefined, false)"
521
+ :data-ui-tree-item-prop-label="reflectedProp('label', 'label', checkedProps.label, undefined, false)"
522
+ :data-ui-tree-item-prop-lazy="reflectedProp('lazy', 'lazy', checkedProps.lazy, undefined, false)"
523
+ :data-ui-tree-item-prop-marquee="reflectedProp('marquee', 'marquee', checkedProps.marquee, undefined, false)"
524
+ :data-ui-tree-item-prop-selected="reflectedProp('selected', 'selected', checkedProps.selected, undefined, false)"
525
+ :data-ui-tree-item-prop-sortable="reflectedProp('sortable', 'sortable', checkedProps.sortable, undefined, false)"
526
+ :data-ui-tree-item-prop-subtree-depth="reflectedProp('subtreeDepth', 'subtree-depth', checkedProps.subtreeDepth, undefined, false)"
519
527
  :data-ui-tree-item-state="hostState || undefined"
520
528
  ref="root"
521
529
  >
522
- <div class="row" ref="rowElement">
530
+ <div class="row" data-hn-ui-tree-item ref="rowElement">
523
531
  <button
524
532
  v-if="checkedProps.sortable && !checkedProps.disabled"
525
533
  class="drag-handle"
526
534
  type="button"
527
535
  draggable="true"
536
+ data-hn-ui-tree-item
528
537
  :aria-label="guarded"
529
538
  ref="dragHandleElement"
530
539
  >
@@ -537,37 +546,42 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
537
546
  stroke-width="2"
538
547
  stroke-linecap="round"
539
548
  stroke-linejoin="round"
549
+ data-hn-ui-tree-item
540
550
  >
541
- <circle cx="9" cy="12" r="1"></circle>
542
- <circle cx="9" cy="5" r="1"></circle>
543
- <circle cx="9" cy="19" r="1"></circle>
544
- <circle cx="15" cy="12" r="1"></circle>
545
- <circle cx="15" cy="5" r="1"></circle>
546
- <circle cx="15" cy="19" r="1"></circle>
551
+ <circle cx="9" cy="12" r="1" data-hn-ui-tree-item></circle>
552
+ <circle cx="9" cy="5" r="1" data-hn-ui-tree-item></circle>
553
+ <circle cx="9" cy="19" r="1" data-hn-ui-tree-item></circle>
554
+ <circle cx="15" cy="12" r="1" data-hn-ui-tree-item></circle>
555
+ <circle cx="15" cy="5" r="1" data-hn-ui-tree-item></circle>
556
+ <circle cx="15" cy="19" r="1" data-hn-ui-tree-item></circle>
547
557
  </svg>
548
558
  </button>
549
559
  <button
550
560
  class="disclosure"
551
561
  type="button"
562
+ data-hn-ui-tree-item
552
563
  :disabled="checkedProps.disabled ?? undefined"
553
564
  :hidden="!isContainer"
554
565
  ref="disclosureElement"
555
566
  >
556
- <span class="disclosure-icon" aria-hidden="true"></span>
567
+ <span class="disclosure-icon" aria-hidden="true" data-hn-ui-tree-item></span>
557
568
  </button>
558
- <label class="selection-hit"><input
569
+ <label class="selection-hit" data-hn-ui-tree-item><input
559
570
  class="selection-checkbox"
560
571
  type="checkbox"
561
572
  tabindex="-1"
573
+ data-hn-ui-tree-item
562
574
  :checked.attr="checkedProps.selected ? true : undefined"
563
575
  :disabled="checkedProps.disabled ?? undefined"
564
576
  :aria-label="guardedBinding"
565
577
  ></label>
566
- <span class="leading" ref="leadingElement"><slot name="leading" /></span>
567
- <span class="label" ref="labelElement"><span class="label-text" ref="labelTextElement"><slot
568
- name="label"
569
- >{{ checkedProps.label }}</slot></span></span>
570
- <span class="actions" ref="actionsElement"><UiButton
578
+ <span class="leading" data-hn-ui-tree-item ref="leadingElement"><slot name="leading" /></span>
579
+ <span class="label" data-hn-ui-tree-item ref="labelElement"><span
580
+ class="label-text"
581
+ data-hn-ui-tree-item
582
+ ref="labelTextElement"
583
+ ><slot name="label">{{ checkedProps.label }}</slot></span></span>
584
+ <span class="actions" data-hn-ui-tree-item ref="actionsElement"><UiButton
571
585
  v-if="moving"
572
586
  class="ui-button"
573
587
  data-tree-cancel-move=""
@@ -576,18 +590,27 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
576
590
  size="sm"
577
591
  aria-label="Cancel move"
578
592
  >Cancel</UiButton>
579
- <span><slot name="actions" /></span></span>
580
- <span class="drop-indicator row-drop-indicator" aria-hidden="true"></span>
593
+ <span data-hn-ui-tree-item><slot name="actions" /></span></span>
594
+ <span
595
+ class="drop-indicator row-drop-indicator"
596
+ aria-hidden="true"
597
+ data-hn-ui-tree-item
598
+ ></span>
581
599
  </div>
582
600
  <div
583
601
  class="children"
584
602
  role="group"
603
+ data-hn-ui-tree-item
585
604
  :hidden="!(isContainer && internalExpanded)"
586
605
  ref="childrenElement"
587
606
  >
588
607
  <slot />
589
608
  </div>
590
- <span class="drop-indicator subtree-drop-indicator" aria-hidden="true"></span>
609
+ <span
610
+ class="drop-indicator subtree-drop-indicator"
611
+ aria-hidden="true"
612
+ data-hn-ui-tree-item
613
+ ></span>
591
614
  </div>
592
615
  </template>
593
616
 
@@ -664,8 +687,8 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
664
687
 
665
688
  /* A component that sets its display still honours the hidden attribute on its root. */
666
689
 
667
- @scope (.ui-tree-item) to (.ui-button) {
668
- :scope:where(:scope) {
690
+ @scope (.ui-tree-item) to ([data-hn]) {
691
+ :global(:scope:where([data-hn-ui-tree-item])) {
669
692
  /* Hooks do not inherit, so the parts below read them from the root. The tree's density
670
693
  sets the defaults, in --_ui-default-*. */
671
694
  --_ui-tree-item-min-block-size: var(
@@ -691,7 +714,7 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
691
714
  margin-inline-start: calc(var(--_ui-tree-item-indent-step, 0) * var(--_ui-tree-indent, 16px));
692
715
  }
693
716
 
694
- .row {
717
+ :global(.row:where([data-hn-ui-tree-item])) {
695
718
  position: relative;
696
719
  display: grid;
697
720
  grid-template-columns: var(--_tree-disclosure-size) auto minmax(0, 1fr);
@@ -709,57 +732,62 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
709
732
  min-block-size var(--ui-motion-base) var(--ui-motion-ease);
710
733
  }
711
734
 
712
- .row:hover, .row:focus-within {
735
+ :global(.row:hover:where([data-hn-ui-tree-item])),
736
+ :global(.row:focus-within:where([data-hn-ui-tree-item])) {
713
737
  color: var(--ui-text-primary);
714
738
  background: var(--_ui-selection-context-surface, var(--ui-surface-muted));
715
739
  box-shadow: inset 0 0 0 var(--ui-border-width)
716
740
  var(--_ui-selection-context-border, var(--ui-selection-border));
717
741
  }
718
- :scope[data-ui-tree-item-state~="selected"] > .row {
742
+ :global(:scope[data-ui-tree-item-state~="selected"] > .row:where([data-hn-ui-tree-item])) {
719
743
  color: var(--_ui-selection-context-text, var(--ui-selection-text));
720
744
  background: var(--_ui-selection-context-surface, var(--ui-selection-surface));
721
745
  box-shadow: inset 0 0 0 var(--ui-border-width)
722
746
  var(--_ui-selection-context-border, var(--ui-selection-border));
723
747
  }
724
- :scope[data-ui-tree-item-state~="selected"]:not([aria-disabled="true"]) > .row > .leading {
748
+ :global(:scope[data-ui-tree-item-state~="selected"]:not([aria-disabled="true"])
749
+ > .row
750
+ > .leading:where([data-hn-ui-tree-item])) {
725
751
  color: var(--_ui-selection-context-text, var(--ui-selection-text));
726
752
  }
727
753
 
728
- :scope[data-ui-tree-item-state~="disabled"] .row {
754
+ :global(:scope[data-ui-tree-item-state~="disabled"] .row:where([data-hn-ui-tree-item])) {
729
755
  color: var(--ui-disabled-text);
730
756
  background: var(--ui-disabled-surface);
731
757
  box-shadow: none;
732
758
  }
733
759
 
734
- :scope[data-dragging]:not([data-move-source]) .row {
760
+ :global(:scope[data-dragging]:not([data-move-source]) .row:where([data-hn-ui-tree-item])) {
735
761
  opacity: 0.42;
736
762
  }
737
763
 
738
- :scope[data-move-source] > .row > .label, :scope[data-move-source] > .row > .leading {
764
+ :global(:scope[data-move-source] > .row > .label:where([data-hn-ui-tree-item])),
765
+ :global(:scope[data-move-source] > .row > .leading:where([data-hn-ui-tree-item])) {
739
766
  opacity: 0.42;
740
767
  }
741
768
 
742
- :scope:where(:scope):is(:focus) {
769
+ :global(:scope:focus:where([data-hn-ui-tree-item])) {
743
770
  outline: none;
744
771
  }
745
772
 
746
- :scope:focus-visible .row {
773
+ :global(:scope:focus-visible .row:where([data-hn-ui-tree-item])) {
747
774
  box-shadow: 0 0 0 var(--ui-focus-width) var(--ui-focus-ring);
748
775
  }
749
- :scope[data-drop-position="inside"] > .row {
776
+ :global(:scope[data-drop-position="inside"] > .row:where([data-hn-ui-tree-item])) {
750
777
  background: var(--ui-accent-subtle);
751
778
  box-shadow: inset 0 0 0 var(--ui-accent-line-width)
752
779
  var(--_ui-tree-drop-color, var(--ui-accent-solid));
753
780
  }
754
781
 
755
- .disclosure, .disclosure-spacer {
782
+ :global(.disclosure:where([data-hn-ui-tree-item])),
783
+ :global(.disclosure-spacer:where([data-hn-ui-tree-item])) {
756
784
  grid-column: 1;
757
785
  grid-row: 1;
758
786
  inline-size: var(--_tree-disclosure-size);
759
787
  block-size: 28px;
760
788
  }
761
789
 
762
- .disclosure {
790
+ :global(.disclosure:where([data-hn-ui-tree-item])) {
763
791
  display: grid;
764
792
  /* Start-aligned: the chevron's ink, not its hit area, aligns with the content above it. */
765
793
  place-items: center start;
@@ -771,11 +799,11 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
771
799
  cursor: pointer;
772
800
  }
773
801
 
774
- .disclosure[hidden] {
802
+ :global(.disclosure[hidden]:where([data-hn-ui-tree-item])) {
775
803
  display: none;
776
804
  }
777
805
 
778
- .selection-hit {
806
+ :global(.selection-hit:where([data-hn-ui-tree-item])) {
779
807
  display: none;
780
808
  grid-column: 2;
781
809
  grid-row: 1;
@@ -784,32 +812,34 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
784
812
  block-size: var(--_ui-tree-item-min-block-size, var(--_tree-row-min-height));
785
813
  cursor: pointer;
786
814
  }
787
- .selection-checkbox {
815
+ :global(.selection-checkbox:where([data-hn-ui-tree-item])) {
788
816
  inline-size: 1rem;
789
817
  block-size: 1rem;
790
818
  margin: 0;
791
819
  accent-color: var(--ui-accent-solid);
792
820
  }
793
821
 
794
- :scope[data-selection-mode="multiple"] > .row {
822
+ :global(:scope[data-selection-mode="multiple"] > .row:where([data-hn-ui-tree-item])) {
795
823
  grid-template-columns: var(--_tree-disclosure-size) 1.25rem auto minmax(0, 1fr);
796
824
  }
797
- :scope[data-selection-mode="multiple"] > .row > .selection-hit {
825
+ :global(:scope[data-selection-mode="multiple"]
826
+ > .row
827
+ > .selection-hit:where([data-hn-ui-tree-item])) {
798
828
  display: grid;
799
829
  }
800
- :scope[data-selection-mode="multiple"] > .row > .leading {
830
+ :global(:scope[data-selection-mode="multiple"] > .row > .leading:where([data-hn-ui-tree-item])) {
801
831
  grid-column: 3;
802
832
  }
803
- :scope[data-selection-mode="multiple"] > .row > .label {
833
+ :global(:scope[data-selection-mode="multiple"] > .row > .label:where([data-hn-ui-tree-item])) {
804
834
  grid-column: 4;
805
835
  }
806
836
 
807
- .disclosure:hover {
837
+ :global(.disclosure:hover:where([data-hn-ui-tree-item])) {
808
838
  color: var(--ui-text-primary);
809
839
  background: var(--ui-surface-elevated);
810
840
  }
811
841
 
812
- .disclosure-icon {
842
+ :global(.disclosure-icon:where([data-hn-ui-tree-item])) {
813
843
  display: grid;
814
844
  place-items: center;
815
845
  inline-size: 12px;
@@ -818,7 +848,7 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
818
848
  transition: transform var(--ui-motion-fast) var(--ui-motion-ease);
819
849
  }
820
850
 
821
- .disclosure-icon::before {
851
+ :global(.disclosure-icon:where([data-hn-ui-tree-item])::before) {
822
852
  display: block;
823
853
  inline-size: 0.375rem;
824
854
  block-size: 0.375rem;
@@ -829,15 +859,18 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
829
859
  transform: translateY(-20%) rotate(45deg);
830
860
  }
831
861
 
832
- :scope[aria-expanded="true"] > .row > .disclosure > .disclosure-icon {
862
+ :global(:scope[aria-expanded="true"]
863
+ > .row
864
+ > .disclosure
865
+ > .disclosure-icon:where([data-hn-ui-tree-item])) {
833
866
  transform: rotate(0deg);
834
867
  }
835
- .drag-handle svg {
868
+ :global(.drag-handle svg:where([data-hn-ui-tree-item])) {
836
869
  display: block;
837
870
  inline-size: 100%;
838
871
  block-size: 100%;
839
872
  }
840
- .leading {
873
+ :global(.leading:where([data-hn-ui-tree-item])) {
841
874
  display: inline-grid;
842
875
  place-items: center;
843
876
  grid-column: 2;
@@ -851,16 +884,17 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
851
884
  z-index: 1;
852
885
  }
853
886
 
854
- .leading:empty {
887
+ :global(.leading:empty:where([data-hn-ui-tree-item])) {
855
888
  display: none;
856
889
  }
857
- :slotted(svg), :slotted(img) {
890
+ :global(:where(:not([data-hn-ui-tree-item])):is(svg)),
891
+ :global(:where(:not([data-hn-ui-tree-item])):is(img)) {
858
892
  display: block;
859
893
  inline-size: 1em;
860
894
  block-size: 1em;
861
895
  flex: none;
862
896
  }
863
- .label {
897
+ :global(.label:where([data-hn-ui-tree-item])) {
864
898
  grid-column: 3;
865
899
  grid-row: 1;
866
900
  align-self: stretch;
@@ -875,7 +909,7 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
875
909
  is where the controller reads the length in pixels to stop a sliding name before the fade. */
876
910
  column-gap: var(--ui-space-1);
877
911
  }
878
- .label-text {
912
+ :global(.label-text:where([data-hn-ui-tree-item])) {
879
913
  display: flex;
880
914
  align-items: center;
881
915
  /* Stretches, so slotted content can still be the row's full-height hit area. */
@@ -886,14 +920,16 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
886
920
  white-space: nowrap;
887
921
  }
888
922
 
889
- .label-text > :slotted(*) {
923
+ :global(.label-text > :where(:not([data-hn-ui-tree-item])):is(*)) {
890
924
  flex: 1 1 auto;
891
925
  min-inline-size: 0;
892
926
  }
893
- .row:hover > .label,
894
- .row:focus-within > .label,
895
- :scope[data-ui-tree-item-state~="actionsVisible"] > .row > .label,
896
- :scope[data-move-source] > .row > .label {
927
+ :global(.row:hover > .label:where([data-hn-ui-tree-item])),
928
+ :global(.row:focus-within > .label:where([data-hn-ui-tree-item])),
929
+ :global(:scope[data-ui-tree-item-state~="actionsVisible"]
930
+ > .row
931
+ > .label:where([data-hn-ui-tree-item])),
932
+ :global(:scope[data-move-source] > .row > .label:where([data-hn-ui-tree-item])) {
897
933
  text-overflow: clip;
898
934
  mask-image: linear-gradient(
899
935
  to right,
@@ -902,23 +938,25 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
902
938
  );
903
939
  }
904
940
 
905
- .row:hover > .label:dir(rtl),
906
- .row:focus-within > .label:dir(rtl),
907
- :scope[data-ui-tree-item-state~="actionsVisible"] > .row > .label:dir(rtl),
908
- :scope[data-move-source] > .row > .label:dir(rtl) {
941
+ :global(.row:hover > .label:dir(rtl):where([data-hn-ui-tree-item])),
942
+ :global(.row:focus-within > .label:dir(rtl):where([data-hn-ui-tree-item])),
943
+ :global(:scope[data-ui-tree-item-state~="actionsVisible"]
944
+ > .row
945
+ > .label:dir(rtl):where([data-hn-ui-tree-item])),
946
+ :global(:scope[data-move-source] > .row > .label:dir(rtl):where([data-hn-ui-tree-item])) {
909
947
  mask-image: linear-gradient(
910
948
  to left,
911
949
  #000 calc(100% - var(--_tree-actions-width, 1.75rem) - var(--ui-space-1)),
912
950
  transparent calc(100% - var(--_tree-actions-width, 1.75rem))
913
951
  );
914
952
  }
915
- .row[data-ui-marquee] > .label > .label-text {
953
+ :global(.row[data-ui-marquee] > .label > .label-text:where([data-hn-ui-tree-item])) {
916
954
  /* Once per pass: the controller restarts it after a rest at the end, so the name holds still
917
955
  long enough to read rather than sliding back and forth. */
918
956
  animation: ui-tree-item-marquee var(--_marquee-duration) linear 0.5s 1 normal forwards;
919
957
  will-change: transform;
920
958
  }
921
- .row[data-ui-marquee] > .label {
959
+ :global(.row[data-ui-marquee] > .label:where([data-hn-ui-tree-item])) {
922
960
  margin-inline-start: calc(-1 * var(--_marquee-lead, 0px));
923
961
  padding-inline-start: calc(
924
962
  var(--_marquee-lead, 0px) + var(--_ui-tree-item-label-padding-inline, var(--ui-space-2))
@@ -934,7 +972,7 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
934
972
  );
935
973
  }
936
974
 
937
- .row[data-ui-marquee] > .label:dir(rtl) {
975
+ :global(.row[data-ui-marquee] > .label:dir(rtl):where([data-hn-ui-tree-item])) {
938
976
  mask-image: linear-gradient(
939
977
  to left,
940
978
  transparent var(--_marquee-icon-width, 0px),
@@ -946,16 +984,17 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
946
984
  );
947
985
  }
948
986
  @media (prefers-reduced-motion: reduce) {
949
- .row[data-ui-marquee] > .label > .label-text {
987
+ :global(.row[data-ui-marquee] > .label > .label-text:where([data-hn-ui-tree-item])) {
950
988
  animation: none;
951
989
  }
952
990
  }
953
991
 
954
- .row:hover > .label > :slotted(*), .row:focus-within > .label > :slotted(*) {
992
+ :global(.row:hover > .label > :where(:not([data-hn-ui-tree-item])):is(*)),
993
+ :global(.row:focus-within > .label > :where(:not([data-hn-ui-tree-item])):is(*)) {
955
994
  text-overflow: clip;
956
995
  }
957
996
 
958
- .actions {
997
+ :global(.actions:where([data-hn-ui-tree-item])) {
959
998
  position: absolute;
960
999
  z-index: 1;
961
1000
  inset-block: 0;
@@ -968,19 +1007,21 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
968
1007
  transition: opacity var(--ui-motion-fast) var(--ui-motion-ease);
969
1008
  }
970
1009
 
971
- .row:hover > .actions,
972
- .row:focus-within > .actions,
973
- :scope[data-ui-tree-item-state~="actionsVisible"] > .row > .actions,
974
- :scope[data-move-source] > .row > .actions {
1010
+ :global(.row:hover > .actions:where([data-hn-ui-tree-item])),
1011
+ :global(.row:focus-within > .actions:where([data-hn-ui-tree-item])),
1012
+ :global(:scope[data-ui-tree-item-state~="actionsVisible"]
1013
+ > .row
1014
+ > .actions:where([data-hn-ui-tree-item])),
1015
+ :global(:scope[data-move-source] > .row > .actions:where([data-hn-ui-tree-item])) {
975
1016
  opacity: 1;
976
1017
  pointer-events: auto;
977
1018
  }
978
1019
  @media (hover: none), (pointer: coarse) {
979
- .row {
1020
+ :global(.row:where([data-hn-ui-tree-item])) {
980
1021
  grid-template-columns: var(--_tree-disclosure-size) auto minmax(0, 1fr) auto;
981
1022
  }
982
1023
 
983
- .actions {
1024
+ :global(.actions:where([data-hn-ui-tree-item])) {
984
1025
  position: static;
985
1026
  grid-column: 4;
986
1027
  grid-row: 1;
@@ -990,14 +1031,14 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
990
1031
  pointer-events: auto;
991
1032
  }
992
1033
 
993
- .row:is(:hover, :focus-within) > .label,
994
- .row:is(:hover, :focus-within) > .label:dir(rtl),
995
- :scope[data-move-source] > .row > .label,
996
- :scope[data-move-source] > .row > .label:dir(rtl) {
1034
+ :global(.row:is(:hover, :focus-within) > .label:where([data-hn-ui-tree-item])),
1035
+ :global(.row:is(:hover, :focus-within) > .label:dir(rtl):where([data-hn-ui-tree-item])),
1036
+ :global(:scope[data-move-source] > .row > .label:where([data-hn-ui-tree-item])),
1037
+ :global(:scope[data-move-source] > .row > .label:dir(rtl):where([data-hn-ui-tree-item])) {
997
1038
  mask-image: none;
998
1039
  }
999
1040
 
1000
- .row[data-ui-marquee] > .label {
1041
+ :global(.row[data-ui-marquee] > .label:where([data-hn-ui-tree-item])) {
1001
1042
  mask-image: linear-gradient(
1002
1043
  to right,
1003
1044
  transparent var(--_marquee-icon-width, 0px),
@@ -1008,14 +1049,18 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
1008
1049
  }
1009
1050
 
1010
1051
  /* Persistent content has its own column on touch. Fade only the label's end. */
1011
- :scope[data-ui-tree-item-state~="actionsVisible"] > .row > .label {
1052
+ :global(:scope[data-ui-tree-item-state~="actionsVisible"]
1053
+ > .row
1054
+ > .label:where([data-hn-ui-tree-item])) {
1012
1055
  mask-image: linear-gradient(to right, #000 calc(100% - var(--ui-space-1)), transparent 100%);
1013
1056
  }
1014
- :scope[data-ui-tree-item-state~="actionsVisible"] > .row > .label:dir(rtl) {
1057
+ :global(:scope[data-ui-tree-item-state~="actionsVisible"]
1058
+ > .row
1059
+ > .label:dir(rtl):where([data-hn-ui-tree-item])) {
1015
1060
  mask-image: linear-gradient(to left, #000 calc(100% - var(--ui-space-1)), transparent 100%);
1016
1061
  }
1017
1062
 
1018
- .row[data-ui-marquee] > .label:dir(rtl) {
1063
+ :global(.row[data-ui-marquee] > .label:dir(rtl):where([data-hn-ui-tree-item])) {
1019
1064
  mask-image: linear-gradient(
1020
1065
  to left,
1021
1066
  transparent var(--_marquee-icon-width, 0px),
@@ -1025,15 +1070,17 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
1025
1070
  );
1026
1071
  }
1027
1072
 
1028
- :scope[data-selection-mode="multiple"] > .row {
1073
+ :global(:scope[data-selection-mode="multiple"] > .row:where([data-hn-ui-tree-item])) {
1029
1074
  grid-template-columns: var(--_tree-disclosure-size) 1.25rem auto minmax(0, 1fr) auto;
1030
1075
  }
1031
1076
 
1032
- :scope[data-selection-mode="multiple"] > .row > .actions {
1077
+ :global(:scope[data-selection-mode="multiple"]
1078
+ > .row
1079
+ > .actions:where([data-hn-ui-tree-item])) {
1033
1080
  grid-column: 5;
1034
1081
  }
1035
1082
  }
1036
- .drag-handle {
1083
+ :global(.drag-handle:where([data-hn-ui-tree-item])) {
1037
1084
  position: absolute;
1038
1085
  z-index: 2;
1039
1086
  inset-block-start: 50%;
@@ -1055,27 +1102,30 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
1055
1102
  transition: opacity var(--ui-motion-fast) var(--ui-motion-ease);
1056
1103
  }
1057
1104
 
1058
- .row:hover .drag-handle,
1059
- .drag-handle:hover,
1060
- .drag-handle:focus-visible,
1061
- :scope[data-dragging] > .row > .drag-handle {
1105
+ :global(.row:hover .drag-handle:where([data-hn-ui-tree-item])),
1106
+ :global(.drag-handle:hover:where([data-hn-ui-tree-item])),
1107
+ :global(.drag-handle:focus-visible:where([data-hn-ui-tree-item])),
1108
+ :global(:scope[data-dragging] > .row > .drag-handle:where([data-hn-ui-tree-item])) {
1062
1109
  opacity: 1;
1063
1110
  }
1064
1111
 
1065
- :scope[data-ui-tree-item-state~="isContainer"] > .row > .drag-handle {
1112
+ :global(:scope[data-ui-tree-item-state~="isContainer"]
1113
+ > .row
1114
+ > .drag-handle:where([data-hn-ui-tree-item])) {
1066
1115
  inset-inline-start: calc(-1 * var(--_tree-disclosure-size) - 2px);
1067
1116
  }
1068
1117
 
1069
- .drag-handle:hover, .drag-handle:focus-visible {
1118
+ :global(.drag-handle:hover:where([data-hn-ui-tree-item])),
1119
+ :global(.drag-handle:focus-visible:where([data-hn-ui-tree-item])) {
1070
1120
  color: var(--ui-text-primary);
1071
1121
  background: var(--ui-surface-hover);
1072
1122
  }
1073
1123
 
1074
- .drag-handle:active {
1124
+ :global(.drag-handle:active:where([data-hn-ui-tree-item])) {
1075
1125
  cursor: grabbing;
1076
1126
  }
1077
1127
 
1078
- .drop-indicator {
1128
+ :global(.drop-indicator:where([data-hn-ui-tree-item])) {
1079
1129
  position: absolute;
1080
1130
  z-index: 3;
1081
1131
  inset-inline: 1px;
@@ -1086,7 +1136,8 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
1086
1136
  pointer-events: none;
1087
1137
  }
1088
1138
 
1089
- .drop-indicator::before, .drop-indicator::after {
1139
+ :global(.drop-indicator:where([data-hn-ui-tree-item])::before),
1140
+ :global(.drop-indicator:where([data-hn-ui-tree-item])::after) {
1090
1141
  content: "";
1091
1142
  position: absolute;
1092
1143
  inset-block-start: 50%;
@@ -1098,40 +1149,43 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
1098
1149
  transform: translateY(-50%);
1099
1150
  }
1100
1151
 
1101
- .drop-indicator::before {
1152
+ :global(.drop-indicator:where([data-hn-ui-tree-item])::before) {
1102
1153
  inset-inline-start: -1px;
1103
1154
  }
1104
- .drop-indicator::after {
1155
+ :global(.drop-indicator:where([data-hn-ui-tree-item])::after) {
1105
1156
  inset-inline-end: -1px;
1106
1157
  }
1107
1158
 
1108
- :scope[data-drop-position="before"] > .row > .row-drop-indicator {
1159
+ :global(:scope[data-drop-position="before"]
1160
+ > .row
1161
+ > .row-drop-indicator:where([data-hn-ui-tree-item])) {
1109
1162
  display: block;
1110
1163
  inset-block-start: calc(-0.5 * var(--ui-accent-line-width));
1111
1164
  }
1112
1165
 
1113
- :scope[data-drop-position="after"] > .subtree-drop-indicator {
1166
+ :global(:scope[data-drop-position="after"]
1167
+ > .subtree-drop-indicator:where([data-hn-ui-tree-item])) {
1114
1168
  display: block;
1115
1169
  inset-block-end: calc(-0.5 * var(--ui-accent-line-width));
1116
1170
  }
1117
1171
 
1118
- .children[hidden] {
1172
+ :global(.children[hidden]:where([data-hn-ui-tree-item])) {
1119
1173
  display: none;
1120
1174
  }
1121
1175
 
1122
- :scope:where(:scope):is(html[data-ui-input-modality="touch"] *) {
1176
+ :global(html[data-ui-input-modality="touch"] :scope:where([data-hn-ui-tree-item])) {
1123
1177
  --_tree-row-min-height: 44px;
1124
1178
  }
1125
1179
 
1126
- html[data-ui-input-modality="touch"] :scope .row {
1180
+ :global(html[data-ui-input-modality="touch"] :scope .row:where([data-hn-ui-tree-item])) {
1127
1181
  grid-template-columns: 44px var(--_tree-disclosure-size) auto minmax(0, 1fr);
1128
1182
  }
1129
1183
 
1130
- html[data-ui-input-modality="touch"] :scope .drag-handle,
1131
- html[data-ui-input-modality="touch"]
1184
+ :global(html[data-ui-input-modality="touch"] :scope .drag-handle:where([data-hn-ui-tree-item])),
1185
+ :global(html[data-ui-input-modality="touch"]
1132
1186
  :scope[data-ui-tree-item-state~="isContainer"]
1133
1187
  > .row
1134
- > .drag-handle {
1188
+ > .drag-handle:where([data-hn-ui-tree-item])) {
1135
1189
  position: relative;
1136
1190
  grid-column: 1;
1137
1191
  grid-row: 1;
@@ -1144,70 +1198,85 @@ useComponentHost(() => import('../components/ui-tree-item/ui-tree-item.js'), {
1144
1198
  cursor: pointer;
1145
1199
  }
1146
1200
 
1147
- html[data-ui-input-modality="touch"] :scope .disclosure {
1201
+ :global(html[data-ui-input-modality="touch"] :scope .disclosure:where([data-hn-ui-tree-item])) {
1148
1202
  grid-column: 2;
1149
1203
  }
1150
- html[data-ui-input-modality="touch"] :scope .leading {
1204
+ :global(html[data-ui-input-modality="touch"] :scope .leading:where([data-hn-ui-tree-item])) {
1151
1205
  grid-column: 3;
1152
1206
  }
1153
- html[data-ui-input-modality="touch"] :scope .label {
1207
+ :global(html[data-ui-input-modality="touch"] :scope .label:where([data-hn-ui-tree-item])) {
1154
1208
  grid-column: 4;
1155
1209
  }
1156
1210
 
1157
- html[data-ui-input-modality="touch"] :scope[data-selection-mode="multiple"] > .row {
1211
+ :global(html[data-ui-input-modality="touch"]
1212
+ :scope[data-selection-mode="multiple"]
1213
+ > .row:where([data-hn-ui-tree-item])) {
1158
1214
  grid-template-columns: 44px var(--_tree-disclosure-size) 44px auto minmax(0, 1fr);
1159
1215
  }
1160
- html[data-ui-input-modality="touch"]
1216
+ :global(html[data-ui-input-modality="touch"]
1161
1217
  :scope[data-selection-mode="multiple"]
1162
1218
  > .row
1163
- > .selection-hit {
1219
+ > .selection-hit:where([data-hn-ui-tree-item])) {
1164
1220
  grid-column: 3;
1165
1221
  inline-size: 44px;
1166
1222
  block-size: 44px;
1167
1223
  }
1168
- html[data-ui-input-modality="touch"] :scope[data-selection-mode="multiple"] > .row > .leading {
1224
+ :global(html[data-ui-input-modality="touch"]
1225
+ :scope[data-selection-mode="multiple"]
1226
+ > .row
1227
+ > .leading:where([data-hn-ui-tree-item])) {
1169
1228
  grid-column: 4;
1170
1229
  }
1171
- html[data-ui-input-modality="touch"] :scope[data-selection-mode="multiple"] > .row > .label {
1230
+ :global(html[data-ui-input-modality="touch"]
1231
+ :scope[data-selection-mode="multiple"]
1232
+ > .row
1233
+ > .label:where([data-hn-ui-tree-item])) {
1172
1234
  grid-column: 5;
1173
1235
  }
1174
1236
 
1175
1237
  @media (hover: none), (pointer: coarse) {
1176
- html[data-ui-input-modality="touch"] :scope .row {
1238
+ :global(html[data-ui-input-modality="touch"] :scope .row:where([data-hn-ui-tree-item])) {
1177
1239
  grid-template-columns: 44px var(--_tree-disclosure-size) auto minmax(0, 1fr) auto;
1178
1240
  }
1179
1241
 
1180
- html[data-ui-input-modality="touch"] :scope .actions {
1242
+ :global(html[data-ui-input-modality="touch"] :scope .actions:where([data-hn-ui-tree-item])) {
1181
1243
  grid-column: 5;
1182
1244
  }
1183
1245
 
1184
- html[data-ui-input-modality="touch"] :scope[data-selection-mode="multiple"] > .row {
1246
+ :global(html[data-ui-input-modality="touch"]
1247
+ :scope[data-selection-mode="multiple"]
1248
+ > .row:where([data-hn-ui-tree-item])) {
1185
1249
  grid-template-columns: 44px var(--_tree-disclosure-size) 44px auto minmax(0, 1fr) auto;
1186
1250
  }
1187
1251
 
1188
- html[data-ui-input-modality="touch"] :scope[data-selection-mode="multiple"] > .row > .actions {
1252
+ :global(html[data-ui-input-modality="touch"]
1253
+ :scope[data-selection-mode="multiple"]
1254
+ > .row
1255
+ > .actions:where([data-hn-ui-tree-item])) {
1189
1256
  grid-column: 6;
1190
1257
  }
1191
1258
  }
1192
1259
 
1193
1260
  @media (prefers-reduced-motion: reduce) {
1194
- .row, .disclosure-icon, .drag-handle {
1261
+ :global(.row:where([data-hn-ui-tree-item])),
1262
+ :global(.disclosure-icon:where([data-hn-ui-tree-item])),
1263
+ :global(.drag-handle:where([data-hn-ui-tree-item])) {
1195
1264
  transition: none;
1196
1265
  }
1197
1266
  }
1198
1267
 
1199
1268
  @media (forced-colors: active) {
1200
- :scope:focus-visible > .row {
1269
+ :global(:scope:focus-visible > .row:where([data-hn-ui-tree-item])) {
1201
1270
  outline: var(--ui-focus-width) solid Highlight;
1202
1271
  outline-offset: calc(-1 * var(--ui-focus-width));
1203
1272
  }
1204
- :scope[data-ui-tree-item-state~="selected"]:not(:focus-visible):not([aria-disabled="true"])
1205
- > .row {
1273
+ :global(:scope[data-ui-tree-item-state~="selected"]:not(:focus-visible):not([aria-disabled="true"])
1274
+ > .row:where([data-hn-ui-tree-item])) {
1206
1275
  outline: var(--ui-border-width) solid Highlight;
1207
1276
  outline-offset: calc(-1 * var(--ui-border-width));
1208
1277
  }
1209
1278
  }
1210
- :scope:where(:scope):is([hidden]) {
1279
+ :global(:scope[hidden]:where([data-hn-ui-tree-item])) {
1211
1280
  display: none;
1212
1281
  }
1213
1282
  }