@threadlabs/looma 0.29.17 → 0.30.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 (428) hide show
  1. package/components/ui-combobox/ui-combobox.html +47 -2
  2. package/components/ui-combobox/ui-combobox.js +2 -1
  3. package/components/ui-cover/ui-cover.html +2 -5
  4. package/components/ui-editor-link-card/ui-editor-link-card.html +5 -5
  5. package/components/ui-form-field/ui-form-field.html +1 -1
  6. package/components/ui-icon/ui-icon.html +10 -0
  7. package/components/ui-reel/ui-reel.html +7 -10
  8. package/components/ui-switcher/ui-switcher.html +17 -22
  9. package/components/ui-tooltip/ui-tooltip.js +2 -0
  10. package/dist/index.js +1 -1
  11. package/package.json +3 -3
  12. package/styles/ui-action-bar.css +1 -1
  13. package/styles/ui-affordance-scope.css +1 -1
  14. package/styles/ui-avatar-group.css +1 -1
  15. package/styles/ui-avatar.css +1 -1
  16. package/styles/ui-badge.css +1 -1
  17. package/styles/ui-breadcrumb-item.css +1 -1
  18. package/styles/ui-breadcrumbs.css +1 -1
  19. package/styles/ui-button.css +1 -1
  20. package/styles/ui-callout.css +1 -1
  21. package/styles/ui-card.css +1 -1
  22. package/styles/ui-checkbox.css +1 -1
  23. package/styles/ui-cluster.css +1 -1
  24. package/styles/ui-combobox.css +1 -1
  25. package/styles/ui-container.css +1 -1
  26. package/styles/ui-context-menu.css +1 -1
  27. package/styles/ui-cover.css +3 -6
  28. package/styles/ui-description-item.css +1 -1
  29. package/styles/ui-description-list.css +1 -1
  30. package/styles/ui-dialog.css +1 -1
  31. package/styles/ui-disclosure.css +1 -1
  32. package/styles/ui-editable.css +1 -1
  33. package/styles/ui-editor-block-actions.css +1 -1
  34. package/styles/ui-editor-chip-editor.css +1 -1
  35. package/styles/ui-editor-code-language.css +1 -1
  36. package/styles/ui-editor-image-toolbar.css +1 -1
  37. package/styles/ui-editor-insert-table-grid.css +1 -1
  38. package/styles/ui-editor-link-card.css +1 -1
  39. package/styles/ui-editor-link-form.css +1 -1
  40. package/styles/ui-editor-mention-menu-item.css +1 -1
  41. package/styles/ui-editor-mention-menu.css +1 -1
  42. package/styles/ui-editor-slash-menu-group.css +1 -1
  43. package/styles/ui-editor-slash-menu-item.css +1 -1
  44. package/styles/ui-editor-slash-menu.css +1 -1
  45. package/styles/ui-editor-surface.css +1 -1
  46. package/styles/ui-editor-table-context-menu.css +1 -1
  47. package/styles/ui-editor-table-overlay.css +1 -1
  48. package/styles/ui-editor-table-toolbar.css +1 -1
  49. package/styles/ui-editor-toolbar.css +1 -1
  50. package/styles/ui-floating-action-button.css +1 -1
  51. package/styles/ui-form-field.css +1 -1
  52. package/styles/ui-grid.css +1 -1
  53. package/styles/ui-icon-button.css +1 -1
  54. package/styles/ui-icon.css +9 -1
  55. package/styles/ui-image.css +1 -1
  56. package/styles/ui-input-group.css +1 -1
  57. package/styles/ui-input.css +1 -1
  58. package/styles/ui-list-item.css +1 -1
  59. package/styles/ui-list.css +1 -1
  60. package/styles/ui-listbox.css +1 -1
  61. package/styles/ui-menu-group.css +1 -1
  62. package/styles/ui-menu-item.css +1 -1
  63. package/styles/ui-menu.css +1 -1
  64. package/styles/ui-meter.css +1 -1
  65. package/styles/ui-nav-item.css +1 -1
  66. package/styles/ui-page-header.css +1 -1
  67. package/styles/ui-popover.css +1 -1
  68. package/styles/ui-radio-group.css +1 -1
  69. package/styles/ui-radio.css +1 -1
  70. package/styles/ui-reel.css +8 -11
  71. package/styles/ui-scroll-area.css +1 -1
  72. package/styles/ui-search-result-row.css +1 -1
  73. package/styles/ui-search-shell.css +1 -1
  74. package/styles/ui-section.css +1 -1
  75. package/styles/ui-select.css +1 -1
  76. package/styles/ui-separator.css +1 -1
  77. package/styles/ui-sidebar.css +1 -1
  78. package/styles/ui-spinner.css +1 -1
  79. package/styles/ui-stack.css +1 -1
  80. package/styles/ui-status-message.css +1 -1
  81. package/styles/ui-swatch.css +1 -1
  82. package/styles/ui-switch.css +1 -1
  83. package/styles/ui-switcher.css +23 -28
  84. package/styles/ui-table.css +1 -1
  85. package/styles/ui-tabs.css +1 -1
  86. package/styles/ui-text.css +1 -1
  87. package/styles/ui-textarea.css +1 -1
  88. package/styles/ui-toast-region.css +1 -1
  89. package/styles/ui-toast.css +1 -1
  90. package/styles/ui-tooltip.css +1 -1
  91. package/styles/ui-top-bar.css +1 -1
  92. package/styles/ui-tree-item.css +1 -1
  93. package/styles/ui-tree.css +1 -1
  94. package/vanilla/UiActionBar.d.ts +10 -1
  95. package/vanilla/UiActionBar.js +3 -2
  96. package/vanilla/UiAffordanceScope.d.ts +10 -1
  97. package/vanilla/UiAffordanceScope.js +3 -2
  98. package/vanilla/UiAvatar.d.ts +10 -1
  99. package/vanilla/UiAvatar.js +3 -2
  100. package/vanilla/UiAvatarGroup.d.ts +10 -1
  101. package/vanilla/UiAvatarGroup.js +3 -2
  102. package/vanilla/UiBadge.d.ts +10 -1
  103. package/vanilla/UiBadge.js +3 -2
  104. package/vanilla/UiBreadcrumbItem.d.ts +10 -1
  105. package/vanilla/UiBreadcrumbItem.js +3 -2
  106. package/vanilla/UiBreadcrumbs.d.ts +10 -1
  107. package/vanilla/UiBreadcrumbs.js +3 -2
  108. package/vanilla/UiButton.d.ts +10 -1
  109. package/vanilla/UiButton.js +3 -2
  110. package/vanilla/UiCallout.d.ts +10 -1
  111. package/vanilla/UiCallout.js +3 -2
  112. package/vanilla/UiCard.d.ts +10 -1
  113. package/vanilla/UiCard.js +3 -2
  114. package/vanilla/UiCheckbox.d.ts +10 -1
  115. package/vanilla/UiCheckbox.js +3 -2
  116. package/vanilla/UiCluster.d.ts +10 -1
  117. package/vanilla/UiCluster.js +3 -2
  118. package/vanilla/UiCombobox.d.ts +14 -1
  119. package/vanilla/UiCombobox.js +34 -11
  120. package/vanilla/UiContainer.d.ts +10 -1
  121. package/vanilla/UiContainer.js +3 -2
  122. package/vanilla/UiContextMenu.d.ts +10 -1
  123. package/vanilla/UiContextMenu.js +3 -2
  124. package/vanilla/UiCover.d.ts +10 -1
  125. package/vanilla/UiCover.js +3 -2
  126. package/vanilla/UiDescriptionItem.d.ts +10 -1
  127. package/vanilla/UiDescriptionItem.js +3 -2
  128. package/vanilla/UiDescriptionList.d.ts +10 -1
  129. package/vanilla/UiDescriptionList.js +3 -2
  130. package/vanilla/UiDialog.d.ts +10 -1
  131. package/vanilla/UiDialog.js +3 -2
  132. package/vanilla/UiDisclosure.d.ts +10 -1
  133. package/vanilla/UiDisclosure.js +3 -2
  134. package/vanilla/UiEditable.d.ts +10 -1
  135. package/vanilla/UiEditable.js +3 -2
  136. package/vanilla/UiEditorBlockActions.d.ts +10 -1
  137. package/vanilla/UiEditorBlockActions.js +3 -2
  138. package/vanilla/UiEditorChipEditor.d.ts +10 -1
  139. package/vanilla/UiEditorChipEditor.js +3 -2
  140. package/vanilla/UiEditorCodeLanguage.d.ts +10 -1
  141. package/vanilla/UiEditorCodeLanguage.js +3 -2
  142. package/vanilla/UiEditorImageToolbar.d.ts +10 -1
  143. package/vanilla/UiEditorImageToolbar.js +3 -2
  144. package/vanilla/UiEditorInsertTableGrid.d.ts +10 -1
  145. package/vanilla/UiEditorInsertTableGrid.js +3 -2
  146. package/vanilla/UiEditorLinkCard.d.ts +10 -1
  147. package/vanilla/UiEditorLinkCard.js +6 -5
  148. package/vanilla/UiEditorLinkForm.d.ts +10 -1
  149. package/vanilla/UiEditorLinkForm.js +3 -2
  150. package/vanilla/UiEditorMentionMenu.d.ts +10 -1
  151. package/vanilla/UiEditorMentionMenu.js +3 -2
  152. package/vanilla/UiEditorMentionMenuItem.d.ts +10 -1
  153. package/vanilla/UiEditorMentionMenuItem.js +3 -2
  154. package/vanilla/UiEditorSlashMenu.d.ts +10 -1
  155. package/vanilla/UiEditorSlashMenu.js +3 -2
  156. package/vanilla/UiEditorSlashMenuGroup.d.ts +10 -1
  157. package/vanilla/UiEditorSlashMenuGroup.js +3 -2
  158. package/vanilla/UiEditorSlashMenuItem.d.ts +10 -1
  159. package/vanilla/UiEditorSlashMenuItem.js +3 -2
  160. package/vanilla/UiEditorSurface.d.ts +10 -1
  161. package/vanilla/UiEditorSurface.js +3 -2
  162. package/vanilla/UiEditorTableContextMenu.d.ts +10 -1
  163. package/vanilla/UiEditorTableContextMenu.js +3 -2
  164. package/vanilla/UiEditorTableOverlay.d.ts +10 -1
  165. package/vanilla/UiEditorTableOverlay.js +3 -2
  166. package/vanilla/UiEditorTableToolbar.d.ts +10 -1
  167. package/vanilla/UiEditorTableToolbar.js +3 -2
  168. package/vanilla/UiEditorToolbar.d.ts +10 -1
  169. package/vanilla/UiEditorToolbar.js +3 -2
  170. package/vanilla/UiFloatingActionButton.d.ts +10 -1
  171. package/vanilla/UiFloatingActionButton.js +3 -2
  172. package/vanilla/UiFormField.d.ts +10 -1
  173. package/vanilla/UiFormField.js +4 -3
  174. package/vanilla/UiGrid.d.ts +10 -1
  175. package/vanilla/UiGrid.js +3 -2
  176. package/vanilla/UiIcon.d.ts +11 -1
  177. package/vanilla/UiIcon.js +11 -5
  178. package/vanilla/UiIconButton.d.ts +10 -1
  179. package/vanilla/UiIconButton.js +3 -2
  180. package/vanilla/UiImage.d.ts +10 -1
  181. package/vanilla/UiImage.js +3 -2
  182. package/vanilla/UiInput.d.ts +10 -1
  183. package/vanilla/UiInput.js +3 -2
  184. package/vanilla/UiInputGroup.d.ts +10 -1
  185. package/vanilla/UiInputGroup.js +3 -2
  186. package/vanilla/UiList.d.ts +10 -1
  187. package/vanilla/UiList.js +3 -2
  188. package/vanilla/UiListItem.d.ts +10 -1
  189. package/vanilla/UiListItem.js +3 -2
  190. package/vanilla/UiListbox.d.ts +10 -1
  191. package/vanilla/UiListbox.js +3 -2
  192. package/vanilla/UiMenu.d.ts +10 -1
  193. package/vanilla/UiMenu.js +3 -2
  194. package/vanilla/UiMenuGroup.d.ts +10 -1
  195. package/vanilla/UiMenuGroup.js +3 -2
  196. package/vanilla/UiMenuItem.d.ts +10 -1
  197. package/vanilla/UiMenuItem.js +3 -2
  198. package/vanilla/UiMeter.d.ts +10 -1
  199. package/vanilla/UiMeter.js +3 -2
  200. package/vanilla/UiNavItem.d.ts +10 -1
  201. package/vanilla/UiNavItem.js +3 -2
  202. package/vanilla/UiPageHeader.d.ts +10 -1
  203. package/vanilla/UiPageHeader.js +3 -2
  204. package/vanilla/UiPopover.d.ts +10 -1
  205. package/vanilla/UiPopover.js +3 -2
  206. package/vanilla/UiRadio.d.ts +10 -1
  207. package/vanilla/UiRadio.js +3 -2
  208. package/vanilla/UiRadioGroup.d.ts +10 -1
  209. package/vanilla/UiRadioGroup.js +3 -2
  210. package/vanilla/UiReel.d.ts +10 -1
  211. package/vanilla/UiReel.js +3 -2
  212. package/vanilla/UiScrollArea.d.ts +10 -1
  213. package/vanilla/UiScrollArea.js +3 -2
  214. package/vanilla/UiSearchResultRow.d.ts +10 -1
  215. package/vanilla/UiSearchResultRow.js +3 -2
  216. package/vanilla/UiSearchShell.d.ts +10 -1
  217. package/vanilla/UiSearchShell.js +3 -2
  218. package/vanilla/UiSection.d.ts +10 -1
  219. package/vanilla/UiSection.js +3 -2
  220. package/vanilla/UiSelect.d.ts +10 -1
  221. package/vanilla/UiSelect.js +3 -2
  222. package/vanilla/UiSeparator.d.ts +10 -1
  223. package/vanilla/UiSeparator.js +3 -2
  224. package/vanilla/UiSidebar.d.ts +10 -1
  225. package/vanilla/UiSidebar.js +3 -2
  226. package/vanilla/UiSpinner.d.ts +10 -1
  227. package/vanilla/UiSpinner.js +3 -2
  228. package/vanilla/UiStack.d.ts +10 -1
  229. package/vanilla/UiStack.js +3 -2
  230. package/vanilla/UiStatusMessage.d.ts +10 -1
  231. package/vanilla/UiStatusMessage.js +3 -2
  232. package/vanilla/UiSwatch.d.ts +10 -1
  233. package/vanilla/UiSwatch.js +3 -2
  234. package/vanilla/UiSwitch.d.ts +10 -1
  235. package/vanilla/UiSwitch.js +3 -2
  236. package/vanilla/UiSwitcher.d.ts +10 -1
  237. package/vanilla/UiSwitcher.js +4 -3
  238. package/vanilla/UiTable.d.ts +10 -1
  239. package/vanilla/UiTable.js +3 -2
  240. package/vanilla/UiTabs.d.ts +10 -1
  241. package/vanilla/UiTabs.js +3 -2
  242. package/vanilla/UiText.d.ts +10 -1
  243. package/vanilla/UiText.js +3 -2
  244. package/vanilla/UiTextarea.d.ts +10 -1
  245. package/vanilla/UiTextarea.js +3 -2
  246. package/vanilla/UiToast.d.ts +10 -1
  247. package/vanilla/UiToast.js +3 -2
  248. package/vanilla/UiToastRegion.d.ts +10 -1
  249. package/vanilla/UiToastRegion.js +3 -2
  250. package/vanilla/UiTooltip.d.ts +10 -1
  251. package/vanilla/UiTooltip.js +3 -2
  252. package/vanilla/UiTopBar.d.ts +10 -1
  253. package/vanilla/UiTopBar.js +3 -2
  254. package/vanilla/UiTree.d.ts +10 -1
  255. package/vanilla/UiTree.js +3 -2
  256. package/vanilla/UiTreeItem.d.ts +10 -1
  257. package/vanilla/UiTreeItem.js +3 -2
  258. package/vue/UiActionBar.vue +1 -1
  259. package/vue/UiAffordanceScope.vue +2 -2
  260. package/vue/UiAvatar.vue +2 -2
  261. package/vue/UiAvatarGroup.vue +2 -2
  262. package/vue/UiBadge.d.ts +1 -1
  263. package/vue/UiBadge.vue +2 -2
  264. package/vue/UiBreadcrumbItem.vue +2 -2
  265. package/vue/UiBreadcrumbs.vue +1 -1
  266. package/vue/UiButton.d.ts +1 -1
  267. package/vue/UiButton.vue +2 -2
  268. package/vue/UiCallout.vue +2 -2
  269. package/vue/UiCard.vue +2 -2
  270. package/vue/UiCheckbox.vue +2 -2
  271. package/vue/UiCluster.vue +2 -2
  272. package/vue/UiCombobox.d.ts +36 -13
  273. package/vue/UiCombobox.vue +130 -4
  274. package/vue/UiContainer.vue +2 -2
  275. package/vue/UiContextMenu.vue +1 -1
  276. package/vue/UiCover.vue +4 -7
  277. package/vue/UiDescriptionItem.vue +1 -1
  278. package/vue/UiDescriptionList.vue +2 -2
  279. package/vue/UiDialog.vue +2 -2
  280. package/vue/UiDisclosure.vue +2 -2
  281. package/vue/UiEditable.vue +2 -2
  282. package/vue/UiEditorBlockActions.vue +1 -1
  283. package/vue/UiEditorChipEditor.vue +1 -1
  284. package/vue/UiEditorCodeLanguage.vue +1 -1
  285. package/vue/UiEditorImageToolbar.vue +7 -4
  286. package/vue/UiEditorInsertTableGrid.vue +1 -1
  287. package/vue/UiEditorLinkCard.vue +6 -5
  288. package/vue/UiEditorLinkForm.vue +45 -45
  289. package/vue/UiEditorMentionMenu.vue +1 -1
  290. package/vue/UiEditorMentionMenuItem.vue +1 -1
  291. package/vue/UiEditorSlashMenu.vue +1 -1
  292. package/vue/UiEditorSlashMenuGroup.vue +1 -1
  293. package/vue/UiEditorSlashMenuItem.vue +1 -1
  294. package/vue/UiEditorSurface.vue +2 -2
  295. package/vue/UiEditorTableContextMenu.vue +1 -1
  296. package/vue/UiEditorTableOverlay.vue +1 -1
  297. package/vue/UiEditorTableToolbar.vue +1 -1
  298. package/vue/UiEditorToolbar.vue +2 -2
  299. package/vue/UiFloatingActionButton.vue +2 -2
  300. package/vue/UiFormField.d.ts +1 -1
  301. package/vue/UiFormField.vue +3 -3
  302. package/vue/UiGrid.vue +2 -2
  303. package/vue/UiIcon.d.ts +9 -0
  304. package/vue/UiIcon.vue +40 -2
  305. package/vue/UiIconButton.vue +2 -2
  306. package/vue/UiImage.vue +2 -2
  307. package/vue/UiInput.vue +2 -2
  308. package/vue/UiInputGroup.vue +2 -2
  309. package/vue/UiList.vue +2 -2
  310. package/vue/UiListItem.vue +2 -2
  311. package/vue/UiListbox.vue +1 -1
  312. package/vue/UiMenu.vue +2 -2
  313. package/vue/UiMenuGroup.vue +1 -1
  314. package/vue/UiMenuItem.vue +2 -2
  315. package/vue/UiMeter.vue +2 -2
  316. package/vue/UiNavItem.vue +2 -2
  317. package/vue/UiPageHeader.vue +2 -2
  318. package/vue/UiPopover.vue +2 -2
  319. package/vue/UiRadio.vue +2 -2
  320. package/vue/UiRadioGroup.vue +2 -2
  321. package/vue/UiReel.vue +9 -12
  322. package/vue/UiScrollArea.vue +3 -3
  323. package/vue/UiSearchResultRow.vue +2 -2
  324. package/vue/UiSearchShell.vue +1 -1
  325. package/vue/UiSection.vue +2 -2
  326. package/vue/UiSelect.vue +2 -2
  327. package/vue/UiSeparator.vue +2 -2
  328. package/vue/UiSidebar.vue +2 -2
  329. package/vue/UiSpinner.vue +2 -2
  330. package/vue/UiStack.vue +2 -2
  331. package/vue/UiStatusMessage.vue +2 -2
  332. package/vue/UiSwatch.vue +2 -2
  333. package/vue/UiSwitch.vue +2 -2
  334. package/vue/UiSwitcher.vue +23 -27
  335. package/vue/UiTable.vue +2 -2
  336. package/vue/UiTabs.vue +2 -2
  337. package/vue/UiText.d.ts +1 -1
  338. package/vue/UiText.vue +2 -2
  339. package/vue/UiTextarea.vue +2 -2
  340. package/vue/UiToast.vue +2 -2
  341. package/vue/UiToastRegion.vue +2 -2
  342. package/vue/UiTooltip.vue +2 -2
  343. package/vue/UiTopBar.vue +1 -1
  344. package/vue/UiTree.vue +2 -2
  345. package/vue/UiTreeItem.vue +2 -2
  346. package/vue/chunks/UiActionBar.js +1 -1
  347. package/vue/chunks/UiAffordanceScope.js +2 -2
  348. package/vue/chunks/UiAvatar.js +2 -2
  349. package/vue/chunks/UiAvatarGroup.js +2 -2
  350. package/vue/chunks/UiBadge.js +2 -2
  351. package/vue/chunks/UiBreadcrumbItem.js +2 -2
  352. package/vue/chunks/UiBreadcrumbs.js +1 -1
  353. package/vue/chunks/UiButton.js +2 -2
  354. package/vue/chunks/UiCallout.js +2 -2
  355. package/vue/chunks/UiCard.js +2 -2
  356. package/vue/chunks/UiCheckbox.js +2 -2
  357. package/vue/chunks/UiCluster.js +2 -2
  358. package/vue/chunks/UiCombobox.js +117 -5
  359. package/vue/chunks/UiContainer.js +2 -2
  360. package/vue/chunks/UiContextMenu.js +1 -1
  361. package/vue/chunks/UiCover.js +2 -2
  362. package/vue/chunks/UiDescriptionItem.js +1 -1
  363. package/vue/chunks/UiDescriptionList.js +2 -2
  364. package/vue/chunks/UiDialog.js +2 -2
  365. package/vue/chunks/UiDisclosure.js +3 -3
  366. package/vue/chunks/UiEditable.js +2 -2
  367. package/vue/chunks/UiEditorImageToolbar.js +3 -2
  368. package/vue/chunks/UiEditorInsertTableGrid.js +1 -1
  369. package/vue/chunks/UiEditorLinkCard.js +18 -22
  370. package/vue/chunks/UiEditorLinkForm.js +68 -71
  371. package/vue/chunks/UiEditorMentionMenu.js +1 -1
  372. package/vue/chunks/UiEditorMentionMenuItem.js +1 -1
  373. package/vue/chunks/UiEditorSlashMenu.js +1 -1
  374. package/vue/chunks/UiEditorSlashMenuGroup.js +1 -1
  375. package/vue/chunks/UiEditorSlashMenuItem.js +1 -1
  376. package/vue/chunks/UiEditorSurface.js +2 -2
  377. package/vue/chunks/UiEditorTableContextMenu.js +1 -1
  378. package/vue/chunks/UiEditorTableOverlay.js +2 -2
  379. package/vue/chunks/UiEditorTableToolbar.js +1 -1
  380. package/vue/chunks/UiEditorToolbar.js +2 -2
  381. package/vue/chunks/UiFloatingActionButton.js +2 -2
  382. package/vue/chunks/UiFormField.js +3 -3
  383. package/vue/chunks/UiGrid.js +2 -2
  384. package/vue/chunks/UiIcon.js +61 -21
  385. package/vue/chunks/UiIconButton.js +2 -2
  386. package/vue/chunks/UiImage.js +2 -2
  387. package/vue/chunks/UiInput.js +2 -2
  388. package/vue/chunks/UiInputGroup.js +2 -2
  389. package/vue/chunks/UiList.js +2 -2
  390. package/vue/chunks/UiListItem.js +2 -2
  391. package/vue/chunks/UiListbox.js +1 -1
  392. package/vue/chunks/UiMenu.js +2 -2
  393. package/vue/chunks/UiMenuGroup.js +1 -1
  394. package/vue/chunks/UiMenuItem.js +2 -2
  395. package/vue/chunks/UiMeter.js +2 -2
  396. package/vue/chunks/UiNavItem.js +2 -2
  397. package/vue/chunks/UiPageHeader.js +2 -2
  398. package/vue/chunks/UiPopover.js +2 -2
  399. package/vue/chunks/UiRadio.js +2 -2
  400. package/vue/chunks/UiRadioGroup.js +2 -2
  401. package/vue/chunks/UiReel.js +2 -2
  402. package/vue/chunks/UiScrollArea.js +4 -4
  403. package/vue/chunks/UiSearchResultRow.js +2 -2
  404. package/vue/chunks/UiSearchShell.js +1 -1
  405. package/vue/chunks/UiSection.js +2 -2
  406. package/vue/chunks/UiSelect.js +2 -2
  407. package/vue/chunks/UiSeparator.js +2 -2
  408. package/vue/chunks/UiSidebar.js +2 -2
  409. package/vue/chunks/UiSpinner.js +2 -2
  410. package/vue/chunks/UiStack.js +2 -2
  411. package/vue/chunks/UiStatusMessage.js +2 -2
  412. package/vue/chunks/UiSwatch.js +2 -2
  413. package/vue/chunks/UiSwitch.js +2 -2
  414. package/vue/chunks/UiSwitcher.js +2 -2
  415. package/vue/chunks/UiTable.js +2 -2
  416. package/vue/chunks/UiTabs.js +2 -2
  417. package/vue/chunks/UiText.js +2 -2
  418. package/vue/chunks/UiTextarea.js +2 -2
  419. package/vue/chunks/UiToast.js +2 -2
  420. package/vue/chunks/UiToastRegion.js +2 -2
  421. package/vue/chunks/UiTooltip.js +2 -2
  422. package/vue/chunks/UiTopBar.js +1 -1
  423. package/vue/chunks/UiTree.js +2 -2
  424. package/vue/chunks/UiTreeItem.js +2 -2
  425. package/vue/chunks/_plugin-vue_export-helper.js +13 -3
  426. package/vue/components.css +83 -76
  427. package/vue/editor/index.js +211 -30
  428. package/vue/host.ts +9 -5
