@threadlabs/looma 0.22.8 → 0.22.10

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 (414) hide show
  1. package/components/ui-affordance-scope/ui-affordance-scope.js +2 -2
  2. package/components/ui-avatar/ui-avatar.js +5 -5
  3. package/components/ui-avatar-group/ui-avatar-group.js +5 -5
  4. package/components/ui-badge/ui-badge.html +10 -0
  5. package/components/ui-button/ui-button.js +1 -1
  6. package/components/ui-checkbox/ui-checkbox.js +5 -5
  7. package/components/ui-combobox/ui-combobox.js +61 -61
  8. package/components/ui-context-menu/ui-context-menu.js +6 -6
  9. package/components/ui-dialog/ui-dialog.js +9 -9
  10. package/components/ui-disclosure/ui-disclosure.js +6 -6
  11. package/components/ui-editable/ui-editable.js +6 -6
  12. package/components/ui-editor-insert-table-grid/ui-editor-insert-table-grid.js +4 -4
  13. package/components/ui-editor-mention-menu/ui-editor-mention-menu.js +8 -8
  14. package/components/ui-editor-slash-menu/ui-editor-slash-menu.js +6 -6
  15. package/components/ui-editor-table-context-menu/ui-editor-table-context-menu.js +5 -5
  16. package/components/ui-editor-table-overlay/ui-editor-table-overlay.js +4 -4
  17. package/components/ui-editor-table-toolbar/ui-editor-table-toolbar.js +5 -5
  18. package/components/ui-form-field/ui-form-field.js +4 -4
  19. package/components/ui-icon-button/ui-icon-button.js +2 -2
  20. package/components/ui-input/ui-input.js +1 -1
  21. package/components/ui-input-group/ui-input-group.js +1 -1
  22. package/components/ui-listbox/ui-listbox.js +12 -12
  23. package/components/ui-menu/ui-menu.js +7 -7
  24. package/components/ui-menu-item/ui-menu-item.js +7 -7
  25. package/components/ui-popover/ui-popover.js +4 -4
  26. package/components/ui-radio/ui-radio.js +5 -5
  27. package/components/ui-radio-group/ui-radio-group.js +6 -6
  28. package/components/ui-scroll-area/ui-scroll-area.js +1 -1
  29. package/components/ui-search-shell/ui-search-shell.js +6 -6
  30. package/components/ui-select/ui-select.js +1 -1
  31. package/components/ui-sidebar/ui-sidebar.js +12 -12
  32. package/components/ui-switch/ui-switch.js +5 -5
  33. package/components/ui-switcher/ui-switcher.js +1 -1
  34. package/components/ui-tabs/ui-tabs.js +5 -5
  35. package/components/ui-textarea/ui-textarea.js +1 -1
  36. package/components/ui-toast/ui-toast.js +3 -3
  37. package/components/ui-toast-region/ui-toast-region.js +1 -1
  38. package/components/ui-tooltip/ui-tooltip.js +9 -9
  39. package/components/ui-tree/ui-tree.js +4 -4
  40. package/components/ui-tree-item/ui-tree-item.js +11 -11
  41. package/dist/index.js +1 -1
  42. package/package.json +2 -2
  43. package/styles/ui-action-bar.css +1 -1
  44. package/styles/ui-affordance-scope.css +1 -1
  45. package/styles/ui-avatar-group.css +1 -1
  46. package/styles/ui-avatar.css +1 -1
  47. package/styles/ui-badge.css +10 -1
  48. package/styles/ui-breadcrumb-item.css +1 -1
  49. package/styles/ui-breadcrumbs.css +1 -1
  50. package/styles/ui-button.css +1 -1
  51. package/styles/ui-callout.css +1 -1
  52. package/styles/ui-card.css +1 -1
  53. package/styles/ui-checkbox.css +1 -1
  54. package/styles/ui-cluster.css +1 -1
  55. package/styles/ui-combobox.css +1 -1
  56. package/styles/ui-container.css +1 -1
  57. package/styles/ui-context-menu.css +1 -1
  58. package/styles/ui-cover.css +1 -1
  59. package/styles/ui-description-item.css +1 -1
  60. package/styles/ui-description-list.css +1 -1
  61. package/styles/ui-dialog.css +1 -1
  62. package/styles/ui-disclosure.css +1 -1
  63. package/styles/ui-editable.css +1 -1
  64. package/styles/ui-editor-insert-table-grid.css +1 -1
  65. package/styles/ui-editor-mention-menu-item.css +1 -1
  66. package/styles/ui-editor-mention-menu.css +1 -1
  67. package/styles/ui-editor-slash-menu-group.css +1 -1
  68. package/styles/ui-editor-slash-menu-item.css +1 -1
  69. package/styles/ui-editor-slash-menu.css +1 -1
  70. package/styles/ui-editor-table-context-menu.css +1 -1
  71. package/styles/ui-editor-table-overlay.css +1 -1
  72. package/styles/ui-editor-table-toolbar.css +1 -1
  73. package/styles/ui-editor-toolbar.css +1 -1
  74. package/styles/ui-floating-action-button.css +1 -1
  75. package/styles/ui-form-field.css +1 -1
  76. package/styles/ui-grid.css +1 -1
  77. package/styles/ui-icon-button.css +1 -1
  78. package/styles/ui-icon.css +1 -1
  79. package/styles/ui-input-group.css +1 -1
  80. package/styles/ui-input.css +1 -1
  81. package/styles/ui-list-item.css +1 -1
  82. package/styles/ui-list.css +1 -1
  83. package/styles/ui-listbox.css +1 -1
  84. package/styles/ui-menu-group.css +1 -1
  85. package/styles/ui-menu-item.css +1 -1
  86. package/styles/ui-menu.css +1 -1
  87. package/styles/ui-meter.css +1 -1
  88. package/styles/ui-nav-item.css +1 -1
  89. package/styles/ui-page-header.css +1 -1
  90. package/styles/ui-popover.css +1 -1
  91. package/styles/ui-radio-group.css +1 -1
  92. package/styles/ui-radio.css +1 -1
  93. package/styles/ui-reel.css +1 -1
  94. package/styles/ui-scroll-area.css +1 -1
  95. package/styles/ui-search-result-row.css +1 -1
  96. package/styles/ui-search-shell.css +1 -1
  97. package/styles/ui-section.css +1 -1
  98. package/styles/ui-select.css +1 -1
  99. package/styles/ui-separator.css +1 -1
  100. package/styles/ui-sidebar.css +1 -1
  101. package/styles/ui-spinner.css +1 -1
  102. package/styles/ui-stack.css +1 -1
  103. package/styles/ui-status-message.css +1 -1
  104. package/styles/ui-switch.css +1 -1
  105. package/styles/ui-switcher.css +1 -1
  106. package/styles/ui-table.css +1 -1
  107. package/styles/ui-tabs.css +1 -1
  108. package/styles/ui-text.css +1 -1
  109. package/styles/ui-textarea.css +1 -1
  110. package/styles/ui-toast-region.css +1 -1
  111. package/styles/ui-toast.css +1 -1
  112. package/styles/ui-tooltip.css +1 -1
  113. package/styles/ui-top-bar.css +1 -1
  114. package/styles/ui-tree-item.css +1 -1
  115. package/styles/ui-tree.css +1 -1
  116. package/vanilla/UiActionBar.d.ts +1 -1
  117. package/vanilla/UiActionBar.js +1 -1
  118. package/vanilla/UiAffordanceScope.d.ts +1 -1
  119. package/vanilla/UiAffordanceScope.js +1 -1
  120. package/vanilla/UiAvatar.d.ts +1 -1
  121. package/vanilla/UiAvatar.js +1 -1
  122. package/vanilla/UiAvatarGroup.d.ts +1 -1
  123. package/vanilla/UiAvatarGroup.js +1 -1
  124. package/vanilla/UiBadge.d.ts +2 -1
  125. package/vanilla/UiBadge.js +5 -3
  126. package/vanilla/UiBreadcrumbItem.d.ts +1 -1
  127. package/vanilla/UiBreadcrumbItem.js +1 -1
  128. package/vanilla/UiBreadcrumbs.d.ts +1 -1
  129. package/vanilla/UiBreadcrumbs.js +1 -1
  130. package/vanilla/UiButton.d.ts +1 -1
  131. package/vanilla/UiButton.js +1 -1
  132. package/vanilla/UiCallout.d.ts +1 -1
  133. package/vanilla/UiCallout.js +1 -1
  134. package/vanilla/UiCard.d.ts +1 -1
  135. package/vanilla/UiCard.js +1 -1
  136. package/vanilla/UiCheckbox.d.ts +1 -1
  137. package/vanilla/UiCheckbox.js +1 -1
  138. package/vanilla/UiCluster.d.ts +1 -1
  139. package/vanilla/UiCluster.js +1 -1
  140. package/vanilla/UiCombobox.d.ts +1 -1
  141. package/vanilla/UiCombobox.js +1 -1
  142. package/vanilla/UiContainer.d.ts +1 -1
  143. package/vanilla/UiContainer.js +1 -1
  144. package/vanilla/UiContextMenu.d.ts +1 -1
  145. package/vanilla/UiContextMenu.js +1 -1
  146. package/vanilla/UiCover.d.ts +1 -1
  147. package/vanilla/UiCover.js +1 -1
  148. package/vanilla/UiDescriptionItem.d.ts +1 -1
  149. package/vanilla/UiDescriptionItem.js +1 -1
  150. package/vanilla/UiDescriptionList.d.ts +1 -1
  151. package/vanilla/UiDescriptionList.js +1 -1
  152. package/vanilla/UiDialog.d.ts +1 -1
  153. package/vanilla/UiDialog.js +1 -1
  154. package/vanilla/UiDisclosure.d.ts +1 -1
  155. package/vanilla/UiDisclosure.js +1 -1
  156. package/vanilla/UiEditable.d.ts +1 -1
  157. package/vanilla/UiEditable.js +1 -1
  158. package/vanilla/UiEditorInsertTableGrid.d.ts +1 -1
  159. package/vanilla/UiEditorInsertTableGrid.js +1 -1
  160. package/vanilla/UiEditorMentionMenu.d.ts +1 -1
  161. package/vanilla/UiEditorMentionMenu.js +1 -1
  162. package/vanilla/UiEditorMentionMenuItem.d.ts +1 -1
  163. package/vanilla/UiEditorMentionMenuItem.js +1 -1
  164. package/vanilla/UiEditorSlashMenu.d.ts +1 -1
  165. package/vanilla/UiEditorSlashMenu.js +1 -1
  166. package/vanilla/UiEditorSlashMenuGroup.d.ts +1 -1
  167. package/vanilla/UiEditorSlashMenuGroup.js +1 -1
  168. package/vanilla/UiEditorSlashMenuItem.d.ts +1 -1
  169. package/vanilla/UiEditorSlashMenuItem.js +1 -1
  170. package/vanilla/UiEditorTableContextMenu.d.ts +1 -1
  171. package/vanilla/UiEditorTableContextMenu.js +1 -1
  172. package/vanilla/UiEditorTableOverlay.d.ts +1 -1
  173. package/vanilla/UiEditorTableOverlay.js +1 -1
  174. package/vanilla/UiEditorTableToolbar.d.ts +1 -1
  175. package/vanilla/UiEditorTableToolbar.js +1 -1
  176. package/vanilla/UiEditorToolbar.d.ts +1 -1
  177. package/vanilla/UiEditorToolbar.js +1 -1
  178. package/vanilla/UiFloatingActionButton.d.ts +1 -1
  179. package/vanilla/UiFloatingActionButton.js +1 -1
  180. package/vanilla/UiFormField.d.ts +1 -1
  181. package/vanilla/UiFormField.js +1 -1
  182. package/vanilla/UiGrid.d.ts +1 -1
  183. package/vanilla/UiGrid.js +1 -1
  184. package/vanilla/UiIcon.d.ts +1 -1
  185. package/vanilla/UiIcon.js +1 -1
  186. package/vanilla/UiIconButton.d.ts +1 -1
  187. package/vanilla/UiIconButton.js +1 -1
  188. package/vanilla/UiInput.d.ts +1 -1
  189. package/vanilla/UiInput.js +1 -1
  190. package/vanilla/UiInputGroup.d.ts +1 -1
  191. package/vanilla/UiInputGroup.js +1 -1
  192. package/vanilla/UiList.d.ts +1 -1
  193. package/vanilla/UiList.js +1 -1
  194. package/vanilla/UiListItem.d.ts +1 -1
  195. package/vanilla/UiListItem.js +1 -1
  196. package/vanilla/UiListbox.d.ts +1 -1
  197. package/vanilla/UiListbox.js +1 -1
  198. package/vanilla/UiMenu.d.ts +1 -1
  199. package/vanilla/UiMenu.js +1 -1
  200. package/vanilla/UiMenuGroup.d.ts +1 -1
  201. package/vanilla/UiMenuGroup.js +1 -1
  202. package/vanilla/UiMenuItem.d.ts +1 -1
  203. package/vanilla/UiMenuItem.js +1 -1
  204. package/vanilla/UiMeter.d.ts +1 -1
  205. package/vanilla/UiMeter.js +1 -1
  206. package/vanilla/UiNavItem.d.ts +1 -1
  207. package/vanilla/UiNavItem.js +1 -1
  208. package/vanilla/UiPageHeader.d.ts +1 -1
  209. package/vanilla/UiPageHeader.js +1 -1
  210. package/vanilla/UiPopover.d.ts +1 -1
  211. package/vanilla/UiPopover.js +1 -1
  212. package/vanilla/UiRadio.d.ts +1 -1
  213. package/vanilla/UiRadio.js +1 -1
  214. package/vanilla/UiRadioGroup.d.ts +1 -1
  215. package/vanilla/UiRadioGroup.js +1 -1
  216. package/vanilla/UiReel.d.ts +1 -1
  217. package/vanilla/UiReel.js +1 -1
  218. package/vanilla/UiScrollArea.d.ts +1 -1
  219. package/vanilla/UiScrollArea.js +1 -1
  220. package/vanilla/UiSearchResultRow.d.ts +1 -1
  221. package/vanilla/UiSearchResultRow.js +1 -1
  222. package/vanilla/UiSearchShell.d.ts +1 -1
  223. package/vanilla/UiSearchShell.js +1 -1
  224. package/vanilla/UiSection.d.ts +1 -1
  225. package/vanilla/UiSection.js +1 -1
  226. package/vanilla/UiSelect.d.ts +1 -1
  227. package/vanilla/UiSelect.js +1 -1
  228. package/vanilla/UiSeparator.d.ts +1 -1
  229. package/vanilla/UiSeparator.js +1 -1
  230. package/vanilla/UiSidebar.d.ts +1 -1
  231. package/vanilla/UiSidebar.js +1 -1
  232. package/vanilla/UiSpinner.d.ts +1 -1
  233. package/vanilla/UiSpinner.js +1 -1
  234. package/vanilla/UiStack.d.ts +1 -1
  235. package/vanilla/UiStack.js +1 -1
  236. package/vanilla/UiStatusMessage.d.ts +1 -1
  237. package/vanilla/UiStatusMessage.js +1 -1
  238. package/vanilla/UiSwitch.d.ts +1 -1
  239. package/vanilla/UiSwitch.js +1 -1
  240. package/vanilla/UiSwitcher.d.ts +1 -1
  241. package/vanilla/UiSwitcher.js +1 -1
  242. package/vanilla/UiTable.d.ts +1 -1
  243. package/vanilla/UiTable.js +1 -1
  244. package/vanilla/UiTabs.d.ts +1 -1
  245. package/vanilla/UiTabs.js +1 -1
  246. package/vanilla/UiText.d.ts +1 -1
  247. package/vanilla/UiText.js +1 -1
  248. package/vanilla/UiTextarea.d.ts +1 -1
  249. package/vanilla/UiTextarea.js +1 -1
  250. package/vanilla/UiToast.d.ts +1 -1
  251. package/vanilla/UiToast.js +1 -1
  252. package/vanilla/UiToastRegion.d.ts +1 -1
  253. package/vanilla/UiToastRegion.js +1 -1
  254. package/vanilla/UiTooltip.d.ts +1 -1
  255. package/vanilla/UiTooltip.js +1 -1
  256. package/vanilla/UiTopBar.d.ts +1 -1
  257. package/vanilla/UiTopBar.js +1 -1
  258. package/vanilla/UiTree.d.ts +1 -1
  259. package/vanilla/UiTree.js +1 -1
  260. package/vanilla/UiTreeItem.d.ts +1 -1
  261. package/vanilla/UiTreeItem.js +1 -1
  262. package/vue/UiActionBar.vue +1 -1
  263. package/vue/UiAffordanceScope.vue +17 -4
  264. package/vue/UiAvatar.vue +38 -5
  265. package/vue/UiAvatarGroup.vue +32 -5
  266. package/vue/UiBadge.d.ts +9 -0
  267. package/vue/UiBadge.vue +41 -3
  268. package/vue/UiBreadcrumbItem.vue +5 -3
  269. package/vue/UiBreadcrumbs.vue +5 -3
  270. package/vue/UiButton.vue +72 -7
  271. package/vue/UiCallout.vue +5 -3
  272. package/vue/UiCard.vue +16 -6
  273. package/vue/UiCheckbox.vue +41 -4
  274. package/vue/UiCluster.vue +8 -3
  275. package/vue/UiCombobox.vue +98 -6
  276. package/vue/UiContainer.vue +6 -3
  277. package/vue/UiContextMenu.vue +17 -4
  278. package/vue/UiCover.vue +5 -3
  279. package/vue/UiDescriptionItem.vue +5 -3
  280. package/vue/UiDescriptionList.vue +11 -3
  281. package/vue/UiDialog.vue +38 -5
  282. package/vue/UiDisclosure.vue +28 -4
  283. package/vue/UiEditable.vue +50 -4
  284. package/vue/UiEditorInsertTableGrid.vue +24 -4
  285. package/vue/UiEditorMentionMenu.vue +41 -4
  286. package/vue/UiEditorMentionMenuItem.vue +7 -3
  287. package/vue/UiEditorSlashMenu.vue +28 -4
  288. package/vue/UiEditorSlashMenuGroup.vue +5 -3
  289. package/vue/UiEditorSlashMenuItem.vue +15 -3
  290. package/vue/UiEditorTableContextMenu.vue +28 -4
  291. package/vue/UiEditorTableOverlay.vue +17 -4
  292. package/vue/UiEditorTableToolbar.vue +28 -4
  293. package/vue/UiEditorToolbar.vue +16 -4
  294. package/vue/UiFloatingActionButton.vue +7 -3
  295. package/vue/UiFormField.vue +18 -4
  296. package/vue/UiGrid.vue +7 -3
  297. package/vue/UiIcon.vue +5 -3
  298. package/vue/UiIconButton.vue +47 -5
  299. package/vue/UiInput.vue +90 -37
  300. package/vue/UiInputGroup.vue +16 -4
  301. package/vue/UiList.vue +20 -7
  302. package/vue/UiListItem.vue +6 -3
  303. package/vue/UiListbox.vue +38 -5
  304. package/vue/UiMenu.vue +28 -4
  305. package/vue/UiMenuGroup.vue +5 -3
  306. package/vue/UiMenuItem.vue +27 -5
  307. package/vue/UiMeter.vue +19 -3
  308. package/vue/UiNavItem.vue +28 -6
  309. package/vue/UiPageHeader.vue +5 -3
  310. package/vue/UiPopover.vue +18 -5
  311. package/vue/UiRadio.vue +28 -4
  312. package/vue/UiRadioGroup.vue +30 -4
  313. package/vue/UiReel.vue +7 -3
  314. package/vue/UiScrollArea.vue +16 -4
  315. package/vue/UiSearchResultRow.d.ts +1 -1
  316. package/vue/UiSearchResultRow.vue +6 -3
  317. package/vue/UiSearchShell.vue +24 -4
  318. package/vue/UiSection.vue +7 -3
  319. package/vue/UiSelect.vue +33 -5
  320. package/vue/UiSeparator.vue +5 -3
  321. package/vue/UiSidebar.vue +44 -4
  322. package/vue/UiSpinner.vue +6 -3
  323. package/vue/UiStack.vue +7 -3
  324. package/vue/UiStatusMessage.vue +7 -3
  325. package/vue/UiSwitch.vue +28 -4
  326. package/vue/UiSwitcher.vue +30 -5
  327. package/vue/UiTable.vue +17 -4
  328. package/vue/UiTabs.vue +28 -4
  329. package/vue/UiText.vue +29 -15
  330. package/vue/UiTextarea.vue +39 -5
  331. package/vue/UiToast.vue +17 -4
  332. package/vue/UiToastRegion.vue +17 -5
  333. package/vue/UiTooltip.vue +30 -5
  334. package/vue/UiTopBar.vue +1 -1
  335. package/vue/UiTree.vue +28 -4
  336. package/vue/UiTreeItem.d.ts +1 -1
  337. package/vue/UiTreeItem.vue +59 -4
  338. package/vue/chunks/UiActionBar.js +1 -1
  339. package/vue/chunks/UiAffordanceScope.js +19 -5
  340. package/vue/chunks/UiAvatar.js +40 -11
  341. package/vue/chunks/UiAvatarGroup.js +31 -8
  342. package/vue/chunks/UiBadge.js +35 -6
  343. package/vue/chunks/UiBreadcrumbItem.js +5 -4
  344. package/vue/chunks/UiBreadcrumbs.js +5 -4
  345. package/vue/chunks/UiButton.js +60 -19
  346. package/vue/chunks/UiCallout.js +5 -4
  347. package/vue/chunks/UiCard.js +16 -10
  348. package/vue/chunks/UiCheckbox.js +40 -11
  349. package/vue/chunks/UiCluster.js +13 -7
  350. package/vue/chunks/UiCombobox.js +85 -26
  351. package/vue/chunks/UiContainer.js +9 -5
  352. package/vue/chunks/UiContextMenu.js +19 -5
  353. package/vue/chunks/UiCover.js +5 -4
  354. package/vue/chunks/UiDescriptionItem.js +5 -4
  355. package/vue/chunks/UiDescriptionList.js +11 -6
  356. package/vue/chunks/UiDialog.js +40 -11
  357. package/vue/chunks/UiDisclosure.js +34 -9
  358. package/vue/chunks/UiEditable.js +49 -14
  359. package/vue/chunks/UiEditorInsertTableGrid.js +28 -7
  360. package/vue/chunks/UiEditorMentionMenu.js +40 -11
  361. package/vue/chunks/UiEditorMentionMenuItem.js +11 -6
  362. package/vue/chunks/UiEditorSlashMenu.js +34 -9
  363. package/vue/chunks/UiEditorSlashMenuGroup.js +5 -4
  364. package/vue/chunks/UiEditorSlashMenuItem.js +15 -8
  365. package/vue/chunks/UiEditorTableContextMenu.js +34 -9
  366. package/vue/chunks/UiEditorTableOverlay.js +19 -5
  367. package/vue/chunks/UiEditorTableToolbar.js +34 -9
  368. package/vue/chunks/UiEditorToolbar.js +15 -4
  369. package/vue/chunks/UiFloatingActionButton.js +11 -6
  370. package/vue/chunks/UiFormField.js +26 -7
  371. package/vue/chunks/UiGrid.js +11 -6
  372. package/vue/chunks/UiIcon.js +5 -4
  373. package/vue/chunks/UiIconButton.js +41 -12
  374. package/vue/chunks/UiInput.js +53 -14
  375. package/vue/chunks/UiInputGroup.js +16 -5
  376. package/vue/chunks/UiList.js +14 -8
  377. package/vue/chunks/UiListItem.js +9 -5
  378. package/vue/chunks/UiListbox.js +40 -11
  379. package/vue/chunks/UiMenu.js +34 -9
  380. package/vue/chunks/UiMenuGroup.js +5 -4
  381. package/vue/chunks/UiMenuItem.js +32 -9
  382. package/vue/chunks/UiMeter.js +19 -10
  383. package/vue/chunks/UiNavItem.js +16 -9
  384. package/vue/chunks/UiPageHeader.js +5 -4
  385. package/vue/chunks/UiPopover.js +25 -6
  386. package/vue/chunks/UiRadio.js +34 -9
  387. package/vue/chunks/UiRadioGroup.js +37 -10
  388. package/vue/chunks/UiReel.js +11 -6
  389. package/vue/chunks/UiScrollArea.js +15 -4
  390. package/vue/chunks/UiSearchResultRow.js +9 -5
  391. package/vue/chunks/UiSearchShell.js +28 -7
  392. package/vue/chunks/UiSection.js +11 -6
  393. package/vue/chunks/UiSelect.js +33 -10
  394. package/vue/chunks/UiSeparator.js +5 -4
  395. package/vue/chunks/UiSidebar.js +43 -12
  396. package/vue/chunks/UiSpinner.js +9 -5
  397. package/vue/chunks/UiStack.js +11 -6
  398. package/vue/chunks/UiStatusMessage.js +11 -6
  399. package/vue/chunks/UiSwitch.js +34 -9
  400. package/vue/chunks/UiSwitcher.js +28 -7
  401. package/vue/chunks/UiTable.js +20 -6
  402. package/vue/chunks/UiTabs.js +34 -9
  403. package/vue/chunks/UiText.js +29 -20
  404. package/vue/chunks/UiTextarea.js +42 -13
  405. package/vue/chunks/UiToast.js +19 -5
  406. package/vue/chunks/UiToastRegion.js +19 -5
  407. package/vue/chunks/UiTooltip.js +37 -10
  408. package/vue/chunks/UiTopBar.js +1 -1
  409. package/vue/chunks/UiTree.js +35 -10
  410. package/vue/chunks/UiTreeItem.js +58 -17
  411. package/vue/chunks/host.js +22 -4
  412. package/vue/chunks/props.js +20 -7
  413. package/vue/components.css +1212 -1204
  414. package/vue/host.ts +50 -6
