@hi-ui/form 4.0.0-alpha.1 → 4.0.0-alpha.10

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.
Files changed (56) hide show
  1. package/README.md +174 -7
  2. package/lib/cjs/Form.js +27 -9
  3. package/lib/cjs/Form.js.map +1 -1
  4. package/lib/cjs/FormItem.js +29 -5
  5. package/lib/cjs/FormItem.js.map +1 -1
  6. package/lib/cjs/FormLabel.js +1 -1
  7. package/lib/cjs/FormLabel.js.map +1 -1
  8. package/lib/cjs/FormList.js +2 -2
  9. package/lib/cjs/FormList.js.map +1 -1
  10. package/lib/cjs/FormMessage.js +3 -3
  11. package/lib/cjs/FormMessage.js.map +1 -1
  12. package/lib/cjs/FormReset.js +76 -0
  13. package/lib/cjs/FormReset.js.map +1 -0
  14. package/lib/cjs/FormSubmit.js +87 -0
  15. package/lib/cjs/FormSubmit.js.map +1 -0
  16. package/lib/cjs/index.js +6 -0
  17. package/lib/cjs/index.js.map +1 -1
  18. package/lib/cjs/styles/index.scss.js +1 -1
  19. package/lib/cjs/use-form-field.js +19 -35
  20. package/lib/cjs/use-form-field.js.map +1 -1
  21. package/lib/cjs/use-form.js +135 -58
  22. package/lib/cjs/use-form.js.map +1 -1
  23. package/lib/cjs/utils/index.js +26 -0
  24. package/lib/cjs/utils/index.js.map +1 -0
  25. package/lib/esm/Form.js +28 -10
  26. package/lib/esm/Form.js.map +1 -1
  27. package/lib/esm/FormItem.js +27 -5
  28. package/lib/esm/FormItem.js.map +1 -1
  29. package/lib/esm/FormLabel.js +1 -1
  30. package/lib/esm/FormLabel.js.map +1 -1
  31. package/lib/esm/FormList.js +2 -2
  32. package/lib/esm/FormList.js.map +1 -1
  33. package/lib/esm/FormMessage.js +3 -3
  34. package/lib/esm/FormMessage.js.map +1 -1
  35. package/lib/esm/FormReset.js +52 -0
  36. package/lib/esm/FormReset.js.map +1 -0
  37. package/lib/esm/FormSubmit.js +63 -0
  38. package/lib/esm/FormSubmit.js.map +1 -0
  39. package/lib/esm/index.js +2 -0
  40. package/lib/esm/index.js.map +1 -1
  41. package/lib/esm/styles/index.scss.js +1 -1
  42. package/lib/esm/use-form-field.js +19 -36
  43. package/lib/esm/use-form-field.js.map +1 -1
  44. package/lib/esm/use-form.js +136 -60
  45. package/lib/esm/use-form.js.map +1 -1
  46. package/lib/esm/utils/index.js +19 -0
  47. package/lib/esm/utils/index.js.map +1 -0
  48. package/lib/types/FormReset.d.ts +2 -1
  49. package/lib/types/FormSubmit.d.ts +3 -2
  50. package/lib/types/context.d.ts +32 -18
  51. package/lib/types/index.d.ts +2 -0
  52. package/lib/types/types.d.ts +34 -12
  53. package/lib/types/use-form-field.d.ts +10 -6
  54. package/lib/types/use-form.d.ts +16 -9
  55. package/lib/types/utils/index.d.ts +3 -0
  56. package/package.json +13 -13
@@ -9,10 +9,11 @@
9
9
  */
10
10
  import _regeneratorRuntime from '@babel/runtime/regenerator';
11
11
  import { __rest, __awaiter } from 'tslib';
12
+ import { stringify, parse } from './utils/index.js';
12
13
  import React, { useMemo, useReducer, useCallback, useRef } from 'react';
13
14
  import { useLatestRef, useLatestCallback } from '@hi-ui/use-latest';
14
- import { isArray, isFunction } from '@hi-ui/type-assertion';
15
- import { getNested, callAllFuncs, setNested } from '@hi-ui/func-utils';
15
+ import { isArray, isObjectLike, isFunction } from '@hi-ui/type-assertion';
16
+ import { getNested, setNested, callAllFuncs } from '@hi-ui/func-utils';
16
17
  import { stopEvent } from '@hi-ui/dom-utils';
17
18
  var EMPTY_RULES = {};
18
19
  var EMPTY_ERRORS = {};