@@ -187,6 +187,20 @@
187
187
  <prop name="index" required type="integer"></prop>
188
188
  <prop name="labelledBy" required nullable type="string"></prop>
189
189
  <prop name="detail" required nullable type="string"></prop>
190
+ <prop name="option" required type="object">
191
+ <prop name="id" required type="string"></prop>
192
+ <prop name="value" required type="string"></prop>
193
+ <prop name="label" required type="string"></prop>
194
+ <prop name="group" type="string"></prop>
195
+ <prop name="disabled" type="boolean"></prop>
196
+ <prop name="description" type="string"></prop>
197
+ <prop name="tag" type="object">
198
+ <prop name="label" required type="string"></prop>
199
+ <prop name="tone" type="keyword" values="neutral, accent, info, success, warning, danger"></prop>
200
+ <prop name="color" type="string"></prop>
201
+ </prop>
202
+ <prop name="selected" type="boolean"></prop>
203
+ </prop>
190
204
  </prop>
191
205
  </prop>
192
206
  </prop>
@@ -371,6 +385,37 @@
371
385
  </prop>
372
386
  <prop name="trigger" required type="keyword" values="keyboard, pointer, programmatic"></prop>
373
387
  </event>
388
+ <slot name="item">
389
+ <prop name="item" type="object" required>A chosen item in a multiple combobox: replaces its default badge.
390
+ <prop name="id" required type="string"></prop>
391
+ <prop name="value" required type="string"></prop>
392
+ <prop name="label" required type="string"></prop>
393
+ <prop name="group" type="string"></prop>
394
+ <prop name="disabled" type="boolean"></prop>
395
+ <prop name="description" type="string"></prop>
396
+ <prop name="tag" type="object">
397
+ <prop name="label" required type="string"></prop>
398
+ <prop name="tone" type="keyword" values="neutral, accent, info, success, warning, danger"></prop>
399
+ <prop name="color" type="string"></prop>
400
+ </prop>
401
+ </prop>
402
+ </slot>
403
+ <slot name="option">
404
+ <prop name="option" type="object" required>A suggestion in the list: replaces its default label, description and tag.
405
+ <prop name="id" required type="string"></prop>
406
+ <prop name="value" required type="string"></prop>
407
+ <prop name="label" required type="string"></prop>
408
+ <prop name="group" type="string"></prop>
409
+ <prop name="disabled" type="boolean"></prop>
410
+ <prop name="description" type="string"></prop>
411
+ <prop name="tag" type="object">
412
+ <prop name="label" required type="string"></prop>
413
+ <prop name="tone" type="keyword" values="neutral, accent, info, success, warning, danger"></prop>
414
+ <prop name="color" type="string"></prop>
415
+ </prop>
416
+ <prop name="selected" type="boolean"></prop>
417
+ </prop>
418
+ </slot>
374
419
  </defs>