@@ -1,9 +1,9 @@
1
- <!-- Generated by HTML Next 1.0.0-alpha.18 for Vue 3.5. Do not edit. -->
1
+ <!-- Generated by HTML Next 1.0.0-alpha.19 for Vue 3.5. Do not edit. -->
2
2
  <script setup lang="ts">
3
3
  import { computed, getCurrentInstance, ref, useTemplateRef, watchSyncEffect } from 'vue'
4
4
  import type { PropType } from 'vue'
5
5
  import { createDispatch, useComponentHost } from './host'
6
- import { checkedProp, vPropValidity } from './props'
6
+ import { checkedProp, propValidityState, vPropValidity } from './props'
7
7
 
8
8
  defineOptions({ inheritAttrs: false })
9
9
 
@@ -18,16 +18,18 @@ const propValidityContract = {
18
18
  default: false,
19
19
  },
20
20
  },
21
- }
21
+ } as const
22
22
  const props = defineProps({
23
23
  floating: { type: null as unknown as PropType<boolean | null>, default: false },
24
24
  })
25
+ const acceptedProps: Record<string, unknown> = { floating: false }
25
26
  const checkedProps = computed(() => ({
26
27
  floating: checkedProp<boolean>(
27
28
  props['floating'],
28
29
  { kind: 'terminal', name: 'boolean' },
29
30
  false,
30
31
  'floating',
32
+ acceptedProps,
31
33
  ) as boolean,
32
34
  }))
