@steroidsjs/core 2.2.25 → 2.2.26

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/actions/form.d.ts CHANGED
@@ -3,6 +3,7 @@ export declare const FORM_CHANGE = "@form/change";
3
3
  export declare const FORM_RESET = "@form/reset";
4
4
  export declare const FORM_SET_ERRORS = "@form/set_errors";
5
5
  export declare const FORM_SUBMIT = "@form/submit";
6
+ export declare const FORM_SET_SUBMITTING = "@form/set_submitting";
6
7
  export declare const FORM_ARRAY_ADD = "@form/array_add";
7
8
  export declare const FORM_ARRAY_REMOVE = "@form/array_remove";
8
9
  /**
@@ -45,6 +46,16 @@ export declare const formSubmit: (formId: any) => {
45
46
  type: string;
46
47
  formId: any;
47
48
  };
49
+ /**
50
+ * Установить состояние отправки формы
51
+ * @param formId
52
+ * @param isSubmitting
53
+ */
54
+ export declare const formSetSubmitting: (formId: any, isSubmitting: any) => {
55
+ type: string;
56
+ formId: any;
57
+ isSubmitting: any;
58
+ };
48
59
  /**
49
60
  * Сброс данных формы к первоначальному состоянию (к initialValues)
50
61
  * @param formId
package/actions/form.js CHANGED
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
  exports.__esModule = true;
3
- exports.formArrayRemove = exports.formArrayAdd = exports.formReset = exports.formSubmit = exports.formSetErrors = exports.formChange = exports.formInitialize = exports.FORM_ARRAY_REMOVE = exports.FORM_ARRAY_ADD = exports.FORM_SUBMIT = exports.FORM_SET_ERRORS = exports.FORM_RESET = exports.FORM_CHANGE = exports.FORM_INITIALIZE = void 0;
3
+ exports.formArrayRemove = exports.formArrayAdd = exports.formReset = exports.formSetSubmitting = exports.formSubmit = exports.formSetErrors = exports.formChange = exports.formInitialize = exports.FORM_ARRAY_REMOVE = exports.FORM_ARRAY_ADD = exports.FORM_SET_SUBMITTING = exports.FORM_SUBMIT = exports.FORM_SET_ERRORS = exports.FORM_RESET = exports.FORM_CHANGE = exports.FORM_INITIALIZE = void 0;
4
4
  exports.FORM_INITIALIZE = '@form/initialize';
5
5
  exports.FORM_CHANGE = '@form/change';
6
6
  exports.FORM_RESET = '@form/reset';
7
7
  exports.FORM_SET_ERRORS = '@form/set_errors';
8
8
  exports.FORM_SUBMIT = '@form/submit';
9
+ exports.FORM_SET_SUBMITTING = '@form/set_submitting';
9
10
  exports.FORM_ARRAY_ADD = '@form/array_add';
10
11
  exports.FORM_ARRAY_REMOVE = '@form/array_remove';
11
12
  /**
@@ -55,6 +56,17 @@ var formSubmit = function (formId) { return ({
55
56
  formId: formId
56
57
  }); };
57
58
  exports.formSubmit = formSubmit;
59
+ /**
60
+ * Установить состояние отправки формы
61
+ * @param formId
62
+ * @param isSubmitting
63
+ */
64
+ var formSetSubmitting = function (formId, isSubmitting) { return ({
65
+ type: exports.FORM_SET_SUBMITTING,
66
+ formId: formId,
67
+ isSubmitting: isSubmitting
68
+ }); };
69
+ exports.formSetSubmitting = formSetSubmitting;
58
70
  /**
59
71
  * Сброс данных формы к первоначальному состоянию (к initialValues)
60
72
  * @param formId
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@steroidsjs/core",
3
- "version": "2.2.25",
3
+ "version": "2.2.26",
4
4
  "description": "",
5
5
  "author": "Vladimir Kozhin <hello@kozhindev.com>",
6
6
  "repository": {
package/reducers/form.js CHANGED
@@ -49,6 +49,8 @@ function reducerItem(state, action) {
49
49
  return dot_prop_immutable_1.set(state, 'errors', action.errors);
50
50
  case form_1.FORM_SUBMIT:
51
51
  return dot_prop_immutable_1.set(state, 'submitCounter', (state.submitCounter || 0) + 1);
52
+ case form_1.FORM_SET_SUBMITTING:
53
+ return dot_prop_immutable_1.set(state, 'isSubmitting', action.isSubmitting);
52
54
  case form_1.FORM_RESET:
53
55
  return __assign(__assign({}, state), { values: cloneDeep_1["default"](state.initialValues || {}) });
54
56
  case form_1.FORM_ARRAY_ADD:
@@ -81,6 +81,7 @@ var AutoSaveHelper_1 = __importDefault(require("./AutoSaveHelper"));
81
81
  var hooks_1 = require("../../../hooks");
82
82
  var form_1 = require("../../../utils/form");
83
83
  var validate_1 = __importDefault(require("../validate"));
84
+ var form_2 = require("../../../actions/form");
84
85
  exports.FormContext = React.createContext({});
85
86
  var getCaptchaToken = function (params) {
86
87
  var googleCaptcha = params.googleCaptcha, siteKey = params.siteKey, _a = params.actionName, actionName = _a === void 0 ? 'submit' : _a;
@@ -163,6 +164,7 @@ function Form(props) {
163
164
  return __generator(this, function (_c) {
164
165
  switch (_c.label) {
165
166
  case 0:
167
+ dispatch(form_2.formSetSubmitting(props.formId, true));
166
168
  // TODO
167
169
  if (e) {
168
170
  e.preventDefault();
@@ -243,6 +245,7 @@ function Form(props) {
243
245
  _c.label = 7;
244
246
  case 7:
245
247
  response = _a;
248
+ dispatch(form_2.formSetSubmitting(props.formId, false));
246
249
  // Skip on 2fa
247
250
  if (response.twoFactor) {
248
251
  return [2 /*return*/, null];
@@ -268,7 +271,7 @@ function Form(props) {
268
271
  }
269
272
  });
270
273
  });
271
- }, [components.api, components.http, components.resource, components.ui, props, setErrors, values]);
274
+ }, [components.api, components.http, components.resource, components.ui, props, setErrors, values, dispatch]);
272
275
  // Manual submit form by reducer action
273
276
  var prevSubmitCounter = react_use_1.usePrevious(submitCounter);
274
277
  react_use_1.useUpdateEffect(function () {