feature-form 0.0.35 → 0.0.36
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/cjs/create-form.js +28 -24
- package/dist/cjs/form-field/create-form-field-validation-context.js +2 -2
- package/dist/cjs/form-field/create-form-field.js +22 -16
- package/dist/cjs/form-field/create-status.js +4 -7
- package/dist/esm/create-form.js +28 -24
- package/dist/esm/form-field/create-form-field-validation-context.js +2 -2
- package/dist/esm/form-field/create-form-field.js +22 -16
- package/dist/esm/form-field/create-status.js +4 -7
- package/dist/types/create-form.d.ts.map +1 -1
- package/dist/types/form-field/create-form-field.d.ts.map +1 -1
- package/dist/types/form-field/create-status.d.ts.map +1 -1
- package/dist/types/types/form.d.ts +4 -4
- package/dist/types/types/form.d.ts.map +1 -1
- package/package.json +8 -8
package/dist/cjs/create-form.js
CHANGED
|
@@ -83,6 +83,28 @@ function createForm(config) {
|
|
|
83
83
|
isValidating: featureState.createState(false),
|
|
84
84
|
isSubmitted: featureState.createState(false),
|
|
85
85
|
isSubmitting: featureState.createState(false),
|
|
86
|
+
init() {
|
|
87
|
+
for (const field of Object.values(this.fields)) {
|
|
88
|
+
field.listen(
|
|
89
|
+
(_0) => __async(this, [_0], function* ({ source }) {
|
|
90
|
+
if (source === "set") {
|
|
91
|
+
if (field.isSubmitted && field._config.reValidateMode.has(formField.FormFieldReValidateMode.OnChange) || !field.isSubmitted && field._config.validateMode.has(formField.FormFieldValidateMode.OnChange) || field._config.validateMode.has(formField.FormFieldValidateMode.OnTouched) && field.isTouched) {
|
|
92
|
+
yield field.validate();
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}),
|
|
96
|
+
{ key: "form_validate" }
|
|
97
|
+
);
|
|
98
|
+
field.status.listen(
|
|
99
|
+
() => __async(this, null, function* () {
|
|
100
|
+
yield form._revalidate(true);
|
|
101
|
+
}),
|
|
102
|
+
{ key: "form_revalidate" }
|
|
103
|
+
);
|
|
104
|
+
}
|
|
105
|
+
delete this.init;
|
|
106
|
+
return this;
|
|
107
|
+
},
|
|
86
108
|
_revalidate(cached = false) {
|
|
87
109
|
return __async(this, null, function* () {
|
|
88
110
|
const formFields = Object.values(this.fields);
|
|
@@ -98,7 +120,7 @@ function createForm(config) {
|
|
|
98
120
|
submit() {
|
|
99
121
|
return __async(this, arguments, function* (options = {}) {
|
|
100
122
|
const {
|
|
101
|
-
|
|
123
|
+
context,
|
|
102
124
|
assignToInitial = false,
|
|
103
125
|
onInvalidSubmit: _onInvalidSubmit,
|
|
104
126
|
onValidSubmit: _onValidSubmit,
|
|
@@ -119,18 +141,18 @@ function createForm(config) {
|
|
|
119
141
|
const submitCallbackPromises = [];
|
|
120
142
|
if (data != null) {
|
|
121
143
|
for (const callback of this._validSubmitCallbacks) {
|
|
122
|
-
submitCallbackPromises.push(callback(data,
|
|
144
|
+
submitCallbackPromises.push(callback(data, context));
|
|
123
145
|
}
|
|
124
146
|
if (typeof _onValidSubmit === "function") {
|
|
125
|
-
submitCallbackPromises.push(_onValidSubmit(data,
|
|
147
|
+
submitCallbackPromises.push(_onValidSubmit(data, context));
|
|
126
148
|
}
|
|
127
149
|
} else {
|
|
128
150
|
const errors = this.getErrors();
|
|
129
151
|
for (const callback of this._invalidSubmitCallbacks) {
|
|
130
|
-
submitCallbackPromises.push(callback(errors,
|
|
152
|
+
submitCallbackPromises.push(callback(errors, context));
|
|
131
153
|
}
|
|
132
154
|
if (typeof _onInvalidSubmit === "function") {
|
|
133
|
-
submitCallbackPromises.push(_onInvalidSubmit(errors,
|
|
155
|
+
submitCallbackPromises.push(_onInvalidSubmit(errors, context));
|
|
134
156
|
}
|
|
135
157
|
}
|
|
136
158
|
let submitCallbackData = null;
|
|
@@ -206,25 +228,7 @@ function createForm(config) {
|
|
|
206
228
|
this.isSubmitted.set(false);
|
|
207
229
|
}
|
|
208
230
|
};
|
|
209
|
-
|
|
210
|
-
field.listen(
|
|
211
|
-
(_0) => __async(this, [_0], function* ({ source }) {
|
|
212
|
-
if (source === "set") {
|
|
213
|
-
if (field.isSubmitted && field._config.reValidateMode.has(formField.FormFieldReValidateMode.OnChange) || !field.isSubmitted && field._config.validateMode.has(formField.FormFieldValidateMode.OnChange) || field._config.validateMode.has(formField.FormFieldValidateMode.OnTouched) && field.isTouched) {
|
|
214
|
-
yield field.validate();
|
|
215
|
-
}
|
|
216
|
-
}
|
|
217
|
-
}),
|
|
218
|
-
{ key: "form" }
|
|
219
|
-
);
|
|
220
|
-
field.status.listen(
|
|
221
|
-
() => __async(this, null, function* () {
|
|
222
|
-
yield form._revalidate(true);
|
|
223
|
-
}),
|
|
224
|
-
{ key: "form" }
|
|
225
|
-
);
|
|
226
|
-
}
|
|
227
|
-
return form;
|
|
231
|
+
return form.init();
|
|
228
232
|
}
|
|
229
233
|
|
|
230
234
|
exports.createForm = createForm;
|
|
@@ -7,10 +7,10 @@ function createFormFieldValidationContext(formField) {
|
|
|
7
7
|
name: formField.key
|
|
8
8
|
},
|
|
9
9
|
value: formField.get(),
|
|
10
|
-
isValue
|
|
10
|
+
isValue(v) {
|
|
11
11
|
return true;
|
|
12
12
|
},
|
|
13
|
-
hasError
|
|
13
|
+
hasError() {
|
|
14
14
|
var _a;
|
|
15
15
|
return ((_a = formField.status._nextValue) == null ? void 0 : _a.type) === "INVALID";
|
|
16
16
|
},
|
|
@@ -37,16 +37,7 @@ function createFormField(initialValue, config) {
|
|
|
37
37
|
collectErrorMode = "firstError",
|
|
38
38
|
notifyOnStatusChange = true
|
|
39
39
|
} = config;
|
|
40
|
-
const
|
|
41
|
-
const status = createStatus.createStatus({ type: "UNVALIDATED" });
|
|
42
|
-
if (notifyOnStatusChange) {
|
|
43
|
-
status.listen(
|
|
44
|
-
(data) => {
|
|
45
|
-
formFieldState._notify({ additionalData: { source: "status", status: data.value } });
|
|
46
|
-
},
|
|
47
|
-
{ key: "form-field" }
|
|
48
|
-
);
|
|
49
|
-
}
|
|
40
|
+
const baseState = featureState.createState(initialValue);
|
|
50
41
|
const formFieldFeature = {
|
|
51
42
|
_config: {
|
|
52
43
|
editable,
|
|
@@ -54,14 +45,14 @@ function createFormField(initialValue, config) {
|
|
|
54
45
|
reValidateMode,
|
|
55
46
|
collectErrorMode
|
|
56
47
|
},
|
|
57
|
-
_intialValue: utils.deepCopy(
|
|
48
|
+
_intialValue: utils.deepCopy(baseState._v),
|
|
58
49
|
_validator: validator,
|
|
59
50
|
key,
|
|
60
51
|
isTouched: false,
|
|
61
52
|
isSubmitted: false,
|
|
62
53
|
isSubmitting: false,
|
|
63
54
|
isValidating: false,
|
|
64
|
-
status,
|
|
55
|
+
status: createStatus.createStatus({ type: "UNVALIDATED" }),
|
|
65
56
|
validate() {
|
|
66
57
|
return __async(this, null, function* () {
|
|
67
58
|
const validationContext = createFormFieldValidationContext.createFormFieldValidationContext(this);
|
|
@@ -87,16 +78,31 @@ function createFormField(initialValue, config) {
|
|
|
87
78
|
this.isTouched = true;
|
|
88
79
|
},
|
|
89
80
|
reset() {
|
|
90
|
-
this.set(this._intialValue, {
|
|
81
|
+
this.set(this._intialValue, { listenerContext: { source: "form-field_reset" } });
|
|
91
82
|
this.isTouched = false;
|
|
92
83
|
this.isSubmitted = false;
|
|
93
84
|
this.isSubmitting = false;
|
|
94
85
|
this.status.set({ type: "UNVALIDATED" });
|
|
95
86
|
}
|
|
96
87
|
};
|
|
97
|
-
const
|
|
98
|
-
|
|
99
|
-
|
|
88
|
+
const formField$1 = Object.assign(baseState, formFieldFeature, {
|
|
89
|
+
init({ notifyOnStatusChange: notifyOnStatusChange2 }) {
|
|
90
|
+
if (notifyOnStatusChange2) {
|
|
91
|
+
this.status.listen(
|
|
92
|
+
(data) => {
|
|
93
|
+
baseState._notify({
|
|
94
|
+
listenerContext: { source: "form-field_status-change", status: data.value }
|
|
95
|
+
});
|
|
96
|
+
},
|
|
97
|
+
{ key: "form-field_status-change" }
|
|
98
|
+
);
|
|
99
|
+
}
|
|
100
|
+
delete this.init;
|
|
101
|
+
return this;
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
formField$1._features.push("form-field");
|
|
105
|
+
return formField$1.init({ notifyOnStatusChange });
|
|
100
106
|
}
|
|
101
107
|
|
|
102
108
|
exports.createFormField = createFormField;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var featureState = require('feature-state');
|
|
4
4
|
|
|
5
5
|
function createStatus(initialValue) {
|
|
6
|
-
const
|
|
6
|
+
const baseState = featureState.createState(initialValue);
|
|
7
7
|
const formFieldStatusFeature = {
|
|
8
8
|
_nextValue: void 0,
|
|
9
9
|
registerNextError(error) {
|
|
@@ -15,12 +15,9 @@ function createStatus(initialValue) {
|
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
17
|
};
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
);
|
|
22
|
-
_formFieldStatus._features.push("form-field-status");
|
|
23
|
-
return _formFieldStatus;
|
|
18
|
+
const formFieldStatus = Object.assign(baseState, formFieldStatusFeature);
|
|
19
|
+
formFieldStatus._features.push("form-field-status");
|
|
20
|
+
return formFieldStatus;
|
|
24
21
|
}
|
|
25
22
|
|
|
26
23
|
exports.createStatus = createStatus;
|
package/dist/esm/create-form.js
CHANGED
|
@@ -81,6 +81,28 @@ function createForm(config) {
|
|
|
81
81
|
isValidating: createState(false),
|
|
82
82
|
isSubmitted: createState(false),
|
|
83
83
|
isSubmitting: createState(false),
|
|
84
|
+
init() {
|
|
85
|
+
for (const field of Object.values(this.fields)) {
|
|
86
|
+
field.listen(
|
|
87
|
+
(_0) => __async(this, [_0], function* ({ source }) {
|
|
88
|
+
if (source === "set") {
|
|
89
|
+
if (field.isSubmitted && field._config.reValidateMode.has(FormFieldReValidateMode.OnChange) || !field.isSubmitted && field._config.validateMode.has(FormFieldValidateMode.OnChange) || field._config.validateMode.has(FormFieldValidateMode.OnTouched) && field.isTouched) {
|
|
90
|
+
yield field.validate();
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}),
|
|
94
|
+
{ key: "form_validate" }
|
|
95
|
+
);
|
|
96
|
+
field.status.listen(
|
|
97
|
+
() => __async(this, null, function* () {
|
|
98
|
+
yield form._revalidate(true);
|
|
99
|
+
}),
|
|
100
|
+
{ key: "form_revalidate" }
|
|
101
|
+
);
|
|
102
|
+
}
|
|
103
|
+
delete this.init;
|
|
104
|
+
return this;
|
|
105
|
+
},
|
|
84
106
|
_revalidate(cached = false) {
|
|
85
107
|
return __async(this, null, function* () {
|
|
86
108
|
const formFields = Object.values(this.fields);
|
|
@@ -96,7 +118,7 @@ function createForm(config) {
|
|
|
96
118
|
submit() {
|
|
97
119
|
return __async(this, arguments, function* (options = {}) {
|
|
98
120
|
const {
|
|
99
|
-
|
|
121
|
+
context,
|
|
100
122
|
assignToInitial = false,
|
|
101
123
|
onInvalidSubmit: _onInvalidSubmit,
|
|
102
124
|
onValidSubmit: _onValidSubmit,
|
|
@@ -117,18 +139,18 @@ function createForm(config) {
|
|
|
117
139
|
const submitCallbackPromises = [];
|
|
118
140
|
if (data != null) {
|
|
119
141
|
for (const callback of this._validSubmitCallbacks) {
|
|
120
|
-
submitCallbackPromises.push(callback(data,
|
|
142
|
+
submitCallbackPromises.push(callback(data, context));
|
|
121
143
|
}
|
|
122
144
|
if (typeof _onValidSubmit === "function") {
|
|
123
|
-
submitCallbackPromises.push(_onValidSubmit(data,
|
|
145
|
+
submitCallbackPromises.push(_onValidSubmit(data, context));
|
|
124
146
|
}
|
|
125
147
|
} else {
|
|
126
148
|
const errors = this.getErrors();
|
|
127
149
|
for (const callback of this._invalidSubmitCallbacks) {
|
|
128
|
-
submitCallbackPromises.push(callback(errors,
|
|
150
|
+
submitCallbackPromises.push(callback(errors, context));
|
|
129
151
|
}
|
|
130
152
|
if (typeof _onInvalidSubmit === "function") {
|
|
131
|
-
submitCallbackPromises.push(_onInvalidSubmit(errors,
|
|
153
|
+
submitCallbackPromises.push(_onInvalidSubmit(errors, context));
|
|
132
154
|
}
|
|
133
155
|
}
|
|
134
156
|
let submitCallbackData = null;
|
|
@@ -204,25 +226,7 @@ function createForm(config) {
|
|
|
204
226
|
this.isSubmitted.set(false);
|
|
205
227
|
}
|
|
206
228
|
};
|
|
207
|
-
|
|
208
|
-
field.listen(
|
|
209
|
-
(_0) => __async(this, [_0], function* ({ source }) {
|
|
210
|
-
if (source === "set") {
|
|
211
|
-
if (field.isSubmitted && field._config.reValidateMode.has(FormFieldReValidateMode.OnChange) || !field.isSubmitted && field._config.validateMode.has(FormFieldValidateMode.OnChange) || field._config.validateMode.has(FormFieldValidateMode.OnTouched) && field.isTouched) {
|
|
212
|
-
yield field.validate();
|
|
213
|
-
}
|
|
214
|
-
}
|
|
215
|
-
}),
|
|
216
|
-
{ key: "form" }
|
|
217
|
-
);
|
|
218
|
-
field.status.listen(
|
|
219
|
-
() => __async(this, null, function* () {
|
|
220
|
-
yield form._revalidate(true);
|
|
221
|
-
}),
|
|
222
|
-
{ key: "form" }
|
|
223
|
-
);
|
|
224
|
-
}
|
|
225
|
-
return form;
|
|
229
|
+
return form.init();
|
|
226
230
|
}
|
|
227
231
|
|
|
228
232
|
export { createForm };
|
|
@@ -5,10 +5,10 @@ function createFormFieldValidationContext(formField) {
|
|
|
5
5
|
name: formField.key
|
|
6
6
|
},
|
|
7
7
|
value: formField.get(),
|
|
8
|
-
isValue
|
|
8
|
+
isValue(v) {
|
|
9
9
|
return true;
|
|
10
10
|
},
|
|
11
|
-
hasError
|
|
11
|
+
hasError() {
|
|
12
12
|
var _a;
|
|
13
13
|
return ((_a = formField.status._nextValue) == null ? void 0 : _a.type) === "INVALID";
|
|
14
14
|
},
|
|
@@ -35,16 +35,7 @@ function createFormField(initialValue, config) {
|
|
|
35
35
|
collectErrorMode = "firstError",
|
|
36
36
|
notifyOnStatusChange = true
|
|
37
37
|
} = config;
|
|
38
|
-
const
|
|
39
|
-
const status = createStatus({ type: "UNVALIDATED" });
|
|
40
|
-
if (notifyOnStatusChange) {
|
|
41
|
-
status.listen(
|
|
42
|
-
(data) => {
|
|
43
|
-
formFieldState._notify({ additionalData: { source: "status", status: data.value } });
|
|
44
|
-
},
|
|
45
|
-
{ key: "form-field" }
|
|
46
|
-
);
|
|
47
|
-
}
|
|
38
|
+
const baseState = createState(initialValue);
|
|
48
39
|
const formFieldFeature = {
|
|
49
40
|
_config: {
|
|
50
41
|
editable,
|
|
@@ -52,14 +43,14 @@ function createFormField(initialValue, config) {
|
|
|
52
43
|
reValidateMode,
|
|
53
44
|
collectErrorMode
|
|
54
45
|
},
|
|
55
|
-
_intialValue: deepCopy(
|
|
46
|
+
_intialValue: deepCopy(baseState._v),
|
|
56
47
|
_validator: validator,
|
|
57
48
|
key,
|
|
58
49
|
isTouched: false,
|
|
59
50
|
isSubmitted: false,
|
|
60
51
|
isSubmitting: false,
|
|
61
52
|
isValidating: false,
|
|
62
|
-
status,
|
|
53
|
+
status: createStatus({ type: "UNVALIDATED" }),
|
|
63
54
|
validate() {
|
|
64
55
|
return __async(this, null, function* () {
|
|
65
56
|
const validationContext = createFormFieldValidationContext(this);
|
|
@@ -85,16 +76,31 @@ function createFormField(initialValue, config) {
|
|
|
85
76
|
this.isTouched = true;
|
|
86
77
|
},
|
|
87
78
|
reset() {
|
|
88
|
-
this.set(this._intialValue, {
|
|
79
|
+
this.set(this._intialValue, { listenerContext: { source: "form-field_reset" } });
|
|
89
80
|
this.isTouched = false;
|
|
90
81
|
this.isSubmitted = false;
|
|
91
82
|
this.isSubmitting = false;
|
|
92
83
|
this.status.set({ type: "UNVALIDATED" });
|
|
93
84
|
}
|
|
94
85
|
};
|
|
95
|
-
const
|
|
96
|
-
|
|
97
|
-
|
|
86
|
+
const formField = Object.assign(baseState, formFieldFeature, {
|
|
87
|
+
init({ notifyOnStatusChange: notifyOnStatusChange2 }) {
|
|
88
|
+
if (notifyOnStatusChange2) {
|
|
89
|
+
this.status.listen(
|
|
90
|
+
(data) => {
|
|
91
|
+
baseState._notify({
|
|
92
|
+
listenerContext: { source: "form-field_status-change", status: data.value }
|
|
93
|
+
});
|
|
94
|
+
},
|
|
95
|
+
{ key: "form-field_status-change" }
|
|
96
|
+
);
|
|
97
|
+
}
|
|
98
|
+
delete this.init;
|
|
99
|
+
return this;
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
formField._features.push("form-field");
|
|
103
|
+
return formField.init({ notifyOnStatusChange });
|
|
98
104
|
}
|
|
99
105
|
|
|
100
106
|
export { createFormField };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createState } from 'feature-state';
|
|
2
2
|
|
|
3
3
|
function createStatus(initialValue) {
|
|
4
|
-
const
|
|
4
|
+
const baseState = createState(initialValue);
|
|
5
5
|
const formFieldStatusFeature = {
|
|
6
6
|
_nextValue: void 0,
|
|
7
7
|
registerNextError(error) {
|
|
@@ -13,12 +13,9 @@ function createStatus(initialValue) {
|
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
15
|
};
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
);
|
|
20
|
-
_formFieldStatus._features.push("form-field-status");
|
|
21
|
-
return _formFieldStatus;
|
|
16
|
+
const formFieldStatus = Object.assign(baseState, formFieldStatusFeature);
|
|
17
|
+
formFieldStatus._features.push("form-field-status");
|
|
18
|
+
return formFieldStatus;
|
|
22
19
|
}
|
|
23
20
|
|
|
24
21
|
export { createStatus };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-form.d.ts","sourceRoot":"","sources":["../../src/create-form.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"create-form.d.ts","sourceRoot":"","sources":["../../src/create-form.ts"],"names":[],"mappings":"AAEA,OAAO,EAAyB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAGtE,OAAO,EACN,uBAAuB,EACvB,qBAAqB,EACrB,KAAK,KAAK,EACV,KAAK,WAAW,EAChB,KAAK,SAAS,EAEd,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EAGxB,KAAK,sBAAsB,EAE3B,KAAK,oBAAoB,EACzB,MAAM,SAAS,CAAC;AAEjB,wBAAgB,UAAU,CAAC,SAAS,SAAS,SAAS,EACrD,MAAM,EAAE,iBAAiB,CAAC,SAAS,CAAC,GAClC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CA6NtB;AAED,MAAM,WAAW,iBAAiB,CAAC,SAAS,SAAS,SAAS,CAAE,SAAQ,OAAO,CAAC,WAAW,CAAC;IAC3F;;OAEG;IACH,MAAM,EAAE,2BAA2B,CAAC,SAAS,CAAC,CAAC;IAC/C;;OAEG;IACH,YAAY,CAAC,EAAE,WAAW,CAAC,qBAAqB,CAAC,CAAC;IAClD;;OAEG;IACH,cAAc,CAAC,EAAE,WAAW,CAAC,uBAAuB,CAAC,CAAC;IACtD;;OAEG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B,eAAe,CAAC,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC;IACpD,aAAa,CAAC,EAAE,oBAAoB,CAAC,SAAS,CAAC,CAAC;CAChD;AAED,MAAM,MAAM,2BAA2B,CAAC,SAAS,SAAS,SAAS,IAAI;KACrE,GAAG,IAAI,MAAM,SAAS,GAAG,0BAA0B,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;CACpE,CAAC;AAEF,MAAM,WAAW,0BAA0B,CAAC,MAAM,CAAE,SAAQ,OAAO,CAAC,qBAAqB,CAAC;IACzF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC;CACxC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-form-field.d.ts","sourceRoot":"","sources":["../../../src/form-field/create-form-field.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"create-form-field.d.ts","sourceRoot":"","sources":["../../../src/form-field/create-form-field.ts"],"names":[],"mappings":"AAIA,OAAO,EAGN,KAAK,UAAU,EACf,KAAK,qBAAqB,EAE1B,KAAK,mBAAmB,EACxB,MAAM,UAAU,CAAC;AAIlB,wBAAgB,eAAe,CAAC,MAAM,EACrC,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,MAAM,EAAE,sBAAsB,CAAC,MAAM,CAAC,GACpC,UAAU,CAAC,MAAM,CAAC,CA4FpB;AAED,MAAM,WAAW,sBAAsB,CAAC,MAAM,CAAE,SAAQ,OAAO,CAAC,qBAAqB,CAAC;IACrF,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC;IACxC,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAC/B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-status.d.ts","sourceRoot":"","sources":["../../../src/form-field/create-status.ts"],"names":[],"mappings":"AACA,OAAO,EAEN,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,MAAM,UAAU,CAAC;AAElB,wBAAgB,YAAY,CAAC,YAAY,EAAE,qBAAqB,GAAG,gBAAgB,
|
|
1
|
+
{"version":3,"file":"create-status.d.ts","sourceRoot":"","sources":["../../../src/form-field/create-status.ts"],"names":[],"mappings":"AACA,OAAO,EAEN,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,MAAM,UAAU,CAAC;AAElB,wBAAgB,YAAY,CAAC,YAAY,EAAE,qBAAqB,GAAG,gBAAgB,CAmBlF"}
|
|
@@ -27,15 +27,15 @@ export interface TSubmitOptions<GFormData extends TFormData, GFeatures extends T
|
|
|
27
27
|
onValidSubmit?: TValidSubmitCallback<GFormData>;
|
|
28
28
|
onInvalidSubmit?: TInvalidSubmitCallback<GFormData>;
|
|
29
29
|
postSubmitCallback?: TPostSubmitCallback<GFormData, GFeatures>;
|
|
30
|
-
|
|
30
|
+
context?: TSubmitContext;
|
|
31
31
|
assignToInitial?: boolean;
|
|
32
32
|
}
|
|
33
|
-
export type TValidSubmitCallback<GFormData extends TFormData> = (formData: Readonly<GFormData>,
|
|
34
|
-
export type TInvalidSubmitCallback<GFormData extends TFormData> = (errors: TInvalidFormFieldErrors<GFormData>,
|
|
33
|
+
export type TValidSubmitCallback<GFormData extends TFormData> = (formData: Readonly<GFormData>, context?: TSubmitContext) => TSubmitCallbackResponse;
|
|
34
|
+
export type TInvalidSubmitCallback<GFormData extends TFormData> = (errors: TInvalidFormFieldErrors<GFormData>, context?: TSubmitContext) => TSubmitCallbackResponse;
|
|
35
35
|
export type TSubmitCallbackResponse = Promise<void | TSubmitData> | void | TSubmitData;
|
|
36
36
|
export type TSubmitData = Record<string, unknown>;
|
|
37
37
|
export type TPostSubmitCallback<GFormData extends TFormData, GFeatures extends TFeatureDefinition[]> = (form: TForm<GFormData, GFeatures>, submitData: TSubmitData) => void;
|
|
38
|
-
export interface
|
|
38
|
+
export interface TSubmitContext {
|
|
39
39
|
[key: string]: unknown;
|
|
40
40
|
event?: unknown;
|
|
41
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../../src/types/form.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAK5E,MAAM,MAAM,KAAK,CAChB,SAAS,SAAS,SAAS,EAC3B,SAAS,SAAS,kBAAkB,EAAE,IACnC,aAAa,CAChB;IACC,OAAO,EAAE,WAAW,CAAC;IACrB,qBAAqB,EAAE,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;IACzD,uBAAuB,EAAE,sBAAsB,CAAC,SAAS,CAAC,EAAE,CAAC;IAC7D,MAAM,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC7B,YAAY,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAClC,WAAW,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAClC,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACpD,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7E,QAAQ,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IACjC,QAAQ,EAAE,CAAC,IAAI,SAAS,MAAM,WAAW,CAAC,SAAS,CAAC,EACnD,GAAG,EAAE,IAAI,KACL,WAAW,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC;IAClC,YAAY,EAAE,MAAM,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;IAC/C,SAAS,EAAE,MAAM,uBAAuB,CAAC,SAAS,CAAC,CAAC;IACpD,KAAK,EAAE,MAAM,IAAI,CAAC;CAClB,EACD,SAAS,CACT,CAAC;AAEF,MAAM,MAAM,WAAW,CAAC,SAAS,SAAS,SAAS,IAAI;KACrD,GAAG,IAAI,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;CACpD,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAE5C,MAAM,WAAW,cAAc,CAC9B,SAAS,SAAS,SAAS,EAC3B,SAAS,SAAS,kBAAkB,EAAE;IAEtC,aAAa,CAAC,EAAE,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAChD,eAAe,CAAC,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAC;IACpD,kBAAkB,CAAC,EAAE,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAC/D,
|
|
1
|
+
{"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../../src/types/form.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "feature-form",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.36",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Straightforward, typesafe, and feature-based form library for ReactJs",
|
|
6
6
|
"keywords": [],
|
|
@@ -23,14 +23,14 @@
|
|
|
23
23
|
"README.md"
|
|
24
24
|
],
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@blgc/types": "0.0.
|
|
27
|
-
"@blgc/utils": "0.0.
|
|
28
|
-
"
|
|
29
|
-
"
|
|
26
|
+
"@blgc/types": "0.0.13",
|
|
27
|
+
"@blgc/utils": "0.0.34",
|
|
28
|
+
"feature-state": "0.0.43",
|
|
29
|
+
"validation-adapter": "0.0.17"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
|
-
"@types/node": "^22.
|
|
33
|
-
"@blgc/config": "0.0.
|
|
32
|
+
"@types/node": "^22.13.5",
|
|
33
|
+
"@blgc/config": "0.0.30"
|
|
34
34
|
},
|
|
35
35
|
"size-limit": [
|
|
36
36
|
{
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"scripts": {
|
|
41
41
|
"build": "shx rm -rf dist && chmod +x ../../scripts/cli.sh && ../../scripts/cli.sh bundle",
|
|
42
42
|
"build:prod": "pnpm build -t prod",
|
|
43
|
-
"clean": "shx rm -rf dist && shx rm -rf
|
|
43
|
+
"clean": "shx rm -rf dist && shx rm -rf .turbo && shx rm -rf node_modules",
|
|
44
44
|
"install:clean": "pnpm run clean && pnpm install",
|
|
45
45
|
"lint": "eslint . --fix",
|
|
46
46
|
"publish:patch": "pnpm build:prod && pnpm version patch && pnpm publish --no-git-checks --access=public",
|