@threadlabs/looma 0.28.4 → 0.28.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (437) hide show
  1. package/components/ui-editor-image-toolbar/ui-editor-image-toolbar.html +96 -0
  2. package/components/ui-editor-image-toolbar/ui-editor-image-toolbar.js +56 -0
  3. package/components/ui-editor-mention-menu-item/ui-editor-mention-menu-item.html +3 -2
  4. package/dist/index.js +34 -33
  5. package/package.json +3 -2
  6. package/styles/ui-action-bar.css +13 -6
  7. package/styles/ui-affordance-scope.css +12 -5
  8. package/styles/ui-avatar-group.css +17 -10
  9. package/styles/ui-avatar.css +23 -16
  10. package/styles/ui-badge.css +78 -71
  11. package/styles/ui-breadcrumb-item.css +12 -5
  12. package/styles/ui-breadcrumbs.css +10 -3
  13. package/styles/ui-button.css +79 -72
  14. package/styles/ui-callout.css +29 -22
  15. package/styles/ui-card.css +25 -18
  16. package/styles/ui-checkbox.css +45 -37
  17. package/styles/ui-cluster.css +34 -27
  18. package/styles/ui-combobox.css +46 -39
  19. package/styles/ui-container.css +20 -13
  20. package/styles/ui-context-menu.css +17 -10
  21. package/styles/ui-cover.css +12 -5
  22. package/styles/ui-description-item.css +10 -3
  23. package/styles/ui-description-list.css +20 -13
  24. package/styles/ui-dialog.css +44 -35
  25. package/styles/ui-disclosure.css +32 -25
  26. package/styles/ui-editable.css +15 -8
  27. package/styles/ui-editor-image-toolbar.css +1 -0
  28. package/styles/ui-editor-insert-table-grid.css +11 -4
  29. package/styles/ui-editor-mention-menu-item.css +17 -8
  30. package/styles/ui-editor-mention-menu.css +14 -7
  31. package/styles/ui-editor-slash-menu-group.css +10 -3
  32. package/styles/ui-editor-slash-menu-item.css +15 -8
  33. package/styles/ui-editor-slash-menu.css +15 -8
  34. package/styles/ui-editor-surface.css +10 -3
  35. package/styles/ui-editor-table-context-menu.css +17 -10
  36. package/styles/ui-editor-table-overlay.css +17 -10
  37. package/styles/ui-editor-table-toolbar.css +22 -15
  38. package/styles/ui-editor-toolbar.css +18 -11
  39. package/styles/ui-floating-action-button.css +21 -14
  40. package/styles/ui-form-field.css +20 -13
  41. package/styles/ui-grid.css +21 -14
  42. package/styles/ui-icon-button.css +80 -73
  43. package/styles/ui-icon.css +14 -7
  44. package/styles/ui-image.css +25 -18
  45. package/styles/ui-input-group.css +34 -27
  46. package/styles/ui-input.css +42 -35
  47. package/styles/ui-list-item.css +33 -26
  48. package/styles/ui-list.css +22 -15
  49. package/styles/ui-listbox.css +22 -14
  50. package/styles/ui-menu-group.css +10 -3
  51. package/styles/ui-menu-item.css +29 -22
  52. package/styles/ui-menu.css +25 -18
  53. package/styles/ui-meter.css +36 -29
  54. package/styles/ui-nav-item.css +26 -19
  55. package/styles/ui-page-header.css +12 -5
  56. package/styles/ui-popover.css +27 -20
  57. package/styles/ui-radio-group.css +14 -6
  58. package/styles/ui-radio.css +24 -17
  59. package/styles/ui-reel.css +28 -21
  60. package/styles/ui-scroll-area.css +22 -15
  61. package/styles/ui-search-result-row.css +28 -21
  62. package/styles/ui-search-shell.css +24 -17
  63. package/styles/ui-section.css +14 -7
  64. package/styles/ui-select.css +33 -26
  65. package/styles/ui-separator.css +17 -10
  66. package/styles/ui-sidebar.css +35 -28
  67. package/styles/ui-spinner.css +32 -23
  68. package/styles/ui-stack.css +29 -21
  69. package/styles/ui-status-message.css +14 -7
  70. package/styles/ui-switch.css +29 -22
  71. package/styles/ui-switcher.css +27 -20
  72. package/styles/ui-table.css +14 -7
  73. package/styles/ui-tabs.css +24 -17
  74. package/styles/ui-text.css +35 -28
  75. package/styles/ui-textarea.css +37 -30
  76. package/styles/ui-toast-region.css +74 -63
  77. package/styles/ui-toast.css +21 -14
  78. package/styles/ui-tooltip.css +38 -31
  79. package/styles/ui-top-bar.css +19 -12
  80. package/styles/ui-tree-item.css +79 -71
  81. package/styles/ui-tree.css +18 -11
  82. package/vanilla/UiActionBar.d.ts +1 -1
  83. package/vanilla/UiActionBar.js +1 -1
  84. package/vanilla/UiAffordanceScope.d.ts +1 -1
  85. package/vanilla/UiAffordanceScope.js +1 -1
  86. package/vanilla/UiAvatar.d.ts +1 -1
  87. package/vanilla/UiAvatar.js +1 -1
  88. package/vanilla/UiAvatarGroup.d.ts +1 -1
  89. package/vanilla/UiAvatarGroup.js +1 -1
  90. package/vanilla/UiBadge.d.ts +1 -1
  91. package/vanilla/UiBadge.js +1 -1
  92. package/vanilla/UiBreadcrumbItem.d.ts +1 -1
  93. package/vanilla/UiBreadcrumbItem.js +1 -1
  94. package/vanilla/UiBreadcrumbs.d.ts +1 -1
  95. package/vanilla/UiBreadcrumbs.js +1 -1
  96. package/vanilla/UiButton.d.ts +1 -1
  97. package/vanilla/UiButton.js +19 -57
  98. package/vanilla/UiCallout.d.ts +1 -1
  99. package/vanilla/UiCallout.js +25 -73
  100. package/vanilla/UiCard.d.ts +1 -1
  101. package/vanilla/UiCard.js +1 -1
  102. package/vanilla/UiCheckbox.d.ts +1 -1
  103. package/vanilla/UiCheckbox.js +1 -1
  104. package/vanilla/UiCluster.d.ts +1 -1
  105. package/vanilla/UiCluster.js +1 -1
  106. package/vanilla/UiCombobox.d.ts +1 -1
  107. package/vanilla/UiCombobox.js +60 -166
  108. package/vanilla/UiContainer.d.ts +1 -1
  109. package/vanilla/UiContainer.js +1 -1
  110. package/vanilla/UiContextMenu.d.ts +1 -1
  111. package/vanilla/UiContextMenu.js +1 -1
  112. package/vanilla/UiCover.d.ts +1 -1
  113. package/vanilla/UiCover.js +1 -1
  114. package/vanilla/UiDescriptionItem.d.ts +1 -1
  115. package/vanilla/UiDescriptionItem.js +1 -1
  116. package/vanilla/UiDescriptionList.d.ts +1 -1
  117. package/vanilla/UiDescriptionList.js +1 -1
  118. package/vanilla/UiDialog.d.ts +1 -1
  119. package/vanilla/UiDialog.js +4 -10
  120. package/vanilla/UiDisclosure.d.ts +1 -1
  121. package/vanilla/UiDisclosure.js +1 -1
  122. package/vanilla/UiEditable.d.ts +1 -1
  123. package/vanilla/UiEditable.js +7 -19
  124. package/vanilla/UiEditorImageToolbar.d.ts +19 -0
  125. package/vanilla/UiEditorImageToolbar.js +171 -0
  126. package/vanilla/UiEditorInsertTableGrid.d.ts +1 -1
  127. package/vanilla/UiEditorInsertTableGrid.js +1 -1
  128. package/vanilla/UiEditorMentionMenu.d.ts +1 -1
  129. package/vanilla/UiEditorMentionMenu.js +17 -37
  130. package/vanilla/UiEditorMentionMenuItem.d.ts +1 -1
  131. package/vanilla/UiEditorMentionMenuItem.js +4 -10
  132. package/vanilla/UiEditorSlashMenu.d.ts +1 -1
  133. package/vanilla/UiEditorSlashMenu.js +5 -4
  134. package/vanilla/UiEditorSlashMenuGroup.d.ts +1 -1
  135. package/vanilla/UiEditorSlashMenuGroup.js +1 -1
  136. package/vanilla/UiEditorSlashMenuItem.d.ts +1 -1
  137. package/vanilla/UiEditorSlashMenuItem.js +7 -19
  138. package/vanilla/UiEditorSurface.d.ts +1 -1
  139. package/vanilla/UiEditorSurface.js +1 -1
  140. package/vanilla/UiEditorTableContextMenu.d.ts +1 -1
  141. package/vanilla/UiEditorTableContextMenu.js +6 -14
  142. package/vanilla/UiEditorTableOverlay.d.ts +1 -1
  143. package/vanilla/UiEditorTableOverlay.js +9 -25
  144. package/vanilla/UiEditorTableToolbar.d.ts +1 -1
  145. package/vanilla/UiEditorTableToolbar.js +25 -77
  146. package/vanilla/UiEditorToolbar.d.ts +1 -1
  147. package/vanilla/UiEditorToolbar.js +1 -1
  148. package/vanilla/UiFloatingActionButton.d.ts +1 -1
  149. package/vanilla/UiFloatingActionButton.js +1 -1
  150. package/vanilla/UiFormField.d.ts +1 -1
  151. package/vanilla/UiFormField.js +1 -1
  152. package/vanilla/UiGrid.d.ts +1 -1
  153. package/vanilla/UiGrid.js +1 -1
  154. package/vanilla/UiIcon.d.ts +1 -1
  155. package/vanilla/UiIcon.js +15 -47
  156. package/vanilla/UiIconButton.d.ts +1 -1
  157. package/vanilla/UiIconButton.js +4 -10
  158. package/vanilla/UiImage.d.ts +1 -1
  159. package/vanilla/UiImage.js +1 -1
  160. package/vanilla/UiInput.d.ts +1 -1
  161. package/vanilla/UiInput.js +1 -1
  162. package/vanilla/UiInputGroup.d.ts +1 -1
  163. package/vanilla/UiInputGroup.js +1 -1
  164. package/vanilla/UiList.d.ts +1 -1
  165. package/vanilla/UiList.js +1 -1
  166. package/vanilla/UiListItem.d.ts +1 -1
  167. package/vanilla/UiListItem.js +1 -1
  168. package/vanilla/UiListbox.d.ts +1 -1
  169. package/vanilla/UiListbox.js +4 -10
  170. package/vanilla/UiMenu.d.ts +1 -1
  171. package/vanilla/UiMenu.js +1 -1
  172. package/vanilla/UiMenuGroup.d.ts +1 -1
  173. package/vanilla/UiMenuGroup.js +4 -10
  174. package/vanilla/UiMenuItem.d.ts +1 -1
  175. package/vanilla/UiMenuItem.js +4 -10
  176. package/vanilla/UiMeter.d.ts +1 -1
  177. package/vanilla/UiMeter.js +13 -33
  178. package/vanilla/UiNavItem.d.ts +1 -1
  179. package/vanilla/UiNavItem.js +1 -1
  180. package/vanilla/UiPageHeader.d.ts +1 -1
  181. package/vanilla/UiPageHeader.js +1 -1
  182. package/vanilla/UiPopover.d.ts +1 -1
  183. package/vanilla/UiPopover.js +1 -1
  184. package/vanilla/UiRadio.d.ts +1 -1
  185. package/vanilla/UiRadio.js +1 -1
  186. package/vanilla/UiRadioGroup.d.ts +1 -1
  187. package/vanilla/UiRadioGroup.js +1 -1
  188. package/vanilla/UiReel.d.ts +1 -1
  189. package/vanilla/UiReel.js +1 -1
  190. package/vanilla/UiScrollArea.d.ts +1 -1
  191. package/vanilla/UiScrollArea.js +1 -1
  192. package/vanilla/UiSearchResultRow.d.ts +1 -1
  193. package/vanilla/UiSearchResultRow.js +1 -1
  194. package/vanilla/UiSearchShell.d.ts +1 -1
  195. package/vanilla/UiSearchShell.js +1 -1
  196. package/vanilla/UiSection.d.ts +1 -1
  197. package/vanilla/UiSection.js +1 -1
  198. package/vanilla/UiSelect.d.ts +1 -1
  199. package/vanilla/UiSelect.js +1 -1
  200. package/vanilla/UiSeparator.d.ts +1 -1
  201. package/vanilla/UiSeparator.js +1 -1
  202. package/vanilla/UiSidebar.d.ts +1 -1
  203. package/vanilla/UiSidebar.js +1 -1
  204. package/vanilla/UiSpinner.d.ts +1 -1
  205. package/vanilla/UiSpinner.js +1 -1
  206. package/vanilla/UiStack.d.ts +1 -1
  207. package/vanilla/UiStack.js +1 -1
  208. package/vanilla/UiStatusMessage.d.ts +1 -1
  209. package/vanilla/UiStatusMessage.js +1 -1
  210. package/vanilla/UiSwitch.d.ts +1 -1
  211. package/vanilla/UiSwitch.js +1 -1
  212. package/vanilla/UiSwitcher.d.ts +1 -1
  213. package/vanilla/UiSwitcher.js +1 -1
  214. package/vanilla/UiTable.d.ts +1 -1
  215. package/vanilla/UiTable.js +1 -1
  216. package/vanilla/UiTabs.d.ts +1 -1
  217. package/vanilla/UiTabs.js +1 -1
  218. package/vanilla/UiText.d.ts +1 -1
  219. package/vanilla/UiText.js +1 -1
  220. package/vanilla/UiTextarea.d.ts +1 -1
  221. package/vanilla/UiTextarea.js +1 -1
  222. package/vanilla/UiToast.d.ts +1 -1
  223. package/vanilla/UiToast.js +1 -1
  224. package/vanilla/UiToastRegion.d.ts +1 -1
  225. package/vanilla/UiToastRegion.js +1 -1
  226. package/vanilla/UiTooltip.d.ts +1 -1
  227. package/vanilla/UiTooltip.js +1 -1
  228. package/vanilla/UiTopBar.d.ts +1 -1
  229. package/vanilla/UiTopBar.js +1 -1
  230. package/vanilla/UiTree.d.ts +1 -1
  231. package/vanilla/UiTree.js +1 -1
  232. package/vanilla/UiTreeItem.d.ts +1 -1
  233. package/vanilla/UiTreeItem.js +7 -19
  234. package/vanilla/index.js +1 -0
  235. package/vue/UiActionBar.vue +46 -78
  236. package/vue/UiAffordanceScope.vue +27 -66
  237. package/vue/UiAvatar.d.ts +10 -7
  238. package/vue/UiAvatar.vue +100 -218
  239. package/vue/UiAvatarGroup.d.ts +10 -7
  240. package/vue/UiAvatarGroup.vue +78 -160
  241. package/vue/UiBadge.d.ts +1 -1
  242. package/vue/UiBadge.vue +483 -520
  243. package/vue/UiBreadcrumbItem.vue +52 -123
  244. package/vue/UiBreadcrumbs.vue +27 -70
  245. package/vue/UiButton.d.ts +2 -2
  246. package/vue/UiButton.vue +420 -471
  247. package/vue/UiCallout.vue +131 -175
  248. package/vue/UiCard.d.ts +1 -1
  249. package/vue/UiCard.vue +112 -151
  250. package/vue/UiCheckbox.d.ts +13 -10
  251. package/vue/UiCheckbox.vue +160 -221
  252. package/vue/UiCluster.d.ts +1 -1
  253. package/vue/UiCluster.vue +84 -128
  254. package/vue/UiCombobox.d.ts +71 -68
  255. package/vue/UiCombobox.vue +417 -743
  256. package/vue/UiContainer.vue +43 -87
  257. package/vue/UiContextMenu.d.ts +6 -6
  258. package/vue/UiContextMenu.vue +78 -117
  259. package/vue/UiCover.vue +29 -69
  260. package/vue/UiDescriptionItem.vue +39 -82
  261. package/vue/UiDescriptionList.vue +64 -107
  262. package/vue/UiDialog.d.ts +22 -19
  263. package/vue/UiDialog.vue +193 -246
  264. package/vue/UiDisclosure.d.ts +22 -19
  265. package/vue/UiDisclosure.vue +192 -283
  266. package/vue/UiEditable.d.ts +5 -5
  267. package/vue/UiEditable.vue +124 -207
  268. package/vue/UiEditorImageToolbar.d.ts +54 -0
  269. package/vue/UiEditorImageToolbar.js +2 -0
  270. package/vue/UiEditorImageToolbar.vue +415 -0
  271. package/vue/UiEditorInsertTableGrid.d.ts +2 -2
  272. package/vue/UiEditorInsertTableGrid.vue +98 -266
  273. package/vue/UiEditorMentionMenu.d.ts +15 -12
  274. package/vue/UiEditorMentionMenu.vue +150 -239
  275. package/vue/UiEditorMentionMenuItem.vue +66 -110
  276. package/vue/UiEditorSlashMenu.d.ts +16 -13
  277. package/vue/UiEditorSlashMenu.vue +172 -253
  278. package/vue/UiEditorSlashMenuGroup.vue +25 -69
  279. package/vue/UiEditorSlashMenuItem.vue +67 -115
  280. package/vue/UiEditorSurface.vue +19 -63
  281. package/vue/UiEditorTableContextMenu.vue +135 -269
  282. package/vue/UiEditorTableOverlay.d.ts +2 -2
  283. package/vue/UiEditorTableOverlay.vue +310 -479
  284. package/vue/UiEditorTableToolbar.d.ts +2 -2
  285. package/vue/UiEditorTableToolbar.vue +182 -357
  286. package/vue/UiEditorToolbar.vue +143 -183
  287. package/vue/UiFloatingActionButton.vue +70 -114
  288. package/vue/UiFormField.d.ts +1 -1
  289. package/vue/UiFormField.vue +76 -117
  290. package/vue/UiGrid.d.ts +1 -1
  291. package/vue/UiGrid.vue +65 -103
  292. package/vue/UiIcon.vue +32 -106
  293. package/vue/UiIconButton.d.ts +2 -2
  294. package/vue/UiIconButton.vue +359 -411
  295. package/vue/UiImage.vue +145 -180
  296. package/vue/UiInput.vue +158 -190
  297. package/vue/UiInputGroup.vue +199 -239
  298. package/vue/UiList.vue +67 -109
  299. package/vue/UiListItem.vue +154 -201
  300. package/vue/UiListbox.d.ts +10 -7
  301. package/vue/UiListbox.vue +86 -260
  302. package/vue/UiMenu.d.ts +11 -11
  303. package/vue/UiMenu.vue +118 -152
  304. package/vue/UiMenuGroup.vue +21 -67
  305. package/vue/UiMenuItem.d.ts +19 -16
  306. package/vue/UiMenuItem.vue +169 -262
  307. package/vue/UiMeter.d.ts +4 -4
  308. package/vue/UiMeter.vue +166 -680
  309. package/vue/UiNavItem.vue +140 -213
  310. package/vue/UiPageHeader.vue +81 -127
  311. package/vue/UiPopover.d.ts +7 -7
  312. package/vue/UiPopover.vue +90 -129
  313. package/vue/UiRadio.d.ts +12 -9
  314. package/vue/UiRadio.vue +91 -149
  315. package/vue/UiRadioGroup.d.ts +2 -2
  316. package/vue/UiRadioGroup.vue +47 -85
  317. package/vue/UiReel.vue +89 -130
  318. package/vue/UiScrollArea.d.ts +1 -1
  319. package/vue/UiScrollArea.vue +78 -119
  320. package/vue/UiSearchResultRow.vue +96 -149
  321. package/vue/UiSearchShell.d.ts +2 -2
  322. package/vue/UiSearchShell.vue +159 -196
  323. package/vue/UiSection.vue +105 -149
  324. package/vue/UiSelect.d.ts +1 -1
  325. package/vue/UiSelect.vue +114 -146
  326. package/vue/UiSeparator.vue +42 -85
  327. package/vue/UiSidebar.d.ts +10 -7
  328. package/vue/UiSidebar.vue +193 -260
  329. package/vue/UiSpinner.vue +54 -130
  330. package/vue/UiStack.vue +66 -107
  331. package/vue/UiStatusMessage.d.ts +1 -1
  332. package/vue/UiStatusMessage.vue +61 -135
  333. package/vue/UiSwitch.d.ts +12 -9
  334. package/vue/UiSwitch.vue +136 -194
  335. package/vue/UiSwitcher.vue +69 -107
  336. package/vue/UiTable.vue +121 -156
  337. package/vue/UiTabs.d.ts +1 -1
  338. package/vue/UiTabs.vue +139 -267
  339. package/vue/UiText.d.ts +4 -4
  340. package/vue/UiText.vue +145 -184
  341. package/vue/UiTextarea.d.ts +2 -2
  342. package/vue/UiTextarea.vue +162 -194
  343. package/vue/UiToast.vue +70 -118
  344. package/vue/UiToastRegion.vue +157 -276
  345. package/vue/UiTooltip.d.ts +21 -18
  346. package/vue/UiTooltip.vue +174 -234
  347. package/vue/UiTopBar.vue +48 -76
  348. package/vue/UiTree.vue +46 -79
  349. package/vue/UiTreeItem.d.ts +18 -15
  350. package/vue/UiTreeItem.vue +526 -668
  351. package/vue/chunks/UiActionBar.js +5 -17
  352. package/vue/chunks/UiAffordanceScope.js +7 -26
  353. package/vue/chunks/UiAvatar.js +20 -74
  354. package/vue/chunks/UiAvatarGroup.js +14 -56
  355. package/vue/chunks/UiBadge.js +10 -28
  356. package/vue/chunks/UiBreadcrumbItem.js +11 -41
  357. package/vue/chunks/UiBreadcrumbs.js +7 -25
  358. package/vue/chunks/UiButton.js +80 -103
  359. package/vue/chunks/UiCallout.js +9 -27
  360. package/vue/chunks/UiCard.js +33 -53
  361. package/vue/chunks/UiCheckbox.js +14 -46
  362. package/vue/chunks/UiCluster.js +13 -31
  363. package/vue/chunks/UiCombobox.js +99 -237
  364. package/vue/chunks/UiContainer.js +9 -27
  365. package/vue/chunks/UiContextMenu.js +7 -26
  366. package/vue/chunks/UiCover.js +7 -25
  367. package/vue/chunks/UiDescriptionItem.js +6 -24
  368. package/vue/chunks/UiDescriptionList.js +9 -27
  369. package/vue/chunks/UiDialog.js +18 -47
  370. package/vue/chunks/UiDisclosure.js +19 -66
  371. package/vue/chunks/UiEditable.js +18 -60
  372. package/vue/chunks/UiEditorImageToolbar.js +515 -0
  373. package/vue/chunks/UiEditorInsertTableGrid.js +14 -112
  374. package/vue/chunks/UiEditorMentionMenu.js +16 -54
  375. package/vue/chunks/UiEditorMentionMenuItem.js +10 -28
  376. package/vue/chunks/UiEditorSlashMenu.js +17 -46
  377. package/vue/chunks/UiEditorSlashMenuGroup.js +7 -25
  378. package/vue/chunks/UiEditorSlashMenuItem.js +16 -31
  379. package/vue/chunks/UiEditorSurface.js +7 -25
  380. package/vue/chunks/UiEditorTableContextMenu.js +25 -102
  381. package/vue/chunks/UiEditorTableOverlay.js +41 -104
  382. package/vue/chunks/UiEditorTableToolbar.js +44 -122
  383. package/vue/chunks/UiEditorToolbar.js +7 -26
  384. package/vue/chunks/UiFloatingActionButton.js +10 -28
  385. package/vue/chunks/UiFormField.js +8 -27
  386. package/vue/chunks/UiGrid.js +10 -28
  387. package/vue/chunks/UiIcon.js +21 -74
  388. package/vue/chunks/UiIconButton.js +18 -50
  389. package/vue/chunks/UiImage.js +14 -33
  390. package/vue/chunks/UiInput.js +12 -31
  391. package/vue/chunks/UiInputGroup.js +10 -29
  392. package/vue/chunks/UiList.js +17 -37
  393. package/vue/chunks/UiListItem.js +12 -30
  394. package/vue/chunks/UiListbox.js +22 -124
  395. package/vue/chunks/UiMenu.js +13 -32
  396. package/vue/chunks/UiMenuGroup.js +8 -26
  397. package/vue/chunks/UiMenuItem.js +35 -80
  398. package/vue/chunks/UiMeter.js +17 -351
  399. package/vue/chunks/UiNavItem.js +23 -57
  400. package/vue/chunks/UiPageHeader.js +7 -25
  401. package/vue/chunks/UiPopover.js +9 -28
  402. package/vue/chunks/UiRadio.js +11 -43
  403. package/vue/chunks/UiRadioGroup.js +13 -32
  404. package/vue/chunks/UiReel.js +10 -28
  405. package/vue/chunks/UiScrollArea.js +10 -29
  406. package/vue/chunks/UiSearchResultRow.js +10 -28
  407. package/vue/chunks/UiSearchShell.js +9 -28
  408. package/vue/chunks/UiSection.js +9 -27
  409. package/vue/chunks/UiSelect.js +10 -29
  410. package/vue/chunks/UiSeparator.js +10 -28
  411. package/vue/chunks/UiSidebar.js +15 -47
  412. package/vue/chunks/UiSpinner.js +8 -44
  413. package/vue/chunks/UiStack.js +12 -30
  414. package/vue/chunks/UiStatusMessage.js +10 -42
  415. package/vue/chunks/UiSwitch.js +11 -43
  416. package/vue/chunks/UiSwitcher.js +9 -28
  417. package/vue/chunks/UiTable.js +7 -26
  418. package/vue/chunks/UiTabs.js +15 -91
  419. package/vue/chunks/UiText.js +148 -168
  420. package/vue/chunks/UiTextarea.js +16 -35
  421. package/vue/chunks/UiToast.js +13 -37
  422. package/vue/chunks/UiToastRegion.js +16 -88
  423. package/vue/chunks/UiTooltip.js +14 -46
  424. package/vue/chunks/UiTopBar.js +5 -17
  425. package/vue/chunks/UiTree.js +13 -32
  426. package/vue/chunks/UiTreeItem.js +34 -90
  427. package/vue/chunks/_plugin-vue_export-helper.js +904 -1
  428. package/vue/chunks/control.js +3 -0
  429. package/vue/chunks/props.js +1 -1
  430. package/vue/components.css +7902 -7830
  431. package/vue/editor/index.js +42 -171
  432. package/vue/editor/primitives.d.ts +9 -1
  433. package/vue/host.ts +999 -14
  434. package/vue/index.d.ts +1 -0
  435. package/vue/index.js +9 -8
  436. package/vue/chunks/host.js +0 -443
  437. package/vue/editor/image-controls.d.ts +0 -19