@@ -31,7 +32,7 @@ var useForm = function useForm(_a) {
31
32
  _a$rules = _a.rules,
32
33
  rules = _a$rules === void 0 ? EMPTY_RULES : _a$rules,
33
34
  _a$validateAfterTouch = _a.validateAfterTouched,
34
- validateAfterTouched = _a$validateAfterTouch === void 0 ? true : _a$validateAfterTouch,
35
+ validateAfterTouched = _a$validateAfterTouch === void 0 ? false : _a$validateAfterTouch,
35
36
  _a$validateTrigger = _a.validateTrigger,
36
37
  validateTriggerProp = _a$validateTrigger === void 0 ? DEFAULT_VALIDATE_TRIGGER : _a$validateTrigger,
37
38
  rest = __rest(_a, ["initialValues", "initialErrors", "initialTouched", "lazyValidate", "onValuesChange", "onReset", "onSubmit", "rules", "validateAfterTouched", "validateTrigger"]);
@@ -52,7 +53,8 @@ var useForm = function useForm(_a) {
52
53
  var _useCollection = useCollection(),
53
54
  getValidation = _useCollection[0],
54
55
  registerField = _useCollection[1],
55
- unregisterField = _useCollection[2];
56
+ unregisterField = _useCollection[2],
57
+ getRegisteredKeys = _useCollection[3];
56
58
  /**
57
59
  * form 数据管理中心
58
60
  */
@@ -69,17 +71,21 @@ var useForm = function useForm(_a) {
69
71
  formDispatch = _useReducer[1]; // 使用 latest ref 维护,保证每次主动拿取的 formState 都是最新的
70
72
 
71
73
 
72
- var formStateRef = useLatestRef(formState); // @ts-ignore
73
-
74
- var getFieldNames = useCallback(function () {
75
- return Object.keys(formStateRef.current.values);
76
- }, [formStateRef]); // @ts-ignore
74
+ var formStateRef = useLatestRef(formState); // const getFieldNames = useCallback(() => Object.keys(formStateRef.current.values as any), [
75
+ // formStateRef,
76
+ // ])
77
77
 
78
78
  var getFieldValue = useCallback(function (fieldName) {
79
- return formStateRef.current.values[fieldName];
79
+ return getNested(formStateRef.current.values, fieldName);
80
+ }, [formStateRef]);
81
+ var getFieldsValue = useCallback(function () {
82
+ return formStateRef.current.values;
80
83
  }, [formStateRef]);
81
84
  var getFieldError = useCallback(function (fieldName) {
82
- return formStateRef.current.errors[fieldName];
85
+ return getNested(formStateRef.current.errors, fieldName);
86
+ }, [formStateRef]);
87
+ var getFieldsError = useCallback(function () {
88
+ return formStateRef.current.errors;
83
89
  }, [formStateRef]);
84
90
  var setFieldError = useCallback(function (field, errorMessage) {
85
91
  formDispatch({
@@ -131,25 +137,29 @@ var useForm = function useForm(_a) {
131
137
  payload: true
132
138
  });
133
139
  errorResultAsPromise = fieldValidation.validate(value);
134
- console.log('validate', errorResultAsPromise);
135
- errorResultAsPromise.then(function (result) {
136
- console.log('result', result);
140
+ return _context.abrupt("return", errorResultAsPromise.then(function (result) {
137
141
  formDispatch({
138
142
  type: 'SET_VALIDATING',
139
143
  payload: false
140
144
  });
141
145
  setFieldError(field, '');
142
- })["catch"](function (errorMsg) {
143
- // @ts-ignore
144
- setFieldError(field, errorMsg.fields[field][0].message);
145
- })["finally"](function () {
146
+ return setNested({}, field, value);
147
+ }, function (errorMsg) {
148
+ var _a, _b, _c;
149
+
146
150
  formDispatch({
147
151
  type: 'SET_VALIDATING',
148
152
  payload: false
149
- });
150
- });
153
+ }); // @ts-ignore
154
+ // @ts-ignore
155
+
156
+ setFieldError(field, (_c = (_b = (_a = errorMsg.fields[stringify(field)]) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.message) !== null && _c !== void 0 ? _c : ''); // TODO: 回调和promise支持
157
+ // TODO: 回调和promise支持
158
+
159
+ throw errorMsg;
160
+ }));
151
161
 
152
- case 7:
162
+ case 6:
153
163
  case "end":
154
164
  return _context.stop();
155
165
  }
@@ -170,11 +180,11 @@ var useForm = function useForm(_a) {
170
180
  */
171
181
 
172
182
  var validateAll = useCallback(function () {
173
- var fieldNames = getFieldNames();
183
+ var fieldNames = getRegisteredKeys();
174
184
  return Promise.all(fieldNames.map(function (fieldName) {
175
185
  return validateFieldState(fieldName);
176
186
  }));
177
- }, [getFieldNames, validateFieldState]);
187
+ }, [getRegisteredKeys, validateFieldState]);
178
188
  /**
179
189
  * 控件值更新策略
180
190
  */
@@ -187,26 +197,54 @@ var useForm = function useForm(_a) {
187
197
  field: field,
188
198
  value: value
189
199
  }
190
- });
191
- var shouldValidateField = shouldValidate !== null && shouldValidate !== void 0 ? shouldValidate : validateAfterTouched ? formState.touched[field] : true;
200
+ }); // touched 给外部控制展示,而不是当做参数暴露
201
+
202
+ var shouldValidateField = // shouldValidate ?? (validateAfterTouched ? getNested(formState.touched, field) : true)
203
+ validateAfterTouched ? getNested(formState.touched, field) && shouldValidate : shouldValidate;
192
204
 