375
420
  <div>
376
421
  <label from:for="concat($uid, '-input')" class:sr-only="$labelVisibility = 'sr-only'">{$label}<template $if="$required">
@@ -390,7 +435,7 @@
390
435
  from:disabled="$disabled or $readonly or $item.disabled"
391
436
  from:aria-label="concat($item.label, ', press Delete or Backspace to remove')"
392
437
  >
393
- <slot from:name="concat('item-', $item.id)"><ui-badge>{$item.label}</ui-badge></slot>
438
+ <slot name="item" from:item="$item"><ui-badge>{$item.label}</ui-badge></slot>
394
439
  </button>
395
440
  </template>
396
441
  <input
@@ -485,7 +530,7 @@
485
530
  from:aria-labelledby="$row.labelledBy"
486
531
  from:aria-describedby="$row.detail"
487
532
  >
488
- <slot from:name="concat('option-', $row.id)">
533
+ <slot name="option" from:option="$row.option">
489
534
  <span $if="$row.detail" class="detail">
490
535
  <span class="line">
491
536
  <span class="primary" from:id="concat($uid, '-option-', $row.index, '-label')">{$row.label}</span>
@@ -384,7 +384,8 @@ function connect(host) {
384
384
  // The label names the option and the tag and description describe it, as a listbox option's
385
385
  // label and description parts do; a row without either keeps its name from its content.
386
386
  const detail = [row.tag ? `${uid}-option-${index}-tag` : "", row.description ? `${uid}-option-${index}-description` : ""].filter(Boolean).join(" ");
387
- group.rows.push({ ...row, index, labelledBy: detail ? `${uid}-option-${index}-label` : null, detail: detail || null });
387
+ // The option slot receives the row as the consumer gave it, without the parts the listbox adds.
388
+ group.rows.push({ ...row, index, labelledBy: detail ? `${uid}-option-${index}-label` : null, detail: detail || null, option: row });
388
389
  });
