@threadlabs/looma 0.19.1 → 0.21.0

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 (517) hide show
  1. package/components/shared/trigger.js +9 -4
  2. package/components/ui-affordance-scope/ui-affordance-scope.html +1 -1
  3. package/components/ui-avatar/ui-avatar.html +6 -6
  4. package/components/ui-avatar-group/ui-avatar-group.html +3 -3
  5. package/components/ui-avatar-group/ui-avatar-group.js +1 -1
  6. package/components/ui-badge/ui-badge.html +3 -3
  7. package/components/ui-breadcrumb-item/ui-breadcrumb-item.html +1 -1
  8. package/components/ui-breadcrumbs/ui-breadcrumbs.html +1 -1
  9. package/components/ui-button/ui-button.html +17 -16
  10. package/components/ui-callout/ui-callout.html +1 -1
  11. package/components/ui-card/ui-card.html +5 -4
  12. package/components/ui-checkbox/ui-checkbox.html +11 -7
  13. package/components/ui-cluster/ui-cluster.html +4 -4
  14. package/components/ui-combobox/ui-combobox.html +299 -74
  15. package/components/ui-combobox/ui-combobox.js +21 -20
  16. package/components/ui-container/ui-container.html +2 -2
  17. package/components/ui-context-menu/ui-context-menu.html +17 -5
  18. package/components/ui-cover/ui-cover.html +1 -1
  19. package/components/ui-description-list/ui-description-list.html +3 -3
  20. package/components/ui-dialog/ui-dialog.html +15 -7
  21. package/components/ui-disclosure/ui-disclosure.html +17 -8
  22. package/components/ui-editable/ui-editable.html +20 -9
  23. package/components/ui-editor-insert-table-grid/ui-editor-insert-table-grid.html +6 -6
  24. package/components/ui-editor-mention-menu/ui-editor-mention-menu.html +6 -6
  25. package/components/ui-editor-mention-menu-item/ui-editor-mention-menu-item.html +1 -1
  26. package/components/ui-editor-slash-menu/ui-editor-slash-menu.html +6 -6
  27. package/components/ui-editor-slash-menu-group/ui-editor-slash-menu-group.html +1 -1
  28. package/components/ui-editor-slash-menu-item/ui-editor-slash-menu-item.html +2 -2
  29. package/components/ui-editor-table-context-menu/ui-editor-table-context-menu.html +33 -13
  30. package/components/ui-editor-table-overlay/ui-editor-table-overlay.html +107 -29
  31. package/components/ui-editor-table-overlay/ui-editor-table-overlay.js +5 -5
  32. package/components/ui-editor-table-toolbar/ui-editor-table-toolbar.html +48 -22
  33. package/components/ui-floating-action-button/ui-floating-action-button.html +1 -1
  34. package/components/ui-grid/ui-grid.html +2 -2
  35. package/components/ui-icon/ui-icon.html +13 -4
  36. package/components/ui-icon-button/ui-icon-button.html +6 -6
  37. package/components/ui-input/ui-input.html +28 -6
  38. package/components/ui-list/ui-list.html +5 -4
  39. package/components/ui-list-item/ui-list-item.html +2 -2
  40. package/components/ui-listbox/ui-listbox.html +31 -16
  41. package/components/ui-menu/ui-menu.html +18 -5
  42. package/components/ui-menu-group/ui-menu-group.html +1 -1
  43. package/components/ui-menu-item/ui-menu-item.html +14 -9
  44. package/components/ui-meter/ui-meter.html +7 -7
  45. package/components/ui-nav-item/ui-nav-item.html +10 -9
  46. package/components/ui-page-header/ui-page-header.html +1 -1
  47. package/components/ui-popover/ui-popover.html +14 -5
  48. package/components/ui-radio/ui-radio.html +7 -3
  49. package/components/ui-radio-group/ui-radio-group.html +12 -4
  50. package/components/ui-reel/ui-reel.html +3 -3
  51. package/components/ui-scroll-area/ui-scroll-area.html +1 -1
  52. package/components/ui-search-result-row/ui-search-result-row.html +1 -1
  53. package/components/ui-search-shell/ui-search-shell.html +7 -3
  54. package/components/ui-section/ui-section.html +3 -3
  55. package/components/ui-select/ui-select.html +2 -2
  56. package/components/ui-separator/ui-separator.html +2 -2
  57. package/components/ui-sidebar/ui-sidebar.html +13 -6
  58. package/components/ui-spinner/ui-spinner.html +5 -5
  59. package/components/ui-stack/ui-stack.html +3 -3
  60. package/components/ui-status-message/ui-status-message.html +5 -5
  61. package/components/ui-switch/ui-switch.html +16 -3
  62. package/components/ui-switcher/ui-switcher.html +3 -3
  63. package/components/ui-table/ui-table.html +1 -1
  64. package/components/ui-tabs/ui-tabs.html +14 -9
  65. package/components/ui-text/ui-text.html +6 -6
  66. package/components/ui-textarea/ui-textarea.html +10 -2
  67. package/components/ui-toast/ui-toast.html +8 -4
  68. package/components/ui-toast-region/ui-toast-region.html +27 -7
  69. package/components/ui-tooltip/ui-tooltip.html +16 -7
  70. package/components/ui-tree/ui-tree.html +30 -7
  71. package/components/ui-tree-item/ui-tree-item.html +21 -17
  72. package/dist/index.js +1 -1
  73. package/editor/table-overlay.d.ts +1 -1
  74. package/package.json +3 -3
  75. package/styles/ui-action-bar.css +1 -1
  76. package/styles/ui-affordance-scope.css +1 -1
  77. package/styles/ui-avatar-group.css +1 -1
  78. package/styles/ui-avatar.css +1 -1
  79. package/styles/ui-badge.css +1 -1
  80. package/styles/ui-breadcrumb-item.css +1 -1
  81. package/styles/ui-breadcrumbs.css +1 -1
  82. package/styles/ui-button.css +1 -1
  83. package/styles/ui-callout.css +1 -1
  84. package/styles/ui-card.css +1 -1
  85. package/styles/ui-checkbox.css +1 -1
  86. package/styles/ui-cluster.css +1 -1
  87. package/styles/ui-combobox.css +1 -1
  88. package/styles/ui-container.css +1 -1
  89. package/styles/ui-context-menu.css +1 -1
  90. package/styles/ui-cover.css +1 -1
  91. package/styles/ui-description-item.css +1 -1
  92. package/styles/ui-description-list.css +1 -1
  93. package/styles/ui-dialog.css +1 -1
  94. package/styles/ui-disclosure.css +1 -1
  95. package/styles/ui-editable.css +1 -1
  96. package/styles/ui-editor-insert-table-grid.css +1 -1
  97. package/styles/ui-editor-mention-menu-item.css +1 -1
  98. package/styles/ui-editor-mention-menu.css +1 -1
  99. package/styles/ui-editor-slash-menu-group.css +1 -1
  100. package/styles/ui-editor-slash-menu-item.css +1 -1
  101. package/styles/ui-editor-slash-menu.css +1 -1
  102. package/styles/ui-editor-table-context-menu.css +1 -1
  103. package/styles/ui-editor-table-overlay.css +1 -1
  104. package/styles/ui-editor-table-toolbar.css +1 -1
  105. package/styles/ui-editor-toolbar.css +1 -1
  106. package/styles/ui-floating-action-button.css +1 -1
  107. package/styles/ui-form-field.css +1 -1
  108. package/styles/ui-grid.css +1 -1
  109. package/styles/ui-icon-button.css +1 -1
  110. package/styles/ui-icon.css +1 -1
  111. package/styles/ui-input-group.css +1 -1
  112. package/styles/ui-input.css +1 -1
  113. package/styles/ui-list-item.css +1 -1
  114. package/styles/ui-list.css +1 -1
  115. package/styles/ui-listbox.css +1 -1
  116. package/styles/ui-menu-group.css +1 -1
  117. package/styles/ui-menu-item.css +1 -1
  118. package/styles/ui-menu.css +1 -1
  119. package/styles/ui-meter.css +1 -1
  120. package/styles/ui-nav-item.css +1 -1
  121. package/styles/ui-page-header.css +1 -1
  122. package/styles/ui-popover.css +1 -1
  123. package/styles/ui-radio-group.css +1 -1
  124. package/styles/ui-radio.css +1 -1
  125. package/styles/ui-reel.css +1 -1
  126. package/styles/ui-scroll-area.css +1 -1
  127. package/styles/ui-search-result-row.css +1 -1
  128. package/styles/ui-search-shell.css +1 -1
  129. package/styles/ui-section.css +1 -1
  130. package/styles/ui-select.css +1 -1
  131. package/styles/ui-separator.css +1 -1
  132. package/styles/ui-sidebar.css +1 -1
  133. package/styles/ui-spinner.css +1 -1
  134. package/styles/ui-stack.css +1 -1
  135. package/styles/ui-status-message.css +1 -1
  136. package/styles/ui-switch.css +1 -1
  137. package/styles/ui-switcher.css +1 -1
  138. package/styles/ui-table.css +1 -1
  139. package/styles/ui-tabs.css +1 -1
  140. package/styles/ui-text.css +1 -1
  141. package/styles/ui-textarea.css +1 -1
  142. package/styles/ui-toast-region.css +1 -1
  143. package/styles/ui-toast.css +1 -1
  144. package/styles/ui-tooltip.css +1 -1
  145. package/styles/ui-top-bar.css +1 -1
  146. package/styles/ui-tree-item.css +1 -1
  147. package/styles/ui-tree.css +1 -1
  148. package/vanilla/UiActionBar.d.ts +1 -1
  149. package/vanilla/UiActionBar.js +5 -1
  150. package/vanilla/UiAffordanceScope.d.ts +1 -1
  151. package/vanilla/UiAffordanceScope.js +3 -2
  152. package/vanilla/UiAvatar.d.ts +1 -1
  153. package/vanilla/UiAvatar.js +4 -3
  154. package/vanilla/UiAvatarGroup.d.ts +1 -1
  155. package/vanilla/UiAvatarGroup.js +3 -2
  156. package/vanilla/UiBadge.d.ts +1 -1
  157. package/vanilla/UiBadge.js +2 -1
  158. package/vanilla/UiBreadcrumbItem.d.ts +1 -1
  159. package/vanilla/UiBreadcrumbItem.js +2 -1
  160. package/vanilla/UiBreadcrumbs.d.ts +1 -1
  161. package/vanilla/UiBreadcrumbs.js +4 -7
  162. package/vanilla/UiButton.d.ts +1 -1
  163. package/vanilla/UiButton.js +6 -4
  164. package/vanilla/UiCallout.d.ts +1 -1
  165. package/vanilla/UiCallout.js +3 -2
  166. package/vanilla/UiCard.d.ts +1 -1
  167. package/vanilla/UiCard.js +6 -2
  168. package/vanilla/UiCheckbox.d.ts +1 -1
  169. package/vanilla/UiCheckbox.js +4 -2
  170. package/vanilla/UiCluster.d.ts +1 -1
  171. package/vanilla/UiCluster.js +2 -1
  172. package/vanilla/UiCombobox.d.ts +3 -2
  173. package/vanilla/UiCombobox.js +8 -2
  174. package/vanilla/UiContainer.d.ts +1 -1
  175. package/vanilla/UiContainer.js +2 -1
  176. package/vanilla/UiContextMenu.d.ts +1 -1
  177. package/vanilla/UiContextMenu.js +3 -2
  178. package/vanilla/UiCover.d.ts +1 -1
  179. package/vanilla/UiCover.js +4 -5
  180. package/vanilla/UiDescriptionItem.d.ts +1 -1
  181. package/vanilla/UiDescriptionItem.js +4 -7
  182. package/vanilla/UiDescriptionList.d.ts +1 -1
  183. package/vanilla/UiDescriptionList.js +2 -1
  184. package/vanilla/UiDialog.d.ts +1 -1
  185. package/vanilla/UiDialog.js +4 -2
  186. package/vanilla/UiDisclosure.d.ts +1 -1
  187. package/vanilla/UiDisclosure.js +4 -2
  188. package/vanilla/UiEditable.d.ts +1 -1
  189. package/vanilla/UiEditable.js +2 -2
  190. package/vanilla/UiEditorInsertTableGrid.d.ts +1 -1
  191. package/vanilla/UiEditorInsertTableGrid.js +1 -1
  192. package/vanilla/UiEditorMentionMenu.d.ts +1 -1
  193. package/vanilla/UiEditorMentionMenu.js +5 -2
  194. package/vanilla/UiEditorMentionMenuItem.d.ts +1 -1
  195. package/vanilla/UiEditorMentionMenuItem.js +3 -1
  196. package/vanilla/UiEditorSlashMenu.d.ts +1 -1
  197. package/vanilla/UiEditorSlashMenu.js +6 -2
  198. package/vanilla/UiEditorSlashMenuGroup.d.ts +1 -1
  199. package/vanilla/UiEditorSlashMenuGroup.js +4 -7
  200. package/vanilla/UiEditorSlashMenuItem.d.ts +1 -1
  201. package/vanilla/UiEditorSlashMenuItem.js +2 -1
  202. package/vanilla/UiEditorTableContextMenu.d.ts +1 -1
  203. package/vanilla/UiEditorTableContextMenu.js +2 -2
  204. package/vanilla/UiEditorTableOverlay.d.ts +12 -2
  205. package/vanilla/UiEditorTableOverlay.js +2 -2
  206. package/vanilla/UiEditorTableToolbar.d.ts +1 -1
  207. package/vanilla/UiEditorTableToolbar.js +2 -2
  208. package/vanilla/UiEditorToolbar.d.ts +1 -1
  209. package/vanilla/UiEditorToolbar.js +2 -1
  210. package/vanilla/UiFloatingActionButton.d.ts +1 -1
  211. package/vanilla/UiFloatingActionButton.js +2 -1
  212. package/vanilla/UiFormField.d.ts +1 -1
  213. package/vanilla/UiFormField.js +6 -1
  214. package/vanilla/UiGrid.d.ts +1 -1
  215. package/vanilla/UiGrid.js +4 -3
  216. package/vanilla/UiIcon.d.ts +1 -1
  217. package/vanilla/UiIcon.js +1 -1
  218. package/vanilla/UiIconButton.d.ts +1 -1
  219. package/vanilla/UiIconButton.js +4 -3
  220. package/vanilla/UiInput.d.ts +5 -4
  221. package/vanilla/UiInput.js +16 -13
  222. package/vanilla/UiInputGroup.d.ts +1 -1
  223. package/vanilla/UiInputGroup.js +5 -1
  224. package/vanilla/UiList.d.ts +1 -1
  225. package/vanilla/UiList.js +4 -2
  226. package/vanilla/UiListItem.d.ts +1 -1
  227. package/vanilla/UiListItem.js +5 -1
  228. package/vanilla/UiListbox.d.ts +1 -1
  229. package/vanilla/UiListbox.js +3 -2
  230. package/vanilla/UiMenu.d.ts +1 -1
  231. package/vanilla/UiMenu.js +3 -2
  232. package/vanilla/UiMenuGroup.d.ts +1 -1
  233. package/vanilla/UiMenuGroup.js +2 -1
  234. package/vanilla/UiMenuItem.d.ts +1 -1
  235. package/vanilla/UiMenuItem.js +6 -2
  236. package/vanilla/UiMeter.d.ts +1 -1
  237. package/vanilla/UiMeter.js +2 -2
  238. package/vanilla/UiNavItem.d.ts +2 -2
  239. package/vanilla/UiNavItem.js +11 -5
  240. package/vanilla/UiPageHeader.d.ts +1 -1
  241. package/vanilla/UiPageHeader.js +8 -5
  242. package/vanilla/UiPopover.d.ts +1 -1
  243. package/vanilla/UiPopover.js +3 -2
  244. package/vanilla/UiRadio.d.ts +1 -1
  245. package/vanilla/UiRadio.js +4 -2
  246. package/vanilla/UiRadioGroup.d.ts +1 -1
  247. package/vanilla/UiRadioGroup.js +3 -2
  248. package/vanilla/UiReel.d.ts +1 -1
  249. package/vanilla/UiReel.js +2 -1
  250. package/vanilla/UiScrollArea.d.ts +1 -1
  251. package/vanilla/UiScrollArea.js +3 -2
  252. package/vanilla/UiSearchResultRow.d.ts +1 -1
  253. package/vanilla/UiSearchResultRow.js +6 -1
  254. package/vanilla/UiSearchShell.d.ts +1 -1
  255. package/vanilla/UiSearchShell.js +6 -2
  256. package/vanilla/UiSection.d.ts +1 -1
  257. package/vanilla/UiSection.js +5 -2
  258. package/vanilla/UiSelect.d.ts +1 -1
  259. package/vanilla/UiSelect.js +3 -2
  260. package/vanilla/UiSeparator.d.ts +1 -1
  261. package/vanilla/UiSeparator.js +3 -7
  262. package/vanilla/UiSidebar.d.ts +1 -1
  263. package/vanilla/UiSidebar.js +3 -2
  264. package/vanilla/UiSpinner.d.ts +1 -1
  265. package/vanilla/UiSpinner.js +2 -2
  266. package/vanilla/UiStack.d.ts +1 -1
  267. package/vanilla/UiStack.js +2 -1
  268. package/vanilla/UiStatusMessage.d.ts +1 -1
  269. package/vanilla/UiStatusMessage.js +4 -2
  270. package/vanilla/UiSwitch.d.ts +1 -1
  271. package/vanilla/UiSwitch.js +4 -2
  272. package/vanilla/UiSwitcher.d.ts +1 -1
  273. package/vanilla/UiSwitcher.js +3 -2
  274. package/vanilla/UiTable.d.ts +1 -1
  275. package/vanilla/UiTable.js +3 -2
  276. package/vanilla/UiTabs.d.ts +1 -1
  277. package/vanilla/UiTabs.js +4 -2
  278. package/vanilla/UiText.d.ts +1 -1
  279. package/vanilla/UiText.js +13 -2
  280. package/vanilla/UiTextarea.d.ts +1 -1
  281. package/vanilla/UiTextarea.js +3 -3
  282. package/vanilla/UiToast.d.ts +1 -1
  283. package/vanilla/UiToast.js +4 -2
  284. package/vanilla/UiToastRegion.d.ts +1 -1
  285. package/vanilla/UiToastRegion.js +3 -2
  286. package/vanilla/UiTooltip.d.ts +1 -1
  287. package/vanilla/UiTooltip.js +3 -2
  288. package/vanilla/UiTopBar.d.ts +1 -1
  289. package/vanilla/UiTopBar.js +5 -1
  290. package/vanilla/UiTree.d.ts +1 -1
  291. package/vanilla/UiTree.js +3 -2
  292. package/vanilla/UiTreeItem.d.ts +1 -1
  293. package/vanilla/UiTreeItem.js +8 -4
  294. package/vue/UiActionBar.vue +33 -2
  295. package/vue/UiAffordanceScope.d.ts +23 -8
  296. package/vue/UiAffordanceScope.vue +90 -17
  297. package/vue/UiAvatar.d.ts +77 -19
  298. package/vue/UiAvatar.vue +151 -31
  299. package/vue/UiAvatarGroup.d.ts +50 -13
  300. package/vue/UiAvatarGroup.vue +121 -23
  301. package/vue/UiBadge.d.ts +32 -10
  302. package/vue/UiBadge.vue +104 -17
  303. package/vue/UiBreadcrumbItem.d.ts +14 -6
  304. package/vue/UiBreadcrumbItem.vue +82 -15
  305. package/vue/UiBreadcrumbs.d.ts +14 -6
  306. package/vue/UiBreadcrumbs.vue +78 -10
  307. package/vue/UiButton.d.ts +122 -27
  308. package/vue/UiButton.vue +288 -64
  309. package/vue/UiCallout.d.ts +14 -6
  310. package/vue/UiCallout.vue +84 -16
  311. package/vue/UiCard.d.ts +41 -12
  312. package/vue/UiCard.vue +149 -25
  313. package/vue/UiCheckbox.d.ts +85 -28
  314. package/vue/UiCheckbox.vue +173 -43
  315. package/vue/UiCluster.d.ts +41 -7
  316. package/vue/UiCluster.vue +122 -13
  317. package/vue/UiCombobox.d.ts +303 -110
  318. package/vue/UiCombobox.vue +723 -412
  319. package/vue/UiContainer.d.ts +23 -5
  320. package/vue/UiContainer.vue +89 -9
  321. package/vue/UiContextMenu.d.ts +38 -23
  322. package/vue/UiContextMenu.vue +113 -38
  323. package/vue/UiCover.d.ts +14 -6
  324. package/vue/UiCover.vue +76 -12
  325. package/vue/UiDescriptionItem.d.ts +14 -6
  326. package/vue/UiDescriptionItem.vue +78 -11
  327. package/vue/UiDescriptionList.d.ts +32 -9
  328. package/vue/UiDescriptionList.vue +106 -16
  329. package/vue/UiDialog.d.ts +89 -30
  330. package/vue/UiDialog.vue +168 -38
  331. package/vue/UiDisclosure.d.ts +70 -27
  332. package/vue/UiDisclosure.vue +149 -36
  333. package/vue/UiEditable.d.ts +119 -41
  334. package/vue/UiEditable.vue +220 -62
  335. package/vue/UiEditorInsertTableGrid.d.ts +46 -17
  336. package/vue/UiEditorInsertTableGrid.vue +215 -40
  337. package/vue/UiEditorMentionMenu.d.ts +128 -41
  338. package/vue/UiEditorMentionMenu.vue +211 -37
  339. package/vue/UiEditorMentionMenuItem.d.ts +32 -10
  340. package/vue/UiEditorMentionMenuItem.vue +98 -17
  341. package/vue/UiEditorSlashMenu.d.ts +110 -37
  342. package/vue/UiEditorSlashMenu.vue +189 -31
  343. package/vue/UiEditorSlashMenuGroup.d.ts +14 -6
  344. package/vue/UiEditorSlashMenuGroup.vue +80 -12
  345. package/vue/UiEditorSlashMenuItem.d.ts +50 -14
  346. package/vue/UiEditorSlashMenuItem.vue +120 -23
  347. package/vue/UiEditorTableContextMenu.d.ts +64 -20
  348. package/vue/UiEditorTableContextMenu.vue +326 -91
  349. package/vue/UiEditorTableOverlay.d.ts +170 -44
  350. package/vue/UiEditorTableOverlay.vue +420 -149
  351. package/vue/UiEditorTableToolbar.d.ts +64 -20
  352. package/vue/UiEditorTableToolbar.vue +344 -107
  353. package/vue/UiEditorToolbar.d.ts +14 -6
  354. package/vue/UiEditorToolbar.vue +79 -15
  355. package/vue/UiFloatingActionButton.d.ts +32 -10
  356. package/vue/UiFloatingActionButton.vue +96 -18
  357. package/vue/UiFormField.d.ts +32 -10
  358. package/vue/UiFormField.vue +99 -19
  359. package/vue/UiGrid.d.ts +32 -6
  360. package/vue/UiGrid.vue +95 -11
  361. package/vue/UiIcon.d.ts +14 -6
  362. package/vue/UiIcon.vue +99 -14
  363. package/vue/UiIconButton.d.ts +77 -19
  364. package/vue/UiIconButton.vue +176 -39
  365. package/vue/UiInput.d.ts +50 -19
  366. package/vue/UiInput.vue +326 -33
  367. package/vue/UiInputGroup.d.ts +14 -6
  368. package/vue/UiInputGroup.vue +79 -15
  369. package/vue/UiList.d.ts +41 -12
  370. package/vue/UiList.vue +125 -22
  371. package/vue/UiListItem.d.ts +23 -8
  372. package/vue/UiListItem.vue +88 -16
  373. package/vue/UiListbox.d.ts +86 -27
  374. package/vue/UiListbox.vue +272 -64
  375. package/vue/UiMenu.d.ts +69 -33
  376. package/vue/UiMenu.vue +142 -38
  377. package/vue/UiMenuGroup.d.ts +14 -6
  378. package/vue/UiMenuGroup.vue +80 -11
  379. package/vue/UiMenuItem.d.ts +61 -25
  380. package/vue/UiMenuItem.vue +174 -45
  381. package/vue/UiMeter.d.ts +68 -18
  382. package/vue/UiMeter.vue +215 -41
  383. package/vue/UiNavItem.d.ts +50 -11
  384. package/vue/UiNavItem.vue +163 -29
  385. package/vue/UiPageHeader.d.ts +14 -6
  386. package/vue/UiPageHeader.vue +75 -12
  387. package/vue/UiPopover.d.ts +43 -21
  388. package/vue/UiPopover.vue +147 -27
  389. package/vue/UiRadio.d.ts +67 -24
  390. package/vue/UiRadio.vue +147 -36
  391. package/vue/UiRadioGroup.d.ts +79 -29
  392. package/vue/UiRadioGroup.vue +162 -41
  393. package/vue/UiReel.d.ts +32 -6
  394. package/vue/UiReel.vue +97 -11
  395. package/vue/UiScrollArea.d.ts +14 -6
  396. package/vue/UiScrollArea.vue +83 -14
  397. package/vue/UiSearchResultRow.d.ts +23 -8
  398. package/vue/UiSearchResultRow.vue +86 -16
  399. package/vue/UiSearchShell.d.ts +48 -19
  400. package/vue/UiSearchShell.vue +120 -26
  401. package/vue/UiSection.d.ts +32 -10
  402. package/vue/UiSection.vue +103 -17
  403. package/vue/UiSelect.d.ts +59 -17
  404. package/vue/UiSelect.vue +140 -29
  405. package/vue/UiSeparator.d.ts +14 -6
  406. package/vue/UiSeparator.vue +80 -9
  407. package/vue/UiSidebar.d.ts +95 -31
  408. package/vue/UiSidebar.vue +172 -39
  409. package/vue/UiSpinner.d.ts +23 -8
  410. package/vue/UiSpinner.vue +115 -24
  411. package/vue/UiStack.d.ts +32 -6
  412. package/vue/UiStack.vue +107 -11
  413. package/vue/UiStatusMessage.d.ts +32 -10
  414. package/vue/UiStatusMessage.vue +109 -19
  415. package/vue/UiSwitch.d.ts +67 -24
  416. package/vue/UiSwitch.vue +147 -36
  417. package/vue/UiSwitcher.d.ts +41 -7
  418. package/vue/UiSwitcher.vue +118 -15
  419. package/vue/UiTable.d.ts +23 -8
  420. package/vue/UiTable.vue +91 -17
  421. package/vue/UiTabs.d.ts +66 -23
  422. package/vue/UiTabs.vue +230 -44
  423. package/vue/UiText.d.ts +68 -18
  424. package/vue/UiText.vue +308 -48
  425. package/vue/UiTextarea.d.ts +84 -21
  426. package/vue/UiTextarea.vue +172 -38
  427. package/vue/UiToast.d.ts +28 -13
  428. package/vue/UiToast.vue +103 -24
  429. package/vue/UiToastRegion.d.ts +29 -14
  430. package/vue/UiToastRegion.vue +202 -47
  431. package/vue/UiTooltip.d.ts +81 -31
  432. package/vue/UiTooltip.vue +192 -37
  433. package/vue/UiTopBar.vue +33 -2
  434. package/vue/UiTree.d.ts +72 -29
  435. package/vue/UiTree.vue +170 -49
  436. package/vue/UiTreeItem.d.ts +136 -35
  437. package/vue/UiTreeItem.vue +227 -61
  438. package/vue/chunks/UiActionBar.js +16 -3
  439. package/vue/chunks/UiAffordanceScope.js +66 -11
  440. package/vue/chunks/UiAvatar.js +121 -20
  441. package/vue/chunks/UiAvatarGroup.js +94 -15
  442. package/vue/chunks/UiBadge.js +82 -10
  443. package/vue/chunks/UiBreadcrumbItem.js +43 -9
  444. package/vue/chunks/UiBreadcrumbs.js +41 -5
  445. package/vue/chunks/UiButton.js +237 -51
  446. package/vue/chunks/UiCallout.js +53 -11
  447. package/vue/chunks/UiCard.js +145 -18
  448. package/vue/chunks/UiCheckbox.js +130 -30
  449. package/vue/chunks/UiCluster.js +99 -12
  450. package/vue/chunks/UiCombobox.js +545 -162
  451. package/vue/chunks/UiContainer.js +65 -7
  452. package/vue/chunks/UiContextMenu.js +56 -11
  453. package/vue/chunks/UiCover.js +41 -6
  454. package/vue/chunks/UiDescriptionItem.js +39 -4
  455. package/vue/chunks/UiDescriptionList.js +80 -10
  456. package/vue/chunks/UiDialog.js +125 -18
  457. package/vue/chunks/UiDisclosure.js +102 -17
  458. package/vue/chunks/UiEditable.js +154 -29
  459. package/vue/chunks/UiEditorInsertTableGrid.js +154 -31
  460. package/vue/chunks/UiEditorMentionMenu.js +221 -18
  461. package/vue/chunks/UiEditorMentionMenuItem.js +64 -7
  462. package/vue/chunks/UiEditorSlashMenu.js +201 -14
  463. package/vue/chunks/UiEditorSlashMenuGroup.js +43 -9
  464. package/vue/chunks/UiEditorSlashMenuItem.js +80 -14
  465. package/vue/chunks/UiEditorTableContextMenu.js +220 -49
  466. package/vue/chunks/UiEditorTableOverlay.js +390 -85
  467. package/vue/chunks/UiEditorTableToolbar.js +248 -71
  468. package/vue/chunks/UiEditorToolbar.js +44 -10
  469. package/vue/chunks/UiFloatingActionButton.js +57 -9
  470. package/vue/chunks/UiFormField.js +63 -12
  471. package/vue/chunks/UiGrid.js +80 -9
  472. package/vue/chunks/UiIcon.js +73 -16
  473. package/vue/chunks/UiIconButton.js +126 -28
  474. package/vue/chunks/UiInput.js +328 -22
  475. package/vue/chunks/UiInputGroup.js +44 -10
  476. package/vue/chunks/UiList.js +104 -15
  477. package/vue/chunks/UiListItem.js +57 -8
  478. package/vue/chunks/UiListbox.js +208 -49
  479. package/vue/chunks/UiMenu.js +88 -15
  480. package/vue/chunks/UiMenuGroup.js +41 -5
  481. package/vue/chunks/UiMenuItem.js +111 -32
  482. package/vue/chunks/UiMeter.js +166 -36
  483. package/vue/chunks/UiNavItem.js +133 -37
  484. package/vue/chunks/UiPageHeader.js +41 -6
  485. package/vue/chunks/UiPopover.js +81 -11
  486. package/vue/chunks/UiRadio.js +115 -24
  487. package/vue/chunks/UiRadioGroup.js +108 -19
  488. package/vue/chunks/UiReel.js +81 -10
  489. package/vue/chunks/UiScrollArea.js +47 -10
  490. package/vue/chunks/UiSearchResultRow.js +47 -8
  491. package/vue/chunks/UiSearchShell.js +84 -24
  492. package/vue/chunks/UiSection.js +77 -10
  493. package/vue/chunks/UiSelect.js +108 -20
  494. package/vue/chunks/UiSeparator.js +41 -5
  495. package/vue/chunks/UiSidebar.js +136 -20
  496. package/vue/chunks/UiSpinner.js +64 -19
  497. package/vue/chunks/UiStack.js +87 -10
  498. package/vue/chunks/UiStatusMessage.js +82 -12
  499. package/vue/chunks/UiSwitch.js +115 -24
  500. package/vue/chunks/UiSwitcher.js +103 -15
  501. package/vue/chunks/UiTable.js +63 -11
  502. package/vue/chunks/UiTabs.js +170 -30
  503. package/vue/chunks/UiText.js +365 -38
  504. package/vue/chunks/UiTextarea.js +132 -26
  505. package/vue/chunks/UiToast.js +70 -12
  506. package/vue/chunks/UiToastRegion.js +154 -33
  507. package/vue/chunks/UiTooltip.js +124 -16
  508. package/vue/chunks/UiTopBar.js +16 -3
  509. package/vue/chunks/UiTree.js +107 -15
  510. package/vue/chunks/UiTreeItem.js +167 -43
  511. package/vue/chunks/control.js +171 -0
  512. package/vue/chunks/host.js +170 -27
  513. package/vue/chunks/props.js +477 -0
  514. package/vue/components.css +1192 -1192
  515. package/vue/editor/index.js +58 -15
  516. package/vue/editor/primitives.d.ts +52 -2
  517. package/vue/host.ts +370 -39
