@sheinx/hooks 3.5.3-beta.4 → 3.5.3-beta.6

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.
@@ -1 +1 @@
1
- {"version":3,"file":"use-form-control.d.ts","sourceRoot":"","sources":["use-form-control.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AA0B/D,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC;;kBAsJpC,CAAC,YAAY,GAAG,EAAE;;;;;EAkDrD"}
1
+ {"version":3,"file":"use-form-control.d.ts","sourceRoot":"","sources":["use-form-control.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AA0B/D,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC;;kBAoJpC,CAAC,YAAY,GAAG,EAAE;;;;;EAkDrD"}
@@ -115,9 +115,6 @@ function useFormControl(props) {
115
115
  }
116
116
  });
117
117
  setValueState(nextValue);
118
- formFunc === null || formFunc === void 0 || formFunc.setValue(_defineProperty({}, name, nextValue), {
119
- validate: false
120
- });
121
118
  } else {
122
119
  var _value2 = getValue(name, formValue);
123
120
  var _error2 = getError(name, errors, severErrors);
@@ -127,9 +124,6 @@ function useFormControl(props) {
127
124
  if (!(0, _shallowEqual.shallowEqual)(_value2, latestInfo.valueState)) {
128
125
  if (_value2 === undefined && defaultValue !== undefined) {
129
126
  setValueState(defaultValue);
130
- formFunc === null || formFunc === void 0 || formFunc.setValue(_defineProperty({}, name, defaultValue), {
131
- validate: false
132
- });
133
127
  } else {
134
128
  setValueState(_value2);
135
129
  }
@@ -1 +1 @@
1
- {"version":3,"file":"use-form.d.ts","sourceRoot":"","sources":["use-form.ts"],"names":[],"mappings":";AA8BA,OAAO,EAEL,aAAa,EACb,YAAY,EACZ,gBAAgB,EAGhB,gBAAgB,EAEjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAe,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI5D,QAAA,MAAM,OAAO;;;;;;;;;wBAqPC;gBAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;gBAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;aAAE;8BAnId,MAAM;oCA6LD,OAAO;;6BAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;oCAdrB,MAAM,EAAE;sCAxJxC,MAAM,GAAG,MAAM,EAAE,WAAU,gBAAgB;qCAsNvB,MAAM;gCA3CE,MAAM,SAAS,MAAM,UAAU,KAAK;gCAKpC,MAAM,SAAS,MAAM;kCAhHpD,MAAM,0BAAyB,qBAAqB;;;;;;oBA2DjD;YAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE;0BAnId,MAAM;gCA6LD,OAAO;;yBAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;gCAdrB,MAAM,EAAE;kCAxJxC,MAAM,GAAG,MAAM,EAAE,WAAU,gBAAgB;iCAsNvB,MAAM;4BA3CE,MAAM,SAAS,MAAM,UAAU,KAAK;4BAKpC,MAAM,SAAS,MAAM;8BAhHpD,MAAM,0BAAyB,qBAAqB;;CA+X9D,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"use-form.d.ts","sourceRoot":"","sources":["use-form.ts"],"names":[],"mappings":";AA8BA,OAAO,EAEL,aAAa,EACb,YAAY,EACZ,gBAAgB,EAGhB,gBAAgB,EAEjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAe,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI5D,QAAA,MAAM,OAAO;;;;;;;;;wBAqPC;gBAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;gBAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;aAAE;8BAnId,MAAM;oCAsMD,OAAO;;6BAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;oCAdrB,MAAM,EAAE;sCAjKxC,MAAM,GAAG,MAAM,EAAE,WAAU,gBAAgB;qCA+NvB,MAAM;gCA3CE,MAAM,SAAS,MAAM,UAAU,KAAK;gCAKpC,MAAM,SAAS,MAAM;kCAzHpD,MAAM,0BAAyB,qBAAqB;;;;;;oBA2DjD;YAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE;0BAnId,MAAM;gCAsMD,OAAO;;yBAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;gCAdrB,MAAM,EAAE;kCAjKxC,MAAM,GAAG,MAAM,EAAE,WAAU,gBAAgB;iCA+NvB,MAAM;4BA3CE,MAAM,SAAS,MAAM,UAAU,KAAK;4BAKpC,MAAM,SAAS,MAAM;8BAzHpD,MAAM,0BAAyB,qBAAqB;;CAgY9D,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -263,15 +263,14 @@ var useForm = function useForm(props) {
263
263
  onChange(function (draft) {
264
264
  var values = Object.keys(vals);
265
265
  // 针对 name 为数组模式,如 datepicker 的 name={['startTime', 'endTime']} 时,前者校验可能需要依赖后者,因此需要提前将后者数据整合至 draft 用于多字段整合校验
266
- var nextDraft = (0, _immer.current)(draft);
267
266
  values.forEach(function (key) {
268
- (0, _utils.deepSet)(nextDraft, key, vals[key], deepSetOptions);
267
+ (0, _utils.deepSet)(draft, key, vals[key], deepSetOptions);
269
268
  });
270
269
  values.forEach(function (key) {
271
270
  if (option.validate) {
272
271
  var _context$validateMap$;
273
272
  (_context$validateMap$ = context.validateMap[key]) === null || _context$validateMap$ === void 0 || _context$validateMap$.forEach(function (validate) {
274
- validate(key, vals[key], nextDraft);
273
+ validate(key, vals[key], (0, _immer.current)(draft));
275
274
  });
276
275
  }
277
276
  });
@@ -284,6 +283,17 @@ var useForm = function useForm(props) {
284
283
  });
285
284
  update(fullKeyPaths);
286
285
  });
286
+ var updateDefaultValue = function updateDefaultValue() {
287
+ if (!context.mounted) return;
288
+ Object.keys(context.defaultValues).forEach(function (df) {
289
+ var latestDefaultValue = getValue(df);
290
+ if (latestDefaultValue === undefined) {
291
+ setValue(_defineProperty({}, df, context.defaultValues[df]), {
292
+ validate: false
293
+ });
294
+ }
295
+ });
296
+ };
287
297
  var getErrors = (0, _usePersistFn.default)(function () {
288
298
  return context.errors;
289
299
  });
@@ -557,6 +567,7 @@ var useForm = function useForm(props) {
557
567
  validateFields(keys).catch(function () {});
558
568
  }
559
569
  update();
570
+ updateDefaultValue();
560
571
  context.resetTime = 0;
561
572
  }, [props.value]);
562
573
  React.useEffect(function () {
@@ -1 +1 @@
1
- {"version":3,"file":"use-form-control.d.ts","sourceRoot":"","sources":["use-form-control.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AA0B/D,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC;;kBAsJpC,CAAC,YAAY,GAAG,EAAE;;;;;EAkDrD"}
1
+ {"version":3,"file":"use-form-control.d.ts","sourceRoot":"","sources":["use-form-control.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AA0B/D,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC;;kBAoJpC,CAAC,YAAY,GAAG,EAAE;;;;;EAkDrD"}
@@ -106,9 +106,6 @@ export default function useFormControl(props) {
106
106
  }
107
107
  });
108
108
  setValueState(nextValue);
109
- formFunc === null || formFunc === void 0 || formFunc.setValue(_defineProperty({}, name, nextValue), {
110
- validate: false
111
- });
112
109
  } else {
113
110
  var _value2 = getValue(name, formValue);
114
111
  var _error2 = getError(name, errors, severErrors);
@@ -118,9 +115,6 @@ export default function useFormControl(props) {
118
115
  if (!shallowEqual(_value2, latestInfo.valueState)) {
119
116
  if (_value2 === undefined && defaultValue !== undefined) {
120
117
  setValueState(defaultValue);
121
- formFunc === null || formFunc === void 0 || formFunc.setValue(_defineProperty({}, name, defaultValue), {
122
- validate: false
123
- });
124
118
  } else {
125
119
  setValueState(_value2);
126
120
  }
@@ -1 +1 @@
1
- {"version":3,"file":"use-form.d.ts","sourceRoot":"","sources":["use-form.ts"],"names":[],"mappings":";AA8BA,OAAO,EAEL,aAAa,EACb,YAAY,EACZ,gBAAgB,EAGhB,gBAAgB,EAEjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAe,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI5D,QAAA,MAAM,OAAO;;;;;;;;;wBAqPC;gBAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;gBAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;aAAE;8BAnId,MAAM;oCA6LD,OAAO;;6BAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;oCAdrB,MAAM,EAAE;sCAxJxC,MAAM,GAAG,MAAM,EAAE,WAAU,gBAAgB;qCAsNvB,MAAM;gCA3CE,MAAM,SAAS,MAAM,UAAU,KAAK;gCAKpC,MAAM,SAAS,MAAM;kCAhHpD,MAAM,0BAAyB,qBAAqB;;;;;;oBA2DjD;YAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE;0BAnId,MAAM;gCA6LD,OAAO;;yBAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;gCAdrB,MAAM,EAAE;kCAxJxC,MAAM,GAAG,MAAM,EAAE,WAAU,gBAAgB;iCAsNvB,MAAM;4BA3CE,MAAM,SAAS,MAAM,UAAU,KAAK;4BAKpC,MAAM,SAAS,MAAM;8BAhHpD,MAAM,0BAAyB,qBAAqB;;CA+X9D,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"use-form.d.ts","sourceRoot":"","sources":["use-form.ts"],"names":[],"mappings":";AA8BA,OAAO,EAEL,aAAa,EACb,YAAY,EACZ,gBAAgB,EAGhB,gBAAgB,EAEjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAe,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI5D,QAAA,MAAM,OAAO;;;;;;;;;wBAqPC;gBAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;gBAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;aAAE;8BAnId,MAAM;oCAsMD,OAAO;;6BAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;oCAdrB,MAAM,EAAE;sCAjKxC,MAAM,GAAG,MAAM,EAAE,WAAU,gBAAgB;qCA+NvB,MAAM;gCA3CE,MAAM,SAAS,MAAM,UAAU,KAAK;gCAKpC,MAAM,SAAS,MAAM;kCAzHpD,MAAM,0BAAyB,qBAAqB;;;;;;oBA2DjD;YAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE;0BAnId,MAAM;gCAsMD,OAAO;;yBAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;gCAdrB,MAAM,EAAE;kCAjKxC,MAAM,GAAG,MAAM,EAAE,WAAU,gBAAgB;iCA+NvB,MAAM;4BA3CE,MAAM,SAAS,MAAM,UAAU,KAAK;4BAKpC,MAAM,SAAS,MAAM;8BAzHpD,MAAM,0BAAyB,qBAAqB;;CAgY9D,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -254,15 +254,14 @@ var useForm = function useForm(props) {
254
254
  onChange(function (draft) {
255
255
  var values = Object.keys(vals);
256
256
  // 针对 name 为数组模式,如 datepicker 的 name={['startTime', 'endTime']} 时,前者校验可能需要依赖后者,因此需要提前将后者数据整合至 draft 用于多字段整合校验
257
- var nextDraft = current(draft);
258
257
  values.forEach(function (key) {
259
- deepSet(nextDraft, key, vals[key], deepSetOptions);
258
+ deepSet(draft, key, vals[key], deepSetOptions);
260
259
  });
261
260
  values.forEach(function (key) {
262
261
  if (option.validate) {
263
262
  var _context$validateMap$;
264
263
  (_context$validateMap$ = context.validateMap[key]) === null || _context$validateMap$ === void 0 || _context$validateMap$.forEach(function (validate) {
265
- validate(key, vals[key], nextDraft);
264
+ validate(key, vals[key], current(draft));
266
265
  });
267
266
  }
268
267
  });
@@ -275,6 +274,17 @@ var useForm = function useForm(props) {
275
274
  });
276
275
  update(fullKeyPaths);
277
276
  });
277
+ var updateDefaultValue = function updateDefaultValue() {
278
+ if (!context.mounted) return;
279
+ Object.keys(context.defaultValues).forEach(function (df) {
280
+ var latestDefaultValue = getValue(df);
281
+ if (latestDefaultValue === undefined) {
282
+ setValue(_defineProperty({}, df, context.defaultValues[df]), {
283
+ validate: false
284
+ });
285
+ }
286
+ });
287
+ };
278
288
  var getErrors = usePersistFn(function () {
279
289
  return context.errors;
280
290
  });
@@ -548,6 +558,7 @@ var useForm = function useForm(props) {
548
558
  validateFields(keys).catch(function () {});
549
559
  }
550
560
  update();
561
+ updateDefaultValue();
551
562
  context.resetTime = 0;
552
563
  }, [props.value]);
553
564
  React.useEffect(function () {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sheinx/hooks",
3
- "version": "3.5.3-beta.4",
3
+ "version": "3.5.3-beta.6",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "license": "MIT",