33
35
  void checkedProps.value
@@ -104,6 +106,16 @@ useComponentHost(() => import('../components/ui-editor-toolbar/ui-editor-toolbar
104
106
  definition: './components/ui-editor-toolbar/ui-editor-toolbar.html',
105
107
  },
106
108
  props: checkedProps,
109
+ propInputs: (name: string) => {
110
+ const incoming = hydrationInstance?.vnode.props
111
+ const kebab = name.replace(/[A-Z]/g, (letter) => '-' + letter.toLowerCase())
112
+ return incoming !== null && incoming !== undefined
113
+ ? (incoming[name] ?? incoming[kebab] ?? null)
114
+ : null
115
+ },
116
+ propNames: ['floating'],
117
+ propValidity: (name: string) =>
118
+ propValidityState({ contract: propValidityContract, values: { ...props } }, name),
107
119
  refs: { strip: stripElement },
108
120
  })
109
121
  </script>
@@ -114,7 +126,7 @@ useComponentHost(() => import('../components/ui-editor-toolbar/ui-editor-toolbar
114
126
  role="toolbar"
115
127
  aria-label="Editor toolbar"
116
128
  v-bind="nativeAttrs($attrs)"
117
- v-prop-validity="{ contract: propValidityContract, values: { ...checkedProps } }"
129
+ v-prop-validity="{ contract: propValidityContract, values: { ...props } }"
118
130
  :data-floating="reflectedProp('floating', 'floating', checkedProps.floating, undefined, false)"
119
131
  :data-ui-editor-toolbar-state="hostState || undefined"
120
132
  ref="root"
@@ -1,4 +1,4 @@
1
- <!-- Generated by HTML Next 1.0.0-alpha.18 for Vue 3.5. Do not edit. -->
1
+ <!-- Generated by HTML Next 1.0.0-alpha.19 for Vue 3.5. Do not edit. -->
2
2
  <script setup lang="ts">
3
3
  import { computed, getCurrentInstance, watchSyncEffect } from 'vue'
4
4
  import type { PropType } from 'vue'
@@ -33,30 +33,34 @@ const propValidityContract = {
33
33
  default: false,
34
34
  },
35
35
  },
36
- }
36
+ } as const
37
37
  const props = defineProps({
38
38
  disabled: { type: null as unknown as PropType<boolean | null>, default: false },
39
39
  label: { type: null as unknown as PropType<string | null>, default: '' },
40
40
  mobileOnly: { type: null as unknown as PropType<boolean | null>, default: false },
41
41
  })