@@ -4,14 +4,19 @@
4
4
  */
5
5
  export function trackTrigger(host) {
6
6
  let trigger = "programmatic";
7
- const offKey = host.on("keydown", (event) => {
7
+ const onKey = (event) => {
8
8
  if (event.key === " " || event.key === "Enter" || event.key.startsWith("Arrow")) trigger = "keyboard";
9
- });
10
- const offPointer = host.on("pointerdown", () => { trigger = "pointer"; });
9
+ };
10
+ const onPointer = () => { trigger = "pointer"; };
11
+ host.element.addEventListener("keydown", onKey);
12
+ host.element.addEventListener("pointerdown", onPointer);
11
13
  const take = () => {
12
14
  const current = trigger;
13
15
  trigger = "programmatic";
14
16
  return current;
15
17
  };
16
- return [take, () => { offKey(); offPointer(); }];
18
+ return [take, () => {
19
+ host.element.removeEventListener("keydown", onKey);
20
+ host.element.removeEventListener("pointerdown", onPointer);
21
+ }];
17
22
  }
@@ -1,7 +1,7 @@
1
1
  <template component="ui-affordance-scope" controller="./ui-affordance-scope.js">
2
2
  <defs>
3
3
  <prop name="nearRadius" type="number" default="16">How close, in pixels, the pointer must come to reveal an affordance.</prop>
