@threadlabs/looma 0.19.1 → 0.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (507) hide show
  1. package/components/shared/trigger.js +9 -4
  2. package/components/ui-affordance-scope/ui-affordance-scope.html +1 -1
  3. package/components/ui-avatar/ui-avatar.html +2 -2
  4. package/components/ui-avatar-group/ui-avatar-group.html +1 -1
  5. package/components/ui-avatar-group/ui-avatar-group.js +1 -1
  6. package/components/ui-badge/ui-badge.html +3 -3
  7. package/components/ui-button/ui-button.html +7 -6
  8. package/components/ui-callout/ui-callout.html +1 -1
  9. package/components/ui-card/ui-card.html +5 -4
  10. package/components/ui-checkbox/ui-checkbox.html +6 -2
  11. package/components/ui-cluster/ui-cluster.html +4 -4
  12. package/components/ui-combobox/ui-combobox.html +257 -34
  13. package/components/ui-combobox/ui-combobox.js +21 -20
  14. package/components/ui-container/ui-container.html +2 -2
  15. package/components/ui-context-menu/ui-context-menu.html +17 -5
  16. package/components/ui-cover/ui-cover.html +1 -1
  17. package/components/ui-description-list/ui-description-list.html +3 -3
  18. package/components/ui-dialog/ui-dialog.html +14 -6
  19. package/components/ui-disclosure/ui-disclosure.html +14 -5
  20. package/components/ui-editable/ui-editable.html +15 -4
  21. package/components/ui-editor-mention-menu/ui-editor-mention-menu.html +1 -1
  22. package/components/ui-editor-slash-menu/ui-editor-slash-menu.html +1 -1
  23. package/components/ui-editor-table-context-menu/ui-editor-table-context-menu.html +26 -6
  24. package/components/ui-editor-table-overlay/ui-editor-table-overlay.html +90 -12
  25. package/components/ui-editor-table-overlay/ui-editor-table-overlay.js +5 -5
  26. package/components/ui-editor-table-toolbar/ui-editor-table-toolbar.html +33 -7
  27. package/components/ui-grid/ui-grid.html +2 -2
  28. package/components/ui-icon-button/ui-icon-button.html +2 -2
  29. package/components/ui-input/ui-input.html +28 -6
  30. package/components/ui-list/ui-list.html +5 -4
  31. package/components/ui-list-item/ui-list-item.html +1 -1
  32. package/components/ui-listbox/ui-listbox.html +7 -1
  33. package/components/ui-menu/ui-menu.html +18 -5
  34. package/components/ui-menu-item/ui-menu-item.html +7 -2
  35. package/components/ui-meter/ui-meter.html +2 -2
  36. package/components/ui-nav-item/ui-nav-item.html +5 -4
  37. package/components/ui-page-header/ui-page-header.html +1 -1
  38. package/components/ui-popover/ui-popover.html +14 -5
  39. package/components/ui-radio/ui-radio.html +6 -2
  40. package/components/ui-radio-group/ui-radio-group.html +11 -3
  41. package/components/ui-reel/ui-reel.html +3 -3
  42. package/components/ui-scroll-area/ui-scroll-area.html +1 -1
  43. package/components/ui-search-shell/ui-search-shell.html +6 -2
  44. package/components/ui-section/ui-section.html +2 -2
  45. package/components/ui-select/ui-select.html +1 -1
  46. package/components/ui-separator/ui-separator.html +1 -1
  47. package/components/ui-sidebar/ui-sidebar.html +11 -4
  48. package/components/ui-spinner/ui-spinner.html +1 -1
  49. package/components/ui-stack/ui-stack.html +3 -3
  50. package/components/ui-status-message/ui-status-message.html +2 -2
  51. package/components/ui-switch/ui-switch.html +6 -2
  52. package/components/ui-switcher/ui-switcher.html +3 -3
  53. package/components/ui-table/ui-table.html +1 -1
  54. package/components/ui-tabs/ui-tabs.html +9 -4
  55. package/components/ui-text/ui-text.html +6 -6
  56. package/components/ui-textarea/ui-textarea.html +1 -1
  57. package/components/ui-toast/ui-toast.html +6 -2
  58. package/components/ui-toast-region/ui-toast-region.html +16 -4
  59. package/components/ui-tooltip/ui-tooltip.html +15 -6
  60. package/components/ui-tree/ui-tree.html +30 -7
  61. package/components/ui-tree-item/ui-tree-item.html +5 -1
  62. package/dist/index.js +1 -1
  63. package/editor/table-overlay.d.ts +1 -1
  64. package/package.json +3 -3
  65. package/styles/ui-action-bar.css +1 -1
  66. package/styles/ui-affordance-scope.css +1 -1
  67. package/styles/ui-avatar-group.css +1 -1
  68. package/styles/ui-avatar.css +1 -1
  69. package/styles/ui-badge.css +1 -1
  70. package/styles/ui-breadcrumb-item.css +1 -1
  71. package/styles/ui-breadcrumbs.css +1 -1
  72. package/styles/ui-button.css +1 -1
  73. package/styles/ui-callout.css +1 -1
  74. package/styles/ui-card.css +1 -1
  75. package/styles/ui-checkbox.css +1 -1
  76. package/styles/ui-cluster.css +1 -1
  77. package/styles/ui-combobox.css +1 -1
  78. package/styles/ui-container.css +1 -1
  79. package/styles/ui-context-menu.css +1 -1
  80. package/styles/ui-cover.css +1 -1
  81. package/styles/ui-description-item.css +1 -1
  82. package/styles/ui-description-list.css +1 -1
  83. package/styles/ui-dialog.css +1 -1
  84. package/styles/ui-disclosure.css +1 -1
  85. package/styles/ui-editable.css +1 -1
  86. package/styles/ui-editor-insert-table-grid.css +1 -1
  87. package/styles/ui-editor-mention-menu-item.css +1 -1
  88. package/styles/ui-editor-mention-menu.css +1 -1
  89. package/styles/ui-editor-slash-menu-group.css +1 -1
  90. package/styles/ui-editor-slash-menu-item.css +1 -1
  91. package/styles/ui-editor-slash-menu.css +1 -1
  92. package/styles/ui-editor-table-context-menu.css +1 -1
  93. package/styles/ui-editor-table-overlay.css +1 -1
  94. package/styles/ui-editor-table-toolbar.css +1 -1
  95. package/styles/ui-editor-toolbar.css +1 -1
  96. package/styles/ui-floating-action-button.css +1 -1
  97. package/styles/ui-form-field.css +1 -1
  98. package/styles/ui-grid.css +1 -1
  99. package/styles/ui-icon-button.css +1 -1
  100. package/styles/ui-icon.css +1 -1
  101. package/styles/ui-input-group.css +1 -1
  102. package/styles/ui-input.css +1 -1
  103. package/styles/ui-list-item.css +1 -1
  104. package/styles/ui-list.css +1 -1
  105. package/styles/ui-listbox.css +1 -1
  106. package/styles/ui-menu-group.css +1 -1
  107. package/styles/ui-menu-item.css +1 -1
  108. package/styles/ui-menu.css +1 -1
  109. package/styles/ui-meter.css +1 -1
  110. package/styles/ui-nav-item.css +1 -1
  111. package/styles/ui-page-header.css +1 -1
  112. package/styles/ui-popover.css +1 -1
  113. package/styles/ui-radio-group.css +1 -1
  114. package/styles/ui-radio.css +1 -1
  115. package/styles/ui-reel.css +1 -1
  116. package/styles/ui-scroll-area.css +1 -1
  117. package/styles/ui-search-result-row.css +1 -1
  118. package/styles/ui-search-shell.css +1 -1
  119. package/styles/ui-section.css +1 -1
  120. package/styles/ui-select.css +1 -1
  121. package/styles/ui-separator.css +1 -1
  122. package/styles/ui-sidebar.css +1 -1
  123. package/styles/ui-spinner.css +1 -1
  124. package/styles/ui-stack.css +1 -1
  125. package/styles/ui-status-message.css +1 -1
  126. package/styles/ui-switch.css +1 -1
  127. package/styles/ui-switcher.css +1 -1
  128. package/styles/ui-table.css +1 -1
  129. package/styles/ui-tabs.css +1 -1
  130. package/styles/ui-text.css +1 -1
  131. package/styles/ui-textarea.css +1 -1
  132. package/styles/ui-toast-region.css +1 -1
  133. package/styles/ui-toast.css +1 -1
  134. package/styles/ui-tooltip.css +1 -1
  135. package/styles/ui-top-bar.css +1 -1
  136. package/styles/ui-tree-item.css +1 -1
  137. package/styles/ui-tree.css +1 -1
  138. package/vanilla/UiActionBar.d.ts +1 -1
  139. package/vanilla/UiActionBar.js +5 -1
  140. package/vanilla/UiAffordanceScope.d.ts +1 -1
  141. package/vanilla/UiAffordanceScope.js +3 -2
  142. package/vanilla/UiAvatar.d.ts +1 -1
  143. package/vanilla/UiAvatar.js +4 -3
  144. package/vanilla/UiAvatarGroup.d.ts +1 -1
  145. package/vanilla/UiAvatarGroup.js +3 -2
  146. package/vanilla/UiBadge.d.ts +1 -1
  147. package/vanilla/UiBadge.js +2 -1
  148. package/vanilla/UiBreadcrumbItem.d.ts +1 -1
  149. package/vanilla/UiBreadcrumbItem.js +2 -1
  150. package/vanilla/UiBreadcrumbs.d.ts +1 -1
  151. package/vanilla/UiBreadcrumbs.js +4 -7
  152. package/vanilla/UiButton.d.ts +1 -1
  153. package/vanilla/UiButton.js +6 -4
  154. package/vanilla/UiCallout.d.ts +1 -1
  155. package/vanilla/UiCallout.js +3 -2
  156. package/vanilla/UiCard.d.ts +1 -1
  157. package/vanilla/UiCard.js +6 -2
  158. package/vanilla/UiCheckbox.d.ts +1 -1
  159. package/vanilla/UiCheckbox.js +4 -2
  160. package/vanilla/UiCluster.d.ts +1 -1
  161. package/vanilla/UiCluster.js +2 -1
  162. package/vanilla/UiCombobox.d.ts +3 -2
  163. package/vanilla/UiCombobox.js +8 -2
  164. package/vanilla/UiContainer.d.ts +1 -1
  165. package/vanilla/UiContainer.js +2 -1
  166. package/vanilla/UiContextMenu.d.ts +1 -1
  167. package/vanilla/UiContextMenu.js +3 -2
  168. package/vanilla/UiCover.d.ts +1 -1
  169. package/vanilla/UiCover.js +4 -5
  170. package/vanilla/UiDescriptionItem.d.ts +1 -1
  171. package/vanilla/UiDescriptionItem.js +4 -7
  172. package/vanilla/UiDescriptionList.d.ts +1 -1
  173. package/vanilla/UiDescriptionList.js +2 -1
  174. package/vanilla/UiDialog.d.ts +1 -1
  175. package/vanilla/UiDialog.js +4 -2
  176. package/vanilla/UiDisclosure.d.ts +1 -1
  177. package/vanilla/UiDisclosure.js +4 -2
  178. package/vanilla/UiEditable.d.ts +1 -1
  179. package/vanilla/UiEditable.js +2 -2
  180. package/vanilla/UiEditorInsertTableGrid.d.ts +1 -1
  181. package/vanilla/UiEditorInsertTableGrid.js +1 -1
  182. package/vanilla/UiEditorMentionMenu.d.ts +1 -1
  183. package/vanilla/UiEditorMentionMenu.js +5 -2
  184. package/vanilla/UiEditorMentionMenuItem.d.ts +1 -1
  185. package/vanilla/UiEditorMentionMenuItem.js +3 -1
  186. package/vanilla/UiEditorSlashMenu.d.ts +1 -1
  187. package/vanilla/UiEditorSlashMenu.js +6 -2
  188. package/vanilla/UiEditorSlashMenuGroup.d.ts +1 -1
  189. package/vanilla/UiEditorSlashMenuGroup.js +4 -7
  190. package/vanilla/UiEditorSlashMenuItem.d.ts +1 -1
  191. package/vanilla/UiEditorSlashMenuItem.js +2 -1
  192. package/vanilla/UiEditorTableContextMenu.d.ts +1 -1
  193. package/vanilla/UiEditorTableContextMenu.js +2 -2
  194. package/vanilla/UiEditorTableOverlay.d.ts +12 -2
  195. package/vanilla/UiEditorTableOverlay.js +2 -2
  196. package/vanilla/UiEditorTableToolbar.d.ts +1 -1
  197. package/vanilla/UiEditorTableToolbar.js +2 -2
  198. package/vanilla/UiEditorToolbar.d.ts +1 -1
  199. package/vanilla/UiEditorToolbar.js +2 -1
  200. package/vanilla/UiFloatingActionButton.d.ts +1 -1
  201. package/vanilla/UiFloatingActionButton.js +2 -1
  202. package/vanilla/UiFormField.d.ts +1 -1
  203. package/vanilla/UiFormField.js +6 -1
  204. package/vanilla/UiGrid.d.ts +1 -1
  205. package/vanilla/UiGrid.js +4 -3
  206. package/vanilla/UiIcon.d.ts +1 -1
  207. package/vanilla/UiIcon.js +1 -1
  208. package/vanilla/UiIconButton.d.ts +1 -1
  209. package/vanilla/UiIconButton.js +4 -3
  210. package/vanilla/UiInput.d.ts +5 -4
  211. package/vanilla/UiInput.js +16 -13
  212. package/vanilla/UiInputGroup.d.ts +1 -1
  213. package/vanilla/UiInputGroup.js +5 -1
  214. package/vanilla/UiList.d.ts +1 -1
  215. package/vanilla/UiList.js +4 -2
  216. package/vanilla/UiListItem.d.ts +1 -1
  217. package/vanilla/UiListItem.js +5 -1
  218. package/vanilla/UiListbox.d.ts +1 -1
  219. package/vanilla/UiListbox.js +3 -2
  220. package/vanilla/UiMenu.d.ts +1 -1
  221. package/vanilla/UiMenu.js +3 -2
  222. package/vanilla/UiMenuGroup.d.ts +1 -1
  223. package/vanilla/UiMenuGroup.js +2 -1
  224. package/vanilla/UiMenuItem.d.ts +1 -1
  225. package/vanilla/UiMenuItem.js +6 -2
  226. package/vanilla/UiMeter.d.ts +1 -1
  227. package/vanilla/UiMeter.js +2 -2
  228. package/vanilla/UiNavItem.d.ts +2 -2
  229. package/vanilla/UiNavItem.js +11 -5
  230. package/vanilla/UiPageHeader.d.ts +1 -1
  231. package/vanilla/UiPageHeader.js +8 -5
  232. package/vanilla/UiPopover.d.ts +1 -1
  233. package/vanilla/UiPopover.js +3 -2
  234. package/vanilla/UiRadio.d.ts +1 -1
  235. package/vanilla/UiRadio.js +4 -2
  236. package/vanilla/UiRadioGroup.d.ts +1 -1
  237. package/vanilla/UiRadioGroup.js +3 -2
  238. package/vanilla/UiReel.d.ts +1 -1
  239. package/vanilla/UiReel.js +2 -1
  240. package/vanilla/UiScrollArea.d.ts +1 -1
  241. package/vanilla/UiScrollArea.js +3 -2
  242. package/vanilla/UiSearchResultRow.d.ts +1 -1
  243. package/vanilla/UiSearchResultRow.js +6 -1
  244. package/vanilla/UiSearchShell.d.ts +1 -1
  245. package/vanilla/UiSearchShell.js +6 -2
  246. package/vanilla/UiSection.d.ts +1 -1
  247. package/vanilla/UiSection.js +5 -2
  248. package/vanilla/UiSelect.d.ts +1 -1
  249. package/vanilla/UiSelect.js +3 -2
  250. package/vanilla/UiSeparator.d.ts +1 -1
  251. package/vanilla/UiSeparator.js +3 -7
  252. package/vanilla/UiSidebar.d.ts +1 -1
  253. package/vanilla/UiSidebar.js +3 -2
  254. package/vanilla/UiSpinner.d.ts +1 -1
  255. package/vanilla/UiSpinner.js +2 -2
  256. package/vanilla/UiStack.d.ts +1 -1
  257. package/vanilla/UiStack.js +2 -1
  258. package/vanilla/UiStatusMessage.d.ts +1 -1
  259. package/vanilla/UiStatusMessage.js +4 -2
  260. package/vanilla/UiSwitch.d.ts +1 -1
  261. package/vanilla/UiSwitch.js +4 -2
  262. package/vanilla/UiSwitcher.d.ts +1 -1
  263. package/vanilla/UiSwitcher.js +3 -2
  264. package/vanilla/UiTable.d.ts +1 -1
  265. package/vanilla/UiTable.js +3 -2
  266. package/vanilla/UiTabs.d.ts +1 -1
  267. package/vanilla/UiTabs.js +4 -2
  268. package/vanilla/UiText.d.ts +1 -1
  269. package/vanilla/UiText.js +13 -2
  270. package/vanilla/UiTextarea.d.ts +1 -1
  271. package/vanilla/UiTextarea.js +3 -3
  272. package/vanilla/UiToast.d.ts +1 -1
  273. package/vanilla/UiToast.js +4 -2
  274. package/vanilla/UiToastRegion.d.ts +1 -1
  275. package/vanilla/UiToastRegion.js +3 -2
  276. package/vanilla/UiTooltip.d.ts +1 -1
  277. package/vanilla/UiTooltip.js +3 -2
  278. package/vanilla/UiTopBar.d.ts +1 -1
  279. package/vanilla/UiTopBar.js +5 -1
  280. package/vanilla/UiTree.d.ts +1 -1
  281. package/vanilla/UiTree.js +3 -2
  282. package/vanilla/UiTreeItem.d.ts +1 -1
  283. package/vanilla/UiTreeItem.js +8 -4
  284. package/vue/UiActionBar.vue +33 -2
  285. package/vue/UiAffordanceScope.d.ts +23 -8
  286. package/vue/UiAffordanceScope.vue +90 -17
  287. package/vue/UiAvatar.d.ts +77 -19
  288. package/vue/UiAvatar.vue +151 -31
  289. package/vue/UiAvatarGroup.d.ts +50 -13
  290. package/vue/UiAvatarGroup.vue +121 -23
  291. package/vue/UiBadge.d.ts +32 -10
  292. package/vue/UiBadge.vue +104 -17
  293. package/vue/UiBreadcrumbItem.d.ts +14 -6
  294. package/vue/UiBreadcrumbItem.vue +82 -15
  295. package/vue/UiBreadcrumbs.d.ts +14 -6
  296. package/vue/UiBreadcrumbs.vue +78 -10
  297. package/vue/UiButton.d.ts +122 -27
  298. package/vue/UiButton.vue +288 -64
  299. package/vue/UiCallout.d.ts +14 -6
  300. package/vue/UiCallout.vue +84 -16
  301. package/vue/UiCard.d.ts +41 -12
  302. package/vue/UiCard.vue +149 -25
  303. package/vue/UiCheckbox.d.ts +85 -28
  304. package/vue/UiCheckbox.vue +173 -43
  305. package/vue/UiCluster.d.ts +41 -7
  306. package/vue/UiCluster.vue +122 -13
  307. package/vue/UiCombobox.d.ts +303 -110
  308. package/vue/UiCombobox.vue +723 -412
  309. package/vue/UiContainer.d.ts +23 -5
  310. package/vue/UiContainer.vue +89 -9
  311. package/vue/UiContextMenu.d.ts +38 -23
  312. package/vue/UiContextMenu.vue +113 -38
  313. package/vue/UiCover.d.ts +14 -6
  314. package/vue/UiCover.vue +76 -12
  315. package/vue/UiDescriptionItem.d.ts +14 -6
  316. package/vue/UiDescriptionItem.vue +78 -11
  317. package/vue/UiDescriptionList.d.ts +32 -9
  318. package/vue/UiDescriptionList.vue +106 -16
  319. package/vue/UiDialog.d.ts +89 -30
  320. package/vue/UiDialog.vue +168 -38
  321. package/vue/UiDisclosure.d.ts +70 -27
  322. package/vue/UiDisclosure.vue +149 -36
  323. package/vue/UiEditable.d.ts +119 -41
  324. package/vue/UiEditable.vue +220 -62
  325. package/vue/UiEditorInsertTableGrid.d.ts +46 -17
  326. package/vue/UiEditorInsertTableGrid.vue +215 -40
  327. package/vue/UiEditorMentionMenu.d.ts +128 -41
  328. package/vue/UiEditorMentionMenu.vue +211 -37
  329. package/vue/UiEditorMentionMenuItem.d.ts +32 -10
  330. package/vue/UiEditorMentionMenuItem.vue +98 -17
  331. package/vue/UiEditorSlashMenu.d.ts +110 -37
  332. package/vue/UiEditorSlashMenu.vue +189 -31
  333. package/vue/UiEditorSlashMenuGroup.d.ts +14 -6
  334. package/vue/UiEditorSlashMenuGroup.vue +80 -12
  335. package/vue/UiEditorSlashMenuItem.d.ts +50 -14
  336. package/vue/UiEditorSlashMenuItem.vue +120 -23
  337. package/vue/UiEditorTableContextMenu.d.ts +64 -20
  338. package/vue/UiEditorTableContextMenu.vue +326 -91
  339. package/vue/UiEditorTableOverlay.d.ts +170 -44
  340. package/vue/UiEditorTableOverlay.vue +420 -149
  341. package/vue/UiEditorTableToolbar.d.ts +64 -20
  342. package/vue/UiEditorTableToolbar.vue +344 -107
  343. package/vue/UiEditorToolbar.d.ts +14 -6
  344. package/vue/UiEditorToolbar.vue +79 -15
  345. package/vue/UiFloatingActionButton.d.ts +32 -10
  346. package/vue/UiFloatingActionButton.vue +96 -18
  347. package/vue/UiFormField.d.ts +32 -10
  348. package/vue/UiFormField.vue +99 -19
  349. package/vue/UiGrid.d.ts +32 -6
  350. package/vue/UiGrid.vue +95 -11
  351. package/vue/UiIcon.d.ts +14 -6
  352. package/vue/UiIcon.vue +99 -14
  353. package/vue/UiIconButton.d.ts +77 -19
  354. package/vue/UiIconButton.vue +176 -39
  355. package/vue/UiInput.d.ts +50 -19
  356. package/vue/UiInput.vue +326 -33
  357. package/vue/UiInputGroup.d.ts +14 -6
  358. package/vue/UiInputGroup.vue +79 -15
  359. package/vue/UiList.d.ts +41 -12
  360. package/vue/UiList.vue +125 -22
  361. package/vue/UiListItem.d.ts +23 -8
  362. package/vue/UiListItem.vue +88 -16
  363. package/vue/UiListbox.d.ts +86 -27
  364. package/vue/UiListbox.vue +272 -64
  365. package/vue/UiMenu.d.ts +69 -33
  366. package/vue/UiMenu.vue +142 -38
  367. package/vue/UiMenuGroup.d.ts +14 -6
  368. package/vue/UiMenuGroup.vue +80 -11
  369. package/vue/UiMenuItem.d.ts +61 -25
  370. package/vue/UiMenuItem.vue +174 -45
  371. package/vue/UiMeter.d.ts +68 -18
  372. package/vue/UiMeter.vue +215 -41
  373. package/vue/UiNavItem.d.ts +50 -11
  374. package/vue/UiNavItem.vue +163 -29
  375. package/vue/UiPageHeader.d.ts +14 -6
  376. package/vue/UiPageHeader.vue +75 -12
  377. package/vue/UiPopover.d.ts +43 -21
  378. package/vue/UiPopover.vue +147 -27
  379. package/vue/UiRadio.d.ts +67 -24
  380. package/vue/UiRadio.vue +147 -36
  381. package/vue/UiRadioGroup.d.ts +79 -29
  382. package/vue/UiRadioGroup.vue +162 -41
  383. package/vue/UiReel.d.ts +32 -6
  384. package/vue/UiReel.vue +97 -11
  385. package/vue/UiScrollArea.d.ts +14 -6
  386. package/vue/UiScrollArea.vue +83 -14
  387. package/vue/UiSearchResultRow.d.ts +23 -8
  388. package/vue/UiSearchResultRow.vue +86 -16
  389. package/vue/UiSearchShell.d.ts +48 -19
  390. package/vue/UiSearchShell.vue +120 -26
  391. package/vue/UiSection.d.ts +32 -10
  392. package/vue/UiSection.vue +103 -17
  393. package/vue/UiSelect.d.ts +59 -17
  394. package/vue/UiSelect.vue +140 -29
  395. package/vue/UiSeparator.d.ts +14 -6
  396. package/vue/UiSeparator.vue +80 -9
  397. package/vue/UiSidebar.d.ts +95 -31
  398. package/vue/UiSidebar.vue +172 -39
  399. package/vue/UiSpinner.d.ts +23 -8
  400. package/vue/UiSpinner.vue +115 -24
  401. package/vue/UiStack.d.ts +32 -6
  402. package/vue/UiStack.vue +107 -11
  403. package/vue/UiStatusMessage.d.ts +32 -10
  404. package/vue/UiStatusMessage.vue +109 -19
  405. package/vue/UiSwitch.d.ts +67 -24
  406. package/vue/UiSwitch.vue +147 -36
  407. package/vue/UiSwitcher.d.ts +41 -7
  408. package/vue/UiSwitcher.vue +118 -15
  409. package/vue/UiTable.d.ts +23 -8
  410. package/vue/UiTable.vue +91 -17
  411. package/vue/UiTabs.d.ts +66 -23
  412. package/vue/UiTabs.vue +230 -44
  413. package/vue/UiText.d.ts +68 -18
  414. package/vue/UiText.vue +308 -48
  415. package/vue/UiTextarea.d.ts +84 -21
  416. package/vue/UiTextarea.vue +172 -38
  417. package/vue/UiToast.d.ts +28 -13
  418. package/vue/UiToast.vue +103 -24
  419. package/vue/UiToastRegion.d.ts +29 -14
  420. package/vue/UiToastRegion.vue +202 -47
  421. package/vue/UiTooltip.d.ts +81 -31
  422. package/vue/UiTooltip.vue +192 -37
  423. package/vue/UiTopBar.vue +33 -2
  424. package/vue/UiTree.d.ts +72 -29
  425. package/vue/UiTree.vue +170 -49
  426. package/vue/UiTreeItem.d.ts +136 -35
  427. package/vue/UiTreeItem.vue +227 -61
  428. package/vue/chunks/UiActionBar.js +16 -3
  429. package/vue/chunks/UiAffordanceScope.js +66 -11
  430. package/vue/chunks/UiAvatar.js +121 -20
  431. package/vue/chunks/UiAvatarGroup.js +94 -15
  432. package/vue/chunks/UiBadge.js +82 -10
  433. package/vue/chunks/UiBreadcrumbItem.js +43 -9
  434. package/vue/chunks/UiBreadcrumbs.js +41 -5
  435. package/vue/chunks/UiButton.js +237 -51
  436. package/vue/chunks/UiCallout.js +53 -11
  437. package/vue/chunks/UiCard.js +145 -18
  438. package/vue/chunks/UiCheckbox.js +130 -30
  439. package/vue/chunks/UiCluster.js +99 -12
  440. package/vue/chunks/UiCombobox.js +545 -162
  441. package/vue/chunks/UiContainer.js +65 -7
  442. package/vue/chunks/UiContextMenu.js +56 -11
  443. package/vue/chunks/UiCover.js +41 -6
  444. package/vue/chunks/UiDescriptionItem.js +39 -4
  445. package/vue/chunks/UiDescriptionList.js +80 -10
  446. package/vue/chunks/UiDialog.js +125 -18
  447. package/vue/chunks/UiDisclosure.js +102 -17
  448. package/vue/chunks/UiEditable.js +154 -29
  449. package/vue/chunks/UiEditorInsertTableGrid.js +154 -31
  450. package/vue/chunks/UiEditorMentionMenu.js +221 -18
  451. package/vue/chunks/UiEditorMentionMenuItem.js +64 -7
  452. package/vue/chunks/UiEditorSlashMenu.js +201 -14
  453. package/vue/chunks/UiEditorSlashMenuGroup.js +43 -9
  454. package/vue/chunks/UiEditorSlashMenuItem.js +80 -14
  455. package/vue/chunks/UiEditorTableContextMenu.js +220 -49
  456. package/vue/chunks/UiEditorTableOverlay.js +390 -85
  457. package/vue/chunks/UiEditorTableToolbar.js +248 -71
  458. package/vue/chunks/UiEditorToolbar.js +44 -10
  459. package/vue/chunks/UiFloatingActionButton.js +57 -9
  460. package/vue/chunks/UiFormField.js +63 -12
  461. package/vue/chunks/UiGrid.js +80 -9
  462. package/vue/chunks/UiIcon.js +73 -16
  463. package/vue/chunks/UiIconButton.js +126 -28
  464. package/vue/chunks/UiInput.js +328 -22
  465. package/vue/chunks/UiInputGroup.js +44 -10
  466. package/vue/chunks/UiList.js +104 -15
  467. package/vue/chunks/UiListItem.js +57 -8
  468. package/vue/chunks/UiListbox.js +208 -49
  469. package/vue/chunks/UiMenu.js +88 -15
  470. package/vue/chunks/UiMenuGroup.js +41 -5
  471. package/vue/chunks/UiMenuItem.js +111 -32
  472. package/vue/chunks/UiMeter.js +166 -36
  473. package/vue/chunks/UiNavItem.js +133 -37
  474. package/vue/chunks/UiPageHeader.js +41 -6
  475. package/vue/chunks/UiPopover.js +81 -11
  476. package/vue/chunks/UiRadio.js +115 -24
  477. package/vue/chunks/UiRadioGroup.js +108 -19
  478. package/vue/chunks/UiReel.js +81 -10
  479. package/vue/chunks/UiScrollArea.js +47 -10
  480. package/vue/chunks/UiSearchResultRow.js +47 -8
  481. package/vue/chunks/UiSearchShell.js +84 -24
  482. package/vue/chunks/UiSection.js +77 -10
  483. package/vue/chunks/UiSelect.js +108 -20
  484. package/vue/chunks/UiSeparator.js +41 -5
  485. package/vue/chunks/UiSidebar.js +136 -20
  486. package/vue/chunks/UiSpinner.js +64 -19
  487. package/vue/chunks/UiStack.js +87 -10
  488. package/vue/chunks/UiStatusMessage.js +82 -12
  489. package/vue/chunks/UiSwitch.js +115 -24
  490. package/vue/chunks/UiSwitcher.js +103 -15
  491. package/vue/chunks/UiTable.js +63 -11
  492. package/vue/chunks/UiTabs.js +170 -30
  493. package/vue/chunks/UiText.js +365 -38
  494. package/vue/chunks/UiTextarea.js +132 -26
  495. package/vue/chunks/UiToast.js +70 -12
  496. package/vue/chunks/UiToastRegion.js +154 -33
  497. package/vue/chunks/UiTooltip.js +124 -16
  498. package/vue/chunks/UiTopBar.js +16 -3
  499. package/vue/chunks/UiTree.js +107 -15
  500. package/vue/chunks/UiTreeItem.js +167 -43
  501. package/vue/chunks/control.js +171 -0
  502. package/vue/chunks/host.js +170 -27
  503. package/vue/chunks/props.js +477 -0
  504. package/vue/components.css +1192 -1192
  505. package/vue/editor/index.js +58 -15
  506. package/vue/editor/primitives.d.ts +52 -2
  507. package/vue/host.ts +370 -39
