@threadlabs/looma 0.30.2 → 0.30.3

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 (504) hide show
  1. package/components/ui-combobox/ui-combobox.html +10 -10
  2. package/components/ui-editor-table-overlay/ui-editor-table-overlay.html +2 -4
  3. package/components/ui-image/ui-image.html +2 -2
  4. package/components/ui-listbox/ui-listbox.html +1 -1
  5. package/components/ui-tree-item/ui-tree-item.html +4 -2
  6. package/dist/index.js +5 -4
  7. package/package.json +3 -3
  8. package/styles/ui-action-bar.css +1 -1
  9. package/styles/ui-affordance-scope.css +1 -1
  10. package/styles/ui-avatar-group.css +1 -1
  11. package/styles/ui-avatar.css +1 -1
  12. package/styles/ui-badge.css +1 -1
  13. package/styles/ui-breadcrumb-item.css +1 -1
  14. package/styles/ui-breadcrumbs.css +1 -1
  15. package/styles/ui-button.css +1 -1
  16. package/styles/ui-callout.css +1 -1
  17. package/styles/ui-card.css +1 -1
  18. package/styles/ui-checkbox.css +1 -1
  19. package/styles/ui-cluster.css +1 -1
  20. package/styles/ui-combobox.css +1 -1
  21. package/styles/ui-container.css +1 -1
  22. package/styles/ui-context-menu.css +1 -1
  23. package/styles/ui-cover.css +1 -1
  24. package/styles/ui-description-item.css +1 -1
  25. package/styles/ui-description-list.css +1 -1
  26. package/styles/ui-dialog.css +1 -1
  27. package/styles/ui-disclosure.css +1 -1
  28. package/styles/ui-editable.css +1 -1
  29. package/styles/ui-editor-block-actions.css +1 -1
  30. package/styles/ui-editor-chip-editor.css +1 -1
  31. package/styles/ui-editor-code-language.css +1 -1
  32. package/styles/ui-editor-image-toolbar.css +1 -1
  33. package/styles/ui-editor-insert-table-grid.css +1 -1
  34. package/styles/ui-editor-link-card.css +1 -1
  35. package/styles/ui-editor-link-form.css +1 -1
  36. package/styles/ui-editor-mention-menu-item.css +1 -1
  37. package/styles/ui-editor-mention-menu.css +1 -1
  38. package/styles/ui-editor-slash-menu-group.css +1 -1
  39. package/styles/ui-editor-slash-menu-item.css +1 -1
  40. package/styles/ui-editor-slash-menu.css +1 -1
  41. package/styles/ui-editor-surface.css +1 -1
  42. package/styles/ui-editor-table-context-menu.css +1 -1
  43. package/styles/ui-editor-table-overlay.css +1 -1
  44. package/styles/ui-editor-table-toolbar.css +1 -1
  45. package/styles/ui-editor-toolbar.css +1 -1
  46. package/styles/ui-floating-action-button.css +1 -1
  47. package/styles/ui-form-field.css +1 -1
  48. package/styles/ui-grid.css +1 -1
  49. package/styles/ui-icon-button.css +1 -1
  50. package/styles/ui-icon.css +1 -1
  51. package/styles/ui-image.css +1 -1
  52. package/styles/ui-input-group.css +1 -1
  53. package/styles/ui-input.css +1 -1
  54. package/styles/ui-list-item.css +1 -1
  55. package/styles/ui-list.css +1 -1
  56. package/styles/ui-listbox.css +1 -1
  57. package/styles/ui-menu-group.css +1 -1
  58. package/styles/ui-menu-item.css +1 -1
  59. package/styles/ui-menu.css +1 -1
  60. package/styles/ui-meter.css +1 -1
  61. package/styles/ui-nav-item.css +1 -1
  62. package/styles/ui-page-header.css +1 -1
  63. package/styles/ui-popover.css +1 -1
  64. package/styles/ui-radio-group.css +1 -1
  65. package/styles/ui-radio.css +1 -1
  66. package/styles/ui-reel.css +1 -1
  67. package/styles/ui-scroll-area.css +1 -1
  68. package/styles/ui-search-result-row.css +1 -1
  69. package/styles/ui-search-shell.css +1 -1
  70. package/styles/ui-section.css +1 -1
  71. package/styles/ui-select.css +1 -1
  72. package/styles/ui-separator.css +1 -1
  73. package/styles/ui-sidebar.css +1 -1
  74. package/styles/ui-spinner.css +1 -1
  75. package/styles/ui-stack.css +1 -1
  76. package/styles/ui-status-message.css +1 -1
  77. package/styles/ui-swatch.css +1 -1
  78. package/styles/ui-switch.css +1 -1
  79. package/styles/ui-switcher.css +1 -1
  80. package/styles/ui-table.css +1 -1
  81. package/styles/ui-tabs.css +1 -1
  82. package/styles/ui-text.css +1 -1
  83. package/styles/ui-textarea.css +1 -1
  84. package/styles/ui-toast-region.css +1 -1
  85. package/styles/ui-toast.css +1 -1
  86. package/styles/ui-tooltip.css +1 -1
  87. package/styles/ui-top-bar.css +1 -1
  88. package/styles/ui-tree-item.css +1 -1
  89. package/styles/ui-tree.css +1 -1
  90. package/vanilla/UiActionBar.d.ts +1 -1
  91. package/vanilla/UiActionBar.js +1 -1
  92. package/vanilla/UiAffordanceScope.d.ts +1 -1
  93. package/vanilla/UiAffordanceScope.js +4 -4
  94. package/vanilla/UiAvatar.d.ts +1 -1
  95. package/vanilla/UiAvatar.js +4 -4
  96. package/vanilla/UiAvatarGroup.d.ts +1 -1
  97. package/vanilla/UiAvatarGroup.js +4 -4
  98. package/vanilla/UiBadge.d.ts +1 -1
  99. package/vanilla/UiBadge.js +4 -4
  100. package/vanilla/UiBreadcrumbItem.d.ts +1 -1
  101. package/vanilla/UiBreadcrumbItem.js +3 -3
  102. package/vanilla/UiBreadcrumbs.d.ts +1 -1
  103. package/vanilla/UiBreadcrumbs.js +3 -3
  104. package/vanilla/UiButton.d.ts +1 -1
  105. package/vanilla/UiButton.js +6 -6
  106. package/vanilla/UiCallout.d.ts +1 -1
  107. package/vanilla/UiCallout.js +4 -4
  108. package/vanilla/UiCard.d.ts +1 -1
  109. package/vanilla/UiCard.js +6 -6
  110. package/vanilla/UiCheckbox.d.ts +1 -1
  111. package/vanilla/UiCheckbox.js +4 -4
  112. package/vanilla/UiCluster.d.ts +1 -1
  113. package/vanilla/UiCluster.js +4 -4
  114. package/vanilla/UiCombobox.d.ts +12 -12
  115. package/vanilla/UiCombobox.js +12 -10
  116. package/vanilla/UiContainer.d.ts +1 -1
  117. package/vanilla/UiContainer.js +4 -4
  118. package/vanilla/UiContextMenu.d.ts +2 -2
  119. package/vanilla/UiContextMenu.js +3 -3
  120. package/vanilla/UiCover.d.ts +1 -1
  121. package/vanilla/UiCover.js +4 -4
  122. package/vanilla/UiDescriptionItem.d.ts +1 -1
  123. package/vanilla/UiDescriptionItem.js +3 -3
  124. package/vanilla/UiDescriptionList.d.ts +1 -1
  125. package/vanilla/UiDescriptionList.js +4 -4
  126. package/vanilla/UiDialog.d.ts +1 -1
  127. package/vanilla/UiDialog.js +4 -4
  128. package/vanilla/UiDisclosure.d.ts +1 -1
  129. package/vanilla/UiDisclosure.js +4 -4
  130. package/vanilla/UiEditable.d.ts +1 -1
  131. package/vanilla/UiEditable.js +3 -3
  132. package/vanilla/UiEditorBlockActions.d.ts +1 -1
  133. package/vanilla/UiEditorBlockActions.js +4 -4
  134. package/vanilla/UiEditorChipEditor.d.ts +1 -1
  135. package/vanilla/UiEditorChipEditor.js +4 -4
  136. package/vanilla/UiEditorCodeLanguage.d.ts +1 -1
  137. package/vanilla/UiEditorCodeLanguage.js +3 -3
  138. package/vanilla/UiEditorImageToolbar.d.ts +1 -1
  139. package/vanilla/UiEditorImageToolbar.js +4 -4
  140. package/vanilla/UiEditorInsertTableGrid.d.ts +1 -1
  141. package/vanilla/UiEditorInsertTableGrid.js +3 -3
  142. package/vanilla/UiEditorLinkCard.d.ts +1 -1
  143. package/vanilla/UiEditorLinkCard.js +8 -6
  144. package/vanilla/UiEditorLinkForm.d.ts +2 -2
  145. package/vanilla/UiEditorLinkForm.js +9 -7
  146. package/vanilla/UiEditorMentionMenu.d.ts +3 -3
  147. package/vanilla/UiEditorMentionMenu.js +3 -3
  148. package/vanilla/UiEditorMentionMenuItem.d.ts +1 -1
  149. package/vanilla/UiEditorMentionMenuItem.js +3 -3
  150. package/vanilla/UiEditorSlashMenu.d.ts +3 -3
  151. package/vanilla/UiEditorSlashMenu.js +3 -3
  152. package/vanilla/UiEditorSlashMenuGroup.d.ts +1 -1
  153. package/vanilla/UiEditorSlashMenuGroup.js +3 -3
  154. package/vanilla/UiEditorSlashMenuItem.d.ts +1 -1
  155. package/vanilla/UiEditorSlashMenuItem.js +3 -3
  156. package/vanilla/UiEditorSurface.d.ts +1 -1
  157. package/vanilla/UiEditorSurface.js +4 -4
  158. package/vanilla/UiEditorTableContextMenu.d.ts +1 -1
  159. package/vanilla/UiEditorTableContextMenu.js +4 -4
  160. package/vanilla/UiEditorTableOverlay.d.ts +2 -2
  161. package/vanilla/UiEditorTableOverlay.js +4 -4
  162. package/vanilla/UiEditorTableToolbar.d.ts +1 -1
  163. package/vanilla/UiEditorTableToolbar.js +4 -4
  164. package/vanilla/UiEditorToolbar.d.ts +1 -1
  165. package/vanilla/UiEditorToolbar.js +3 -3
  166. package/vanilla/UiFloatingActionButton.d.ts +1 -1
  167. package/vanilla/UiFloatingActionButton.js +3 -3
  168. package/vanilla/UiFormField.d.ts +1 -1
  169. package/vanilla/UiFormField.js +3 -3
  170. package/vanilla/UiGrid.d.ts +1 -1
  171. package/vanilla/UiGrid.js +4 -4
  172. package/vanilla/UiIcon.d.ts +1 -1
  173. package/vanilla/UiIcon.js +9 -7
  174. package/vanilla/UiIconButton.d.ts +1 -1
  175. package/vanilla/UiIconButton.js +4 -4
  176. package/vanilla/UiImage.d.ts +1 -1
  177. package/vanilla/UiImage.js +4 -4
  178. package/vanilla/UiInput.d.ts +1 -1
  179. package/vanilla/UiInput.js +4 -4
  180. package/vanilla/UiInputGroup.d.ts +1 -1
  181. package/vanilla/UiInputGroup.js +4 -4
  182. package/vanilla/UiList.d.ts +1 -1
  183. package/vanilla/UiList.js +6 -6
  184. package/vanilla/UiListItem.d.ts +1 -1
  185. package/vanilla/UiListItem.js +4 -4
  186. package/vanilla/UiListbox.d.ts +2 -2
  187. package/vanilla/UiListbox.js +3 -3
  188. package/vanilla/UiMenu.d.ts +2 -2
  189. package/vanilla/UiMenu.js +4 -4
  190. package/vanilla/UiMenuGroup.d.ts +1 -1
  191. package/vanilla/UiMenuGroup.js +3 -3
  192. package/vanilla/UiMenuItem.d.ts +1 -1
  193. package/vanilla/UiMenuItem.js +6 -6
  194. package/vanilla/UiMeter.d.ts +1 -1
  195. package/vanilla/UiMeter.js +9 -7
  196. package/vanilla/UiNavItem.d.ts +1 -1
  197. package/vanilla/UiNavItem.js +6 -6
  198. package/vanilla/UiPageHeader.d.ts +1 -1
  199. package/vanilla/UiPageHeader.js +4 -4
  200. package/vanilla/UiPopover.d.ts +1 -1
  201. package/vanilla/UiPopover.js +4 -4
  202. package/vanilla/UiRadio.d.ts +1 -1
  203. package/vanilla/UiRadio.js +4 -4
  204. package/vanilla/UiRadioGroup.d.ts +1 -1
  205. package/vanilla/UiRadioGroup.js +4 -4
  206. package/vanilla/UiReel.d.ts +1 -1
  207. package/vanilla/UiReel.js +4 -4
  208. package/vanilla/UiScrollArea.d.ts +1 -1
  209. package/vanilla/UiScrollArea.js +4 -4
  210. package/vanilla/UiSearchResultRow.d.ts +1 -1
  211. package/vanilla/UiSearchResultRow.js +4 -4
  212. package/vanilla/UiSearchShell.d.ts +1 -1
  213. package/vanilla/UiSearchShell.js +3 -3
  214. package/vanilla/UiSection.d.ts +1 -1
  215. package/vanilla/UiSection.js +4 -4
  216. package/vanilla/UiSelect.d.ts +1 -1
  217. package/vanilla/UiSelect.js +4 -4
  218. package/vanilla/UiSeparator.d.ts +1 -1
  219. package/vanilla/UiSeparator.js +4 -4
  220. package/vanilla/UiSidebar.d.ts +1 -1
  221. package/vanilla/UiSidebar.js +4 -4
  222. package/vanilla/UiSpinner.d.ts +1 -1
  223. package/vanilla/UiSpinner.js +4 -4
  224. package/vanilla/UiStack.d.ts +1 -1
  225. package/vanilla/UiStack.js +4 -4
  226. package/vanilla/UiStatusMessage.d.ts +1 -1
  227. package/vanilla/UiStatusMessage.js +4 -4
  228. package/vanilla/UiSwatch.d.ts +1 -1
  229. package/vanilla/UiSwatch.js +9 -7
  230. package/vanilla/UiSwitch.d.ts +1 -1
  231. package/vanilla/UiSwitch.js +4 -4
  232. package/vanilla/UiSwitcher.d.ts +1 -1
  233. package/vanilla/UiSwitcher.js +4 -4
  234. package/vanilla/UiTable.d.ts +1 -1
  235. package/vanilla/UiTable.js +4 -4
  236. package/vanilla/UiTabs.d.ts +1 -1
  237. package/vanilla/UiTabs.js +4 -4
  238. package/vanilla/UiText.d.ts +1 -1
  239. package/vanilla/UiText.js +6 -6
  240. package/vanilla/UiTextarea.d.ts +1 -1
  241. package/vanilla/UiTextarea.js +4 -4
  242. package/vanilla/UiToast.d.ts +1 -1
  243. package/vanilla/UiToast.js +4 -4
  244. package/vanilla/UiToastRegion.d.ts +2 -2
  245. package/vanilla/UiToastRegion.js +4 -4
  246. package/vanilla/UiTooltip.d.ts +1 -1
  247. package/vanilla/UiTooltip.js +4 -4
  248. package/vanilla/UiTopBar.d.ts +1 -1
  249. package/vanilla/UiTopBar.js +1 -1
  250. package/vanilla/UiTree.d.ts +1 -1
  251. package/vanilla/UiTree.js +4 -4
  252. package/vanilla/UiTreeItem.d.ts +1 -1
  253. package/vanilla/UiTreeItem.js +35 -23
  254. package/vue/UiActionBar.vue +1 -1
  255. package/vue/UiAffordanceScope.d.ts +8 -8
  256. package/vue/UiAffordanceScope.vue +57 -20
  257. package/vue/UiAvatar.d.ts +9 -27
  258. package/vue/UiAvatar.vue +100 -68
  259. package/vue/UiAvatarGroup.d.ts +9 -18
  260. package/vue/UiAvatarGroup.vue +73 -44
  261. package/vue/UiBadge.d.ts +9 -15
  262. package/vue/UiBadge.vue +67 -39
  263. package/vue/UiBreadcrumbItem.d.ts +8 -5
  264. package/vue/UiBreadcrumbItem.vue +45 -12
  265. package/vue/UiBreadcrumbs.d.ts +8 -5
  266. package/vue/UiBreadcrumbs.vue +45 -12
  267. package/vue/UiButton.d.ts +9 -45
  268. package/vue/UiButton.vue +148 -119
  269. package/vue/UiCallout.d.ts +8 -8
  270. package/vue/UiCallout.vue +68 -25
  271. package/vue/UiCard.d.ts +8 -17
  272. package/vue/UiCard.vue +77 -53
  273. package/vue/UiCheckbox.d.ts +8 -29
  274. package/vue/UiCheckbox.vue +118 -76
  275. package/vue/UiCluster.d.ts +9 -24
  276. package/vue/UiCluster.vue +91 -66
  277. package/vue/UiCombobox.d.ts +135 -219
  278. package/vue/UiCombobox.vue +528 -496
  279. package/vue/UiContainer.d.ts +8 -11
  280. package/vue/UiContainer.vue +61 -28
  281. package/vue/UiContextMenu.d.ts +10 -10
  282. package/vue/UiContextMenu.vue +55 -22
  283. package/vue/UiCover.d.ts +8 -5
  284. package/vue/UiCover.vue +45 -12
  285. package/vue/UiDescriptionItem.d.ts +8 -5
  286. package/vue/UiDescriptionItem.vue +40 -12
  287. package/vue/UiDescriptionList.d.ts +8 -11
  288. package/vue/UiDescriptionList.vue +61 -34
  289. package/vue/UiDialog.d.ts +8 -26
  290. package/vue/UiDialog.vue +99 -74
  291. package/vue/UiDisclosure.d.ts +8 -29
  292. package/vue/UiDisclosure.vue +118 -79
  293. package/vue/UiEditable.d.ts +8 -35
  294. package/vue/UiEditable.vue +136 -92
  295. package/vue/UiEditorBlockActions.d.ts +8 -8
  296. package/vue/UiEditorBlockActions.vue +58 -23
  297. package/vue/UiEditorChipEditor.d.ts +8 -8
  298. package/vue/UiEditorChipEditor.vue +65 -20
  299. package/vue/UiEditorCodeLanguage.d.ts +8 -11
  300. package/vue/UiEditorCodeLanguage.vue +74 -31
  301. package/vue/UiEditorImageToolbar.d.ts +8 -11
  302. package/vue/UiEditorImageToolbar.vue +175 -144
  303. package/vue/UiEditorInsertTableGrid.d.ts +8 -14
  304. package/vue/UiEditorInsertTableGrid.vue +73 -36
  305. package/vue/UiEditorLinkCard.d.ts +8 -17
  306. package/vue/UiEditorLinkCard.vue +157 -90
  307. package/vue/UiEditorLinkForm.d.ts +10 -44
  308. package/vue/UiEditorLinkForm.vue +336 -228
  309. package/vue/UiEditorMentionMenu.d.ts +28 -60
  310. package/vue/UiEditorMentionMenu.vue +166 -121
  311. package/vue/UiEditorMentionMenuItem.d.ts +8 -11
  312. package/vue/UiEditorMentionMenuItem.vue +61 -28
  313. package/vue/UiEditorSlashMenu.d.ts +26 -52
  314. package/vue/UiEditorSlashMenu.vue +141 -104
  315. package/vue/UiEditorSlashMenuGroup.d.ts +8 -5
  316. package/vue/UiEditorSlashMenuGroup.vue +40 -12
  317. package/vue/UiEditorSlashMenuItem.d.ts +8 -17
  318. package/vue/UiEditorSlashMenuItem.vue +90 -48
  319. package/vue/UiEditorSurface.d.ts +8 -5
  320. package/vue/UiEditorSurface.vue +45 -15
  321. package/vue/UiEditorTableContextMenu.d.ts +8 -20
  322. package/vue/UiEditorTableContextMenu.vue +151 -113
  323. package/vue/UiEditorTableOverlay.d.ts +10 -29
  324. package/vue/UiEditorTableOverlay.vue +180 -153
  325. package/vue/UiEditorTableToolbar.d.ts +8 -20
  326. package/vue/UiEditorTableToolbar.vue +158 -116
  327. package/vue/UiEditorToolbar.d.ts +8 -5
  328. package/vue/UiEditorToolbar.vue +48 -12
  329. package/vue/UiFloatingActionButton.d.ts +8 -11
  330. package/vue/UiFloatingActionButton.vue +60 -28
  331. package/vue/UiFormField.d.ts +8 -11
  332. package/vue/UiFormField.vue +63 -28
  333. package/vue/UiGrid.d.ts +8 -11
  334. package/vue/UiGrid.vue +56 -28
  335. package/vue/UiIcon.d.ts +8 -8
  336. package/vue/UiIcon.vue +444 -395
  337. package/vue/UiIconButton.d.ts +9 -39
  338. package/vue/UiIconButton.vue +138 -103
  339. package/vue/UiImage.d.ts +8 -23
  340. package/vue/UiImage.vue +80 -60
  341. package/vue/UiInput.d.ts +4 -7
  342. package/vue/UiInput.vue +169 -149
  343. package/vue/UiInputGroup.d.ts +8 -17
  344. package/vue/UiInputGroup.vue +81 -47
  345. package/vue/UiList.d.ts +9 -15
  346. package/vue/UiList.vue +67 -39
  347. package/vue/UiListItem.d.ts +8 -20
  348. package/vue/UiListItem.vue +87 -52
  349. package/vue/UiListbox.d.ts +10 -28
  350. package/vue/UiListbox.vue +111 -71
  351. package/vue/UiMenu.d.ts +10 -25
  352. package/vue/UiMenu.vue +96 -65
  353. package/vue/UiMenuGroup.d.ts +8 -5
  354. package/vue/UiMenuGroup.vue +40 -12
  355. package/vue/UiMenuItem.d.ts +8 -20
  356. package/vue/UiMenuItem.vue +91 -55
  357. package/vue/UiMeter.d.ts +9 -33
  358. package/vue/UiMeter.vue +202 -147
  359. package/vue/UiNavItem.d.ts +9 -24
  360. package/vue/UiNavItem.vue +78 -63
  361. package/vue/UiPageHeader.d.ts +8 -5
  362. package/vue/UiPageHeader.vue +45 -12
  363. package/vue/UiPopover.d.ts +8 -14
  364. package/vue/UiPopover.vue +90 -58
  365. package/vue/UiRadio.d.ts +8 -20
  366. package/vue/UiRadio.vue +91 -52
  367. package/vue/UiRadioGroup.d.ts +8 -26
  368. package/vue/UiRadioGroup.vue +109 -74
  369. package/vue/UiReel.d.ts +8 -11
  370. package/vue/UiReel.vue +56 -28
  371. package/vue/UiScrollArea.d.ts +9 -18
  372. package/vue/UiScrollArea.vue +81 -53
  373. package/vue/UiSearchResultRow.d.ts +8 -11
  374. package/vue/UiSearchResultRow.vue +60 -31
  375. package/vue/UiSearchShell.d.ts +8 -14
  376. package/vue/UiSearchShell.vue +73 -36
  377. package/vue/UiSection.d.ts +8 -11
  378. package/vue/UiSection.vue +60 -31
  379. package/vue/UiSelect.d.ts +8 -17
  380. package/vue/UiSelect.vue +83 -51
  381. package/vue/UiSeparator.d.ts +9 -15
  382. package/vue/UiSeparator.vue +69 -39
  383. package/vue/UiSidebar.d.ts +8 -29
  384. package/vue/UiSidebar.vue +118 -76
  385. package/vue/UiSpinner.d.ts +8 -8
  386. package/vue/UiSpinner.vue +51 -20
  387. package/vue/UiStack.d.ts +9 -18
  388. package/vue/UiStack.vue +73 -53
  389. package/vue/UiStatusMessage.d.ts +8 -11
  390. package/vue/UiStatusMessage.vue +60 -33
  391. package/vue/UiSwatch.d.ts +8 -5
  392. package/vue/UiSwatch.vue +64 -22
  393. package/vue/UiSwitch.d.ts +8 -20
  394. package/vue/UiSwitch.vue +91 -52
  395. package/vue/UiSwitcher.d.ts +9 -15
  396. package/vue/UiSwitcher.vue +64 -39
  397. package/vue/UiTable.d.ts +8 -8
  398. package/vue/UiTable.vue +56 -23
  399. package/vue/UiTabs.d.ts +8 -23
  400. package/vue/UiTabs.vue +100 -66
  401. package/vue/UiText.d.ts +9 -36
  402. package/vue/UiText.vue +152 -109
  403. package/vue/UiTextarea.d.ts +8 -29
  404. package/vue/UiTextarea.vue +118 -83
  405. package/vue/UiToast.d.ts +8 -8
  406. package/vue/UiToast.vue +55 -20
  407. package/vue/UiToastRegion.d.ts +14 -14
  408. package/vue/UiToastRegion.vue +66 -28
  409. package/vue/UiTooltip.d.ts +8 -23
  410. package/vue/UiTooltip.vue +117 -82
  411. package/vue/UiTopBar.vue +1 -1
  412. package/vue/UiTree.d.ts +8 -23
  413. package/vue/UiTree.vue +99 -69
  414. package/vue/UiTreeItem.d.ts +8 -47
  415. package/vue/UiTreeItem.vue +178 -127
  416. package/vue/chunks/UiActionBar.js +1 -1
  417. package/vue/chunks/UiAffordanceScope.js +35 -22
  418. package/vue/chunks/UiAvatar.js +81 -70
  419. package/vue/chunks/UiAvatarGroup.js +58 -46
  420. package/vue/chunks/UiBadge.js +46 -38
  421. package/vue/chunks/UiBreadcrumbItem.js +22 -11
  422. package/vue/chunks/UiBreadcrumbs.js +22 -11
  423. package/vue/chunks/UiButton.js +115 -118
  424. package/vue/chunks/UiCallout.js +32 -22
  425. package/vue/chunks/UiCard.js +53 -46
  426. package/vue/chunks/UiCheckbox.js +84 -78
  427. package/vue/chunks/UiCluster.js +63 -62
  428. package/vue/chunks/UiCombobox.js +359 -382
  429. package/vue/chunks/UiContainer.js +35 -30
  430. package/vue/chunks/UiContextMenu.js +36 -23
  431. package/vue/chunks/UiCover.js +22 -11
  432. package/vue/chunks/UiDescriptionItem.js +22 -11
  433. package/vue/chunks/UiDescriptionList.js +38 -30
  434. package/vue/chunks/UiDialog.js +78 -70
  435. package/vue/chunks/UiDisclosure.js +87 -78
  436. package/vue/chunks/UiEditable.js +102 -94
  437. package/vue/chunks/UiEditorBlockActions.js +49 -23
  438. package/vue/chunks/UiEditorChipEditor.js +48 -25
  439. package/vue/chunks/UiEditorCodeLanguage.js +58 -41
  440. package/vue/chunks/UiEditorImageToolbar.js +153 -148
  441. package/vue/chunks/UiEditorInsertTableGrid.js +55 -38
  442. package/vue/chunks/UiEditorLinkCard.js +104 -82
  443. package/vue/chunks/UiEditorLinkForm.js +282 -258
  444. package/vue/chunks/UiEditorMentionMenu.js +156 -145
  445. package/vue/chunks/UiEditorMentionMenuItem.js +39 -30
  446. package/vue/chunks/UiEditorSlashMenu.js +141 -130
  447. package/vue/chunks/UiEditorSlashMenuGroup.js +22 -11
  448. package/vue/chunks/UiEditorSlashMenuItem.js +62 -47
  449. package/vue/chunks/UiEditorSurface.js +22 -11
  450. package/vue/chunks/UiEditorTableContextMenu.js +98 -87
  451. package/vue/chunks/UiEditorTableOverlay.js +286 -308
  452. package/vue/chunks/UiEditorTableToolbar.js +102 -87
  453. package/vue/chunks/UiEditorToolbar.js +24 -11
  454. package/vue/chunks/UiFloatingActionButton.js +39 -30
  455. package/vue/chunks/UiFormField.js +41 -30
  456. package/vue/chunks/UiGrid.js +35 -30
  457. package/vue/chunks/UiIcon.js +38 -25
  458. package/vue/chunks/UiIconButton.js +102 -102
  459. package/vue/chunks/UiImage.js +67 -62
  460. package/vue/chunks/UiInput.js +275 -274
  461. package/vue/chunks/UiInputGroup.js +55 -46
  462. package/vue/chunks/UiList.js +46 -38
  463. package/vue/chunks/UiListItem.js +60 -54
  464. package/vue/chunks/UiListbox.js +83 -72
  465. package/vue/chunks/UiMenu.js +71 -63
  466. package/vue/chunks/UiMenuGroup.js +22 -11
  467. package/vue/chunks/UiMenuItem.js +63 -54
  468. package/vue/chunks/UiMeter.js +124 -119
  469. package/vue/chunks/UiNavItem.js +64 -62
  470. package/vue/chunks/UiPageHeader.js +22 -11
  471. package/vue/chunks/UiPopover.js +49 -38
  472. package/vue/chunks/UiRadio.js +63 -54
  473. package/vue/chunks/UiRadioGroup.js +77 -70
  474. package/vue/chunks/UiReel.js +35 -30
  475. package/vue/chunks/UiScrollArea.js +55 -46
  476. package/vue/chunks/UiSearchResultRow.js +39 -30
  477. package/vue/chunks/UiSearchShell.js +49 -38
  478. package/vue/chunks/UiSection.js +39 -30
  479. package/vue/chunks/UiSelect.js +57 -48
  480. package/vue/chunks/UiSeparator.js +46 -38
  481. package/vue/chunks/UiSidebar.js +88 -78
  482. package/vue/chunks/UiSpinner.js +32 -22
  483. package/vue/chunks/UiStack.js +47 -46
  484. package/vue/chunks/UiStatusMessage.js +39 -30
  485. package/vue/chunks/UiSwatch.js +28 -14
  486. package/vue/chunks/UiSwitch.js +63 -54
  487. package/vue/chunks/UiSwitcher.js +44 -38
  488. package/vue/chunks/UiTable.js +34 -22
  489. package/vue/chunks/UiTabs.js +73 -62
  490. package/vue/chunks/UiText.js +95 -94
  491. package/vue/chunks/UiTextarea.js +84 -80
  492. package/vue/chunks/UiToast.js +34 -22
  493. package/vue/chunks/UiToastRegion.js +36 -23
  494. package/vue/chunks/UiTooltip.js +70 -62
  495. package/vue/chunks/UiTopBar.js +1 -1
  496. package/vue/chunks/UiTree.js +69 -62
  497. package/vue/chunks/UiTreeItem.js +154 -151
  498. package/vue/chunks/_plugin-vue_export-helper.js +185 -36
  499. package/vue/chunks/control.js +6 -1
  500. package/vue/chunks/props.js +435 -11
  501. package/vue/components.css +39 -39
  502. package/vue/editor/index.js +129 -291
  503. package/vue/host.ts +320 -14
  504. package/vue/props.d.ts +272 -0
