@threadlabs/looma 0.28.5 → 0.28.6

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 (429) hide show
  1. package/components/ui-editor-mention-menu-item/ui-editor-mention-menu-item.html +3 -2
  2. package/dist/index.js +1 -1
  3. package/package.json +3 -2
  4. package/styles/ui-action-bar.css +13 -6
  5. package/styles/ui-affordance-scope.css +12 -5
  6. package/styles/ui-avatar-group.css +17 -10
  7. package/styles/ui-avatar.css +23 -16
  8. package/styles/ui-badge.css +78 -71
  9. package/styles/ui-breadcrumb-item.css +12 -5
  10. package/styles/ui-breadcrumbs.css +10 -3
  11. package/styles/ui-button.css +79 -72
  12. package/styles/ui-callout.css +29 -22
  13. package/styles/ui-card.css +25 -18
  14. package/styles/ui-checkbox.css +45 -37
  15. package/styles/ui-cluster.css +34 -27
  16. package/styles/ui-combobox.css +46 -39
  17. package/styles/ui-container.css +20 -13
  18. package/styles/ui-context-menu.css +17 -10
  19. package/styles/ui-cover.css +12 -5
  20. package/styles/ui-description-item.css +10 -3
  21. package/styles/ui-description-list.css +20 -13
  22. package/styles/ui-dialog.css +44 -35
  23. package/styles/ui-disclosure.css +32 -25
  24. package/styles/ui-editable.css +15 -8
  25. package/styles/ui-editor-image-toolbar.css +1 -1
  26. package/styles/ui-editor-insert-table-grid.css +11 -4
  27. package/styles/ui-editor-mention-menu-item.css +17 -8
  28. package/styles/ui-editor-mention-menu.css +14 -7
  29. package/styles/ui-editor-slash-menu-group.css +10 -3
  30. package/styles/ui-editor-slash-menu-item.css +15 -8
  31. package/styles/ui-editor-slash-menu.css +15 -8
  32. package/styles/ui-editor-surface.css +10 -3
  33. package/styles/ui-editor-table-context-menu.css +17 -10
  34. package/styles/ui-editor-table-overlay.css +17 -10
  35. package/styles/ui-editor-table-toolbar.css +22 -15
  36. package/styles/ui-editor-toolbar.css +18 -11
  37. package/styles/ui-floating-action-button.css +21 -14
  38. package/styles/ui-form-field.css +20 -13
  39. package/styles/ui-grid.css +21 -14
  40. package/styles/ui-icon-button.css +80 -73
  41. package/styles/ui-icon.css +14 -7
  42. package/styles/ui-image.css +25 -18
  43. package/styles/ui-input-group.css +34 -27
  44. package/styles/ui-input.css +42 -35
  45. package/styles/ui-list-item.css +33 -26
  46. package/styles/ui-list.css +22 -15
  47. package/styles/ui-listbox.css +22 -14
  48. package/styles/ui-menu-group.css +10 -3
  49. package/styles/ui-menu-item.css +29 -22
  50. package/styles/ui-menu.css +25 -18
  51. package/styles/ui-meter.css +36 -29
  52. package/styles/ui-nav-item.css +26 -19
  53. package/styles/ui-page-header.css +12 -5
  54. package/styles/ui-popover.css +27 -20
  55. package/styles/ui-radio-group.css +14 -6
  56. package/styles/ui-radio.css +24 -17
  57. package/styles/ui-reel.css +28 -21
  58. package/styles/ui-scroll-area.css +22 -15
  59. package/styles/ui-search-result-row.css +28 -21
  60. package/styles/ui-search-shell.css +24 -17
  61. package/styles/ui-section.css +14 -7
  62. package/styles/ui-select.css +33 -26
  63. package/styles/ui-separator.css +17 -10
  64. package/styles/ui-sidebar.css +35 -28
  65. package/styles/ui-spinner.css +32 -23
  66. package/styles/ui-stack.css +29 -21
  67. package/styles/ui-status-message.css +14 -7
  68. package/styles/ui-switch.css +29 -22
  69. package/styles/ui-switcher.css +27 -20
  70. package/styles/ui-table.css +14 -7
  71. package/styles/ui-tabs.css +24 -17
  72. package/styles/ui-text.css +35 -28
  73. package/styles/ui-textarea.css +37 -30
  74. package/styles/ui-toast-region.css +74 -63
  75. package/styles/ui-toast.css +21 -14
  76. package/styles/ui-tooltip.css +38 -31
  77. package/styles/ui-top-bar.css +19 -12
  78. package/styles/ui-tree-item.css +79 -71
  79. package/styles/ui-tree.css +18 -11
  80. package/vanilla/UiActionBar.d.ts +1 -1
  81. package/vanilla/UiActionBar.js +1 -1
  82. package/vanilla/UiAffordanceScope.d.ts +1 -1
  83. package/vanilla/UiAffordanceScope.js +1 -1
  84. package/vanilla/UiAvatar.d.ts +1 -1
  85. package/vanilla/UiAvatar.js +1 -1
  86. package/vanilla/UiAvatarGroup.d.ts +1 -1
  87. package/vanilla/UiAvatarGroup.js +1 -1
  88. package/vanilla/UiBadge.d.ts +1 -1
  89. package/vanilla/UiBadge.js +1 -1
  90. package/vanilla/UiBreadcrumbItem.d.ts +1 -1
  91. package/vanilla/UiBreadcrumbItem.js +1 -1
  92. package/vanilla/UiBreadcrumbs.d.ts +1 -1
  93. package/vanilla/UiBreadcrumbs.js +1 -1
  94. package/vanilla/UiButton.d.ts +1 -1
  95. package/vanilla/UiButton.js +19 -57
  96. package/vanilla/UiCallout.d.ts +1 -1
  97. package/vanilla/UiCallout.js +25 -73
  98. package/vanilla/UiCard.d.ts +1 -1
  99. package/vanilla/UiCard.js +1 -1
  100. package/vanilla/UiCheckbox.d.ts +1 -1
  101. package/vanilla/UiCheckbox.js +1 -1
  102. package/vanilla/UiCluster.d.ts +1 -1
  103. package/vanilla/UiCluster.js +1 -1
  104. package/vanilla/UiCombobox.d.ts +1 -1
  105. package/vanilla/UiCombobox.js +60 -166
  106. package/vanilla/UiContainer.d.ts +1 -1
  107. package/vanilla/UiContainer.js +1 -1
  108. package/vanilla/UiContextMenu.d.ts +1 -1
  109. package/vanilla/UiContextMenu.js +1 -1
  110. package/vanilla/UiCover.d.ts +1 -1
  111. package/vanilla/UiCover.js +1 -1
  112. package/vanilla/UiDescriptionItem.d.ts +1 -1
  113. package/vanilla/UiDescriptionItem.js +1 -1
  114. package/vanilla/UiDescriptionList.d.ts +1 -1
  115. package/vanilla/UiDescriptionList.js +1 -1
  116. package/vanilla/UiDialog.d.ts +1 -1
  117. package/vanilla/UiDialog.js +4 -10
  118. package/vanilla/UiDisclosure.d.ts +1 -1
  119. package/vanilla/UiDisclosure.js +1 -1
  120. package/vanilla/UiEditable.d.ts +1 -1
  121. package/vanilla/UiEditable.js +7 -19
  122. package/vanilla/UiEditorImageToolbar.d.ts +1 -1
  123. package/vanilla/UiEditorImageToolbar.js +1 -1
  124. package/vanilla/UiEditorInsertTableGrid.d.ts +1 -1
  125. package/vanilla/UiEditorInsertTableGrid.js +1 -1
  126. package/vanilla/UiEditorMentionMenu.d.ts +1 -1
  127. package/vanilla/UiEditorMentionMenu.js +17 -37
  128. package/vanilla/UiEditorMentionMenuItem.d.ts +1 -1
  129. package/vanilla/UiEditorMentionMenuItem.js +4 -10
  130. package/vanilla/UiEditorSlashMenu.d.ts +1 -1
  131. package/vanilla/UiEditorSlashMenu.js +5 -4
  132. package/vanilla/UiEditorSlashMenuGroup.d.ts +1 -1
  133. package/vanilla/UiEditorSlashMenuGroup.js +1 -1
  134. package/vanilla/UiEditorSlashMenuItem.d.ts +1 -1
  135. package/vanilla/UiEditorSlashMenuItem.js +7 -19
  136. package/vanilla/UiEditorSurface.d.ts +1 -1
  137. package/vanilla/UiEditorSurface.js +1 -1
  138. package/vanilla/UiEditorTableContextMenu.d.ts +1 -1
  139. package/vanilla/UiEditorTableContextMenu.js +6 -14
  140. package/vanilla/UiEditorTableOverlay.d.ts +1 -1
  141. package/vanilla/UiEditorTableOverlay.js +9 -25
  142. package/vanilla/UiEditorTableToolbar.d.ts +1 -1
  143. package/vanilla/UiEditorTableToolbar.js +25 -77
  144. package/vanilla/UiEditorToolbar.d.ts +1 -1
  145. package/vanilla/UiEditorToolbar.js +1 -1
  146. package/vanilla/UiFloatingActionButton.d.ts +1 -1
  147. package/vanilla/UiFloatingActionButton.js +1 -1
  148. package/vanilla/UiFormField.d.ts +1 -1
  149. package/vanilla/UiFormField.js +1 -1
  150. package/vanilla/UiGrid.d.ts +1 -1
  151. package/vanilla/UiGrid.js +1 -1
  152. package/vanilla/UiIcon.d.ts +1 -1
  153. package/vanilla/UiIcon.js +15 -47
  154. package/vanilla/UiIconButton.d.ts +1 -1
  155. package/vanilla/UiIconButton.js +4 -10
  156. package/vanilla/UiImage.d.ts +1 -1
  157. package/vanilla/UiImage.js +1 -1
  158. package/vanilla/UiInput.d.ts +1 -1
  159. package/vanilla/UiInput.js +1 -1
  160. package/vanilla/UiInputGroup.d.ts +1 -1
  161. package/vanilla/UiInputGroup.js +1 -1
  162. package/vanilla/UiList.d.ts +1 -1
  163. package/vanilla/UiList.js +1 -1
  164. package/vanilla/UiListItem.d.ts +1 -1
  165. package/vanilla/UiListItem.js +1 -1
  166. package/vanilla/UiListbox.d.ts +1 -1
  167. package/vanilla/UiListbox.js +4 -10
  168. package/vanilla/UiMenu.d.ts +1 -1
  169. package/vanilla/UiMenu.js +1 -1
  170. package/vanilla/UiMenuGroup.d.ts +1 -1
  171. package/vanilla/UiMenuGroup.js +4 -10
  172. package/vanilla/UiMenuItem.d.ts +1 -1
  173. package/vanilla/UiMenuItem.js +4 -10
  174. package/vanilla/UiMeter.d.ts +1 -1
  175. package/vanilla/UiMeter.js +13 -33
  176. package/vanilla/UiNavItem.d.ts +1 -1
  177. package/vanilla/UiNavItem.js +1 -1
  178. package/vanilla/UiPageHeader.d.ts +1 -1
  179. package/vanilla/UiPageHeader.js +1 -1
  180. package/vanilla/UiPopover.d.ts +1 -1
  181. package/vanilla/UiPopover.js +1 -1
  182. package/vanilla/UiRadio.d.ts +1 -1
  183. package/vanilla/UiRadio.js +1 -1
  184. package/vanilla/UiRadioGroup.d.ts +1 -1
  185. package/vanilla/UiRadioGroup.js +1 -1
  186. package/vanilla/UiReel.d.ts +1 -1
  187. package/vanilla/UiReel.js +1 -1
  188. package/vanilla/UiScrollArea.d.ts +1 -1
  189. package/vanilla/UiScrollArea.js +1 -1
  190. package/vanilla/UiSearchResultRow.d.ts +1 -1
  191. package/vanilla/UiSearchResultRow.js +1 -1
  192. package/vanilla/UiSearchShell.d.ts +1 -1
  193. package/vanilla/UiSearchShell.js +1 -1
  194. package/vanilla/UiSection.d.ts +1 -1
  195. package/vanilla/UiSection.js +1 -1
  196. package/vanilla/UiSelect.d.ts +1 -1
  197. package/vanilla/UiSelect.js +1 -1
  198. package/vanilla/UiSeparator.d.ts +1 -1
  199. package/vanilla/UiSeparator.js +1 -1
  200. package/vanilla/UiSidebar.d.ts +1 -1
  201. package/vanilla/UiSidebar.js +1 -1
  202. package/vanilla/UiSpinner.d.ts +1 -1
  203. package/vanilla/UiSpinner.js +1 -1
  204. package/vanilla/UiStack.d.ts +1 -1
  205. package/vanilla/UiStack.js +1 -1
  206. package/vanilla/UiStatusMessage.d.ts +1 -1
  207. package/vanilla/UiStatusMessage.js +1 -1
  208. package/vanilla/UiSwitch.d.ts +1 -1
  209. package/vanilla/UiSwitch.js +1 -1
  210. package/vanilla/UiSwitcher.d.ts +1 -1
  211. package/vanilla/UiSwitcher.js +1 -1
  212. package/vanilla/UiTable.d.ts +1 -1
  213. package/vanilla/UiTable.js +1 -1
  214. package/vanilla/UiTabs.d.ts +1 -1
  215. package/vanilla/UiTabs.js +1 -1
  216. package/vanilla/UiText.d.ts +1 -1
  217. package/vanilla/UiText.js +1 -1
  218. package/vanilla/UiTextarea.d.ts +1 -1
  219. package/vanilla/UiTextarea.js +1 -1
  220. package/vanilla/UiToast.d.ts +1 -1
  221. package/vanilla/UiToast.js +1 -1
  222. package/vanilla/UiToastRegion.d.ts +1 -1
  223. package/vanilla/UiToastRegion.js +1 -1
  224. package/vanilla/UiTooltip.d.ts +1 -1
  225. package/vanilla/UiTooltip.js +1 -1
  226. package/vanilla/UiTopBar.d.ts +1 -1
  227. package/vanilla/UiTopBar.js +1 -1
  228. package/vanilla/UiTree.d.ts +1 -1
  229. package/vanilla/UiTree.js +1 -1
  230. package/vanilla/UiTreeItem.d.ts +1 -1
  231. package/vanilla/UiTreeItem.js +7 -19
  232. package/vue/UiActionBar.vue +46 -78
  233. package/vue/UiAffordanceScope.vue +27 -66
  234. package/vue/UiAvatar.d.ts +10 -7
  235. package/vue/UiAvatar.vue +100 -218
  236. package/vue/UiAvatarGroup.d.ts +10 -7
  237. package/vue/UiAvatarGroup.vue +78 -160
  238. package/vue/UiBadge.d.ts +1 -1
  239. package/vue/UiBadge.vue +483 -520
  240. package/vue/UiBreadcrumbItem.vue +52 -123
  241. package/vue/UiBreadcrumbs.vue +27 -70
  242. package/vue/UiButton.d.ts +2 -2
  243. package/vue/UiButton.vue +420 -471
  244. package/vue/UiCallout.vue +131 -175
  245. package/vue/UiCard.d.ts +1 -1
  246. package/vue/UiCard.vue +112 -151
  247. package/vue/UiCheckbox.d.ts +13 -10
  248. package/vue/UiCheckbox.vue +160 -221
  249. package/vue/UiCluster.d.ts +1 -1
  250. package/vue/UiCluster.vue +84 -128
  251. package/vue/UiCombobox.d.ts +71 -68
  252. package/vue/UiCombobox.vue +417 -743
  253. package/vue/UiContainer.vue +43 -87
  254. package/vue/UiContextMenu.d.ts +6 -6
  255. package/vue/UiContextMenu.vue +78 -117
  256. package/vue/UiCover.vue +29 -69
  257. package/vue/UiDescriptionItem.vue +39 -82
  258. package/vue/UiDescriptionList.vue +64 -107
  259. package/vue/UiDialog.d.ts +22 -19
  260. package/vue/UiDialog.vue +193 -246
  261. package/vue/UiDisclosure.d.ts +22 -19
  262. package/vue/UiDisclosure.vue +192 -283
  263. package/vue/UiEditable.d.ts +5 -5
  264. package/vue/UiEditable.vue +124 -207
  265. package/vue/UiEditorImageToolbar.d.ts +2 -2
  266. package/vue/UiEditorImageToolbar.vue +41 -251
  267. package/vue/UiEditorInsertTableGrid.d.ts +2 -2
  268. package/vue/UiEditorInsertTableGrid.vue +98 -266
  269. package/vue/UiEditorMentionMenu.d.ts +15 -12
  270. package/vue/UiEditorMentionMenu.vue +150 -239
  271. package/vue/UiEditorMentionMenuItem.vue +66 -110
  272. package/vue/UiEditorSlashMenu.d.ts +16 -13
  273. package/vue/UiEditorSlashMenu.vue +172 -253
  274. package/vue/UiEditorSlashMenuGroup.vue +25 -69
  275. package/vue/UiEditorSlashMenuItem.vue +67 -115
  276. package/vue/UiEditorSurface.vue +19 -63
  277. package/vue/UiEditorTableContextMenu.vue +135 -269
  278. package/vue/UiEditorTableOverlay.d.ts +2 -2
  279. package/vue/UiEditorTableOverlay.vue +310 -479
  280. package/vue/UiEditorTableToolbar.d.ts +2 -2
  281. package/vue/UiEditorTableToolbar.vue +182 -357
  282. package/vue/UiEditorToolbar.vue +143 -183
  283. package/vue/UiFloatingActionButton.vue +70 -114
  284. package/vue/UiFormField.d.ts +1 -1
  285. package/vue/UiFormField.vue +76 -117
  286. package/vue/UiGrid.d.ts +1 -1
  287. package/vue/UiGrid.vue +65 -103
  288. package/vue/UiIcon.vue +32 -106
  289. package/vue/UiIconButton.d.ts +2 -2
  290. package/vue/UiIconButton.vue +359 -411
  291. package/vue/UiImage.vue +145 -180
  292. package/vue/UiInput.vue +158 -190
  293. package/vue/UiInputGroup.vue +199 -239
  294. package/vue/UiList.vue +67 -109
  295. package/vue/UiListItem.vue +154 -201
  296. package/vue/UiListbox.d.ts +10 -7
  297. package/vue/UiListbox.vue +86 -260
  298. package/vue/UiMenu.d.ts +11 -11
  299. package/vue/UiMenu.vue +118 -152
  300. package/vue/UiMenuGroup.vue +21 -67
  301. package/vue/UiMenuItem.d.ts +19 -16
  302. package/vue/UiMenuItem.vue +169 -262
  303. package/vue/UiMeter.d.ts +4 -4
  304. package/vue/UiMeter.vue +166 -680
  305. package/vue/UiNavItem.vue +140 -213
  306. package/vue/UiPageHeader.vue +81 -127
  307. package/vue/UiPopover.d.ts +7 -7
  308. package/vue/UiPopover.vue +90 -129
  309. package/vue/UiRadio.d.ts +12 -9
  310. package/vue/UiRadio.vue +91 -149
  311. package/vue/UiRadioGroup.d.ts +2 -2
  312. package/vue/UiRadioGroup.vue +47 -85
  313. package/vue/UiReel.vue +89 -130
  314. package/vue/UiScrollArea.d.ts +1 -1
  315. package/vue/UiScrollArea.vue +78 -119
  316. package/vue/UiSearchResultRow.vue +96 -149
  317. package/vue/UiSearchShell.d.ts +2 -2
  318. package/vue/UiSearchShell.vue +159 -196
  319. package/vue/UiSection.vue +105 -149
  320. package/vue/UiSelect.d.ts +1 -1
  321. package/vue/UiSelect.vue +114 -146
  322. package/vue/UiSeparator.vue +42 -85
  323. package/vue/UiSidebar.d.ts +10 -7
  324. package/vue/UiSidebar.vue +193 -260
  325. package/vue/UiSpinner.vue +54 -130
  326. package/vue/UiStack.vue +66 -107
  327. package/vue/UiStatusMessage.d.ts +1 -1
  328. package/vue/UiStatusMessage.vue +61 -135
  329. package/vue/UiSwitch.d.ts +12 -9
  330. package/vue/UiSwitch.vue +136 -194
  331. package/vue/UiSwitcher.vue +69 -107
  332. package/vue/UiTable.vue +121 -156
  333. package/vue/UiTabs.d.ts +1 -1
  334. package/vue/UiTabs.vue +139 -267
  335. package/vue/UiText.d.ts +4 -4
  336. package/vue/UiText.vue +145 -184
  337. package/vue/UiTextarea.d.ts +2 -2
  338. package/vue/UiTextarea.vue +162 -194
  339. package/vue/UiToast.vue +70 -118
  340. package/vue/UiToastRegion.vue +157 -276
  341. package/vue/UiTooltip.d.ts +21 -18
  342. package/vue/UiTooltip.vue +174 -234
  343. package/vue/UiTopBar.vue +48 -76
  344. package/vue/UiTree.vue +46 -79
  345. package/vue/UiTreeItem.d.ts +18 -15
  346. package/vue/UiTreeItem.vue +526 -668
  347. package/vue/chunks/UiActionBar.js +5 -17
  348. package/vue/chunks/UiAffordanceScope.js +7 -26
  349. package/vue/chunks/UiAvatar.js +20 -74
  350. package/vue/chunks/UiAvatarGroup.js +14 -56
  351. package/vue/chunks/UiBadge.js +10 -28
  352. package/vue/chunks/UiBreadcrumbItem.js +11 -41
  353. package/vue/chunks/UiBreadcrumbs.js +7 -25
  354. package/vue/chunks/UiButton.js +80 -103
  355. package/vue/chunks/UiCallout.js +9 -27
  356. package/vue/chunks/UiCard.js +33 -53
  357. package/vue/chunks/UiCheckbox.js +14 -46
  358. package/vue/chunks/UiCluster.js +13 -31
  359. package/vue/chunks/UiCombobox.js +99 -237
  360. package/vue/chunks/UiContainer.js +9 -27
  361. package/vue/chunks/UiContextMenu.js +7 -26
  362. package/vue/chunks/UiCover.js +7 -25
  363. package/vue/chunks/UiDescriptionItem.js +6 -24
  364. package/vue/chunks/UiDescriptionList.js +9 -27
  365. package/vue/chunks/UiDialog.js +18 -47
  366. package/vue/chunks/UiDisclosure.js +19 -66
  367. package/vue/chunks/UiEditable.js +18 -60
  368. package/vue/chunks/UiEditorImageToolbar.js +34 -103
  369. package/vue/chunks/UiEditorInsertTableGrid.js +14 -112
  370. package/vue/chunks/UiEditorMentionMenu.js +16 -54
  371. package/vue/chunks/UiEditorMentionMenuItem.js +10 -28
  372. package/vue/chunks/UiEditorSlashMenu.js +17 -46
  373. package/vue/chunks/UiEditorSlashMenuGroup.js +7 -25
  374. package/vue/chunks/UiEditorSlashMenuItem.js +16 -31
  375. package/vue/chunks/UiEditorSurface.js +7 -25
  376. package/vue/chunks/UiEditorTableContextMenu.js +25 -102
  377. package/vue/chunks/UiEditorTableOverlay.js +41 -104
  378. package/vue/chunks/UiEditorTableToolbar.js +44 -122
  379. package/vue/chunks/UiEditorToolbar.js +7 -26
  380. package/vue/chunks/UiFloatingActionButton.js +10 -28
  381. package/vue/chunks/UiFormField.js +8 -27
  382. package/vue/chunks/UiGrid.js +10 -28
  383. package/vue/chunks/UiIcon.js +21 -74
  384. package/vue/chunks/UiIconButton.js +18 -50
  385. package/vue/chunks/UiImage.js +14 -33
  386. package/vue/chunks/UiInput.js +12 -31
  387. package/vue/chunks/UiInputGroup.js +10 -29
  388. package/vue/chunks/UiList.js +17 -37
  389. package/vue/chunks/UiListItem.js +12 -30
  390. package/vue/chunks/UiListbox.js +22 -124
  391. package/vue/chunks/UiMenu.js +13 -32
  392. package/vue/chunks/UiMenuGroup.js +8 -26
  393. package/vue/chunks/UiMenuItem.js +35 -80
  394. package/vue/chunks/UiMeter.js +17 -351
  395. package/vue/chunks/UiNavItem.js +23 -57
  396. package/vue/chunks/UiPageHeader.js +7 -25
  397. package/vue/chunks/UiPopover.js +9 -28
  398. package/vue/chunks/UiRadio.js +11 -43
  399. package/vue/chunks/UiRadioGroup.js +13 -32
  400. package/vue/chunks/UiReel.js +10 -28
  401. package/vue/chunks/UiScrollArea.js +10 -29
  402. package/vue/chunks/UiSearchResultRow.js +10 -28
  403. package/vue/chunks/UiSearchShell.js +9 -28
  404. package/vue/chunks/UiSection.js +9 -27
  405. package/vue/chunks/UiSelect.js +10 -29
  406. package/vue/chunks/UiSeparator.js +10 -28
  407. package/vue/chunks/UiSidebar.js +15 -47
  408. package/vue/chunks/UiSpinner.js +8 -44
  409. package/vue/chunks/UiStack.js +12 -30
  410. package/vue/chunks/UiStatusMessage.js +10 -42
  411. package/vue/chunks/UiSwitch.js +11 -43
  412. package/vue/chunks/UiSwitcher.js +9 -28
  413. package/vue/chunks/UiTable.js +7 -26
  414. package/vue/chunks/UiTabs.js +15 -91
  415. package/vue/chunks/UiText.js +148 -168
  416. package/vue/chunks/UiTextarea.js +16 -35
  417. package/vue/chunks/UiToast.js +13 -37
  418. package/vue/chunks/UiToastRegion.js +16 -88
  419. package/vue/chunks/UiTooltip.js +14 -46
  420. package/vue/chunks/UiTopBar.js +5 -17
  421. package/vue/chunks/UiTree.js +13 -32
  422. package/vue/chunks/UiTreeItem.js +34 -90
  423. package/vue/chunks/_plugin-vue_export-helper.js +904 -1
  424. package/vue/chunks/control.js +3 -0
  425. package/vue/chunks/props.js +1 -1
  426. package/vue/components.css +7606 -7534
  427. package/vue/editor/index.js +1 -1
  428. package/vue/host.ts +999 -14
  429. package/vue/chunks/host.js +0 -443