@@ -1,17 +1,31 @@
1
1
  import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
2
- import { createElementBlock, createElementVNode, defineComponent, mergeProps, openBlock, renderSlot } from "vue";
2
+ import { n as preserveRootFocus } from "./host.js";
3
+ import { t as checkedProp } from "./props.js";
4
+ import { computed, createElementBlock, createElementVNode, defineComponent, getCurrentInstance, mergeProps, openBlock, renderSlot, useTemplateRef, watchSyncEffect } from "vue";
3
5
  //#region .build/vue/UiNavItem.vue?vue&type=script&setup=true&lang.ts
4
6
  var _hoisted_1 = [
5
7
  "href",
6
8
  "target",
7
9
  "rel",
8
- "aria-current"
10
+ "aria-current",
11
+ "data-as",
12
+ "data-current",
13
+ "data-href",
14
+ "data-rel",
15
+ "data-target"
9
16
  ];
10
17
  var _hoisted_2 = { class: "leading" };
11
18
  var _hoisted_3 = { class: "content" };
12
19
  var _hoisted_4 = { class: "label" };
13
20
  var _hoisted_5 = { class: "description" };
14
- var _hoisted_6 = ["aria-current"];
21
+ var _hoisted_6 = [
22
+ "aria-current",
23
+ "data-as",
24
+ "data-current",
25
+ "data-href",
26
+ "data-rel",
27
+ "data-target"
28
+ ];
15
29
  var _hoisted_7 = { class: "leading" };