4
- <prop name="guide" type="dot | none" default="dot"
4
+ <prop name="guide" type="keyword" values="dot, none" default="dot"
5
5
  >What marks an anticipatory control at rest. dot shows a small guide dot where it will appear; none shows nothing until the pointer nears it, it is hovered,
6
6
  or it takes focus. Every guide inside the scope follows it, including a sidebar's resize line and the editor table's handles.</prop>
7
7
  <state name="engaged" :value="false"></state>
@@ -13,9 +13,9 @@
13
13
  <prop name="fallback" type="string" default=""
14
14
  >Text shown instead of the initials derived from name or alt, whenever there is no image. It is uppercased; keep it to a couple of characters, because the
15
15
  circle clips anything wider.</prop>
16
- <prop name="size" type="sm | md" default="md"
16
+ <prop name="size" type="keyword" values="sm, md" default="md"
17
17
  >md is 2.5rem, for a person on their own (a profile, a comment); sm is 1.75rem with smaller initials, for a row of people in a toolbar or header.</prop>
18
- <prop name="shape" type="circle | square" default="circle">Circle by default; square uses the theme's medium radius.</prop>
18
+ <prop name="shape" type="keyword" values="circle, square" default="circle">Circle by default; square uses the theme's medium radius.</prop>
19
19
  <prop name="decorative" type="boolean" default="false">Hides the avatar from assistive technology when adjacent text already identifies the person.</prop>
