@threadlabs/looma 0.28.5 → 0.28.7

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 (453) hide show
  1. package/components/ui-editor-block-actions/ui-editor-block-actions.html +20 -0
  2. package/components/ui-editor-block-actions/ui-editor-block-actions.js +14 -0
  3. package/components/ui-editor-image-toolbar/ui-editor-image-toolbar.html +7 -6
  4. package/components/ui-editor-image-toolbar/ui-editor-image-toolbar.js +2 -1
  5. package/components/ui-editor-link-card/ui-editor-link-card.html +57 -0
  6. package/components/ui-editor-link-card/ui-editor-link-card.js +27 -0
  7. package/components/ui-editor-mention-menu-item/ui-editor-mention-menu-item.html +3 -2
  8. package/dist/index.js +36 -34
  9. package/package.json +3 -2
  10. package/styles/ui-action-bar.css +13 -6
  11. package/styles/ui-affordance-scope.css +12 -5
  12. package/styles/ui-avatar-group.css +17 -10
  13. package/styles/ui-avatar.css +23 -16
  14. package/styles/ui-badge.css +78 -71
  15. package/styles/ui-breadcrumb-item.css +12 -5
  16. package/styles/ui-breadcrumbs.css +10 -3
  17. package/styles/ui-button.css +79 -72
  18. package/styles/ui-callout.css +29 -22
  19. package/styles/ui-card.css +25 -18
  20. package/styles/ui-checkbox.css +45 -37
  21. package/styles/ui-cluster.css +34 -27
  22. package/styles/ui-combobox.css +46 -39
  23. package/styles/ui-container.css +20 -13
  24. package/styles/ui-context-menu.css +17 -10
  25. package/styles/ui-cover.css +12 -5
  26. package/styles/ui-description-item.css +10 -3
  27. package/styles/ui-description-list.css +20 -13
  28. package/styles/ui-dialog.css +44 -35
  29. package/styles/ui-disclosure.css +32 -25
  30. package/styles/ui-editable.css +15 -8
  31. package/styles/ui-editor-block-actions.css +1 -0
  32. package/styles/ui-editor-image-toolbar.css +1 -1
  33. package/styles/ui-editor-insert-table-grid.css +11 -4
  34. package/styles/ui-editor-link-card.css +1 -0
  35. package/styles/ui-editor-mention-menu-item.css +17 -8
  36. package/styles/ui-editor-mention-menu.css +14 -7
  37. package/styles/ui-editor-slash-menu-group.css +10 -3
  38. package/styles/ui-editor-slash-menu-item.css +15 -8
  39. package/styles/ui-editor-slash-menu.css +15 -8
  40. package/styles/ui-editor-surface.css +10 -3
  41. package/styles/ui-editor-table-context-menu.css +17 -10
  42. package/styles/ui-editor-table-overlay.css +17 -10
  43. package/styles/ui-editor-table-toolbar.css +22 -15
  44. package/styles/ui-editor-toolbar.css +18 -11
  45. package/styles/ui-floating-action-button.css +21 -14
  46. package/styles/ui-form-field.css +20 -13
  47. package/styles/ui-grid.css +21 -14
  48. package/styles/ui-icon-button.css +80 -73
  49. package/styles/ui-icon.css +14 -7
  50. package/styles/ui-image.css +25 -18
  51. package/styles/ui-input-group.css +34 -27
  52. package/styles/ui-input.css +42 -35
  53. package/styles/ui-list-item.css +33 -26
  54. package/styles/ui-list.css +22 -15
  55. package/styles/ui-listbox.css +22 -14
  56. package/styles/ui-menu-group.css +10 -3
  57. package/styles/ui-menu-item.css +29 -22
  58. package/styles/ui-menu.css +25 -18
  59. package/styles/ui-meter.css +36 -29
  60. package/styles/ui-nav-item.css +26 -19
  61. package/styles/ui-page-header.css +12 -5
  62. package/styles/ui-popover.css +27 -20
  63. package/styles/ui-radio-group.css +14 -6
  64. package/styles/ui-radio.css +24 -17
  65. package/styles/ui-reel.css +28 -21
  66. package/styles/ui-scroll-area.css +22 -15
  67. package/styles/ui-search-result-row.css +28 -21
  68. package/styles/ui-search-shell.css +24 -17
  69. package/styles/ui-section.css +14 -7
  70. package/styles/ui-select.css +33 -26
  71. package/styles/ui-separator.css +17 -10
  72. package/styles/ui-sidebar.css +35 -28
  73. package/styles/ui-spinner.css +32 -23
  74. package/styles/ui-stack.css +29 -21
  75. package/styles/ui-status-message.css +14 -7
  76. package/styles/ui-switch.css +29 -22
  77. package/styles/ui-switcher.css +27 -20
  78. package/styles/ui-table.css +14 -7
  79. package/styles/ui-tabs.css +24 -17
  80. package/styles/ui-text.css +35 -28
  81. package/styles/ui-textarea.css +37 -30
  82. package/styles/ui-toast-region.css +74 -63
  83. package/styles/ui-toast.css +21 -14
  84. package/styles/ui-tooltip.css +38 -31
  85. package/styles/ui-top-bar.css +19 -12
  86. package/styles/ui-tree-item.css +79 -71
  87. package/styles/ui-tree.css +18 -11
  88. package/vanilla/UiActionBar.d.ts +1 -1
  89. package/vanilla/UiActionBar.js +1 -1
  90. package/vanilla/UiAffordanceScope.d.ts +1 -1
  91. package/vanilla/UiAffordanceScope.js +1 -1
  92. package/vanilla/UiAvatar.d.ts +1 -1
  93. package/vanilla/UiAvatar.js +1 -1
  94. package/vanilla/UiAvatarGroup.d.ts +1 -1
  95. package/vanilla/UiAvatarGroup.js +1 -1
  96. package/vanilla/UiBadge.d.ts +1 -1
  97. package/vanilla/UiBadge.js +1 -1
  98. package/vanilla/UiBreadcrumbItem.d.ts +1 -1
  99. package/vanilla/UiBreadcrumbItem.js +1 -1
  100. package/vanilla/UiBreadcrumbs.d.ts +1 -1
  101. package/vanilla/UiBreadcrumbs.js +1 -1
  102. package/vanilla/UiButton.d.ts +1 -1
  103. package/vanilla/UiButton.js +19 -57
  104. package/vanilla/UiCallout.d.ts +1 -1
  105. package/vanilla/UiCallout.js +25 -73
  106. package/vanilla/UiCard.d.ts +1 -1
  107. package/vanilla/UiCard.js +1 -1
  108. package/vanilla/UiCheckbox.d.ts +1 -1
  109. package/vanilla/UiCheckbox.js +1 -1
  110. package/vanilla/UiCluster.d.ts +1 -1
  111. package/vanilla/UiCluster.js +1 -1
  112. package/vanilla/UiCombobox.d.ts +1 -1
  113. package/vanilla/UiCombobox.js +60 -166
  114. package/vanilla/UiContainer.d.ts +1 -1
  115. package/vanilla/UiContainer.js +1 -1
  116. package/vanilla/UiContextMenu.d.ts +1 -1
  117. package/vanilla/UiContextMenu.js +1 -1
  118. package/vanilla/UiCover.d.ts +1 -1
  119. package/vanilla/UiCover.js +1 -1
  120. package/vanilla/UiDescriptionItem.d.ts +1 -1
  121. package/vanilla/UiDescriptionItem.js +1 -1
  122. package/vanilla/UiDescriptionList.d.ts +1 -1
  123. package/vanilla/UiDescriptionList.js +1 -1
  124. package/vanilla/UiDialog.d.ts +1 -1
  125. package/vanilla/UiDialog.js +4 -10
  126. package/vanilla/UiDisclosure.d.ts +1 -1
  127. package/vanilla/UiDisclosure.js +1 -1
  128. package/vanilla/UiEditable.d.ts +1 -1
  129. package/vanilla/UiEditable.js +7 -19
  130. package/vanilla/UiEditorBlockActions.d.ts +16 -0
  131. package/vanilla/UiEditorBlockActions.js +41 -0
  132. package/vanilla/UiEditorImageToolbar.d.ts +1 -1
  133. package/vanilla/UiEditorImageToolbar.js +2 -2
  134. package/vanilla/UiEditorInsertTableGrid.d.ts +1 -1
  135. package/vanilla/UiEditorInsertTableGrid.js +1 -1
  136. package/vanilla/UiEditorLinkCard.d.ts +20 -0
  137. package/vanilla/UiEditorLinkCard.js +153 -0
  138. package/vanilla/UiEditorMentionMenu.d.ts +1 -1
  139. package/vanilla/UiEditorMentionMenu.js +17 -37
  140. package/vanilla/UiEditorMentionMenuItem.d.ts +1 -1
  141. package/vanilla/UiEditorMentionMenuItem.js +4 -10
  142. package/vanilla/UiEditorSlashMenu.d.ts +1 -1
  143. package/vanilla/UiEditorSlashMenu.js +5 -4
  144. package/vanilla/UiEditorSlashMenuGroup.d.ts +1 -1
  145. package/vanilla/UiEditorSlashMenuGroup.js +1 -1
  146. package/vanilla/UiEditorSlashMenuItem.d.ts +1 -1
  147. package/vanilla/UiEditorSlashMenuItem.js +7 -19
  148. package/vanilla/UiEditorSurface.d.ts +1 -1
  149. package/vanilla/UiEditorSurface.js +1 -1
  150. package/vanilla/UiEditorTableContextMenu.d.ts +1 -1
  151. package/vanilla/UiEditorTableContextMenu.js +6 -14
  152. package/vanilla/UiEditorTableOverlay.d.ts +1 -1
  153. package/vanilla/UiEditorTableOverlay.js +9 -25
  154. package/vanilla/UiEditorTableToolbar.d.ts +1 -1
  155. package/vanilla/UiEditorTableToolbar.js +25 -77
  156. package/vanilla/UiEditorToolbar.d.ts +1 -1
  157. package/vanilla/UiEditorToolbar.js +1 -1
  158. package/vanilla/UiFloatingActionButton.d.ts +1 -1
  159. package/vanilla/UiFloatingActionButton.js +1 -1
  160. package/vanilla/UiFormField.d.ts +1 -1
  161. package/vanilla/UiFormField.js +1 -1
  162. package/vanilla/UiGrid.d.ts +1 -1
  163. package/vanilla/UiGrid.js +1 -1
  164. package/vanilla/UiIcon.d.ts +1 -1
  165. package/vanilla/UiIcon.js +15 -47
  166. package/vanilla/UiIconButton.d.ts +1 -1
  167. package/vanilla/UiIconButton.js +4 -10
  168. package/vanilla/UiImage.d.ts +1 -1
  169. package/vanilla/UiImage.js +1 -1
  170. package/vanilla/UiInput.d.ts +1 -1
  171. package/vanilla/UiInput.js +1 -1
  172. package/vanilla/UiInputGroup.d.ts +1 -1
  173. package/vanilla/UiInputGroup.js +1 -1
  174. package/vanilla/UiList.d.ts +1 -1
  175. package/vanilla/UiList.js +1 -1
  176. package/vanilla/UiListItem.d.ts +1 -1
  177. package/vanilla/UiListItem.js +1 -1
  178. package/vanilla/UiListbox.d.ts +1 -1
  179. package/vanilla/UiListbox.js +4 -10
  180. package/vanilla/UiMenu.d.ts +1 -1
  181. package/vanilla/UiMenu.js +1 -1
  182. package/vanilla/UiMenuGroup.d.ts +1 -1
  183. package/vanilla/UiMenuGroup.js +4 -10
  184. package/vanilla/UiMenuItem.d.ts +1 -1
  185. package/vanilla/UiMenuItem.js +4 -10
  186. package/vanilla/UiMeter.d.ts +1 -1
  187. package/vanilla/UiMeter.js +13 -33
  188. package/vanilla/UiNavItem.d.ts +1 -1
  189. package/vanilla/UiNavItem.js +1 -1
  190. package/vanilla/UiPageHeader.d.ts +1 -1
  191. package/vanilla/UiPageHeader.js +1 -1
  192. package/vanilla/UiPopover.d.ts +1 -1
  193. package/vanilla/UiPopover.js +1 -1
  194. package/vanilla/UiRadio.d.ts +1 -1
  195. package/vanilla/UiRadio.js +1 -1
  196. package/vanilla/UiRadioGroup.d.ts +1 -1
  197. package/vanilla/UiRadioGroup.js +1 -1
  198. package/vanilla/UiReel.d.ts +1 -1
  199. package/vanilla/UiReel.js +1 -1
  200. package/vanilla/UiScrollArea.d.ts +1 -1
  201. package/vanilla/UiScrollArea.js +1 -1
  202. package/vanilla/UiSearchResultRow.d.ts +1 -1
  203. package/vanilla/UiSearchResultRow.js +1 -1
  204. package/vanilla/UiSearchShell.d.ts +1 -1
  205. package/vanilla/UiSearchShell.js +1 -1
  206. package/vanilla/UiSection.d.ts +1 -1
  207. package/vanilla/UiSection.js +1 -1
  208. package/vanilla/UiSelect.d.ts +1 -1
  209. package/vanilla/UiSelect.js +1 -1
  210. package/vanilla/UiSeparator.d.ts +1 -1
  211. package/vanilla/UiSeparator.js +1 -1
  212. package/vanilla/UiSidebar.d.ts +1 -1
  213. package/vanilla/UiSidebar.js +1 -1
  214. package/vanilla/UiSpinner.d.ts +1 -1
  215. package/vanilla/UiSpinner.js +1 -1
  216. package/vanilla/UiStack.d.ts +1 -1
  217. package/vanilla/UiStack.js +1 -1
  218. package/vanilla/UiStatusMessage.d.ts +1 -1
  219. package/vanilla/UiStatusMessage.js +1 -1
  220. package/vanilla/UiSwitch.d.ts +1 -1
  221. package/vanilla/UiSwitch.js +1 -1
  222. package/vanilla/UiSwitcher.d.ts +1 -1
  223. package/vanilla/UiSwitcher.js +1 -1
  224. package/vanilla/UiTable.d.ts +1 -1
  225. package/vanilla/UiTable.js +1 -1
  226. package/vanilla/UiTabs.d.ts +1 -1
  227. package/vanilla/UiTabs.js +1 -1
  228. package/vanilla/UiText.d.ts +1 -1
  229. package/vanilla/UiText.js +1 -1
  230. package/vanilla/UiTextarea.d.ts +1 -1
  231. package/vanilla/UiTextarea.js +1 -1
  232. package/vanilla/UiToast.d.ts +1 -1
  233. package/vanilla/UiToast.js +1 -1
  234. package/vanilla/UiToastRegion.d.ts +1 -1
  235. package/vanilla/UiToastRegion.js +1 -1
  236. package/vanilla/UiTooltip.d.ts +1 -1
  237. package/vanilla/UiTooltip.js +1 -1
  238. package/vanilla/UiTopBar.d.ts +1 -1
  239. package/vanilla/UiTopBar.js +1 -1
  240. package/vanilla/UiTree.d.ts +1 -1
  241. package/vanilla/UiTree.js +1 -1
  242. package/vanilla/UiTreeItem.d.ts +1 -1
  243. package/vanilla/UiTreeItem.js +7 -19
  244. package/vanilla/index.js +2 -0
  245. package/vue/UiActionBar.vue +46 -78
  246. package/vue/UiAffordanceScope.vue +27 -66
  247. package/vue/UiAvatar.d.ts +10 -7
  248. package/vue/UiAvatar.vue +100 -218
  249. package/vue/UiAvatarGroup.d.ts +10 -7
  250. package/vue/UiAvatarGroup.vue +78 -160
  251. package/vue/UiBadge.d.ts +1 -1
  252. package/vue/UiBadge.vue +483 -520
  253. package/vue/UiBreadcrumbItem.vue +52 -123
  254. package/vue/UiBreadcrumbs.vue +27 -70
  255. package/vue/UiButton.d.ts +2 -2
  256. package/vue/UiButton.vue +420 -471
  257. package/vue/UiCallout.vue +131 -175
  258. package/vue/UiCard.d.ts +1 -1
  259. package/vue/UiCard.vue +112 -151
  260. package/vue/UiCheckbox.d.ts +13 -10
  261. package/vue/UiCheckbox.vue +160 -221
  262. package/vue/UiCluster.d.ts +1 -1
  263. package/vue/UiCluster.vue +84 -128
  264. package/vue/UiCombobox.d.ts +71 -68
  265. package/vue/UiCombobox.vue +417 -743
  266. package/vue/UiContainer.vue +43 -87
  267. package/vue/UiContextMenu.d.ts +6 -6
  268. package/vue/UiContextMenu.vue +78 -117
  269. package/vue/UiCover.vue +29 -69
  270. package/vue/UiDescriptionItem.vue +39 -82
  271. package/vue/UiDescriptionList.vue +64 -107
  272. package/vue/UiDialog.d.ts +22 -19
  273. package/vue/UiDialog.vue +193 -246
  274. package/vue/UiDisclosure.d.ts +22 -19
  275. package/vue/UiDisclosure.vue +192 -283
  276. package/vue/UiEditable.d.ts +5 -5
  277. package/vue/UiEditable.vue +124 -207
  278. package/vue/UiEditorBlockActions.d.ts +33 -0
  279. package/vue/UiEditorBlockActions.js +2 -0
  280. package/vue/UiEditorBlockActions.vue +125 -0
  281. package/vue/UiEditorImageToolbar.d.ts +2 -2
  282. package/vue/UiEditorImageToolbar.vue +45 -256
  283. package/vue/UiEditorInsertTableGrid.d.ts +2 -2
  284. package/vue/UiEditorInsertTableGrid.vue +98 -266
  285. package/vue/UiEditorLinkCard.d.ts +58 -0
  286. package/vue/UiEditorLinkCard.js +2 -0
  287. package/vue/UiEditorLinkCard.vue +319 -0
  288. package/vue/UiEditorMentionMenu.d.ts +15 -12
  289. package/vue/UiEditorMentionMenu.vue +150 -239
  290. package/vue/UiEditorMentionMenuItem.vue +66 -110
  291. package/vue/UiEditorSlashMenu.d.ts +16 -13
  292. package/vue/UiEditorSlashMenu.vue +172 -253
  293. package/vue/UiEditorSlashMenuGroup.vue +25 -69
  294. package/vue/UiEditorSlashMenuItem.vue +67 -115
  295. package/vue/UiEditorSurface.vue +19 -63
  296. package/vue/UiEditorTableContextMenu.vue +135 -269
  297. package/vue/UiEditorTableOverlay.d.ts +2 -2
  298. package/vue/UiEditorTableOverlay.vue +310 -479
  299. package/vue/UiEditorTableToolbar.d.ts +2 -2
  300. package/vue/UiEditorTableToolbar.vue +182 -357
  301. package/vue/UiEditorToolbar.vue +143 -183
  302. package/vue/UiFloatingActionButton.vue +70 -114
  303. package/vue/UiFormField.d.ts +1 -1
  304. package/vue/UiFormField.vue +76 -117
  305. package/vue/UiGrid.d.ts +1 -1
  306. package/vue/UiGrid.vue +65 -103
  307. package/vue/UiIcon.vue +32 -106
  308. package/vue/UiIconButton.d.ts +2 -2
  309. package/vue/UiIconButton.vue +359 -411
  310. package/vue/UiImage.vue +145 -180
  311. package/vue/UiInput.vue +158 -190
  312. package/vue/UiInputGroup.vue +199 -239
  313. package/vue/UiList.vue +67 -109
  314. package/vue/UiListItem.vue +154 -201
  315. package/vue/UiListbox.d.ts +10 -7
  316. package/vue/UiListbox.vue +86 -260
  317. package/vue/UiMenu.d.ts +11 -11
  318. package/vue/UiMenu.vue +118 -152
  319. package/vue/UiMenuGroup.vue +21 -67
  320. package/vue/UiMenuItem.d.ts +19 -16
  321. package/vue/UiMenuItem.vue +169 -262
  322. package/vue/UiMeter.d.ts +4 -4
  323. package/vue/UiMeter.vue +166 -680
  324. package/vue/UiNavItem.vue +140 -213
  325. package/vue/UiPageHeader.vue +81 -127
  326. package/vue/UiPopover.d.ts +7 -7
  327. package/vue/UiPopover.vue +90 -129
  328. package/vue/UiRadio.d.ts +12 -9
  329. package/vue/UiRadio.vue +91 -149
  330. package/vue/UiRadioGroup.d.ts +2 -2
  331. package/vue/UiRadioGroup.vue +47 -85
  332. package/vue/UiReel.vue +89 -130
  333. package/vue/UiScrollArea.d.ts +1 -1
  334. package/vue/UiScrollArea.vue +78 -119
  335. package/vue/UiSearchResultRow.vue +96 -149
  336. package/vue/UiSearchShell.d.ts +2 -2
  337. package/vue/UiSearchShell.vue +159 -196
  338. package/vue/UiSection.vue +105 -149
  339. package/vue/UiSelect.d.ts +1 -1
  340. package/vue/UiSelect.vue +114 -146
  341. package/vue/UiSeparator.vue +42 -85
  342. package/vue/UiSidebar.d.ts +10 -7
  343. package/vue/UiSidebar.vue +193 -260
  344. package/vue/UiSpinner.vue +54 -130
  345. package/vue/UiStack.vue +66 -107
  346. package/vue/UiStatusMessage.d.ts +1 -1
  347. package/vue/UiStatusMessage.vue +61 -135
  348. package/vue/UiSwitch.d.ts +12 -9
  349. package/vue/UiSwitch.vue +136 -194
  350. package/vue/UiSwitcher.vue +69 -107
  351. package/vue/UiTable.vue +121 -156
  352. package/vue/UiTabs.d.ts +1 -1
  353. package/vue/UiTabs.vue +139 -267
  354. package/vue/UiText.d.ts +4 -4
  355. package/vue/UiText.vue +145 -184
  356. package/vue/UiTextarea.d.ts +2 -2
  357. package/vue/UiTextarea.vue +162 -194
  358. package/vue/UiToast.vue +70 -118
  359. package/vue/UiToastRegion.vue +157 -276
  360. package/vue/UiTooltip.d.ts +21 -18
  361. package/vue/UiTooltip.vue +174 -234
  362. package/vue/UiTopBar.vue +48 -76
  363. package/vue/UiTree.vue +46 -79
  364. package/vue/UiTreeItem.d.ts +18 -15
  365. package/vue/UiTreeItem.vue +526 -668
  366. package/vue/chunks/UiActionBar.js +5 -17
  367. package/vue/chunks/UiAffordanceScope.js +7 -26
  368. package/vue/chunks/UiAvatar.js +20 -74
  369. package/vue/chunks/UiAvatarGroup.js +14 -56
  370. package/vue/chunks/UiBadge.js +10 -28
  371. package/vue/chunks/UiBreadcrumbItem.js +11 -41
  372. package/vue/chunks/UiBreadcrumbs.js +7 -25
  373. package/vue/chunks/UiButton.js +80 -103
  374. package/vue/chunks/UiCallout.js +9 -27
  375. package/vue/chunks/UiCard.js +33 -53
  376. package/vue/chunks/UiCheckbox.js +14 -46
  377. package/vue/chunks/UiCluster.js +13 -31
  378. package/vue/chunks/UiCombobox.js +99 -237
  379. package/vue/chunks/UiContainer.js +9 -27
  380. package/vue/chunks/UiContextMenu.js +7 -26
  381. package/vue/chunks/UiCover.js +7 -25
  382. package/vue/chunks/UiDescriptionItem.js +6 -24
  383. package/vue/chunks/UiDescriptionList.js +9 -27
  384. package/vue/chunks/UiDialog.js +18 -47
  385. package/vue/chunks/UiDisclosure.js +19 -66
  386. package/vue/chunks/UiEditable.js +18 -60
  387. package/vue/chunks/UiEditorBlockActions.js +127 -0
  388. package/vue/chunks/UiEditorImageToolbar.js +40 -127
  389. package/vue/chunks/UiEditorInsertTableGrid.js +14 -112
  390. package/vue/chunks/UiEditorLinkCard.js +356 -0
  391. package/vue/chunks/UiEditorMentionMenu.js +16 -54
  392. package/vue/chunks/UiEditorMentionMenuItem.js +10 -28
  393. package/vue/chunks/UiEditorSlashMenu.js +17 -46
  394. package/vue/chunks/UiEditorSlashMenuGroup.js +7 -25
  395. package/vue/chunks/UiEditorSlashMenuItem.js +16 -31
  396. package/vue/chunks/UiEditorSurface.js +7 -25
  397. package/vue/chunks/UiEditorTableContextMenu.js +25 -102
  398. package/vue/chunks/UiEditorTableOverlay.js +41 -104
  399. package/vue/chunks/UiEditorTableToolbar.js +44 -122
  400. package/vue/chunks/UiEditorToolbar.js +7 -26
  401. package/vue/chunks/UiFloatingActionButton.js +10 -28
  402. package/vue/chunks/UiFormField.js +8 -27
  403. package/vue/chunks/UiGrid.js +10 -28
  404. package/vue/chunks/UiIcon.js +21 -74
  405. package/vue/chunks/UiIconButton.js +18 -50
  406. package/vue/chunks/UiImage.js +14 -33
  407. package/vue/chunks/UiInput.js +12 -31
  408. package/vue/chunks/UiInputGroup.js +10 -29
  409. package/vue/chunks/UiList.js +17 -37
  410. package/vue/chunks/UiListItem.js +12 -30
  411. package/vue/chunks/UiListbox.js +22 -124
  412. package/vue/chunks/UiMenu.js +13 -32
  413. package/vue/chunks/UiMenuGroup.js +8 -26
  414. package/vue/chunks/UiMenuItem.js +35 -80
  415. package/vue/chunks/UiMeter.js +17 -351
  416. package/vue/chunks/UiNavItem.js +23 -57
  417. package/vue/chunks/UiPageHeader.js +7 -25
  418. package/vue/chunks/UiPopover.js +9 -28
  419. package/vue/chunks/UiRadio.js +11 -43
  420. package/vue/chunks/UiRadioGroup.js +13 -32
  421. package/vue/chunks/UiReel.js +10 -28
  422. package/vue/chunks/UiScrollArea.js +10 -29
  423. package/vue/chunks/UiSearchResultRow.js +10 -28
  424. package/vue/chunks/UiSearchShell.js +9 -28
  425. package/vue/chunks/UiSection.js +9 -27
  426. package/vue/chunks/UiSelect.js +10 -29
  427. package/vue/chunks/UiSeparator.js +10 -28
  428. package/vue/chunks/UiSidebar.js +15 -47
  429. package/vue/chunks/UiSpinner.js +8 -44
  430. package/vue/chunks/UiStack.js +12 -30
  431. package/vue/chunks/UiStatusMessage.js +10 -42
  432. package/vue/chunks/UiSwitch.js +11 -43
  433. package/vue/chunks/UiSwitcher.js +9 -28
  434. package/vue/chunks/UiTable.js +7 -26
  435. package/vue/chunks/UiTabs.js +15 -91
  436. package/vue/chunks/UiText.js +148 -168
  437. package/vue/chunks/UiTextarea.js +16 -35
  438. package/vue/chunks/UiToast.js +13 -37
  439. package/vue/chunks/UiToastRegion.js +16 -88
  440. package/vue/chunks/UiTooltip.js +14 -46
  441. package/vue/chunks/UiTopBar.js +5 -17
  442. package/vue/chunks/UiTree.js +13 -32
  443. package/vue/chunks/UiTreeItem.js +34 -90
  444. package/vue/chunks/_plugin-vue_export-helper.js +904 -1
  445. package/vue/chunks/control.js +3 -0
  446. package/vue/chunks/props.js +1 -1
  447. package/vue/components.css +7689 -7617
  448. package/vue/editor/index.js +30 -95
  449. package/vue/editor/primitives.d.ts +8 -2
  450. package/vue/host.ts +999 -14
  451. package/vue/index.d.ts +2 -0
  452. package/vue/index.js +5 -3
  453. package/vue/chunks/host.js +0 -443