16
30
  var _hoisted_8 = { class: "content" };
17
31
  var _hoisted_9 = { class: "label" };
@@ -22,16 +36,84 @@ var UiNavItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
22
36
  inheritAttrs: false,
23
37
  __name: "UiNavItem",
24
38
  props: {
25
- as: { default: "button" },
39
+ as: {
40
+ type: null,
41
+ default: "button"
42
+ },
26
43
  current: {
27
- type: [Boolean, String],
28
- default: false
44
+ type: null,
45
+ default: "false"
46
+ },
47
+ href: {
48
+ type: null,
49
+ default: null
29
50
  },
30
- href: {},
31
- rel: {},
32
- target: {}
51
+ rel: {
52
+ type: null,
53
+ default: null
54
+ },
55
+ target: {
56
+ type: null,
57
+ default: null
58
+ }
33
59
  },
34
60
  setup(__props) {
61
+ const props = __props;
62
+ const checkedProps = computed(() => ({
63
+ as: checkedProp(props["as"], {
64
+ kind: "terminal",
65
+ name: "keyword"
66
+ }, false, "as", void 0, ["button", "a"]),
67
+ current: checkedProp(props["current"], {
68
+ kind: "terminal",
69
+ name: "keyword"
70
+ }, false, "current", void 0, [
71
+ "true",
72
+ "false",
73
+ "page",
74
+ "step",
75
+ "location"
76
+ ]),
77
+ href: checkedProp(props["href"], {
78
+ kind: "terminal",
79
+ name: "string"
80
+ }, false, "href", void 0, void 0),
81
+ rel: checkedProp(props["rel"], {
82
+ kind: "terminal",
83
+ name: "string"
84
+ }, false, "rel", void 0, void 0),
85
+ target: checkedProp(props["target"], {
86
+ kind: "terminal",
87
+ name: "string"
88
+ }, false, "target", void 0, void 0)
89
+ }));
90
+ checkedProps.value;
91
+ watchSyncEffect(() => {
92
+ checkedProps.value;
93
+ });
94
+ function nativeAttrs(attrs) {
95
+ const names = Object.keys(attrs);
96
+ if (!names.some((name) => Object.hasOwn(Object.prototype, name))) return attrs;
97
+ return Object.fromEntries(names.map((name) => [Object.hasOwn(Object.prototype, name) ? name === "__proto__" ? "__Proto__" : name[0].toUpperCase() + name.slice(1) : name, attrs[name]]));
98
+ }
99
+ const componentInstance = getCurrentInstance();
100
+ function reflectedProp(name, kebab, value, fallback, bound, separator) {
101
+ const incoming = componentInstance?.vnode.props;
102
+ if (!bound && (incoming === null || incoming === void 0 || !Object.hasOwn(incoming, name) && !Object.hasOwn(incoming, kebab))) return fallback;
103
+ if (value === null || value === void 0) return void 0;
104
+ return Array.isArray(value) && separator !== void 0 ? value.join(separator) : typeof value === "object" ? JSON.stringify(value) : String(value);
105
+ }
106
+ const hydrationInstance = getCurrentInstance();
107
+ const root = useTemplateRef("@html-next/root");
108
+ preserveRootFocus(root);
109
+ const hydrationNode = hydrationInstance?.vnode.el;
110
+ 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."), {
111
+ name: "HtmlDiagnosticError",
112
+ diagnostic: Object.freeze({
113
+ code: "HR005",
114
+ message: "Server markup for <ui-nav-item> has an incompatible root."
115
+ })
116
+ });
35
117
  function text(value) {
36
118
  if (Array.isArray(value)) return value.map(text).join(" ");
37
119
  return value === null || value === void 0 || typeof value === "object" ? "" : String(value);
@@ -41,32 +123,38 @@ var UiNavItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
41
123
  return value === true ? "" : text(value);
42
124
  }
