@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,6 +1,6 @@
1
- import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
1
+ import { a as concat, c as decimalMultiply, f as math, i as checkHydratedRoot, l as decimalSubtract, m as number, p as nativeAttrs, r as attribute, s as cycleCheckedComputed, t as _plugin_vue_export_helper_default, u as formatValue, v as useReflectedProp } from "./_plugin-vue_export-helper.js";
2
2
  import { a as vPropValidity, n as checkedProp } from "./props.js";
3
- import { Fragment, computed, createCommentVNode, createElementBlock, defineComponent, getCurrentInstance, mergeProps, normalizeStyle, openBlock, renderList, unref, watchSyncEffect, withDirectives } from "vue";
3
+ import { Fragment, computed, createCommentVNode, createElementBlock, defineComponent, mergeProps, normalizeStyle, openBlock, renderList, unref, watchSyncEffect, withDirectives } from "vue";
4
4
  //#region .build/vue/UiMeter.vue?vue&type=script&setup=true&lang.ts
5
5
  var _hoisted_1 = [
6
6
  "role",
@@ -21,227 +21,6 @@ var _hoisted_1 = [
21
21
  "data-variant",
22
22
  "data-ui-meter-state"
23
23
  ];
24
- function createFormatValue() {
25
- const cache = /* @__PURE__ */ new Map();
26
- function formatterFor(name, locale, options) {
27
- const constructor = Reflect.get(Intl, name);
28
- if (name === "DateTimeFormat" && options.timeZone === void 0) return new constructor(locale, options);
29
- const entries = [];
30
- for (const key of Object.keys(options).sort()) {
31
- const value = options[key];
32
- if (value === void 0) continue;
33
- if (value !== null && typeof value !== "string" && typeof value !== "boolean" && typeof value !== "number" || typeof value === "number" && !Number.isFinite(value)) return new constructor(locale, options);
34
- entries.push([
35
- key,
36
- typeof value,
37
- Object.is(value, -0) ? "-0" : value
38
- ]);
39
- }
40
- const language = locale === void 0 && typeof navigator !== "undefined" ? navigator.language : void 0;
41
- const key = JSON.stringify([
42
- name,
43
- locale,
44
- language,
45
- entries
46
- ]);
47
- if (key.length > 4096) return new constructor(locale, options);
48
- const cached = cache.get(key);
49
- if (cached !== void 0 && cached.constructor === constructor) return cached.value;
50
- const value = new constructor(locale, options);
51
- if (cache.size >= 128 && !cache.has(key)) cache.delete(cache.keys().next().value);
52
- cache.set(key, {
53
- constructor,
54
- value
55
- });
56
- return value;
57
- }
58
- /**
59
- * The native Intl adapter. Self-contained so converters emit this same implementation only when
60
- * authored expressions use formatting, without importing the live parser or interpreter.
61
- * undefined is absence; the shared invalid-result symbol tells each target to retain its output.
62
- */
63
- return function formatValue(value, inputType, operation, ...args) {
64
- const invalid = Symbol.for("html-next.invalid-result");
65
- if (value === invalid || args.includes(invalid)) return invalid;
66
- if (value === void 0 || value === null || args.some((arg) => arg === void 0)) return;
67
- const end = operation === "formatRange" ? args.shift() : void 0;
68
- if (operation === "formatRange" && (end === null || end === void 0)) return;
69
- const format = typeof args[0] === "string" ? args.shift() : Reflect.get({
70
- number: "number",
71
- integer: "number",
72
- percentage: "percent",
73
- date: "date",
74
- time: "time",
75
- datetime: "dateTime",
76
- "datetime-local": "dateTime",
77
- duration: "duration",
78
- list: "list"
79
- }, inputType ?? "");
80
- const options = args.length > 0 ? args.shift() : {};
81
- const locale = args.shift();
82
- if (args.length > 0 || !format || options === null || typeof options !== "object" || Array.isArray(options) || locale !== void 0 && typeof locale !== "string") return invalid;
83
- try {
84
- const durationFields = [
85
- "years",
86
- "months",
87
- "weeks",
88
- "days",
89
- "hours",
90
- "minutes",
91
- "seconds",
92
- "milliseconds",
93
- "microseconds",
94
- "nanoseconds"
95
- ];
96
- const settings = { ...options };
97
- let formatter;
98
- let input = value;
99
- let last = end;
100
- let zoneFree = false;
101
- if ([
102
- "number",
103
- "currency",
104
- "percent",
105
- "unit"
106
- ].includes(format)) {
107
- if (format !== "number") {
108
- if (settings.style !== void 0 && settings.style !== format) return invalid;
109
- settings.style = format;
110
- }
111
- const quantity = (candidate) => {
112
- if (inputType === "percentage" && typeof candidate === "string" && /^-?(?:\d+(?:\.\d+)?|\.\d+)%$/.test(candidate)) return Number(candidate.slice(0, -1)) / 100;
113
- return candidate;
114
- };
115
- input = quantity(input);
116
- last = quantity(last);
117
- if (typeof input !== "number" || !Number.isFinite(input) || operation === "formatRange" && (typeof last !== "number" || !Number.isFinite(last))) return invalid;
118
- formatter = formatterFor("NumberFormat", locale, settings);
119
- } else if ([
120
- "date",
121
- "time",
122
- "dateTime"
123
- ].includes(format)) {
124
- const civil = inputType === "date" || inputType === "time" || inputType === "datetime-local" || typeof input === "string" && !/(?:Z|[+-]\d\d:\d\d)$/.test(input);
125
- zoneFree = civil;
126
- if (civil && (settings.timeZone !== void 0 || settings.timeZoneName !== void 0)) return invalid;
127
- if (format === "date" && (settings.timeStyle !== void 0 || [
128
- "hour",
129
- "minute",
130
- "second",
131
- "dayPeriod",
132
- "fractionalSecondDigits"
133
- ].some((key) => settings[key] !== void 0)) || format === "time" && (settings.dateStyle !== void 0 || [
134
- "year",
135
- "month",
136
- "day",
137
- "weekday",
138
- "era"
139
- ].some((key) => settings[key] !== void 0))) return invalid;
140
- if (settings.dateStyle === void 0 && settings.timeStyle === void 0 && ![
141
- "year",
142
- "month",
143
- "day",
144
- "weekday",
145
- "era",
146
- "hour",
147
- "minute",
148
- "second",
149
- "dayPeriod",
150
- "fractionalSecondDigits"
151
- ].some((key) => settings[key] !== void 0)) {
152
- if (format !== "time") settings.dateStyle = "medium";
153
- if (format !== "date") settings.timeStyle = "medium";
154
- }
155
- if (civil) settings.timeZone = "UTC";
156
- const asDate = (candidate) => {
157
- if (typeof candidate === "number" && Number.isFinite(candidate)) return new Date(candidate);
158
- if (typeof candidate !== "string") return;
159
- let written = candidate.replace(" ", "T");
160
- if (/^\d\d:\d\d(?::\d\d(?:\.\d{1,3})?)?$/.test(written)) {
161
- if (format !== "time") return;
162
- written = "1970-01-01T" + written + "Z";
163
- } else if (/^\d{4,}-\d\d-\d\d$/.test(written)) {
164
- if (format !== "date") return;
165
- written += "T00:00:00Z";
166
- } else if (/^\d{4,}-\d\d-\d\dT\d\d:\d\d(?::\d\d(?:\.\d{1,3})?)?$/.test(written)) written += "Z";
167
- else if (!/^\d{4,}-\d\d-\d\dT\d\d:\d\d(?::\d\d(?:\.\d{1,3})?)?(?:Z|[+-]\d\d:\d\d)$/.test(written)) return;
168
- const date = new Date(written.replace(/^(\d{5,})-/, (_match, year) => "+" + year.padStart(6, "0") + "-"));
169
- if (!Number.isFinite(date.getTime())) return;
170
- const match = /^(\d{4,})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d))?/.exec(written);
171
- if (!match) return;
172
- const probe = /* @__PURE__ */ new Date(0);
173
- probe.setUTCFullYear(Number(match[1]), Number(match[2]) - 1, Number(match[3]));
174
- if (Number(match[1]) === 0 || probe.getUTCMonth() !== Number(match[2]) - 1 || probe.getUTCDate() !== Number(match[3]) || Number(match[4]) > 23 || Number(match[5]) > 59 || Number(match[6] ?? 0) > 59) return;
175
- return date;
176
- };
177
- input = asDate(input);
178
- last = operation === "formatRange" ? asDate(last) : void 0;
179
- if (!input || operation === "formatRange" && !last) return invalid;
180
- formatter = formatterFor("DateTimeFormat", locale, settings);
181
- } else {
182
- if (operation === "formatRange") return invalid;
183
- if (format === "relativeTime") {
184
- if (typeof input !== "number" || !Number.isFinite(input) || typeof settings.unit !== "string") return invalid;
185
- const unit = settings.unit;
186
- delete settings.unit;
187
- formatter = formatterFor("RelativeTimeFormat", locale, settings);
188
- return operation === "formatParts" ? formatter.formatToParts(input, unit) : formatter.format(input, unit);
189
- }
190
- if (format === "list") {
191
- if (!Array.isArray(input) || input.some((item) => typeof item !== "string")) return invalid;
192
- formatter = formatterFor("ListFormat", locale, settings);
193
- } else if (format === "duration") {
194
- if (inputType === "duration" && typeof input === "string") {
195
- const match = /^(-?(?:\d+(?:\.\d+)?|\.\d+))(ms|s)$/.exec(input);
196
- if (!match) return invalid;
197
- const milliseconds = Number(match[1]) * (match[2] === "s" ? 1e3 : 1);
198
- if (!Number.isFinite(milliseconds)) return invalid;
199
- input = {
200
- hours: Math.trunc(milliseconds / 36e5),
201
- minutes: Math.trunc(milliseconds % 36e5 / 6e4),
202
- seconds: Math.trunc(milliseconds % 6e4 / 1e3),
203
- milliseconds: Math.trunc(milliseconds % 1e3),
204
- microseconds: Math.trunc((milliseconds - Math.trunc(milliseconds)) * 1e3),
205
- nanoseconds: Math.round((milliseconds * 1e3 - Math.trunc(milliseconds * 1e3)) * 1e3)
206
- };
207
- }
208
- if (input === null || typeof input !== "object" || Array.isArray(input) || Object.keys(input).some((key) => !durationFields.includes(key))) return invalid;
209
- if (!Reflect.get(Intl, "DurationFormat")) return invalid;
210
- formatter = formatterFor("DurationFormat", locale, settings);
211
- } else if (format === "displayName") {
212
- if (typeof input !== "string" || operation === "formatParts") return invalid;
213
- return formatterFor("DisplayNames", locale, settings).of(input);
214
- } else if (format === "plural") {
215
- if (typeof input !== "number" || !Number.isFinite(input) || operation === "formatParts") return invalid;
216
- const forms = settings.forms;
217
- if (!forms || typeof forms !== "object" || Array.isArray(forms) || typeof forms.other !== "string" || Object.entries(forms).some(([key, entry]) => ![
218
- "zero",
219
- "one",
220
- "two",
221
- "few",
222
- "many",
223
- "other"
224
- ].includes(key) || typeof entry !== "string")) return invalid;
225
- delete settings.forms;
226
- const message = forms[formatterFor("PluralRules", locale, settings).select(input)] ?? forms.other;
227
- const numberOptions = { ...settings };
228
- delete numberOptions.type;
229
- delete numberOptions.forms;
230
- const number = formatterFor("NumberFormat", locale, numberOptions).format(input);
231
- return message.replace(/#/g, () => number);
232
- }
233
- }
234
- if (!zoneFree && operation !== "formatParts") return operation === "formatRange" ? formatter.formatRange(input, last) : formatter.format(input);
235
- const parts = operation === "formatRange" ? formatter.formatRangeToParts(input, last) : formatter.formatToParts(input);
236
- if (zoneFree && operation !== "formatParts" && !parts.some((part) => part.type === "timeZoneName")) return operation === "formatRange" ? formatter.formatRange(input, last) : formatter.format(input);
237
- const visible = zoneFree ? parts.filter((part, index) => part.type !== "timeZoneName" && !(part.type === "literal" && /^[\s(),]*$/.test(part.value) && (parts[index - 1]?.type === "timeZoneName" || parts[index + 1]?.type === "timeZoneName"))) : parts;
238
- return operation === "formatParts" ? visible : visible.map((part) => part.value).join("");
239
- } catch {
240
- return invalid;
241
- }
242
- };
243
- }
244
- var moduleFormatValue = createFormatValue();
245
24
  //#endregion