@@ -1,16 +1,18 @@
1
- <!-- Generated by HTML Next 1.0.0-alpha.35 for Vue 3.5. Do not edit. -->
1
+ <!-- Generated by HTML Next 1.0.0-alpha.51 for Vue 3.5. Do not edit. -->
2
2
  <script setup lang="ts">
3
+ import { computed, getCurrentInstance, provide, ref, watchSyncEffect } from 'vue'
4
+ import type { PropType } from 'vue'
3
5
  import {
4
- computed,
5
- defineComponent,
6
- getCurrentInstance,
7
- h,
8
- provide,
9
- ref,
10
- watchSyncEffect,
11
- } from 'vue'
12
- import type { PropType, VNode } from 'vue'
13
- import { createDispatch, useComponentHost } from './host'
6
+ attribute,
7
+ checkHydratedRoot,
8
+ concat,
9
+ createDispatch,
10
+ KeyedBoundary,
11
+ nativeAttrs,
12
+ uniqueKeys,
13
+ useComponentHost,
14
+ useReflectedProp,
15
+ } from './host'
14
16
  import { acceptsControllerWrite } from './props'
15
17
  import { checkedProp, propValidityState, vPropValidity } from './props'
16
18
  import UiIcon from './UiIcon.vue'
@@ -252,64 +254,7 @@ void checkedProps.value
252
254
  watchSyncEffect(() => {
253
255
  void checkedProps.value
254
256
  })
