@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.
- package/dist/examples.cjs.js +9 -9
- package/dist/examples.cjs.js.map +1 -1
- package/dist/examples.es.js +1726 -293
- package/dist/examples.es.js.map +1 -1
- package/dist/mapEachMetadataItem-DwSDJyzo.cjs +2 -0
- package/dist/mapEachMetadataItem-DwSDJyzo.cjs.map +1 -0
- package/dist/mapEachMetadataItem-DxEO1PDs.js +1186 -0
- package/dist/mapEachMetadataItem-DxEO1PDs.js.map +1 -0
- package/dist/src/components/DynamicFormItemWizard.vue.d.ts +25 -0
- package/dist/src/components/DynamicFormTemplate.vue.d.ts +97 -4
- package/dist/src/components/__tests__/DynamicFormItem.formApi.test.d.ts +1 -0
- package/dist/src/components/__tests__/DynamicFormItem.unmount.logic.test.d.ts +1 -0
- package/dist/src/components/__tests__/DynamicFormItemArray.analytics.test.d.ts +1 -0
- package/dist/src/components/__tests__/DynamicFormItemArray.formApi.test.d.ts +1 -0
- package/dist/src/components/__tests__/DynamicFormItemArray.test-helpers.d.ts +9 -0
- package/dist/src/components/__tests__/DynamicFormItemChoice.analytics.test.d.ts +1 -0
- package/dist/src/components/__tests__/DynamicFormItemChoice.formApi.test.d.ts +1 -0
- package/dist/src/components/__tests__/DynamicFormItemChoice.test-helpers.d.ts +100 -0
- package/dist/src/components/__tests__/DynamicFormItemWizard.analytics.test.d.ts +1 -0
- package/dist/src/components/__tests__/DynamicFormItemWizard.formApi.test.d.ts +1 -0
- package/dist/src/components/__tests__/DynamicFormItemWizard.logic.test.d.ts +1 -0
- package/dist/src/components/__tests__/DynamicFormItemWizard.test-helpers.d.ts +24 -0
- package/dist/src/components/__tests__/DynamicFormItemWizard.validation.test.d.ts +1 -0
- package/dist/src/components/__tests__/DynamicFormTemplate.test.d.ts +1 -0
- package/dist/src/core/__tests__/useIsResetPending.test.d.ts +1 -0
- package/dist/src/core/__tests__/useIsValidationSuppressed.test.d.ts +1 -0
- package/dist/src/core/useIsResetPending.d.ts +13 -0
- package/dist/src/core/useIsValidationSuppressed.d.ts +20 -0
- package/dist/src/core/validation.d.ts +8 -2
- package/dist/src/examples/KeepValuesOnUnmountTestCase.vue.d.ts +2 -0
- package/dist/src/examples/ProgrammaticWritesTestCase.vue.d.ts +2 -0
- package/dist/src/examples/TestForm.vue.d.ts +7 -1
- package/dist/src/examples/TestFormTemplate.vue.d.ts +48 -13
- package/dist/src/examples/__tests__/TestFormTemplate.testcases.d.ts +2317 -7
- package/dist/src/examples/index.d.ts +2 -0
- package/dist/src/index.d.ts +1 -0
- package/dist/src/types/DynamicFormItemProps.d.ts +39 -2
- package/dist/src/types/DynamicFormSettings.d.ts +16 -0
- package/dist/src/types/FieldMetadata.d.ts +123 -1
- package/dist/src/utils/__tests__/deepCloneValue.test.d.ts +1 -0
- package/dist/src/utils/__tests__/mapEachMetadataItem.test.d.ts +1 -1
- package/dist/src/utils/deepCloneValue.d.ts +10 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/vue-dynamic-form.cjs.js +1 -1
- package/dist/vue-dynamic-form.es.js +28 -27
- package/package.json +8 -6
- package/dist/mapEachMetadataItem-B4xJvJDj.js +0 -732
- package/dist/mapEachMetadataItem-B4xJvJDj.js.map +0 -1
- package/dist/mapEachMetadataItem-CDDSsb0c.cjs +0 -6
- 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-
|
|
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
|
|
2
|
-
function u(
|
|
3
|
-
return
|
|
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(
|
|
6
|
-
return !u(
|
|
5
|
+
function s(i) {
|
|
6
|
+
return !u(i);
|
|
7
7
|
}
|
|
8
|
-
function o(
|
|
9
|
-
if (
|
|
10
|
-
return
|
|
11
|
-
if (Array.isArray(
|
|
12
|
-
const
|
|
13
|
-
return
|
|
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
|
|
16
|
-
const
|
|
17
|
-
return Object.entries(
|
|
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
|
|
19
|
+
return i;
|
|
20
20
|
}
|
|
21
|
-
function
|
|
22
|
-
if (!
|
|
23
|
-
e
|
|
21
|
+
function m(i, e, a) {
|
|
22
|
+
if (!e.includes(".") && !e.includes("[")) {
|
|
23
|
+
i[e] = a;
|
|
24
24
|
return;
|
|
25
25
|
}
|
|
26
|
-
const r =
|
|
27
|
-
let n =
|
|
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
|
-
|
|
41
|
+
f as DynamicForm,
|
|
42
42
|
y as DynamicFormItem,
|
|
43
43
|
F as DynamicFormItemArray,
|
|
44
|
-
|
|
45
|
-
|
|
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
|
-
|
|
50
|
+
N as mapEachMetadataItem,
|
|
50
51
|
o as removeNullValues,
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
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.
|
|
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": "
|
|
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.
|
|
55
|
+
"tsc-alias": "1.8.17",
|
|
55
56
|
"typescript": "5.9.2",
|
|
56
57
|
"vee-validate": ">=4.12",
|
|
57
|
-
"vite": "7.
|
|
58
|
-
"vitest": "3.2.
|
|
59
|
-
"vue": "
|
|
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"
|