@xleddyl/443-components-vue 0.2.3 → 0.4.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 (236) hide show
  1. package/README.md +106 -19
  2. package/dist/chart/BarChart.vue.d.ts +2 -2
  3. package/dist/chart/ChartLegend.vue.d.ts +4 -4
  4. package/dist/chart/ChartPanel.vue.d.ts +2 -2
  5. package/dist/chart/ChartSummary.vue.d.ts +2 -2
  6. package/dist/chart/DoughnutChart.vue.d.ts +2 -2
  7. package/dist/chart/LineChart.vue.d.ts +2 -2
  8. package/dist/components/core/Button.vue.d.ts +2 -2
  9. package/dist/components/core/FieldBoundary.vue +14 -0
  10. package/dist/components/core/FieldBoundary.vue.d.ts +15 -0
  11. package/dist/components/core/FieldMessage.vue +28 -0
  12. package/dist/components/core/FieldMessage.vue.d.ts +409 -0
  13. package/dist/components/core/Form.vue +109 -11
  14. package/dist/components/core/Form.vue.d.ts +45 -6
  15. package/dist/components/core/FormAlerts.vue +30 -0
  16. package/dist/components/core/FormAlerts.vue.d.ts +393 -0
  17. package/dist/components/core/FormField.vue +54 -17
  18. package/dist/components/core/FormField.vue.d.ts +5 -4
  19. package/dist/components/core/Icon.vue.d.ts +2 -2
  20. package/dist/components/core/Input.vue.d.ts +4 -4
  21. package/dist/components/core/Kbd.vue.d.ts +2 -2
  22. package/dist/components/core/Root.vue.d.ts +6 -6
  23. package/dist/components/core/Spinner.vue +13 -1
  24. package/dist/components/core/Spinner.vue.d.ts +4 -2
  25. package/dist/components/core/Textarea.vue.d.ts +4 -4
  26. package/dist/components/core/VisuallyHidden.vue.d.ts +6 -6
  27. package/dist/components/core/index.d.ts +3 -0
  28. package/dist/components/core/index.mjs +3 -0
  29. package/dist/components/data/Avatar.vue.d.ts +2 -2
  30. package/dist/components/data/AvatarGroup.vue.d.ts +2 -2
  31. package/dist/components/data/Badge.vue.d.ts +2 -2
  32. package/dist/components/data/DescriptionList.vue.d.ts +2 -2
  33. package/dist/components/data/FilterPill.vue +35 -0
  34. package/dist/components/data/FilterPill.vue.d.ts +445 -0
  35. package/dist/components/data/FilterPills.vue +100 -27
  36. package/dist/components/data/FilterPills.vue.d.ts +47 -411
  37. package/dist/components/data/Pagination.vue.d.ts +4 -4
  38. package/dist/components/data/SelectionBar.vue +81 -0
  39. package/dist/components/data/SelectionBar.vue.d.ts +427 -0
  40. package/dist/components/data/Stat.vue.d.ts +8 -8
  41. package/dist/components/data/Tag.vue.d.ts +4 -4
  42. package/dist/components/data/Timeline.vue.d.ts +2 -2
  43. package/dist/components/data/Tree.vue +245 -21
  44. package/dist/components/data/Tree.vue.d.ts +40 -10
  45. package/dist/components/data/index.d.ts +3 -0
  46. package/dist/components/data/index.mjs +3 -0
  47. package/dist/components/data/types.d.ts +26 -2
  48. package/dist/components/feedback/Alert.vue.d.ts +18 -18
  49. package/dist/components/feedback/EmptyState.vue.d.ts +2 -2
  50. package/dist/components/feedback/LoadingOverlay.vue.d.ts +2 -2
  51. package/dist/components/feedback/Meter.vue.d.ts +2 -2
  52. package/dist/components/feedback/Progress.vue.d.ts +2 -2
  53. package/dist/components/feedback/ProgressRing.vue.d.ts +2 -2
  54. package/dist/components/feedback/Skeleton.vue.d.ts +3 -3
  55. package/dist/components/forms/Calendar.vue.d.ts +4 -4
  56. package/dist/components/forms/CheckboxGroup.vue +2 -1
  57. package/dist/components/forms/ColorInput.vue.d.ts +6 -6
  58. package/dist/components/forms/DateInput.vue.d.ts +14 -14
  59. package/dist/components/forms/DatePicker.vue.d.ts +6 -6
  60. package/dist/components/forms/FileInput.vue +160 -34
  61. package/dist/components/forms/FileInput.vue.d.ts +43 -15
  62. package/dist/components/forms/InputAddon.vue.d.ts +2 -2
  63. package/dist/components/forms/InputGroup.vue.d.ts +2 -2
  64. package/dist/components/forms/NumberInput.vue.d.ts +6 -6
  65. package/dist/components/forms/PasswordInput.vue.d.ts +16 -16
  66. package/dist/components/forms/PinInput.vue.d.ts +6 -6
  67. package/dist/components/forms/Radio.vue.d.ts +2 -2
  68. package/dist/components/forms/RadioGroup.vue +2 -1
  69. package/dist/components/forms/SegmentedControl.vue +33 -8
  70. package/dist/components/forms/SegmentedControl.vue.d.ts +15 -7
  71. package/dist/components/forms/Slider.vue.d.ts +6 -6
  72. package/dist/components/forms/Switch.vue.d.ts +6 -6
  73. package/dist/components/forms/TimeInput.vue.d.ts +16 -16
  74. package/dist/components/forms/types.d.ts +17 -0
  75. package/dist/components/layout/Accordion.vue +25 -5
  76. package/dist/components/layout/Accordion.vue.d.ts +11 -8
  77. package/dist/components/layout/AppShell.vue +1 -1
  78. package/dist/components/layout/AppShell.vue.d.ts +7 -7
  79. package/dist/components/layout/Breadcrumbs.vue +28 -20
  80. package/dist/components/layout/Breadcrumbs.vue.d.ts +18 -3
  81. package/dist/components/layout/Card.vue +22 -3
  82. package/dist/components/layout/Card.vue.d.ts +10 -4
  83. package/dist/components/layout/CopyButton.vue.d.ts +4 -4
  84. package/dist/components/layout/Grid.vue.d.ts +2 -2
  85. package/dist/components/layout/NavLink.vue.d.ts +8 -8
  86. package/dist/components/layout/PageHeader.vue +10 -1
  87. package/dist/components/layout/PageHeader.vue.d.ts +17 -9
  88. package/dist/components/layout/Separator.vue.d.ts +2 -2
  89. package/dist/components/layout/Sidebar.vue.d.ts +2 -2
  90. package/dist/components/layout/SidebarSection.vue.d.ts +2 -2
  91. package/dist/components/layout/Stack.vue.d.ts +6 -6
  92. package/dist/components/layout/Tabs.vue +37 -7
  93. package/dist/components/layout/Tabs.vue.d.ts +11 -4
  94. package/dist/components/layout/ThemeSwitch.vue.d.ts +2 -2
  95. package/dist/components/layout/Toolbar.vue.d.ts +2 -2
  96. package/dist/components/layout/types.d.ts +8 -1
  97. package/dist/components/overlays/CommandPalette.vue +35 -8
  98. package/dist/components/overlays/CommandPalette.vue.d.ts +273 -497
  99. package/dist/components/overlays/ConfirmDialog.vue.d.ts +8 -6
  100. package/dist/components/overlays/ConfirmHost.vue +5 -1
  101. package/dist/components/overlays/ConfirmHost.vue.d.ts +10 -8
  102. package/dist/components/overlays/ContextMenu.vue.d.ts +4 -4
  103. package/dist/components/overlays/Drawer.vue +4 -2
  104. package/dist/components/overlays/Drawer.vue.d.ts +8 -6
  105. package/dist/components/overlays/DropdownMenu.vue.d.ts +2 -2
  106. package/dist/components/overlays/HoverCard.vue +2 -1
  107. package/dist/components/overlays/HoverCard.vue.d.ts +8 -8
  108. package/dist/components/overlays/Modal.vue +5 -3
  109. package/dist/components/overlays/Modal.vue.d.ts +8 -6
  110. package/dist/components/overlays/Popover.vue +2 -1
  111. package/dist/components/overlays/Popover.vue.d.ts +8 -8
  112. package/dist/components/overlays/Toaster.vue.d.ts +4 -4
  113. package/dist/components/overlays/Tooltip.vue.d.ts +2 -2
  114. package/dist/components/overlays/types.d.ts +11 -5
  115. package/dist/components/templates/AccountMenu.vue.d.ts +6 -6
  116. package/dist/components/templates/AppearanceSettings.vue.d.ts +2 -2
  117. package/dist/components/templates/AuthLayout.vue.d.ts +2 -2
  118. package/dist/components/templates/Brand.vue +34 -5
  119. package/dist/components/templates/Brand.vue.d.ts +20 -15
  120. package/dist/components/templates/DashboardLayout.vue +49 -10
  121. package/dist/components/templates/DashboardLayout.vue.d.ts +332 -553
  122. package/dist/components/templates/DashboardPage.vue.d.ts +2 -2
  123. package/dist/components/templates/DetailPage.vue.d.ts +4 -4
  124. package/dist/components/templates/EmptyPage.vue.d.ts +2 -2
  125. package/dist/components/templates/ErrorPage.vue.d.ts +2 -2
  126. package/dist/components/templates/ListPage.vue +17 -11
  127. package/dist/components/templates/ListPage.vue.d.ts +3 -3
  128. package/dist/components/templates/NotFoundPage.vue.d.ts +1 -1
  129. package/dist/components/templates/SaveBar.vue.d.ts +4 -4
  130. package/dist/components/templates/SettingsGroup.vue.d.ts +2 -2
  131. package/dist/components/templates/SettingsModal.vue +5 -2
  132. package/dist/components/templates/SettingsModal.vue.d.ts +13 -8
  133. package/dist/components/templates/SettingsPage.vue.d.ts +4 -4
  134. package/dist/components/templates/SettingsSection.vue.d.ts +12 -8
  135. package/dist/components/templates/types.d.ts +25 -2
  136. package/dist/composables/core.d.ts +1 -0
  137. package/dist/composables/core.mjs +1 -0
  138. package/dist/composables/useField.d.ts +8 -1
  139. package/dist/composables/useField.mjs +41 -10
  140. package/dist/composables/useFieldBoundary.d.ts +2 -0
  141. package/dist/composables/useFieldBoundary.mjs +9 -0
  142. package/dist/composables/useFileDrop.d.ts +20 -0
  143. package/dist/composables/useFileDrop.mjs +115 -7
  144. package/dist/composables/useForm.d.ts +36 -19
  145. package/dist/composables/useForm.mjs +258 -51
  146. package/dist/editor/RichTextEditor.vue +32 -4
  147. package/dist/editor/RichTextEditor.vue.d.ts +11 -6
  148. package/dist/editor/rich-text-editor.css +1 -1
  149. package/dist/editor/types.d.ts +3 -0
  150. package/dist/grid/GridToolbar.vue.d.ts +4 -4
  151. package/dist/grid/cells/BadgeCell.vue.d.ts +2 -2
  152. package/dist/grid/cells/BooleanCell.vue.d.ts +2 -2
  153. package/dist/grid/cells/DateCell.vue.d.ts +2 -2
  154. package/dist/grid/cells/ImageCell.vue.d.ts +2 -2
  155. package/dist/grid/cells/LinkCell.vue.d.ts +2 -2
  156. package/dist/internal/core/ButtonElement.d.ts +2 -0
  157. package/dist/internal/core/ButtonElement.mjs +8 -0
  158. package/dist/internal/data/tree.d.ts +8 -0
  159. package/dist/internal/data/tree.mjs +41 -0
  160. package/dist/internal/forms/files.d.ts +9 -0
  161. package/dist/internal/forms/files.mjs +32 -1
  162. package/dist/internal/forms/standard-schema.d.ts +17 -0
  163. package/dist/internal/forms/standard-schema.mjs +40 -0
  164. package/dist/internal/keys.d.ts +2 -1
  165. package/dist/internal/keys.mjs +1 -0
  166. package/dist/internal/overlays/DialogFrame.vue +17 -7
  167. package/dist/internal/overlays/DialogFrame.vue.d.ts +9 -5
  168. package/dist/internal/overlays/MenuList.vue +2 -0
  169. package/dist/internal/overlays/MenuList.vue.d.ts +5 -5
  170. package/dist/internal/overlays/OverlayView.vue +2 -0
  171. package/dist/internal/overlays/OverlayView.vue.d.ts +14 -12
  172. package/dist/internal/overlays/dialog.d.ts +4 -1
  173. package/dist/internal/overlays/dialog.mjs +39 -5
  174. package/dist/internal/overlays/stack.d.ts +2 -1
  175. package/dist/locale/en.mjs +19 -2
  176. package/dist/locale/it.mjs +19 -2
  177. package/dist/locale/types.d.ts +17 -0
  178. package/dist/nuxt/module.d.ts +1 -0
  179. package/dist/nuxt/module.mjs +6 -3
  180. package/dist/nuxt/runtime/layouts/auth.vue.d.ts +8 -8
  181. package/dist/nuxt/runtime/layouts/dashboard.vue.d.ts +8 -8
  182. package/dist/styles/base.css +2 -0
  183. package/dist/styles/core/button.css +1 -13
  184. package/dist/styles/core/field-message.css +34 -0
  185. package/dist/styles/core/form-field.css +0 -23
  186. package/dist/styles/core/form.css +11 -0
  187. package/dist/styles/core/kbd.css +2 -2
  188. package/dist/styles/core/spinner.css +19 -0
  189. package/dist/styles/core.css +1 -0
  190. package/dist/styles/data/avatar.css +1 -1
  191. package/dist/styles/data/badge.css +1 -1
  192. package/dist/styles/data/filter-pills.css +40 -4
  193. package/dist/styles/data/pagination.css +0 -1
  194. package/dist/styles/data/selection-bar.css +89 -0
  195. package/dist/styles/data/stat.css +1 -6
  196. package/dist/styles/data/table.css +1 -3
  197. package/dist/styles/data/tag.css +1 -4
  198. package/dist/styles/data/tree.css +163 -2
  199. package/dist/styles/data.css +1 -0
  200. package/dist/styles/feedback/alert.css +0 -1
  201. package/dist/styles/feedback/empty-state.css +0 -1
  202. package/dist/styles/forms/calendar.css +1 -1
  203. package/dist/styles/forms/color-input.css +1 -1
  204. package/dist/styles/forms/combobox.css +0 -1
  205. package/dist/styles/forms/date-picker.css +1 -1
  206. package/dist/styles/forms/file-input.css +17 -1
  207. package/dist/styles/forms/number-input.css +1 -1
  208. package/dist/styles/forms/password-input.css +1 -5
  209. package/dist/styles/forms/segmented.css +8 -0
  210. package/dist/styles/forms/select.css +1 -1
  211. package/dist/styles/forms/slider.css +2 -2
  212. package/dist/styles/forms/switch.css +0 -1
  213. package/dist/styles/layout/accordion.css +22 -1
  214. package/dist/styles/layout/app-shell.css +4 -0
  215. package/dist/styles/layout/breadcrumbs.css +16 -1
  216. package/dist/styles/layout/card.css +20 -6
  217. package/dist/styles/layout/copy-button.css +2 -2
  218. package/dist/styles/layout/nav-link.css +2 -3
  219. package/dist/styles/layout/sidebar-nav.css +1 -1
  220. package/dist/styles/layout/sidebar.css +2 -2
  221. package/dist/styles/layout/tabs.css +65 -3
  222. package/dist/styles/layout/theme-switch.css +1 -3
  223. package/dist/styles/overlays/command.css +21 -3
  224. package/dist/styles/overlays/confirm.css +0 -1
  225. package/dist/styles/overlays/menu.css +3 -5
  226. package/dist/styles/overlays/modal.css +38 -0
  227. package/dist/styles/overlays/toast.css +0 -1
  228. package/dist/styles/templates/auth-layout.css +0 -1
  229. package/dist/styles/templates/brand.css +15 -0
  230. package/dist/styles/templates/empty-page.css +4 -4
  231. package/dist/styles/templates/form-page.css +1 -1
  232. package/dist/styles/templates/list-page.css +2 -6
  233. package/dist/styles/templates/page.css +1 -1
  234. package/dist/styles/templates/settings-modal.css +2 -3
  235. package/dist/styles/tokens.css +1 -1
  236. package/package.json +1 -1