20
20
  <prop name="active" type="boolean" default="false"
21
21
  >Marks the person as active now, such as editing the same page: a fine accent ring around the avatar. The ring is not announced, so say what it means in alt
@@ -27,10 +27,10 @@
27
27
  </defs>
28
28
  <span>
29
29
  <slot></slot>
30
- <img class="image" $ref="image" :src="src" alt="" aria-hidden="true" :hidden="hasAuthoredImage or not hasImage">
31
- <span class="fallback" :aria-hidden="hasImage" :hidden="hasImage">
32
- <span :hidden="showGlyph" $value="initials"></span>
33
- <span :hidden="not showGlyph"><ui-icon name="user-round"></ui-icon></span>
30
+ <img class="image" $ref="image" from:src="src" alt="" aria-hidden="true" from:hidden="hasAuthoredImage or not hasImage">
31
+ <span class="fallback" from:aria-hidden="hasImage" from:hidden="hasImage">
32
+ <span from:hidden="showGlyph" $value="initials"></span>
33
+ <span from:hidden="not showGlyph"><ui-icon name="user-round"></ui-icon></span>
34
34
  </span>
35
35
  </span>
36
36
  <style>
@@ -10,14 +10,14 @@
10
10
  >Accessible label for the overflow badge. Replace {count} with the number of people beyond the visible avatars.</prop>