389
390
  host.state.groups = groups;
390
391
  host.state.creatable = canCreate();
@@ -11,7 +11,8 @@
11
11
  :host {
12
12
  display: flex;
13
13
  flex-direction: column;
14
- align-items: center;
14
+ /* Safe: a child wider than the cover keeps its start edge in view instead of overflowing both ways. */
15
+ align-items: safe center;
15
16
  justify-content: center;
16
17
  gap: var(--ui-space-6);
17
18
  box-sizing: border-box;
@@ -24,10 +25,6 @@
24
25
  min-block-size: 100%;
25
26
  }
26
27
 
27
- :host > :slotted(*) {
28
- max-inline-size: 100%;
29
- }
30
-
31
28
  /* A component that sets its display still honours the hidden attribute on its root. */
32
29
  :host[hidden] {
33
30
  display: none;
@@ -22,12 +22,12 @@
22
22
  <event name="remove" type="object">Requests removing this link.</event>
23
23
  </defs>
24
24
  <div>
25
- <ui-card variant="elevated" padding="xs" size="content">
25
+ <ui-card variant="elevated" padding="xs" size="sm">
26
26
  <ui-cluster gap="xs" wrap="nowrap" role="group" aria-label="Link actions">
27
27
  <ui-icon from:name="{ true: 'file-text', false: 'link' }[concat($resolved)]"></ui-icon>
28
- <ui-stack gap="none" from:title="$href" from:aria-label="concat({ true: $targetLabel, false: 'URL' }[concat($resolved)], ': ', $shown)">
29
- <ui-text as="strong" size="sm" weight="medium" font="sans" wrap="anywhere">{$shown}</ui-text>
30
- <ui-text $if="$detail != ''" as="small" size="xs" tone="secondary" font="sans">{$detail}</ui-text>
28
+ <ui-stack gap="none" fill from:title="$href" from:aria-label="concat({ true: $targetLabel, false: 'URL' }[concat($resolved)], ': ', $shown)">
29
+ <ui-text as="strong" size="sm" weight="medium" font="sans" truncate>{$shown}</ui-text>
30
+ <ui-text $if="$detail != ''" as="small" size="xs" tone="secondary" font="sans" truncate>{$detail}</ui-text>
31
31
  </ui-stack>
32
32
  <template $if="$openHref != ''">
33
33
  <ui-button
@@ -40,7 +40,7 @@
40
40
  target="_blank"
41
41
  rel="noopener noreferrer"
42
42
  aria-label="Open link"
43
- ><ui-cluster gap="xs" wrap="nowrap"><ui-icon name="external-link"></ui-icon>Open link</ui-cluster></ui-button>
43
+ ><ui-icon name="external-link"></ui-icon></ui-button>
44
44
  <ui-tooltip from:for="concat($base, '-open')">Open link</ui-tooltip>
45
45
  </template>
46
46
  <ui-icon-button from:id="concat($base, '-edit')" label="Edit link" variant="ghost" size="sm" data-link-action="edit"><ui-icon
@@ -13,7 +13,7 @@
13
13
  <div>
14
14
  <div class="label">
15
15
  <slot name="label"></slot>
16
- <span class="label-action"><slot name="label-action"></slot></span>
16
+ <span class="label-action"><slot name="labelAction"></slot></span>
17
17
  </div>
18
18
  <slot></slot>
19
19
  <div class="help"><slot name="help"></slot></div>
@@ -1,5 +1,7 @@
1
1
  <template component="ui-icon">
2
2
  <defs>
3
+ <prop name="tone" type="keyword" values="inherit, secondary, muted" default="inherit"
4
+ >Icon colour. inherit follows its control; secondary and muted keep a supporting icon quiet without a text wrapper.</prop>
3
5
  <prop name="name" type="string" default=""
4
6
  >Which icon to draw, by its name in Looma's icon set (LOOMA_ICONS), such as "align-left". An unknown or empty name draws nothing. The icon is hidden from
5
7
  assistive technology, so name the control it sits in.</prop>
@@ -125,6 +127,14 @@
125
127
  block-size: var(--ui-icon-size, var(--_ui-default-icon-size, 1em));
126
128
  }
