@sectile/vue 0.7.0 → 0.9.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 (319) hide show
  1. package/README.md +4 -2
  2. package/dist/accordion.d.ts +0 -1
  3. package/dist/alert-dialog.d.ts +0 -2
  4. package/dist/alert-dialog.js.map +1 -1
  5. package/dist/calendar.d.ts +2 -3
  6. package/dist/calendar.js +14 -14
  7. package/dist/calendar.js.map +1 -1
  8. package/dist/carousel.d.ts +22 -1
  9. package/dist/carousel.js +7 -1
  10. package/dist/carousel.js.map +1 -1
  11. package/dist/cascade-list.d.ts +339 -0
  12. package/dist/cascade-list.js +240 -0
  13. package/dist/cascade-list.js.map +1 -0
  14. package/dist/cascade-select.d.ts +11 -42
  15. package/dist/cascade-select.js +19 -27
  16. package/dist/cascade-select.js.map +1 -1
  17. package/dist/checkbox-group.d.ts +9 -1
  18. package/dist/checkbox-group.js +57 -13
  19. package/dist/checkbox-group.js.map +1 -1
  20. package/dist/checkbox.d.ts +0 -1
  21. package/dist/checkbox.js +15 -8
  22. package/dist/checkbox.js.map +1 -1
  23. package/dist/color-picker.d.ts +0 -1
  24. package/dist/combobox.d.ts +0 -1
  25. package/dist/combobox.js +46 -6
  26. package/dist/combobox.js.map +1 -1
  27. package/dist/data-grid.d.ts +207 -0
  28. package/dist/data-grid.js +107 -0
  29. package/dist/data-grid.js.map +1 -0
  30. package/dist/data-table.d.ts +239 -0
  31. package/dist/data-table.js +120 -0
  32. package/dist/data-table.js.map +1 -0
  33. package/dist/data-tree-grid.d.ts +218 -0
  34. package/dist/data-tree-grid.js +95 -0
  35. package/dist/data-tree-grid.js.map +1 -0
  36. package/dist/date-field.d.ts +1 -2
  37. package/dist/date-field.js +1 -1
  38. package/dist/date-field.js.map +1 -1
  39. package/dist/date-picker.d.ts +37 -6
  40. package/dist/date-picker.js +3 -1
  41. package/dist/date-picker.js.map +1 -1
  42. package/dist/date-range-field.d.ts +2 -3
  43. package/dist/date-range-field.js +24 -6
  44. package/dist/date-range-field.js.map +1 -1
  45. package/dist/date-range-picker.d.ts +37 -6
  46. package/dist/date-range-picker.js +3 -1
  47. package/dist/date-range-picker.js.map +1 -1
  48. package/dist/date-time-field.d.ts +1 -2
  49. package/dist/date-time-field.js +1 -1
  50. package/dist/date-time-field.js.map +1 -1
  51. package/dist/date-time-picker.d.ts +38 -7
  52. package/dist/date-time-picker.js +3 -1
  53. package/dist/date-time-picker.js.map +1 -1
  54. package/dist/date-time-range-picker.d.ts +38 -7
  55. package/dist/date-time-range-picker.js +3 -1
  56. package/dist/date-time-range-picker.js.map +1 -1
  57. package/dist/dialog.d.ts +0 -2
  58. package/dist/dialog.js.map +1 -1
  59. package/dist/disclosure.d.ts +0 -1
  60. package/dist/drawer.d.ts +1 -2
  61. package/dist/editable.d.ts +0 -1
  62. package/dist/editable.js +25 -6
  63. package/dist/editable.js.map +1 -1
  64. package/dist/feed.d.ts +0 -1
  65. package/dist/form.d.ts +88 -115
  66. package/dist/form.js +461 -233
  67. package/dist/form.js.map +1 -1
  68. package/dist/grid.d.ts +0 -1
  69. package/dist/grid.js +51 -6
  70. package/dist/grid.js.map +1 -1
  71. package/dist/host-provider.d.ts +0 -13
  72. package/dist/host-provider.js +0 -16
  73. package/dist/host-provider.js.map +1 -1
  74. package/dist/index.d.ts +14 -39
  75. package/dist/index.js +6 -19
  76. package/dist/index.js.map +1 -1
  77. package/dist/internal/cascade-choice.d.ts +204 -0
  78. package/dist/internal/cascade-choice.js +161 -0
  79. package/dist/internal/cascade-choice.js.map +1 -0
  80. package/dist/internal/collection.d.ts +3 -8
  81. package/dist/internal/collection.js +14 -20
  82. package/dist/internal/collection.js.map +1 -1
  83. package/dist/internal/controlled-state.d.ts +0 -1
  84. package/dist/internal/date-picker.d.ts +78 -9
  85. package/dist/internal/date-picker.js +116 -27
  86. package/dist/internal/date-picker.js.map +1 -1
  87. package/dist/internal/decimal-input.d.ts +1 -0
  88. package/dist/internal/decimal-input.js +24 -0
  89. package/dist/internal/decimal-input.js.map +1 -0
  90. package/dist/internal/form-control-inventory.d.ts +4 -1
  91. package/dist/internal/form-control-inventory.js +1 -0
  92. package/dist/internal/form-control-inventory.js.map +1 -1
  93. package/dist/internal/form-control.d.ts +100 -2
  94. package/dist/internal/form-control.js +103 -1
  95. package/dist/internal/form-control.js.map +1 -1
  96. package/dist/internal/native-field.d.ts +0 -1
  97. package/dist/internal/native-field.js +11 -2
  98. package/dist/internal/native-field.js.map +1 -1
  99. package/dist/internal/native-input.d.ts +0 -1
  100. package/dist/internal/part-contract.d.ts +0 -1
  101. package/dist/internal/popup.d.ts +5 -27
  102. package/dist/internal/popup.js +15 -21
  103. package/dist/internal/popup.js.map +1 -1
  104. package/dist/internal/presence.d.ts +0 -1
  105. package/dist/internal/scheduled-task.d.ts +5 -0
  106. package/dist/internal/scheduled-task.js +28 -0
  107. package/dist/internal/scheduled-task.js.map +1 -0
  108. package/dist/internal/tabs-context.d.ts +2 -3
  109. package/dist/internal/tabular-components.d.ts +27 -0
  110. package/dist/internal/tabular-components.js +26 -0
  111. package/dist/internal/tabular-components.js.map +1 -0
  112. package/dist/internal/tabular-parts.d.ts +57 -0
  113. package/dist/internal/tabular-parts.js +239 -0
  114. package/dist/internal/tabular-parts.js.map +1 -0
  115. package/dist/internal/tabular-profile.d.ts +75 -0
  116. package/dist/internal/tabular-profile.js +211 -0
  117. package/dist/internal/tabular-profile.js.map +1 -0
  118. package/dist/internal/virtual-collection-model.d.ts +42 -0
  119. package/dist/internal/virtual-collection-model.js +241 -0
  120. package/dist/internal/virtual-collection-model.js.map +1 -0
  121. package/dist/internal/virtual-collection.d.ts +38 -0
  122. package/dist/internal/virtual-collection.js +87 -0
  123. package/dist/internal/virtual-collection.js.map +1 -0
  124. package/dist/{virtual.d.ts → internal/virtual-core.d.ts} +9 -4
  125. package/dist/{virtual.js → internal/virtual-core.js} +7 -7
  126. package/dist/internal/virtual-core.js.map +1 -0
  127. package/dist/internal/virtual-list.d.ts +214 -0
  128. package/dist/internal/virtual-list.js +401 -0
  129. package/dist/internal/virtual-list.js.map +1 -0
  130. package/dist/listbox.d.ts +0 -1
  131. package/dist/listbox.js +52 -6
  132. package/dist/listbox.js.map +1 -1
  133. package/dist/menu-button.d.ts +0 -1
  134. package/dist/menu.d.ts +0 -1
  135. package/dist/menubar.d.ts +0 -1
  136. package/dist/meter-group.d.ts +369 -0
  137. package/dist/meter-group.js +271 -0
  138. package/dist/meter-group.js.map +1 -0
  139. package/dist/meter.d.ts +191 -0
  140. package/dist/meter.js +133 -0
  141. package/dist/meter.js.map +1 -0
  142. package/dist/month-picker.d.ts +37 -6
  143. package/dist/month-picker.js +3 -1
  144. package/dist/month-picker.js.map +1 -1
  145. package/dist/month-range-picker.d.ts +37 -6
  146. package/dist/month-range-picker.js +3 -1
  147. package/dist/month-range-picker.js.map +1 -1
  148. package/dist/multi-thumb-slider.d.ts +0 -1
  149. package/dist/navigation-menu.d.ts +0 -1
  150. package/dist/number-field.d.ts +0 -1
  151. package/dist/pagination.d.ts +23 -2
  152. package/dist/pagination.js +6 -1
  153. package/dist/pagination.js.map +1 -1
  154. package/dist/pin-input.d.ts +0 -1
  155. package/dist/pin-input.js +1 -1
  156. package/dist/pin-input.js.map +1 -1
  157. package/dist/popover.d.ts +0 -2
  158. package/dist/popover.js.map +1 -1
  159. package/dist/primitive.d.ts +0 -1
  160. package/dist/primitive.js +8 -4
  161. package/dist/primitive.js.map +1 -1
  162. package/dist/progress.d.ts +148 -0
  163. package/dist/progress.js +110 -0
  164. package/dist/progress.js.map +1 -0
  165. package/dist/quantity-field.d.ts +0 -1
  166. package/dist/radio-group.d.ts +0 -1
  167. package/dist/radio-group.js +1 -1
  168. package/dist/radio-group.js.map +1 -1
  169. package/dist/range-calendar.d.ts +2 -3
  170. package/dist/rating.d.ts +0 -1
  171. package/dist/rating.js +10 -1
  172. package/dist/rating.js.map +1 -1
  173. package/dist/reorder.d.ts +1 -2
  174. package/dist/select.d.ts +18 -44
  175. package/dist/select.js +11 -13
  176. package/dist/select.js.map +1 -1
  177. package/dist/slider.d.ts +0 -1
  178. package/dist/spin-button.d.ts +0 -1
  179. package/dist/spin-button.js +17 -4
  180. package/dist/spin-button.js.map +1 -1
  181. package/dist/stepper.d.ts +0 -1
  182. package/dist/stepper.js +19 -2
  183. package/dist/stepper.js.map +1 -1
  184. package/dist/switch.d.ts +0 -1
  185. package/dist/tabs.d.ts +0 -1
  186. package/dist/tabs.js +4 -22
  187. package/dist/tabs.js.map +1 -1
  188. package/dist/tags-input.d.ts +0 -1
  189. package/dist/tags-input.js +18 -5
  190. package/dist/tags-input.js.map +1 -1
  191. package/dist/temporal-provider.d.ts +21 -0
  192. package/dist/temporal-provider.js +30 -0
  193. package/dist/temporal-provider.js.map +1 -0
  194. package/dist/text.d.ts +0 -1
  195. package/dist/text.js +18 -4
  196. package/dist/text.js.map +1 -1
  197. package/dist/time-field.d.ts +1 -2
  198. package/dist/time-field.js +1 -1
  199. package/dist/time-field.js.map +1 -1
  200. package/dist/time-range-field.d.ts +2 -2
  201. package/dist/time-range-field.js +6 -4
  202. package/dist/time-range-field.js.map +1 -1
  203. package/dist/timer.d.ts +0 -1
  204. package/dist/toast.d.ts +11 -2
  205. package/dist/toast.js +22 -9
  206. package/dist/toast.js.map +1 -1
  207. package/dist/toggle-button.d.ts +0 -1
  208. package/dist/toggle-group.d.ts +0 -1
  209. package/dist/toggle-group.js +1 -1
  210. package/dist/toggle-group.js.map +1 -1
  211. package/dist/toolbar.d.ts +0 -1
  212. package/dist/tooltip.d.ts +1 -3
  213. package/dist/tooltip.js.map +1 -1
  214. package/dist/tree-grid.d.ts +0 -1
  215. package/dist/tree-grid.js +62 -8
  216. package/dist/tree-grid.js.map +1 -1
  217. package/dist/tree-view.d.ts +0 -1
  218. package/dist/tree-view.js +51 -10
  219. package/dist/tree-view.js.map +1 -1
  220. package/dist/virtual-core.d.ts +1 -0
  221. package/dist/virtual-core.js +2 -0
  222. package/dist/virtual-core.js.map +1 -0
  223. package/dist/virtual-grid.d.ts +188 -0
  224. package/dist/virtual-grid.js +306 -0
  225. package/dist/virtual-grid.js.map +1 -0
  226. package/dist/virtual-list.d.ts +1 -0
  227. package/dist/virtual-list.js +2 -0
  228. package/dist/virtual-list.js.map +1 -0
  229. package/dist/virtual-masonry.d.ts +198 -0
  230. package/dist/virtual-masonry.js +221 -0
  231. package/dist/virtual-masonry.js.map +1 -0
  232. package/dist/virtual-spatial.d.ts +157 -0
  233. package/dist/virtual-spatial.js +159 -0
  234. package/dist/virtual-spatial.js.map +1 -0
  235. package/dist/window-splitter.d.ts +0 -1
  236. package/dist/year-picker.d.ts +37 -6
  237. package/dist/year-picker.js +3 -1
  238. package/dist/year-picker.js.map +1 -1
  239. package/dist/year-range-picker.d.ts +37 -6
  240. package/dist/year-range-picker.js +3 -1
  241. package/dist/year-range-picker.js.map +1 -1
  242. package/package.json +173 -89
  243. package/dist/accordion.d.ts.map +0 -1
  244. package/dist/alert-dialog.d.ts.map +0 -1
  245. package/dist/calendar.d.ts.map +0 -1
  246. package/dist/carousel.d.ts.map +0 -1
  247. package/dist/cascade-select.d.ts.map +0 -1
  248. package/dist/checkbox-group.d.ts.map +0 -1
  249. package/dist/checkbox.d.ts.map +0 -1
  250. package/dist/color-picker.d.ts.map +0 -1
  251. package/dist/combobox.d.ts.map +0 -1
  252. package/dist/date-field.d.ts.map +0 -1
  253. package/dist/date-picker.d.ts.map +0 -1
  254. package/dist/date-range-field.d.ts.map +0 -1
  255. package/dist/date-range-picker.d.ts.map +0 -1
  256. package/dist/date-time-field.d.ts.map +0 -1
  257. package/dist/date-time-picker.d.ts.map +0 -1
  258. package/dist/date-time-range-picker.d.ts.map +0 -1
  259. package/dist/dialog.d.ts.map +0 -1
  260. package/dist/disclosure.d.ts.map +0 -1
  261. package/dist/drawer.d.ts.map +0 -1
  262. package/dist/editable.d.ts.map +0 -1
  263. package/dist/feed.d.ts.map +0 -1
  264. package/dist/form.d.ts.map +0 -1
  265. package/dist/grid.d.ts.map +0 -1
  266. package/dist/host-provider.d.ts.map +0 -1
  267. package/dist/index.d.ts.map +0 -1
  268. package/dist/internal/collection.d.ts.map +0 -1
  269. package/dist/internal/controlled-state.d.ts.map +0 -1
  270. package/dist/internal/date-picker.d.ts.map +0 -1
  271. package/dist/internal/form-control-inventory.d.ts.map +0 -1
  272. package/dist/internal/form-control.d.ts.map +0 -1
  273. package/dist/internal/native-field.d.ts.map +0 -1
  274. package/dist/internal/native-input.d.ts.map +0 -1
  275. package/dist/internal/part-contract.d.ts.map +0 -1
  276. package/dist/internal/popup.d.ts.map +0 -1
  277. package/dist/internal/presence.d.ts.map +0 -1
  278. package/dist/internal/tabs-context.d.ts.map +0 -1
  279. package/dist/listbox.d.ts.map +0 -1
  280. package/dist/menu-button.d.ts.map +0 -1
  281. package/dist/menu.d.ts.map +0 -1
  282. package/dist/menubar.d.ts.map +0 -1
  283. package/dist/month-picker.d.ts.map +0 -1
  284. package/dist/month-range-picker.d.ts.map +0 -1
  285. package/dist/multi-thumb-slider.d.ts.map +0 -1
  286. package/dist/navigation-menu.d.ts.map +0 -1
  287. package/dist/number-field.d.ts.map +0 -1
  288. package/dist/pagination.d.ts.map +0 -1
  289. package/dist/pin-input.d.ts.map +0 -1
  290. package/dist/popover.d.ts.map +0 -1
  291. package/dist/primitive.d.ts.map +0 -1
  292. package/dist/quantity-field.d.ts.map +0 -1
  293. package/dist/radio-group.d.ts.map +0 -1
  294. package/dist/range-calendar.d.ts.map +0 -1
  295. package/dist/rating.d.ts.map +0 -1
  296. package/dist/reorder.d.ts.map +0 -1
  297. package/dist/select.d.ts.map +0 -1
  298. package/dist/slider.d.ts.map +0 -1
  299. package/dist/spin-button.d.ts.map +0 -1
  300. package/dist/stepper.d.ts.map +0 -1
  301. package/dist/switch.d.ts.map +0 -1
  302. package/dist/tabs.d.ts.map +0 -1
  303. package/dist/tags-input.d.ts.map +0 -1
  304. package/dist/text.d.ts.map +0 -1
  305. package/dist/time-field.d.ts.map +0 -1
  306. package/dist/time-range-field.d.ts.map +0 -1
  307. package/dist/timer.d.ts.map +0 -1
  308. package/dist/toast.d.ts.map +0 -1
  309. package/dist/toggle-button.d.ts.map +0 -1
  310. package/dist/toggle-group.d.ts.map +0 -1
  311. package/dist/toolbar.d.ts.map +0 -1
  312. package/dist/tooltip.d.ts.map +0 -1
  313. package/dist/tree-grid.d.ts.map +0 -1
  314. package/dist/tree-view.d.ts.map +0 -1
  315. package/dist/virtual.d.ts.map +0 -1
  316. package/dist/virtual.js.map +0 -1
  317. package/dist/window-splitter.d.ts.map +0 -1
  318. package/dist/year-picker.d.ts.map +0 -1
  319. package/dist/year-range-picker.d.ts.map +0 -1