43
125
  return (_ctx, _cache) => {
44
- return __props.as === "a" ? (openBlock(), createElementBlock("a", mergeProps({
126
+ return checkedProps.value.as === "a" ? (openBlock(), createElementBlock("a", mergeProps({
45
127
  key: 0,
46
128
  "data-component": "ui-nav-item"
47
- }, _ctx.$attrs, {
48
- href: __props.href,
49
- target: __props.target,
50
- rel: __props.rel,
129
+ }, nativeAttrs(_ctx.$attrs), {
130
+ href: checkedProps.value.href ?? void 0,
131
+ target: checkedProps.value.target ?? void 0,
132
+ rel: checkedProps.value.rel ?? void 0,
51
133
  "aria-current": typeof {
52
134
  true: "page",
53
135
  false: null,
54
136
  page: "page",
55
137
  step: "step",
56
138
  location: "location"
57
- }[`${__props.current}`] === "boolean" ? String({
139
+ }[`${checkedProps.value.current ?? ""}`] === "boolean" ? String({
58
140
  true: "page",
59
141
  false: null,
60
142
  page: "page",
61
143
  step: "step",
62
144
  location: "location"
63
- }[`${__props.current}`]) : attribute({
145
+ }[`${checkedProps.value.current ?? ""}`]) : attribute({
64
146
  true: "page",
65
147
  false: null,
66
148
  page: "page",
67
149
  step: "step",
68
150
  location: "location"
69
- }[`${__props.current}`])
151
+ }[`${checkedProps.value.current ?? ""}`]),
152
+ "data-as": reflectedProp("as", "as", checkedProps.value.as, void 0, false),
153
+ "data-current": reflectedProp("current", "current", checkedProps.value.current, void 0, false),
154
+ "data-href": reflectedProp("href", "href", checkedProps.value.href, void 0, false),
155
+ "data-rel": reflectedProp("rel", "rel", checkedProps.value.rel, void 0, false),
156
+ "data-target": reflectedProp("target", "target", checkedProps.value.target, void 0, false),
157
+ ref: "@html-next/root"
70
158
  }), [
71
159
  _cache[0] || (_cache[0] = createElementVNode("span", {
72
160
  class: "indicator",
@@ -78,25 +166,33 @@ var UiNavItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
78
166
  key: 1,
79
167
  "data-component": "ui-nav-item",
80
168
  type: "button"
81
- }, _ctx.$attrs, { "aria-current": typeof {
82
- true: "page",
83
- false: null,
84
- page: "page",
85
- step: "step",
86
- location: "location"
87
- }[`${__props.current}`] === "boolean" ? String({
88
- true: "page",
89
- false: null,
90
- page: "page",
91
- step: "step",
92
- location: "location"
93
- }[`${__props.current}`]) : attribute({
94
- true: "page",
95
- false: null,
96
- page: "page",
97
- step: "step",
98
- location: "location"
99
- }[`${__props.current}`]) }), [
169
+ }, nativeAttrs(_ctx.$attrs), {
170
+ "aria-current": typeof {
171
+ true: "page",
172
+ false: null,
173
+ page: "page",
174
+ step: "step",
175
+ location: "location"
176
+ }[`${checkedProps.value.current ?? ""}`] === "boolean" ? String({
177
+ true: "page",
178
+ false: null,
179
+ page: "page",
180
+ step: "step",
181
+ location: "location"
182
+ }[`${checkedProps.value.current ?? ""}`]) : attribute({
183
+ true: "page",
184
+ false: null,
185
+ page: "page",
186
+ step: "step",
187
+ location: "location"
188
+ }[`${checkedProps.value.current ?? ""}`]),
189
+ "data-as": reflectedProp("as", "as", checkedProps.value.as, void 0, false),
190
+ "data-current": reflectedProp("current", "current", checkedProps.value.current, void 0, false),
191
+ "data-href": reflectedProp("href", "href", checkedProps.value.href, void 0, false),
192
+ "data-rel": reflectedProp("rel", "rel", checkedProps.value.rel, void 0, false),
193
+ "data-target": reflectedProp("target", "target", checkedProps.value.target, void 0, false),
194
+ ref: "@html-next/root"
195
+ }), [
100
196
  _cache[1] || (_cache[1] = createElementVNode("span", {
101
197
  class: "indicator",
102
198
  "aria-hidden": "true"
@@ -106,6 +202,6 @@ var UiNavItem_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
106
202
  ], 16, _hoisted_6));
107
203
  };
108
204
  }
109
- }), [["__scopeId", "data-v-7c04111b"]]);
205
+ }), [["__scopeId", "data-v-a1248155"]]);
110
206
  //#endregion