127
129
 
130
+ :host([tone="secondary"]) {
131
+ color: var(--ui-text-secondary);
132
+ }
133
+
134
+ :host([tone="muted"]) {
135
+ color: var(--ui-text-muted);
136
+ }
137
+
128
138
  svg {
129
139
  inline-size: 100%;
130
140
  block-size: 100%;
@@ -23,12 +23,14 @@
23
23
  }
24
24
 
25
25
  :host {
26
- /* Hooks do not inherit, so the parts below read them from the root. */
27
- --_ui-reel-item-width: var(--ui-reel-item-width);
28
-
29
26
  --_reel-gap: var(--ui-space-4);
30
- --_reel-item-width: auto;
31
- display: flex;
27
+ --_reel-item-width: max-content;
28
+ /* Sizes its children from its own box: one row of columns, each the item width, that never
29
+ shrinks to fit, so the reel scrolls once they overflow. */
30
+ display: grid;
31
+ grid-auto-flow: column;
32
+ grid-auto-columns: var(--ui-reel-item-width, var(--_reel-item-width));
33
+ justify-content: start;
32
34
  inline-size: 100%;
33
35
  gap: var(--ui-reel-gap, var(--_reel-gap));
34
36
  min-inline-size: 0;
@@ -63,11 +65,6 @@
63
65
  --_ui-scroll-fade-direction: to left;
64
66
  }