42
+ const acceptedProps: Record<string, unknown> = { disabled: false, label: '', mobileOnly: false }
42
43
  const checkedProps = computed(() => ({
43
44
  disabled: checkedProp<boolean>(
44
45
  props['disabled'],
45
46
  { kind: 'terminal', name: 'boolean' },
46
47
  false,
47
48
  'disabled',
49
+ acceptedProps,
48
50
  ) as boolean,
49
51
  label: checkedProp<string>(
50
52
  props['label'],
51
53
  { kind: 'terminal', name: 'string' },
52
54
  false,
53
55
  'label',
56
+ acceptedProps,
54
57
  ) as string,
55
58
  mobileOnly: checkedProp<boolean>(
56
59
  props['mobileOnly'],
57
60
  { kind: 'terminal', name: 'boolean' },
58
61
  false,
59
62
  'mobileOnly',
63
+ acceptedProps,
60
64
  ) as boolean,
61
65
  }))
62
66
  void checkedProps.value
@@ -129,7 +133,7 @@ const hostState = computed(() =>
129
133
  v-bind="nativeAttrs($attrs)"
130
134
  :aria-label="checkedProps.label ?? undefined"
131
135
  :disabled="checkedProps.disabled ?? undefined"
132
- v-prop-validity="{ contract: propValidityContract, values: { ...checkedProps } }"
136
+ v-prop-validity="{ contract: propValidityContract, values: { ...props } }"
133
137
  :data-disabled="reflectedProp('disabled', 'disabled', checkedProps.disabled, undefined, false)"
134
138
  :data-label="reflectedProp('label', 'label', checkedProps.label, undefined, false)"
135
139
  :data-mobile-only="reflectedProp('mobileOnly', 'mobile-only', checkedProps.mobileOnly, undefined, false)"
@@ -1,9 +1,9 @@
1
- <!-- Generated by HTML Next 1.0.0-alpha.18 for Vue 3.5. Do not edit. -->
1
+ <!-- Generated by HTML Next 1.0.0-alpha.19 for Vue 3.5. Do not edit. -->
2
2
  <script setup lang="ts">
3
3
  import { computed, getCurrentInstance, ref, watchSyncEffect } from 'vue'
4
4
  import type { PropType } from 'vue'
5
5
  import { createDispatch, useComponentHost } from './host'
6
- import { checkedProp, vPropValidity } from './props'
6
+ import { checkedProp, propValidityState, vPropValidity } from './props'
7
7
 
8
8
  defineOptions({ inheritAttrs: false })
9
9
 
@@ -34,30 +34,34 @@ const propValidityContract = {
34
34
  default: false,
35
35
  },
36
36
  },
