@bach.software/vue-dynamic-form 0.5.0 → 0.7.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 (50) hide show
  1. package/dist/examples.cjs.js +9 -9
  2. package/dist/examples.cjs.js.map +1 -1
  3. package/dist/examples.es.js +1726 -293
  4. package/dist/examples.es.js.map +1 -1
  5. package/dist/mapEachMetadataItem-DwSDJyzo.cjs +2 -0
  6. package/dist/mapEachMetadataItem-DwSDJyzo.cjs.map +1 -0
  7. package/dist/mapEachMetadataItem-DxEO1PDs.js +1186 -0
  8. package/dist/mapEachMetadataItem-DxEO1PDs.js.map +1 -0
  9. package/dist/src/components/DynamicFormItemWizard.vue.d.ts +25 -0
  10. package/dist/src/components/DynamicFormTemplate.vue.d.ts +97 -4
  11. package/dist/src/components/__tests__/DynamicFormItem.formApi.test.d.ts +1 -0
  12. package/dist/src/components/__tests__/DynamicFormItem.unmount.logic.test.d.ts +1 -0
  13. package/dist/src/components/__tests__/DynamicFormItemArray.analytics.test.d.ts +1 -0
  14. package/dist/src/components/__tests__/DynamicFormItemArray.formApi.test.d.ts +1 -0
  15. package/dist/src/components/__tests__/DynamicFormItemArray.test-helpers.d.ts +9 -0
  16. package/dist/src/components/__tests__/DynamicFormItemChoice.analytics.test.d.ts +1 -0
  17. package/dist/src/components/__tests__/DynamicFormItemChoice.formApi.test.d.ts +1 -0
  18. package/dist/src/components/__tests__/DynamicFormItemChoice.test-helpers.d.ts +100 -0
  19. package/dist/src/components/__tests__/DynamicFormItemWizard.analytics.test.d.ts +1 -0
  20. package/dist/src/components/__tests__/DynamicFormItemWizard.formApi.test.d.ts +1 -0
  21. package/dist/src/components/__tests__/DynamicFormItemWizard.logic.test.d.ts +1 -0
  22. package/dist/src/components/__tests__/DynamicFormItemWizard.test-helpers.d.ts +24 -0
  23. package/dist/src/components/__tests__/DynamicFormItemWizard.validation.test.d.ts +1 -0
  24. package/dist/src/components/__tests__/DynamicFormTemplate.test.d.ts +1 -0
  25. package/dist/src/core/__tests__/useIsResetPending.test.d.ts +1 -0
  26. package/dist/src/core/__tests__/useIsValidationSuppressed.test.d.ts +1 -0
  27. package/dist/src/core/useIsResetPending.d.ts +13 -0
  28. package/dist/src/core/useIsValidationSuppressed.d.ts +20 -0
  29. package/dist/src/core/validation.d.ts +8 -2
  30. package/dist/src/examples/KeepValuesOnUnmountTestCase.vue.d.ts +2 -0
  31. package/dist/src/examples/ProgrammaticWritesTestCase.vue.d.ts +2 -0
  32. package/dist/src/examples/TestForm.vue.d.ts +7 -1
  33. package/dist/src/examples/TestFormTemplate.vue.d.ts +48 -13
  34. package/dist/src/examples/__tests__/TestFormTemplate.testcases.d.ts +2317 -7
  35. package/dist/src/examples/index.d.ts +2 -0
  36. package/dist/src/index.d.ts +1 -0
  37. package/dist/src/types/DynamicFormItemProps.d.ts +39 -2
  38. package/dist/src/types/DynamicFormSettings.d.ts +16 -0
  39. package/dist/src/types/FieldMetadata.d.ts +123 -1
  40. package/dist/src/utils/__tests__/deepCloneValue.test.d.ts +1 -0
  41. package/dist/src/utils/__tests__/mapEachMetadataItem.test.d.ts +1 -1
  42. package/dist/src/utils/deepCloneValue.d.ts +10 -0
  43. package/dist/tsconfig.tsbuildinfo +1 -1
  44. package/dist/vue-dynamic-form.cjs.js +1 -1
  45. package/dist/vue-dynamic-form.es.js +28 -27
  46. package/package.json +8 -6
  47. package/dist/mapEachMetadataItem-B4xJvJDj.js +0 -732
  48. package/dist/mapEachMetadataItem-B4xJvJDj.js.map +0 -1
  49. package/dist/mapEachMetadataItem-CDDSsb0c.cjs +0 -6
  50. package/dist/mapEachMetadataItem-CDDSsb0c.cjs.map +0 -1
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./mapEachMetadataItem-CDDSsb0c.cjs");function u(e){return e==null}function s(e){return!u(e)}function o(e){if(e==null)return e;if(Array.isArray(e)){const a=e.map(o).filter(s);return a.length?a:void 0}if(typeof e=="object"){const a=Object.entries(e).map(([c,t])=>[c,o(t)]).filter(([c,t])=>s(t)).reduce((c,[t,r])=>({...c,[t]:r}),{});return Object.entries(a).length?a:void 0}return e}function l(e,a,c){if(!a.includes(".")&&!a.includes("[")){e[a]=c;return}const t=a.split(/\.|\[(\d+)\]/).filter(Boolean);let r=e;for(let n=0;n<t.length;n++){if(n===t.length-1){r[t[n]]=c;return}if(!(t[n]in r)||r[t[n]]===null||r[t[n]]===void 0){const m=t[n+1];r[t[n]]=/^\d+$/.test(m)?[]:{}}r=r[t[n]]}}exports.DynamicForm=i._sfc_main;exports.DynamicFormItem=i._sfc_main$1;exports.DynamicFormItemArray=i._sfc_main$2;exports.DynamicFormItemChoice=i._sfc_main$3;exports.DynamicFormTemplate=i._sfc_main$4;exports.checkTreeHasValue=i.checkTreeHasValue;exports.defineMetadata=i.defineMetadata;exports.dynamicFormSettingsKey=i.dynamicFormSettingsKey;exports.mapEachMetadataItem=i.mapEachMetadataItem;exports.useDynamicForm=i.useDynamicForm;exports.useValidatePartialForm=i.useValidatePartialForm;exports.removeNullValues=o;exports.setInPath=l;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./mapEachMetadataItem-DwSDJyzo.cjs");function u(e){return e==null}function o(e){return!u(e)}function m(e){if(e==null)return e;if(Array.isArray(e)){const a=e.map(m).filter(o);return a.length?a:void 0}if(typeof e=="object"){const a=Object.entries(e).map(([c,t])=>[c,m(t)]).filter(([c,t])=>o(t)).reduce((c,[t,r])=>({...c,[t]:r}),{});return Object.entries(a).length?a:void 0}return e}function l(e,a,c){if(!a.includes(".")&&!a.includes("[")){e[a]=c;return}const t=a.split(/\.|\[(\d+)\]/).filter(Boolean);let r=e;for(let n=0;n<t.length;n++){if(n===t.length-1){r[t[n]]=c;return}if(!(t[n]in r)||r[t[n]]===null||r[t[n]]===void 0){const s=t[n+1];r[t[n]]=/^\d+$/.test(s)?[]:{}}r=r[t[n]]}}exports.DynamicForm=i._sfc_main;exports.DynamicFormItem=i._sfc_main$1;exports.DynamicFormItemArray=i._sfc_main$2;exports.DynamicFormItemChoice=i._sfc_main$3;exports.DynamicFormItemWizard=i._sfc_main$4;exports.DynamicFormTemplate=i._sfc_main$5;exports.checkTreeHasValue=i.checkTreeHasValue;exports.defineMetadata=i.defineMetadata;exports.dynamicFormSettingsKey=i.dynamicFormSettingsKey;exports.mapEachMetadataItem=i.mapEachMetadataItem;exports.useDynamicForm=i.useDynamicForm;exports.useValidatePartialForm=i.useValidatePartialForm;exports.removeNullValues=m;exports.setInPath=l;
2
2
  //# sourceMappingURL=vue-dynamic-form.cjs.js.map