@@ -1,48 +1,55 @@
1
- /* Generated by HTML Next 1.0.0-alpha.35. Do not edit. */
2
- @property --ui-tooltip-arrow-size {
1
+ /* Generated by HTML Next 1.0.0-alpha.51. Do not edit. */
2
+ @supports (-moz-appearance: none) {
3
+ :where([data-component], [data-slotted]) { --html-next-scope-owner: boundary; }
4
+ :where([data-slotted]:not([data-component])) { --html-next-scope-owner: projected !important; }
5
+ }
6
+ @supports (-moz-appearance: none) {
7
+ [data-component~="ui-tooltip"] { --html-next-scope-owner: "ui-tooltip" !important; }
8
+ }
9
+ @scope ([data-component~="ui-tooltip"]) to ([data-component], [data-slotted]) {
10
+ /* This component's hooks style the element they are set on, and never a nested one. */
11
+ @property --ui-tooltip-arrow-size {
3
12
  syntax: "*";
4
13
  inherits: false;
5
14
  }
6
- @property --ui-tooltip-border {
15
+ @property --ui-tooltip-border {
7
16
  syntax: "*";
8
17
  inherits: false;
9
18
  }
10
- @property --ui-tooltip-inverse-surface {
19
+ @property --ui-tooltip-inverse-surface {
11
20
  syntax: "*";
12
21
  inherits: false;
13
22
  }
14
- @property --ui-tooltip-inverse-text {
23
+ @property --ui-tooltip-inverse-text {
15
24
  syntax: "*";
16
25
  inherits: false;
17
26
  }
18
- @property --ui-tooltip-max-inline-size {
27
+ @property --ui-tooltip-max-inline-size {
19
28
  syntax: "*";
20
29
  inherits: false;
21
30
  }
22
- @property --ui-tooltip-offset {
31
+ @property --ui-tooltip-offset {
23
32
  syntax: "*";
24
33
  inherits: false;
25
34
  }
26
- @property --ui-tooltip-radius {
35
+ @property --ui-tooltip-radius {
27
36
  syntax: "*";
28
37
  inherits: false;
29
38
  }
30
- @property --ui-tooltip-shadow {
39
+ @property --ui-tooltip-shadow {
31
40
  syntax: "*";
32
41
  inherits: false;
33
42
  }
34
- @property --ui-tooltip-surface {
43
+ @property --ui-tooltip-surface {
35
44
  syntax: "*";
36
45
  inherits: false;
37
46
  }
38
- @property --ui-tooltip-text {
47
+ @property --ui-tooltip-text {
39
48
  syntax: "*";
40
49
  inherits: false;
41
50
  }
42
- @scope ([data-component~="ui-tooltip"]) to ([data-component], [data-slotted]) {
43
- /* This component's hooks style the element they are set on, and never a nested one. */
44
51
 
45
- :scope {
52
+ :scope:where([data-component~="ui-tooltip"]) {
46
53
  /* Hooks do not inherit, so the parts below read them from the root. */
47
54
  --_ui-tooltip-border: var(--ui-tooltip-border);
48
55
  --_ui-tooltip-max-inline-size: var(--ui-tooltip-max-inline-size);
@@ -112,7 +119,7 @@
112
119
 
113
120
  /* A <kbd> takes the browser's monospace; the hint reads in the tooltip's own type. */
114
121
 
115
- :scope[data-ui-tooltip-state~="inverse"] .surface {
122
+ :scope:where([data-component~="ui-tooltip"])[data-ui-tooltip-state~="inverse"] .surface {
116
123
  --_tooltip-line: var(--_ui-tooltip-inverse-surface, var(--ui-text-primary));
117
124
  background: var(--_ui-tooltip-inverse-surface, var(--ui-text-primary));
118
125
  color: var(--_ui-tooltip-inverse-text, var(--ui-surface-default));
@@ -120,7 +127,7 @@
120
127
 
121
128
  /* A rotated square shares the surface fill and draws the two outward border edges. Its centre sits on
122
129
  * the surface border line, so the fill covers that stretch of border and the outline runs unbroken. */
123
- .surface::after {
130
+ .surface:where(:not([data-component], [data-slotted]))::after {
124
131
  content: "";
125
132
  position: absolute;
126
133
  z-index: 1;
@@ -137,7 +144,7 @@
137
144
  transform: rotate(45deg) scaleX(1.25) scaleY(0.85);
138
145
  }
139
146
 
140
- :scope[data-ui-actual-placement="bottom"] .surface::after {
147
+ :scope:where([data-component~="ui-tooltip"])[data-ui-actual-placement="bottom"] .surface:where(:not([data-component], [data-slotted]))::after {
141
148
  inset-block-start: calc(var(--_ui-tooltip-arrow-size, 0.625rem) / -2 - var(--ui-border-width) / 2);
142
149
  inset-block-end: auto;
143
150
  border-inline-end-width: 0;
@@ -148,65 +155,65 @@
148
155
  border-start-start-radius: var(--ui-border-width);
149
156
  }
150
157
 
151
- :scope[data-ui-actual-align="center"] .surface::after {
158
+ :scope:where([data-component~="ui-tooltip"])[data-ui-actual-align="center"] .surface:where(:not([data-component], [data-slotted]))::after {
152
159
  inset-inline-start: calc(50% - var(--_ui-tooltip-arrow-size, 0.625rem) / 2);
153
160
  }
154
161
 
155
- :scope[data-ui-actual-align="end"] .surface::after {
162
+ :scope:where([data-component~="ui-tooltip"])[data-ui-actual-align="end"] .surface:where(:not([data-component], [data-slotted]))::after {
156
163
  inset-inline-start: auto;
157
164
  inset-inline-end: var(--ui-space-3);
158
165
  }
159
166
 
160
- :scope[data-ui-actual-placement="left"] .surface::after,
161
- :scope[data-ui-actual-placement="right"] .surface::after {
167
+ :scope:where([data-component~="ui-tooltip"])[data-ui-actual-placement="left"] .surface:where(:not([data-component], [data-slotted]))::after,
168
+ :scope:where([data-component~="ui-tooltip"])[data-ui-actual-placement="right"] .surface:where(:not([data-component], [data-slotted]))::after {
162
169
  inset-block-start: calc(50% - var(--_ui-tooltip-arrow-size, 0.625rem) / 2);
163
170
  inset-block-end: auto;
164
171
  border: 0 solid var(--_tooltip-line);
165
172
  }
166
173
 
167
- :scope[data-ui-actual-placement="left"] .surface::after {
174
+ :scope:where([data-component~="ui-tooltip"])[data-ui-actual-placement="left"] .surface:where(:not([data-component], [data-slotted]))::after {
168
175
  inset-inline-start: auto;
169
176
  inset-inline-end: calc(var(--_ui-tooltip-arrow-size, 0.625rem) / -2 - var(--ui-border-width) / 2);
170
177
  border-inline-end-width: var(--ui-border-width);
171
178
  border-block-start-width: var(--ui-border-width);
172
179
  }
173
180
 
174
- :scope[data-ui-actual-placement="right"] .surface::after {
181
+ :scope:where([data-component~="ui-tooltip"])[data-ui-actual-placement="right"] .surface:where(:not([data-component], [data-slotted]))::after {
175
182
  inset-inline-start: calc(var(--_ui-tooltip-arrow-size, 0.625rem) / -2 - var(--ui-border-width) / 2);
176
183
  inset-inline-end: auto;
177
184
  border-inline-start-width: var(--ui-border-width);
178
185
  border-block-end-width: var(--ui-border-width);
179
186
  }
180
187
 
181
- :scope[data-ui-actual-placement="left"][data-ui-actual-align="start"] .surface::after,
182
- :scope[data-ui-actual-placement="right"][data-ui-actual-align="start"] .surface::after {
188
+ :scope:where([data-component~="ui-tooltip"])[data-ui-actual-placement="left"][data-ui-actual-align="start"] .surface:where(:not([data-component], [data-slotted]))::after,
189
+ :scope:where([data-component~="ui-tooltip"])[data-ui-actual-placement="right"][data-ui-actual-align="start"] .surface:where(:not([data-component], [data-slotted]))::after {
183
190
  inset-block-start: var(--ui-space-3);
184
191
  }
185
192
 
186
- :scope[data-ui-actual-placement="left"][data-ui-actual-align="end"] .surface::after,
187
- :scope[data-ui-actual-placement="right"][data-ui-actual-align="end"] .surface::after {
193
+ :scope:where([data-component~="ui-tooltip"])[data-ui-actual-placement="left"][data-ui-actual-align="end"] .surface:where(:not([data-component], [data-slotted]))::after,
194
+ :scope:where([data-component~="ui-tooltip"])[data-ui-actual-placement="right"][data-ui-actual-align="end"] .surface:where(:not([data-component], [data-slotted]))::after {
188
195
  inset-block-start: auto;
189
196
  inset-block-end: var(--ui-space-3);
190
197
  }
191
198
 
192
- :scope:popover-open {
199
+ :scope:where([data-component~="ui-tooltip"]):popover-open {
193
200
  opacity: 1;
194
201
  transform: translateY(0);
195
202
  }
196
203
 
197
204
  @starting-style {
198
- :scope:popover-open {
205
+ :scope:where([data-component~="ui-tooltip"]):popover-open {
199
206
  opacity: 0;
200
207
  transform: translateY(4px);
201
208
  }
202
209
  }
203
210
 
204
- :scope[hidden] {
211
+ :scope:where([data-component~="ui-tooltip"])[hidden] {
205
212
  display: none;
206
213
  }
207
214
 
208
215
  @media (prefers-reduced-motion: reduce) {
209
- :scope {
216
+ :scope:where([data-component~="ui-tooltip"]) {
210
217
  transition: none;
211
218
  }
212
219
  }
@@ -1,36 +1,43 @@
1
- /* Generated by HTML Next 1.0.0-alpha.35. Do not edit. */
2
- @property --ui-top-bar-actions-gap {
1
+ /* Generated by HTML Next 1.0.0-alpha.51. Do not edit. */
2
+ @supports (-moz-appearance: none) {
3
+ :where([data-component], [data-slotted]) { --html-next-scope-owner: boundary; }
4
+ :where([data-slotted]:not([data-component])) { --html-next-scope-owner: projected !important; }
5
+ }
6
+ @supports (-moz-appearance: none) {
7
+ [data-component~="ui-top-bar"] { --html-next-scope-owner: "ui-top-bar" !important; }
8
+ }
9
+ @scope ([data-component~="ui-top-bar"]) to ([data-component], [data-slotted]) {
10
+ /* This component's hooks style the element they are set on, and never a nested one. */
11
+ @property --ui-top-bar-actions-gap {
3
12
  syntax: "*";
4
13
  inherits: false;
5
14
  }
6
- @property --ui-top-bar-border {
15
+ @property --ui-top-bar-border {
7
16
  syntax: "*";
8
17
  inherits: false;
9
18
  }
10
- @property --ui-top-bar-gap {
19
+ @property --ui-top-bar-gap {
11
20
  syntax: "*";
12
21
  inherits: false;
13
22
  }
14
- @property --ui-top-bar-height {
23
+ @property --ui-top-bar-height {
15
24
  syntax: "*";
16
25
  inherits: false;
17
26
  }
18
- @property --ui-top-bar-padding-inline {
27
+ @property --ui-top-bar-padding-inline {
19
28
  syntax: "*";
20
29
  inherits: false;
21
30
  }
22
- @property --ui-top-bar-surface {
31
+ @property --ui-top-bar-surface {
23
32
  syntax: "*";
24
33
  inherits: false;
25
34
  }
26
- @property --ui-top-bar-z-index {
35
+ @property --ui-top-bar-z-index {
27
36
  syntax: "*";
28
37
  inherits: false;
29
38
  }
30
- @scope ([data-component~="ui-top-bar"]) to ([data-component], [data-slotted]) {
31
- /* This component's hooks style the element they are set on, and never a nested one. */
32
39
 
33
- :scope {
40
+ :scope:where([data-component~="ui-top-bar"]) {
34
41
  /* Hooks do not inherit, so the parts below read them from the root. */
35
42
  --_ui-top-bar-actions-gap: var(--ui-top-bar-actions-gap);
36
43
 
@@ -73,7 +80,7 @@
73
80
  }
74
81
 
75
82
  /* A component that sets its display still honours the hidden attribute on its root. */
76
- :scope[hidden] {
83
+ :scope:where([data-component~="ui-top-bar"])[hidden] {
77
84
  display: none;
78
85
  }
79
86
  }
@@ -1,37 +1,35 @@
1
- /* Generated by HTML Next 1.0.0-alpha.35. Do not edit. */
2
- @property --ui-tree-item-depth {
1
+ /* Generated by HTML Next 1.0.0-alpha.51. Do not edit. */
2
+ @supports (-moz-appearance: none) {
3
+ :where([data-component], [data-slotted]) { --html-next-scope-owner: boundary; }
4
+ :where([data-slotted]:not([data-component])) { --html-next-scope-owner: projected !important; }
5
+ }
6
+ @supports (-moz-appearance: none) {
7
+ [data-component~="ui-tree-item"] { --html-next-scope-owner: "ui-tree-item" !important; }
8
+ }
9
+ @scope ([data-component~="ui-tree-item"]) to ([data-component], [data-slotted]) {
10
+ /* This component's hooks style the element they are set on, and never a nested one. */
11
+ @property --ui-tree-item-depth {
3
12
  syntax: "*";
4
13
  inherits: false;
5
14
  }
6
- @property --ui-tree-item-font-size {
15
+ @property --ui-tree-item-font-size {
7
16
  syntax: "*";
8
17
  inherits: false;
9
18
  }
10
- @property --ui-tree-item-label-padding-block {
19
+ @property --ui-tree-item-label-padding-block {
11
20
  syntax: "*";
12
21
  inherits: false;
13
22
  }
14
- @property --ui-tree-item-label-padding-inline {
23
+ @property --ui-tree-item-label-padding-inline {
15
24
  syntax: "*";
16
25
  inherits: false;
17
26
  }
18
- @property --ui-tree-item-min-block-size {
27
+ @property --ui-tree-item-min-block-size {
19
28
  syntax: "*";
20
29
  inherits: false;
21
30
  }
22
- @keyframes ui-tree-item-marquee {
23
- from {
24
- transform: translateX(0);
25
- }
26
31
 
27
- to {
28
- transform: translateX(var(--_marquee-distance));
29
- }
30
- }
31
- @scope ([data-component~="ui-tree-item"]) to ([data-component], [data-slotted]) {
32
- /* This component's hooks style the element they are set on, and never a nested one. */
33
-
34
- :scope {
32
+ :scope:where([data-component~="ui-tree-item"]) {
35
33
  /* Hooks do not inherit, so the parts below read them from the root. The tree's density
36
34
  sets the defaults, in --_ui-default-*. */
37
35
  --_ui-tree-item-min-block-size: var(--ui-tree-item-min-block-size, var(--_ui-default-tree-item-min-block-size));
@@ -74,40 +72,40 @@
74
72
  }
75
73
 
76
74
  /* Selection is the same surface recipe as destination and choice rows. */
77
- :scope[data-ui-tree-item-state~="selected"] > .row {
75
+ :scope:where([data-component~="ui-tree-item"])[data-ui-tree-item-state~="selected"] > .row {
78
76
  color: var(--_ui-selection-context-text, var(--ui-selection-text));
79
77
  background: var(--_ui-selection-context-surface, var(--ui-selection-surface));
80
78
  box-shadow: inset 0 0 0 var(--ui-border-width) var(--_ui-selection-context-border, var(--ui-selection-border));
81
79
  }
82
- :scope[data-ui-tree-item-state~="selected"]:not([aria-disabled="true"]) > .row > .leading {
80
+ :scope:where([data-component~="ui-tree-item"])[data-ui-tree-item-state~="selected"]:not([aria-disabled="true"]) > .row > .leading {
83
81
  color: var(--_ui-selection-context-text, var(--ui-selection-text));
84
82
  }
85
83
 
86
- :scope[data-ui-tree-item-state~="disabled"] .row {
84
+ :scope:where([data-component~="ui-tree-item"])[data-ui-tree-item-state~="disabled"] .row {
87
85
  color: var(--ui-disabled-text);
88
86
  background: var(--ui-disabled-surface);
89
87
  box-shadow: none;
90
88
  }
91
89
 
92
- :scope[data-dragging]:not([data-move-source]) .row {
90
+ :scope:where([data-component~="ui-tree-item"])[data-dragging]:not([data-move-source]) .row {
93
91
  opacity: 0.42;
94
92
  }
95
93
 
96
- :scope[data-move-source] > .row > .label,
97
- :scope[data-move-source] > .row > .leading {
94
+ :scope:where([data-component~="ui-tree-item"])[data-move-source] > .row > .label,
95
+ :scope:where([data-component~="ui-tree-item"])[data-move-source] > .row > .leading {
98
96
  opacity: 0.42;
99
97
  }
100
98
 
101
- :scope:focus {
99
+ :scope:where([data-component~="ui-tree-item"]):focus {
102
100
  outline: none;
103
101
  }
104
102
 
105
- :scope:focus-visible .row {
103
+ :scope:where([data-component~="ui-tree-item"]):focus-visible .row {
106
104
  box-shadow: 0 0 0 var(--ui-focus-width) var(--ui-focus-ring);
107
105
  }
108
106
 
109
107
  /* Child combinators: drop feedback belongs to this item's own row, not the rows nested in it. */
110
- :scope[data-drop-position="inside"] > .row {
108
+ :scope:where([data-component~="ui-tree-item"])[data-drop-position="inside"] > .row {
111
109
  background: var(--ui-accent-subtle);
112
110
  box-shadow: inset 0 0 0 var(--ui-accent-line-width) var(--_ui-tree-drop-color, var(--ui-accent-solid));
113
111
  }
@@ -152,16 +150,16 @@
152
150
  accent-color: var(--ui-accent-solid);
153
151
  }
154
152
 
155
- :scope[data-selection-mode="multiple"] > .row {
153
+ :scope:where([data-component~="ui-tree-item"])[data-selection-mode="multiple"] > .row {
156
154
  grid-template-columns: var(--_tree-disclosure-size) 1.25rem auto minmax(0, 1fr);
157
155
  }
158
- :scope[data-selection-mode="multiple"] > .row > .selection-hit {
156
+ :scope:where([data-component~="ui-tree-item"])[data-selection-mode="multiple"] > .row > .selection-hit {
159
157
  display: grid;
160
158
  }
161
- :scope[data-selection-mode="multiple"] > .row > .leading {
159
+ :scope:where([data-component~="ui-tree-item"])[data-selection-mode="multiple"] > .row > .leading {
162
160
  grid-column: 3;
163
161
  }
164
- :scope[data-selection-mode="multiple"] > .row > .label {
162
+ :scope:where([data-component~="ui-tree-item"])[data-selection-mode="multiple"] > .row > .label {
165
163
  grid-column: 4;
166
164
  }
167
165
 
@@ -179,7 +177,7 @@
179
177
  transition: transform var(--ui-motion-fast) var(--ui-motion-ease);
180
178
  }
181
179
 
182
- .disclosure-icon::before {
180
+ .disclosure-icon:where(:not([data-component], [data-slotted]))::before {
183
181
  display: block;
184
182
  inline-size: 0.375rem;
185
183
  block-size: 0.375rem;
@@ -190,7 +188,7 @@
190
188
  transform: translateY(-20%) rotate(45deg);
191
189
  }
192
190
 
193
- :scope[aria-expanded="true"] > .row > .disclosure > .disclosure-icon {
191
+ :scope:where([data-component~="ui-tree-item"])[aria-expanded="true"] > .row > .disclosure > .disclosure-icon {
194
192
  transform: rotate(0deg);
195
193
  }
196
194
 
@@ -256,8 +254,8 @@
256
254
  the truncation mark while it shows: an ellipsis under it would read as a second one. */
257
255
  .row:hover > .label,
258
256
  .row:focus-within > .label,
259
- :scope[data-ui-tree-item-state~="actionsVisible"] > .row > .label,
260
- :scope[data-move-source] > .row > .label {
257
+ :scope:where([data-component~="ui-tree-item"])[data-ui-tree-item-state~="actionsVisible"] > .row > .label,
258
+ :scope:where([data-component~="ui-tree-item"])[data-move-source] > .row > .label {
261
259
  text-overflow: clip;
262
260
  mask-image: linear-gradient(
263
261
  to right,
@@ -268,8 +266,8 @@
268
266
 
269
267
  .row:hover > .label:dir(rtl),
270
268
  .row:focus-within > .label:dir(rtl),
271
- :scope[data-ui-tree-item-state~="actionsVisible"] > .row > .label:dir(rtl),
272
- :scope[data-move-source] > .row > .label:dir(rtl) {
269
+ :scope:where([data-component~="ui-tree-item"])[data-ui-tree-item-state~="actionsVisible"] > .row > .label:dir(rtl),
270
+ :scope:where([data-component~="ui-tree-item"])[data-move-source] > .row > .label:dir(rtl) {
273
271
  mask-image: linear-gradient(
274
272
  to left,
275
273
  #000 calc(100% - var(--_tree-actions-width, 1.75rem) - var(--ui-space-1)),
@@ -314,6 +312,16 @@
314
312
  );
315
313
  }
316
314
 
315
+ @keyframes ui-tree-item-marquee {
316
+ from {
317
+ transform: translateX(0);
318
+ }
319
+
320
+ to {
321
+ transform: translateX(var(--_marquee-distance));
322
+ }
323
+ }
324
+
317
325
  /* Reduced motion keeps the fade, which already says the name continues. */
318
326
  @media (prefers-reduced-motion: reduce) {
319
327
  .row[data-ui-marquee] > .label > .label-text {
@@ -336,8 +344,8 @@
336
344
 
337
345
  .row:hover > .actions,
338
346
  .row:focus-within > .actions,
339
- :scope[data-ui-tree-item-state~="actionsVisible"] > .row > .actions,
340
- :scope[data-move-source] > .row > .actions {
347
+ :scope:where([data-component~="ui-tree-item"])[data-ui-tree-item-state~="actionsVisible"] > .row > .actions,
348
+ :scope:where([data-component~="ui-tree-item"])[data-move-source] > .row > .actions {
341
349
  opacity: 1;
342
350
  pointer-events: auto;
343
351
  }
@@ -360,8 +368,8 @@
360
368
 
361
369
  .row:is(:hover, :focus-within) > .label,
362
370
  .row:is(:hover, :focus-within) > .label:dir(rtl),
363
- :scope[data-move-source] > .row > .label,
364
- :scope[data-move-source] > .row > .label:dir(rtl) {
371
+ :scope:where([data-component~="ui-tree-item"])[data-move-source] > .row > .label,
372
+ :scope:where([data-component~="ui-tree-item"])[data-move-source] > .row > .label:dir(rtl) {
365
373
  mask-image: none;
366
374
  }
367
375
 
@@ -374,10 +382,10 @@
374
382
  }
375
383
 
376
384
  /* Persistent content has its own column on touch. Fade only the label's end. */
377
- :scope[data-ui-tree-item-state~="actionsVisible"] > .row > .label {
385
+ :scope:where([data-component~="ui-tree-item"])[data-ui-tree-item-state~="actionsVisible"] > .row > .label {
378
386
  mask-image: linear-gradient(to right, #000 calc(100% - var(--ui-space-1)), transparent 100%);
379
387
  }
380
- :scope[data-ui-tree-item-state~="actionsVisible"] > .row > .label:dir(rtl) {
388
+ :scope:where([data-component~="ui-tree-item"])[data-ui-tree-item-state~="actionsVisible"] > .row > .label:dir(rtl) {
381
389
  mask-image: linear-gradient(to left, #000 calc(100% - var(--ui-space-1)), transparent 100%);
382
390
  }
383
391
 
@@ -389,11 +397,11 @@
389
397
  );
390
398
  }
391
399
 
392
- :scope[data-selection-mode="multiple"] > .row {
400
+ :scope:where([data-component~="ui-tree-item"])[data-selection-mode="multiple"] > .row {
393
401
  grid-template-columns: var(--_tree-disclosure-size) 1.25rem auto minmax(0, 1fr) auto;
394
402
  }
395
403
 
396
- :scope[data-selection-mode="multiple"] > .row > .actions {
404
+ :scope:where([data-component~="ui-tree-item"])[data-selection-mode="multiple"] > .row > .actions {
397
405
  grid-column: 5;
398
406
  }
399
407
  }
@@ -427,11 +435,11 @@
427
435
  .row:hover .drag-handle,
428
436
  .drag-handle:hover,
429
437
  .drag-handle:focus-visible,
430
- :scope[data-dragging] > .row > .drag-handle {
438
+ :scope:where([data-component~="ui-tree-item"])[data-dragging] > .row > .drag-handle {
431
439
  opacity: 1;
432
440
  }
433
441
 
434
- :scope[data-ui-tree-item-state~="isContainer"] > .row > .drag-handle {
442
+ :scope:where([data-component~="ui-tree-item"])[data-ui-tree-item-state~="isContainer"] > .row > .drag-handle {
435
443
  inset-inline-start: calc(-1 * var(--_tree-disclosure-size) - 2px);
436
444
  }
437
445
 
@@ -456,8 +464,8 @@
456
464
  pointer-events: none;
457
465
  }
458
466
 
459
- .drop-indicator::before,
460
- .drop-indicator::after {
467
+ .drop-indicator:where(:not([data-component], [data-slotted]))::before,
468
+ .drop-indicator:where(:not([data-component], [data-slotted]))::after {
461
469
  content: "";
462
470
  position: absolute;
463
471
  inset-block-start: 50%;
@@ -469,19 +477,19 @@
469
477
  transform: translateY(-50%);
470
478
  }
471
479
 
472
- .drop-indicator::before {
480
+ .drop-indicator:where(:not([data-component], [data-slotted]))::before {
473
481
  inset-inline-start: -1px;
474
482
  }
475
- .drop-indicator::after {
483
+ .drop-indicator:where(:not([data-component], [data-slotted]))::after {
476
484
  inset-inline-end: -1px;
477
485
  }
478
486
 
479
- :scope[data-drop-position="before"] > .row > .row-drop-indicator {
487
+ :scope:where([data-component~="ui-tree-item"])[data-drop-position="before"] > .row > .row-drop-indicator {
480
488
  display: block;
481
489
  inset-block-start: calc(-0.5 * var(--ui-accent-line-width));
482
490
  }
483
491
 
484
- :scope[data-drop-position="after"] > .subtree-drop-indicator {
492
+ :scope:where([data-component~="ui-tree-item"])[data-drop-position="after"] > .subtree-drop-indicator {
485
493
  display: block;
486
494
  inset-block-end: calc(-0.5 * var(--ui-accent-line-width));
487
495
  }
@@ -490,16 +498,16 @@
490
498
  display: none;
491
499
  }
492
500
 
493
- html[data-ui-input-modality="touch"] :scope {
501
+ html[data-ui-input-modality="touch"] :scope:where([data-component~="ui-tree-item"]) {
494
502
  --_tree-row-min-height: 44px;
495
503
  }
496
504
 
497
- html[data-ui-input-modality="touch"] :scope .row {
505
+ html[data-ui-input-modality="touch"] :scope:where([data-component~="ui-tree-item"]) .row {
498
506
  grid-template-columns: 44px var(--_tree-disclosure-size) auto minmax(0, 1fr);
499
507
  }
500
508
 
501
- html[data-ui-input-modality="touch"] :scope .drag-handle,
502
- html[data-ui-input-modality="touch"] :scope[data-ui-tree-item-state~="isContainer"] > .row > .drag-handle {
509
+ html[data-ui-input-modality="touch"] :scope:where([data-component~="ui-tree-item"]) .drag-handle,
510
+ html[data-ui-input-modality="touch"] :scope:where([data-component~="ui-tree-item"])[data-ui-tree-item-state~="isContainer"] > .row > .drag-handle {
503
511
  position: relative;
504
512
  grid-column: 1;
505
513
  grid-row: 1;
@@ -512,45 +520,45 @@
512
520
  cursor: pointer;
513
521
  }
514
522
 
515
- html[data-ui-input-modality="touch"] :scope .disclosure {
523
+ html[data-ui-input-modality="touch"] :scope:where([data-component~="ui-tree-item"]) .disclosure {
516
524
  grid-column: 2;
517
525
  }
518
- html[data-ui-input-modality="touch"] :scope .leading {
526
+ html[data-ui-input-modality="touch"] :scope:where([data-component~="ui-tree-item"]) .leading {
519
527
  grid-column: 3;
520
528
  }
521
- html[data-ui-input-modality="touch"] :scope .label {
529
+ html[data-ui-input-modality="touch"] :scope:where([data-component~="ui-tree-item"]) .label {
522
530
  grid-column: 4;
523
531
  }
524
532
 
525
- html[data-ui-input-modality="touch"] :scope[data-selection-mode="multiple"] > .row {
533
+ html[data-ui-input-modality="touch"] :scope:where([data-component~="ui-tree-item"])[data-selection-mode="multiple"] > .row {
526
534
  grid-template-columns: 44px var(--_tree-disclosure-size) 44px auto minmax(0, 1fr);
527
535
  }
528
- html[data-ui-input-modality="touch"] :scope[data-selection-mode="multiple"] > .row > .selection-hit {
536
+ html[data-ui-input-modality="touch"] :scope:where([data-component~="ui-tree-item"])[data-selection-mode="multiple"] > .row > .selection-hit {
529
537
  grid-column: 3;
530
538
  inline-size: 44px;
531
539
  block-size: 44px;
532
540
  }
533
- html[data-ui-input-modality="touch"] :scope[data-selection-mode="multiple"] > .row > .leading {
541
+ html[data-ui-input-modality="touch"] :scope:where([data-component~="ui-tree-item"])[data-selection-mode="multiple"] > .row > .leading {
534
542
  grid-column: 4;
535
543
  }
536
- html[data-ui-input-modality="touch"] :scope[data-selection-mode="multiple"] > .row > .label {
544
+ html[data-ui-input-modality="touch"] :scope:where([data-component~="ui-tree-item"])[data-selection-mode="multiple"] > .row > .label {
537
545
  grid-column: 5;
538
546
  }
539
547
 
540
548
  @media (hover: none), (pointer: coarse) {
541
- html[data-ui-input-modality="touch"] :scope .row {
549
+ html[data-ui-input-modality="touch"] :scope:where([data-component~="ui-tree-item"]) .row {
542
550
  grid-template-columns: 44px var(--_tree-disclosure-size) auto minmax(0, 1fr) auto;
543
551
  }
544
552
 
545
- html[data-ui-input-modality="touch"] :scope .actions {
553
+ html[data-ui-input-modality="touch"] :scope:where([data-component~="ui-tree-item"]) .actions {
546
554
  grid-column: 5;
547
555
  }
548
556
 
549
- html[data-ui-input-modality="touch"] :scope[data-selection-mode="multiple"] > .row {
557
+ html[data-ui-input-modality="touch"] :scope:where([data-component~="ui-tree-item"])[data-selection-mode="multiple"] > .row {
550
558
  grid-template-columns: 44px var(--_tree-disclosure-size) 44px auto minmax(0, 1fr) auto;
551
559
  }
552
560
 
553
- html[data-ui-input-modality="touch"] :scope[data-selection-mode="multiple"] > .row > .actions {
561
+ html[data-ui-input-modality="touch"] :scope:where([data-component~="ui-tree-item"])[data-selection-mode="multiple"] > .row > .actions {
554
562
  grid-column: 6;
555
563
  }
556
564
  }
@@ -564,18 +572,18 @@
564
572
  }
565
573
 
566
574
  @media (forced-colors: active) {
567
- :scope:focus-visible > .row {
575
+ :scope:where([data-component~="ui-tree-item"]):focus-visible > .row {
568
576
  outline: var(--ui-focus-width) solid Highlight;
569
577
  outline-offset: calc(-1 * var(--ui-focus-width));
570
578
  }
571
- :scope[data-ui-tree-item-state~="selected"]:not(:focus-visible):not([aria-disabled="true"]) > .row {
579
+ :scope:where([data-component~="ui-tree-item"])[data-ui-tree-item-state~="selected"]:not(:focus-visible):not([aria-disabled="true"]) > .row {
572
580
  outline: var(--ui-border-width) solid Highlight;
573
581
  outline-offset: calc(-1 * var(--ui-border-width));
574
582
  }
575
583
  }
576
584
 
577
585
  /* A component that sets its display still honours the hidden attribute on its root. */
578
- :scope[hidden] {
586
+ :scope:where([data-component~="ui-tree-item"])[hidden] {
579
587
  display: none;
580
588
  }
581
589
  }