@@ -34,8 +34,6 @@ declare const __VLS_export: import("vue").DefineComponent<{
34
34
  results?: (string | number) | undefined;
35
35
  placeholder?: string | undefined;
36
36
  name?: string | undefined;
37
- type?: string | undefined;
38
- ref?: import("vue").VNodeRef | undefined;
39
37
  role?: string | undefined;
40
38
  'aria-label'?: string | undefined;
41
39
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
@@ -138,6 +136,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
138
136
  height?: (string | number) | undefined;
139
137
  id?: string | undefined;
140
138
  lang?: string | undefined;
139
+ type?: string | undefined;
141
140
  width?: (string | number) | undefined;
142
141
  tabindex?: (string | number) | undefined;
143
142
  'aria-activedescendant'?: string | undefined;
@@ -186,6 +185,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
186
185
  'aria-valuemin'?: (string | number) | undefined;
187
186
  'aria-valuenow'?: (string | number) | undefined;
188
187
  'aria-valuetext'?: string | undefined;
188
+ ref?: import("vue").VNodeRef | undefined;
189
189
  ref_for?: boolean | undefined | undefined;
190
190
  ref_key?: string | undefined | undefined;
191
191
  step?: (string | number) | undefined;
@@ -232,6 +232,12 @@ declare const __VLS_export: import("vue").DefineComponent<{
232
232
  formtarget?: string | undefined;
233
233
  popovertarget?: string;
234
234
  popovertargetaction?: import("../../index.ts").PopoverTargetAction;
235
+ onVnodeBeforeMount?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
236
+ onVnodeMounted?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
237
+ onVnodeBeforeUpdate?: (((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void) | ((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void)[]) | undefined;
238
+ onVnodeUpdated?: (((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void) | ((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void)[]) | undefined;
239
+ onVnodeBeforeUnmount?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
240
+ onVnodeUnmounted?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
235
241
  clearable?: boolean;
236
242
  clearLabel?: string;
237
243
  noAutofill?: boolean;
@@ -248,12 +254,6 @@ declare const __VLS_export: import("vue").DefineComponent<{
248
254
  src?: string | undefined;
249
255
  onCancel?: ((payload: Event) => void) | undefined;
250
256
  modelModifiers?: Partial<Record<"number" | "trim", true>>;
251
- onVnodeBeforeMount?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
252
- onVnodeMounted?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
253
- onVnodeBeforeUpdate?: (((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void) | ((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void)[]) | undefined;
254
- onVnodeUpdated?: (((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void) | ((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void)[]) | undefined;
255
- onVnodeBeforeUnmount?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
256
- onVnodeUnmounted?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
257
257
  }, {
258
258
  focus: () => void | undefined;
259
259
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -293,8 +293,6 @@ declare const __VLS_export: import("vue").DefineComponent<{
293
293
  results?: (string | number) | undefined;
294
294
  placeholder?: string | undefined;
295
295
  name?: string | undefined;
296
- type?: string | undefined;
297
- ref?: import("vue").VNodeRef | undefined;
298
296
  role?: string | undefined;
299
297
  'aria-label'?: string | undefined;
300
298
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
@@ -397,6 +395,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
397
395
  height?: (string | number) | undefined;
398
396
  id?: string | undefined;
399
397
  lang?: string | undefined;
398
+ type?: string | undefined;
400
399
  width?: (string | number) | undefined;
401
400
  tabindex?: (string | number) | undefined;
402
401
  'aria-activedescendant'?: string | undefined;
@@ -445,6 +444,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
445
444
  'aria-valuemin'?: (string | number) | undefined;
446
445
  'aria-valuenow'?: (string | number) | undefined;
447
446
  'aria-valuetext'?: string | undefined;
447
+ ref?: import("vue").VNodeRef | undefined;
448
448
  ref_for?: boolean | undefined | undefined;
449
449
  ref_key?: string | undefined | undefined;
450
450
  step?: (string | number) | undefined;
@@ -491,6 +491,12 @@ declare const __VLS_export: import("vue").DefineComponent<{
491
491
  formtarget?: string | undefined;
492
492
  popovertarget?: string;
493
493
  popovertargetaction?: import("../../index.ts").PopoverTargetAction;
494
+ onVnodeBeforeMount?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
495
+ onVnodeMounted?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
496
+ onVnodeBeforeUpdate?: (((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void) | ((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void)[]) | undefined;
497
+ onVnodeUpdated?: (((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void) | ((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void)[]) | undefined;
498
+ onVnodeBeforeUnmount?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
499
+ onVnodeUnmounted?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
494
500
  clearable?: boolean;
495
501
  clearLabel?: string;
496
502
  noAutofill?: boolean;
@@ -507,12 +513,6 @@ declare const __VLS_export: import("vue").DefineComponent<{
507
513
  src?: string | undefined;
508
514
  onCancel?: ((payload: Event) => void) | undefined;
509
515
  modelModifiers?: Partial<Record<"number" | "trim", true>>;
510
- onVnodeBeforeMount?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
511
- onVnodeMounted?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
512
- onVnodeBeforeUpdate?: (((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void) | ((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void)[]) | undefined;
513
- onVnodeUpdated?: (((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void) | ((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void)[]) | undefined;
514
- onVnodeBeforeUnmount?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
515
- onVnodeUnmounted?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
516
516
  }> & Readonly<{
517
517
  onGenerate?: ((password: string) => any) | undefined;
518
518
  "onUpdate:modelValue"?: ((value: string | null | undefined) => any) | undefined;
@@ -29,8 +29,6 @@ declare const __VLS_export: import("vue").DefineComponent<{
29
29
  list?: string | undefined | undefined;
30
30
  results?: (string | number) | undefined;
31
31
  name?: string | undefined | undefined;
32
- type?: import("vue").InputTypeHTMLAttribute | undefined;
33
- ref?: import("vue").VNodeRef | undefined;
34
32
  role?: string | undefined | undefined;
35
33
  'aria-label'?: string | undefined | undefined;
36
34
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
@@ -133,6 +131,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
133
131
  height?: (string | number) | undefined;
134
132
  id?: string | undefined | undefined;
135
133
  lang?: string | undefined | undefined;
134
+ type?: import("vue").InputTypeHTMLAttribute | undefined;
136
135
  width?: (string | number) | undefined;
137
136
  tabindex?: (string | number) | undefined;
138
137
  'aria-activedescendant'?: string | undefined | undefined;
@@ -144,7 +143,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
144
143
  'aria-colindex'?: (string | number) | undefined;
145
144
  'aria-colspan'?: (string | number) | undefined;
146
145
  'aria-controls'?: string | undefined | undefined;
147
- 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
146
+ 'aria-current'?: "page" | "time" | (boolean | "true" | "false") | "step" | "location" | "date" | undefined;
148
147
  'aria-describedby'?: string | undefined | undefined;
149
148
  'aria-details'?: string | undefined | undefined;
150
149
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -181,6 +180,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
181
180
  'aria-valuemin'?: (string | number) | undefined;
182
181
  'aria-valuenow'?: (string | number) | undefined;
183
182
  'aria-valuetext'?: string | undefined | undefined;
183
+ ref?: import("vue").VNodeRef | undefined;
184
184
  ref_for?: boolean | undefined | undefined;
185
185
  ref_key?: string | undefined | undefined;
186
186
  step?: (string | number) | undefined;
@@ -273,8 +273,6 @@ declare const __VLS_export: import("vue").DefineComponent<{
273
273
  list?: string | undefined | undefined;
274
274
  results?: (string | number) | undefined;
275
275
  name?: string | undefined | undefined;
276
- type?: import("vue").InputTypeHTMLAttribute | undefined;
277
- ref?: import("vue").VNodeRef | undefined;
278
276
  role?: string | undefined | undefined;
279
277
  'aria-label'?: string | undefined | undefined;
280
278
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
@@ -377,6 +375,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
377
375
  height?: (string | number) | undefined;
378
376
  id?: string | undefined | undefined;
379
377
  lang?: string | undefined | undefined;
378
+ type?: import("vue").InputTypeHTMLAttribute | undefined;
380
379
  width?: (string | number) | undefined;
381
380
  tabindex?: (string | number) | undefined;
382
381
  'aria-activedescendant'?: string | undefined | undefined;
@@ -388,7 +387,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
388
387
  'aria-colindex'?: (string | number) | undefined;
389
388
  'aria-colspan'?: (string | number) | undefined;
390
389
  'aria-controls'?: string | undefined | undefined;
391
- 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
390
+ 'aria-current'?: "page" | "time" | (boolean | "true" | "false") | "step" | "location" | "date" | undefined;
392
391
  'aria-describedby'?: string | undefined | undefined;
393
392
  'aria-details'?: string | undefined | undefined;
394
393
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -425,6 +424,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
425
424
  'aria-valuemin'?: (string | number) | undefined;
426
425
  'aria-valuenow'?: (string | number) | undefined;
427
426
  'aria-valuetext'?: string | undefined | undefined;
427
+ ref?: import("vue").VNodeRef | undefined;
428
428
  ref_for?: boolean | undefined | undefined;
429
429
  ref_key?: string | undefined | undefined;
430
430
  step?: (string | number) | undefined;
@@ -100,7 +100,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
100
100
  'aria-colindex'?: (string | number) | undefined;
101
101
  'aria-colspan'?: (string | number) | undefined;
102
102
  'aria-controls'?: string | undefined | undefined;
103
- 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
103
+ 'aria-current'?: "page" | "time" | (boolean | "true" | "false") | "step" | "location" | "date" | undefined;
104
104
  'aria-describedby'?: string | undefined | undefined;
105
105
  'aria-details'?: string | undefined | undefined;
106
106
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -334,7 +334,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
334
334
  'aria-colindex'?: (string | number) | undefined;
335
335
  'aria-colspan'?: (string | number) | undefined;
336
336
  'aria-controls'?: string | undefined | undefined;
337
- 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
337
+ 'aria-current'?: "page" | "time" | (boolean | "true" | "false") | "step" | "location" | "date" | undefined;
338
338
  'aria-describedby'?: string | undefined | undefined;
339
339
  'aria-details'?: string | undefined | undefined;
340
340
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -60,7 +60,8 @@ const fallbackName = useId();
60
60
  const control = useFieldControl({
61
61
  invalid: () => props.invalid,
62
62
  disabled: () => props.disabled,
63
- required: () => props.required
63
+ required: () => props.required,
64
+ labelable: false
64
65
  });
65
66
  provide(RADIO_GROUP_KEY, {
66
67
  name: computed(() => props.name ?? control.field?.name.value ?? fallbackName),
@@ -8,7 +8,8 @@
8
8
  :aria-describedby="joinIds($attrs['aria-describedby'], control.describedBy.value)"
9
9
  :aria-invalid="control.invalid.value ? 'true' : void 0"
10
10
  :aria-disabled="control.disabled.value ? 'true' : void 0"
11
- :aria-readonly="readonly ? 'true' : void 0"
11
+ :aria-readonly="props.readonly ? 'true' : void 0"
12
+ :aria-required="control.required.value ? 'true' : void 0"
12
13
  role="radiogroup"
13
14
  class="k-segmented"
14
15
  :class="[
@@ -30,24 +31,40 @@
30
31
  type="button"
31
32
  role="radio"
32
33
  class="k-segmented-item"
33
- :class="{ 'is-active': index === activeIndex, 'is-icon': option.icon && iconOnly }"
34
+ :class="{
35
+ 'is-active': index === activeIndex,
36
+ 'is-icon': option.icon && iconOnly,
37
+ 'is-muted': option.muted
38
+ }"
34
39
  :aria-checked="index === activeIndex ? 'true' : 'false'"
35
40
  :aria-label="iconOnly ? option.label : void 0"
36
- :title="iconOnly ? option.label : void 0"
41
+ :aria-describedby="option.title && !iconOnly ? titleId(index) : void 0"
42
+ :title="option.title ?? (iconOnly ? option.label : void 0)"
37
43
  :tabindex="index === focusIndex ? 0 : -1"
38
44
  :disabled="control.disabled.value || option.disabled || void 0"
39
45
  @click="select(index)"
40
46
  @keydown="onKeydown($event, index)"
41
47
  >
42
- <Icon v-if="option.icon" :name="option.icon" />
43
- <span v-if="!iconOnly" class="k-segmented-label">{{ option.label }}</span>
48
+ <slot
49
+ name="option"
50
+ :option="option"
51
+ :index="index"
52
+ :active="index === activeIndex"
53
+ :icon-only="iconOnly"
54
+ >
55
+ <Icon v-if="option.icon" :name="option.icon" />
56
+ <span v-if="!iconOnly" class="k-segmented-label">{{ option.label }}</span>
57
+ </slot>
58
+ <span v-if="option.title && !iconOnly" :id="titleId(index)" class="k-visually-hidden">{{
59
+ option.title
60
+ }}</span>
44
61
  </button>
45
62
  <input v-if="formName" type="hidden" :name="formName" :value="hiddenValue" />
46
63
  </div>
47
64
  </template>
48
65
 
49
66
  <script setup>
50
- import { computed, nextTick, onBeforeUnmount, onMounted, ref, watch } from "vue";
67
+ import { computed, nextTick, onBeforeUnmount, onMounted, ref, useId, watch } from "vue";
51
68
  import { useFieldControl } from "../../composables/useField";
52
69
  import { joinIds } from "../../internal/forms/control";
53
70
  import Icon from "../core/Icon.vue";
@@ -61,9 +78,12 @@ const props = defineProps({
61
78
  iconOnly: { type: Boolean, required: false },
62
79
  invalid: { type: Boolean, required: false, default: void 0 },
63
80
  disabled: { type: Boolean, required: false },
64
- readonly: { type: Boolean, required: false }
81
+ readonly: { type: Boolean, required: false },
82
+ required: { type: null, required: false }
65
83
  });
84
+ defineSlots();
66
85
  const model = defineModel({ type: null });
86
+ const baseId = useId();
67
87
  const rootRef = ref(null);
68
88
  const itemRefs = [];
69
89
  const ready = ref(false);
@@ -71,8 +91,13 @@ const indicator = ref({ x: 0, width: 0 });
71
91
  let observer;
72
92
  const control = useFieldControl({
73
93
  invalid: () => props.invalid,
74
- disabled: () => props.disabled
94
+ disabled: () => props.disabled,
95
+ required: () => props.required,
96
+ labelable: false
75
97
  });
98
+ function titleId(index) {
99
+ return `${baseId}-title-${index}`;
100
+ }
76
101
  const activeIndex = computed(
77
102
  () => props.options.findIndex((option) => option.value === model.value)
78
103
  );
@@ -1,8 +1,8 @@
1
1
  import type { FieldSize } from '../core/types';
2
- import type { ChoiceOption, ChoiceValue } from './types';
3
- declare const __VLS_export: <T extends ChoiceValue>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
2
+ import type { ChoiceValue, SegmentedOption } from './types';
3
+ declare const __VLS_export: <T extends ChoiceValue, R extends boolean = false>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
4
4
  props: import("vue").PublicProps & __VLS_PrettifyLocal<({
5
- options: ChoiceOption<T>[];
5
+ options: SegmentedOption<T>[];
6
6
  name?: string;
7
7
  size?: FieldSize;
8
8
  block?: boolean;
@@ -10,17 +10,25 @@ declare const __VLS_export: <T extends ChoiceValue>(__VLS_props: NonNullable<Awa
10
10
  invalid?: boolean;
11
11
  disabled?: boolean;
12
12
  readonly?: boolean;
13
+ required?: R;
13
14
  } & {
14
- modelValue?: T | null;
15
+ modelValue?: R extends true ? T : T | null;
15
16
  }) & {
16
- "onUpdate:modelValue"?: ((value: T | null | undefined) => any) | undefined;
17
+ "onUpdate:modelValue"?: ((value: R extends true ? T : T | null | undefined) => any) | undefined;
17
18
  } & Partial<import("vue").HTMLAttributes & import("vue").ReservedProps>> & (typeof globalThis extends {
18
19
  __VLS_PROPS_FALLBACK: infer P;
19
20
  } ? P : {});
20
21
  expose: (exposed: {}) => void;
21
22
  attrs: any;
22
- slots: {};
23
- emit: (event: "update:modelValue", value: T | null | undefined) => void;
23
+ slots: {
24
+ option?: (props: {
25
+ option: SegmentedOption<T>;
26
+ index: number;
27
+ active: boolean;
28
+ iconOnly: boolean;
29
+ }) => unknown;
30
+ };
31
+ emit: (event: "update:modelValue", value: R extends true ? T : T | null | undefined) => void;
24
32
  }>) => import("vue").VNode & {
25
33
  __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
26
34
  };
@@ -25,8 +25,6 @@ declare const __VLS_export: import("vue").DefineComponent<{
25
25
  results?: (string | number) | undefined;
26
26
  placeholder?: string | undefined | undefined;
27
27
  name?: string | undefined | undefined;
28
- type?: import("vue").InputTypeHTMLAttribute | undefined;
29
- ref?: import("vue").VNodeRef | undefined;
30
28
  role?: string | undefined | undefined;
31
29
  'aria-label'?: string | undefined | undefined;
32
30
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
@@ -128,6 +126,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
128
126
  height?: (string | number) | undefined;
129
127
  id?: string | undefined | undefined;
130
128
  lang?: string | undefined | undefined;
129
+ type?: import("vue").InputTypeHTMLAttribute | undefined;
131
130
  width?: (string | number) | undefined;
132
131
  tabindex?: (string | number) | undefined;
133
132
  'aria-activedescendant'?: string | undefined | undefined;
@@ -139,7 +138,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
139
138
  'aria-colindex'?: (string | number) | undefined;
140
139
  'aria-colspan'?: (string | number) | undefined;
141
140
  'aria-controls'?: string | undefined | undefined;
142
- 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
141
+ 'aria-current'?: "page" | "time" | (boolean | "true" | "false") | "step" | "location" | "date" | undefined;
143
142
  'aria-describedby'?: string | undefined | undefined;
144
143
  'aria-details'?: string | undefined | undefined;
145
144
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -176,6 +175,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
176
175
  'aria-valuemin'?: (string | number) | undefined;
177
176
  'aria-valuenow'?: (string | number) | undefined;
178
177
  'aria-valuetext'?: string | undefined | undefined;
178
+ ref?: import("vue").VNodeRef | undefined;
179
179
  ref_for?: boolean | undefined | undefined;
180
180
  ref_key?: string | undefined | undefined;
181
181
  accesskey?: string | undefined | undefined;
@@ -263,8 +263,6 @@ declare const __VLS_export: import("vue").DefineComponent<{
263
263
  results?: (string | number) | undefined;
264
264
  placeholder?: string | undefined | undefined;
265
265
  name?: string | undefined | undefined;
266
- type?: import("vue").InputTypeHTMLAttribute | undefined;
267
- ref?: import("vue").VNodeRef | undefined;
268
266
  role?: string | undefined | undefined;
269
267
  'aria-label'?: string | undefined | undefined;
270
268
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
@@ -366,6 +364,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
366
364
  height?: (string | number) | undefined;
367
365
  id?: string | undefined | undefined;
368
366
  lang?: string | undefined | undefined;
367
+ type?: import("vue").InputTypeHTMLAttribute | undefined;
369
368
  width?: (string | number) | undefined;
370
369
  tabindex?: (string | number) | undefined;
371
370
  'aria-activedescendant'?: string | undefined | undefined;
@@ -377,7 +376,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
377
376
  'aria-colindex'?: (string | number) | undefined;
378
377
  'aria-colspan'?: (string | number) | undefined;
379
378
  'aria-controls'?: string | undefined | undefined;
380
- 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
379
+ 'aria-current'?: "page" | "time" | (boolean | "true" | "false") | "step" | "location" | "date" | undefined;
381
380
  'aria-describedby'?: string | undefined | undefined;
382
381
  'aria-details'?: string | undefined | undefined;
383
382
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -414,6 +413,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
414
413
  'aria-valuemin'?: (string | number) | undefined;
415
414
  'aria-valuenow'?: (string | number) | undefined;
416
415
  'aria-valuetext'?: string | undefined | undefined;
416
+ ref?: import("vue").VNodeRef | undefined;
417
417
  ref_for?: boolean | undefined | undefined;
418
418
  ref_key?: string | undefined | undefined;
419
419
  accesskey?: string | undefined | undefined;
@@ -29,8 +29,6 @@ declare const __VLS_base: import("vue").DefineComponent<{
29
29
  title?: string | undefined | undefined;
30
30
  results?: (string | number) | undefined;
31
31
  placeholder?: string | undefined | undefined;
32
- type?: "submit" | "reset" | "button" | undefined | undefined;
33
- ref?: import("vue").VNodeRef | undefined;
34
32
  role?: string | undefined | undefined;
35
33
  'aria-label'?: string | undefined | undefined;
36
34
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
@@ -132,6 +130,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
132
130
  color?: string | undefined | undefined;
133
131
  id?: string | undefined | undefined;
134
132
  lang?: string | undefined | undefined;
133
+ type?: "submit" | "reset" | "button" | undefined | undefined;
135
134
  tabindex?: (string | number) | undefined;
136
135
  'aria-activedescendant'?: string | undefined | undefined;
137
136
  'aria-atomic'?: (boolean | "true" | "false") | undefined;
@@ -142,7 +141,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
142
141
  'aria-colindex'?: (string | number) | undefined;
143
142
  'aria-colspan'?: (string | number) | undefined;
144
143
  'aria-controls'?: string | undefined | undefined;
145
- 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
144
+ 'aria-current'?: "page" | "time" | (boolean | "true" | "false") | "step" | "location" | "date" | undefined;
146
145
  'aria-describedby'?: string | undefined | undefined;
147
146
  'aria-details'?: string | undefined | undefined;
148
147
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -179,6 +178,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
179
178
  'aria-valuemin'?: (string | number) | undefined;
180
179
  'aria-valuenow'?: (string | number) | undefined;
181
180
  'aria-valuetext'?: string | undefined | undefined;
181
+ ref?: import("vue").VNodeRef | undefined;
182
182
  ref_for?: boolean | undefined | undefined;
183
183
  ref_key?: string | undefined | undefined;
184
184
  accesskey?: string | undefined | undefined;
@@ -251,8 +251,6 @@ declare const __VLS_base: import("vue").DefineComponent<{
251
251
  title?: string | undefined | undefined;
252
252
  results?: (string | number) | undefined;
253
253
  placeholder?: string | undefined | undefined;
254
- type?: "submit" | "reset" | "button" | undefined | undefined;
255
- ref?: import("vue").VNodeRef | undefined;
256
254
  role?: string | undefined | undefined;
257
255
  'aria-label'?: string | undefined | undefined;
258
256
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
@@ -354,6 +352,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
354
352
  color?: string | undefined | undefined;
355
353
  id?: string | undefined | undefined;
356
354
  lang?: string | undefined | undefined;
355
+ type?: "submit" | "reset" | "button" | undefined | undefined;
357
356
  tabindex?: (string | number) | undefined;
358
357
  'aria-activedescendant'?: string | undefined | undefined;
359
358
  'aria-atomic'?: (boolean | "true" | "false") | undefined;
@@ -364,7 +363,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
364
363
  'aria-colindex'?: (string | number) | undefined;
365
364
  'aria-colspan'?: (string | number) | undefined;
366
365
  'aria-controls'?: string | undefined | undefined;
367
- 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
366
+ 'aria-current'?: "page" | "time" | (boolean | "true" | "false") | "step" | "location" | "date" | undefined;
368
367
  'aria-describedby'?: string | undefined | undefined;
369
368
  'aria-details'?: string | undefined | undefined;
370
369
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -401,6 +400,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
401
400
  'aria-valuemin'?: (string | number) | undefined;
402
401
  'aria-valuenow'?: (string | number) | undefined;
403
402
  'aria-valuetext'?: string | undefined | undefined;
403
+ ref?: import("vue").VNodeRef | undefined;
404
404
  ref_for?: boolean | undefined | undefined;
405
405
  ref_key?: string | undefined | undefined;
406
406
  accesskey?: string | undefined | undefined;
@@ -23,8 +23,6 @@ declare const __VLS_export: import("vue").DefineComponent<{
23
23
  results?: (string | number) | undefined;
24
24
  placeholder?: string | undefined;
25
25
  name?: string | undefined;
26
- type?: string | undefined;
27
- ref?: import("vue").VNodeRef | undefined;
28
26
  class?: unknown;
29
27
  role?: string | undefined;
30
28
  'aria-label'?: string | undefined;
@@ -128,6 +126,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
128
126
  height?: (string | number) | undefined;
129
127
  id?: string | undefined;
130
128
  lang?: string | undefined;
129
+ type?: string | undefined;
131
130
  width?: (string | number) | undefined;
132
131
  tabindex?: (string | number) | undefined;
133
132
  'aria-activedescendant'?: string | undefined;
@@ -176,6 +175,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
176
175
  'aria-valuemin'?: (string | number) | undefined;
177
176
  'aria-valuenow'?: (string | number) | undefined;
178
177
  'aria-valuetext'?: string | undefined;
178
+ ref?: import("vue").VNodeRef | undefined;
179
179
  ref_for?: boolean | undefined | undefined;
180
180
  ref_key?: string | undefined | undefined;
181
181
  accesskey?: string | undefined;
@@ -221,6 +221,12 @@ declare const __VLS_export: import("vue").DefineComponent<{
221
221
  formtarget?: string | undefined;
222
222
  popovertarget?: string;
223
223
  popovertargetaction?: import("../../index.ts").PopoverTargetAction;
224
+ onVnodeBeforeMount?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
225
+ onVnodeMounted?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
226
+ onVnodeBeforeUpdate?: (((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void) | ((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void)[]) | undefined;
227
+ onVnodeUpdated?: (((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void) | ((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void)[]) | undefined;
228
+ onVnodeBeforeUnmount?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
229
+ onVnodeUnmounted?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
224
230
  autocomplete?: import("vue").InputAutoCompleteAttribute | undefined;
225
231
  clearLabel?: string;
226
232
  noAutofill?: boolean;
@@ -237,12 +243,6 @@ declare const __VLS_export: import("vue").DefineComponent<{
237
243
  src?: string | undefined;
238
244
  onCancel?: ((payload: Event) => void) | undefined;
239
245
  modelModifiers?: Partial<Record<"number" | "trim", true>>;
240
- onVnodeBeforeMount?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
241
- onVnodeMounted?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
242
- onVnodeBeforeUpdate?: (((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void) | ((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void)[]) | undefined;
243
- onVnodeUpdated?: (((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void) | ((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void)[]) | undefined;
244
- onVnodeBeforeUnmount?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
245
- onVnodeUnmounted?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
246
246
  }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
247
247
  "update:modelValue": (value: string | null | undefined) => any;
248
248
  }, string, import("vue").PublicProps, Readonly<{
@@ -269,8 +269,6 @@ declare const __VLS_export: import("vue").DefineComponent<{
269
269
  results?: (string | number) | undefined;
270
270
  placeholder?: string | undefined;
271
271
  name?: string | undefined;
272
- type?: string | undefined;
273
- ref?: import("vue").VNodeRef | undefined;
274
272
  class?: unknown;
275
273
  role?: string | undefined;
276
274
  'aria-label'?: string | undefined;
@@ -374,6 +372,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
374
372
  height?: (string | number) | undefined;
375
373
  id?: string | undefined;
376
374
  lang?: string | undefined;
375
+ type?: string | undefined;
377
376
  width?: (string | number) | undefined;
378
377
  tabindex?: (string | number) | undefined;
379
378
  'aria-activedescendant'?: string | undefined;
@@ -422,6 +421,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
422
421
  'aria-valuemin'?: (string | number) | undefined;
423
422
  'aria-valuenow'?: (string | number) | undefined;
424
423
  'aria-valuetext'?: string | undefined;
424
+ ref?: import("vue").VNodeRef | undefined;
425
425
  ref_for?: boolean | undefined | undefined;
426
426
  ref_key?: string | undefined | undefined;
427
427
  accesskey?: string | undefined;
@@ -467,6 +467,12 @@ declare const __VLS_export: import("vue").DefineComponent<{
467
467
  formtarget?: string | undefined;
468
468
  popovertarget?: string;
469
469
  popovertargetaction?: import("../../index.ts").PopoverTargetAction;
470
+ onVnodeBeforeMount?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
471
+ onVnodeMounted?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
472
+ onVnodeBeforeUpdate?: (((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void) | ((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void)[]) | undefined;
473
+ onVnodeUpdated?: (((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void) | ((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void)[]) | undefined;
474
+ onVnodeBeforeUnmount?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
475
+ onVnodeUnmounted?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
470
476
  autocomplete?: import("vue").InputAutoCompleteAttribute | undefined;
471
477
  clearLabel?: string;
472
478
  noAutofill?: boolean;
@@ -483,12 +489,6 @@ declare const __VLS_export: import("vue").DefineComponent<{
483
489
  src?: string | undefined;
484
490
  onCancel?: ((payload: Event) => void) | undefined;
485
491
  modelModifiers?: Partial<Record<"number" | "trim", true>>;
486
- onVnodeBeforeMount?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
487
- onVnodeMounted?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
488
- onVnodeBeforeUpdate?: (((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void) | ((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void)[]) | undefined;
489
- onVnodeUpdated?: (((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void) | ((vnode: import("vue").VNode, oldVNode: import("vue").VNode) => void)[]) | undefined;
490
- onVnodeBeforeUnmount?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
491
- onVnodeUnmounted?: (((vnode: import("vue").VNode) => void) | ((vnode: import("vue").VNode) => void)[]) | undefined;
492
492
  }> & Readonly<{
493
493
  "onUpdate:modelValue"?: ((value: string | null | undefined) => any) | undefined;
494
494
  }>, {
@@ -8,6 +8,10 @@ export interface ChoiceOption<T = ChoiceValue> {
8
8
  disabled?: boolean;
9
9
  icon?: IconName;
10
10
  }
11
+ export interface SegmentedOption<T = ChoiceValue> extends ChoiceOption<T> {
12
+ title?: string;
13
+ muted?: boolean;
14
+ }
11
15
  export interface SelectOption<T = string | number> {
12
16
  label: string;
13
17
  value: T;
@@ -39,6 +43,19 @@ export interface FileInvalidEvent {
39
43
  file: File;
40
44
  limit: string | number;
41
45
  }
46
+ export interface FileInputEntry {
47
+ file: File;
48
+ path: string;
49
+ }
50
+ export interface FileAddDetail {
51
+ entries: FileInputEntry[];
52
+ directories: string[];
53
+ source: 'browse' | 'drop';
54
+ event: Event;
55
+ dataTransfer: DataTransfer | null;
56
+ }
57
+ export type FileInputDirectory = boolean | 'drop';
58
+ export type FileInputAcceptMode = 'filter' | 'hint';
42
59
  export type PinInputMode = 'numeric' | 'alphanumeric' | 'alphabetic';
43
60
  export type RadioGroupVariant = 'default' | 'card';
44
61
  export type SliderBubble = boolean | 'always';