@sfxcode/nuxt-ui-formkit 1.2.5 → 1.2.7

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 (50) hide show
  1. package/README.md +4 -1
  2. package/dist/module.json +1 -1
  3. package/dist/runtime/components/FUAutoForm.d.vue.ts +3 -3
  4. package/dist/runtime/components/FUAutoForm.vue +6 -3
  5. package/dist/runtime/components/FUAutoForm.vue.d.ts +3 -3
  6. package/dist/runtime/components/FUAutoFormOverlay.d.vue.ts +1 -1
  7. package/dist/runtime/components/FUAutoFormOverlay.vue.d.ts +1 -1
  8. package/dist/runtime/components/inputs/FUCheckbox.d.vue.ts +1 -0
  9. package/dist/runtime/components/inputs/FUCheckbox.vue +1 -0
  10. package/dist/runtime/components/inputs/FUCheckbox.vue.d.ts +1 -0
  11. package/dist/runtime/components/inputs/FUCheckboxGroup.vue +1 -1
  12. package/dist/runtime/components/inputs/FUFileUpload.vue +1 -1
  13. package/dist/runtime/components/inputs/FUInputMenu.d.vue.ts +1 -0
  14. package/dist/runtime/components/inputs/FUInputMenu.vue +1 -0
  15. package/dist/runtime/components/inputs/FUInputMenu.vue.d.ts +1 -0
  16. package/dist/runtime/components/inputs/FUInputRating.d.vue.ts +30 -0
  17. package/dist/runtime/components/inputs/FUInputRating.vue +48 -0
  18. package/dist/runtime/components/inputs/FUInputRating.vue.d.ts +30 -0
  19. package/dist/runtime/components/inputs/FUListbox.d.vue.ts +1 -0
  20. package/dist/runtime/components/inputs/FUListbox.vue +3 -0
  21. package/dist/runtime/components/inputs/FUListbox.vue.d.ts +1 -0
  22. package/dist/runtime/components/inputs/FUPinInput.d.vue.ts +1 -0
  23. package/dist/runtime/components/inputs/FUPinInput.vue +1 -0
  24. package/dist/runtime/components/inputs/FUPinInput.vue.d.ts +1 -0
  25. package/dist/runtime/components/inputs/FURadioGroup.vue +1 -1
  26. package/dist/runtime/components/inputs/FUSelect.d.vue.ts +1 -0
  27. package/dist/runtime/components/inputs/FUSelect.vue +1 -0
  28. package/dist/runtime/components/inputs/FUSelect.vue.d.ts +1 -0
  29. package/dist/runtime/components/inputs/FUSelectMenu.d.vue.ts +1 -0
  30. package/dist/runtime/components/inputs/FUSelectMenu.vue +1 -0
  31. package/dist/runtime/components/inputs/FUSelectMenu.vue.d.ts +1 -0
  32. package/dist/runtime/components/inputs/FUSlider.vue +1 -1
  33. package/dist/runtime/components/inputs/FUSwitch.d.vue.ts +1 -0
  34. package/dist/runtime/components/inputs/FUSwitch.vue +1 -0
  35. package/dist/runtime/components/inputs/FUSwitch.vue.d.ts +1 -0
  36. package/dist/runtime/components/inputs/FUTree.d.vue.ts +36 -0
  37. package/dist/runtime/components/inputs/FUTree.vue +52 -0
  38. package/dist/runtime/components/inputs/FUTree.vue.d.ts +36 -0
  39. package/dist/runtime/composables/useFormKitAutoForm.d.ts +2 -0
  40. package/dist/runtime/composables/useFormKitAutoForm.js +86 -1
  41. package/dist/runtime/formkit/definitions/index.d.ts +2 -0
  42. package/dist/runtime/formkit/definitions/index.js +3 -1
  43. package/dist/runtime/formkit/definitions/index.mjs +3 -1
  44. package/dist/runtime/formkit/definitions/input.d.ts +2 -0
  45. package/dist/runtime/formkit/definitions/input.js +17 -7
  46. package/dist/runtime/formkit/definitions/input.mjs +17 -7
  47. package/dist/runtime/formkit/definitions/multiStep.js +8 -4
  48. package/dist/runtime/formkit/definitions/multiStep.mjs +8 -4
  49. package/dist/runtime/formkit/index.d.ts +9 -1
  50. package/package.json +8 -8
@@ -1,6 +1,7 @@
1
1
  import type { FormKitSchemaNode } from '@formkit/core';
2
2
  export type AutoFormOverrides = Record<string, Record<string, unknown> | boolean>;
3
3
  export declare function inferFormSchema(data: Record<string, unknown>, overrides?: AutoFormOverrides): FormKitSchemaNode[];