11
11
  <prop name="label" type="string" default="People"
12
12
  >The group's accessible name, announced for the set of avatars as a whole. Name who they are rather than repeating the default.</prop>
13
- <prop name="size" type="sm | md" default="md"
13
+ <prop name="size" type="keyword" values="sm, md" default="md"
14
14
  >The size of the avatars inside, matched by the +N badge and the overlap. Give each Avatar the same size.</prop>
15
15
  <state name="overflowCount" :value="0"></state>
16
16
  <state name="overflowAnnouncement" :value="''"></state>
17
17
  </defs>
18
- <div role="group" :aria-label="label">
18
+ <div role="group" from:aria-label="label">
19
19
  <slot></slot>
20
- <span class="overflow" $ref="overflow" role="img" :hidden="not overflowCount" :aria-label="overflowAnnouncement"><template
20
+ <span class="overflow" $ref="overflow" role="img" from:hidden="not overflowCount" from:aria-label="overflowAnnouncement"><template
21
21
  $value="format('+%s', overflowCount)"
22
22
  ></template></span>
23
23
  </div>
@@ -18,7 +18,7 @@ export default function controller(host) {
18
18
  });
19
19
  const authoredVisible = Math.min(avatars.length, visible);
20
20
  const suppliedTotal = Number(host.state.total);