37
- }
37
+ } as const
38
38
  const props = defineProps({
39
39
  disabled: { type: null as unknown as PropType<boolean | null>, default: false },
40
40
  invalid: { type: null as unknown as PropType<boolean | null>, default: false },
41
41
  required: { type: null as unknown as PropType<boolean | null>, default: false },
42
42
  })
43
+ const acceptedProps: Record<string, unknown> = { disabled: false, invalid: false, required: false }
43
44
  const checkedProps = computed(() => ({
44
45
  disabled: checkedProp<boolean>(
45
46
  props['disabled'],
46
47
  { kind: 'terminal', name: 'boolean' },
47
48
  false,
48
49
  'disabled',
50
+ acceptedProps,
49
51
  ) as boolean,
50
52
  invalid: checkedProp<boolean>(
51
53
  props['invalid'],
52
54
  { kind: 'terminal', name: 'boolean' },
53
55
  false,
54
56
  'invalid',
57
+ acceptedProps,
55
58
  ) as boolean,
56
59
  required: checkedProp<boolean>(
57
60
  props['required'],
58
61
  { kind: 'terminal', name: 'boolean' },
59
62
  false,
60
63
  'required',
64
+ acceptedProps,
61
65
  ) as boolean,
62
66
  }))
63
67
  void checkedProps.value
@@ -133,6 +137,16 @@ useComponentHost(() => import('../components/ui-form-field/ui-form-field.js'), {
133
137
  definition: './components/ui-form-field/ui-form-field.html',
134
138
  },
135
139
  props: checkedProps,
140
+ propInputs: (name: string) => {
141
+ const incoming = hydrationInstance?.vnode.props
142
+ const kebab = name.replace(/[A-Z]/g, (letter) => '-' + letter.toLowerCase())
143
+ return incoming !== null && incoming !== undefined
144
+ ? (incoming[name] ?? incoming[kebab] ?? null)
145
+ : null
146
+ },
147
+ propNames: ['disabled', 'invalid', 'required'],
148
+ propValidity: (name: string) =>
149
+ propValidityState({ contract: propValidityContract, values: { ...props } }, name),
136
150
  })
137
151
  </script>
138
152
 
@@ -140,7 +154,7 @@ useComponentHost(() => import('../components/ui-form-field/ui-form-field.js'), {
140
154
  <div
141
155
  data-component="ui-form-field"
142
156
  v-bind="nativeAttrs($attrs)"
143
- v-prop-validity="{ contract: propValidityContract, values: { ...checkedProps } }"
157
+ v-prop-validity="{ contract: propValidityContract, values: { ...props } }"
144
158
  :data-disabled="reflectedProp('disabled', 'disabled', checkedProps.disabled, undefined, false)"
145
159
  :data-invalid="reflectedProp('invalid', 'invalid', checkedProps.invalid, undefined, false)"
146
160
  :data-required="reflectedProp('required', 'required', checkedProps.required, undefined, false)"
package/vue/UiGrid.vue CHANGED
@@ -1,4 +1,4 @@
1
- <!-- Generated by HTML Next 1.0.0-alpha.18 for Vue 3.5. Do not edit. -->
1
+ <!-- Generated by HTML Next 1.0.0-alpha.19 for Vue 3.5. Do not edit. -->
2
2
  <script setup lang="ts">
3
3
  import { computed, getCurrentInstance, watchSyncEffect } from 'vue'
4
4
  import type { PropType } from 'vue'
@@ -32,30 +32,34 @@ const propValidityContract = {
32
32
  values: ['sm', 'md', 'lg'],
33
33
  },
34
34
  },
35
- }
35
+ } as const
36
36
  const props = defineProps({
37
37
  columns: { type: null as unknown as PropType<number | null>, default: null },
38
38
  gap: { type: null as unknown as PropType<'xs' | 's' | 'm' | 'l' | 'xl' | null>, default: null },
39
39
  min: { type: null as unknown as PropType<'sm' | 'md' | 'lg' | null>, default: null },
40
40
  })
41
+ const acceptedProps: Record<string, unknown> = { columns: null, gap: null, min: null }
41
42
  const checkedProps = computed(() => ({
42
43
  columns: checkedProp<number>(
43
44
  props['columns'],
44
45
  { kind: 'terminal', name: 'integer' },
45
46
  false,
46
47
  'columns',
48
+ acceptedProps,
47
49
  ),
48
50
  gap: checkedProp<'xs' | 's' | 'm' | 'l' | 'xl'>(
49
51
  props['gap'],
50
52
  { kind: 'terminal', name: 'keyword' },
51
53
  false,
52
54
  'gap',
55
+ acceptedProps,
53
56
  ),
54
57
  min: checkedProp<'sm' | 'md' | 'lg'>(
55
58
  props['min'],
56
59
  { kind: 'terminal', name: 'keyword' },
57
60
  false,
58
61
  'min',
62
+ acceptedProps,
59
63
  ),
60
64
  }))