255
- function nativeAttrs(attrs: Record<string, unknown>): Record<string, unknown> {
256
- const names = Object.keys(attrs)
257
- if (!names.some((name) => Object.hasOwn(Object.prototype, name))) return attrs
258
- return Object.fromEntries(names.map((name) => [
259
- Object.hasOwn(Object.prototype, name)
260
- ? name === '__proto__' ? '__Proto__' : name[0]!.toUpperCase() + name.slice(1)
261
- : name,
262
- attrs[name],
263
- ]))
264
- }
265
- const KeyedFailure = defineComponent({
266
- props: { error: { type: null, required: true } },
267
- setup(props) {
268
- return () => {
269
- throw props.error
270
- }
271
- },
272
- })
273
- const KeyedBoundary = defineComponent({
274
- setup(_props, { slots }) {
275
- let last: VNode[] = []
276
- return () => {
277
- try {
278
- last = slots.default?.() ?? []
279
- return last
280
- } catch (error) {
281
- if (
282
- !(error instanceof Error)
283
- || (error as Error & { diagnostic?: { code?: string } }).diagnostic?.code !== 'HR004'
284
- ) throw error
285
- if (typeof window === 'undefined') throw error
286
- return [...last, h(KeyedFailure, { error })]
287
- }
288
- }
289
- },
290
- })
291
- const componentInstance = getCurrentInstance()
292
- function reflectedProp(
293
- name: string,
294
- kebab: string,
295
- value: unknown,
296
- fallback: string | undefined,
297
- bound: boolean,
298
- separator?: string,
299
- ): string | undefined {
300
- const incoming = componentInstance?.vnode.props
301
- if (
302
- !bound
303
- && (incoming === null || incoming === undefined
304
- || (!Object.hasOwn(incoming, name) && !Object.hasOwn(incoming, kebab)))
305
- ) return fallback
306
- if (value === null || value === undefined) return undefined
307
- return Array.isArray(value) && separator !== undefined
308
- ? value.join(separator)
309
- : typeof value === 'object'
310
- ? JSON.stringify(value)
311
- : String(value)
312
- }
257
+ const reflectedProp = useReflectedProp()
313
258
  const hydrationInstance = getCurrentInstance()