21
- const total = host.state.total === undefined || !Number.isFinite(suppliedTotal) ? avatars.length : Math.max(avatars.length, suppliedTotal);
21
+ const total = host.state.total == null || !Number.isFinite(suppliedTotal) ? avatars.length : Math.max(avatars.length, suppliedTotal);
22
22
  const count = Math.max(0, total - authoredVisible);
23
23
  host.state.overflowCount = count;
24
24
  host.state.overflowAnnouncement = String(host.state.overflowLabel || "{count} more").replaceAll("{count}", String(count));
@@ -1,13 +1,13 @@
1
1
  <template component="ui-badge">
2
2
  <defs>
3
- <prop name="variant" type="solid | subtle | outline" default="subtle"
3
+ <prop name="variant" type="keyword" values="solid, subtle, outline" default="subtle"
4
4
  >Emphasis. subtle sets toned text over a soft wash; solid fills with the tone and uses contrasting text; outline keeps the surface with a toned edge.
5
5
  Neutral looks the same in solid and subtle.</prop>
6
- <prop name="tone" type="neutral | accent | info | success | warning | danger" default="neutral"
6
+ <prop name="tone" type="keyword" values="neutral, accent, info, success, warning, danger" default="neutral"
7
7
  >Which colour the badge speaks in. neutral is a quiet grey for plain labels; accent draws the eye in the accent colour; info, success, warning, and danger