65
67
 
66
- :host > :slotted(*) {
67
- min-inline-size: 0;
68
- flex: 0 0 var(--_ui-reel-item-width, var(--_reel-item-width));
69
- }
70
-
71
68
  :host([gap="xs"]) {
72
69
  --_reel-gap: var(--ui-space-2);
73
70
  }
@@ -26,27 +26,22 @@
26
26
  }
27
27
 
28
28
  :host {
29
- /* Hooks do not inherit, so the parts below read them from the root. */
30
- --_ui-switcher-threshold: var(--ui-switcher-threshold);
31
-
32
29
  --_switcher-gap: var(--ui-space-4);
33
- display: flex;
34
- flex-wrap: wrap;
30
+ --_switcher-threshold: 30rem;
31
+ --_switcher-track: clamp(1px, (var(--ui-switcher-threshold, var(--_switcher-threshold)) - 100%) * 999, 100%);
32
+ /* Lays its children out from its own box: below the threshold each track takes the full width;
33
+ at or above it, tracks shrink to 1px so every child fits one row and empty tracks collapse.
34
+ The large multiplier makes the whole row flip at once. */
35
+ display: grid;
36
+ grid-template-columns: repeat(auto-fit, minmax(var(--_switcher-track), 1fr));
35
37
  gap: var(--ui-switcher-gap, var(--_switcher-gap));
36
38
  min-inline-size: 0;
37
39
  max-inline-size: 100%;
38
40
  margin: 0;
39
41
  }