@@ -1,5 +1,120 @@
1
1
  import { Fragment, computed, defineComponent, getCurrentInstance, h, onBeforeUnmount, onBeforeUpdate, onMounted, onUpdated, shallowRef, useSlots, watch, watchEffect } from "vue";
2
2
  //#region .build/vue/host.ts
3
+ var READY_INPUT = {
4
+ ready: true,
5
+ pending: false,
6
+ error: null,
7
+ stale: false
8
+ };
9
+ /**
10
+ * Each call owns a fresh native cancellation signal. The facade also owns subscriptions created
11
+ * through host.on/effect after an await: retaining a stale host cannot start a new subscription.
12
+ * It shares the instance's state, props, refs and other capabilities rather than copying them.
13
+ */
14
+ function activateModule(module, host, report = (error) => {
15
+ queueMicrotask(() => {
16
+ throw error;
17
+ });
18
+ }) {
19
+ const controller = new AbortController();
20
+ const owned = /* @__PURE__ */ new Set();
21
+ let cleanup;
22
+ const dispose = (stop) => {
23
+ try {
24
+ stop();
25
+ } catch (error) {
26
+ report(error);
27
+ }
28
+ };
29
+ const scoped = Object.create(host);
30
+ const stop = () => {
31
+ if (controller.signal.aborted) return;
32
+ controller.abort();
33
+ for (const release of owned) release();
34
+ const release = cleanup;
35
+ cleanup = void 0;
36
+ if (release !== void 0) dispose(release);
37
+ };
38
+ const failed = (error) => {
39
+ const cancelled = controller.signal.aborted && error?.name === "AbortError";
40
+ stop();
41
+ if (!cancelled) report(error);
42
+ };
43
+ const own = (stop) => {
44
+ let stopped = false;
45
+ const release = () => {
46
+ if (stopped) return;
47
+ stopped = true;
48
+ owned.delete(release);
49
+ dispose(stop);
50
+ };
51
+ if (controller.signal.aborted) release();
52
+ else owned.add(release);
53
+ return release;
54
+ };
55
+ for (const name of [
56
+ "on",
57
+ "effect",
58
+ "computed"
59
+ ]) {
60
+ const method = Reflect.get(host, name);
61
+ if (typeof method !== "function") continue;
62
+ Object.defineProperty(scoped, name, { value: (...args) => {
63
+ if (controller.signal.aborted) {
64
+ if (name === "computed") return { get: () => {
65
+ throw controller.signal.reason;
66
+ } };
67
+ return () => {};
68
+ }
69
+ const result = Reflect.apply(method, host, args);
70
+ const stop = name === "computed" ? result.stop?.bind(result) : result;
71
+ if (stop === void 0) return result;
72
+ const release = own(stop);
73
+ return name === "computed" ? result : release;
74
+ } });
75
+ }
76
+ const inputKey = Symbol.for("@nextwebwg/html-next.inputs.v1");
77
+ const inputs = Reflect.get(host, inputKey);
78
+ if (inputs !== void 0) {
79
+ const port = Object.create(inputs);
80
+ Object.defineProperty(port, "watch", { value: (run) => controller.signal.aborted ? () => {} : own(inputs.watch(run)) });
81
+ const source = Reflect.get(inputs, "source");
82
+ if (typeof source === "function") Object.defineProperty(port, "source", { value: (...args) => {
83
+ if (controller.signal.aborted) throw controller.signal.reason;
84
+ const result = Reflect.apply(source, inputs, args);
85
+ const capability = Object.create(result);
86
+ Object.defineProperty(capability, "dispose", { value: own(() => result.dispose()) });
87
+ return capability;
88
+ } });
89
+ Object.defineProperty(scoped, inputKey, { value: port });
90
+ }
91
+ const accept = (result) => {
92
+ if (result === void 0) return;
93
+ if (typeof result !== "function") {
94
+ failed(/* @__PURE__ */ new TypeError("A component connect export must return cleanup or undefined."));
95
+ return;
96
+ }
97
+ if (controller.signal.aborted) dispose(result);
98
+ else cleanup = result;
99
+ };
100
+ try {
101
+ const result = module.connect?.(scoped, { signal: controller.signal });
102
+ if (result !== void 0 && typeof result !== "function") Promise.resolve(result).then(accept, failed);
103
+ else accept(result);
104
+ } catch (error) {
105
+ failed(error);
106
+ }
107
+ return stop;
108
+ }
109
+ /** A fresh copy of a state's declared value at `keys`, or null where it has none. */
110
+ function initialAt(initial, keys) {
111
+ let value = initial;
112
+ for (const key of keys) {
113
+ if (value === null || typeof value !== "object" || !Object.hasOwn(value, key)) return null;
114
+ value = value[key];
115
+ }
116
+ return value === void 0 ? null : value !== null && typeof value === "object" ? structuredClone(value) : value;
117
+ }
3
118
  function controllerNamespaces(options, source) {
4
119
  const reported = /* @__PURE__ */ new Set();
5
120
  const nested = /* @__PURE__ */ new WeakMap();
@@ -44,7 +159,7 @@ function controllerNamespaces(options, source) {
44
159
  return wrap(Reflect.get(value, key), name, [...keys, String(key)], readonly);
45
160
  },
46
161
  set: (_target, key, written) => {
47
- const next = unwrap(written);
162
+ const next = unwrap(written) ?? initialAt(options.initials?.[name] ?? null, [...keys, String(key)]);
48
163
  return write(name, [...keys, String(key)], next, readonly, () => {
49
164
  const previous = Reflect.get(value, key);
50
165
  const length = Array.isArray(value) ? value.length : void 0;
@@ -86,37 +201,44 @@ function controllerNamespaces(options, source) {
86
201
  plain.set(proxy, value);
87
202
  return proxy;
88
203
  };
204
+ const state = new Proxy({}, {
205
+ get: (_target, name) => {
206
+ if (typeof name !== "string") return void 0;
207
+ if (Object.hasOwn(options.state, name)) return wrap(options.state[name].get(), name, [], false);
208
+ if (Object.hasOwn(options.computed, name)) return wrap(options.computed[name](), name, [], true);
209
+ },
210
+ set: (_target, name, value) => write(String(name), [], unwrap(value), typeof name !== "string" || !Object.hasOwn(options.state, name), () => options.state[String(name)].set(unwrap(value) ?? initialAt(options.initials?.[String(name)] ?? null, []))),
211
+ deleteProperty: (_target, name) => {
212
+ warn(String(name), true);
213
+ return true;
214
+ },
215
+ defineProperty: (_target, name) => {
216
+ warn(String(name), true);
217
+ return false;
218
+ },
219
+ has: (_target, name) => typeof name === "string" && (Object.hasOwn(options.state, name) || Object.hasOwn(options.computed, name))
220
+ });
221
+ const data = new Proxy({}, {
222
+ get: (_target, name) => typeof name === "string" && Object.hasOwn(options.data ?? {}, name) ? wrap(options.data[name](), "data." + name, [], true) : void 0,
223
+ set: (_target, name, value) => write("data." + String(name), [], value, true, () => {}),
224
+ deleteProperty: (_target, name) => {
225
+ warn("data." + String(name), true);
226
+ return true;
227
+ },
228
+ defineProperty: (_target, name) => {
229
+ warn("data." + String(name), true);
230
+ return false;
231
+ },
232
+ has: (_target, name) => typeof name === "string" && Object.hasOwn(options.data ?? {}, name)
233
+ });
234
+ const reset = (name) => {
235
+ if (name !== void 0 && !Object.hasOwn(options.state, name)) throw new TypeError("`" + String(name) + "` is not a state of " + source + ".");
236
+ for (const each of name === void 0 ? Object.keys(options.state) : [name]) options.state[each].set(initialAt(options.initials?.[each] ?? null, []));
237
+ };
89
238
  return {
90
- state: new Proxy({}, {
91
- get: (_target, name) => {
92
- if (typeof name !== "string") return void 0;
93
- if (Object.hasOwn(options.state, name)) return wrap(options.state[name].get(), name, [], false);
94
- if (Object.hasOwn(options.computed, name)) return wrap(options.computed[name](), name, [], true);
95
- },
96
- set: (_target, name, value) => write(String(name), [], unwrap(value), typeof name !== "string" || !Object.hasOwn(options.state, name), () => options.state[String(name)].set(unwrap(value))),
97
- deleteProperty: (_target, name) => {
98
- warn(String(name), true);
99
- return true;
100
- },
101
- defineProperty: (_target, name) => {
102
- warn(String(name), true);
103
- return false;
104
- },
105
- has: (_target, name) => typeof name === "string" && (Object.hasOwn(options.state, name) || Object.hasOwn(options.computed, name))
106
- }),
107
- data: new Proxy({}, {
108
- get: (_target, name) => typeof name === "string" && Object.hasOwn(options.data ?? {}, name) ? wrap(options.data[name](), "data." + name, [], true) : void 0,
109
- set: (_target, name, value) => write("data." + String(name), [], value, true, () => {}),
110
- deleteProperty: (_target, name) => {
111
- warn("data." + String(name), true);
112
- return true;
113
- },
114
- defineProperty: (_target, name) => {
115
- warn("data." + String(name), true);
116
- return false;
117
- },
118
- has: (_target, name) => typeof name === "string" && Object.hasOwn(options.data ?? {}, name)
119
- })
239
+ state,
240
+ data,
241
+ reset
120
242
  };
121
243
  }
122
244
  var requestStateKey = Symbol.for("@nextwebwg/html-next.runtime.v1");
@@ -271,7 +393,7 @@ function useComponentHost(controllerLoader, options) {
271
393
  const edge = options.controllerSource;
272
394
  const source = edge?.definition ? new URL(edge.definition, document.baseURI).href : void 0;
273
395
  const url = new URL(edge?.specifier ?? "", source ?? document.baseURI).href;
274
- const message = code === "HJ002" ? "Controller module `" + url + "` must default-export a function." : "Controller module `" + url + "` failed to load: " + (reason instanceof Error ? reason.message : String(reason)) + ".";
396
+ const message = code === "HJ002" ? options.module ? "Component module `" + url + "` export connect must be a function." : "Controller module `" + url + "` must default-export a function." : "Controller module `" + url + "` failed to load: " + (reason instanceof Error ? reason.message : String(reason)) + ".";
275
397
  return Object.assign(/* @__PURE__ */ new Error((source === void 0 ? "" : source + ": ") + code + ": " + message), {
276
398
  name: "HtmlDiagnosticError",
277
399
  diagnostic: Object.freeze({
@@ -283,7 +405,8 @@ function useComponentHost(controllerLoader, options) {
283
405
  };
284
406
  let controllerModule;
285
407
  const loadControllerModule = () => controllerModule ??= Promise.resolve().then(controllerLoader).then((candidate) => {
286
- if (typeof candidate?.default !== "function") throw controllerDiagnostic("HJ002");
408
+ const loaded = candidate;
409
+ if (options.module ? loaded === null || typeof loaded !== "object" || loaded.connect !== void 0 && typeof loaded.connect !== "function" : typeof loaded?.default !== "function") throw controllerDiagnostic("HJ002");
287
410
  return candidate;
288
411
  }).catch((error) => {
289
412
  if (error instanceof Error && "diagnostic" in error) throw error;
@@ -335,6 +458,21 @@ function useComponentHost(controllerLoader, options) {
335
458
  }
336
459
  let lastRoot = null;
337
460
  const host = {
461
+ get [Symbol.for("@nextwebwg/html-next.inputs.v1")]() {
462
+ return options.inputs?.port({
463
+ declarations: Object.fromEntries([
464
+ ...Object.keys(state),
465
+ ...Object.keys(computedValues),
466
+ ...Object.keys(context)
467
+ ].map((name) => [name, {
468
+ read: () => host.state[name],
469
+ status: () => options.availability?.[name]?.() ?? READY_INPUT
470
+ }])),
471
+ track: (name, kind) => options.inputTracking.track(name, kind),
472
+ watch: (run) => host.effect(run),
473
+ untracked: (run) => options.inputTracking.untracked(run)
474
+ });
475
+ },
338
476
  get element() {
339
477
  return root.value ?? lastRoot;
340
478
  },
@@ -350,7 +488,8 @@ function useComponentHost(controllerLoader, options) {
350
488
  }])),
351
489
  computed: Object.fromEntries([...Object.entries(computedValues), ...Object.entries(context)].map(([name, value]) => [name, () => value.value])),
352
490
  data: Object.fromEntries(Object.entries(data).map(([name, value]) => [name, () => value.value])),
353
- ...options.acceptsState === void 0 ? {} : { acceptsState: options.acceptsState }
491
+ ...options.acceptsState === void 0 ? {} : { acceptsState: options.acceptsState },
492
+ ...options.initials === void 0 ? {} : { initials: options.initials }
354
493
  }, options.controllerSource?.definition ?? "<component>"),
355
494
  scripts: options.scripts ?? Object.freeze({}),
356
495
  on(type, callback) {
@@ -400,6 +539,8 @@ function useComponentHost(controllerLoader, options) {
400
539
  stop();
401
540
  pause();
402
541
  pauses.delete(dispose);
542
+ const index = stops.indexOf(dispose);
543
+ if (index >= 0) stops.splice(index, 1);
403
544
  };
404
545
  pauses.set(dispose, pause);
405
546
  stops.push(dispose);
@@ -466,12 +607,20 @@ function useComponentHost(controllerLoader, options) {
466
607
  }
467
608
  connected.value = true;
468
609
  for (const entry of subscriptions) activate(entry);
469
- if (initialized) return;
610
+ if (initialized && !options.module) return;
470
611
  const current = ++connection;
471
612
  const release = releaseController = holdController(root.value);
472
613
  started = loadControllerModule().then(async (loaded) => {
473
- if (!connected.value || current !== connection || initialized) return loaded;
614
+ if (!connected.value || current !== connection || initialized && !options.module) return loaded;
474
615
  initialized = true;
616
+ if (options.module) {
617
+ try {
618
+ cleanup = activateModule(loaded, host, report);
619
+ } finally {
620
+ release();
621
+ }
622
+ return loaded;
623
+ }
475
624
  let invoked;
476
625
  try {
477
626
  invoked = loaded.default(host);
@@ -1,7 +1,8 @@
1
- import { Fragment, cloneVNode, createVNode, defineComponent, onMounted, onUpdated } from "vue";
1
+ import { Fragment, cloneVNode, createVNode, defineComponent, onMounted, onUpdated, toRaw } from "vue";
2
2
  //#region .build/vue/control.ts
3
3
  var connectedControls = /* @__PURE__ */ new WeakSet();
4
4
  var boundValues = /* @__PURE__ */ new WeakMap();
5
+ var heldControls = /* @__PURE__ */ new WeakMap();
5
6
  var selectOptions = /* @__PURE__ */ new WeakMap();
6
7
  var selectBindings = /* @__PURE__ */ new WeakMap();
7
8
  var selectWatches = /* @__PURE__ */ new WeakMap();
@@ -60,6 +61,10 @@ function snapshotValue(value) {
60
61
  }
61
62
  function writeBoundControl(element, binding) {
62
63
  const value = binding.value;
64
+ if (heldControls.has(element)) {
65
+ if (sameValue(heldControls.get(element), toRaw(value))) return;
66
+ heldControls.delete(element);
67
+ }
63
68
  if (binding.optionalValue && value === void 0) return;
64
69
  if (binding.name === "checked" && element instanceof HTMLInputElement) {
65
70
  const next = Boolean(value);