package/vue/UiTabs.vue CHANGED
@@ -1,17 +1,17 @@
1
- <!-- Generated by HTML Next 1.0.0-alpha.35 for Vue 3.5. Do not edit. -->
1
+ <!-- Generated by HTML Next 1.0.0-alpha.51 for Vue 3.5. Do not edit. -->
2
2
  <script setup lang="ts">
3
+ import { computed, getCurrentInstance, provide, ref, useTemplateRef, watchSyncEffect } from 'vue'
4
+ import type { PropType } from 'vue'
3
5
  import {
4
- computed,
5
- defineComponent,
6
- getCurrentInstance,
7
- h,
8
- provide,
9
- ref,
10
- useTemplateRef,
11
- watchSyncEffect,
12
- } from 'vue'
13
- import type { PropType, VNode } from 'vue'
14
- import { createDispatch, useComponentHost } from './host'
6
+ checkHydratedRoot,
7
+ concat,
8
+ createDispatch,
9
+ KeyedBoundary,
10
+ nativeAttrs,
11
+ uniqueKeys,
12
+ useComponentHost,
13
+ useReflectedProp,
14
+ } from './host'
15
15
  import { acceptsControllerWrite } from './props'
16
16
  import { checkedProp, propValidityState, vPropValidity } from './props'
