piral-forms 1.4.0-beta.6247 → 1.4.0-beta.6252
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/esm/actions.js +9 -2
- package/esm/actions.js.map +1 -1
- package/esm/create.js +4 -1
- package/esm/create.js.map +1 -1
- package/esm/useForm.js +3 -3
- package/esm/useForm.js.map +1 -1
- package/esm/withForm.js +2 -2
- package/esm/withForm.js.map +1 -1
- package/lib/actions.js +9 -2
- package/lib/actions.js.map +1 -1
- package/lib/create.js +4 -1
- package/lib/create.js.map +1 -1
- package/lib/useForm.js +3 -3
- package/lib/useForm.js.map +1 -1
- package/lib/withForm.js +2 -2
- package/lib/withForm.js.map +1 -1
- package/package.json +3 -3
- package/piral-forms.min.js +1 -1
package/esm/actions.js
CHANGED
|
@@ -7,9 +7,16 @@ function getNewFormState(newState, patch) {
|
|
|
7
7
|
}
|
|
8
8
|
export function updateFormState(ctx, id, initial, patch) {
|
|
9
9
|
ctx.dispatch((state) => {
|
|
10
|
-
const newState =
|
|
10
|
+
const newState = {
|
|
11
|
+
...initial,
|
|
12
|
+
...(state.forms[id] || {}),
|
|
13
|
+
...patch,
|
|
14
|
+
};
|
|
11
15
|
const updatedState = getNewFormState(newState, patch);
|
|
12
|
-
return
|
|
16
|
+
return {
|
|
17
|
+
...state,
|
|
18
|
+
forms: updateKey(state.forms, id, updatedState),
|
|
19
|
+
};
|
|
13
20
|
});
|
|
14
21
|
}
|
|
15
22
|
//# sourceMappingURL=actions.js.map
|
package/esm/actions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.js","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAsB,MAAM,YAAY,CAAC;AAG5E,SAAS,eAAe,CAAC,QAAuB,EAAE,KAA6B;IAC7E,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;QAClD,OAAO,eAAe,CAAC;KACxB;IAED,OAAO,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC;AACjG,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,GAAuB,EACvB,EAAU,EACV,OAAsB,EACtB,KAA6B;IAE7B,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE;QACrB,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"actions.js","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAsB,MAAM,YAAY,CAAC;AAG5E,SAAS,eAAe,CAAC,QAAuB,EAAE,KAA6B;IAC7E,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;QAClD,OAAO,eAAe,CAAC;KACxB;IAED,OAAO,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC;AACjG,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,GAAuB,EACvB,EAAU,EACV,OAAsB,EACtB,KAA6B;IAE7B,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE;QACrB,MAAM,QAAQ,GAAG;YACf,GAAG,OAAO;YACV,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YAC1B,GAAG,KAAK;SACT,CAAC;QACF,MAAM,YAAY,GAAG,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACtD,OAAO;YACL,GAAG,KAAK;YACR,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,EAAE,YAAY,CAAC;SAChD,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
|
package/esm/create.js
CHANGED
|
@@ -6,7 +6,10 @@ import { withForm } from './withForm';
|
|
|
6
6
|
export function createFormsApi(config = {}) {
|
|
7
7
|
return (context) => {
|
|
8
8
|
context.defineActions(actions);
|
|
9
|
-
context.dispatch((state) => (
|
|
9
|
+
context.dispatch((state) => ({
|
|
10
|
+
...state,
|
|
11
|
+
forms: {},
|
|
12
|
+
}));
|
|
10
13
|
return {
|
|
11
14
|
createForm(options) {
|
|
12
15
|
return (component) => withForm(component, options);
|
package/esm/create.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AAErC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAQtC;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,SAAsB,EAAE;IACrD,OAAO,CAAC,OAAO,EAAE,EAAE;QACjB,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAE/B,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AAErC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAQtC;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,SAAsB,EAAE;IACrD,OAAO,CAAC,OAAO,EAAE,EAAE;QACjB,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAE/B,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC3B,GAAG,KAAK;YACR,KAAK,EAAE,EAAE;SACV,CAAC,CAAC,CAAC;QAEJ,OAAO;YACL,UAAU,CAAC,OAAO;gBAChB,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACrD,CAAC;SACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC"}
|
package/esm/useForm.js
CHANGED
|
@@ -22,7 +22,7 @@ function updateData(id, state, updateState, newData, options) {
|
|
|
22
22
|
if (isfunc(onChange)) {
|
|
23
23
|
Promise.resolve(onChange(newData))
|
|
24
24
|
.then((data) => {
|
|
25
|
-
const updatedData =
|
|
25
|
+
const updatedData = { ...newData, ...data };
|
|
26
26
|
updateState(id, state, {
|
|
27
27
|
currentData: updatedData,
|
|
28
28
|
changed: !isSame(updatedData, state.initialData),
|
|
@@ -75,11 +75,11 @@ function createProps(id, state, updateState, options) {
|
|
|
75
75
|
});
|
|
76
76
|
},
|
|
77
77
|
setFormData(updatedData) {
|
|
78
|
-
updateData(id, state, updateState,
|
|
78
|
+
updateData(id, state, updateState, { ...state.currentData, ...updatedData }, options);
|
|
79
79
|
},
|
|
80
80
|
changeForm(e) {
|
|
81
81
|
const { name, value } = e.target;
|
|
82
|
-
updateData(id, state, updateState,
|
|
82
|
+
updateData(id, state, updateState, { ...state.currentData, [name]: value }, options);
|
|
83
83
|
},
|
|
84
84
|
};
|
|
85
85
|
}
|
package/esm/useForm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useForm.js","sourceRoot":"","sources":["../src/useForm.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAa,MAAM,OAAO,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACnF,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,MAAM,cAAc,GAAG,iDAAiD,CAAC;AAMzE,SAAS,kBAAkB,CAAY,IAAe;IACpD,OAAO;QACL,MAAM,EAAE,IAAI;QACZ,WAAW,EAAE,IAAI;QACjB,WAAW,EAAE,IAAI;QACjB,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,KAAK;QACjB,KAAK,EAAE,SAAS;KACjB,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CACjB,EAAU,EACV,KAAoB,EACpB,WAAyB,EACzB,OAAkB,EAClB,OAAyC;IAEzC,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAC7B,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE;QACrB,WAAW,EAAE,OAAO;QACpB,OAAO,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC;QAC5C,KAAK,EAAE,SAAS;KACjB,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,QAAQ,CAAC,EAAE;QACpB,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;aAC/B,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACb,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"useForm.js","sourceRoot":"","sources":["../src/useForm.ts"],"names":[],"mappings":"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"}
|
package/esm/withForm.js
CHANGED
|
@@ -7,7 +7,7 @@ export function withForm(Component, options) {
|
|
|
7
7
|
const FormView = (props) => {
|
|
8
8
|
const formProps = useForm(props.initialData, props.history, options);
|
|
9
9
|
return (React.createElement("form", { onSubmit: formProps.submit },
|
|
10
|
-
React.createElement(Component,
|
|
10
|
+
React.createElement(Component, { ...props, ...formProps })));
|
|
11
11
|
};
|
|
12
12
|
const FormLoader = (props) => {
|
|
13
13
|
const { loadData, emptyData } = options;
|
|
@@ -16,7 +16,7 @@ export function withForm(Component, options) {
|
|
|
16
16
|
return React.createElement(RegisteredLoadingIndicator, null);
|
|
17
17
|
}
|
|
18
18
|
else if (data) {
|
|
19
|
-
return React.createElement(FormView,
|
|
19
|
+
return React.createElement(FormView, { ...props, initialData: data });
|
|
20
20
|
}
|
|
21
21
|
else {
|
|
22
22
|
return React.createElement(RegisteredErrorInfo, { type: "form", error: error });
|
package/esm/withForm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withForm.js","sourceRoot":"","sources":["../src/withForm.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAuB,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,0BAA0B,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C,MAAM,UAAU,QAAQ,CACtB,SAA6D,EAC7D,OAAoD;IAEpD,MAAM,QAAQ,GAAwE,CAAC,KAAK,EAAE,EAAE;QAC9F,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACrE,OAAO,CACL,8BAAM,QAAQ,EAAE,SAAS,CAAC,MAAM;YAC9B,oBAAC,SAAS,
|
|
1
|
+
{"version":3,"file":"withForm.js","sourceRoot":"","sources":["../src/withForm.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAuB,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,0BAA0B,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C,MAAM,UAAU,QAAQ,CACtB,SAA6D,EAC7D,OAAoD;IAEpD,MAAM,QAAQ,GAAwE,CAAC,KAAK,EAAE,EAAE;QAC9F,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACrE,OAAO,CACL,8BAAM,QAAQ,EAAE,SAAS,CAAC,MAAM;YAC9B,oBAAC,SAAS,OAAK,KAAK,KAAM,SAAS,GAAI,CAClC,CACR,CAAC;IACJ,CAAC,CAAC;IACF,MAAM,UAAU,GAA2C,CAAC,KAAK,EAAE,EAAE;QACnE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;QACxC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC,GAAG,EAAE,CAC/C,OAAO,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAC9E,CAAC;QAEF,IAAI,OAAO,EAAE;YACX,OAAO,oBAAC,0BAA0B,OAAG,CAAC;SACvC;aAAM,IAAI,IAAI,EAAE;YACf,OAAO,oBAAC,QAAQ,OAAK,KAAK,EAAE,WAAW,EAAE,IAAI,GAAI,CAAC;SACnD;aAAM;YACL,OAAO,oBAAC,mBAAmB,IAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAE,KAAK,GAAI,CAAC;SAC1D;IACH,CAAC,CAAC;IAEF,OAAO,UAAU,CAAC,UAAU,CAAQ,CAAC;AACvC,CAAC"}
|
package/lib/actions.js
CHANGED
|
@@ -10,9 +10,16 @@ function getNewFormState(newState, patch) {
|
|
|
10
10
|
}
|
|
11
11
|
function updateFormState(ctx, id, initial, patch) {
|
|
12
12
|
ctx.dispatch((state) => {
|
|
13
|
-
const newState =
|
|
13
|
+
const newState = {
|
|
14
|
+
...initial,
|
|
15
|
+
...(state.forms[id] || {}),
|
|
16
|
+
...patch,
|
|
17
|
+
};
|
|
14
18
|
const updatedState = getNewFormState(newState, patch);
|
|
15
|
-
return
|
|
19
|
+
return {
|
|
20
|
+
...state,
|
|
21
|
+
forms: (0, piral_core_1.updateKey)(state.forms, id, updatedState),
|
|
22
|
+
};
|
|
16
23
|
});
|
|
17
24
|
}
|
|
18
25
|
exports.updateFormState = updateFormState;
|
package/lib/actions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.js","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":";;;AAAA,2CAA4E;AAG5E,SAAS,eAAe,CAAC,QAAuB,EAAE,KAA6B;IAC7E,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;QAClD,OAAO,4BAAe,CAAC;KACxB;IAED,OAAO,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,4BAAe,CAAC;AACjG,CAAC;AAED,SAAgB,eAAe,CAC7B,GAAuB,EACvB,EAAU,EACV,OAAsB,EACtB,KAA6B;IAE7B,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE;QACrB,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"actions.js","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":";;;AAAA,2CAA4E;AAG5E,SAAS,eAAe,CAAC,QAAuB,EAAE,KAA6B;IAC7E,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;QAClD,OAAO,4BAAe,CAAC;KACxB;IAED,OAAO,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,4BAAe,CAAC;AACjG,CAAC;AAED,SAAgB,eAAe,CAC7B,GAAuB,EACvB,EAAU,EACV,OAAsB,EACtB,KAA6B;IAE7B,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE;QACrB,MAAM,QAAQ,GAAG;YACf,GAAG,OAAO;YACV,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YAC1B,GAAG,KAAK;SACT,CAAC;QACF,MAAM,YAAY,GAAG,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACtD,OAAO;YACL,GAAG,KAAK;YACR,KAAK,EAAE,IAAA,sBAAS,EAAC,KAAK,CAAC,KAAK,EAAE,EAAE,EAAE,YAAY,CAAC;SAChD,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAlBD,0CAkBC"}
|
package/lib/create.js
CHANGED
|
@@ -9,7 +9,10 @@ const withForm_1 = require("./withForm");
|
|
|
9
9
|
function createFormsApi(config = {}) {
|
|
10
10
|
return (context) => {
|
|
11
11
|
context.defineActions(actions);
|
|
12
|
-
context.dispatch((state) => (
|
|
12
|
+
context.dispatch((state) => ({
|
|
13
|
+
...state,
|
|
14
|
+
forms: {},
|
|
15
|
+
}));
|
|
13
16
|
return {
|
|
14
17
|
createForm(options) {
|
|
15
18
|
return (component) => (0, withForm_1.withForm)(component, options);
|
package/lib/create.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AAErC,yCAAsC;AAQtC;;GAEG;AACH,SAAgB,cAAc,CAAC,SAAsB,EAAE;IACrD,OAAO,CAAC,OAAO,EAAE,EAAE;QACjB,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAE/B,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AAErC,yCAAsC;AAQtC;;GAEG;AACH,SAAgB,cAAc,CAAC,SAAsB,EAAE;IACrD,OAAO,CAAC,OAAO,EAAE,EAAE;QACjB,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAE/B,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC3B,GAAG,KAAK;YACR,KAAK,EAAE,EAAE;SACV,CAAC,CAAC,CAAC;QAEJ,OAAO;YACL,UAAU,CAAC,OAAO;gBAChB,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,IAAA,mBAAQ,EAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACrD,CAAC;SACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAfD,wCAeC"}
|
package/lib/useForm.js
CHANGED
|
@@ -25,7 +25,7 @@ function updateData(id, state, updateState, newData, options) {
|
|
|
25
25
|
if ((0, piral_core_1.isfunc)(onChange)) {
|
|
26
26
|
Promise.resolve(onChange(newData))
|
|
27
27
|
.then((data) => {
|
|
28
|
-
const updatedData =
|
|
28
|
+
const updatedData = { ...newData, ...data };
|
|
29
29
|
updateState(id, state, {
|
|
30
30
|
currentData: updatedData,
|
|
31
31
|
changed: !(0, piral_core_1.isSame)(updatedData, state.initialData),
|
|
@@ -78,11 +78,11 @@ function createProps(id, state, updateState, options) {
|
|
|
78
78
|
});
|
|
79
79
|
},
|
|
80
80
|
setFormData(updatedData) {
|
|
81
|
-
updateData(id, state, updateState,
|
|
81
|
+
updateData(id, state, updateState, { ...state.currentData, ...updatedData }, options);
|
|
82
82
|
},
|
|
83
83
|
changeForm(e) {
|
|
84
84
|
const { name, value } = e.target;
|
|
85
|
-
updateData(id, state, updateState,
|
|
85
|
+
updateData(id, state, updateState, { ...state.currentData, [name]: value }, options);
|
|
86
86
|
},
|
|
87
87
|
};
|
|
88
88
|
}
|
package/lib/useForm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useForm.js","sourceRoot":"","sources":["../src/useForm.ts"],"names":[],"mappings":";;;AACA,iCAAuD;AACvD,2CAAmF;AACnF,2CAAwC;AAGxC,MAAM,cAAc,GAAG,iDAAiD,CAAC;AAMzE,SAAS,kBAAkB,CAAY,IAAe;IACpD,OAAO;QACL,MAAM,EAAE,IAAI;QACZ,WAAW,EAAE,IAAI;QACjB,WAAW,EAAE,IAAI;QACjB,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,KAAK;QACjB,KAAK,EAAE,SAAS;KACjB,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CACjB,EAAU,EACV,KAAoB,EACpB,WAAyB,EACzB,OAAkB,EAClB,OAAyC;IAEzC,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAC7B,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE;QACrB,WAAW,EAAE,OAAO;QACpB,OAAO,EAAE,CAAC,IAAA,mBAAM,EAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC;QAC5C,KAAK,EAAE,SAAS;KACjB,CAAC,CAAC;IAEH,IAAI,IAAA,mBAAM,EAAC,QAAQ,CAAC,EAAE;QACpB,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;aAC/B,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACb,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"useForm.js","sourceRoot":"","sources":["../src/useForm.ts"],"names":[],"mappings":";;;AACA,iCAAuD;AACvD,2CAAmF;AACnF,2CAAwC;AAGxC,MAAM,cAAc,GAAG,iDAAiD,CAAC;AAMzE,SAAS,kBAAkB,CAAY,IAAe;IACpD,OAAO;QACL,MAAM,EAAE,IAAI;QACZ,WAAW,EAAE,IAAI;QACjB,WAAW,EAAE,IAAI;QACjB,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,KAAK;QACjB,KAAK,EAAE,SAAS;KACjB,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CACjB,EAAU,EACV,KAAoB,EACpB,WAAyB,EACzB,OAAkB,EAClB,OAAyC;IAEzC,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAC7B,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE;QACrB,WAAW,EAAE,OAAO;QACpB,OAAO,EAAE,CAAC,IAAA,mBAAM,EAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC;QAC5C,KAAK,EAAE,SAAS;KACjB,CAAC,CAAC;IAEH,IAAI,IAAA,mBAAM,EAAC,QAAQ,CAAC,EAAE;QACpB,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;aAC/B,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACb,MAAM,WAAW,GAAG,EAAE,GAAG,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC;YAC5C,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE;gBACrB,WAAW,EAAE,WAAW;gBACxB,OAAO,EAAE,CAAC,IAAA,mBAAM,EAAC,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC;gBAChD,KAAK,EAAE,SAAS;aACjB,CAAC,CAAC;QACL,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CACf,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE;YACrB,KAAK;SACN,CAAC,CACH,CAAC;KACL;AACH,CAAC;AAED,SAAS,UAAU,CACjB,EAAU,EACV,KAAoB,EACpB,WAAyB,EACzB,OAAyC;IAEzC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IACnC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE;QACrB,OAAO,EAAE,CAAC,CAAC,IAAI;QACf,UAAU,EAAE,IAAI;KACjB,CAAC,CAAC;IAEH,IAAI,IAAA,mBAAM,EAAC,QAAQ,CAAC,EAAE;QACpB,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;aACzC,IAAI,CAAC,GAAG,EAAE,CACT,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE;YACrB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,KAAK;SAClB,CAAC,CACH;aACA,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CACf,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE;YACrB,KAAK;YACL,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,KAAK;SAClB,CAAC,CACH,CAAC;KACL;AACH,CAAC;AAED,SAAS,WAAW,CAClB,EAAU,EACV,KAAoB,EACpB,WAAyB,EACzB,OAAyC;IAEzC,OAAO;QACL,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,KAAK,CAAC,WAAW;QAC3B,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,MAAM,CAAC,CAAa;YAClB,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,CAAC;YAExB,IAAI,KAAK,CAAC,OAAO,EAAE;gBACjB,UAAU,CAAC,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;aAC7C;YAED,OAAO,KAAK,CAAC;QACf,CAAC;QACD,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,KAAK;YACH,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE;gBACrB,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,SAAS;aACjB,CAAC,CAAC;QACL,CAAC;QACD,WAAW,CAAC,WAAW;YACrB,UAAU,CAAC,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,GAAG,KAAK,CAAC,WAAW,EAAE,GAAG,WAAW,EAAE,EAAE,OAAO,CAAC,CAAC;QACxF,CAAC;QACD,UAAU,CAAC,CAAC;YACV,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC;YACjC,UAAU,CAAC,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;QACvF,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,OAAO,CACrB,WAAsB,EACtB,OAAgB,EAChB,OAAyC,EACzC,UAAmB;IAEnB,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,cAAc,EAAE,GAAG,OAAO,CAAC;IACrD,MAAM,CAAC,EAAE,CAAC,GAAG,IAAA,gBAAQ,EAAC,UAAU,IAAI,uBAAU,CAAC,CAAC;IAChD,MAAM,KAAK,GAAG,IAAA,2BAAc,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAC;IACpF,MAAM,WAAW,GAAG,IAAA,sBAAS,EAAC,iBAAiB,CAAC,CAAC;IACjD,IAAA,qBAAS,EAAC,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACtD,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE;YACrB,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;QAEH,OAAO,GAAG,EAAE,CACV,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE;YACrB,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;IACP,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;IACvB,OAAO,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;AACtD,CAAC;AAtBD,0BAsBC"}
|
package/lib/withForm.js
CHANGED
|
@@ -10,7 +10,7 @@ function withForm(Component, options) {
|
|
|
10
10
|
const FormView = (props) => {
|
|
11
11
|
const formProps = (0, useForm_1.useForm)(props.initialData, props.history, options);
|
|
12
12
|
return (React.createElement("form", { onSubmit: formProps.submit },
|
|
13
|
-
React.createElement(Component,
|
|
13
|
+
React.createElement(Component, { ...props, ...formProps })));
|
|
14
14
|
};
|
|
15
15
|
const FormLoader = (props) => {
|
|
16
16
|
const { loadData, emptyData } = options;
|
|
@@ -19,7 +19,7 @@ function withForm(Component, options) {
|
|
|
19
19
|
return React.createElement(piral_core_1.RegisteredLoadingIndicator, null);
|
|
20
20
|
}
|
|
21
21
|
else if (data) {
|
|
22
|
-
return React.createElement(FormView,
|
|
22
|
+
return React.createElement(FormView, { ...props, initialData: data });
|
|
23
23
|
}
|
|
24
24
|
else {
|
|
25
25
|
return React.createElement(piral_core_1.RegisteredErrorInfo, { type: "form", error: error });
|
package/lib/withForm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withForm.js","sourceRoot":"","sources":["../src/withForm.tsx"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,uDAAmE;AACnE,2CAA6E;AAC7E,uCAAoC;AACpC,6CAA0C;AAG1C,SAAgB,QAAQ,CACtB,SAA6D,EAC7D,OAAoD;IAEpD,MAAM,QAAQ,GAAwE,CAAC,KAAK,EAAE,EAAE;QAC9F,MAAM,SAAS,GAAG,IAAA,iBAAO,EAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACrE,OAAO,CACL,8BAAM,QAAQ,EAAE,SAAS,CAAC,MAAM;YAC9B,oBAAC,SAAS,
|
|
1
|
+
{"version":3,"file":"withForm.js","sourceRoot":"","sources":["../src/withForm.tsx"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,uDAAmE;AACnE,2CAA6E;AAC7E,uCAAoC;AACpC,6CAA0C;AAG1C,SAAgB,QAAQ,CACtB,SAA6D,EAC7D,OAAoD;IAEpD,MAAM,QAAQ,GAAwE,CAAC,KAAK,EAAE,EAAE;QAC9F,MAAM,SAAS,GAAG,IAAA,iBAAO,EAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACrE,OAAO,CACL,8BAAM,QAAQ,EAAE,SAAS,CAAC,MAAM;YAC9B,oBAAC,SAAS,OAAK,KAAK,KAAM,SAAS,GAAI,CAClC,CACR,CAAC;IACJ,CAAC,CAAC;IACF,MAAM,UAAU,GAA2C,CAAC,KAAK,EAAE,EAAE;QACnE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;QACxC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAA,uBAAU,EAAC,GAAG,EAAE,CAC/C,OAAO,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAC9E,CAAC;QAEF,IAAI,OAAO,EAAE;YACX,OAAO,oBAAC,uCAA0B,OAAG,CAAC;SACvC;aAAM,IAAI,IAAI,EAAE;YACf,OAAO,oBAAC,QAAQ,OAAK,KAAK,EAAE,WAAW,EAAE,IAAI,GAAI,CAAC;SACnD;aAAM;YACL,OAAO,oBAAC,gCAAmB,IAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAE,KAAK,GAAI,CAAC;SAC1D;IACH,CAAC,CAAC;IAEF,OAAO,IAAA,6BAAU,EAAC,UAAU,CAAQ,CAAC;AACvC,CAAC;AA5BD,4BA4BC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "piral-forms",
|
|
3
|
-
"version": "1.4.0-beta.
|
|
3
|
+
"version": "1.4.0-beta.6252",
|
|
4
4
|
"description": "Plugin for providing advanced form support in Piral.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"piral",
|
|
@@ -63,9 +63,9 @@
|
|
|
63
63
|
"@types/history": "^4.7.8",
|
|
64
64
|
"@types/react": "^18.0.0",
|
|
65
65
|
"@types/react-router-dom": "^5.1.6",
|
|
66
|
-
"piral-core": "1.4.0-beta.
|
|
66
|
+
"piral-core": "1.4.0-beta.6252",
|
|
67
67
|
"react": "^18.0.0",
|
|
68
68
|
"react-router-dom": "^5.2.0"
|
|
69
69
|
},
|
|
70
|
-
"gitHead": "
|
|
70
|
+
"gitHead": "f30d158bb902504e233849eb7c7f65a0d3e52ce3"
|
|
71
71
|
}
|
package/piral-forms.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var piralForms=(()=>{var
|
|
1
|
+
var piralForms=(()=>{var U=Object.create;var d=Object.defineProperty;var w=Object.getOwnPropertyDescriptor;var L=Object.getOwnPropertyNames;var O=Object.getPrototypeOf,A=Object.prototype.hasOwnProperty;var S=r=>d(r,"__esModule",{value:!0});var c=(r=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(r,{get:(t,o)=>(typeof require!="undefined"?require:t)[o]}):r)(function(r){if(typeof require!="undefined")return require.apply(this,arguments);throw new Error('Dynamic require of "'+r+'" is not supported')});var v=(r,t)=>{S(r);for(var o in t)d(r,o,{get:t[o],enumerable:!0})},H=(r,t,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let e of L(t))!A.call(r,e)&&e!=="default"&&d(r,e,{get:()=>t[e],enumerable:!(o=w(t,e))||o.enumerable});return r},f=r=>H(S(d(r!=null?U(O(r)):{},"default",r&&r.__esModule&&"default"in r?{get:()=>r.default,enumerable:!0}:{value:r,enumerable:!0})),r);var N={};v(N,{createFormsApi:()=>K,useForm:()=>y,usePrompt:()=>h,withForm:()=>b});var T={};v(T,{updateFormState:()=>G});var l=f(c("piral-core"));function q(r,t){return t.active===!1&&!r.submitting?l.removeIndicator:r.active||r.submitting||r.changed?r:l.removeIndicator}function G(r,t,o,e){r.dispatch(a=>{let n={...o,...a.forms[t]||{},...e},i=q(n,e);return{...a,forms:(0,l.updateKey)(a.forms,t,i)}})}var p=f(c("react")),E=f(c("react-router-dom")),g=f(c("piral-core"));var F=f(c("react")),s=f(c("piral-core"));var R=f(c("react")),x=f(c("piral-core"));function h(r,t,o,e){(0,R.useEffect)(()=>{if(r){let a=m=>{let u=(0,x.isfunc)(o)?o():o;return m.returnValue=u,u},n=e&&t.listen(e),i=o&&t.block(o);return window.addEventListener("beforeunload",a),()=>{n&&n(),i&&i(),window.removeEventListener("beforeunload",a)}}return()=>{}},[r,o])}var M="Are you sure you want to discard the form data?";function k(r){return{active:!0,currentData:r,initialData:r,changed:!1,submitting:!1,error:void 0}}function C(r,t,o,e,a){let{onChange:n}=a;o(r,t,{currentData:e,changed:!(0,s.isSame)(e,t.initialData),error:void 0}),(0,s.isfunc)(n)&&Promise.resolve(n(e)).then(i=>{let m={...e,...i};o(r,t,{currentData:m,changed:!(0,s.isSame)(m,t.initialData),error:void 0})}).catch(i=>o(r,t,{error:i}))}function V(r,t,o,e){let{onSubmit:a,wait:n}=e;o(r,t,{changed:!!n,submitting:!0}),(0,s.isfunc)(a)&&Promise.resolve(a(t.currentData)).then(()=>o(r,t,{initialData:t.currentData,changed:!1,submitting:!1})).catch(i=>o(r,t,{error:i,changed:!0,submitting:!1}))}function B(r,t,o,e){return{changed:t.changed,formData:t.currentData,error:t.error,submit(a){return a&&a.preventDefault(),t.changed&&V(r,t,o,e),!1},submitting:t.submitting,reset(){o(r,t,{currentData:t.initialData,changed:!1,error:void 0})},setFormData(a){C(r,t,o,{...t.currentData,...a},e)},changeForm(a){let{name:n,value:i}=a.target;C(r,t,o,{...t.currentData,[n]:i},e)}}}function y(r,t,o,e){let{silent:a,message:n=M}=o,[i]=(0,F.useState)(e||s.generateId),m=(0,s.useGlobalState)(P=>P.forms[i]||k(r)),u=(0,s.useAction)("updateFormState");return h(!a&&m.changed,t,n),(0,F.useEffect)(()=>(u(i,m,{active:!0}),()=>u(i,m,{active:!1})),[m.submitting]),B(i,m,u,o)}var D=f(c("react"));function I(r){let[t,o]=(0,D.useState)({loading:!0,data:void 0,error:void 0});return(0,D.useEffect)(()=>{let e=!1;return r().then(a=>!e&&o({data:a,error:void 0,loading:!1}),a=>!e&&o({data:void 0,error:a,loading:!1})),()=>{e=!0}},[]),t}function b(r,t){let o=a=>{let n=y(a.initialData,a.history,t);return p.createElement("form",{onSubmit:n.submit},p.createElement(r,{...a,...n}))};return(0,E.withRouter)(a=>{let{loadData:n,emptyData:i}=t,{loading:m,data:u,error:P}=I(()=>typeof n!="function"?Promise.resolve(i):n(a));return m?p.createElement(g.RegisteredLoadingIndicator,null):u?p.createElement(o,{...a,initialData:u}):p.createElement(g.RegisteredErrorInfo,{type:"form",error:P})})}function K(r={}){return t=>(t.defineActions(T),t.dispatch(o=>({...o,forms:{}})),{createForm(o){return e=>b(e,o)}})}return N;})();
|