8
8
  mark a status, so match the tone to what the badge says. For a category rather than a status, set the --ui-badge-color hook on the badge instead: any CSS
9
9
  colour, which overrides the tone.</prop>
10
- <prop name="shape" type="pill | tag" default="pill"
10
+ <prop name="shape" type="keyword" values="pill, tag" default="pill"
11
11
  >Silhouette. pill is rounded at both ends; tag is a label: flat at the start and coming to a point at the end, for a tag or a chosen chip.</prop>
12
12
  </defs>
13
13
  <span><slot></slot></span>
@@ -3,7 +3,7 @@
3
3
  <prop name="current" type="boolean" default="false"
4
4
  >Marks the step as the view you are on: it is plain text with aria-current="page". Every other step holds a link.</prop>
5
5
  </defs>
6
- <li :aria-current="{ true: 'page', false: null }[format('%s', current)]">
6
+ <li from:aria-current="{ true: 'page', false: null }[format('%s', current)]">
7
7
  <span class="separator" aria-hidden="true"><ui-icon name="chevron-right"></ui-icon></span>
8
8
  <span class="content"><slot></slot></span>
9
9
  </li>
@@ -2,7 +2,7 @@
2
2
  <defs>
3
3
  <prop name="label" type="string" default="Breadcrumb">The navigation landmark's accessible name.</prop>
4
4
  </defs>
5
- <nav :aria-label="label"><ol role="list"><slot></slot></ol></nav>
5
+ <nav from:aria-label="label"><ol role="list"><slot></slot></ol></nav>
6
6
  <style>
7
7
  /* Where a view sits: a trail of ui-breadcrumb-item, from the top down to the current view. It wraps
8
8
  rather than scrolls, so every step stays reachable. */
@@ -1,13 +1,13 @@
1
1
  <link rel="component" href="../ui-spinner/ui-spinner.html">
2
2
  <template component="ui-button" controller="./ui-button.js">
3
3
  <defs>
4
- <prop name="variant" type="outline | solid | danger | ghost | link" default="outline"
4
+ <prop name="variant" type="keyword" values="outline, solid, danger, ghost, link" default="outline"
5
5
  >Emphasis: how loudly the button asks. solid fills with its tone, outline draws its tone at the edge over a wash of it, ghost carries only text until it is
6
6
  hovered, and link is an inline text action that reads as a link. danger is solid in the danger tone, kept for the call sites that name it.</prop>
7
- <prop name="size" type="sm | md | lg" default="md"
7
+ <prop name="size" type="keyword" values="sm, md, lg" default="md"
8
8
  >Height, padding, and type size. sm is the small control height (2rem by default) with tighter padding and smaller text, md is the standard control height
9
9
  (2.5rem), and lg is taller (3rem) with roomier padding.</prop>
10
- <prop name="tone" type="accent | neutral | danger | success | warning | info" default="accent"
10
+ <prop name="tone" type="keyword" values="accent, neutral, danger, success, warning, info" default="accent"
11
11
  >Which colour the button speaks in. It applies to every variant, so an outline, a ghost, and a solid in the same tone are the same action at three volumes:
12
12
  tone="danger" variant="outline" is a destructive secondary action. neutral is the quiet one, for a button that should not claim a colour.</prop>
13
13
  <prop name="disabled" type="boolean" default="false"
@@ -17,17 +17,18 @@
17
17
  >Keeps the action focusable and its label visible while work is in progress. It shows a decorative spinner, states aria-disabled and aria-busy, and prevents
18
18
  activation or form submission until cleared.</prop>
19
19
  <prop name="pending" type="boolean" default="false">Deprecated alias for loading.</prop>
20
- <prop name="align" type="center | start" default="center"
20
+ <prop name="align" type="keyword" values="center, start" default="center"
21
21
  >Content alignment. start lays the content out like a list option: from the start edge, with start-aligned text.</prop>
22
22
  <prop name="stretch" type="boolean" default="false">Fills the inline size of its container.</prop>
23
- <prop name="type" type="button | submit | reset" default="button"
23
+ <prop name="type" type="keyword" values="button, submit, reset" default="button"
24
24
  >The button's type, as on a native button. button by default, so it never submits a form by accident. A link has no type.</prop>
25
25
  <prop name="href" type="string"
26
26
  >The link's destination. Pair it with as="a" so the button renders as a real link that navigates. A disabled link drops its href and states
27
27
  aria-disabled="true", so it cannot be followed.</prop>
28
28
  <prop name="target" type="string">Where a link opens, as on a native link. Only meaningful with as="a".</prop>
29
29
  <prop name="rel" type="string">The link's relationship to its destination, as on a native link. Only meaningful with as="a".</prop>
30
- <prop name="as" type="button | a" default="button">The native element the button renders: a button, or a link (a) that navigates to href.</prop>
30
+ <prop name="as" type="keyword" values="button, a" default="button"
31
+ >The native element the button renders: a button, or a link (a) that navigates to href.</prop>
31
32
  <!-- Each root carries only its own attributes: a link has no type or disabled, and a disabled link
32
33
  loses its href and states aria-disabled instead. The language has no conditional expression, so a
33
34
  table keyed by a boolean's text picks each value, and null leaves the attribute off. -->
@@ -35,22 +36,22 @@
35
36
  <template $match>
36
37
  <a
37
38
  $when="as = 'a'"
38
- :href="{ true: null, false: href }[format('%s', disabled or loading or pending)]"
39
- :target="target"
40
- :rel="rel"
41
- :aria-disabled="{ true: 'true', false: null }[format('%s', disabled or loading or pending)]"
42
- :aria-busy="loading or pending"
43
- :tabindex="{ true: '0', false: null }[format('%s', (loading or pending) and not disabled)]"
39
+ from:href="{ true: null, false: href }[format('%s', disabled or loading or pending)]"
40
+ from:target="target"
41
+ from:rel="rel"
42
+ from:aria-disabled="{ true: 'true', false: null }[format('%s', disabled or loading or pending)]"
43
+ from:aria-busy="loading or pending"
44
+ from:tabindex="{ true: '0', false: null }[format('%s', (loading or pending) and not disabled)]"
44
45
  >