193
205
  if (shouldValidateField) {
194
206
  validateField(field, value);
195
207
  }
196
208
  }, [validateField, validateAfterTouched, formState]);
197
- var normalizeValueFromChange = useCallback(function (eventOrValue) {
198
- // TODO: handle correct value
199
- return eventOrValue.target.value;
200
- }, []);
201
- var handleFieldChange = useCallback(function (fieldName, valueCollectPipe, shouldValidate) {
202
- return function (evt) {
203
- var _Object$assign; // TODO: 传递 onChange 其它参数
209
+ var setFieldsValue = useCallback(function (fields, shouldValidate) {
210
+ Object.entries(fields).forEach(function (_ref) {
211
+ var fieldName = _ref[0],
212
+ value = _ref[1];
213
+ setFieldValue(fieldName, value, shouldValidate);
214
+ });
215
+ }, [setFieldValue]);
216
+ var normalizeValueFromChange = useCallback(function (eventOrValue, valuePropName) {
217
+ var nextValue = eventOrValue;
218
+
219
+ if (isObjectLike(eventOrValue) && eventOrValue.target) {
220
+ var event = eventOrValue; // @see https://reactjs.org/docs/events.html#event-pooling
204
221
 
222
+ if (isFunction(event.persist)) {
223
+ event.persist();
224
+ }
205
225
 
206
- var nextValue = isFunction(valueCollectPipe) ? valueCollectPipe(evt) : normalizeValueFromChange(evt);
207
- setFieldValue(fieldName, nextValue, shouldValidate); // @ts-ignore
226
+ var target = event.target || event.currentTarget; // if (hasOwnProp(target, valuePropName)) {
227
+ // nextValue = target[valuePropName]
228
+ // }
229
+ // TODO: support all native html field
230
+
231
+ if (/checkbox/.test(target.type)) {
232
+ nextValue = target.checked;
233
+ } else {
234
+ nextValue = target.value;
235
+ }
236
+ }
208
237
 
209
- onValuesChange === null || onValuesChange === void 0 ? void 0 : onValuesChange(Object.assign(Object.assign({}, formState.values), (_Object$assign = {}, _Object$assign[fieldName] = nextValue, _Object$assign)), formState.values);
238
+ return nextValue;
239
+ }, []);
240
+ var handleFieldChange = useCallback(function (fieldName, valuePropName, valueCollectPipe, shouldValidate) {
241
+ return function (evt) {
242
+ // TODO: 传递 onChange 其它参数
243
+ var nextValue = isFunction(valueCollectPipe) ? valueCollectPipe(evt) : normalizeValueFromChange(evt, valuePropName);
244
+ setFieldValue(fieldName, nextValue, shouldValidate);
245
+ var changedValues = setNested({}, fieldName, nextValue);
246
+ var allValues = setNested(Object.assign({}, formState.values), fieldName, nextValue);
247
+ onValuesChange === null || onValuesChange === void 0 ? void 0 : onValuesChange(changedValues, allValues);
210
248
  };
211
249
  }, [setFieldValue, onValuesChange, formState.values, normalizeValueFromChange]);
212
250
  /**
@@ -304,7 +342,7 @@ var useForm = function useForm(_a) {
304
342
  });
305
343
  return _context3.abrupt("return", validateAll().then(function (combinedErrors) {
306
344
  var isInstanceOfError = combinedErrors instanceof Error;
307
- var isActuallyValid = !isInstanceOfError && Object.keys(combinedErrors).length === 0;
345
+ var isActuallyValid = !isInstanceOfError;
308
346
 
309
347
  if (isActuallyValid) {
310
348
  var promiseOrUndefined;
@@ -312,15 +350,31 @@ var useForm = function useForm(_a) {
312
350
  try {
313
351
  // @ts-ignore
314
352
  promiseOrUndefined = onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit(formState.values);
315
- } catch (error) {// throw error
353
+ } catch (error) {
354
+ formDispatch({
355
+ type: 'SUBMIT_DONE'
356
+ });
357
+ throw error;
358
+ }
359
+
360
+ if (promiseOrUndefined === undefined) {
361
+ formDispatch({
362
+ type: 'SUBMIT_DONE'
363
+ }); // return combinedErrors
364
+ // return combinedErrors
365
+
366
+ return formState.values;
316
367
  }
317
368
 
318
- if (promiseOrUndefined === undefined) return;
319
369
  return Promise.resolve(promiseOrUndefined).then(function (result) {
320
370
  formDispatch({
321
371
  type: 'SUBMIT_DONE'
322
- });
323
- return result;
372
+ }); // return result
373
+ // TODO: 满足promise 如果既给到values 又给到 errors
374
+ // return result
375
+ // TODO: 满足promise 如果既给到values 又给到 errors
376
+
377
+ return formState.values;
324
378
  })["catch"](function (_errors) {
325
379
  formDispatch({
326
380
  type: 'SUBMIT_DONE'
@@ -336,6 +390,11 @@ var useForm = function useForm(_a) {
336
390
  throw combinedErrors;
337
391
  }
338
392
  }
393
+ }, function (error) {
394
+ formDispatch({
395
+ type: 'SUBMIT_DONE'
396
+ });
397
+ throw error;
339
398
  }));
340
399
 
341
400
  case 2:
@@ -348,14 +407,13 @@ var useForm = function useForm(_a) {
348
407
  }, [formState, onSubmit, validateAll]);
349
408
  var handleSubmit = useCallback(function (evt) {
350
409
  stopEvent(evt);
351
- submitForm()["catch"](console.error);
410
+ return submitForm();
352
411
  }, [submitForm]);
353
412
  var handleReset = useCallback(function (evt) {
354
413
  stopEvent(evt);
355
414
  resetForm();
356
415
  }, [resetForm]);
357
- useCallback(function () {}, []);
358
- useCallback(function () {
416
+ var resetErrors = useCallback(function () {
359
417
  formDispatch({
360
418
  // TODO: reset errorMsg
361
419
  type: 'SET_ERRORS',
@@ -393,32 +451,35 @@ var useForm = function useForm(_a) {
393
451
  _props$valueCollectPr = _props.valueCollectPropName,
394
452
  valueCollectPropName = _props$valueCollectPr === void 0 ? 'onChange' : _props$valueCollectPr,
395
453
  valueCollectPipe = _props.valueCollectPipe,
454
+ valueSyncPipe = _props.valueSyncPipe,
396
455
  _props$validateTrigge = _props.validateTrigger,
397
456
  validateTriggerProp = _props$validateTrigge === void 0 ? validateTriggersMemo : _props$validateTrigge,
398
- onBlur = _props.onBlur;
457
+ children = _props.children;
458
+ var controlProps = children.props || {};
399
459
  var validateTrigger = isArray(validateTriggerProp) ? validateTriggerProp : [validateTriggerProp];
400
460
  var validateOnCollect = validateTrigger.includes(valueCollectPropName);
401
- var validateOnBlur = validateTrigger.includes('onChange');
461
+ var validateOnBlur = validateTrigger.includes('onBlur');
462
+ var controlledValue = getNested(formState.values, field);
402
463
  var returnProps = (_returnProps = {
403
464
  ref: ref
404
- }, _returnProps[valuePropName] = getNested(formState.values, field), _returnProps[valueCollectPropName] = callAllFuncs(props[valueCollectPropName], handleFieldChange(field, valueCollectPipe, validateOnCollect)), _returnProps.onBlur = callAllFuncs(onBlur, handleFieldBlur(field, validateOnBlur)), _returnProps.invalid = getFieldError(field), _returnProps);
405
- validateTrigger.filter(function (triggerName) {
406
- return [valueCollectPropName, 'onBlur'].indexOf(triggerName) === -1;
407
- }) // @ts-ignore
408
- .forEach(function (triggerName) {
409
- // @ts-ignore
410
- returnProps[triggerName] = callAllFuncs(props[triggerName], handleFieldTrigger(field));
465
+ }, _returnProps[valuePropName] = isFunction(valueSyncPipe) ? valueSyncPipe(controlledValue) : controlledValue, _returnProps[valueCollectPropName] = callAllFuncs(controlProps[valueCollectPropName], handleFieldChange(field, valuePropName, valueCollectPipe, validateOnCollect)), _returnProps.onBlur = callAllFuncs(controlProps.onBlur, handleFieldBlur(field, validateOnBlur)), _returnProps.invalid = getFieldError(field), _returnProps);
466
+ validateTrigger.forEach(function (triggerName) {
467
+ if ([valueCollectPropName, 'onBlur'].indexOf(triggerName) === -1) {
468
+ // @ts-ignore
469
+ returnProps[triggerName] = callAllFuncs(controlProps[triggerName], handleFieldTrigger(field));
470
+ }
411
471
  });
412
472
  return returnProps;
413
473
  }, [formState, handleFieldChange, handleFieldBlur, validateTriggersMemo, handleFieldTrigger, getFieldError]);
414
474
  var getFieldRules = useCallback(function (fieldName) {
415
- return rules[fieldName];
475
+ return getNested(rules, fieldName);
416
476
  }, [rules]);
417
477
  return Object.assign(Object.assign({}, formState), {
418
478
  setFormState: setFormState,
419
479
  setFieldValue: setFieldValue,
420
480
  setFieldError: setFieldError,
421
481
  setFieldTouched: setFieldTouched,
482
+ getFieldValue: getFieldValue,
422
483
  getFieldError: getFieldError,
423
484
  getFieldRules: getFieldRules,
424
485
  getRootProps: getRootProps,
@@ -426,7 +487,13 @@ var useForm = function useForm(_a) {
426
487
  registerField: registerField,
427
488
  unregisterField: unregisterField,
428
489
  submitForm: submitForm,
429
- resetForm: resetForm
490
+ resetForm: resetForm,
491
+ resetErrors: resetErrors,
492
+ validateFieldState: validateFieldState,
493
+ validateValue: validateField,
494
+ getFieldsValue: getFieldsValue,
495
+ setFieldsValue: setFieldsValue,
496
+ getFieldsError: getFieldsError
430
497
  });
431
498
  }; // TODO: field 支持数组
432
499
 
@@ -499,20 +566,29 @@ var useCollection = function useCollection() {
499
566
  return new Map();
500
567
  }, []);
501
568
  var collectionRef = useRef(collectionMp);
502
- var register = useCallback(function (key, value) {
503
- collectionRef.current.set(key, value);
569
+ var register = useCallback(function (keyOrKeys, value) {
570
+ collectionRef.current.set(stringify(keyOrKeys), value);
504
571
  }, []);
505
- var unregister = useCallback(function (key) {
506
- collectionRef.current["delete"](key);
572
+ var unregister = useCallback(function (keyOrKeys) {
573
+ collectionRef.current["delete"](stringify(keyOrKeys));
507
574
  }, []);
508
- var getCollection = useCallback(function (key) {
575
+ var getCollection = useCallback(function (keyOrKeys) {
576
+ var key = stringify(keyOrKeys);
577
+
509
578
  if (collectionRef.current.has(key)) {
510
579
  return collectionRef.current.get(key);
511
580
  }
512
581
 
513
582
  return null;
514
583
  }, []);
515
- return [getCollection, register, unregister];
584
+ var getRegisteredKeys = useCallback(function () {
585
+ var keys = [];
586
+ collectionRef.current.forEach(function (_, key) {
587
+ keys.push(parse(key));
588
+ });
589
+ return keys;
590
+ }, []);
591
+ return [getCollection, register, unregister, getRegisteredKeys];
516
592
  };
517
593
 
518
594
  export { useForm };
@@ -1 +1 @@
1
- {"version":3,"file":"use-form.js","sources":["../../src/use-form.ts"],"sourcesContent":[null],"names":["EMPTY_RULES","EMPTY_ERRORS","EMPTY_TOUCHED","DEFAULT_VALIDATE_TRIGGER","useForm","_a","initialValues","initialErrors","initialTouched","onValuesChange","onReset","onSubmit","rules","validateAfterTouched","validateTrigger","validateTriggerProp","rest","isArray","validateTriggersMemo","useMemo","useCollection","getValidation","registerField","unregisterField","useReducer","formReducer","values","errors","touched","validating","submitting","formState","formDispatch","formStateRef","useLatestRef","getFieldNames","useCallback","Object","keys","current","getFieldValue","fieldName","getFieldError","setFieldError","field","errorMessage","type","payload","value","setFieldTouched","validateField","fieldValidation","errorResultAsPromise","validate","console","log","then","result","errorMsg","fields","message","validateFieldState","validateAll","fieldNames","Promise","all","map","setFieldValue","shouldValidate","shouldValidateField","normalizeValueFromChange","eventOrValue","target","handleFieldChange","valueCollectPipe","evt","nextValue","isFunction","handleFieldBlur","handleFieldTrigger","initialValuesRef","useRef","initialErrorsRef","initialTouchedRef","onResetLatestRef","resetForm","nextState","dispatchFn","submitForm","combinedErrors","isInstanceOfError","Error","isActuallyValid","length","promiseOrUndefined","error","undefined","resolve","_errors","handleSubmit","stopEvent","handleReset","setFormState","React","stateOrFunc","getRootProps","useLatestCallback","getFieldProps","props","ref","valuePropName","valueCollectPropName","onBlur","validateOnCollect","includes","validateOnBlur","returnProps","getNested","callAllFuncs","invalid","filter","triggerName","indexOf","forEach","getFieldRules","state","action","setNested","collectionMp","Map","collectionRef","register","key","set","unregister","getCollection","has","get"],"mappings":"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"}
1
+ {"version":3,"file":"use-form.js","sources":["../../src/use-form.ts"],"sourcesContent":[null],"names":["EMPTY_RULES","EMPTY_ERRORS","EMPTY_TOUCHED","DEFAULT_VALIDATE_TRIGGER","useForm","_a","initialValues","initialErrors","initialTouched","onValuesChange","onReset","onSubmit","rules","validateAfterTouched","validateTrigger","validateTriggerProp","rest","isArray","validateTriggersMemo","useMemo","useCollection","getValidation","registerField","unregisterField","getRegisteredKeys","useReducer","formReducer","values","errors","touched","validating","submitting","formState","formDispatch","formStateRef","useLatestRef","getFieldValue","useCallback","fieldName","getNested","current","getFieldsValue","getFieldError","getFieldsError","setFieldError","field","errorMessage","type","payload","value","setFieldTouched","validateField","fieldValidation","errorResultAsPromise","validate","then","result","setNested","errorMsg","fields","stringify","message","validateFieldState","validateAll","fieldNames","Promise","all","map","setFieldValue","shouldValidate","shouldValidateField","setFieldsValue","Object","entries","forEach","normalizeValueFromChange","eventOrValue","valuePropName","nextValue","isObjectLike","target","event","isFunction","persist","currentTarget","test","checked","handleFieldChange","valueCollectPipe","evt","changedValues","allValues","handleFieldBlur","handleFieldTrigger","initialValuesRef","useRef","initialErrorsRef","initialTouchedRef","onResetLatestRef","resetForm","nextState","dispatchFn","submitForm","combinedErrors","isInstanceOfError","Error","isActuallyValid","promiseOrUndefined","error","undefined","resolve","_errors","handleSubmit","stopEvent","handleReset","resetErrors","setFormState","React","stateOrFunc","getRootProps","useLatestCallback","getFieldProps","props","ref","valueCollectPropName","valueSyncPipe","children","controlProps","validateOnCollect","includes","validateOnBlur","controlledValue","returnProps","callAllFuncs","onBlur","invalid","triggerName","indexOf","getFieldRules","validateValue","state","action","collectionMp","Map","collectionRef","register","keyOrKeys","set","unregister","getCollection","key","has","get","keys","_","push","parse"],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /** @LICENSE
2
+ * @hi-ui/form
3
+ * https://github.com/XiaoMi/hiui/tree/master/packages/ui/form#readme
4
+ *
5
+ * Copyright (c) HIUI <mi-hiui@xiaomi.com>.
6
+ *
7
+ * This source code is licensed under the MIT license found in the
8
+ * LICENSE file in the root directory of this source tree.
9
+ */
10
+ var stringify = function stringify(field) {
11
+ return JSON.stringify(field);
12
+ };
13
+
14
+ var parse = function parse(fieldStr) {
15
+ return JSON.parse(fieldStr);
16
+ };
17
+
18
+ export { parse, stringify };
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../src/utils/index.ts"],"sourcesContent":[null],"names":["stringify","field","JSON","parse","fieldStr"],"mappings":";;;;;;;;;IAQaA,SAAS,GAAG,SAAZA,SAAY,CAACC,KAAD;SAChBC,IAAI,CAACF,SAALE,CAAeD,KAAfC;;;IAGIC,KAAK,GAAG,SAARA,KAAQ,CAACC,QAAD;SACZF,IAAI,CAACC,KAALD,CAAWE,QAAXF;;;"}
@@ -3,6 +3,7 @@ import { ButtonProps } from '@hi-ui/button';
3
3
  /**
4
4
  * TODO: What is FormReset
5
5
  */
6
- export declare const FormReset: React.ForwardRefExoticComponent<FormResetProps & React.RefAttributes<HTMLDivElement | null>>;
6
+ export declare const FormReset: React.ForwardRefExoticComponent<FormResetProps & React.RefAttributes<HTMLButtonElement | null>>;
7
7
  export interface FormResetProps extends ButtonProps {
8
+ onClick?: () => void;
8
9
  }
@@ -3,6 +3,7 @@ import { ButtonProps } from '@hi-ui/button';
3
3
  /**
4
4
  * TODO: What is FormSubmit
5
5
  */
6
- export declare const FormSubmit: React.ForwardRefExoticComponent<FormLabelProps & React.RefAttributes<HTMLDivElement | null>>;
7
- export interface FormLabelProps extends ButtonProps {
6
+ export declare const FormSubmit: React.ForwardRefExoticComponent<FormLabelProps & React.RefAttributes<HTMLAnchorElement | HTMLButtonElement | null>>;
7
+ export interface FormLabelProps extends Omit<ButtonProps, 'onClick'> {
8
+ onClick?: (value: any, error: any) => void;
8
9
  }
@@ -1,25 +1,32 @@
1
1
  /// <reference types="react" />
2
2
  export declare const FormProvider: import("react").Provider<Omit<{
3
3
  setFormState: (stateOrFunc: import("./types").FormSetState<unknown>) => void;
4
- setFieldValue: (field: string, value: unknown, shouldValidate?: boolean | undefined) => void;
4
+ setFieldValue: (field: import("./types").FormFieldPath, value: unknown, shouldValidate?: boolean | undefined) => void;
5
5
  setFieldError: (field: import("./types").FormFieldPath, errorMessage: string | undefined) => void;
6
6
  setFieldTouched: (field: import("./types").FormFieldPath, touched?: any) => void;
7
- getFieldError: (fieldName: string) => unknown;
8
- getFieldRules: (fieldName: string) => import("async-validator").RuleItem[];
7
+ getFieldValue: (fieldName: import("./types").FormFieldPath) => any;
8
+ getFieldError: (fieldName: import("./types").FormFieldPath) => any;
9
+ getFieldRules: (fieldName: import("./types").FormFieldPath) => any;
9
10
  getRootProps: () => {
10
- onSubmit: (evt?: import("react").FormEvent<HTMLFormElement> | undefined) => void;
11
+ onSubmit: (evt?: import("react").FormEvent<HTMLFormElement> | undefined) => Promise<unknown>;
11
12
  onReset: (evt?: import("react").FormEvent<HTMLFormElement> | undefined) => void;
12
13
  };
13
14
  getFieldProps: (props?: any, ref?: any) => {
14
- [x: number]: unknown;
15
+ [x: number]: any;
15
16
  ref: any;
16
17
  onBlur: (...args: any) => void;
17
- invalid: unknown;
18
+ invalid: any;
18
19
  };
19
- registerField: (key: string, value: import("./types").FormFieldCollection<unknown>) => void;
20
- unregisterField: (key: string) => void;
21
- submitForm: () => Promise<undefined>;
20
+ registerField: (keyOrKeys: import("./types").FormFieldPath, value: import("./types").FormFieldCollection<unknown>) => void;
21
+ unregisterField: (keyOrKeys: import("./types").FormFieldPath) => void;
22
+ submitForm: () => Promise<unknown>;
22
23
  resetForm: (nextState?: Partial<import("./types").FormState<any>> | undefined) => Promise<void>;
24
+ resetErrors: () => void;
25
+ validateFieldState: (field: import("./types").FormFieldPath) => Promise<{} | undefined>;
26
+ validateValue: (field: import("./types").FormFieldPath, value: unknown) => Promise<{} | undefined>;
27
+ getFieldsValue: () => any;
28
+ setFieldsValue: (fields: Record<string, any>, shouldValidate?: boolean | undefined) => void;
29
+ getFieldsError: () => any;
23
30
  values: unknown;
24
31
  errors: import("./types").FormErrors<unknown>;
25
32
  touched: import("./types").FormTouched<unknown>;
@@ -28,25 +35,32 @@ export declare const FormProvider: import("react").Provider<Omit<{
28
35
  }, "rootProps"> | null>;
29
36
  export declare const useFormContext: () => Omit<{
30
37
  setFormState: (stateOrFunc: import("./types").FormSetState<unknown>) => void;
31
- setFieldValue: (field: string, value: unknown, shouldValidate?: boolean | undefined) => void;
38
+ setFieldValue: (field: import("./types").FormFieldPath, value: unknown, shouldValidate?: boolean | undefined) => void;
32
39
  setFieldError: (field: import("./types").FormFieldPath, errorMessage: string | undefined) => void;
33
40
  setFieldTouched: (field: import("./types").FormFieldPath, touched?: any) => void;
34
- getFieldError: (fieldName: string) => unknown;
35
- getFieldRules: (fieldName: string) => import("async-validator").RuleItem[];
41
+ getFieldValue: (fieldName: import("./types").FormFieldPath) => any;
42
+ getFieldError: (fieldName: import("./types").FormFieldPath) => any;
43
+ getFieldRules: (fieldName: import("./types").FormFieldPath) => any;
36
44
  getRootProps: () => {
37
- onSubmit: (evt?: import("react").FormEvent<HTMLFormElement> | undefined) => void;
45
+ onSubmit: (evt?: import("react").FormEvent<HTMLFormElement> | undefined) => Promise<unknown>;
38
46
  onReset: (evt?: import("react").FormEvent<HTMLFormElement> | undefined) => void;
39
47
  };
40
48
  getFieldProps: (props?: any, ref?: any) => {
41
- [x: number]: unknown;
49
+ [x: number]: any;
42
50
  ref: any;
43
51
  onBlur: (...args: any) => void;
44
- invalid: unknown;
52
+ invalid: any;
45
53
  };
46
- registerField: (key: string, value: import("./types").FormFieldCollection<unknown>) => void;
47
- unregisterField: (key: string) => void;
48
- submitForm: () => Promise<undefined>;
54
+ registerField: (keyOrKeys: import("./types").FormFieldPath, value: import("./types").FormFieldCollection<unknown>) => void;
55
+ unregisterField: (keyOrKeys: import("./types").FormFieldPath) => void;
56
+ submitForm: () => Promise<unknown>;
49
57
  resetForm: (nextState?: Partial<import("./types").FormState<any>> | undefined) => Promise<void>;
58
+ resetErrors: () => void;
59
+ validateFieldState: (field: import("./types").FormFieldPath) => Promise<{} | undefined>;
60
+ validateValue: (field: import("./types").FormFieldPath, value: unknown) => Promise<{} | undefined>;
61
+ getFieldsValue: () => any;
62
+ setFieldsValue: (fields: Record<string, any>, shouldValidate?: boolean | undefined) => void;
63
+ getFieldsError: () => any;
50
64
  values: unknown;
51
65
  errors: import("./types").FormErrors<unknown>;
52
66
  touched: import("./types").FormTouched<unknown>;
@@ -3,4 +3,6 @@ export * from './Form';
3
3
  export { Form as default } from './Form';
4
4
  export * from './FormItem';
5
5
  export * from './FormList';
6
+ export * from './FormSubmit';
7
+ export * from './FormReset';
6
8
  export * from './types';
@@ -76,38 +76,60 @@ export declare type FormValidateFunction<T = any> = (value: T) => string | Promi
76
76
  export interface FormFieldCollection<T> {
77
77
  validate: (value: any) => Promise<T>;
78
78
  }
79
- export declare type FormRuleModel = RuleItem;
79
+ export interface FormRuleModel extends RuleItem {
80
+ trigger?: string | string[];
81
+ }
80
82
  export declare type FormRuleType = 'string' | 'number' | 'boolean' | 'method' | 'regexp' | 'integer' | 'float' | 'array' | 'object' | 'enum' | 'date' | 'url' | 'hex' | 'email' | 'any';
81
83
  export interface FormHelpers<T = any> {
82
- validate: FormValidateFunction<T>;
83
84
  /**
84
85
  * 对整个表单进行校验, 对应 Form.Submit中的 API
85
86
  */
86
- submit?: () => Promise<any>;
87
+ validate: () => Promise<T>;
87
88
  /**
88
89
  * 重置整个表单的验证,对应 Form.Reset中的 API
89
90
  */
90
- reset?: (fields: [], toDefault: boolean) => Promise<any>;
91
+ reset: (fields?: [], toDefault?: boolean) => Promise<T>;
92
+ /**
93
+ * 对指定表单字段进行校验
94
+ */
95
+ validateField: (fields?: string[] | string) => Promise<T>;
91
96
  /**
92
97
  * 对指定表单字段进行校验
93
98
  */
94
- validateFields?: (fields?: string[] | string) => Promise<any>;
99
+ validateFields: (fields?: string[] | string) => Promise<T>;
95
100
  /**
96
101
  * 设置表单的值,在异步获取的数据回显的时候,使用该方法
97
102
  */
98
- setFieldsValue?: (field: string, value: any) => void;
103
+ setFieldValue: (field: string, value: any) => void;
104
+ /**
105
+ * 设置多个表单的值,在异步获取的数据回显的时候,使用该方法
106
+ */
107
+ setFieldsValue: (field: Record<string, any>) => void;
99
108
  /**
100
- * 获取一组字段名对应的 Values 返回为数组形式, 不传入 fields;默认返回全部信息, 不会触发表单校验
109
+ * 获取一个字段名对应的 Values 返回为数组形式, 不传入 fields;默认返回全部信息, 不会触发表单校验
101
110
  */
102
- getFieldsValue?: (field: string) => any;
111
+ getFieldValue: (field: string) => any;
112
+ /**
113
+ * 获取所有字段名对应的 Values 返回为数组形式, 不传入 fields;默认返回全部信息, 不会触发表单校验
114
+ */
115
+ getFieldsValue: () => any;
103
116
  /**
104
117
  * 获取一组字段名对应的错误信息,返回为数组形式, 不传入 fields;默认返回全部信息
105
118
  */
106
- getFieldsError?: (field: string) => any;
119
+ getFieldError: (field: string) => any;
120
+ /**
121
+ * 获取所有字段名对应的错误信息,返回为数组形式, 不传入 fields;默认返回全部信息
122
+ */
123
+ getFieldsError: () => any;
124
+ /**
125
+ * 移除所有表单项的校验结果
126
+ */
127
+ clearValidates: () => void;
107
128
  /**
108
- * 移除表单项的校验结果。传入待移除的表单项的 field 属性组成的数组,如不传则移除整个表单的校验结果
129
+ * 移除表单项的校验结果,传入待移除的表单项的 field 属性组成的数组
109
130
  */
110
- clearValidates?: (fields: string[]) => void;
131
+ clearFieldsValidates: (fields: string[]) => void;
111
132
  }
112
- export declare type FormFieldPath = React.ReactText[] | React.ReactText;
133
+ export declare type FormFieldPath = (string | number)[] | string | number;
113
134
  export declare type FormErrorMessage = string;
135
+ export declare type FormRules = Record<string, FormRuleModel[]>;