17
17
 
@@ -158,64 +158,7 @@ void checkedProps.value
158
158
  watchSyncEffect(() => {
159
159
  void checkedProps.value
160
160
  })
161
- function nativeAttrs(attrs: Record<string, unknown>): Record<string, unknown> {
162
- const names = Object.keys(attrs)
163
- if (!names.some((name) => Object.hasOwn(Object.prototype, name))) return attrs
164
- return Object.fromEntries(names.map((name) => [
165
- Object.hasOwn(Object.prototype, name)
166
- ? name === '__proto__' ? '__Proto__' : name[0]!.toUpperCase() + name.slice(1)
167
- : name,
168
- attrs[name],
169
- ]))
170
- }
171
- const KeyedFailure = defineComponent({
172
- props: { error: { type: null, required: true } },
173
- setup(props) {
174
- return () => {
175
- throw props.error
176
- }
177
- },
178
- })
179
- const KeyedBoundary = defineComponent({
180
- setup(_props, { slots }) {
181
- let last: VNode[] = []
182
- return () => {
183
- try {
184
- last = slots.default?.() ?? []
185
- return last
186
- } catch (error) {
187
- if (
188
- !(error instanceof Error)
189
- || (error as Error & { diagnostic?: { code?: string } }).diagnostic?.code !== 'HR004'
190
- ) throw error
191
- if (typeof window === 'undefined') throw error
192
- return [...last, h(KeyedFailure, { error })]
193
- }
194
- }
195
- },
196
- })
197
- const componentInstance = getCurrentInstance()
198
- function reflectedProp(
199
- name: string,
200
- kebab: string,
201
- value: unknown,
202
- fallback: string | undefined,
203
- bound: boolean,
204
- separator?: string,
205
- ): string | undefined {
206
- const incoming = componentInstance?.vnode.props
207
- if (
208
- !bound
209
- && (incoming === null || incoming === undefined
210
- || (!Object.hasOwn(incoming, name) && !Object.hasOwn(incoming, kebab)))
211
- ) return fallback
212
- if (value === null || value === undefined) return undefined
213
- return Array.isArray(value) && separator !== undefined
214
- ? value.join(separator)
215
- : typeof value === 'object'
216
- ? JSON.stringify(value)
217
- : String(value)
218
- }
161
+ const reflectedProp = useReflectedProp()
219
162
  const hydrationInstance = getCurrentInstance()
