@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
package/vue/UiInput.vue CHANGED
@@ -1,4 +1,4 @@
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
3
3
  setup
4
4
  lang="ts"
@@ -23,7 +23,13 @@
23
23
  import { computed, getCurrentInstance, ref, watchSyncEffect } from 'vue'
24
24
  import type { PropType } from 'vue'
25
25
  import { readBoundControl, vBindControl } from './control'
26
- import { createDispatch, useComponentHost } from './host'
26
+ import {
27
+ checkHydratedRoot,
28
+ createDispatch,
29
+ nativeAttrs,
30
+ useComponentHost,
31
+ useReflectedProp,
32
+ } from './host'
27
33
  import { checkedProp, propValidityState, selectedPropNode, vPropValidity } from './props'
28
34
 
29
35
  defineOptions({ inheritAttrs: false })
@@ -345,38 +351,7 @@ void checkedProps.value
345
351
  watchSyncEffect(() => {
346
352
  void checkedProps.value
347
353
  })
348
- function nativeAttrs(attrs: Record<string, unknown>): Record<string, unknown> {
349
- const names = Object.keys(attrs)
350
- if (!names.some((name) => Object.hasOwn(Object.prototype, name))) return attrs
351
- return Object.fromEntries(names.map((name) => [
352
- Object.hasOwn(Object.prototype, name)
353
- ? name === '__proto__' ? '__Proto__' : name[0]!.toUpperCase() + name.slice(1)
354
- : name,
355
- attrs[name],
356
- ]))
357
- }
358
- const componentInstance = getCurrentInstance()
359
- function reflectedProp(
360
- name: string,
361
- kebab: string,
362
- value: unknown,
363
- fallback: string | undefined,
364
- bound: boolean,
365
- separator?: string,
366
- ): string | undefined {
367
- const incoming = componentInstance?.vnode.props
368
- if (
369
- !bound
370
- && (incoming === null || incoming === undefined
371
- || (!Object.hasOwn(incoming, name) && !Object.hasOwn(incoming, kebab)))
372
- ) return fallback
373
- if (value === null || value === undefined) return undefined
374
- return Array.isArray(value) && separator !== undefined
375
- ? value.join(separator)
376
- : typeof value === 'object'
377
- ? JSON.stringify(value)
378
- : String(value)
379
- }
354
+ const reflectedProp = useReflectedProp()
380
355
  const hydrationInstance = getCurrentInstance()