111
207
  export { UiNavItem_default as t };
@@ -1,7 +1,8 @@
1
1
  import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
2
- import { computed, createElementBlock, createElementVNode, defineComponent, mergeProps, openBlock, renderSlot } from "vue";
2
+ import { t as checkedProp } from "./props.js";
3
+ import { computed, createElementBlock, createElementVNode, defineComponent, getCurrentInstance, mergeProps, openBlock, renderSlot, watchSyncEffect } from "vue";
3
4
  //#region .build/vue/UiPageHeader.vue?vue&type=script&setup=true&lang.ts
4
- var _hoisted_1 = ["data-ui-page-header-state"];
5
+ var _hoisted_1 = ["data-align", "data-ui-page-header-state"];
5
6
  var _hoisted_2 = { class: "leading" };
6
7
  var _hoisted_3 = { class: "copy" };
7
8
  var _hoisted_4 = { class: "eyebrow" };
@@ -13,13 +14,47 @@ var _hoisted_7 = { class: "actions" };
13
14
  var UiPageHeader_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
14
15
  inheritAttrs: false,
15
16
  __name: "UiPageHeader",
16
- props: { align: { default: "start" } },
17
+ props: { align: {
18
+ type: null,
19
+ default: "start"
20
+ } },
17
21
  setup(__props) {
18
22
  const props = __props;
23
+ const checkedProps = computed(() => ({ align: checkedProp(props["align"], {
24
+ kind: "terminal",
25
+ name: "keyword"
26
+ }, false, "align", void 0, ["start", "center"]) }));
27
+ checkedProps.value;
28
+ watchSyncEffect(() => {
29
+ checkedProps.value;
30
+ });
31
+ function nativeAttrs(attrs) {
32
+ const names = Object.keys(attrs);
33
+ if (!names.some((name) => Object.hasOwn(Object.prototype, name))) return attrs;
34
+ return Object.fromEntries(names.map((name) => [Object.hasOwn(Object.prototype, name) ? name === "__proto__" ? "__Proto__" : name[0].toUpperCase() + name.slice(1) : name, attrs[name]]));
35
+ }
36
+ const componentInstance = getCurrentInstance();
37
+ function reflectedProp(name, kebab, value, fallback, bound, separator) {
38
+ const incoming = componentInstance?.vnode.props;
39
+ if (!bound && (incoming === null || incoming === void 0 || !Object.hasOwn(incoming, name) && !Object.hasOwn(incoming, kebab))) return fallback;
40
+ if (value === null || value === void 0) return void 0;
41
+ return Array.isArray(value) && separator !== void 0 ? value.join(separator) : typeof value === "object" ? JSON.stringify(value) : String(value);
42
+ }
43
+ const hydrationNode = getCurrentInstance()?.vnode.el;
44
+ 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."), {
45
+ name: "HtmlDiagnosticError",
46
+ diagnostic: Object.freeze({
47
+ code: "HR005",
48
+ message: "Server markup for <ui-page-header> has an incompatible root."
49
+ })
50
+ });
19
51
  /** The values the styles' :host-state() rules test. */