4
+ export declare function inferFormSchemaFromSamples(samples: Record<string, unknown>[], overrides?: AutoFormOverrides): FormKitSchemaNode[];
4
5
  export interface ValibotLikePipeEntry {
5
6
  kind: string;
6
7
  type: string;
@@ -33,6 +34,7 @@ export interface ZodLikeSchema {
33
34
  export declare function inferFormSchemaFromZod(schema: object, overrides?: AutoFormOverrides): FormKitSchemaNode[];
34
35
  export declare function useFormKitAutoForm(): {
35
36
  inferFormSchema: typeof inferFormSchema;
37
+ inferFormSchemaFromSamples: typeof inferFormSchemaFromSamples;
36
38
  inferFormSchemaFromValibot: typeof inferFormSchemaFromValibot;
37
39
  inferFormSchemaFromZod: typeof inferFormSchemaFromZod;
38
40
  };
@@ -127,6 +127,91 @@ function inferNodes(data, overrides, pathPrefix = "") {
127
127
  export function inferFormSchema(data, overrides) {
128
128
  return inferNodes(data, overrides);
129
129
  }
130
+ function isFilled(value) {
131
+ if (value === void 0 || value === null) {
132
+ return false;
133
+ }
134
+ if (typeof value === "string") {
135
+ return value !== "";
136
+ }
137
+ if (Array.isArray(value)) {
138
+ return value.length > 0;
139
+ }
140
+ return true;
141
+ }
142
+ function transposeSamples(samples) {
143
+ const columns = {};
144
+ for (const sample of samples) {
145
+ for (const key of Object.keys(sample)) {
146
+ columns[key] ??= samples.map((entry) => entry[key]);
147
+ }
148
+ }
149
+ return columns;
150
+ }
151
+ function inferSampleNode(name, values, overrides, path) {
152
+ const presentValues = values.filter((value) => value !== void 0 && value !== null);
153
+ if (presentValues.length === 0) {
154
+ return void 0;
155
+ }
156
+ const filledValues = presentValues.filter(isFilled);
157
+ const required = filledValues.length === values.length;
158
+ const representative = filledValues[0] ?? presentValues[0];
159
+ const label = humanizeKey(name);
160
+ const validation = required && typeof representative !== "boolean" ? "required" : void 0;
161
+ const base = validation ? { name, label, validation } : { name, label };
162
+ if (typeof representative === "boolean") {
163
+ return { $formkit: "nuxtUISwitch", ...base };
164
+ }
165
+ if (typeof representative === "number") {
166
+ return { $formkit: "nuxtUIInputNumber", ...base };
167
+ }
168
+ if (representative instanceof Date) {
169
+ return { $formkit: "nuxtUIInputDate", ...base, valueType: "date" };
170
+ }
171
+ if (isDateValue(representative)) {
172
+ return { $formkit: "nuxtUIInputDate", ...base, valueType: "calendar" };
173
+ }
174
+ if (typeof representative === "string") {
175
+ if (isIsoDateString(representative)) {
176
+ return { $formkit: "nuxtUIInputDate", ...base, valueType: "iso" };
177
+ }
178
+ if (representative.includes("\n")) {
179
+ return { $formkit: "nuxtUITextarea", ...base };
180
+ }
181
+ return { $formkit: "nuxtUIInput", ...base };
182
+ }
183
+ if (Array.isArray(representative)) {
184
+ const [first] = representative;
185
+ if (isPlainObject(first)) {
186
+ const rows = presentValues.filter(Array.isArray).flat().filter(isPlainObject);
187
+ return {
188
+ $formkit: "nuxtUIRepeater",
189
+ ...base,
190
+ newItem: blankItem(rows[0] ?? first),
191
+ children: inferSampleNodes(rows, overrides, path),
192
+ ...REPEATER_BUTTON_DEFAULTS
193
+ };
194
+ }
195
+ return { $formkit: "nuxtUIInputTags", ...base };
196
+ }
197
+ if (isPlainObject(representative)) {
198
+ return { $formkit: "group", name, children: inferSampleNodes(presentValues.filter(isPlainObject), overrides, path) };
199
+ }
200
+ return void 0;
201
+ }
202
+ function inferSampleNodes(samples, overrides, pathPrefix = "") {
203
+ return buildNodes(transposeSamples(samples), (key, values, path) => inferSampleNode(key, values, overrides, path), overrides, pathPrefix);
204
+ }
205
+ export function inferFormSchemaFromSamples(samples, overrides) {
206
+ if (!Array.isArray(samples)) {
207
+ return [];
208
+ }
209
+ const records = samples.filter(isPlainObject);
210
+ if (records.length === 0) {
211
+ return [];
212
+ }
213
+ return inferSampleNodes(records, overrides);
214
+ }
130
215
  const OPTIONAL_WRAPPER_TYPES = /* @__PURE__ */ new Set(["optional", "nullable", "nullish", "exact_optional"]);
131
216
  function unwrapValibot(entry) {
132
217
  let schema = entry;
@@ -345,5 +430,5 @@ export function inferFormSchemaFromZod(schema, overrides) {
345
430
  return inferZodNodes(root.shape, overrides);
346
431
  }
347
432
  export function useFormKitAutoForm() {
348
- return { inferFormSchema, inferFormSchemaFromValibot, inferFormSchemaFromZod };
433
+ return { inferFormSchema, inferFormSchemaFromSamples, inferFormSchemaFromValibot, inferFormSchemaFromZod };
349
434
  }
@@ -12,6 +12,7 @@ export declare const nuxtUIInputs: {
12
12
  nuxtUIInputDate: import("@formkit/core").FormKitTypeDefinition;
13
13
  nuxtUIInputMenu: import("@formkit/core").FormKitTypeDefinition;
14
14
  nuxtUIInputNumber: import("@formkit/core").FormKitTypeDefinition;
15
+ nuxtUIInputRating: import("@formkit/core").FormKitTypeDefinition;
15
16
  nuxtUIInputTags: import("@formkit/core").FormKitTypeDefinition;
16
17
  nuxtUIInputTime: import("@formkit/core").FormKitTypeDefinition;
17
18
  nuxtUIListbox: import("@formkit/core").FormKitTypeDefinition;
@@ -24,6 +25,7 @@ export declare const nuxtUIInputs: {
24
25
  nuxtUIStep: import("@formkit/core").FormKitTypeDefinition;
25
26
  nuxtUISwitch: import("@formkit/core").FormKitTypeDefinition;
26
27
  nuxtUITextarea: import("@formkit/core").FormKitTypeDefinition;
28
+ nuxtUITree: import("@formkit/core").FormKitTypeDefinition;
27
29
  nuxtUIRepeater: import("@formkit/core").FormKitTypeDefinition;
28
30
  };
29
31
  export declare const nuxtUIOutputs: {
@@ -1,4 +1,4 @@
1
- import { nuxtUICalendarDefinition, nuxtUICheckboxDefinition, nuxtUICheckboxGroupDefinition, nuxtUIColorPickerDefinition, nuxtUIEditorDefinition, nuxtUIFileUploadDefinition, nuxtUIInputDateDefinition, nuxtUIInputDefinition, nuxtUIInputMenuDefinition, nuxtUIInputNumberDefinition, nuxtUIInputTagsDefinition, nuxtUIInputTimeDefinition, nuxtUIListboxDefinition, nuxtUIPinInputDefinition, nuxtUIRadioGroupDefinition, nuxtUISelectDefinition, nuxtUISelectMenuDefinition, nuxtUISliderDefinition, nuxtUISwitchDefinition, nuxtUITextareaDefinition } from "./input.js";
1
+ import { nuxtUICalendarDefinition, nuxtUICheckboxDefinition, nuxtUICheckboxGroupDefinition, nuxtUIColorPickerDefinition, nuxtUIEditorDefinition, nuxtUIFileUploadDefinition, nuxtUIInputDateDefinition, nuxtUIInputDefinition, nuxtUIInputMenuDefinition, nuxtUIInputNumberDefinition, nuxtUIInputRatingDefinition, nuxtUIInputTagsDefinition, nuxtUIInputTimeDefinition, nuxtUIListboxDefinition, nuxtUIPinInputDefinition, nuxtUIRadioGroupDefinition, nuxtUISelectDefinition, nuxtUISelectMenuDefinition, nuxtUISliderDefinition, nuxtUISwitchDefinition, nuxtUITextareaDefinition, nuxtUITreeDefinition } from "./input.js";
2
2
  import { nuxtUIMultiStepDefinition, nuxtUIStepDefinition } from "./multiStep.js";
3
3
  import { nuxtUIOutputBooleanDefinition, nuxtUIOutputDateDefinition, nuxtUIOutputLinkDefinition, nuxtUIOutputListDefinition, nuxtUIOutputNumberDefinition, nuxtUIOutputTextDefinition } from "./output.js";
4
4
  import { nuxtUIRepeaterDefinition } from "./repeater.js";
@@ -16,6 +16,7 @@ export const nuxtUIInputs = {
16
16
  nuxtUIInputDate: nuxtUIInputDateDefinition,
17
17
  nuxtUIInputMenu: nuxtUIInputMenuDefinition,
18
18
  nuxtUIInputNumber: nuxtUIInputNumberDefinition,
19
+ nuxtUIInputRating: nuxtUIInputRatingDefinition,
19
20
  nuxtUIInputTags: nuxtUIInputTagsDefinition,
20
21
  nuxtUIInputTime: nuxtUIInputTimeDefinition,
21
22
  nuxtUIListbox: nuxtUIListboxDefinition,
@@ -28,6 +29,7 @@ export const nuxtUIInputs = {
28
29
  nuxtUIStep: nuxtUIStepDefinition,
29
30
  nuxtUISwitch: nuxtUISwitchDefinition,
30
31
  nuxtUITextarea: nuxtUITextareaDefinition,
32
+ nuxtUITree: nuxtUITreeDefinition,
31
33
  nuxtUIRepeater: nuxtUIRepeaterDefinition
32
34
  };
33
35
  export const nuxtUIOutputs = {
@@ -1,4 +1,4 @@
1
- import { nuxtUICalendarDefinition, nuxtUICheckboxDefinition, nuxtUICheckboxGroupDefinition, nuxtUIColorPickerDefinition, nuxtUIEditorDefinition, nuxtUIFileUploadDefinition, nuxtUIInputDateDefinition, nuxtUIInputDefinition, nuxtUIInputMenuDefinition, nuxtUIInputNumberDefinition, nuxtUIInputTagsDefinition, nuxtUIInputTimeDefinition, nuxtUIListboxDefinition, nuxtUIPinInputDefinition, nuxtUIRadioGroupDefinition, nuxtUISelectDefinition, nuxtUISelectMenuDefinition, nuxtUISliderDefinition, nuxtUISwitchDefinition, nuxtUITextareaDefinition } from "./input.mjs";
1
+ import { nuxtUICalendarDefinition, nuxtUICheckboxDefinition, nuxtUICheckboxGroupDefinition, nuxtUIColorPickerDefinition, nuxtUIEditorDefinition, nuxtUIFileUploadDefinition, nuxtUIInputDateDefinition, nuxtUIInputDefinition, nuxtUIInputMenuDefinition, nuxtUIInputNumberDefinition, nuxtUIInputRatingDefinition, nuxtUIInputTagsDefinition, nuxtUIInputTimeDefinition, nuxtUIListboxDefinition, nuxtUIPinInputDefinition, nuxtUIRadioGroupDefinition, nuxtUISelectDefinition, nuxtUISelectMenuDefinition, nuxtUISliderDefinition, nuxtUISwitchDefinition, nuxtUITextareaDefinition, nuxtUITreeDefinition } from "./input.mjs";
2
2
  import { nuxtUIMultiStepDefinition, nuxtUIStepDefinition } from "./multiStep.mjs";
3
3
  import { nuxtUIOutputBooleanDefinition, nuxtUIOutputDateDefinition, nuxtUIOutputLinkDefinition, nuxtUIOutputListDefinition, nuxtUIOutputNumberDefinition, nuxtUIOutputTextDefinition } from "./output.mjs";
4
4
  import { nuxtUIRepeaterDefinition } from "./repeater.mjs";
@@ -16,6 +16,7 @@ export const nuxtUIInputs = {
16
16
  nuxtUIInputDate: nuxtUIInputDateDefinition,
17
17
  nuxtUIInputMenu: nuxtUIInputMenuDefinition,
18
18
  nuxtUIInputNumber: nuxtUIInputNumberDefinition,
19
+ nuxtUIInputRating: nuxtUIInputRatingDefinition,
19
20
  nuxtUIInputTags: nuxtUIInputTagsDefinition,
20
21
  nuxtUIInputTime: nuxtUIInputTimeDefinition,
21
22
  nuxtUIListbox: nuxtUIListboxDefinition,
@@ -28,6 +29,7 @@ export const nuxtUIInputs = {
28
29
  nuxtUIStep: nuxtUIStepDefinition,
29
30
  nuxtUISwitch: nuxtUISwitchDefinition,
30
31
  nuxtUITextarea: nuxtUITextareaDefinition,
32
+ nuxtUITree: nuxtUITreeDefinition,
31
33
  nuxtUIRepeater: nuxtUIRepeaterDefinition
32
34
  };
33
35
  export const nuxtUIOutputs = {
@@ -9,6 +9,7 @@ export declare const nuxtUIInputDefinition: FormKitTypeDefinition;
9
9
  export declare const nuxtUIInputDateDefinition: FormKitTypeDefinition;
10
10
  export declare const nuxtUIInputMenuDefinition: FormKitTypeDefinition;
11
11
  export declare const nuxtUIInputNumberDefinition: FormKitTypeDefinition;
12
+ export declare const nuxtUIInputRatingDefinition: FormKitTypeDefinition;
12
13
  export declare const nuxtUIInputTagsDefinition: FormKitTypeDefinition;
13
14
  export declare const nuxtUIInputTimeDefinition: FormKitTypeDefinition;
14
15
  export declare const nuxtUIListboxDefinition: FormKitTypeDefinition;
@@ -19,3 +20,4 @@ export declare const nuxtUISelectMenuDefinition: FormKitTypeDefinition;
19
20
  export declare const nuxtUISliderDefinition: FormKitTypeDefinition;
20
21
  export declare const nuxtUISwitchDefinition: FormKitTypeDefinition;
21
22
  export declare const nuxtUITextareaDefinition: FormKitTypeDefinition;
23
+ export declare const nuxtUITreeDefinition: FormKitTypeDefinition;
@@ -9,6 +9,7 @@ import FUInput from "../../../runtime/components/inputs/FUInput.vue";
9
9
  import FUInputDate from "../../../runtime/components/inputs/FUInputDate.vue";
10
10
  import FUInputMenu from "../../../runtime/components/inputs/FUInputMenu.vue";
11
11
  import FUInputNumber from "../../../runtime/components/inputs/FUInputNumber.vue";
12
+ import FUInputRating from "../../../runtime/components/inputs/FUInputRating.vue";
12
13
  import FUInputTags from "../../../runtime/components/inputs/FUInputTags.vue";
13
14
  import FUInputTime from "../../../runtime/components/inputs/FUInputTime.vue";
14
15
  import FUListbox from "../../../runtime/components/inputs/FUListbox.vue";
@@ -19,12 +20,13 @@ import FUSelectMenu from "../../../runtime/components/inputs/FUSelectMenu.vue";
19
20
  import FUSlider from "../../../runtime/components/inputs/FUSlider.vue";
20
21
  import FUSwitch from "../../../runtime/components/inputs/FUSwitch.vue";
21
22
  import FUTextarea from "../../../runtime/components/inputs/FUTextarea.vue";
23
+ import FUTree from "../../../runtime/components/inputs/FUTree.vue";
22
24
  export const nuxtUICalendarDefinition = createInput(FUCalendar, {
23
25
  props: ["type", "range", "multiple", "color", "variant", "size", "weekNumbers", "monthControls", "yearControls", "viewControl", "defaultValue", "minValue", "maxValue", "isDateDisabled", "isDateUnavailable", "ui", "valueType", "timeZone"],
24
26
  family: "NuxtUIInput"
25
27
  });
26
28
  export const nuxtUICheckboxDefinition = createInput(FUCheckbox, {
27
- props: ["label", "description", "color", "variant", "size", "indicator", "icon", "indeterminateIcon", "trueValue", "falseValue", "autofocus", "ui"],
29
+ props: ["label", "description", "color", "variant", "size", "indicator", "icon", "indeterminateIcon", "trueValue", "falseValue", "autofocus", "name", "ui"],
28
30
  family: "NuxtUIInput"
29
31
  });
30
32
  export const nuxtUICheckboxGroupDefinition = createInput(FUCheckboxGroup, {
@@ -52,13 +54,17 @@ export const nuxtUIInputDateDefinition = createInput(FUInputDate, {
52
54
  family: "NuxtUIInput"
53
55
  });
54
56
  export const nuxtUIInputMenuDefinition = createInput(FUInputMenu, {
55
- props: ["options", "inputType", "placeholder", "color", "variant", "size", "autofocus", "autofocusDelay", "trailingIcon", "selectedIcon", "deleteIcon", "clear", "clearIcon", "arrow", "portal", "virtualize", "content", "mode", "by", "open", "valueKey", "labelKey", "descriptionKey", "multiple", "highlight", "fixed", "createItem", "filterFields", "ignoreFilter", "defaultOpen", "resetSearchTermOnBlur", "resetSearchTermOnSelect", "resetModelValueOnClear", "highlightOnHover", "openOnClick", "openOnFocus", "icon", "leading", "leadingIcon", "trailing", "loading", "loadingIcon", "list", "autocomplete", "searchTerm", "ui"],
57
+ props: ["options", "inputType", "placeholder", "color", "variant", "size", "autofocus", "autofocusDelay", "trailingIcon", "selectedIcon", "deleteIcon", "clear", "clearIcon", "arrow", "portal", "virtualize", "content", "mode", "by", "open", "valueKey", "labelKey", "descriptionKey", "multiple", "highlight", "fixed", "createItem", "filterFields", "ignoreFilter", "defaultOpen", "resetSearchTermOnBlur", "resetSearchTermOnSelect", "resetModelValueOnClear", "highlightOnHover", "openOnClick", "openOnFocus", "icon", "leading", "leadingIcon", "trailing", "loading", "loadingIcon", "list", "autocomplete", "searchTerm", "name", "ui"],
56
58
  family: "NuxtUIInput"
57
59
  });
58
60
  export const nuxtUIInputNumberDefinition = createInput(FUInputNumber, {
59
61
  props: ["placeholder", "color", "variant", "size", "highlight", "fixed", "orientation", "increment", "incrementIcon", "incrementDisabled", "decrement", "decrementIcon", "decrementDisabled", "autofocus", "autofocusDelay", "min", "max", "step", "stepSnapping", "formatOptions", "disableWheelChange", "invertWheelChange", "focusOnChange", "locale", "list", "autocomplete", "ui"],
60
62
  family: "NuxtUIInput"
61
63
  });
64
+ export const nuxtUIInputRatingDefinition = createInput(FUInputRating, {
65
+ props: ["color", "size", "orientation", "icon", "emptyIcon", "readonly", "clearable", "hoverable", "length", "step", "defaultValue", "name", "ui"],
66
+ family: "NuxtUIInput"
67
+ });
62
68
  export const nuxtUIInputTagsDefinition = createInput(FUInputTags, {
63
69
  props: ["placeholder", "maxLength", "color", "variant", "size", "autofocus", "autofocusDelay", "deleteIcon", "highlight", "fixed", "addOnPaste", "addOnTab", "addOnBlur", "duplicate", "delimiter", "max", "convertValue", "displayValue", "icon", "avatar", "leading", "leadingIcon", "trailing", "trailingIcon", "loading", "loadingIcon", "list", "autocomplete", "ui"],
64
70
  family: "NuxtUIInput"
@@ -68,11 +74,11 @@ export const nuxtUIInputTimeDefinition = createInput(FUInputTime, {
68
74
  family: "NuxtUIInput"
69
75
  });
70
76
  export const nuxtUIListboxDefinition = createInput(FUListbox, {
71
- props: ["options", "as", "color", "size", "by", "orientation", "selectionBehavior", "disabled", "defaultValue", "multiple", "valueKey", "labelKey", "descriptionKey", "loading", "loadingIcon", "filter", "filterFields", "ignoreFilter", "selectedIcon", "virtualize", "highlight", "highlightOnHover", "autofocus", "autofocusDelay", "searchTerm", "ui", "displayMode", "transferLeftHeaderText", "transferRightHeaderText", "transferAll", "transferHeaderClass", "transferSortIcons", "transferItemDraggable"],
77
+ props: ["options", "as", "color", "size", "by", "orientation", "selectionBehavior", "disabled", "defaultValue", "multiple", "valueKey", "labelKey", "descriptionKey", "loading", "loadingIcon", "filter", "filterFields", "ignoreFilter", "selectedIcon", "virtualize", "highlight", "highlightOnHover", "autofocus", "autofocusDelay", "searchTerm", "name", "ui", "displayMode", "transferLeftHeaderText", "transferRightHeaderText", "transferAll", "transferHeaderClass", "transferSortIcons", "transferItemDraggable"],
72
78
  family: "NuxtUIInput"
73
79
  });
74
80
  export const nuxtUIPinInputDefinition = createInput(FUPinInput, {
75
- props: ["color", "variant", "size", "length", "autofocus", "autofocusDelay", "highlight", "fixed", "defaultValue", "mask", "otp", "separator", "type", "placeholder", "ui"],
81
+ props: ["color", "variant", "size", "length", "autofocus", "autofocusDelay", "highlight", "fixed", "defaultValue", "mask", "otp", "separator", "type", "placeholder", "name", "ui"],
76
82
  family: "NuxtUIInput"
77
83
  });
78
84
  export const nuxtUIRadioGroupDefinition = createInput(FURadioGroup, {
@@ -80,11 +86,11 @@ export const nuxtUIRadioGroupDefinition = createInput(FURadioGroup, {
80
86
  family: "NuxtUIInput"
81
87
  });
82
88
  export const nuxtUISelectDefinition = createInput(FUSelect, {
83
- props: ["options", "placeholder", "color", "variant", "size", "selectedIcon", "arrow", "portal", "content", "valueKey", "labelKey", "descriptionKey", "defaultValue", "multiple", "highlight", "fixed", "autofocus", "autofocusDelay", "open", "defaultOpen", "autocomplete", "icon", "avatar", "leading", "leadingIcon", "trailing", "trailingIcon", "loading", "loadingIcon", "ui"],
89
+ props: ["options", "placeholder", "color", "variant", "size", "selectedIcon", "arrow", "portal", "content", "valueKey", "labelKey", "descriptionKey", "defaultValue", "multiple", "highlight", "fixed", "autofocus", "autofocusDelay", "open", "defaultOpen", "autocomplete", "icon", "avatar", "leading", "leadingIcon", "trailing", "trailingIcon", "loading", "loadingIcon", "name", "ui"],
84
90
  family: "NuxtUIInput"
85
91
  });
86
92
  export const nuxtUISelectMenuDefinition = createInput(FUSelectMenu, {
87
- props: ["options", "placeholder", "searchInput", "color", "variant", "size", "icon", "avatar", "leading", "leadingIcon", "trailing", "trailingIcon", "loading", "loadingIcon", "selectedIcon", "clear", "clearIcon", "arrow", "portal", "virtualize", "content", "by", "valueKey", "labelKey", "descriptionKey", "defaultValue", "multiple", "highlight", "fixed", "createItem", "filterFields", "ignoreFilter", "autofocus", "autofocusDelay", "open", "defaultOpen", "resetSearchTermOnBlur", "resetSearchTermOnSelect", "resetModelValueOnClear", "highlightOnHover", "searchTerm", "ui"],
93
+ props: ["options", "placeholder", "searchInput", "color", "variant", "size", "icon", "avatar", "leading", "leadingIcon", "trailing", "trailingIcon", "loading", "loadingIcon", "selectedIcon", "clear", "clearIcon", "arrow", "portal", "virtualize", "content", "by", "valueKey", "labelKey", "descriptionKey", "defaultValue", "multiple", "highlight", "fixed", "createItem", "filterFields", "ignoreFilter", "autofocus", "autofocusDelay", "open", "defaultOpen", "resetSearchTermOnBlur", "resetSearchTermOnSelect", "resetModelValueOnClear", "highlightOnHover", "searchTerm", "name", "ui"],
88
94
  family: "NuxtUIInput"
89
95
  });
90
96
  export const nuxtUISliderDefinition = createInput(FUSlider, {
@@ -92,10 +98,14 @@ export const nuxtUISliderDefinition = createInput(FUSlider, {
92
98
  family: "NuxtUIInput"
93
99
  });
94
100
  export const nuxtUISwitchDefinition = createInput(FUSwitch, {
95
- props: ["color", "size", "loading", "loadingIcon", "checkedIcon", "uncheckedIcon", "label", "description", "defaultValue", "trueValue", "falseValue", "autofocus", "ui"],
101
+ props: ["color", "size", "loading", "loadingIcon", "checkedIcon", "uncheckedIcon", "label", "description", "defaultValue", "trueValue", "falseValue", "autofocus", "name", "ui"],
96
102
  family: "NuxtUIInput"
97
103
  });
98
104
  export const nuxtUITextareaDefinition = createInput(FUTextarea, {
99
105
  props: ["color", "size", "variant", "placeholder", "autofocus", "autofocusDelay", "autoresize", "autoresizeDelay", "rows", "maxrows", "highlight", "fixed", "icon", "avatar", "leading", "leadingIcon", "trailing", "trailingIcon", "loading", "loadingIcon", "cols", "dirname", "maxlength", "minlength", "wrap", "ui"],
100
106
  family: "NuxtUIInput"
101
107
  });
108
+ export const nuxtUITreeDefinition = createInput(FUTree, {
109
+ props: ["color", "size", "disabled", "multiple", "nested", "virtualize", "labelKey", "trailingIcon", "expandedIcon", "collapsedIcon", "expanded", "defaultExpanded", "selectionBehavior", "propagateSelect", "bubbleSelect", "ui", "items", "options"],
110
+ family: "NuxtUIInput"
111
+ });
@@ -9,6 +9,7 @@ import FUInput from "../../../runtime/components/inputs/FUInput.vue";
9
9
  import FUInputDate from "../../../runtime/components/inputs/FUInputDate.vue";
10
10
  import FUInputMenu from "../../../runtime/components/inputs/FUInputMenu.vue";
11
11
  import FUInputNumber from "../../../runtime/components/inputs/FUInputNumber.vue";
12
+ import FUInputRating from "../../../runtime/components/inputs/FUInputRating.vue";
12
13
  import FUInputTags from "../../../runtime/components/inputs/FUInputTags.vue";
13
14
  import FUInputTime from "../../../runtime/components/inputs/FUInputTime.vue";
14
15
  import FUListbox from "../../../runtime/components/inputs/FUListbox.vue";
@@ -19,12 +20,13 @@ import FUSelectMenu from "../../../runtime/components/inputs/FUSelectMenu.vue";
19
20
  import FUSlider from "../../../runtime/components/inputs/FUSlider.vue";
20
21
  import FUSwitch from "../../../runtime/components/inputs/FUSwitch.vue";
21
22
  import FUTextarea from "../../../runtime/components/inputs/FUTextarea.vue";
23
+ import FUTree from "../../../runtime/components/inputs/FUTree.vue";
22
24
  export const nuxtUICalendarDefinition = createInput(FUCalendar, {
23
25
  props: ["type", "range", "multiple", "color", "variant", "size", "weekNumbers", "monthControls", "yearControls", "viewControl", "defaultValue", "minValue", "maxValue", "isDateDisabled", "isDateUnavailable", "ui", "valueType", "timeZone"],
24
26
  family: "NuxtUIInput"
25
27
  });
26
28
  export const nuxtUICheckboxDefinition = createInput(FUCheckbox, {
27
- props: ["label", "description", "color", "variant", "size", "indicator", "icon", "indeterminateIcon", "trueValue", "falseValue", "autofocus", "ui"],
29
+ props: ["label", "description", "color", "variant", "size", "indicator", "icon", "indeterminateIcon", "trueValue", "falseValue", "autofocus", "name", "ui"],
28
30
  family: "NuxtUIInput"
29
31
  });
30
32
  export const nuxtUICheckboxGroupDefinition = createInput(FUCheckboxGroup, {
@@ -52,13 +54,17 @@ export const nuxtUIInputDateDefinition = createInput(FUInputDate, {
52
54
  family: "NuxtUIInput"
53
55
  });
54
56
  export const nuxtUIInputMenuDefinition = createInput(FUInputMenu, {
55
- props: ["options", "inputType", "placeholder", "color", "variant", "size", "autofocus", "autofocusDelay", "trailingIcon", "selectedIcon", "deleteIcon", "clear", "clearIcon", "arrow", "portal", "virtualize", "content", "mode", "by", "open", "valueKey", "labelKey", "descriptionKey", "multiple", "highlight", "fixed", "createItem", "filterFields", "ignoreFilter", "defaultOpen", "resetSearchTermOnBlur", "resetSearchTermOnSelect", "resetModelValueOnClear", "highlightOnHover", "openOnClick", "openOnFocus", "icon", "leading", "leadingIcon", "trailing", "loading", "loadingIcon", "list", "autocomplete", "searchTerm", "ui"],
57
+ props: ["options", "inputType", "placeholder", "color", "variant", "size", "autofocus", "autofocusDelay", "trailingIcon", "selectedIcon", "deleteIcon", "clear", "clearIcon", "arrow", "portal", "virtualize", "content", "mode", "by", "open", "valueKey", "labelKey", "descriptionKey", "multiple", "highlight", "fixed", "createItem", "filterFields", "ignoreFilter", "defaultOpen", "resetSearchTermOnBlur", "resetSearchTermOnSelect", "resetModelValueOnClear", "highlightOnHover", "openOnClick", "openOnFocus", "icon", "leading", "leadingIcon", "trailing", "loading", "loadingIcon", "list", "autocomplete", "searchTerm", "name", "ui"],
56
58
  family: "NuxtUIInput"
57
59
  });
58
60
  export const nuxtUIInputNumberDefinition = createInput(FUInputNumber, {
59
61
  props: ["placeholder", "color", "variant", "size", "highlight", "fixed", "orientation", "increment", "incrementIcon", "incrementDisabled", "decrement", "decrementIcon", "decrementDisabled", "autofocus", "autofocusDelay", "min", "max", "step", "stepSnapping", "formatOptions", "disableWheelChange", "invertWheelChange", "focusOnChange", "locale", "list", "autocomplete", "ui"],
60
62
  family: "NuxtUIInput"
61
63
  });
64
+ export const nuxtUIInputRatingDefinition = createInput(FUInputRating, {
65
+ props: ["color", "size", "orientation", "icon", "emptyIcon", "readonly", "clearable", "hoverable", "length", "step", "defaultValue", "name", "ui"],
66
+ family: "NuxtUIInput"
67
+ });
62
68
  export const nuxtUIInputTagsDefinition = createInput(FUInputTags, {
63
69
  props: ["placeholder", "maxLength", "color", "variant", "size", "autofocus", "autofocusDelay", "deleteIcon", "highlight", "fixed", "addOnPaste", "addOnTab", "addOnBlur", "duplicate", "delimiter", "max", "convertValue", "displayValue", "icon", "avatar", "leading", "leadingIcon", "trailing", "trailingIcon", "loading", "loadingIcon", "list", "autocomplete", "ui"],
64
70
  family: "NuxtUIInput"
@@ -68,11 +74,11 @@ export const nuxtUIInputTimeDefinition = createInput(FUInputTime, {
68
74
  family: "NuxtUIInput"
69
75
  });
70
76
  export const nuxtUIListboxDefinition = createInput(FUListbox, {
71
- props: ["options", "as", "color", "size", "by", "orientation", "selectionBehavior", "disabled", "defaultValue", "multiple", "valueKey", "labelKey", "descriptionKey", "loading", "loadingIcon", "filter", "filterFields", "ignoreFilter", "selectedIcon", "virtualize", "highlight", "highlightOnHover", "autofocus", "autofocusDelay", "searchTerm", "ui", "displayMode", "transferLeftHeaderText", "transferRightHeaderText", "transferAll", "transferHeaderClass", "transferSortIcons", "transferItemDraggable"],
77
+ props: ["options", "as", "color", "size", "by", "orientation", "selectionBehavior", "disabled", "defaultValue", "multiple", "valueKey", "labelKey", "descriptionKey", "loading", "loadingIcon", "filter", "filterFields", "ignoreFilter", "selectedIcon", "virtualize", "highlight", "highlightOnHover", "autofocus", "autofocusDelay", "searchTerm", "name", "ui", "displayMode", "transferLeftHeaderText", "transferRightHeaderText", "transferAll", "transferHeaderClass", "transferSortIcons", "transferItemDraggable"],
72
78
  family: "NuxtUIInput"
73
79
  });
74
80
  export const nuxtUIPinInputDefinition = createInput(FUPinInput, {
75
- props: ["color", "variant", "size", "length", "autofocus", "autofocusDelay", "highlight", "fixed", "defaultValue", "mask", "otp", "separator", "type", "placeholder", "ui"],
81
+ props: ["color", "variant", "size", "length", "autofocus", "autofocusDelay", "highlight", "fixed", "defaultValue", "mask", "otp", "separator", "type", "placeholder", "name", "ui"],
76
82
  family: "NuxtUIInput"
77
83
  });
78
84
  export const nuxtUIRadioGroupDefinition = createInput(FURadioGroup, {
@@ -80,11 +86,11 @@ export const nuxtUIRadioGroupDefinition = createInput(FURadioGroup, {
80
86
  family: "NuxtUIInput"
81
87
  });
82
88
  export const nuxtUISelectDefinition = createInput(FUSelect, {
83
- props: ["options", "placeholder", "color", "variant", "size", "selectedIcon", "arrow", "portal", "content", "valueKey", "labelKey", "descriptionKey", "defaultValue", "multiple", "highlight", "fixed", "autofocus", "autofocusDelay", "open", "defaultOpen", "autocomplete", "icon", "avatar", "leading", "leadingIcon", "trailing", "trailingIcon", "loading", "loadingIcon", "ui"],
89
+ props: ["options", "placeholder", "color", "variant", "size", "selectedIcon", "arrow", "portal", "content", "valueKey", "labelKey", "descriptionKey", "defaultValue", "multiple", "highlight", "fixed", "autofocus", "autofocusDelay", "open", "defaultOpen", "autocomplete", "icon", "avatar", "leading", "leadingIcon", "trailing", "trailingIcon", "loading", "loadingIcon", "name", "ui"],
84
90
  family: "NuxtUIInput"
85
91
  });
86
92
  export const nuxtUISelectMenuDefinition = createInput(FUSelectMenu, {
87
- props: ["options", "placeholder", "searchInput", "color", "variant", "size", "icon", "avatar", "leading", "leadingIcon", "trailing", "trailingIcon", "loading", "loadingIcon", "selectedIcon", "clear", "clearIcon", "arrow", "portal", "virtualize", "content", "by", "valueKey", "labelKey", "descriptionKey", "defaultValue", "multiple", "highlight", "fixed", "createItem", "filterFields", "ignoreFilter", "autofocus", "autofocusDelay", "open", "defaultOpen", "resetSearchTermOnBlur", "resetSearchTermOnSelect", "resetModelValueOnClear", "highlightOnHover", "searchTerm", "ui"],
93
+ props: ["options", "placeholder", "searchInput", "color", "variant", "size", "icon", "avatar", "leading", "leadingIcon", "trailing", "trailingIcon", "loading", "loadingIcon", "selectedIcon", "clear", "clearIcon", "arrow", "portal", "virtualize", "content", "by", "valueKey", "labelKey", "descriptionKey", "defaultValue", "multiple", "highlight", "fixed", "createItem", "filterFields", "ignoreFilter", "autofocus", "autofocusDelay", "open", "defaultOpen", "resetSearchTermOnBlur", "resetSearchTermOnSelect", "resetModelValueOnClear", "highlightOnHover", "searchTerm", "name", "ui"],
88
94
  family: "NuxtUIInput"
89
95
  });
90
96
  export const nuxtUISliderDefinition = createInput(FUSlider, {
@@ -92,10 +98,14 @@ export const nuxtUISliderDefinition = createInput(FUSlider, {
92
98
  family: "NuxtUIInput"
93
99
  });
94
100
  export const nuxtUISwitchDefinition = createInput(FUSwitch, {
95
- props: ["color", "size", "loading", "loadingIcon", "checkedIcon", "uncheckedIcon", "label", "description", "defaultValue", "trueValue", "falseValue", "autofocus", "ui"],
101
+ props: ["color", "size", "loading", "loadingIcon", "checkedIcon", "uncheckedIcon", "label", "description", "defaultValue", "trueValue", "falseValue", "autofocus", "name", "ui"],
96
102
  family: "NuxtUIInput"
97
103
  });
98
104
  export const nuxtUITextareaDefinition = createInput(FUTextarea, {
99
105
  props: ["color", "size", "variant", "placeholder", "autofocus", "autofocusDelay", "autoresize", "autoresizeDelay", "rows", "maxrows", "highlight", "fixed", "icon", "avatar", "leading", "leadingIcon", "trailing", "trailingIcon", "loading", "loadingIcon", "cols", "dirname", "maxlength", "minlength", "wrap", "ui"],
100
106
  family: "NuxtUIInput"
101
107
  });
108
+ export const nuxtUITreeDefinition = createInput(FUTree, {
109
+ props: ["color", "size", "disabled", "multiple", "nested", "virtualize", "labelKey", "trailingIcon", "expandedIcon", "collapsedIcon", "expanded", "defaultExpanded", "selectionBehavior", "propagateSelect", "bubbleSelect", "ui", "items", "options"],
110
+ family: "NuxtUIInput"
111
+ });
@@ -1,4 +1,4 @@
1
- import { disablesChildren } from "@formkit/inputs";
1
+ import { disablesChildren, localize } from "@formkit/inputs";
2
2
  import { createInput } from "@formkit/vue";
3
3
  import { useFormKitMultiStep } from "../../composables/useFormKitMultiStep.js";
4
4
  import { useFormKitSchema } from "../../composables/useFormKitSchema.js";
@@ -14,14 +14,14 @@ export const nuxtUIStepDefinition = createInput(
14
14
  addElement("div", "$slots.default", { class: "formkit-step-inner" }),
15
15
  addElement("div", [
16
16
  addStepActionButton(
17
- { if: "$previousLabel", then: "$previousLabel", else: "Previous" },
17
+ { if: "$previousLabel", then: "$previousLabel", else: "$ui.prev.value" },
18
18
  "$handlers.previous",
19
19
  "$previousAttrs",
20
20
  "$isFirstStep === false",
21
21
  "outline"
22
22
  ),
23
23
  addStepActionButton(
24
- { if: "$nextLabel", then: "$nextLabel", else: "Next" },
24
+ { if: "$nextLabel", then: "$nextLabel", else: "$ui.next.value" },
25
25
  "$handlers.next",
26
26
  "$nextAttrs",
27
27
  "$isLastStep === false || $stepIndex === 0",
@@ -42,7 +42,11 @@ export const nuxtUIStepDefinition = createInput(
42
42
  forceTypeProp: "step",
43
43
  family: "NuxtUIInput",
44
44
  props: ["beforeStepChange", "nextAttrs", "nextLabel", "previousAttrs", "previousLabel", "validStepIcon", "ui", "stepActionsClass"],
45
- features: [disablesChildren, addStepHandler]
45
+ // `localize('next')`/`localize('prev')` seed the `node.store` "ui" messages
46
+ // that `$ui.next.value`/`$ui.prev.value` (in the schema above) read - without
47
+ // them the schema expression resolves to nothing. Matches `@formkit/addons`'
48
+ // own `step` input definition, which includes the same two features.
49
+ features: [disablesChildren, addStepHandler, localize("next"), localize("prev")]
46
50
  },
47
51
  {
48
52
  // `createInput()` always wraps the given schema in FormKit's standard
@@ -1,4 +1,4 @@
1
- import { disablesChildren } from "@formkit/inputs";
1
+ import { disablesChildren, localize } from "@formkit/inputs";
2
2
  import { createInput } from "@formkit/vue";
3
3
  import { useFormKitMultiStep } from "../../composables/useFormKitMultiStep";
4
4
  import { useFormKitSchema } from "../../composables/useFormKitSchema";
@@ -14,14 +14,14 @@ export const nuxtUIStepDefinition = createInput(
14
14
  addElement("div", "$slots.default", { class: "formkit-step-inner" }),
15
15
  addElement("div", [
16
16
  addStepActionButton(
17
- { if: "$previousLabel", then: "$previousLabel", else: "Previous" },
17
+ { if: "$previousLabel", then: "$previousLabel", else: "$ui.prev.value" },
18
18
  "$handlers.previous",
19
19
  "$previousAttrs",
20
20
  "$isFirstStep === false",
21
21
  "outline"
22
22
  ),
23
23
  addStepActionButton(
24
- { if: "$nextLabel", then: "$nextLabel", else: "Next" },
24
+ { if: "$nextLabel", then: "$nextLabel", else: "$ui.next.value" },
25
25
  "$handlers.next",
26
26
  "$nextAttrs",
27
27
  "$isLastStep === false || $stepIndex === 0",
@@ -42,7 +42,11 @@ export const nuxtUIStepDefinition = createInput(
42
42
  forceTypeProp: "step",
43
43
  family: "NuxtUIInput",
44
44
  props: ["beforeStepChange", "nextAttrs", "nextLabel", "previousAttrs", "previousLabel", "validStepIcon", "ui", "stepActionsClass"],
45
- features: [disablesChildren, addStepHandler]
45
+ // `localize('next')`/`localize('prev')` seed the `node.store` "ui" messages
46
+ // that `$ui.next.value`/`$ui.prev.value` (in the schema above) read - without
47
+ // them the schema expression resolves to nothing. Matches `@formkit/addons`'
48
+ // own `step` input definition, which includes the same two features.
49
+ features: [disablesChildren, addStepHandler, localize("next"), localize("prev")]
46
50
  },
47
51
  {
48
52
  // `createInput()` always wraps the given schema in FormKit's standard
@@ -1,6 +1,6 @@
1
1
  import type { FormKitMultiStepSlots, FormKitStepSlots } from '@formkit/addons';
2
2
  import type { FormKitBaseSlots, FormKitInputs } from '@formkit/inputs';
3
- import type { CalendarSlots, CheckboxSlots, CheckboxGroupSlots, EditorSlots, FileUploadSlots, RadioGroupSlots, InputSlots, TextareaSlots, SelectSlots, SelectMenuSlots, InputDateSlots, InputMenuSlots, InputNumberSlots, InputTagsSlots, InputTimeSlots, ListboxSlots, PinInputSlots, SwitchSlots } from '@nuxt/ui';
3
+ import type { CalendarSlots, CheckboxSlots, CheckboxGroupSlots, EditorSlots, FileUploadSlots, RadioGroupSlots, InputSlots, TextareaSlots, SelectSlots, SelectMenuSlots, InputDateSlots, InputMenuSlots, InputNumberSlots, InputRatingSlots, InputTagsSlots, InputTimeSlots, ListboxSlots, PinInputSlots, SwitchSlots, TreeSlots } from '@nuxt/ui';
4
4
  export * from './createNuxtUiFormkitConfig.js';
5
5
  export * from './definitions/index.js';
6
6
  export * from './plugins/index.js';
@@ -40,6 +40,9 @@ declare module '@formkit/inputs' {
40
40
  nuxtUIInputNumber: {
41
41
  type: 'nuxtUIInputNumber';
42
42
  };
43
+ nuxtUIInputRating: {
44
+ type: 'nuxtUIInputRating';
45
+ };
43
46
  nuxtUIInputTags: {
44
47
  type: 'nuxtUIInputTags';
45
48
  };
@@ -79,6 +82,9 @@ declare module '@formkit/inputs' {
79
82
  nuxtUITextarea: {
80
83
  type: 'nuxtUITextarea';
81
84
  };
85
+ nuxtUITree: {
86
+ type: 'nuxtUITree';
87
+ };
82
88
  nuxtUIOutputText: {
83
89
  type: 'nuxtUIOutputText';
84
90
  };
@@ -108,6 +114,7 @@ declare module '@formkit/inputs' {
108
114
  nuxtUIInputDate: MergeSlots<FormKitBaseSlots<Props>, InputDateSlots>;
109
115
  nuxtUIInputMenu: MergeSlots<FormKitBaseSlots<Props>, InputMenuSlots>;
110
116
  nuxtUIInputNumber: MergeSlots<FormKitBaseSlots<Props>, InputNumberSlots>;
117
+ nuxtUIInputRating: MergeSlots<FormKitBaseSlots<Props>, InputRatingSlots>;
111
118
  nuxtUIInputTags: MergeSlots<FormKitBaseSlots<Props>, InputTagsSlots>;
112
119
  nuxtUIInputTime: MergeSlots<FormKitBaseSlots<Props>, InputTimeSlots>;
113
120
  nuxtUIListbox: MergeSlots<FormKitBaseSlots<Props>, ListboxSlots>;
@@ -120,5 +127,6 @@ declare module '@formkit/inputs' {
120
127
  nuxtUIStep: MergeSlots<FormKitBaseSlots<Props>, FormKitStepSlots<Props>>;
121
128
  nuxtUISwitch: MergeSlots<FormKitBaseSlots<Props>, SwitchSlots>;
122
129
  nuxtUITextarea: MergeSlots<FormKitBaseSlots<Props>, TextareaSlots>;
130
+ nuxtUITree: MergeSlots<FormKitBaseSlots<Props>, TreeSlots>;
123
131
  }
124
132
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sfxcode/nuxt-ui-formkit",
3
- "version": "1.2.5",
3
+ "version": "1.2.7",
4
4
  "description": "FormKit integration for Nuxt UI - Seamlessly connect FormKit form handling with Nuxt UI components",
5
5
  "author": {
6
6
  "name": "Tom",
@@ -91,9 +91,9 @@
91
91
  "@formkit/addons": "^2.1.0",
92
92
  "@formkit/nuxt": "^2.1.0",
93
93
  "@nuxt/kit": "4.4.8",
94
- "@nuxt/ui": "^4.9.0",
94
+ "@nuxt/ui": "^4.10.0",
95
95
  "@standard-schema/spec": "^1.1.0",
96
- "@vue/compiler-dom": "^3.5.39"
96
+ "@vue/compiler-dom": "^3.5.40"
97
97
  },
98
98
  "devDependencies": {
99
99
  "@codemirror/lang-json": "^6.0.2",
@@ -101,19 +101,19 @@
101
101
  "@codemirror/theme-one-dark": "^6.1.3",
102
102
  "@codemirror/view": "^6.43.6",
103
103
  "@iconify-json/heroicons": "^1.2.3",
104
- "@iconify-json/lucide": "^1.2.116",
105
- "@iconify-json/simple-icons": "^1.2.89",
104
+ "@iconify-json/lucide": "^1.2.117",
105
+ "@iconify-json/simple-icons": "^1.2.90",
106
106
  "@nuxt/devtools": "4.0.0-alpha.7",
107
107
  "@nuxt/eslint-config": "^1.16.0",
108
108
  "@nuxt/module-builder": "^1.0.2",
109
109
  "@nuxt/schema": "4.4.8",
110
110
  "@nuxt/test-utils": "^4.0.3",
111
111
  "@types/node": "latest",
112
- "@vitejs/plugin-vue": "^6.0.7",
112
+ "@vitejs/plugin-vue": "^6.0.8",
113
113
  "@vue/test-utils": "^2.4.11",
114
114
  "changelogen": "^0.6.2",
115
115
  "codemirror": "^6.0.2",
116
- "eslint": "^10.6.0",
116
+ "eslint": "^10.7.0",
117
117
  "jsdom": "^29.1.1",
118
118
  "mkdist": "^2.4.1",
119
119
  "nuxt": "4.4.8",
@@ -123,7 +123,7 @@
123
123
  "valibot": "^1.4.2",
124
124
  "vitepress": "2.0.0-alpha.17",
125
125
  "vitest": "^4.1.10",
126
- "vue": "^3.5.39",
126
+ "vue": "^3.5.40",
127
127
  "vue-i18n": "^11.4.6",
128
128
  "vue-tsc": "^3.3.7",
129
129
  "zod": "^4.4.3"