61
65
  void checkedProps.value
@@ -126,7 +130,7 @@ const hostState = computed(() =>
126
130
  data-component="ui-grid"
127
131
  v-bind="nativeAttrs($attrs)"
128
132
  :style="{ '--_grid-column-cap': checkedProps.columns ?? undefined }"
129
- v-prop-validity="{ contract: propValidityContract, values: { ...checkedProps } }"
133
+ v-prop-validity="{ contract: propValidityContract, values: { ...props } }"
130
134
  :data-columns="reflectedProp('columns', 'columns', checkedProps.columns, undefined, false)"
131
135
  :data-gap="reflectedProp('gap', 'gap', checkedProps.gap, undefined, false)"
132
136
  :data-min="reflectedProp('min', 'min', checkedProps.min, undefined, false)"
package/vue/UiIcon.vue CHANGED
@@ -1,4 +1,4 @@
1
- <!-- Generated by HTML Next 1.0.0-alpha.18 for Vue 3.5. Do not edit. -->
1
+ <!-- Generated by HTML Next 1.0.0-alpha.19 for Vue 3.5. Do not edit. -->
2
2
  <script setup lang="ts">
3
3
  import { computed, getCurrentInstance, watchSyncEffect } from 'vue'
4
4
  import type { PropType } from 'vue'
@@ -17,16 +17,18 @@ const propValidityContract = {
17
17
  default: '',
18
18
  },
19
19
  },
20
- }
20
+ } as const
21
21
  const props = defineProps({
22
22
  name: { type: null as unknown as PropType<string | null>, default: '' },
23
23
  })
24
+ const acceptedProps: Record<string, unknown> = { name: '' }
24
25
  const checkedProps = computed(() => ({
25
26
  name: checkedProp<string>(
26
27
  props['name'],
27
28
  { kind: 'terminal', name: 'string' },
28
29
  false,
29
30
  'name',
31
+ acceptedProps,
30
32
  ) as string,
31
33
  }))
32
34
  void checkedProps.value
@@ -448,7 +450,7 @@ function list(value: unknown): any[] {
448
450
  data-component="ui-icon"
449
451
  aria-hidden="true"
450
452
  v-bind="nativeAttrs($attrs)"
451
- v-prop-validity="{ contract: propValidityContract, values: { ...checkedProps } }"
453
+ v-prop-validity="{ contract: propValidityContract, values: { ...props } }"
452
454
  :data-name="reflectedProp('name', 'name', checkedProps.name, undefined, false)"
453
455
  ><svg
454
456
  viewBox="0 0 24 24"
@@ -1,9 +1,9 @@
1
- <!-- Generated by HTML Next 1.0.0-alpha.18 for Vue 3.5. Do not edit. -->
1
+ <!-- Generated by HTML Next 1.0.0-alpha.19 for Vue 3.5. Do not edit. -->
2
2
  <script setup lang="ts">
3
3
  import { computed, getCurrentInstance, ref, watchSyncEffect } from 'vue'
4
4
  import type { PropType } from 'vue'
5
5
  import { createDispatch, useComponentHost } from './host'
6
- import { checkedProp, vPropValidity } from './props'
6
+ import { checkedProp, propValidityState, vPropValidity } from './props'
7
7
  import UiSpinner from './UiSpinner.vue'
8
8
 
9
9
  defineOptions({ inheritAttrs: false })
@@ -73,7 +73,7 @@ const propValidityContract = {
73
73
  default: 'ghost',
74
74
  },
75
75
  },
76
- }
76
+ } as const
77
77
  const props = defineProps({
78
78
  anticipatory: { type: null as unknown as PropType<boolean | null>, default: false },
79
79
  disabled: { type: null as unknown as PropType<boolean | null>, default: false },
@@ -87,49 +87,72 @@ const props = defineProps({
87
87
  default: 'ghost',
88
88
  },
89
89
  })
90
+ const acceptedProps: Record<string, unknown> = {
91
+ anticipatory: false,
92
+ disabled: false,
93
+ label: null,
94
+ loading: false,
95
+ pending: false,
96
+ round: false,
97
+ size: 'md',
98
+ variant: 'ghost',
99
+ }
90
100
  const checkedProps = computed(() => ({
91
101
  anticipatory: checkedProp<boolean>(
92
102
  props['anticipatory'],
93
103
  { kind: 'terminal', name: 'boolean' },
94
104
  false,
95
105
  'anticipatory',
106
+ acceptedProps,
96
107
  ) as boolean,
97
108
  disabled: checkedProp<boolean>(
98
109
  props['disabled'],
99
110
  { kind: 'terminal', name: 'boolean' },
100
111
  false,
101
112
  'disabled',
113
+ acceptedProps,
102
114
  ) as boolean,
103
- label: checkedProp<string>(props['label'], { kind: 'terminal', name: 'string' }, false, 'label'),
115
+ label: checkedProp<string>(
116
+ props['label'],
117
+ { kind: 'terminal', name: 'string' },
118
+ false,
119
+ 'label',
120
+ acceptedProps,
121
+ ),
104
122
  loading: checkedProp<boolean>(
105
123
  props['loading'],
106
124
  { kind: 'terminal', name: 'boolean' },
107
125
  false,
108
126
  'loading',
127
+ acceptedProps,
109
128
  ) as boolean,
110
129
  pending: checkedProp<boolean>(
111
130
  props['pending'],
112
131
  { kind: 'terminal', name: 'boolean' },
113
132
  false,
114
133
  'pending',
134
+ acceptedProps,
115
135
  ) as boolean,
116
136
  round: checkedProp<boolean>(
117
137
  props['round'],
118
138
  { kind: 'terminal', name: 'boolean' },
119
139
  false,
120
140
  'round',
141
+ acceptedProps,
121
142
  ) as boolean,
122
143
  size: checkedProp<'sm' | 'md' | 'lg'>(
123
144
  props['size'],
124
145
  { kind: 'terminal', name: 'keyword' },
125
146
  false,
126
147
  'size',
148
+ acceptedProps,
127
149
  ) as 'sm' | 'md' | 'lg',
128
150
  variant: checkedProp<'ghost' | 'outline' | 'solid'>(
129
151
  props['variant'],
130
152
  { kind: 'terminal', name: 'keyword' },
131
153
  false,
132
154
  'variant',
155
+ acceptedProps,
133
156
  ) as 'ghost' | 'outline' | 'solid',
134
157
  }))
135
158
  void checkedProps.value
@@ -213,6 +236,25 @@ useComponentHost(() => import('../components/ui-icon-button/ui-icon-button.js'),
213
236
  definition: './components/ui-icon-button/ui-icon-button.html',
214
237
  },
215
238
  props: checkedProps,
239
+ propInputs: (name: string) => {
240
+ const incoming = hydrationInstance?.vnode.props
241
+ const kebab = name.replace(/[A-Z]/g, (letter) => '-' + letter.toLowerCase())
242
+ return incoming !== null && incoming !== undefined
243
+ ? (incoming[name] ?? incoming[kebab] ?? null)
244
+ : null
245
+ },
246
+ propNames: [
247
+ 'anticipatory',
248
+ 'disabled',
249
+ 'label',
250
+ 'loading',
251
+ 'pending',
252
+ 'round',
253
+ 'size',
254
+ 'variant',
255
+ ],
256
+ propValidity: (name: string) =>
257
+ propValidityState({ contract: propValidityContract, values: { ...props } }, name),
216
258
  })