246
25
  //#region .build/vue/UiMeter.vue
247
26
  var UiMeter_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
@@ -286,7 +65,6 @@ var UiMeter_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
286
65
  }
287
66
  },
288
67
  setup(__props) {
289
- const formatValue = moduleFormatValue;
290
68
  const propValidityContract = { props: {
291
69
  label: {
292
70
  type: {
@@ -479,42 +257,7 @@ var UiMeter_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
479
257
  watchSyncEffect(() => {
480
258
  checkedProps.value;
481
259
  });
482
- function nativeAttrs(attrs) {
483
- const names = Object.keys(attrs);
484
- if (!names.some((name) => Object.hasOwn(Object.prototype, name))) return attrs;
485
- return Object.fromEntries(names.map((name) => [Object.hasOwn(Object.prototype, name) ? name === "__proto__" ? "__Proto__" : name[0].toUpperCase() + name.slice(1) : name, attrs[name]]));
486
- }
487
- const componentInstance = getCurrentInstance();
488
- function reflectedProp(name, kebab, value, fallback, bound, separator) {
489
- const incoming = componentInstance?.vnode.props;
490
- if (!bound && (incoming === null || incoming === void 0 || !Object.hasOwn(incoming, name) && !Object.hasOwn(incoming, kebab))) return fallback;
491
- if (value === null || value === void 0) return void 0;
492
- return Array.isArray(value) && separator !== void 0 ? value.join(separator) : typeof value === "object" ? JSON.stringify(value) : String(value);
493
- }
494
- const hydrationInstance = getCurrentInstance();
495
- function cycleCheckedComputed(evaluate) {
496
- const value = computed(evaluate);
497
- let reading = false;
498
- return new Proxy(value, { get(target, property) {
499
- if (property !== "value") return Reflect.get(target, property);
500
- if (reading) {
501
- const message = "A reactive computed value depends on itself.";
502
- throw Object.assign(/* @__PURE__ */ new Error(`HR006: ${message}`), {
503
- name: "HtmlDiagnosticError",
504
- diagnostic: Object.freeze({
505
- code: "HR006",
506
- message
507
- })
508
- });
509
- }
510
- reading = true;
511
- try {
512
- return target.value;
513
- } finally {
514
- reading = false;
515
- }
516
- } });
517
- }
260
+ const reflectedProp = useReflectedProp();
518
261
  let amountPrevious = null;
519
262
  const amount = cycleCheckedComputed(() => {
520
263
  const next = math("clamp", [
@@ -532,7 +275,7 @@ var UiMeter_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
532
275
  let percentPrevious = null;
533
276
  const percent = cycleCheckedComputed(() => {
534
277
  const next = ((objectValue, indexValue) => objectValue === Symbol.for("html-next.invalid-result") || indexValue === Symbol.for("html-next.invalid-result") ? Symbol.for("html-next.invalid-result") : objectValue[indexValue])({
535
- true: number(number(amount.value) === void 0 || number(checkedProps.value.max) === void 0 ? void 0 : number(amount.value) / number(checkedProps.value.max)) === void 0 || number(100) === void 0 ? void 0 : number(number(amount.value) === void 0 || number(checkedProps.value.max) === void 0 ? void 0 : number(amount.value) / number(checkedProps.value.max)) * number(100),
278
+ true: number(number(amount.value) === void 0 || number(checkedProps.value.max) === void 0 ? void 0 : number(amount.value) / number(checkedProps.value.max)) === void 0 || number(100) === void 0 ? void 0 : decimalMultiply(number(number(amount.value) === void 0 || number(checkedProps.value.max) === void 0 ? void 0 : number(amount.value) / number(checkedProps.value.max)), number(100)),
536
279
  false: 0
537
280
  }, concat(number(checkedProps.value.max) === void 0 || number(0) === void 0 ? void 0 : number(checkedProps.value.max) > number(0)));
538
281
  if (next === Symbol.for("html-next.invalid-result")) return percentPrevious;
@@ -723,14 +466,7 @@ var UiMeter_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
723
466
  if (candidate === Symbol.for("html-next.invalid-result")) return guardedBinding7Previous;
724
467
  return guardedBinding7Previous = candidate;
725
468
  });
726
- const hydrationNode = hydrationInstance?.vnode.el;
727
- if (typeof window !== "undefined" && hydrationNode != null && (!(hydrationNode instanceof Element) || hydrationNode.localName !== "span")) throw Object.assign(/* @__PURE__ */ new Error("HR005: Server markup for <ui-meter> has an incompatible root."), {
728
- name: "HtmlDiagnosticError",
729
- diagnostic: Object.freeze({
730
- code: "HR005",
731
- message: "Server markup for <ui-meter> has an incompatible root."
732
- })
733
- });
469
+ checkHydratedRoot("span", "ui-meter");
734
470
  /** The values the styles' :host-state() rules test. */
735
471
  const hostState = computed(() => [
736
472
  checkedProps.value.size && "size",
@@ -740,78 +476,8 @@ var UiMeter_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
740
476
  checkedProps.value.variant && "variant",
741
477
  checkedProps.value.variant != null && `variant=${encodeURIComponent(checkedProps.value.variant)}`
742
478
  ].filter(Boolean).join(" "));
743
- function text(value) {
744
- if (Array.isArray(value)) return value.map(text).join(" ");
745
- return value === null || value === void 0 || typeof value === "object" ? "" : String(value);
746
- }
747
- function attribute(value) {
748
- if (value === null || value === void 0 || value === false || typeof value === "object" && !Array.isArray(value)) return void 0;
749
- return value === true ? "" : text(value);
750
- }
751
- function number(value) {
752
- return typeof value === "number" && !Number.isNaN(value) ? value : void 0;
753
- }
754
- function concat(...values) {
755
- if (values.some((value) => value === Symbol.for("html-next.invalid-result"))) return Symbol.for("html-next.invalid-result");
756
- if (values.some((value) => value === void 0)) return void 0;
757
- if (values.length === 0 || values.some((value) => typeof value === "object" && value !== null)) return Symbol.for("html-next.invalid-result");
758
- return values.map((value) => value === null ? "" : String(value)).join("");
759
- }
760
- function math(fn, kinds, values) {
761
- if (values.includes(Symbol.for("html-next.invalid-result"))) return Symbol.for("html-next.invalid-result");
762
- if (values.some((value) => value === void 0 || value === null)) return void 0;
763
- if ((fn === "abs" || fn === "negate") && values.length !== 1 || fn === "round" && (values.length < 1 || values.length > 2) || (fn === "min" || fn === "max") && values.length === 0 || fn === "clamp" && values.length !== 3) return Symbol.for("html-next.invalid-result");
764
- const kind = kinds[0];
765
- const dimensional = kind === "length" || kind === "percentage" || kind === "duration";
766
- if (!dimensional && kind !== "number") return Symbol.for("html-next.invalid-result");
767
- let unit;
768
- const numbers = [];
769
- for (let index = 0; index < values.length; index++) {
770
- if (kinds[index] !== kind) return Symbol.for("html-next.invalid-result");
771
- const value = values[index];
772
- if (!dimensional) {
773
- if (typeof value !== "number" || !Number.isFinite(value)) return Symbol.for("html-next.invalid-result");
774
- numbers.push(value);
775
- continue;
776
- }
777
- if (typeof value !== "string") return Symbol.for("html-next.invalid-result");
778
- const match = /^(-?(?:\d+(?:\.\d+)?|\.\d+))(vmin|vmax|rem|px|em|vw|vh|ch|ex|cm|mm|in|pt|pc|q|ms|s|%)$/.exec(value);
779
- if (match === null || unit !== void 0 && match[2] !== unit) return Symbol.for("html-next.invalid-result");
780
- unit = match[2];
781
- if ((unit === "%" ? "percentage" : unit === "ms" || unit === "s" ? "duration" : "length") !== kind) return Symbol.for("html-next.invalid-result");
782
- const number = Number(match[1]);
783
- if (!Number.isFinite(number)) return Symbol.for("html-next.invalid-result");
784
- numbers.push(number);
785
- }
786
- let result;
787
- switch (fn) {
788
- case "abs":
789
- result = Math.abs(numbers[0]);
790
- break;
791
- case "negate":
792
- result = -numbers[0];
793
- break;
794
- case "round": {
795
- const step = Math.abs(numbers[1] ?? 1);
796
- if (step === 0) return Symbol.for("html-next.invalid-result");
797
- result = Math.round(numbers[0] / step) * step;
798
- break;
799
- }
800
- case "min":
801
- result = Math.min(...numbers);
802
- break;
803
- case "max":
804
- result = Math.max(...numbers);
805
- break;
806
- case "clamp":
807
- result = Math.max(numbers[0], Math.min(numbers[1], numbers[2]));
808
- break;
809
- default: return Symbol.for("html-next.invalid-result");
810
- }
811
- return !Number.isFinite(result) ? Symbol.for("html-next.invalid-result") : unit === void 0 ? result : String(result) + unit;
812
- }
813
479
  return (_ctx, _cache) => {
814
- return withDirectives((openBlock(), createElementBlock("span", mergeProps({ "data-component": "ui-meter" }, nativeAttrs(_ctx.$attrs), {
480
+ return withDirectives((openBlock(), createElementBlock("span", mergeProps({ class: "ui-meter" }, unref(nativeAttrs)(_ctx.$attrs), {
815
481
  role: guarded.value,
816
482
  "aria-valuemin": guardedBinding.value,
817
483
  "aria-valuemax": guardedBinding2.value,
@@ -819,22 +485,22 @@ var UiMeter_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
819
485
  "aria-valuetext": guardedBinding4.value,
820
486
  "aria-label": guardedBinding5.value,
821
487
  "data-ui-meter-segments": guardedBinding6.value,
822
- "data-label": reflectedProp("label", "label", checkedProps.value.label, void 0, false),
823
- "data-max": reflectedProp("max", "max", checkedProps.value.max, void 0, false),
824
- "data-parts": reflectedProp("parts", "parts", checkedProps.value.parts, void 0, false),
825
- "data-segments": reflectedProp("segments", "segments", checkedProps.value.segments, void 0, false),
826
- "data-size": reflectedProp("size", "size", checkedProps.value.size, void 0, false),
827
- "data-tone": reflectedProp("tone", "tone", checkedProps.value.tone, void 0, false),
828
- "data-value": reflectedProp("value", "value", checkedProps.value.value, void 0, false),
829
- "data-value-text": reflectedProp("valueText", "value-text", checkedProps.value.valueText, void 0, false),
830
- "data-variant": reflectedProp("variant", "variant", checkedProps.value.variant, void 0, false),
488
+ "data-label": unref(reflectedProp)("label", "label", checkedProps.value.label, void 0, false),
489
+ "data-max": unref(reflectedProp)("max", "max", checkedProps.value.max, void 0, false),
490
+ "data-parts": unref(reflectedProp)("parts", "parts", checkedProps.value.parts, void 0, false),
491
+ "data-segments": unref(reflectedProp)("segments", "segments", checkedProps.value.segments, void 0, false),
492
+ "data-size": unref(reflectedProp)("size", "size", checkedProps.value.size, void 0, false),
493
+ "data-tone": unref(reflectedProp)("tone", "tone", checkedProps.value.tone, void 0, false),
494
+ "data-value": unref(reflectedProp)("value", "value", checkedProps.value.value, void 0, false),
495
+ "data-value-text": unref(reflectedProp)("valueText", "value-text", checkedProps.value.valueText, void 0, false),
496
+ "data-variant": unref(reflectedProp)("variant", "variant", checkedProps.value.variant, void 0, false),
831
497
  "data-ui-meter-state": hostState.value || void 0
832
498
  }), [checkedProps.value.variant === "progress" ? (openBlock(), createElementBlock("span", {
833
499
  key: 0,
834
500
  class: "fill",
835
501
  style: normalizeStyle({ "inline-size": guardedBinding7.value })
836
502
  }, null, 4)) : createCommentVNode("v-if", true), checkedProps.value.variant === "distribution" ? (openBlock(true), createElementBlock(Fragment, { key: 1 }, renderList(checkedProps.value.parts, (part, index) => {
837
- return openBlock(), createElementBlock(Fragment, { key: index }, [part.value > 0 && part.value - part.value === 0 ? (openBlock(), createElementBlock("span", {
503
+ return openBlock(), createElementBlock(Fragment, { key: index }, [part.value > 0 && unref(decimalSubtract)(part.value, part.value) === 0 ? (openBlock(), createElementBlock("span", {
838
504
  key: 0,
839
505
  class: "part",
840
506
  "aria-hidden": "true",
@@ -849,6 +515,6 @@ var UiMeter_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
849
515
  }]]);
850
516
  };
851
517
  }
852
- }), [["__scopeId", "data-v-c308c037"]]);
518
+ }), [["__scopeId", "data-v-4b7c5237"]]);
853
519
  //#endregion
854
520
  export { UiMeter_default as t };
@@ -1,7 +1,6 @@
1
- import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
2
- import { n as preserveRootFocus } from "./host.js";
1
+ import { a as concat, h as preserveRootFocus, i as checkHydratedRoot, p as nativeAttrs, r as attribute, t as _plugin_vue_export_helper_default, v as useReflectedProp } from "./_plugin-vue_export-helper.js";
3
2
  import { a as vPropValidity, n as checkedProp } from "./props.js";
4
- import { computed, createElementBlock, createElementVNode, defineComponent, getCurrentInstance, mergeProps, openBlock, renderSlot, unref, useTemplateRef, watchSyncEffect, withDirectives } from "vue";
3
+ import { computed, createElementBlock, createElementVNode, defineComponent, mergeProps, openBlock, renderSlot, unref, useTemplateRef, watchSyncEffect, withDirectives } from "vue";
5
4
  //#region .build/vue/UiNavItem.vue?vue&type=script&setup=true&lang.ts
6
5
  var _hoisted_1 = [
7
6
  "href",
@@ -197,19 +196,7 @@ var UiNavItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
197
196
  watchSyncEffect(() => {
198
197
  checkedProps.value;
199
198
  });
200
- function nativeAttrs(attrs) {
201
- const names = Object.keys(attrs);
202
- if (!names.some((name) => Object.hasOwn(Object.prototype, name))) return attrs;
203
- return Object.fromEntries(names.map((name) => [Object.hasOwn(Object.prototype, name) ? name === "__proto__" ? "__Proto__" : name[0].toUpperCase() + name.slice(1) : name, attrs[name]]));
204
- }
205
- const componentInstance = getCurrentInstance();
206
- function reflectedProp(name, kebab, value, fallback, bound, separator) {
207
- const incoming = componentInstance?.vnode.props;
208
- if (!bound && (incoming === null || incoming === void 0 || !Object.hasOwn(incoming, name) && !Object.hasOwn(incoming, kebab))) return fallback;
209
- if (value === null || value === void 0) return void 0;
210
- return Array.isArray(value) && separator !== void 0 ? value.join(separator) : typeof value === "object" ? JSON.stringify(value) : String(value);
211
- }
212
- const hydrationInstance = getCurrentInstance();
199
+ const reflectedProp = useReflectedProp();
213
200
  const root = useTemplateRef("@html-next/root");
214
201
  preserveRootFocus(root);
215
202
  let guardedPrevious = null;
@@ -270,14 +257,7 @@ var UiNavItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
270
257
  location: "location"
271
258
  }, concat(checkedProps.value.current)));
272
259
  });
273
- const hydrationNode = hydrationInstance?.vnode.el;
274
- if (typeof window !== "undefined" && hydrationNode != null && (!(hydrationNode instanceof Element) || hydrationNode.localName !== (checkedProps.value.as === "a" ? "a" : "button"))) throw Object.assign(/* @__PURE__ */ new Error("HR005: Server markup for <ui-nav-item> has an incompatible root."), {
275
- name: "HtmlDiagnosticError",
276
- diagnostic: Object.freeze({
277
- code: "HR005",
278
- message: "Server markup for <ui-nav-item> has an incompatible root."
279
- })
280
- });
260
+ checkHydratedRoot(checkedProps.value.as === "a" ? "a" : "button", "ui-nav-item");
281
261
  /** The values the styles' :host-state() rules test. */
282
262
  const hostState = computed(() => [
283
263
  checkedProps.value.variant && "variant",
@@ -285,36 +265,22 @@ var UiNavItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
285
265
  checkedProps.value.density && "density",
286
266
  checkedProps.value.density != null && `density=${encodeURIComponent(checkedProps.value.density)}`
287
267
  ].filter(Boolean).join(" "));
288
- function text(value) {
289
- if (Array.isArray(value)) return value.map(text).join(" ");
290
- return value === null || value === void 0 || typeof value === "object" ? "" : String(value);
291
- }
292
- function attribute(value) {
293
- if (value === null || value === void 0 || value === false || typeof value === "object" && !Array.isArray(value)) return void 0;
294
- return value === true ? "" : text(value);
295
- }
296
- function concat(...values) {
297
- if (values.some((value) => value === Symbol.for("html-next.invalid-result"))) return Symbol.for("html-next.invalid-result");
298
- if (values.some((value) => value === void 0)) return void 0;
299
- if (values.length === 0 || values.some((value) => typeof value === "object" && value !== null)) return Symbol.for("html-next.invalid-result");
300
- return values.map((value) => value === null ? "" : String(value)).join("");
301
- }
302
268
  return (_ctx, _cache) => {
303
269
  return checkedProps.value.as === "a" ? withDirectives((openBlock(), createElementBlock("a", mergeProps({
304
270
  key: 0,
305
- "data-component": "ui-nav-item"
306
- }, nativeAttrs(_ctx.$attrs), {
271
+ class: "ui-nav-item"
272
+ }, unref(nativeAttrs)(_ctx.$attrs), {
307
273
  href: checkedProps.value.href ?? void 0,
308
274
  target: checkedProps.value.target ?? void 0,
309
275
  rel: checkedProps.value.rel ?? void 0,
310
276
  "aria-current": guarded.value,
311
- "data-as": reflectedProp("as", "as", checkedProps.value.as, void 0, false),
312
- "data-current": reflectedProp("current", "current", checkedProps.value.current, void 0, false),
313
- "data-density": reflectedProp("density", "density", checkedProps.value.density, void 0, false),
314
- "data-href": reflectedProp("href", "href", checkedProps.value.href, void 0, false),
315
- "data-rel": reflectedProp("rel", "rel", checkedProps.value.rel, void 0, false),
316
- "data-target": reflectedProp("target", "target", checkedProps.value.target, void 0, false),
317
- "data-variant": reflectedProp("variant", "variant", checkedProps.value.variant, void 0, false),
277
+ "data-as": unref(reflectedProp)("as", "as", checkedProps.value.as, void 0, false),
278
+ "data-current": unref(reflectedProp)("current", "current", checkedProps.value.current, void 0, false),
279
+ "data-density": unref(reflectedProp)("density", "density", checkedProps.value.density, void 0, false),
280
+ "data-href": unref(reflectedProp)("href", "href", checkedProps.value.href, void 0, false),
281
+ "data-rel": unref(reflectedProp)("rel", "rel", checkedProps.value.rel, void 0, false),
282
+ "data-target": unref(reflectedProp)("target", "target", checkedProps.value.target, void 0, false),
283
+ "data-variant": unref(reflectedProp)("variant", "variant", checkedProps.value.variant, void 0, false),
318
284
  "data-ui-nav-item-state": hostState.value || void 0,
319
285
  ref: "@html-next/root"
320
286
  }), [
@@ -330,17 +296,17 @@ var UiNavItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
330
296
  values: { ...props }
331
297
  }]]) : withDirectives((openBlock(), createElementBlock("button", mergeProps({
332
298
  key: 1,
333
- "data-component": "ui-nav-item",
299
+ class: "ui-nav-item",
334
300
  type: "button"
335
- }, nativeAttrs(_ctx.$attrs), {
301
+ }, unref(nativeAttrs)(_ctx.$attrs), {
336
302
  "aria-current": guardedBinding.value,
337
- "data-as": reflectedProp("as", "as", checkedProps.value.as, void 0, false),
338
- "data-current": reflectedProp("current", "current", checkedProps.value.current, void 0, false),
339
- "data-density": reflectedProp("density", "density", checkedProps.value.density, void 0, false),
340
- "data-href": reflectedProp("href", "href", checkedProps.value.href, void 0, false),
341
- "data-rel": reflectedProp("rel", "rel", checkedProps.value.rel, void 0, false),
342
- "data-target": reflectedProp("target", "target", checkedProps.value.target, void 0, false),
343
- "data-variant": reflectedProp("variant", "variant", checkedProps.value.variant, void 0, false),
303
+ "data-as": unref(reflectedProp)("as", "as", checkedProps.value.as, void 0, false),
304
+ "data-current": unref(reflectedProp)("current", "current", checkedProps.value.current, void 0, false),
305
+ "data-density": unref(reflectedProp)("density", "density", checkedProps.value.density, void 0, false),
306
+ "data-href": unref(reflectedProp)("href", "href", checkedProps.value.href, void 0, false),
307
+ "data-rel": unref(reflectedProp)("rel", "rel", checkedProps.value.rel, void 0, false),
308
+ "data-target": unref(reflectedProp)("target", "target", checkedProps.value.target, void 0, false),
309
+ "data-variant": unref(reflectedProp)("variant", "variant", checkedProps.value.variant, void 0, false),
344
310
  "data-ui-nav-item-state": hostState.value || void 0,
345
311
  ref: "@html-next/root"
346
312
  }), [
@@ -357,6 +323,6 @@ var UiNavItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
357
323
  }]]);
358
324
  };
359
325
  }
360
- }), [["__scopeId", "data-v-f82c0272"]]);
326
+ }), [["__scopeId", "data-v-7f0c9819"]]);
361
327
  //#endregion
362
328
  export { UiNavItem_default as t };
@@ -1,6 +1,6 @@
1
- import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
1
+ import { i as checkHydratedRoot, p as nativeAttrs, t as _plugin_vue_export_helper_default, v as useReflectedProp } from "./_plugin-vue_export-helper.js";
2
2
  import { a as vPropValidity, n as checkedProp } from "./props.js";
3
- import { computed, createElementBlock, createElementVNode, defineComponent, getCurrentInstance, mergeProps, openBlock, renderSlot, unref, watchSyncEffect, withDirectives } from "vue";
3
+ import { computed, createElementBlock, createElementVNode, defineComponent, mergeProps, openBlock, renderSlot, unref, watchSyncEffect, withDirectives } from "vue";
4
4
  //#region .build/vue/UiPageHeader.vue?vue&type=script&setup=true&lang.ts
5
5
  var _hoisted_1 = ["data-align", "data-ui-page-header-state"];
6
6
  var _hoisted_2 = { class: "leading" };
@@ -40,31 +40,13 @@ var UiPageHeader_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
40
40
  watchSyncEffect(() => {
41
41
  checkedProps.value;
42
42
  });
43
- function nativeAttrs(attrs) {
44
- const names = Object.keys(attrs);
45
- if (!names.some((name) => Object.hasOwn(Object.prototype, name))) return attrs;
46
- return Object.fromEntries(names.map((name) => [Object.hasOwn(Object.prototype, name) ? name === "__proto__" ? "__Proto__" : name[0].toUpperCase() + name.slice(1) : name, attrs[name]]));
47
- }
48
- const componentInstance = getCurrentInstance();
49
- function reflectedProp(name, kebab, value, fallback, bound, separator) {
50
- const incoming = componentInstance?.vnode.props;
51
- if (!bound && (incoming === null || incoming === void 0 || !Object.hasOwn(incoming, name) && !Object.hasOwn(incoming, kebab))) return fallback;
52
- if (value === null || value === void 0) return void 0;
53
- return Array.isArray(value) && separator !== void 0 ? value.join(separator) : typeof value === "object" ? JSON.stringify(value) : String(value);
54
- }
55
- const hydrationNode = getCurrentInstance()?.vnode.el;
56
- if (typeof window !== "undefined" && hydrationNode != null && (!(hydrationNode instanceof Element) || hydrationNode.localName !== "header")) throw Object.assign(/* @__PURE__ */ new Error("HR005: Server markup for <ui-page-header> has an incompatible root."), {
57
- name: "HtmlDiagnosticError",
58
- diagnostic: Object.freeze({
59
- code: "HR005",
60
- message: "Server markup for <ui-page-header> has an incompatible root."
61
- })
62
- });
43
+ const reflectedProp = useReflectedProp();
44
+ checkHydratedRoot("header", "ui-page-header");
63
45
  /** The values the styles' :host-state() rules test. */
64
46
  const hostState = computed(() => [checkedProps.value.align && "align", checkedProps.value.align != null && `align=${encodeURIComponent(checkedProps.value.align)}`].filter(Boolean).join(" "));
65
47
  return (_ctx, _cache) => {
66
- return withDirectives((openBlock(), createElementBlock("header", mergeProps({ "data-component": "ui-page-header" }, nativeAttrs(_ctx.$attrs), {
67
- "data-align": reflectedProp("align", "align", checkedProps.value.align, void 0, false),
48
+ return withDirectives((openBlock(), createElementBlock("header", mergeProps({ class: "ui-page-header" }, unref(nativeAttrs)(_ctx.$attrs), {
49
+ "data-align": unref(reflectedProp)("align", "align", checkedProps.value.align, void 0, false),
68
50
  "data-ui-page-header-state": hostState.value || void 0
69
51
  }), [
70
52
  createElementVNode("span", _hoisted_2, [renderSlot(_ctx.$slots, "leading", {}, void 0, true)]),
@@ -80,6 +62,6 @@ var UiPageHeader_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
80
62
  }]]);
81
63
  };
82
64
  }
83
- }), [["__scopeId", "data-v-093b89cc"]]);
65
+ }), [["__scopeId", "data-v-727f7493"]]);
84
66
  //#endregion
85
67
  export { UiPageHeader_default as t };