@@ -1,30 +1,30 @@
1
- import { _ as m, a as y, b as F, c as h, d as D, h as g, e as p, g as v, m as I, u as N, f as O } from "./mapEachMetadataItem-B4xJvJDj.js";
2
- function u(e) {
3
- return e == null;
1
+ import { _ as f, a as y, b as F, c as D, d as h, e as I, i as g, f as p, h as v, m as N, u as O, g as b } from "./mapEachMetadataItem-DxEO1PDs.js";
2
+ function u(i) {
3
+ return i == null;
4
4
  }
5
- function s(e) {
6
- return !u(e);
5
+ function s(i) {
6
+ return !u(i);
7
7
  }
8
- function o(e) {
9
- if (e == null)
10
- return e;
11
- if (Array.isArray(e)) {
12
- const i = e.map(o).filter(s);
13
- return i.length ? i : void 0;
8
+ function o(i) {
9
+ if (i == null)
10
+ return i;
11
+ if (Array.isArray(i)) {
12
+ const e = i.map(o).filter(s);
13
+ return e.length ? e : void 0;
14
14
  }
15
- if (typeof e == "object") {
16
- const i = Object.entries(e).map(([a, r]) => [a, o(r)]).filter(([a, r]) => s(r)).reduce((a, [r, n]) => ({ ...a, [r]: n }), {});
17
- return Object.entries(i).length ? i : void 0;
15
+ if (typeof i == "object") {
16
+ const e = Object.entries(i).map(([a, r]) => [a, o(r)]).filter(([a, r]) => s(r)).reduce((a, [r, n]) => ({ ...a, [r]: n }), {});
17
+ return Object.entries(e).length ? e : void 0;
18
18
  }
19
- return e;
19
+ return i;
20
20
  }
21
- function l(e, i, a) {
22
- if (!i.includes(".") && !i.includes("[")) {
23
- e[i] = a;
21
+ function m(i, e, a) {
22
+ if (!e.includes(".") && !e.includes("[")) {
23
+ i[e] = a;
24
24
  return;
25
25
  }
26
- const r = i.split(/\.|\[(\d+)\]/).filter(Boolean);
27
- let n = e;
26
+ const r = e.split(/\.|\[(\d+)\]/).filter(Boolean);
27
+ let n = i;
28
28
  for (let t = 0; t < r.length; t++) {
29
29
  if (t === r.length - 1) {
30
30
  n[r[t]] = a;
@@ -38,18 +38,19 @@ function l(e, i, a) {
38
38
  }
39
39
  }
40
40
  export {
41
- m as DynamicForm,
41
+ f as DynamicForm,
42
42
  y as DynamicFormItem,
43
43
  F as DynamicFormItemArray,
44
- h as DynamicFormItemChoice,
45
- D as DynamicFormTemplate,
44
+ D as DynamicFormItemChoice,
45
+ h as DynamicFormItemWizard,
46
+ I as DynamicFormTemplate,
46
47
  g as checkTreeHasValue,
47
48
  p as defineMetadata,
48
49
  v as dynamicFormSettingsKey,
49
- I as mapEachMetadataItem,
50
+ N as mapEachMetadataItem,
50
51
  o as removeNullValues,
51
- l as setInPath,
52
- N as useDynamicForm,
53
- O as useValidatePartialForm
52
+ m as setInPath,
53
+ O as useDynamicForm,
54
+ b as useValidatePartialForm
54
55
  };
55
56
  //# sourceMappingURL=vue-dynamic-form.es.js.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bach.software/vue-dynamic-form",
3
3
  "type": "module",
4
- "version": "0.5.0",
4
+ "version": "0.7.0",
5
5
  "description": "A simple yet highly extendable dynamic form system, inspired by the flexibility of XSD and powered by Vee-Validate.",
6
6
  "author": "Jeroen Bach <jeroen@bach.software> (https://bach.software)",
7
7
  "homepage": "https://github.com/jeroenbach/dynamic-form",
@@ -40,23 +40,24 @@
40
40
  "peerDependencies": {
41
41
  "@vee-validate/rules": ">=4.12",
42
42
  "vee-validate": ">=4.12",
43
- "vue": ">=3.5.18"
43
+ "vue": "^3.5.44"
44
44
  },
45
45
  "devDependencies": {
46
46
  "@antfu/eslint-config": "5.2.1",
47
47
  "@changesets/cli": "2.29.5",
48
48
  "@types/node": "24.2.1",
49
49
  "@vitejs/plugin-vue": "6.0.1",
50
+ "@vitest/coverage-v8": "3.2.6",
50
51
  "@vue/test-utils": "2.4.6",
51
52
  "eslint": "9.33.0",
52
53
  "eslint-plugin-format": "1.0.1",
53
54
  "jsdom": "26.0.0",
54
- "tsc-alias": "1.8.16",
55
+ "tsc-alias": "1.8.17",
55
56
  "typescript": "5.9.2",
56
57
  "vee-validate": ">=4.12",
57
- "vite": "7.1.2",
58
- "vitest": "3.2.4",
59
- "vue": ">=3.5.18",
58
+ "vite": "7.3.6",
59
+ "vitest": "3.2.6",
60
+ "vue": "^3.5.44",
60
61
  "vue-tsc": "3.0.5"
61
62
  },
62
63
  "scripts": {
@@ -69,6 +70,7 @@
69
70
  "test": "vitest run",
70
71
  "ci": "pnpm ci:test && pnpm ci:lint && pnpm ci:typecheck",
71
72
  "ci:test": "TZ=Europe/Amsterdam vitest run",
73
+ "ci:test:coverage": "TZ=Europe/Amsterdam vitest run --coverage",
72
74
  "ci:lint": "eslint",
73
75
  "ci:typecheck": "vue-tsc --noEmit",
74
76
  "changeset": "changeset"