217
259
 
218
260
  function text(value: unknown): string {
@@ -250,7 +292,7 @@ function attribute(value: unknown): any {
250
292
  ],
251
293
  )"
252
294
  :aria-busy="checkedProps.loading || checkedProps.pending"
253
- v-prop-validity="{ contract: propValidityContract, values: { ...checkedProps } }"
295
+ v-prop-validity="{ contract: propValidityContract, values: { ...props } }"
254
296
  :data-anticipatory="reflectedProp('anticipatory', 'anticipatory', checkedProps.anticipatory, undefined, false)"
255
297
  :data-disabled="reflectedProp('disabled', 'disabled', checkedProps.disabled, undefined, false)"
256
298
  :data-label="reflectedProp('label', 'label', checkedProps.label, undefined, false)"
package/vue/UiInput.vue CHANGED
@@ -1,4 +1,4 @@
1
- <!-- Generated by HTML Next 1.0.0-alpha.18 for Vue 3.5. Do not edit. -->
1
+ <!-- Generated by HTML Next 1.0.0-alpha.19 for Vue 3.5. Do not edit. -->
2
2
  <script
3
3
  setup
4
4
  lang="ts"
@@ -23,7 +23,7 @@ import { computed, getCurrentInstance, ref, watchSyncEffect } from 'vue'
23
23
  import type { PropType } from 'vue'
24
24
  import { readBoundControl, vBindControl } from './control'
25
25
  import { createDispatch, useComponentHost } from './host'
26
- import { checkedProp, selectedPropNode, vPropValidity } from './props'
26
+ import { checkedProp, propValidityState, selectedPropNode, vPropValidity } from './props'
27
27
 
28
28
  defineOptions({ inheritAttrs: false })
29
29
 
@@ -136,7 +136,7 @@ const propValidityContract = {
136
136
  },
137
137
  },
138
138
  },