20
- const hostState = computed(() => [props.align && `align align=${props.align}`].filter(Boolean).join(" "));
52
+ const hostState = computed(() => [checkedProps.value.align && "align", checkedProps.value.align != null && `align=${encodeURIComponent(checkedProps.value.align)}`].filter(Boolean).join(" "));
21
53
  return (_ctx, _cache) => {
22
- return openBlock(), createElementBlock("header", mergeProps({ "data-component": "ui-page-header" }, _ctx.$attrs, { "data-ui-page-header-state": hostState.value || void 0 }), [
54
+ return openBlock(), createElementBlock("header", mergeProps({ "data-component": "ui-page-header" }, nativeAttrs(_ctx.$attrs), {
55
+ "data-align": reflectedProp("align", "align", checkedProps.value.align, void 0, false),
56
+ "data-ui-page-header-state": hostState.value || void 0
57
+ }), [
23
58
  createElementVNode("span", _hoisted_2, [renderSlot(_ctx.$slots, "leading", {}, void 0, true)]),
24
59
  createElementVNode("span", _hoisted_3, [
25
60
  createElementVNode("span", _hoisted_4, [renderSlot(_ctx.$slots, "eyebrow", {}, void 0, true)]),
@@ -30,6 +65,6 @@ var UiPageHeader_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
30
65
  ], 16, _hoisted_1);
31
66
  };
32
67
  }
33
- }), [["__scopeId", "data-v-db66b0a4"]]);
68
+ }), [["__scopeId", "data-v-c2302b67"]]);
34
69
  //#endregion
35
70
  export { UiPageHeader_default as t };
@@ -1,9 +1,14 @@
1
1
  import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
2
- import { n as useComponentHost, t as createDispatch } from "./host.js";
3
- import { computed, createElementBlock, createElementVNode, defineComponent, mergeProps, openBlock, ref, renderSlot } from "vue";
4
- import * as controllerModule from "@threadlabs/looma/components/ui-popover/ui-popover.js";
2
+ import { r as useComponentHost, t as createDispatch } from "./host.js";
3
+ import { t as checkedProp } from "./props.js";
4
+ import { computed, createElementBlock, createElementVNode, defineComponent, getCurrentInstance, mergeProps, openBlock, ref, renderSlot, watchSyncEffect } from "vue";
5
5
  //#region .build/vue/UiPopover.vue?vue&type=script&setup=true&lang.ts
6
- var _hoisted_1 = ["data-ui-popover-state"];
6
+ var _hoisted_1 = [
7
+ "data-for",
8
+ "data-open",
9
+ "data-placement",
10
+ "data-ui-popover-state"
11
+ ];
7
12
  var _hoisted_2 = { class: "surface" };
8
13
  //#endregion