40
42
 
41
- :host > :slotted(*) {
42
- min-inline-size: 0;
43
- flex-grow: 1;
44
- /* The large multiplier makes the basis flip as a group at the intrinsic threshold. */
45
- flex-basis: calc((var(--_ui-switcher-threshold, 30rem) - 100%) * 999);
46
- }
47
-
48
- :host(:state(overLimit)) > :slotted(*) {
49
- flex-basis: 100%;
43
+ :host(:state(overLimit)) {
44
+ grid-template-columns: minmax(0, 1fr);
50
45
  }
51
46
 
52
47
  :host([gap="xs"]) {
@@ -64,23 +59,23 @@
64
59
  :host([gap="xl"]) {
65
60
  --_switcher-gap: var(--ui-space-6);
66
61
  }
67
- :host([threshold="xs"]) > :slotted(*) {
68
- flex-basis: calc((var(--_ui-switcher-threshold, 20rem) - 100%) * 999);
62
+ :host([threshold="xs"]) {
63
+ --_switcher-threshold: 20rem;
69
64
  }
70
- :host([threshold="md"]) > :slotted(*) {
71
- flex-basis: calc((var(--_ui-switcher-threshold, 45rem) - 100%) * 999);
65
+ :host([threshold="md"]) {
66
+ --_switcher-threshold: 45rem;
72
67
  }
73
- :host([threshold="lg"]) > :slotted(*) {
74
- flex-basis: calc((var(--_ui-switcher-threshold, 60rem) - 100%) * 999);
68
+ :host([threshold="lg"]) {
69
+ --_switcher-threshold: 60rem;
75
70
  }
76
71
  :host([align="start"]) {
77
- align-items: flex-start;
72
+ align-items: start;
78
73
  }
79
74
  :host([align="center"]) {
80
75
  align-items: center;
81
76
  }
82
77
  :host([align="end"]) {
83
- align-items: flex-end;
78
+ align-items: end;
84
79
  }
85
80
 
86
81
  /* A component that sets its display still honours the hidden attribute on its root. */
@@ -137,6 +137,8 @@ function connect(host) {
137
137
  }
138
138
  trigger.addEventListener("focusin", onFocusin);
139
139
  trigger.addEventListener("focusout", onFocusout);
140
+ // A trigger that already had focus sent its focusin before this listener; treat it as arriving now.
141
+ onFocusin();
140
142
  };
141
143
  const ids = createIdResolver(document, () => {
142
144
  lastFor = undefined;