139
- }
139
+ } as const
140
140
  const props = defineProps({
141
141
  disabled: { type: null as unknown as PropType<boolean | null>, default: false },
142
142
  invalid: { type: null as unknown as PropType<boolean | null>, default: false },
@@ -184,38 +184,58 @@ const props = defineProps({
184
184
  >,
185
185
  },
186
186
  })
187
+ const acceptedProps: Record<string, unknown> = {
188
+ disabled: false,
189
+ invalid: false,
190
+ readonly: false,
191
+ required: false,
192
+ size: 'md',
193
+ type: 'text',
194
+ value: null,
195
+ }
187
196
  const checkedProps = computed(() => ({
188
197
  disabled: checkedProp<boolean>(
189
198
  props['disabled'],
190
199
  { kind: 'terminal', name: 'boolean' },
191
200
  false,
192
201
  'disabled',
202
+ acceptedProps,
193
203
  ) as boolean,
194
204
  invalid: checkedProp<boolean>(
195
205
  props['invalid'],
196
206
  { kind: 'terminal', name: 'boolean' },
197
207
  false,
198
208
  'invalid',
209
+ acceptedProps,
199
210
  ) as boolean,
200
211
  readonly: checkedProp<boolean>(
201
212
  props['readonly'],
202
213
  { kind: 'terminal', name: 'boolean' },
203
214
  false,
204
215
  'readonly',
216
+ acceptedProps,
205
217
  ) as boolean,
206
218
  required: checkedProp<boolean>(
207
219
  props['required'],
208
220
  { kind: 'terminal', name: 'boolean' },
209
221
  false,
210
222
  'required',
223
+ acceptedProps,
211
224
  ) as boolean,
212
225
  size: checkedProp<'sm' | 'md' | 'lg'>(
213
226
  props['size'],
214
227
  { kind: 'terminal', name: 'keyword' },
215
228
  false,
216
229
  'size',
230
+ acceptedProps,
217
231
  ) as 'sm' | 'md' | 'lg',
218
- type: checkedProp<T0>(props['type'], { kind: 'terminal', name: 'keyword' }, false, 'type') as T0,
232
+ type: checkedProp<T0>(
233
+ props['type'],
234
+ { kind: 'terminal', name: 'keyword' },
235
+ false,
236
+ 'type',
237
+ acceptedProps,
238
+ ) as T0,
219
239
  value: checkedProp<
220
240
  T0 extends 'text' ? string | null
221
241
  : T0 extends 'search' ? string | null
@@ -234,24 +254,34 @@ const checkedProps = computed(() => ({
234
254
  : null
235
255
  >(
236
256
  props['value'],
237
- selectedPropNode(props['type'], [
238
- { value: 'text', type: { kind: 'terminal', name: 'string' } },
239
- { value: 'search', type: { kind: 'terminal', name: 'string' } },
240
- { value: 'tel', type: { kind: 'terminal', name: 'string' } },
241
- { value: 'url', type: { kind: 'terminal', name: 'string' } },
242
- { value: 'email', type: { kind: 'terminal', name: 'string' } },
243
- { value: 'password', type: { kind: 'terminal', name: 'string' } },
244
- { value: 'date', type: { kind: 'terminal', name: 'string' } },
245
- { value: 'month', type: { kind: 'terminal', name: 'string' } },
246
- { value: 'week', type: { kind: 'terminal', name: 'string' } },
247
- { value: 'time', type: { kind: 'terminal', name: 'string' } },
248
- { value: 'datetime-local', type: { kind: 'terminal', name: 'string' } },
249
- { value: 'number', type: { kind: 'terminal', name: 'number' } },
250
- { value: 'range', type: { kind: 'terminal', name: 'number' } },
251
- { value: 'color', type: { kind: 'terminal', name: 'string' } },
252
- ]),
257
+ selectedPropNode(
258
+ checkedProp<unknown>(
259
+ props['type'],
260
+ { kind: 'terminal', name: 'keyword' },
261
+ false,
262
+ 'type',
263
+ acceptedProps,
264
+ ),
265
+ [
266
+ { value: 'text', type: { kind: 'terminal', name: 'string' } },
267
+ { value: 'search', type: { kind: 'terminal', name: 'string' } },
268
+ { value: 'tel', type: { kind: 'terminal', name: 'string' } },
269
+ { value: 'url', type: { kind: 'terminal', name: 'string' } },
270
+ { value: 'email', type: { kind: 'terminal', name: 'string' } },
271
+ { value: 'password', type: { kind: 'terminal', name: 'string' } },
272
+ { value: 'date', type: { kind: 'terminal', name: 'string' } },
273
+ { value: 'month', type: { kind: 'terminal', name: 'string' } },
274
+ { value: 'week', type: { kind: 'terminal', name: 'string' } },
275
+ { value: 'time', type: { kind: 'terminal', name: 'string' } },
276
+ { value: 'datetime-local', type: { kind: 'terminal', name: 'string' } },
277
+ { value: 'number', type: { kind: 'terminal', name: 'number' } },
278
+ { value: 'range', type: { kind: 'terminal', name: 'number' } },
279
+ { value: 'color', type: { kind: 'terminal', name: 'string' } },
280
+ ],
281
+ ),
253
282
  false,
254
283
  'value',
284
+ acceptedProps,
255
285
  ),
256
286
  modelValue: checkedProp<
257
287
  T0 extends 'text' ? string | null
@@ -271,24 +301,34 @@ const checkedProps = computed(() => ({
271
301
  : null
272
302
  >(
273
303
  props.modelValue,
274
- selectedPropNode(props['type'], [
275
- { value: 'text', type: { kind: 'terminal', name: 'string' } },
276
- { value: 'search', type: { kind: 'terminal', name: 'string' } },
277
- { value: 'tel', type: { kind: 'terminal', name: 'string' } },
278
- { value: 'url', type: { kind: 'terminal', name: 'string' } },
279
- { value: 'email', type: { kind: 'terminal', name: 'string' } },
280
- { value: 'password', type: { kind: 'terminal', name: 'string' } },
281
- { value: 'date', type: { kind: 'terminal', name: 'string' } },
282
- { value: 'month', type: { kind: 'terminal', name: 'string' } },
283
- { value: 'week', type: { kind: 'terminal', name: 'string' } },
284
- { value: 'time', type: { kind: 'terminal', name: 'string' } },
285
- { value: 'datetime-local', type: { kind: 'terminal', name: 'string' } },
286
- { value: 'number', type: { kind: 'terminal', name: 'number' } },
287
- { value: 'range', type: { kind: 'terminal', name: 'number' } },
288
- { value: 'color', type: { kind: 'terminal', name: 'string' } },
289
- ]),
304
+ selectedPropNode(
305
+ checkedProp<unknown>(
306
+ props['type'],
307
+ { kind: 'terminal', name: 'keyword' },
308
+ false,
309
+ 'type',
310
+ acceptedProps,
311
+ ),
312
+ [
313
+ { value: 'text', type: { kind: 'terminal', name: 'string' } },
314
+ { value: 'search', type: { kind: 'terminal', name: 'string' } },
315
+ { value: 'tel', type: { kind: 'terminal', name: 'string' } },
316
+ { value: 'url', type: { kind: 'terminal', name: 'string' } },
317
+ { value: 'email', type: { kind: 'terminal', name: 'string' } },
318
+ { value: 'password', type: { kind: 'terminal', name: 'string' } },
319
+ { value: 'date', type: { kind: 'terminal', name: 'string' } },
320
+ { value: 'month', type: { kind: 'terminal', name: 'string' } },
321
+ { value: 'week', type: { kind: 'terminal', name: 'string' } },
322
+ { value: 'time', type: { kind: 'terminal', name: 'string' } },
323
+ { value: 'datetime-local', type: { kind: 'terminal', name: 'string' } },
324
+ { value: 'number', type: { kind: 'terminal', name: 'number' } },
325
+ { value: 'range', type: { kind: 'terminal', name: 'number' } },
326
+ { value: 'color', type: { kind: 'terminal', name: 'string' } },
327
+ ],
328
+ ),
290
329
  false,
291
330
  'modelValue',
331
+ acceptedProps,
292
332
  ),
293
333
  }))
294
334
  void checkedProps.value
@@ -403,6 +443,19 @@ useComponentHost(() => import('../components/ui-input/ui-input.js'), {
403
443
  definition: './components/ui-input/ui-input.html',
404
444
  },
405
445
  props: checkedProps,
446
+ propInputs: (name: string) => {
447
+ const incoming = hydrationInstance?.vnode.props
448
+ const kebab = name.replace(/[A-Z]/g, (letter) => '-' + letter.toLowerCase())
449
+ return incoming !== null && incoming !== undefined
450
+ ? (incoming[name] ?? incoming[kebab] ?? null)
451
+ : null
452
+ },
453
+ propNames: ['disabled', 'invalid', 'readonly', 'required', 'size', 'type', 'value'],
454
+ propValidity: (name: string) =>
455
+ propValidityState({
456
+ contract: propValidityContract,
457
+ values: { ...props, type: checkedProps.value['type'] },
458
+ }, name),
406
459
  })
407
460
  </script>
408
461
 
@@ -415,7 +468,7 @@ useComponentHost(() => import('../components/ui-input/ui-input.js'), {
415
468
  :readonly="checkedProps.readonly ?? undefined"
416
469
  :required="checkedProps.required ?? undefined"
417
470
  :aria-invalid="checkedProps.invalid ?? undefined"
418
- v-prop-validity="{ contract: propValidityContract, values: { ...checkedProps } }"
471
+ v-prop-validity="{ contract: propValidityContract, values: { ...props, type: checkedProps['type'] } }"
419
472
  :data-disabled="reflectedProp('disabled', 'disabled', checkedProps.disabled, undefined, false)"
420
473
  :data-invalid="reflectedProp('invalid', 'invalid', checkedProps.invalid, undefined, false)"
421
474
  :data-readonly="reflectedProp('readonly', 'readonly', checkedProps.readonly, undefined, false)"
@@ -1,9 +1,9 @@
1
- <!-- Generated by HTML Next 1.0.0-alpha.18 for Vue 3.5. Do not edit. -->
1
+ <!-- Generated by HTML Next 1.0.0-alpha.19 for Vue 3.5. Do not edit. -->
2
2
  <script setup lang="ts">
3
3
  import { computed, getCurrentInstance, ref, watchSyncEffect } from 'vue'
4
4
  import type { PropType } from 'vue'
5
5
  import { createDispatch, useComponentHost } from './host'
6
- import { checkedProp, vPropValidity } from './props'
6
+ import { checkedProp, propValidityState, vPropValidity } from './props'
7
7
 
8
8
  defineOptions({ inheritAttrs: false })
9
9
 
@@ -18,16 +18,18 @@ const propValidityContract = {
18
18
  default: false,
19
19
  },
20
20
  },
21
- }
21
+ } as const
22
22
  const props = defineProps({
23
23
  disabled: { type: null as unknown as PropType<boolean | null>, default: false },
24
24
  })
25
+ const acceptedProps: Record<string, unknown> = { disabled: false }
25
26
  const checkedProps = computed(() => ({
26
27
  disabled: checkedProp<boolean>(
27
28
  props['disabled'],
28
29
  { kind: 'terminal', name: 'boolean' },
29
30
  false,
30
31
  'disabled',
32
+ acceptedProps,
31
33
  ) as boolean,
32
34
  }))
33
35
  void checkedProps.value
@@ -103,6 +105,16 @@ useComponentHost(() => import('../components/ui-input-group/ui-input-group.js'),
103
105
  definition: './components/ui-input-group/ui-input-group.html',
104
106
  },
105
107
  props: checkedProps,
108
+ propInputs: (name: string) => {
109
+ const incoming = hydrationInstance?.vnode.props
110
+ const kebab = name.replace(/[A-Z]/g, (letter) => '-' + letter.toLowerCase())
111
+ return incoming !== null && incoming !== undefined
112
+ ? (incoming[name] ?? incoming[kebab] ?? null)
113
+ : null
114
+ },
115
+ propNames: ['disabled'],
116
+ propValidity: (name: string) =>
117
+ propValidityState({ contract: propValidityContract, values: { ...props } }, name),
106
118
  })
107
119
  </script>
108
120
 
@@ -110,7 +122,7 @@ useComponentHost(() => import('../components/ui-input-group/ui-input-group.js'),
110
122
  <div
111
123
  data-component="ui-input-group"
112
124
  v-bind="nativeAttrs($attrs)"
113
- v-prop-validity="{ contract: propValidityContract, values: { ...checkedProps } }"
125
+ v-prop-validity="{ contract: propValidityContract, values: { ...props } }"
114
126
  :data-disabled="reflectedProp('disabled', 'disabled', checkedProps.disabled, undefined, false)"
115
127
  :data-ui-input-group-state="hostState || undefined"
116
128
  ref="root"