381
356
  const emit = defineEmits<{
382
357
  'update:modelValue': [
@@ -423,19 +398,7 @@ const model = computed({
423
398
  })
424
399
 
425
400
  const root = ref<HTMLElement | null>(null)
426
- const hydrationNode = hydrationInstance?.vnode.el
427
- if (
428
- typeof window !== 'undefined' && hydrationNode != null
429
- && (!(hydrationNode instanceof Element) || hydrationNode.localName !== ('input'))
430
- ) {
431
- throw Object.assign(new Error('HR005: Server markup for <ui-input> has an incompatible root.'), {
432
- name: 'HtmlDiagnosticError',
433
- diagnostic: Object.freeze({
434
- code: 'HR005',
435
- message: 'Server markup for <ui-input> has an incompatible root.',
436
- }),
437
- })
438
- }
401
+ checkHydratedRoot('input', 'ui-input')
439
402
 
440
403
  /** The values the styles' :host-state() rules test. */
441
404
  const hostState = computed(() =>
@@ -473,7 +436,7 @@ useComponentHost(() => import('../components/ui-input/ui-input.js'), {
473
436
 
474
437
  <template>
475
438
  <input
476
- data-component="ui-input"
439
+ class="ui-input"
477
440
  v-bind="nativeAttrs($attrs)"
478
441
  :type="checkedProps.type ?? undefined"
479
442
  :disabled="checkedProps.disabled ?? undefined"
@@ -553,172 +516,177 @@ useComponentHost(() => import('../components/ui-input/ui-input.js'), {
553
516
  inherits: false;
554
517
  }
555
518
 
556
- [data-component~="ui-input"] {
557
- box-sizing: border-box;
558
- display: inline-block;
559
- inline-size: var(--ui-input-inline-size, 100%);
560
- min-inline-size: 0;
561
- min-block-size: var(
562
- --ui-input-min-block-size,
563
- var(--_ui-default-input-min-block-size, var(--ui-control-size-md))
564
- );
565
- margin: 0;
566
- padding: var(--ui-space-2) var(--ui-space-3);
567
- appearance: none;
568
- padding-inline-start: var(--_ui-default-input-padding-inline-start, var(--ui-space-3));
569
- border: var(
570
- --ui-input-border-width,
571
- var(--_ui-default-input-border-width, var(--ui-border-width))
572
- ) solid
573
- var(
574
- --ui-input-border,
575
- var(--_ui-default-input-border, var(--ui-control-border, var(--ui-border-strong)))
576
- );
577
- border-radius: var(
578
- --ui-input-radius,
579
- var(--_ui-default-input-radius, var(--ui-field-radius, var(--ui-radius-md)))
580
- );
581
- background: var(
582
- --ui-input-surface,
583
- var(--_ui-default-input-surface, var(--ui-control-surface, var(--ui-surface-elevated)))
584
- );
585
- color: var(--ui-text-primary);
586
- font: inherit;
587
- line-height: var(--ui-line-height-tight);
588
- box-shadow: var(--ui-input-shadow, var(--_ui-default-input-shadow, var(--ui-control-inset)));
589
- transition:
590
- border-color var(--ui-motion-fast) var(--ui-motion-ease),
591
- box-shadow var(--ui-motion-fast) var(--ui-motion-ease),
592
- background-color var(--ui-motion-fast) var(--ui-motion-ease);
593
- }
594
-
595
519
  /* Each size reads the hook and then an Input Group's default first, so a group, which draws the frame, can zero it. */
596
- [data-component~="ui-input"][data-ui-input-state~="size=sm"] {
597
- min-block-size: var(
598
- --ui-input-min-block-size,
599
- var(--_ui-default-input-min-block-size, var(--ui-control-size-sm))
600
- );
601
- padding: var(--ui-space-1) var(--ui-space-2);
602
- font-size: var(--ui-font-size-sm);
603
- }
604
-
605
- [data-component~="ui-input"][data-ui-input-state~="size=lg"] {
606
- min-block-size: var(
607
- --ui-input-min-block-size,
608
- var(--_ui-default-input-min-block-size, var(--ui-control-size-lg))
609
- );
610
- padding: var(--ui-space-3) var(--ui-space-4);
611
- font-size: var(--ui-font-size-md);
612
- }
613
520
 
614
521
  /* Under touch a small field is still a touch-sized target, as a small button is, and keeps
615
522
  body-size text: below 16px, iOS zooms the page into the focused field. */
616
- @media (pointer: coarse) {
617
- [data-component~="ui-input"] {
523
+
524
+ /* Tabbing into a field selects its text; tint that selection softly instead of the page highlight. */
525
+
526
+ /* The app's invalid flag, or the browser's own verdict once the user has left an invalid field. */
527
+
528
+ /* Forced colors drop box shadows, so the focus ring becomes an outline. */
529
+
530
+ /* No text-box-trim here: trimming a native input's line box below its line height lets the text
531
+ * scroll vertically inside the field. Native inputs already center their single line. */
532
+
533
+ /* A component that sets its display still honours the hidden attribute on its root. */
534
+
535
+ @scope (.ui-input) {
536
+ :scope:where(:scope) {
537
+ box-sizing: border-box;
538
+ display: inline-block;
539
+ inline-size: var(--ui-input-inline-size, 100%);
540
+ min-inline-size: 0;
618
541
  min-block-size: var(
619
542
  --ui-input-min-block-size,
543
+ var(--_ui-default-input-min-block-size, var(--ui-control-size-md))
544
+ );
545
+ margin: 0;
546
+ padding: var(--ui-space-2) var(--ui-space-3);
547
+ appearance: none;
548
+ padding-inline-start: var(--_ui-default-input-padding-inline-start, var(--ui-space-3));
549
+ border: var(
550
+ --ui-input-border-width,
551
+ var(--_ui-default-input-border-width, var(--ui-border-width))
552
+ ) solid
620
553
  var(
621
- --_ui-default-input-min-block-size,
622
- max(var(--ui-control-size-md), var(--ui-control-min-block-size))
623
- )
554
+ --ui-input-border,
555
+ var(--_ui-default-input-border, var(--ui-control-border, var(--ui-border-strong)))
556
+ );
557
+ border-radius: var(
558
+ --ui-input-radius,
559
+ var(--_ui-default-input-radius, var(--ui-field-radius, var(--ui-radius-md)))
624
560
  );
561
+ background: var(
562
+ --ui-input-surface,
563
+ var(--_ui-default-input-surface, var(--ui-control-surface, var(--ui-surface-elevated)))
564
+ );
565
+ color: var(--ui-text-primary);
566
+ font: inherit;
567
+ line-height: var(--ui-line-height-tight);
568
+ box-shadow: var(--ui-input-shadow, var(--_ui-default-input-shadow, var(--ui-control-inset)));
569
+ transition:
570
+ border-color var(--ui-motion-fast) var(--ui-motion-ease),
571
+ box-shadow var(--ui-motion-fast) var(--ui-motion-ease),
572
+ background-color var(--ui-motion-fast) var(--ui-motion-ease);
625
573
  }
626
-
627
- [data-component~="ui-input"],
628
- [data-component~="ui-input"][data-ui-input-state~="size=sm"],
629
- [data-component~="ui-input"][data-ui-input-state~="size=lg"] {
630
- font-size: var(--ui-font-size-md);
574
+ :scope:where(:scope):is([data-ui-input-state~="size=sm"]) {
575
+ min-block-size: var(
576
+ --ui-input-min-block-size,
577
+ var(--_ui-default-input-min-block-size, var(--ui-control-size-sm))
578
+ );
579
+ padding: var(--ui-space-1) var(--ui-space-2);
580
+ font-size: var(--ui-font-size-sm);
631
581
  }
632
582
 
633
- [data-component~="ui-input"][data-ui-input-state~="size=sm"] {
583
+ :scope:where(:scope):is([data-ui-input-state~="size=lg"]) {
634
584
  min-block-size: var(
635
585
  --ui-input-min-block-size,
636
- var(--_ui-default-input-min-block-size, var(--ui-control-min-block-size))
586
+ var(--_ui-default-input-min-block-size, var(--ui-control-size-lg))
637
587
  );
588
+ padding: var(--ui-space-3) var(--ui-space-4);
589
+ font-size: var(--ui-font-size-md);
638
590
  }
639
- }
640
-
641
- /* Tabbing into a field selects its text; tint that selection softly instead of the page highlight. */
642
- [data-component~="ui-input"]::selection {
643
- background: color-mix(in srgb, var(--ui-accent-solid) 20%, transparent);
644
- color: inherit;
645
- }
591
+ @media (pointer: coarse) {
592
+ :scope:where(:scope) {
593
+ min-block-size: var(
594
+ --ui-input-min-block-size,
595
+ var(
596
+ --_ui-default-input-min-block-size,
597
+ max(var(--ui-control-size-md), var(--ui-control-min-block-size))
598
+ )
599
+ );
600
+ }
646
601
 
647
- [data-component~="ui-input"]::placeholder {
648
- color: var(--ui-control-placeholder, var(--ui-text-secondary));
649
- opacity: 1;
650
- }
602
+ :scope:where(:scope),
603
+ :scope:where(:scope):is([data-ui-input-state~="size=sm"]),
604
+ :scope:where(:scope):is([data-ui-input-state~="size=lg"]) {
605
+ font-size: var(--ui-font-size-md);
606
+ }
651
607
 
652
- [data-component~="ui-input"]:hover:not(:focus):not(:disabled):not(:read-only):not([aria-invalid="true"]):not(:is(:user-invalid, [data-user-invalid])) {
653
- border-color: var(
654
- --ui-input-border-hover,
655
- var(--_ui-default-input-border-hover, var(--ui-control-border-hover, var(--ui-text-secondary)))
656
- );
657
- }
658
-
659
- [data-component~="ui-input"]:focus-visible {
660
- border-color: var(
661
- --ui-input-focus-border,
662
- var(--_ui-default-input-focus-border, var(--ui-control-focus, var(--ui-accent-solid)))
663
- );
664
- outline: none;
665
- box-shadow: var(
666
- --ui-input-focus-shadow,
667
- var(
668
- --_ui-default-input-focus-shadow,
669
- var(--ui-control-inset),
670
- var(--ui-control-focus-halo-shadow)
671
- )
672
- );
673
- }
608
+ :scope:where(:scope):is([data-ui-input-state~="size=sm"]) {
609
+ min-block-size: var(
610
+ --ui-input-min-block-size,
611
+ var(--_ui-default-input-min-block-size, var(--ui-control-min-block-size))
612
+ );
613
+ }
614
+ }
615
+ :scope:where(:scope)::selection {
616
+ background: color-mix(in srgb, var(--ui-accent-solid) 20%, transparent);
617
+ color: inherit;
618
+ }
674
619
 
675
- /* The app's invalid flag, or the browser's own verdict once the user has left an invalid field. */
676
- [data-component~="ui-input"][aria-invalid="true"],
677
- [data-component~="ui-input"]:is(:user-invalid, [data-user-invalid]) {
678
- border-color: var(
679
- --ui-input-invalid-border,
680
- var(--_ui-default-input-invalid-border, var(--ui-field-danger, var(--ui-danger-solid)))
681
- );
682
- }
620
+ :scope:where(:scope)::placeholder {
621
+ color: var(--ui-control-placeholder, var(--ui-text-secondary));
622
+ opacity: 1;
623
+ }
683
624
 
684
- [data-component~="ui-input"]:is([aria-invalid="true"], :is(:user-invalid, [data-user-invalid])):focus-visible {
685
- box-shadow: var(
686
- --ui-input-invalid-focus-shadow,
687
- var(
688
- --_ui-default-input-invalid-focus-shadow,
689
- var(--ui-control-inset),
690
- 0 0 0 calc(var(--ui-focus-width) * 1.5) color-mix(
691
- in srgb,
692
- var(--ui-input-invalid-border, var(--ui-field-danger, var(--ui-danger-solid))) 22%,
693
- transparent
625
+ :scope:where(:scope):is(:hover:not(:focus):not(:disabled):not(:read-only):not([aria-invalid="true"]):not(:is(:user-invalid, [data-user-invalid]))) {
626
+ border-color: var(
627
+ --ui-input-border-hover,
628
+ var(
629
+ --_ui-default-input-border-hover,
630
+ var(--ui-control-border-hover, var(--ui-text-secondary))
694
631
  )
695
- )
696
- );
697
- }
698
-
699
- [data-component~="ui-input"]:disabled {
700
- background: var(--ui-control-surface-disabled, var(--ui-surface-muted));
701
- color: var(--ui-disabled-text);
702
- box-shadow: none;
703
- cursor: not-allowed;
704
- }
632
+ );
633
+ }
705
634
 
706
- /* Forced colors drop box shadows, so the focus ring becomes an outline. */
707
- @media (forced-colors: active) {
708
- [data-component~="ui-input"]:focus-visible {
709
- outline: var(
710
- --ui-input-focus-outline,
711
- var(--_ui-default-input-focus-outline, var(--ui-focus-width) solid Highlight)
635
+ :scope:where(:scope):is(:focus-visible) {
636
+ border-color: var(
637
+ --ui-input-focus-border,
638
+ var(--_ui-default-input-focus-border, var(--ui-control-focus, var(--ui-accent-solid)))
639
+ );
640
+ outline: none;
641
+ box-shadow: var(
642
+ --ui-input-focus-shadow,
643
+ var(
644
+ --_ui-default-input-focus-shadow,
645
+ var(--ui-control-inset),
646
+ var(--ui-control-focus-halo-shadow)
647
+ )
648
+ );
649
+ }
650
+ :scope:where(:scope):is([aria-invalid="true"]),
651
+ :scope:where(:scope):is(:is(:user-invalid, [data-user-invalid])) {
652
+ border-color: var(
653
+ --ui-input-invalid-border,
654
+ var(--_ui-default-input-invalid-border, var(--ui-field-danger, var(--ui-danger-solid)))
712
655
  );
713
- outline-offset: var(--ui-border-width);
714
656
  }
715
- }
716
657
 
717
- /* No text-box-trim here: trimming a native input's line box below its line height lets the text
718
- * scroll vertically inside the field. Native inputs already center their single line. */
658
+ :scope:where(:scope):is(:is([aria-invalid="true"], :is(:user-invalid, [data-user-invalid])):focus-visible) {
659
+ box-shadow: var(
660
+ --ui-input-invalid-focus-shadow,
661
+ var(
662
+ --_ui-default-input-invalid-focus-shadow,
663
+ var(--ui-control-inset),
664
+ 0 0 0 calc(var(--ui-focus-width) * 1.5) color-mix(
665
+ in srgb,
666
+ var(--ui-input-invalid-border, var(--ui-field-danger, var(--ui-danger-solid))) 22%,
667
+ transparent
668
+ )
669
+ )
670
+ );
671
+ }
719
672
 
720
- /* A component that sets its display still honours the hidden attribute on its root. */
721
- [data-component~="ui-input"][hidden] {
722
- display: none;
673
+ :scope:where(:scope):is(:disabled) {
674
+ background: var(--ui-control-surface-disabled, var(--ui-surface-muted));
675
+ color: var(--ui-disabled-text);
676
+ box-shadow: none;
677
+ cursor: not-allowed;
678
+ }
679
+ @media (forced-colors: active) {
680
+ :scope:where(:scope):is(:focus-visible) {
681
+ outline: var(
682
+ --ui-input-focus-outline,
683
+ var(--_ui-default-input-focus-outline, var(--ui-focus-width) solid Highlight)
684
+ );
685
+ outline-offset: var(--ui-border-width);
686
+ }
687
+ }
688
+ :scope:where(:scope):is([hidden]) {
689
+ display: none;
690
+ }
723
691
  }
724
692
  </style>