220
163
  const emit = defineEmits<{
221
164
  'update:value': [value: string]
@@ -237,19 +180,7 @@ const internalValue = ref('')
237
180
  const tabs = ref<{ id: string; label: string }[]>([])
238
181
  provide('html-next:ui-tabs:internalValue', internalValue)
239
182
  provide('html-next:ui-tabs:tabs', tabs)
240
- const hydrationNode = hydrationInstance?.vnode.el
241
- if (
242
- typeof window !== 'undefined' && hydrationNode != null
243
- && (!(hydrationNode instanceof Element) || hydrationNode.localName !== ('div'))
244
- ) {
245
- throw Object.assign(new Error('HR005: Server markup for <ui-tabs> has an incompatible root.'), {
246
- name: 'HtmlDiagnosticError',
247
- diagnostic: Object.freeze({
248
- code: 'HR005',
249
- message: 'Server markup for <ui-tabs> has an incompatible root.',
250
- }),
251
- })
252
- }
183
+ checkHydratedRoot('div', 'ui-tabs')
253
184
 
254
185
  /** The values the styles' :host-state() rules test. */
255
186
  const hostState = computed(() =>
@@ -323,62 +254,11 @@ useComponentHost(() => import('../components/ui-tabs/ui-tabs.js'), {
323
254
  refs: { list: listElement, panels: panelsElement },
324
255
  state: { internalValue, tabs },
325
256
  })
326
-
327
- function text(value: unknown): string {
328
- if (Array.isArray(value)) return value.map(text).join(' ')
329
- return value === null || value === undefined || typeof value === 'object' ? '' : String(value)
330
- }
331
-
332
- // A nonempty scalar call cannot produce the invalid-result sentinel.
333
- type ConcatResult<T extends unknown[]> = T extends
334
- [
335
- string | number | boolean | null | undefined,
336
- ...(string | number | boolean | null | undefined)[],
337
- ] ? string | undefined
338
- : string | symbol | undefined
339
- function concat<T extends unknown[]>(...values: T): ConcatResult<T> {
340
- if (values.some(value => value === Symbol.for('html-next.invalid-result'))) {
341
- return Symbol.for('html-next.invalid-result') as ConcatResult<T>
342
- }
343
- if (values.some(value => value === undefined)) return undefined as ConcatResult<T>
344
- if (values.length === 0 || values.some(value => typeof value === 'object' && value !== null)) {
345
- return Symbol.for('html-next.invalid-result') as ConcatResult<T>
346
- }
347
- return values.map(value => value === null ? '' : String(value)).join('') as ConcatResult<T>
348
- }
349
-
350
- function uniqueKeys<T>(
351
- items: readonly T[],
352
- keyOf: (
353
- item: T,
354
- index: number,
355
- loop: { index: number; first: boolean; last: boolean; count: number },
356
- ) => unknown,
357
- ): readonly T[] {
358
- const seen = new Set<unknown>()
359
- for (let index = 0; index < items.length; index += 1) {
360
- const key = keyOf(items[index]!, index, {
361
- index,
362
- first: index === 0,
363
- last: index === items.length - 1,
364
- count: items.length,
365
- })
366
- if (seen.has(key)) {
367
- const message = `A keyed list produced duplicate key \`${text(key)}\`.`
368
- throw Object.assign(new Error(`HR004: ${message}`), {
369
- name: 'HtmlDiagnosticError',
370
- diagnostic: Object.freeze({ code: 'HR004', message }),
371
- })
372
- }
373
- seen.add(key)
374
- }
375
- return items
376
- }
377
257
  </script>
378
258
 
379
259
  <template>
380
260
  <div
381
- data-component="ui-tabs"
261
+ class="ui-tabs"
382
262
  v-bind="nativeAttrs($attrs)"
383
263
  v-prop-validity="{ contract: propValidityContract, values: { ...props } }"
384
264
  :data-activation="reflectedProp('activation', 'activation', checkedProps.activation, undefined, false)"
@@ -431,155 +311,147 @@ function uniqueKeys<T>(
431
311
  }
432
312
 
433
313
  /* Density resolves into the tab row's own values; the public tokens still override them. */
434
- [data-component~="ui-tabs"] {
435
- /* Hooks do not inherit, so the parts below read them from the root. */
436
- --_ui-tabs-tab-min-block-size: var(--ui-tabs-tab-min-block-size);
437
- --_ui-tabs-tab-padding-block: var(--ui-tabs-tab-padding-block);
438
- --_ui-tabs-tab-padding-inline: var(--ui-tabs-tab-padding-inline);
439
314
 
440
- --_tab-min-block-size: var(--ui-control-size);
441
- --_tab-padding-block: var(--ui-space-2);
442
- --_tab-padding-inline: var(--ui-space-3);
443
- }
315
+ /* Centre the glyphs, not the line box: a label without descenders otherwise reads high. */
316
+ /* Centre the glyphs, not the line box: a label without descenders otherwise reads high.
317
+ * Trimming applies to block containers, so the box is a block with centred content. */
444
318
 
445
- [data-component~="ui-tabs"][data-ui-tabs-state~="density=compact"] {
446
- --_tab-min-block-size: var(--ui-control-size-sm);
447
- --_tab-padding-block: var(--ui-space-1);
448
- --_tab-padding-inline: var(--ui-space-2);
449
- }
319
+ /* A component that sets its display still honours the hidden attribute on its root. */
450
320
 
451
- [data-component~="ui-tabs"] {
452
- display: grid;
453
- inline-size: 100%;
454
- min-inline-size: 0;
455
- }
321
+ @scope (.ui-tabs) {
322
+ :scope:where(:scope) {
323
+ /* Hooks do not inherit, so the parts below read them from the root. */
324
+ --_ui-tabs-tab-min-block-size: var(--ui-tabs-tab-min-block-size);
325
+ --_ui-tabs-tab-padding-block: var(--ui-tabs-tab-padding-block);
326
+ --_ui-tabs-tab-padding-inline: var(--ui-tabs-tab-padding-inline);
456
327
 
457
- .list {
458
- display: grid;
459
- grid-auto-flow: column;
460
- grid-auto-columns: max-content;
461
- justify-content: start;
462
- inline-size: 100%;
463
- max-inline-size: 100%;
464
- /* Tabs that do not fit scroll sideways rather than wrapping or squeezing. */
465
- overflow-x: auto;
466
- /* overflow-x: auto would make the block axis scrollable too; a sideways swipe must not scroll the
467
- strip or the page vertically. */
468
- overflow-y: hidden;
469
- overscroll-behavior: contain;
470
- scrollbar-width: thin;
471
- border-block-end: var(--ui-border-width) solid var(--ui-border-divider);
472
- }
328
+ --_tab-min-block-size: var(--ui-control-size);
329
+ --_tab-padding-block: var(--ui-space-2);
330
+ --_tab-padding-inline: var(--ui-space-3);
331
+ }
473
332
 
474
- .list button,
475
- .list > :slotted(button[slot="tab"]) {
476
- min-block-size: var(--_ui-tabs-tab-min-block-size, var(--_tab-min-block-size));
477
- margin: 0 0 calc(-1 * var(--ui-border-width));
478
- padding: var(--_ui-tabs-tab-padding-block, var(--_tab-padding-block))
479
- var(--_ui-tabs-tab-padding-inline, var(--_tab-padding-inline));
480
- border: 0;
481
- border-block-end: var(--ui-accent-line-width) solid transparent;
482
- background: transparent;
483
- color: var(--ui-text-secondary);
484
- font: inherit;
485
- font-size: var(--ui-font-size-sm);
486
- font-weight: var(--ui-font-medium);
487
- cursor: pointer;
488
- transition:
489
- color var(--ui-motion-fast) var(--ui-motion-ease),
490
- background-color var(--ui-motion-fast) var(--ui-motion-ease),
491
- border-color var(--ui-motion-fast) var(--ui-motion-ease);
492
- }
333
+ :scope:where(:scope):is([data-ui-tabs-state~="density=compact"]) {
334
+ --_tab-min-block-size: var(--ui-control-size-sm);
335
+ --_tab-padding-block: var(--ui-space-1);
336
+ --_tab-padding-inline: var(--ui-space-2);
337
+ }
493
338
 
494
- /* Centre the glyphs, not the line box: a label without descenders otherwise reads high. */
495
- /* Centre the glyphs, not the line box: a label without descenders otherwise reads high.
496
- * Trimming applies to block containers, so the box is a block with centred content. */
497
- @supports (text-box-trim: trim-both) {
498
- .list button,
499
- .list > :slotted(button[slot="tab"]) {
500
- display: block;
501
- text-align: center;
502
- align-content: center;
503
- text-box-trim: trim-both;
504
- text-box-edge: cap alphabetic;
339
+ :scope:where(:scope) {
340
+ display: grid;
341
+ inline-size: 100%;
342
+ min-inline-size: 0;
505
343
  }
506
- }
507
344
 
508
- [data-component~="ui-tabs"][data-ui-tabs-state~="stretch"] .list {
509
- grid-auto-columns: minmax(max-content, 1fr);
510
- }
345
+ .list {
346
+ display: grid;
347
+ grid-auto-flow: column;
348
+ grid-auto-columns: max-content;
349
+ justify-content: start;
350
+ inline-size: 100%;
351
+ max-inline-size: 100%;
352
+ /* Tabs that do not fit scroll sideways rather than wrapping or squeezing. */
353
+ overflow-x: auto;
354
+ /* overflow-x: auto would make the block axis scrollable too; a sideways swipe must not scroll the
355
+ strip or the page vertically. */
356
+ overflow-y: hidden;
357
+ overscroll-behavior: contain;
358
+ scrollbar-width: thin;
359
+ border-block-end: var(--ui-border-width) solid var(--ui-border-divider);
360
+ }
511
361
 
512
- .list button,
513
- .list > :slotted(button[slot="tab"]) {
514
- white-space: nowrap;
515
- }
362
+ .list button, .list > :slotted(button[slot="tab"]) {
363
+ min-block-size: var(--_ui-tabs-tab-min-block-size, var(--_tab-min-block-size));
364
+ margin: 0 0 calc(-1 * var(--ui-border-width));
365
+ padding: var(--_ui-tabs-tab-padding-block, var(--_tab-padding-block))
366
+ var(--_ui-tabs-tab-padding-inline, var(--_tab-padding-inline));
367
+ border: 0;
368
+ border-block-end: var(--ui-accent-line-width) solid transparent;
369
+ background: transparent;
370
+ color: var(--ui-text-secondary);
371
+ font: inherit;
372
+ font-size: var(--ui-font-size-sm);
373
+ font-weight: var(--ui-font-medium);
374
+ cursor: pointer;
375
+ transition:
376
+ color var(--ui-motion-fast) var(--ui-motion-ease),
377
+ background-color var(--ui-motion-fast) var(--ui-motion-ease),
378
+ border-color var(--ui-motion-fast) var(--ui-motion-ease);
379
+ }
380
+ @supports (text-box-trim: trim-both) {
381
+ .list button, .list > :slotted(button[slot="tab"]) {
382
+ display: block;
383
+ text-align: center;
384
+ align-content: center;
385
+ text-box-trim: trim-both;
386
+ text-box-edge: cap alphabetic;
387
+ }
388
+ }
516
389
 
517
- .list button:hover,
518
- .list > :slotted(button[slot="tab"]:hover) {
519
- color: var(--ui-text-primary);
520
- background: var(--ui-surface-muted);
521
- }
522
- .list button[aria-selected="true"],
523
- .list > :slotted(button[slot="tab"][aria-selected="true"]) {
524
- color: var(--ui-accent-solid);
525
- border-block-end-color: var(--ui-accent-solid);
526
- }
527
- .list button:focus-visible,
528
- .list > :slotted(button[slot="tab"]:focus-visible) {
529
- position: relative;
530
- outline: none;
531
- box-shadow: inset 0 0 0 var(--ui-focus-width)
532
- color-mix(in srgb, var(--ui-focus-ring) 45%, transparent);
533
- border-radius: var(--ui-radius-sm);
534
- }
390
+ :scope[data-ui-tabs-state~="stretch"] .list {
391
+ grid-auto-columns: minmax(max-content, 1fr);
392
+ }
535
393
 
536
- .panels {
537
- min-inline-size: 0;
538
- }
539
- .panels > :slotted(*) {
540
- padding: var(--ui-space-4);
541
- }
394
+ .list button, .list > :slotted(button[slot="tab"]) {
395
+ white-space: nowrap;
396
+ }
542
397
 
543
- [data-component~="ui-tabs"][data-ui-tabs-state~="orientation=vertical"] {
544
- grid-template-columns: max-content minmax(0, 1fr);
545
- align-items: start;
546
- }
398
+ .list button:hover, .list > :slotted(button[slot="tab"]:hover) {
399
+ color: var(--ui-text-primary);
400
+ background: var(--ui-surface-muted);
401
+ }
402
+ .list button[aria-selected="true"], .list > :slotted(button[slot="tab"][aria-selected="true"]) {
403
+ color: var(--ui-accent-solid);
404
+ border-block-end-color: var(--ui-accent-solid);
405
+ }
406
+ .list button:focus-visible, .list > :slotted(button[slot="tab"]:focus-visible) {
407
+ position: relative;
408
+ outline: none;
409
+ box-shadow: inset 0 0 0 var(--ui-focus-width)
410
+ color-mix(in srgb, var(--ui-focus-ring) 45%, transparent);
411
+ border-radius: var(--ui-radius-sm);
412
+ }
547
413
 
548
- [data-component~="ui-tabs"][data-ui-tabs-state~="orientation=vertical"] .list {
549
- grid-auto-flow: row;
550
- grid-auto-columns: auto;
551
- border-block-end: 0;
552
- border-inline-end: var(--ui-border-width) solid var(--ui-border-divider);
553
- }
414
+ .panels {
415
+ min-inline-size: 0;
416
+ }
417
+ .panels > :slotted(*) {
418
+ padding: var(--ui-space-4);
419
+ }
554
420
 
555
- [data-component~="ui-tabs"][data-ui-tabs-state~="orientation=vertical"] .list button,
556
- [data-component~="ui-tabs"][data-ui-tabs-state~="orientation=vertical"]
557
- .list
558
- > :slotted(button[slot="tab"]) {
559
- margin: 0 calc(-1 * var(--ui-border-width)) 0 0;
560
- border-block-end: 0;
561
- border-inline-end: var(--ui-accent-line-width) solid transparent;
562
- text-align: start;
563
- }
421
+ :scope:where(:scope):is([data-ui-tabs-state~="orientation=vertical"]) {
422
+ grid-template-columns: max-content minmax(0, 1fr);
423
+ align-items: start;
424
+ }
564
425
 
565
- [data-component~="ui-tabs"][data-ui-tabs-state~="orientation=vertical"]
566
- .list
567
- button[aria-selected="true"],
568
- [data-component~="ui-tabs"][data-ui-tabs-state~="orientation=vertical"]
569
- .list
570
- > :slotted(button[slot="tab"][aria-selected="true"]) {
571
- border-inline-end-color: var(--ui-accent-solid);
572
- }
426
+ :scope[data-ui-tabs-state~="orientation=vertical"] .list {
427
+ grid-auto-flow: row;
428
+ grid-auto-columns: auto;
429
+ border-block-end: 0;
430
+ border-inline-end: var(--ui-border-width) solid var(--ui-border-divider);
431
+ }
573
432
 
574
- @media (prefers-reduced-motion: reduce) {
575
- .list button,
576
- .list > :slotted(button[slot="tab"]) {
577
- transition: none;
433
+ :scope[data-ui-tabs-state~="orientation=vertical"] .list button,
434
+ :scope[data-ui-tabs-state~="orientation=vertical"] .list > :slotted(button[slot="tab"]) {
435
+ margin: 0 calc(-1 * var(--ui-border-width)) 0 0;
436
+ border-block-end: 0;
437
+ border-inline-end: var(--ui-accent-line-width) solid transparent;
438
+ text-align: start;
578
439
  }
579
- }
580
440
 
581
- /* A component that sets its display still honours the hidden attribute on its root. */
582
- [data-component~="ui-tabs"][hidden] {
583
- display: none;
441
+ :scope[data-ui-tabs-state~="orientation=vertical"] .list button[aria-selected="true"],
442
+ :scope[data-ui-tabs-state~="orientation=vertical"]
443
+ .list
444
+ > :slotted(button[slot="tab"][aria-selected="true"]) {
445
+ border-inline-end-color: var(--ui-accent-solid);
446
+ }
447
+
448
+ @media (prefers-reduced-motion: reduce) {
449
+ .list button, .list > :slotted(button[slot="tab"]) {
450
+ transition: none;
451
+ }
452
+ }
453
+ :scope:where(:scope):is([hidden]) {
454
+ display: none;
455
+ }
584
456
  }
585
457
  </style>
package/vue/UiText.d.ts CHANGED
@@ -114,17 +114,17 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
114
114
  default: string;
115
115
  };
116
116
  }>> & Readonly<{}>, {
117
- font: "inherit" | "sans" | null;
118
117
  size: "inherit" | "xs" | "sm" | "md" | "lg" | null;
119
- tone: "secondary" | "default" | "info" | "accent" | "success" | "warning" | "danger" | "muted" | null;
118
+ trim: boolean | null;
119
+ font: "inherit" | "sans" | null;
120
+ tone: "default" | "secondary" | "info" | "accent" | "success" | "warning" | "danger" | "muted" | null;
120
121
  variant: "code" | "body" | "eyebrow" | null;
121
122
  align: "center" | "start" | null;
122
123
  as: "div" | "h2" | "h3" | "h4" | "h5" | "h6" | "label" | "p" | "small" | "span" | "strong" | null;
123
124
  wrap: "normal" | "anywhere" | null;
124
- trim: boolean | null;
125
125
  grow: boolean | null;
126
126
  truncate: boolean | null;
127
- weight: "inherit" | "normal" | "medium" | "semibold" | null;
127
+ weight: "medium" | "inherit" | "normal" | "semibold" | null;
128
128
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
129
129
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
130
130
  declare const _default: typeof __VLS_export;