314
259
  const emit = defineEmits<{
315
260
  action: [
@@ -363,22 +308,7 @@ const sections = ref<
363
308
  >([])
364
309
  provide('html-next:ui-editor-table-context-menu:swatches', swatches)
365
310
  provide('html-next:ui-editor-table-context-menu:sections', sections)
366
- const hydrationNode = hydrationInstance?.vnode.el
367
- if (
368
- typeof window !== 'undefined' && hydrationNode != null
369
- && (!(hydrationNode instanceof Element) || hydrationNode.localName !== ('div'))
370
- ) {
371
- throw Object.assign(
372
- new Error('HR005: Server markup for <ui-editor-table-context-menu> has an incompatible root.'),
373
- {
374
- name: 'HtmlDiagnosticError',
375
- diagnostic: Object.freeze({
376
- code: 'HR005',
377
- message: 'Server markup for <ui-editor-table-context-menu> has an incompatible root.',
378
- }),
379
- },
380
- )
381
- }
311
+ checkHydratedRoot('div', 'ui-editor-table-context-menu')
382
312
 
383
313
  const isActionDetail = (
384
314
  detail: unknown,
@@ -505,70 +435,11 @@ useComponentHost(
505
435
  state: { swatches, sections },
506
436
  },
507
437
  )
508
-
509
- function text(value: unknown): string {
510
- if (Array.isArray(value)) return value.map(text).join(' ')
511
- return value === null || value === undefined || typeof value === 'object' ? '' : String(value)
512
- }
513
-
514
- function attribute(value: unknown): any {
515
- if (
516
- value === null || value === undefined || value === false
517
- || (typeof value === 'object' && !Array.isArray(value))
518
- ) return undefined
519
- return value === true ? '' : text(value)
520
- }
521
-
522
- // A nonempty scalar call cannot produce the invalid-result sentinel.
523
- type ConcatResult<T extends unknown[]> = T extends
524
- [
525
- string | number | boolean | null | undefined,
526
- ...(string | number | boolean | null | undefined)[],
527
- ] ? string | undefined
528
- : string | symbol | undefined
529
- function concat<T extends unknown[]>(...values: T): ConcatResult<T> {
530
- if (values.some(value => value === Symbol.for('html-next.invalid-result'))) {
531
- return Symbol.for('html-next.invalid-result') as ConcatResult<T>
532
- }
533
- if (values.some(value => value === undefined)) return undefined as ConcatResult<T>
534
- if (values.length === 0 || values.some(value => typeof value === 'object' && value !== null)) {
535
- return Symbol.for('html-next.invalid-result') as ConcatResult<T>
536
- }
537
- return values.map(value => value === null ? '' : String(value)).join('') as ConcatResult<T>
538
- }
539
-
540
- function uniqueKeys<T>(
541
- items: readonly T[],
542
- keyOf: (
543
- item: T,
544
- index: number,
545
- loop: { index: number; first: boolean; last: boolean; count: number },
546
- ) => unknown,
547
- ): readonly T[] {
548
- const seen = new Set<unknown>()
549
- for (let index = 0; index < items.length; index += 1) {
550
- const key = keyOf(items[index]!, index, {
551
- index,
552
- first: index === 0,
553
- last: index === items.length - 1,
554
- count: items.length,
555
- })
556
- if (seen.has(key)) {
557
- const message = `A keyed list produced duplicate key \`${text(key)}\`.`
558
- throw Object.assign(new Error(`HR004: ${message}`), {
559
- name: 'HtmlDiagnosticError',
560
- diagnostic: Object.freeze({ code: 'HR004', message }),
561
- })
562
- }
563
- seen.add(key)
564
- }
565
- return items
566
- }
567
438
  </script>
568
439
 
569
440
  <template>
570
441
  <div
571
- data-component="ui-editor-table-context-menu"
442
+ class="ui-editor-table-context-menu"
572
443
  role="menu"
573
444
  v-bind="nativeAttrs($attrs)"
574
445
  :hidden="!checkedProps.open"
@@ -646,7 +517,7 @@ function uniqueKeys<T>(
646
517
  :data-action="item.action"
647
518
  :class="{ danger: item.danger }"
648
519
  >
649
- <UiIcon :name="item.icon" />
520
+ <UiIcon class="ui-icon" :name="item.icon" />
650
521
  <span>{{ item.label }}</span>
651
522
  </button></KeyedBoundary>
652
523
  </div></template></KeyedBoundary>
@@ -654,138 +525,133 @@ function uniqueKeys<T>(
654
525
  </template>
655
526
 
656
527
  <style scoped>
657
- [data-component~="ui-editor-table-context-menu"][popover] {
658
- position: fixed;
659
- inset: auto;
660
- margin: 0;
661
- }
662
-
663
- [data-component~="ui-editor-table-context-menu"] {
664
- /* The max-width is a promise about the menu's footprint, so it counts padding and border. */
665
- box-sizing: border-box;
666
- min-width: min(14rem, calc(100vw - 24px));
667
- max-width: min(17rem, calc(100vw - 24px));
668
- max-height: min(28rem, calc(100vh - 24px));
669
- padding: var(--ui-space-2);
670
- background: var(--ui-surface);
671
- border: var(--ui-border-width) solid var(--ui-border-strong);
672
- border-radius: var(--ui-radius-lg);
673
- box-shadow: var(--ui-shadow-lg, 0 10px 15px -3px rgb(0 0 0 / 0.1));
674
- display: flex;
675
- flex-direction: column;
676
- gap: 2px;
677
- overflow-y: auto;
678
- overscroll-behavior: contain;
679
- scrollbar-width: thin;
680
- }
681
-
682
- .section {
683
- display: flex;
684
- flex-direction: column;
685
- gap: 3px;
686
- }
687
-
688
- [data-component~="ui-editor-table-context-menu"] button {
689
- display: flex;
690
- align-items: center;
691
- gap: var(--ui-space-2);
692
- width: 100%;
693
- text-align: left;
694
- min-height: 32px;
695
- padding: var(--ui-space-2) var(--ui-space-2);
696
- border: none;
697
- border-radius: var(--ui-radius-sm);
698
- background: none;
699
- font-size: var(--ui-font-size-sm);
700
- cursor: pointer;
701
- color: var(--ui-text);
702
- }
703
-
704
- [data-component~="ui-editor-table-context-menu"] button {
705
- --_ui-default-icon-size: 1rem;
706
- --_ui-default-icon-stroke-width: var(--ui-editor-toolbar-icon-stroke-width, 1.75);
707
- }
708
-
709
- [data-component~="ui-editor-table-context-menu"] button:hover:not(:disabled) {
710
- background: var(--ui-surface-hover);
711
- }
712
-
713
- [data-component~="ui-editor-table-context-menu"] button.selected {
714
- background: var(--ui-accent-subtle, rgb(59 130 246 / 0.1));
715
- }
716
-
717
- [data-component~="ui-editor-table-context-menu"] button.danger {
718
- color: var(--ui-danger);
719
- }
720
-
721
528
  /* Swatches wrap like words: the row asks for the menu's full width, and a narrower menu fits fewer. */
722
- .swatches {
723
- display: flex;
724
- flex-wrap: wrap;
725
- gap: 3px;
726
- }
727
529
 
728
530
  /* Three to a row at the menu's full width; 5rem keeps the longest label, "Default", whole. */
729
- [data-component~="ui-editor-table-context-menu"] .swatch-button {
730
- display: inline-flex;
731
- align-items: center;
732
- gap: var(--ui-space-2);
733
- flex: 1 0 5rem;
734
- min-width: 5rem;
735
- max-width: calc((100% - 6px) / 3);
736
- padding-inline-end: var(--ui-space-1);
737
- }
738
531
 
739
- .swatch {
740
- display: inline-flex;
741
- width: 1rem;
742
- height: 1rem;
743
- border-radius: var(--ui-radius-round);
744
- border: var(--ui-border-width) solid var(--ui-border);
745
- background: var(--_swatch, #fff);
746
- box-shadow: inset 0 0 0 1px rgb(255 255 255 / 0.35);
747
- flex-shrink: 0;
748
- }
532
+ /* Separators divide sections, so none sits above the first. */
749
533
 
750
- .swatch.default {
751
- position: relative;
752
- background:
753
- linear-gradient(
754
- 135deg,
755
- transparent calc(50% - 1px),
756
- var(--ui-text-muted) calc(50% - 1px),
757
- var(--ui-text-muted) calc(50% + 1px),
758
- transparent calc(50% + 1px)
759
- ),
760
- var(--ui-surface);
761
- }
534
+ @scope (.ui-editor-table-context-menu) to (.ui-icon) {
535
+ :scope:where(:scope):is([popover]) {
536
+ position: fixed;
537
+ inset: auto;
538
+ margin: 0;
539
+ }
540
+ :scope:where(:scope) {
541
+ /* The max-width is a promise about the menu's footprint, so it counts padding and border. */
542
+ box-sizing: border-box;
543
+ min-width: min(14rem, calc(100vw - 24px));
544
+ max-width: min(17rem, calc(100vw - 24px));
545
+ max-height: min(28rem, calc(100vh - 24px));
546
+ padding: var(--ui-space-2);
547
+ background: var(--ui-surface);
548
+ border: var(--ui-border-width) solid var(--ui-border-strong);
549
+ border-radius: var(--ui-radius-lg);
550
+ box-shadow: var(--ui-shadow-lg, 0 10px 15px -3px rgb(0 0 0 / 0.1));
551
+ display: flex;
552
+ flex-direction: column;
553
+ gap: 2px;
554
+ overflow-y: auto;
555
+ overscroll-behavior: contain;
556
+ scrollbar-width: thin;
557
+ }
558
+ .section {
559
+ display: flex;
560
+ flex-direction: column;
561
+ gap: 3px;
562
+ }
563
+ :scope button {
564
+ display: flex;
565
+ align-items: center;
566
+ gap: var(--ui-space-2);
567
+ width: 100%;
568
+ text-align: left;
569
+ min-height: 32px;
570
+ padding: var(--ui-space-2) var(--ui-space-2);
571
+ border: none;
572
+ border-radius: var(--ui-radius-sm);
573
+ background: none;
574
+ font-size: var(--ui-font-size-sm);
575
+ cursor: pointer;
576
+ color: var(--ui-text);
577
+ }
578
+ :scope button {
579
+ --_ui-default-icon-size: 1rem;
580
+ --_ui-default-icon-stroke-width: var(--ui-editor-toolbar-icon-stroke-width, 1.75);
581
+ }
582
+ :scope button:hover:not(:disabled) {
583
+ background: var(--ui-surface-hover);
584
+ }
585
+ :scope button.selected {
586
+ background: var(--ui-accent-subtle, rgb(59 130 246 / 0.1));
587
+ }
588
+ :scope button.danger {
589
+ color: var(--ui-danger);
590
+ }
591
+ .swatches {
592
+ display: flex;
593
+ flex-wrap: wrap;
594
+ gap: 3px;
595
+ }
596
+ :scope .swatch-button {
597
+ display: inline-flex;
598
+ align-items: center;
599
+ gap: var(--ui-space-2);
600
+ flex: 1 0 5rem;
601
+ min-width: 5rem;
602
+ max-width: calc((100% - 6px) / 3);
603
+ padding-inline-end: var(--ui-space-1);
604
+ }
762
605
 
763
- .swatch-label {
764
- min-width: 0;
765
- white-space: nowrap;
766
- }
606
+ .swatch {
607
+ display: inline-flex;
608
+ width: 1rem;
609
+ height: 1rem;
610
+ border-radius: var(--ui-radius-round);
611
+ border: var(--ui-border-width) solid var(--ui-border);
612
+ background: var(--_swatch, #fff);
613
+ box-shadow: inset 0 0 0 1px rgb(255 255 255 / 0.35);
614
+ flex-shrink: 0;
615
+ }
767
616
 
768
- .heading {
769
- padding: var(--ui-space-1) var(--ui-space-2);
770
- font-size: var(--ui-font-size-2xs);
771
- font-weight: 700;
772
- letter-spacing: 0.05em;
773
- text-transform: uppercase;
774
- color: var(--ui-text-muted);
775
- }
617
+ .swatch.default {
618
+ position: relative;
619
+ background:
620
+ linear-gradient(
621
+ 135deg,
622
+ transparent calc(50% - 1px),
623
+ var(--ui-text-muted) calc(50% - 1px),
624
+ var(--ui-text-muted) calc(50% + 1px),
625
+ transparent calc(50% + 1px)
626
+ ),
627
+ var(--ui-surface);
628
+ }
776
629
 
777
- .sep {
778
- height: 1px;
779
- background: var(--ui-border-divider);
780
- margin: var(--ui-space-1) 0;
781
- }
630
+ .swatch-label {
631
+ min-width: 0;
632
+ white-space: nowrap;
633
+ }
782
634
 
783
- /* Separators divide sections, so none sits above the first. */
784
- .sep:first-child {
785
- display: none;
786
- }
635
+ .heading {
636
+ padding: var(--ui-space-1) var(--ui-space-2);
637
+ font-size: var(--ui-font-size-2xs);
638
+ font-weight: 700;
639
+ letter-spacing: 0.05em;
640
+ text-transform: uppercase;
641
+ color: var(--ui-text-muted);
642
+ }
787
643
 
788
- [data-component~="ui-editor-table-context-menu"][hidden] {
789
- display: none;
644
+ .sep {
645
+ height: 1px;
646
+ background: var(--ui-border-divider);
647
+ margin: var(--ui-space-1) 0;
648
+ }
649
+ .sep:first-child {
650
+ display: none;
651
+ }
652
+
653
+ :scope:where(:scope):is([hidden]) {
654
+ display: none;
655
+ }
790
656
  }
791
657
  </style>
@@ -1,6 +1,4 @@
1
1
  import type { PropType } from 'vue';
2
- declare const _default: typeof __VLS_export;
3
- export default _default;
4
2
  declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
5
3
  geometry: {
6
4
  type: PropType<{
@@ -198,3 +196,5 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
198
196
  } | null;
199
197
  } | null;
200
198
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
199
+ declare const _default: typeof __VLS_export;
200
+ export default _default;