45
46
  <span $if="loading or pending" class="spinner-wrap"><ui-spinner size="sm"></ui-spinner></span>
46
47
  <slot></slot>
47
48
  </a>
48
49
  <button
49
50
  $else
50
- :type="type"
51
- :disabled="disabled"
52
- :aria-disabled="{ true: 'true', false: null }[format('%s', loading or pending)]"
53
- :aria-busy="loading or pending"
51
+ from:type="type"
52
+ from:disabled="disabled"
53
+ from:aria-disabled="{ true: 'true', false: null }[format('%s', loading or pending)]"
54
+ from:aria-busy="loading or pending"
54
55
  >
55
56
  <span $if="loading or pending" class="spinner-wrap"><ui-spinner size="sm"></ui-spinner></span>
56
57
  <slot></slot>
@@ -1,6 +1,6 @@
1
1
  <template component="ui-callout">
2
2
  <defs>
3
- <prop name="tone" type="info | neutral | note | warning | success | danger" default="info"
3
+ <prop name="tone" type="keyword" values="info, neutral, note, warning, success, danger" default="info"
4
4
  >Which kind of message the callout carries, shown by its icon and colour: info (the default) for information, neutral for a muted aside, warning for a
5
5
  caution, success for a confirmation, and danger for a harmful consequence. note remains as an alias for neutral.</prop>
6
6
  </defs>
@@ -1,12 +1,13 @@
1
1
  <template component="ui-card">
2
2
  <defs>
3
- <prop name="variant" type="outlined | subtle | elevated" default="outlined"
3
+ <prop name="variant" type="keyword" values="outlined, subtle, elevated" default="outlined"
4
4
  >The surface. outlined is a bordered panel on the page; subtle is a quiet filled one with no border, for supporting details set apart from the flow;
5
5
  elevated floats above the page with a shadow, for a view's one card, such as sign-in.</prop>
6
- <prop name="padding" type="sm | md | lg" default="md"
6
+ <prop name="padding" type="keyword" values="sm, md, lg" default="md"
7
7
  >The space inside the card: sm is snug (0.75rem), md is the default (1.5rem), and lg is roomy (2rem).</prop>
8
- <prop name="tone" type="neutral | danger" default="neutral">danger adds a soft danger surface and a strong leading edge for consequential content.</prop>
9
- <prop name="as" type="div | section | article | aside" default="div"
8
+ <prop name="tone" type="keyword" values="neutral, danger" default="neutral"
9
+ >danger adds a soft danger surface and a strong leading edge for consequential content.</prop>
10
+ <prop name="as" type="keyword" values="div, section, article, aside" default="div"
10
11
  >The native element the card renders. Choose the one that names the content: a section of a page, a self-contained article, or an aside.</prop>
11
12
  </defs>
12
13
  <template $match>
@@ -15,12 +15,16 @@
15
15
  <prop name="value" type="string" default="on"
16
16
  >The value a form submits under name while the checkbox is checked, also reported in the change event's detail so one handler can tell checkboxes apart. on
17
17
  by default, as on a native checkbox.</prop>
18
- <prop name="size" type="sm | md | lg" default="md"
18
+ <prop name="size" type="keyword" values="sm, md, lg" default="md"
19
19
  >Aligns the checkbox with fields and buttons of the same size. It keeps its box size; the label takes that size's field type size and its first line centres
20
20
  in that control height (sm 2rem, lg 3rem by default), so in a row of inputs, selects, and buttons of one size it shares their height and their text
21
21
  baseline. Under a coarse pointer an sm row grows to the 44px touch minimum, as they do. md is the standard layout.</prop>
22
22
  <state name="internalChecked" :value="false"></state>
23
- <event name="change" type="object({ checked: boolean, value: string, trigger: keyboard | pointer | programmatic })"></event>
23
+ <event name="change" type="object">
24
+ <prop name="checked" required type="boolean"></prop>
25
+ <prop name="value" required type="string"></prop>
26
+ <prop name="trigger" required type="keyword" values="keyboard, pointer, programmatic"></prop>
27
+ </event>
24
28
  </defs>
25
29
  <label>
26
30
  <input
@@ -28,11 +32,11 @@
28
32
  $ref="input"
29
33
  .checked="internalChecked"
30
34
  .indeterminate="indeterminate"
31
- :disabled="disabled"
32
- :aria-invalid="invalid"
33
- :required="required"
34
- :name="name"
35
- :value="value"
35
+ from:disabled="disabled"
36
+ from:aria-invalid="invalid"
37
+ from:required="required"
38
+ from:name="name"
39
+ from:value="value"
36
40
  >
37
41
  <span class="text">
38
42
  <span class="label"><slot></slot></span>
@@ -1,15 +1,15 @@
1
1
  <template component="ui-cluster">
2
2
  <defs>
3
- <prop name="gap" type="xs | s | m | l | xl"
3
+ <prop name="gap" type="keyword" values="xs, s, m, l, xl"
4
4
  >Space between items, on the spacing scale: xs is 0.5rem, s 0.75rem (also the default), m 1rem, l 1.5rem, and xl 2rem. The --ui-cluster-gap custom property,
5
5
  set on the cluster itself, overrides it; set on an ancestor, it does nothing.</prop>
6
- <prop name="align" type="start | center | end | stretch"
6
+ <prop name="align" type="keyword" values="start, center, end, stretch"
7
7
  >How items line up within each row: center (the default) aligns their middles, start their tops, end their bottoms, and stretch makes every item as tall as
8
8
  its row.</prop>
9
- <prop name="justify" type="start | center | end | between"
9
+ <prop name="justify" type="keyword" values="start, center, end, between"
10
10
  >Where items sit along each row: start (the default), center, end, or between, which pushes the first and last items to the ends of the row and spreads the
11
11
  spare space between them, as for a title with its actions.</prop>
12
- <prop name="wrap" type="wrap | nowrap"
12
+ <prop name="wrap" type="keyword" values="wrap, nowrap"
13
13
  >Whether items move onto a new row when they run out of space: wrap (the default) or nowrap, which keeps them on one row at their own sizes. Use nowrap for
14
14
  a small group that must read as one unit, such as a meter and its value in a table cell, so the cell grows to fit it; a whole row of actions should keep
15
15
  wrapping so it fits narrow screens.</prop>