9
14
  //#region .build/vue/UiPopover.vue
@@ -11,12 +16,18 @@ var UiPopover_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
11
16
  inheritAttrs: false,
12
17
  __name: "UiPopover",
13
18
  props: {
14
- for: { default: "" },
19
+ for: {
20
+ type: null,
21
+ default: ""
22
+ },
15
23
  open: {
16
- type: Boolean,
24
+ type: null,
17
25
  default: false
18
26
  },
19
- placement: { default: "bottom-start" }
27
+ placement: {
28
+ type: null,
29
+ default: "bottom-start"
30
+ }
20
31
  },
21
32
  emits: [
22
33
  "update:open",
@@ -25,9 +36,61 @@ var UiPopover_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
25
36
  ],
26
37
  setup(__props, { emit: __emit }) {
27
38
  const props = __props;
39
+ const checkedProps = computed(() => ({
40
+ for: checkedProp(props["for"], {
41
+ kind: "terminal",
42
+ name: "string"
43
+ }, false, "for", void 0, void 0),
44
+ open: checkedProp(props["open"], {
45
+ kind: "terminal",
46
+ name: "boolean"
47
+ }, false, "open", void 0, void 0),
48
+ placement: checkedProp(props["placement"], {
49
+ kind: "terminal",
50
+ name: "keyword"
51
+ }, false, "placement", void 0, [
52
+ "top",
53
+ "top-start",
54
+ "top-end",
55
+ "bottom",
56
+ "bottom-start",
57
+ "bottom-end",
58
+ "left",
59
+ "left-start",
60
+ "left-end",
61
+ "right",
62
+ "right-start",
63
+ "right-end"
64
+ ])
65
+ }));
66
+ checkedProps.value;
67
+ watchSyncEffect(() => {
68
+ checkedProps.value;
69
+ });
70
+ function nativeAttrs(attrs) {
71
+ const names = Object.keys(attrs);
72
+ if (!names.some((name) => Object.hasOwn(Object.prototype, name))) return attrs;
73
+ return Object.fromEntries(names.map((name) => [Object.hasOwn(Object.prototype, name) ? name === "__proto__" ? "__Proto__" : name[0].toUpperCase() + name.slice(1) : name, attrs[name]]));
74
+ }
75
+ const componentInstance = getCurrentInstance();
76
+ function reflectedProp(name, kebab, value, fallback, bound, separator) {
77
+ const incoming = componentInstance?.vnode.props;
78
+ if (!bound && (incoming === null || incoming === void 0 || !Object.hasOwn(incoming, name) && !Object.hasOwn(incoming, kebab))) return fallback;
79
+ if (value === null || value === void 0) return void 0;
80
+ return Array.isArray(value) && separator !== void 0 ? value.join(separator) : typeof value === "object" ? JSON.stringify(value) : String(value);
81
+ }
82
+ const hydrationInstance = getCurrentInstance();
28
83
  const emit = __emit;
29
84
  const root = ref(null);
30
85
  const internalOpen = ref(false);
86
+ const hydrationNode = hydrationInstance?.vnode.el;
87
+ if (typeof window !== "undefined" && hydrationNode != null && (!(hydrationNode instanceof Element) || hydrationNode.localName !== "span")) throw Object.assign(/* @__PURE__ */ new Error("HR005: Server markup for <ui-popover> has an incompatible root."), {
88
+ name: "HtmlDiagnosticError",
89
+ diagnostic: Object.freeze({
90
+ code: "HR005",
91
+ message: "Server markup for <ui-popover> has an incompatible root."
92
+ })
93
+ });
31
94
  /** The values the styles' :host-state() rules test. */
32
95
  const hostState = computed(() => [internalOpen.value && "internalOpen"].filter(Boolean).join(" "));
33
96
  const isOpenDetail = (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && typeof detail["open"] === "boolean" && (detail["reason"] === "action" || detail["reason"] === "programmatic" || detail["reason"] === "light-dismiss" || detail["reason"] === "escape") && (detail["trigger"] === "keyboard" || detail["trigger"] === "pointer" || detail["trigger"] === "programmatic") && Object.keys(detail).every((key) => [
@@ -42,20 +105,27 @@ var UiPopover_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
42
105
  },
43
106
  modeled: ["open"]
44
107
  });
45
- useComponentHost(controllerModule.default, {
108
+ useComponentHost(() => import("@threadlabs/looma/components/ui-popover/ui-popover.js"), {
46
109
  root,
47
110
  dispatch,
48
- props,
111
+ controllerSource: {
112
+ specifier: "../components/ui-popover/ui-popover.js",
113
+ definition: "./components/ui-popover/ui-popover.html"
114
+ },
115
+ props: checkedProps,
49
116
  state: { internalOpen }
50
117
  });
51
118
  return (_ctx, _cache) => {
52
- return openBlock(), createElementBlock("span", mergeProps({ "data-component": "ui-popover" }, _ctx.$attrs, {
119
+ return openBlock(), createElementBlock("span", mergeProps({ "data-component": "ui-popover" }, nativeAttrs(_ctx.$attrs), {
120
+ "data-for": reflectedProp("for", "for", checkedProps.value.for, void 0, false),
121
+ "data-open": reflectedProp("open", "open", checkedProps.value.open, void 0, false),
122
+ "data-placement": reflectedProp("placement", "placement", checkedProps.value.placement, void 0, false),
53
123
  "data-ui-popover-state": hostState.value || void 0,
54
124
  ref_key: "root",
55
125
  ref: root
56
126
  }), [createElementVNode("div", _hoisted_2, [renderSlot(_ctx.$slots, "default", {}, void 0, true)])], 16, _hoisted_1);
57
127
  };
58
128
  }
59
- }), [["__scopeId", "data-v-fd69c5a5"]]);
129
+ }), [["__scopeId", "data-v-972e9c09"]]);
60
130
  //#endregion
61
131
  export { UiPopover_default as t };
@@ -1,14 +1,22 @@
1
1
  import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
2
- import { n as useComponentHost, t as createDispatch } from "./host.js";
3
- import { computed, createElementBlock, createElementVNode, defineComponent, mergeProps, openBlock, ref, renderSlot, useTemplateRef } from "vue";
4
- import * as controllerModule from "@threadlabs/looma/components/ui-radio/ui-radio.js";
2
+ import { r as useComponentHost, t as createDispatch } from "./host.js";
3
+ import { t as checkedProp } from "./props.js";
4
+ import { r as vBindControl } from "./control.js";
5
+ import { computed, createElementBlock, createElementVNode, defineComponent, getCurrentInstance, mergeProps, openBlock, ref, renderSlot, unref, useTemplateRef, watchSyncEffect, withDirectives } from "vue";
5
6
  //#region .build/vue/UiRadio.vue?vue&type=script&setup=true&lang.ts
6
- var _hoisted_1 = ["data-ui-radio-state"];
7
+ var _hoisted_1 = [
8
+ "data-checked",
9
+ "data-disabled",
10
+ "data-name",
11
+ "data-required",
12
+ "data-size",
13
+ "data-value",
14
+ "data-ui-radio-state"
15
+ ];
7
16
  var _hoisted_2 = [
8
- ".checked",
9
17
  "disabled",
10
18
  "required",
11
- "value",
19
+ "^value",
12
20
  "name"
13
21
  ];
14
22
  var _hoisted_3 = { class: "text" };
@@ -25,20 +33,29 @@ var UiRadio_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
25
33
  __name: "UiRadio",
26
34
  props: {
27
35
  checked: {
28
- type: Boolean,
36
+ type: null,
29
37
  default: false
30
38
  },
31
39
  disabled: {
32
- type: Boolean,
40
+ type: null,
33
41
  default: false
34
42
  },
35
- name: { default: "" },
43
+ name: {
44
+ type: null,
45
+ default: ""
46
+ },
36
47
  required: {
37
- type: Boolean,
48
+ type: null,
38
49
  default: false
39
50
  },
40
- size: { default: "md" },
41
- value: { default: "on" }
51
+ size: {
52
+ type: null,
53
+ default: "md"
54
+ },
55
+ value: {
56
+ type: null,
57
+ default: "on"
58
+ }
42
59
  },