@@ -0,0 +1,240 @@
1
+ import { computed, defineComponent, h, inject, mergeProps, onBeforeUnmount, onMounted, provide, shallowRef, watch, } from 'vue';
2
+ import { createCascadeList, } from '@sectile/dom/cascade-list';
3
+ import { Primitive } from './primitive.js';
4
+ import { visuallyHiddenInputStyle } from './internal/native-input.js';
5
+ import { provideFormControlOwner } from './internal/form-control.js';
6
+ import { hiddenSelectSubmissionCapabilities, useCompositeFormControl, } from './internal/form-control.js';
7
+ import { useControlledStateInvariant } from './internal/controlled-state.js';
8
+ import { cascadeBranchItems, cascadeChoicePartProps, cascadeItemPath, createCascadeChoiceParts, initialCascadeColumns, } from './internal/cascade-choice.js';
9
+ const rootKey = Symbol('SectileCascadeListRoot');
10
+ const itemKey = Symbol('SectileCascadeListItem');
11
+ const partProps = cascadeChoicePartProps;
12
+ export const CascadeListRoot = defineComponent({
13
+ name: 'SectileCascadeListRoot',
14
+ inheritAttrs: false,
15
+ props: {
16
+ nodes: { type: Array, required: true },
17
+ modelValue: { type: String, default: undefined },
18
+ defaultValue: { type: String, default: null },
19
+ disabledItems: { type: Array, default: () => [] },
20
+ disabled: { type: Boolean, default: false },
21
+ readonly: { type: Boolean, default: false },
22
+ label: { type: String, default: undefined },
23
+ name: { type: String, default: undefined },
24
+ form: { type: String, default: undefined },
25
+ required: { type: Boolean, default: false },
26
+ textValue: { type: Function, default: undefined },
27
+ policies: { type: Object, default: undefined },
28
+ as: { type: [String, Object, Function], default: 'div' },
29
+ asChild: { type: Boolean, default: false },
30
+ },
31
+ emits: {
32
+ 'update:modelValue': (_value) => true,
33
+ highlight: (_value) => true,
34
+ },
35
+ slots: Object,
36
+ setup(props, { attrs, emit, slots }) {
37
+ const root = shallowRef(null);
38
+ const submission = shallowRef(null);
39
+ const connection = shallowRef();
40
+ const participation = useCompositeFormControl({
41
+ root,
42
+ focusTarget: root,
43
+ submissions: [{
44
+ element: submission,
45
+ capabilities: hiddenSelectSubmissionCapabilities,
46
+ }],
47
+ });
48
+ provideFormControlOwner();
49
+ const localValue = shallowRef(props.modelValue !== undefined ? props.modelValue : props.defaultValue);
50
+ const initialValuePath = cascadeItemPath(props.nodes, localValue.value);
51
+ const initialBranchPath = initialValuePath.slice(0, -1);
52
+ const highlighted = shallowRef(localValue.value ?? firstAvailableRoot(props.nodes, props.disabledItems));
53
+ const path = shallowRef(initialBranchPath);
54
+ const columns = shallowRef(initialCascadeColumns(props.nodes, initialBranchPath));
55
+ const valuePath = shallowRef(initialValuePath);
56
+ const valueControlled = useControlledStateInvariant('CascadeListRoot', 'modelValue', () => props.modelValue);
57
+ const state = computed(() => Object.freeze({
58
+ value: props.modelValue !== undefined ? props.modelValue : localValue.value,
59
+ valuePath: valuePath.value,
60
+ highlightedValue: highlighted.value,
61
+ path: path.value,
62
+ columns: columns.value,
63
+ disabled: props.disabled,
64
+ readonly: props.readonly,
65
+ }));
66
+ const refreshItems = () => {
67
+ if (root.value === null || connection.value === undefined)
68
+ return;
69
+ root.value.querySelectorAll('[data-sectile-cascade-list-id]').forEach((element) => {
70
+ const id = element.dataset['sectileCascadeListId'];
71
+ if (id !== undefined)
72
+ connection.value?.setItemAttributes(element, id, props.disabledItems.includes(id));
73
+ });
74
+ };
75
+ const refresh = () => {
76
+ const current = connection.value?.getSnapshot().state;
77
+ if (current === undefined)
78
+ return;
79
+ localValue.value = current.value;
80
+ highlighted.value = current.highlighted;
81
+ path.value = current.path;
82
+ columns.value = connection.value?.getColumns() ?? [];
83
+ valuePath.value = connection.value?.getValuePath() ?? [];
84
+ refreshItems();
85
+ };
86
+ const connect = () => {
87
+ connection.value?.disconnect();
88
+ if (root.value === null)
89
+ return;
90
+ const branches = cascadeBranchItems(props.nodes);
91
+ const leaves = new Set(props.nodes.filter((node) => !branches.has(node.id)).map((node) => node.id));
92
+ const requestedValue = valueControlled ? props.modelValue : localValue.value;
93
+ const value = requestedValue !== null && leaves.has(requestedValue) ? requestedValue : null;
94
+ const ids = new Set(props.nodes.map((node) => node.id));
95
+ const requestedHighlight = highlighted.value;
96
+ const defaultHighlightedValue = requestedHighlight !== null
97
+ && ids.has(requestedHighlight)
98
+ && !props.disabledItems.includes(requestedHighlight)
99
+ ? requestedHighlight
100
+ : value ?? firstAvailableRoot(props.nodes, props.disabledItems);
101
+ localValue.value = value;
102
+ if (valueControlled && requestedValue !== value)
103
+ emit('update:modelValue', value);
104
+ connection.value = createCascadeList({
105
+ root: root.value,
106
+ nodes: props.nodes,
107
+ disabledItems: props.disabledItems,
108
+ ...(props.policies === undefined ? {} : { policies: props.policies }),
109
+ ...(valueControlled ? { value } : { defaultValue: value }),
110
+ defaultHighlightedValue,
111
+ disabled: props.disabled,
112
+ readOnly: props.readonly,
113
+ ...(props.label === undefined ? {} : { label: props.label }),
114
+ onValueChange: (next) => {
115
+ localValue.value = next;
116
+ emit('update:modelValue', next);
117
+ },
118
+ onHighlightedValueChange: (next) => {
119
+ highlighted.value = next;
120
+ emit('highlight', next);
121
+ },
122
+ onUpdate: refresh,
123
+ });
124
+ refresh();
125
+ };
126
+ const branches = computed(() => cascadeBranchItems(props.nodes));
127
+ provide(rootKey, {
128
+ state,
129
+ label: computed(() => props.label),
130
+ textValue: computed(() => props.textValue ?? ((id) => id)),
131
+ disabledItems: computed(() => new Set(props.disabledItems)),
132
+ branchItems: branches,
133
+ registerColumn: (element, depth, label) => connection.value?.setColumnAttributes(element, depth === 0 ? null : state.value.path[depth - 1] ?? null, label),
134
+ registerItem: (element, id, disabled) => connection.value?.setItemAttributes(element, id, disabled),
135
+ });
136
+ onMounted(connect);
137
+ onBeforeUnmount(() => connection.value?.disconnect());
138
+ watch([
139
+ () => props.nodes,
140
+ () => props.disabledItems,
141
+ () => props.disabled,
142
+ () => props.readonly,
143
+ () => props.label,
144
+ () => props.policies,
145
+ ], connect);
146
+ watch(() => props.modelValue, () => {
147
+ if (connection.value === undefined || !valueControlled)
148
+ return;
149
+ const result = connection.value.syncControlledValues({ value: props.modelValue });
150
+ if (!result.ok)
151
+ throw new TypeError(result.error.message);
152
+ refresh();
153
+ });
154
+ return () => {
155
+ const visual = h(Primitive, mergeProps(attrs, {
156
+ as: props.as,
157
+ asChild: props.asChild,
158
+ elementRef: (node) => { root.value = node instanceof HTMLElement ? node : null; },
159
+ role: 'group',
160
+ tabindex: -1,
161
+ 'aria-label': props.label,
162
+ 'aria-disabled': props.disabled ? 'true' : undefined,
163
+ 'aria-readonly': props.readonly ? 'true' : undefined,
164
+ 'data-scope': 'cascade-list',
165
+ 'data-part': 'root',
166
+ 'data-disabled': props.disabled ? '' : undefined,
167
+ 'data-readonly': props.readonly ? '' : undefined,
168
+ }, participation.controlProps.value), { default: () => slots['default']?.(state.value) });
169
+ if (!participation.participating && props.name === undefined && props.form === undefined && !props.required)
170
+ return visual;
171
+ return [visual, h('select', {
172
+ ref: (element) => { submission.value = element instanceof HTMLSelectElement ? element : null; },
173
+ name: props.name,
174
+ form: props.form,
175
+ required: props.required,
176
+ disabled: props.disabled,
177
+ value: state.value.value ?? '',
178
+ tabindex: -1,
179
+ 'aria-hidden': 'true',
180
+ style: visuallyHiddenInputStyle,
181
+ }, [
182
+ h('option', { value: '', selected: state.value.value === null }),
183
+ ...props.nodes
184
+ .filter((node) => !branches.value.has(node.id))
185
+ .map((node) => h('option', {
186
+ value: node.id,
187
+ selected: state.value.value === node.id,
188
+ disabled: props.disabledItems.includes(node.id),
189
+ }, props.textValue?.(node.id) ?? node.id)),
190
+ ])];
191
+ };
192
+ },
193
+ });
194
+ export const CascadeListValue = defineComponent({
195
+ name: 'SectileCascadeListValue',
196
+ inheritAttrs: false,
197
+ props: {
198
+ placeholder: { type: String, default: '' },
199
+ separator: { type: String, default: ' / ' },
200
+ ...partProps,
201
+ },
202
+ slots: Object,
203
+ setup(props, { attrs, slots }) {
204
+ const root = useRoot('CascadeListValue');
205
+ return () => h(Primitive, mergeProps(attrs, {
206
+ as: props.as,
207
+ asChild: props.asChild,
208
+ 'data-scope': 'cascade-list',
209
+ 'data-part': 'value',
210
+ 'data-placeholder': root.state.value.value === null ? '' : undefined,
211
+ }), {
212
+ default: () => slots['default']?.(root.state.value)
213
+ ?? (root.state.value.value === null
214
+ ? props.placeholder
215
+ : root.state.value.valuePath.map(root.textValue.value).join(props.separator)),
216
+ });
217
+ },
218
+ });
219
+ const cascadeListParts = createCascadeChoiceParts({
220
+ scope: 'cascade-list',
221
+ componentName: 'CascadeList',
222
+ itemAttribute: 'data-sectile-cascade-list-id',
223
+ rootKey,
224
+ itemKey,
225
+ });
226
+ export const CascadeListColumn = cascadeListParts.Column;
227
+ export const CascadeListItem = cascadeListParts.Item;
228
+ export const CascadeListItemIndicator = cascadeListParts.ItemIndicator;
229
+ export const CascadeListItemChevron = cascadeListParts.ItemChevron;
230
+ function useRoot(part) {
231
+ const root = inject(rootKey);
232
+ if (root === undefined)
233
+ throw new TypeError(`${part} must be used inside CascadeListRoot.`);
234
+ return root;
235
+ }
236
+ function firstAvailableRoot(nodes, disabledItems) {
237
+ const disabled = new Set(disabledItems);
238
+ return nodes.find((node) => node.parentID === null && !disabled.has(node.id))?.id ?? null;
239
+ }
240
+ //# sourceMappingURL=cascade-list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cascade-list.js","sourceRoot":"","sources":["../src/cascade-list.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { type PropType, type SlotsType, type VNodeChild } from 'vue';
2
2
  import { type CascadeSelectItemDefinition, type CascadeSelectPolicies } from '@sectile/dom/cascade-select';