43
60
  emits: [
44
61
  "update:checked",
@@ -47,13 +64,72 @@ var UiRadio_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
47
64
  ],
48
65
  setup(__props, { emit: __emit }) {
49
66
  const props = __props;
67
+ const checkedProps = computed(() => ({
68
+ checked: checkedProp(props["checked"], {
69
+ kind: "terminal",
70
+ name: "boolean"
71
+ }, false, "checked", void 0, void 0),
72
+ disabled: checkedProp(props["disabled"], {
73
+ kind: "terminal",
74
+ name: "boolean"
75
+ }, false, "disabled", void 0, void 0),
76
+ name: checkedProp(props["name"], {
77
+ kind: "terminal",
78
+ name: "string"
79
+ }, false, "name", void 0, void 0),
80
+ required: checkedProp(props["required"], {
81
+ kind: "terminal",
82
+ name: "boolean"
83
+ }, false, "required", void 0, void 0),
84
+ size: checkedProp(props["size"], {
85
+ kind: "terminal",
86
+ name: "keyword"
87
+ }, false, "size", void 0, [
88
+ "sm",
89
+ "md",
90
+ "lg"
91
+ ]),
92
+ value: checkedProp(props["value"], {
93
+ kind: "terminal",
94
+ name: "string"
95
+ }, false, "value", void 0, void 0)
96
+ }));
97
+ checkedProps.value;
98
+ watchSyncEffect(() => {
99
+ checkedProps.value;
100
+ });
101
+ function nativeAttrs(attrs) {
102
+ const names = Object.keys(attrs);
103
+ if (!names.some((name) => Object.hasOwn(Object.prototype, name))) return attrs;
104
+ return Object.fromEntries(names.map((name) => [Object.hasOwn(Object.prototype, name) ? name === "__proto__" ? "__Proto__" : name[0].toUpperCase() + name.slice(1) : name, attrs[name]]));
105
+ }
106
+ const componentInstance = getCurrentInstance();
107
+ function reflectedProp(name, kebab, value, fallback, bound, separator) {
108
+ const incoming = componentInstance?.vnode.props;
109
+ if (!bound && (incoming === null || incoming === void 0 || !Object.hasOwn(incoming, name) && !Object.hasOwn(incoming, kebab))) return fallback;
110
+ if (value === null || value === void 0) return void 0;
111
+ return Array.isArray(value) && separator !== void 0 ? value.join(separator) : typeof value === "object" ? JSON.stringify(value) : String(value);
112
+ }
113
+ const hydrationInstance = getCurrentInstance();
50
114
  const emit = __emit;
51
115
  const root = ref(null);
52
116
  const inputElement = useTemplateRef("input");
53
117
  const descriptionElement = useTemplateRef("description");
54
118
  const internalChecked = ref(false);
119
+ const hydrationNode = hydrationInstance?.vnode.el;
120
+ if (typeof window !== "undefined" && hydrationNode != null && (!(hydrationNode instanceof Element) || hydrationNode.localName !== "label")) throw Object.assign(/* @__PURE__ */ new Error("HR005: Server markup for <ui-radio> has an incompatible root."), {
121
+ name: "HtmlDiagnosticError",
122
+ diagnostic: Object.freeze({
123
+ code: "HR005",
124
+ message: "Server markup for <ui-radio> has an incompatible root."
125
+ })
126
+ });
55
127
  /** The values the styles' :host-state() rules test. */
56
- const hostState = computed(() => [props.disabled && "disabled", props.size && `size size=${props.size}`].filter(Boolean).join(" "));
128
+ const hostState = computed(() => [
129
+ checkedProps.value.disabled && "disabled",
130
+ checkedProps.value.size && "size",
131
+ checkedProps.value.size != null && `size=${encodeURIComponent(checkedProps.value.size)}`
132
+ ].filter(Boolean).join(" "));
57
133
  const isChangeDetail = (detail) => detail !== null && typeof detail === "object" && !Array.isArray(detail) && typeof detail["checked"] === "boolean" && typeof detail["value"] === "string" && (detail["trigger"] === "keyboard" || detail["trigger"] === "pointer" || detail["trigger"] === "programmatic") && Object.keys(detail).every((key) => [
58
134
  "checked",
59
135
  "value",
@@ -63,10 +139,14 @@ var UiRadio_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
63
139
  checks: { change: isChangeDetail },
64
140
  modeled: ["checked", "value"]
65
141
  });
66
- useComponentHost(controllerModule.default, {
142
+ useComponentHost(() => import("@threadlabs/looma/components/ui-radio/ui-radio.js"), {
67
143
  root,
68
144
  dispatch,
69
- props,
145
+ controllerSource: {
146
+ specifier: "../components/ui-radio/ui-radio.js",
147
+ definition: "./components/ui-radio/ui-radio.html"
148
+ },
149
+ props: checkedProps,
70
150
  refs: {
71
151
  input: inputElement,
72
152
  description: descriptionElement
@@ -74,21 +154,32 @@ var UiRadio_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
74
154
  state: { internalChecked }
75
155
  });
76
156
  return (_ctx, _cache) => {
77
- return openBlock(), createElementBlock("label", mergeProps({ "data-component": "ui-radio" }, _ctx.$attrs, {
157
+ return openBlock(), createElementBlock("label", mergeProps({ "data-component": "ui-radio" }, nativeAttrs(_ctx.$attrs), {
158
+ "data-checked": reflectedProp("checked", "checked", checkedProps.value.checked, void 0, false),
159
+ "data-disabled": reflectedProp("disabled", "disabled", checkedProps.value.disabled, void 0, false),
160
+ "data-name": reflectedProp("name", "name", checkedProps.value.name, void 0, false),
161
+ "data-required": reflectedProp("required", "required", checkedProps.value.required, void 0, false),
162
+ "data-size": reflectedProp("size", "size", checkedProps.value.size, void 0, false),
163
+ "data-value": reflectedProp("value", "value", checkedProps.value.value, void 0, false),
78
164
  "data-ui-radio-state": hostState.value || void 0,
79
165
  ref_key: "root",
80
166
  ref: root
81
- }), [createElementVNode("input", {
167
+ }), [withDirectives(createElementVNode("input", {
82
168
  type: "radio",
83
- ".checked": internalChecked.value,
84
- disabled: __props.disabled,
85
- required: __props.required,
86
- value: __props.value,
87
- name: __props.name,
169
+ disabled: checkedProps.value.disabled ?? void 0,
170
+ required: checkedProps.value.required ?? void 0,
171
+ "^value": checkedProps.value.value ?? void 0,
172
+ name: checkedProps.value.name ?? void 0,
88
173
  ref: "input"
89
- }, null, 40, _hoisted_2), createElementVNode("span", _hoisted_3, [createElementVNode("span", _hoisted_4, [renderSlot(_ctx.$slots, "default", {}, void 0, true)]), createElementVNode("span", _hoisted_5, [renderSlot(_ctx.$slots, "description", {}, void 0, true)], 512)])], 16, _hoisted_1);
174
+ }, null, 8, _hoisted_2), [[unref(vBindControl), {
175
+ tag: "input",
176
+ name: "checked",
177
+ value: internalChecked.value,
178
+ nativeProperty: true,
179
+ defaultChecked: false
180
+ }]]), createElementVNode("span", _hoisted_3, [createElementVNode("span", _hoisted_4, [renderSlot(_ctx.$slots, "default", {}, void 0, true)]), createElementVNode("span", _hoisted_5, [renderSlot(_ctx.$slots, "description", {}, void 0, true)], 512)])], 16, _hoisted_1);
90
181
  };
91
182
  }
92
- }), [["__scopeId", "data-v-4e6e9ccd"]]);
183
+ }), [["__scopeId", "data-v-ad34aec5"]]);
93
184
  //#endregion
94
185
  export { UiRadio_default as t };