3
3
  import { type PrimitiveAs } from './primitive.js';
4
+ import { type CascadeChoiceColumnProps, type CascadeChoiceColumnSlotProps, type CascadeChoiceItemProps, type CascadeChoiceItemSlotProps, type CascadeChoicePartProps, type CascadeChoiceRootState } from './internal/cascade-choice.js';
4
5
  export interface CascadeSelectRootProps {
5
6
  readonly nodes: readonly CascadeSelectItemDefinition<string>[];
6
7
  readonly modelValue?: string | null;
@@ -20,45 +21,14 @@ export interface CascadeSelectRootProps {
20
21
  readonly asChild?: boolean;
21
22
  }
22
23
  export type CascadeSelectTextValueResolver = NonNullable<CascadeSelectRootProps['textValue']>;
23
- export interface CascadeSelectRootSlotProps {
24
- readonly value: string | null;
25
- readonly valuePath: readonly string[];
26
- readonly highlightedValue: string | null;
27
- readonly path: readonly string[];
28
- readonly columns: readonly (readonly string[])[];
24
+ export interface CascadeSelectRootSlotProps extends CascadeChoiceRootState {
29
25
  readonly open: boolean;
30
- readonly disabled: boolean;
31
- readonly: boolean;
32
- }
33
- export interface CascadeSelectColumnProps {
34
- readonly depth: number;
35
- readonly label?: string;
36
- readonly as?: PrimitiveAs;
37
- readonly asChild?: boolean;
38
- }
39
- export interface CascadeSelectColumnSlotProps {
40
- readonly depth: number;
41
- readonly items: readonly string[];
42
- readonly parentValue: string | null;
43
- }
44
- export interface CascadeSelectItemProps {
45
- readonly value: string;
46
- readonly disabled?: boolean;
47
- readonly as?: PrimitiveAs;
48
- readonly asChild?: boolean;
49
- }
50
- export interface CascadeSelectItemSlotProps {
51
- readonly value: string;
52
- readonly selected: boolean;
53
- readonly highlighted: boolean;
54
- readonly expanded: boolean;
55
- readonly branch: boolean;
56
- readonly disabled: boolean;
57
- }
58
- export interface CascadeSelectPartProps {
59
- readonly as?: PrimitiveAs;
60
- readonly asChild?: boolean;
61
26
  }
27
+ export type CascadeSelectColumnProps = CascadeChoiceColumnProps;
28
+ export type CascadeSelectColumnSlotProps = CascadeChoiceColumnSlotProps;
29
+ export type CascadeSelectItemProps = CascadeChoiceItemProps;
30
+ export type CascadeSelectItemSlotProps = CascadeChoiceItemSlotProps;
31
+ export type CascadeSelectPartProps = CascadeChoicePartProps;
62
32
  export declare const CascadeSelectRoot: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
63
33
  nodes: {
64
34
  type: PropType<readonly CascadeSelectItemDefinition<string>[]>;
@@ -348,7 +318,7 @@ export declare const CascadeSelectColumn: import("vue").DefineComponent<import("
348
318
  as: PrimitiveAs;
349
319
  asChild: boolean;
350
320
  }, SlotsType<{
351
- default: (props: CascadeSelectColumnSlotProps) => VNodeChild;
321
+ default: (props: CascadeChoiceColumnSlotProps) => VNodeChild;
352
322
  }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
353
323
  export declare const CascadeSelectItem: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
354
324
  value: {
@@ -389,7 +359,7 @@ export declare const CascadeSelectItem: import("vue").DefineComponent<import("vu
389
359
  as: PrimitiveAs;
390
360
  asChild: boolean;
391
361
  }, SlotsType<{
392
- default: (props: CascadeSelectItemSlotProps) => VNodeChild;
362
+ default: (props: CascadeChoiceItemSlotProps) => VNodeChild;
393
363
  }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
394
364
  export declare const CascadeSelectItemIndicator: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
395
365
  as: {
@@ -413,7 +383,7 @@ export declare const CascadeSelectItemIndicator: import("vue").DefineComponent<i
413
383
  as: PrimitiveAs;
414
384
  asChild: boolean;
415
385
  }, SlotsType<{
416
- default: (props: CascadeSelectItemSlotProps) => VNodeChild;
386
+ default: (props: CascadeChoiceItemSlotProps) => VNodeChild;
417
387
  }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
418
388
  export declare const CascadeSelectItemChevron: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
419
389
  as: {
@@ -437,6 +407,5 @@ export declare const CascadeSelectItemChevron: import("vue").DefineComponent<imp
437
407
  as: PrimitiveAs;
438
408
  asChild: boolean;
439
409
  }, SlotsType<{
440
- default: (props: CascadeSelectItemSlotProps) => VNodeChild;
410
+ default: (props: CascadeChoiceItemSlotProps) => VNodeChild;
441
411
  }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
442
- //# sourceMappingURL=cascade-select.d.ts.map
@@ -2,13 +2,13 @@ import { computed, defineComponent, h, inject, mergeProps, onBeforeUnmount, onMo
2
2
  import { createCascadeSelect, } from '@sectile/dom/cascade-select';
3
3
  import { Primitive } from './primitive.js';
4
4
  import { visuallyHiddenInputStyle } from './internal/native-input.js';
5
- import { provideFormControlOwner } from './form.js';
5
+ import { provideFormControlOwner } from './internal/form-control.js';
6
6
  import { hiddenSelectSubmissionCapabilities, useCompositeFormControl, } from './internal/form-control.js';
7
7
  import { useControlledStateInvariant } from './internal/controlled-state.js';
8
- import { collectionBranchIDs } from './internal/collection.js';
8
+ import { cascadeBranchItems, cascadeChoicePartProps, cascadeItemPath, createCascadeChoiceParts, initialCascadeColumns, } from './internal/cascade-choice.js';
9
9
  const rootKey = Symbol('SectileCascadeSelectRoot');
10
10
  const itemKey = Symbol('SectileCascadeSelectItem');
11
- const partProps = { as: { type: [String, Object, Function], default: 'span' }, asChild: { type: Boolean, default: false } };
11
+ const partProps = cascadeChoicePartProps;
12
12
  export const CascadeSelectRoot = defineComponent({
13
13
  name: 'SectileCascadeSelectRoot', inheritAttrs: false,
14
14
  props: {
@@ -36,12 +36,12 @@ export const CascadeSelectRoot = defineComponent({
36
36
  });
37
37
  provideFormControlOwner();
38
38
  const localValue = shallowRef(props.modelValue !== undefined ? props.modelValue : props.defaultValue);
39
- const initialValuePath = itemPath(props.nodes, localValue.value);
39
+ const initialValuePath = cascadeItemPath(props.nodes, localValue.value);
40
40
  const initialBranchPath = initialValuePath.slice(0, -1);
41
41
  const localOpen = shallowRef(props.open ?? props.defaultOpen);
42
42
  const highlighted = shallowRef(localValue.value);
43
43
  const path = shallowRef(initialBranchPath);
44
- const columns = shallowRef(initialColumns(props.nodes, initialBranchPath));
44
+ const columns = shallowRef(initialCascadeColumns(props.nodes, initialBranchPath));
45
45
  const valuePath = shallowRef(initialValuePath);
46
46
  const valueControlled = useControlledStateInvariant('CascadeSelectRoot', 'modelValue', () => props.modelValue);
47
47
  const openControlled = useControlledStateInvariant('CascadeSelectRoot', 'open', () => props.open);
@@ -55,7 +55,7 @@ export const CascadeSelectRoot = defineComponent({
55
55
  connection.value?.disconnect();
56
56
  if (root.value === null || trigger.value === null || popup.value === undefined)
57
57
  return;
58
- const branchIDs = new Set(collectionBranchIDs(props.nodes));
58
+ const branchIDs = cascadeBranchItems(props.nodes);
59
59
  const leafIDs = new Set(props.nodes.filter((node) => !branchIDs.has(node.id)).map((node) => node.id));
60
60
  const requestedValue = valueControlled ? props.modelValue : localValue.value;
61
61
  const value = requestedValue !== null && leafIDs.has(requestedValue) ? requestedValue : null;
@@ -65,8 +65,8 @@ export const CascadeSelectRoot = defineComponent({
65
65
  connection.value = createCascadeSelect({ root: root.value, trigger: trigger.value, popup: popup.value, nodes: props.nodes, disabledItems: props.disabledItems, ...(props.policies === undefined ? {} : { policies: props.policies }), ...(valueControlled ? { value } : { defaultValue: value }), ...(openControlled ? { open: props.open } : { defaultOpen: localOpen.value }), disabled: props.disabled, readOnly: props.readonly, ...(props.label === undefined ? {} : { label: props.label }), onValueChange: (next) => { localValue.value = next; emit('update:modelValue', next); }, onHighlightedValueChange: (next) => { highlighted.value = next; emit('highlight', next); }, onOpenChange: (next) => { localOpen.value = next; emit('update:open', next); }, onUpdate: refresh });
66
66
  refresh();
67
67
  };
68
- const branches = computed(() => new Set(collectionBranchIDs(props.nodes)));
69
- provide(rootKey, { state, label: computed(() => props.label), textValue: computed(() => props.textValue ?? ((id) => id)), disabledItems: computed(() => new Set(props.disabledItems)), branchItems: branches, registerTrigger: (element) => { trigger.value = element ?? null; }, registerPopup: (element) => { popup.value = element; }, registerColumn: (element, depth) => connection.value?.setColumnAttributes(element, depth === 0 ? null : state.value.path[depth - 1] ?? null), registerItem: (element, id, disabled) => connection.value?.setItemAttributes(element, id, disabled) });
68
+ const branches = computed(() => cascadeBranchItems(props.nodes));
69
+ provide(rootKey, { state, label: computed(() => props.label), textValue: computed(() => props.textValue ?? ((id) => id)), disabledItems: computed(() => new Set(props.disabledItems)), branchItems: branches, registerTrigger: (element) => { trigger.value = element ?? null; }, registerPopup: (element) => { popup.value = element; }, registerColumn: (element, depth, label) => connection.value?.setColumnAttributes(element, depth === 0 ? null : state.value.path[depth - 1] ?? null, label), registerItem: (element, id, disabled) => connection.value?.setItemAttributes(element, id, disabled) });
70
70
  onMounted(connect);
71
71
  onBeforeUnmount(() => connection.value?.disconnect());
72
72
  watch([() => props.nodes, () => props.disabledItems, () => props.disabled, () => props.readonly, () => props.label, () => props.policies], connect);
@@ -101,25 +101,17 @@ export const CascadeSelectRoot = defineComponent({
101
101
  export const CascadeSelectTrigger = defineComponent({ name: 'SectileCascadeSelectTrigger', inheritAttrs: false, props: { as: { type: [String, Object, Function], default: 'button' }, asChild: { type: Boolean, default: false } }, slots: Object, setup(props, { attrs, slots }) { const root = useRoot('CascadeSelectTrigger'); return () => h(Primitive, mergeProps(attrs, { as: props.as, asChild: props.asChild, elementRef: (node) => root.registerTrigger(node instanceof HTMLButtonElement ? node : undefined), type: props.as === 'button' ? 'button' : undefined, disabled: root.state.value.disabled, 'aria-haspopup': 'listbox', 'aria-expanded': String(root.state.value.open), 'data-scope': 'cascade-select', 'data-part': 'trigger', 'data-state': root.state.value.open ? 'open' : 'closed' }), { default: () => slots['default']?.(root.state.value) }); } });
102
102
  export const CascadeSelectValue = defineComponent({ name: 'SectileCascadeSelectValue', inheritAttrs: false, props: { placeholder: { type: String, default: '' }, separator: { type: String, default: ' / ' }, ...partProps }, slots: Object, setup(props, { attrs, slots }) { const root = useRoot('CascadeSelectValue'); return () => h(Primitive, mergeProps(attrs, { as: props.as, asChild: props.asChild, 'data-scope': 'cascade-select', 'data-part': 'value', 'data-placeholder': root.state.value.value === null ? '' : undefined }), { default: () => slots['default']?.(root.state.value) ?? (root.state.value.value === null ? props.placeholder : root.state.value.valuePath.map(root.textValue.value).join(props.separator)) }); } });
103
103
  export const CascadeSelectContent = defineComponent({ name: 'SectileCascadeSelectContent', inheritAttrs: false, props: { as: { type: [String, Object, Function], default: 'div' }, asChild: { type: Boolean, default: false } }, slots: Object, setup(props, { attrs, slots }) { const root = useRoot('CascadeSelectContent'); return () => h(Primitive, mergeProps(attrs, { as: props.as, asChild: props.asChild, elementRef: (node) => root.registerPopup(node instanceof HTMLElement ? node : undefined), role: 'group', hidden: !root.state.value.open, 'aria-label': root.label.value, 'data-scope': 'cascade-select', 'data-part': 'content', 'data-state': root.state.value.open ? 'open' : 'closed' }), { default: () => slots['default']?.(root.state.value) }); } });
104
- export const CascadeSelectColumn = defineComponent({ name: 'SectileCascadeSelectColumn', inheritAttrs: false, props: { depth: { type: Number, required: true }, label: { type: String, default: undefined }, as: { type: [String, Object, Function], default: 'div' }, asChild: { type: Boolean, default: false } }, slots: Object, setup(props, { attrs, slots }) { const root = useRoot('CascadeSelectColumn'); const state = computed(() => ({ depth: props.depth, items: root.state.value.columns[props.depth] ?? [], parentValue: props.depth === 0 ? null : root.state.value.path[props.depth - 1] ?? null })); return () => h(Primitive, mergeProps(attrs, { as: props.as, asChild: props.asChild, elementRef: (node) => { if (node instanceof HTMLElement)
105
- root.registerColumn(node, props.depth); }, role: 'listbox', 'aria-label': props.label, hidden: state.value.items.length === 0, 'data-scope': 'cascade-select', 'data-part': 'column', 'data-depth': String(props.depth) }), { default: () => slots['default']?.(state.value) }); } });
106
- export const CascadeSelectItem = defineComponent({ name: 'SectileCascadeSelectItem', inheritAttrs: false, props: { value: { type: String, required: true }, disabled: { type: Boolean, default: false }, as: { type: [String, Object, Function], default: 'div' }, asChild: { type: Boolean, default: false } }, slots: Object, setup(props, { attrs, slots }) { const root = useRoot('CascadeSelectItem'); const state = computed(() => ({ value: props.value, selected: root.state.value.value === props.value, highlighted: root.state.value.highlightedValue === props.value, expanded: root.state.value.path.includes(props.value), branch: root.branchItems.value.has(props.value), disabled: root.state.value.disabled || props.disabled || root.disabledItems.value.has(props.value) })); provide(itemKey, { state }); return () => h(Primitive, mergeProps(attrs, { as: props.as, asChild: props.asChild, elementRef: (node) => { if (node instanceof HTMLElement)
107
- root.registerItem(node, props.value, state.value.disabled); }, role: 'option', 'aria-selected': String(state.value.selected), 'aria-disabled': state.value.disabled ? 'true' : undefined, 'aria-haspopup': state.value.branch ? 'listbox' : undefined, 'data-sectile-cascade-select-id': props.value, 'data-scope': 'cascade-select', 'data-part': 'item', 'data-selected': state.value.selected ? '' : undefined, 'data-highlighted': state.value.highlighted ? '' : undefined, 'data-expanded': state.value.expanded ? '' : undefined }), { default: () => slots['default']?.(state.value) }); } });
108
- export const CascadeSelectItemIndicator = defineComponent({ name: 'SectileCascadeSelectItemIndicator', inheritAttrs: false, props: partProps, slots: Object, setup(props, { attrs, slots }) { const item = useItem('CascadeSelectItemIndicator'); return () => h(Primitive, mergeProps(attrs, { as: props.as, asChild: props.asChild, hidden: !item.state.value.selected, 'aria-hidden': 'true', 'data-scope': 'cascade-select', 'data-part': 'item-indicator' }), { default: () => slots['default']?.(item.state.value) }); } });
109
- export const CascadeSelectItemChevron = defineComponent({ name: 'SectileCascadeSelectItemChevron', inheritAttrs: false, props: partProps, slots: Object, setup(props, { attrs, slots }) { const item = useItem('CascadeSelectItemChevron'); return () => h(Primitive, mergeProps(attrs, { as: props.as, asChild: props.asChild, hidden: !item.state.value.branch, 'aria-hidden': 'true', 'data-scope': 'cascade-select', 'data-part': 'item-chevron' }), { default: () => slots['default']?.(item.state.value) }); } });
104
+ const cascadeSelectParts = createCascadeChoiceParts({
105
+ scope: 'cascade-select',
106
+ componentName: 'CascadeSelect',
107
+ itemAttribute: 'data-sectile-cascade-select-id',
108
+ rootKey,
109
+ itemKey,
110
+ });
111
+ export const CascadeSelectColumn = cascadeSelectParts.Column;
112
+ export const CascadeSelectItem = cascadeSelectParts.Item;
113
+ export const CascadeSelectItemIndicator = cascadeSelectParts.ItemIndicator;
114
+ export const CascadeSelectItemChevron = cascadeSelectParts.ItemChevron;
110
115
  function useRoot(part) { const root = inject(rootKey); if (root === undefined)
111
116
  throw new TypeError(`${part} must be used inside CascadeSelectRoot.`); return root; }
112
- function useItem(part) { const item = inject(itemKey); if (item === undefined)
113
- throw new TypeError(`${part} must be used inside CascadeSelectItem.`); return item; }
114
- function initialColumns(nodes, path = []) { const columns = [nodes.filter((node) => node.parentID === null).map((node) => node.id)]; for (const id of path) {
115
- const children = nodes.filter((node) => node.parentID === id).map((node) => node.id);
116
- if (children.length > 0)
117
- columns.push(children);
118
- } return columns; }
119
- function itemPath(nodes, value) { if (value === null)
120
- return []; const parents = new Map(nodes.map((node) => [node.id, node.parentID])); if (!parents.has(value))
121
- return []; const path = [value]; let current = parents.get(value) ?? null; while (current !== null) {
122
- path.push(current);
123
- current = parents.get(current) ?? null;
124
- } return path.reverse(); }
125
117
  //# sourceMappingURL=cascade-select.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cascade-select.js","sourceRoot":"","sources":["../src/cascade-select.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cascade-select.js","sourceRoot":"","sources":["../src/cascade-select.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { type PropType, type SlotsType, type VNodeChild } from 'vue';
2
2
  import { type PrimitiveAs } from './primitive.js';
3
3
  export interface CheckboxGroupRootProps {
4
+ readonly items: readonly string[];
4
5
  readonly modelValue?: readonly string[];
5
6
  readonly defaultValue?: readonly string[];
6
7
  readonly disabled?: boolean;
@@ -25,6 +26,10 @@ export interface CheckboxGroupItemProps {
25
26
  readonly asChild?: boolean;
26
27
  }
27
28
  export declare const CheckboxGroupRoot: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
29
+ items: {
30
+ type: PropType<readonly string[]>;
31
+ required: true;
32
+ };
28
33
  modelValue: {
29
34
  type: PropType<readonly string[]>;
30
35
  default: undefined;
@@ -68,6 +73,10 @@ export declare const CheckboxGroupRoot: import("vue").DefineComponent<import("vu
68
73
  }>, () => VNodeChild, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
69
74
  'update:modelValue': (_value: readonly string[]) => boolean;
70
75
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
76
+ items: {
77
+ type: PropType<readonly string[]>;
78
+ required: true;
79
+ };
71
80
  modelValue: {
72
81
  type: PropType<readonly string[]>;
73
82
  default: undefined;
@@ -203,4 +212,3 @@ export declare const CheckboxGroupIndicator: import("vue").DefineComponent<impor
203
212
  }, SlotsType<{
204
213
  default: (props: import("./checkbox.js").CheckboxSlotProps) => VNodeChild;
205
214
  }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
206
- //# sourceMappingURL=checkbox-group.d.ts.map