@hi-ui/form 4.1.1 → 4.1.3

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.
@@ -9,63 +9,34 @@
9
9
  */
10
10
  'use strict';
11
11
 
12
- var _typeof = require("@babel/runtime/helpers/typeof");
13
-
14
- Object.defineProperty(exports, '__esModule', {
15
- value: true
16
- });
17
-
18
12
  var tslib = require('tslib');
19
-
20
13
  var React = require('react');
21
-
22
14
  var classname = require('@hi-ui/classname');
23
-
24
15
  var env = require('@hi-ui/env');
25
-
26
16
  var context = require('./context.js');
27
-
28
- function _interopDefaultLegacy(e) {
29
- return e && _typeof(e) === 'object' && 'default' in e ? e : {
30
- 'default': e
31
- };
32
- }
33
-
34
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
35
-
36
17
  var _role = 'form-message';
37
-
38
18
  var _prefix = classname.getPrefixCls(_role);
39
- /**
40
- * TODO: What is FormMessage
41
- */
42
-
43
-
44
19
  var FormMessage = /*#__PURE__*/React.forwardRef(function (_a, ref) {
45
20
  var _a$prefixCls = _a.prefixCls,
46
- prefixCls = _a$prefixCls === void 0 ? _prefix : _a$prefixCls,
47
- _a$role = _a.role,
48
- role = _a$role === void 0 ? _role : _a$role,
49
- className = _a.className,
50
- field = _a.field,
51
- rest = tslib.__rest(_a, ["prefixCls", "role", "className", "children", "field"]);
52
-
21
+ prefixCls = _a$prefixCls === void 0 ? _prefix : _a$prefixCls,
22
+ _a$role = _a.role,
23
+ role = _a$role === void 0 ? _role : _a$role,
24
+ className = _a.className,
25
+ field = _a.field,
26
+ rest = tslib.__rest(_a, ["prefixCls", "role", "className", "children", "field"]);
53
27
  var _useFormContext = context.useFormContext(),
54
- getFieldError = _useFormContext.getFieldError; // field 支持数组,递归去设置或者获取对象中的属性值
28
+ getFieldError = _useFormContext.getFieldError;
29
+ // field 支持数组,递归去设置或者获取对象中的属性值
55
30
  // 如何变成映射的 key,特殊处理化
56
-
57
-
58
31
  var message = field ? getFieldError(field) : null;
59
32
  var cls = classname.cx(prefixCls, className, message && prefixCls + "--show");
60
- return /*#__PURE__*/React__default["default"].createElement("span", Object.assign({
33
+ return /*#__PURE__*/React.createElement("span", Object.assign({
61
34
  ref: ref,
62
35
  role: role,
63
36
  className: cls
64
37
  }, rest), message);
65
38
  });
66
-
67
39
  if (env.__DEV__) {
68
40
  FormMessage.displayName = 'FormMessage';
69
41
  }
70
-
71
42
  exports.FormMessage = FormMessage;
@@ -9,54 +9,26 @@
9
9
  */
10
10
  'use strict';
11
11
 
12
- var _typeof = require("@babel/runtime/helpers/typeof");
13
-
14
- Object.defineProperty(exports, '__esModule', {
15
- value: true
16
- });
17
-
18
12
  var tslib = require('tslib');
19
-
20
13
  var React = require('react');
21
-
22
14
  var classname = require('@hi-ui/classname');
23
-
24
15
  var env = require('@hi-ui/env');
25
-
26
16
  var context = require('./context.js');
27
-
28
17
  var Button = require('@hi-ui/button');
29
-
30
- function _interopDefaultLegacy(e) {
31
- return e && _typeof(e) === 'object' && 'default' in e ? e : {
32
- 'default': e
33
- };
34
- }
35
-
36
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
37
-
38
- var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
39
-
40
18
  var FORM_RESET_PREFIX = classname.getPrefixCls('form-reset');
41
- /**
42
- * TODO: What is FormReset
43
- */
44
-
45
19
  var FormReset = /*#__PURE__*/React.forwardRef(function (_a, ref) {
46
20
  var _a$prefixCls = _a.prefixCls,
47
- prefixCls = _a$prefixCls === void 0 ? FORM_RESET_PREFIX : _a$prefixCls,
48
- className = _a.className,
49
- children = _a.children,
50
- _a$type = _a.type,
51
- type = _a$type === void 0 ? 'secondary' : _a$type,
52
- _onClick = _a.onClick,
53
- rest = tslib.__rest(_a, ["prefixCls", "className", "children", "type", "onClick"]);
54
-
21
+ prefixCls = _a$prefixCls === void 0 ? FORM_RESET_PREFIX : _a$prefixCls,
22
+ className = _a.className,
23
+ children = _a.children,
24
+ _a$type = _a.type,
25
+ type = _a$type === void 0 ? 'secondary' : _a$type,
26
+ _onClick = _a.onClick,
27
+ rest = tslib.__rest(_a, ["prefixCls", "className", "children", "type", "onClick"]);
55
28
  var _useFormContext = context.useFormContext(),
56
- resetForm = _useFormContext.resetForm;
57
-
29
+ resetForm = _useFormContext.resetForm;
58
30
  var cls = classname.cx(prefixCls, className);
59
- return /*#__PURE__*/React__default["default"].createElement(Button__default["default"], Object.assign({
31
+ return /*#__PURE__*/React.createElement(Button, Object.assign({
60
32
  ref: ref,
61
33
  className: cls,
62
34
  type: type
@@ -67,9 +39,7 @@ var FormReset = /*#__PURE__*/React.forwardRef(function (_a, ref) {
67
39
  }
68
40
  }), children);
69
41
  });
70
-
71
42
  if (env.__DEV__) {
72
43
  FormReset.displayName = 'FormReset';
73
44
  }
74
-
75
45
  exports.FormReset = FormReset;
@@ -9,59 +9,29 @@
9
9
  */
10
10
  'use strict';
11
11
 
12
- var _typeof = require("@babel/runtime/helpers/typeof");
13
-
14
- Object.defineProperty(exports, '__esModule', {
15
- value: true
16
- });
17
-
18
12
  var tslib = require('tslib');
19
-
20
13
  var React = require('react');
21
-
22
14
  var classname = require('@hi-ui/classname');
23
-
24
15
  var env = require('@hi-ui/env');
25
-
26
16
  var context = require('./context.js');
27
-
28
17
  var Button = require('@hi-ui/button');
29
-
30
- function _interopDefaultLegacy(e) {
31
- return e && _typeof(e) === 'object' && 'default' in e ? e : {
32
- 'default': e
33
- };
34
- }
35
-
36
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
37
-
38
- var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
39
-
40
18
  var _role = 'form-submit';
41
-
42
19
  var _prefix = classname.getPrefixCls(_role);
43
- /**
44
- * TODO: What is FormSubmit
45
- */
46
-
47
-
48
20
  var FormSubmit = /*#__PURE__*/React.forwardRef(function (_a, ref) {
49
21
  var _a$prefixCls = _a.prefixCls,
50
- prefixCls = _a$prefixCls === void 0 ? _prefix : _a$prefixCls,
51
- _a$role = _a.role,
52
- role = _a$role === void 0 ? _role : _a$role,
53
- className = _a.className,
54
- children = _a.children,
55
- _a$type = _a.type,
56
- type = _a$type === void 0 ? 'primary' : _a$type,
57
- _onClick = _a.onClick,
58
- rest = tslib.__rest(_a, ["prefixCls", "role", "className", "children", "type", "onClick"]);
59
-
22
+ prefixCls = _a$prefixCls === void 0 ? _prefix : _a$prefixCls,
23
+ _a$role = _a.role,
24
+ role = _a$role === void 0 ? _role : _a$role,
25
+ className = _a.className,
26
+ children = _a.children,
27
+ _a$type = _a.type,
28
+ type = _a$type === void 0 ? 'primary' : _a$type,
29
+ _onClick = _a.onClick,
30
+ rest = tslib.__rest(_a, ["prefixCls", "role", "className", "children", "type", "onClick"]);
60
31
  var _useFormContext = context.useFormContext(),
61
- submitForm = _useFormContext.submitForm;
62
-
32
+ submitForm = _useFormContext.submitForm;
63
33
  var cls = classname.cx(prefixCls, className);
64
- return /*#__PURE__*/React__default["default"].createElement(Button__default["default"], Object.assign({
34
+ return /*#__PURE__*/React.createElement(Button, Object.assign({
65
35
  ref: ref,
66
36
  role: role,
67
37
  className: cls,
@@ -80,9 +50,7 @@ var FormSubmit = /*#__PURE__*/React.forwardRef(function (_a, ref) {
80
50
  }
81
51
  }), children);
82
52
  });
83
-
84
53
  if (env.__DEV__) {
85
54
  FormSubmit.displayName = 'FormSubmit';
86
55
  }
87
-
88
56
  exports.FormSubmit = FormSubmit;
@@ -9,24 +9,15 @@
9
9
  */
10
10
  'use strict';
11
11
 
12
- Object.defineProperty(exports, '__esModule', {
13
- value: true
14
- });
15
-
16
12
  var React = require('react');
17
-
18
13
  var formContext = /*#__PURE__*/React.createContext(null);
19
14
  var FormProvider = formContext.Provider;
20
-
21
15
  var useFormContext = function useFormContext() {
22
16
  var context = React.useContext(formContext);
23
-
24
17
  if (!context) {
25
18
  throw new Error('The FormContext should using in Form.');
26
19
  }
27
-
28
20
  return context;
29
21
  };
30
-
31
22
  exports.FormProvider = FormProvider;
32
23
  exports.useFormContext = useFormContext;
package/lib/cjs/index.js CHANGED
@@ -12,19 +12,12 @@
12
12
  Object.defineProperty(exports, '__esModule', {
13
13
  value: true
14
14
  });
15
-
16
15
  require('./styles/index.scss.js');
17
-
18
16
  var Form$1 = require('./Form.js');
19
-
20
17
  var FormItem = require('./FormItem.js');
21
-
22
18
  var FormList = require('./FormList.js');
23
-
24
19
  var FormSubmit = require('./FormSubmit.js');
25
-
26
20
  var FormReset = require('./FormReset.js');
27
-
28
21
  var Form = Object.assign(Form$1.Form, {
29
22
  Item: FormItem.FormItem,
30
23
  List: FormList.FormList,
@@ -12,10 +12,7 @@
12
12
  Object.defineProperty(exports, '__esModule', {
13
13
  value: true
14
14
  });
15
- var css_248z = ".hi-v4-form {max-width: 100%;position: relative; }.hi-v4-form fieldset {margin: 0;padding: 0;border: 0; }.hi-v4-form fieldset + fieldset {margin-top: 16px; }.hi-v4-form legend {margin: 0 0 16px;color: var(--hi-v4-color-gray-800, #1f2937); }.hi-v4-form--placement-horizontal {display: -webkit-box;display: -ms-flexbox;display: flex;-ms-flex-wrap: wrap;flex-wrap: wrap;-webkit-column-gap: var(--hi-v4-spacing-10, 20px);-moz-column-gap: var(--hi-v4-spacing-10, 20px);column-gap: var(--hi-v4-spacing-10, 20px); }.hi-v4-form--placement-horizontal .hi-v4-form-label__indent {min-height: var(--hi-v4-height-8, 32px); }.hi-v4-form-label {font-size: var(--hi-v4-text-size-md, 0.875rem);-webkit-box-sizing: border-box;box-sizing: border-box;margin-right: 0; }.hi-v4-form-label__content {display: -webkit-box;display: -ms-flexbox;display: flex; }.hi-v4-form-label--placement-top > .hi-v4-form-label__content {text-align: left;-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;padding-right: 0; }.hi-v4-form-label__content__text, .hi-v4-form-label__content__indent {-ms-flex-negative: 0;flex-shrink: 0;-webkit-box-sizing: border-box;box-sizing: border-box;vertical-align: top;color: var(--hi-v4-color-gray-800, #1f2937);overflow-wrap: break-word; }.hi-v4-form-label__content__text {padding-right: var(--hi-v4-spacing-6, 12px);min-height: var(--hi-v4-height-8, 32px);line-height: var(--hi-v4-height-8, 32px); }.hi-v4-form-label--placement-left > .hi-v4-form-label__content > .hi-v4-form-label__content__text {text-align: left; }.hi-v4-form-label--placement-right > .hi-v4-form-label__content > .hi-v4-form-label__content__text {text-align: right; }.hi-v4-form-label--placement-top > .hi-v4-form-label__content > .hi-v4-form-label__content__text {height: 22px;min-height: 22px;line-height: 22px;padding-right: 0;margin-bottom: var(--hi-v4-spacing-4, 8px); }.hi-v4-form-label--required > .hi-v4-form-label__content > .hi-v4-form-label__content__text::before {margin-right: var(--hi-v4-spacing-2, 4px);content: '*';color: var(--hi-v4-color-danger-500, var(--hi-v4-color-red-500, #ff5959)); }.hi-v4-form-label__content__control {min-width: 1px; }.hi-v4-form-message {display: block;font-size: var(--hi-v4-text-size-md, 0.875rem);min-height: 24px;padding: 2px 0;-webkit-box-sizing: border-box;box-sizing: border-box;line-height: 20px;-webkit-transform: translateY(-10%);transform: translateY(-10%);opacity: 0;color: var(--hi-v4-color-danger-500, var(--hi-v4-color-red-500, #ff5959));-webkit-transition: all 0.3s;transition: all 0.3s; }.hi-v4-form-message--show {opacity: 1;-webkit-transform: translateY(0);transform: translateY(0); }.hi-v4-form-item {position: relative; }";
16
-
17
- var __styleInject__ = require('inject-head-style')["default"];
18
-
15
+ var css_248z = ".hi-v4-form {max-width: 100%;position: relative;}.hi-v4-form fieldset {margin: 0;padding: 0;border: 0;}.hi-v4-form fieldset + fieldset {margin-top: 16px;}.hi-v4-form legend {margin: 0 0 16px;color: var(--hi-v4-color-gray-800, #1f2937);}.hi-v4-form--placement-horizontal {display: -webkit-box;display: -ms-flexbox;display: flex;-ms-flex-wrap: wrap;flex-wrap: wrap;-webkit-column-gap: var(--hi-v4-spacing-10, 20px);-moz-column-gap: var(--hi-v4-spacing-10, 20px);column-gap: var(--hi-v4-spacing-10, 20px);}.hi-v4-form--placement-horizontal .hi-v4-form-label__indent {min-height: var(--hi-v4-height-8, 32px);}.hi-v4-form-label {font-size: var(--hi-v4-text-size-md, 0.875rem);-webkit-box-sizing: border-box;box-sizing: border-box;margin-right: 0;}.hi-v4-form-label__content {display: -webkit-box;display: -ms-flexbox;display: flex;}.hi-v4-form-label--placement-top > .hi-v4-form-label__content {text-align: left;-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;padding-right: 0;}.hi-v4-form-label__content__text, .hi-v4-form-label__content__indent {-ms-flex-negative: 0;flex-shrink: 0;-webkit-box-sizing: border-box;box-sizing: border-box;vertical-align: top;color: var(--hi-v4-color-gray-800, #1f2937);overflow-wrap: break-word;}.hi-v4-form-label__content__text {padding-right: var(--hi-v4-spacing-6, 12px);min-height: var(--hi-v4-height-8, 32px);line-height: var(--hi-v4-height-8, 32px);}.hi-v4-form-label--placement-left > .hi-v4-form-label__content > .hi-v4-form-label__content__text {text-align: left;}.hi-v4-form-label--placement-right > .hi-v4-form-label__content > .hi-v4-form-label__content__text {text-align: right;}.hi-v4-form-label--placement-top > .hi-v4-form-label__content > .hi-v4-form-label__content__text {height: 22px;min-height: 22px;line-height: 22px;padding-right: 0;margin-bottom: var(--hi-v4-spacing-4, 8px);}.hi-v4-form-label--required > .hi-v4-form-label__content > .hi-v4-form-label__content__text::before {margin-right: var(--hi-v4-spacing-2, 4px);content: \"*\";color: var(--hi-v4-color-danger-500, var(--hi-v4-color-red-500, #ff5959));}.hi-v4-form-label__content__control {min-width: 1px;}.hi-v4-form-message {display: block;font-size: var(--hi-v4-text-size-md, 0.875rem);min-height: 24px;padding: 2px 0;-webkit-box-sizing: border-box;box-sizing: border-box;line-height: 20px;-webkit-transform: translateY(-10%);transform: translateY(-10%);opacity: 0;color: var(--hi-v4-color-danger-500, var(--hi-v4-color-red-500, #ff5959));-webkit-transition: all 0.3s;transition: all 0.3s;}.hi-v4-form-message--show {opacity: 1;-webkit-transform: translateY(0);transform: translateY(0);}.hi-v4-form-item {position: relative;}";
16
+ var __styleInject__ = require('style-inject')["default"];
19
17
  __styleInject__(css_248z);
20
-
21
18
  exports["default"] = css_248z;
@@ -9,45 +9,22 @@
9
9
  */
10
10
  'use strict';
11
11
 
12
- var _typeof = require("@babel/runtime/helpers/typeof");
13
-
14
- Object.defineProperty(exports, '__esModule', {
15
- value: true
16
- });
17
-
18
12
  var React = require('react');
19
-
20
13
  var context = require('./context.js');
21
-
22
14
  var typeAssertion = require('@hi-ui/type-assertion');
23
-
24
15
  var Validater = require('async-validator');
25
-
26
16
  var arrayUtils = require('@hi-ui/array-utils');
27
-
28
17
  var index = require('./utils/index.js');
29
-
30
- function _interopDefaultLegacy(e) {
31
- return e && _typeof(e) === 'object' && 'default' in e ? e : {
32
- 'default': e
33
- };
34
- }
35
-
36
- var Validater__default = /*#__PURE__*/_interopDefaultLegacy(Validater);
37
-
38
18
  var useFiledRules = function useFiledRules(props) {
39
19
  var field = props.field,
40
- rulesProp = props.rules,
41
- _props$valueType = props.valueType,
42
- valueType = _props$valueType === void 0 ? 'any' : _props$valueType;
43
-
20
+ rulesProp = props.rules,
21
+ _props$valueType = props.valueType,
22
+ valueType = _props$valueType === void 0 ? 'any' : _props$valueType;
44
23
  var _useFormContext = context.useFormContext(),
45
- getFieldRules = _useFormContext.getFieldRules;
24
+ getFieldRules = _useFormContext.getFieldRules;
46
25
  /**
47
26
  * 处理校验规则,item 优先级大于 form
48
27
  */
49
-
50
-
51
28
  var fieldRules = React.useMemo(function () {
52
29
  // @ts-ignore
53
30
  var rules = arrayUtils.normalizeArray(rulesProp !== null && rulesProp !== void 0 ? rulesProp : getFieldRules(field));
@@ -59,33 +36,28 @@ var useFiledRules = function useFiledRules(props) {
59
36
  }, [rulesProp, field, getFieldRules, valueType]);
60
37
  return fieldRules;
61
38
  };
62
-
63
39
  var useFormField = function useFormField(props) {
64
40
  var field = props.field,
65
- valueType = props.valueType;
66
-
41
+ valueType = props.valueType;
67
42
  var _useFormContext2 = context.useFormContext(),
68
- getFieldProps = _useFormContext2.getFieldProps,
69
- registerField = _useFormContext2.registerField,
70
- unregisterField = _useFormContext2.unregisterField;
71
-
72
- var fieldRules = useFiledRules(props); // 当前 field 的唯一校验器
73
-
43
+ getFieldProps = _useFormContext2.getFieldProps,
44
+ registerField = _useFormContext2.registerField,
45
+ unregisterField = _useFormContext2.unregisterField;
46
+ var fieldRules = useFiledRules(props);
47
+ // 当前 field 的唯一校验器
74
48
  var fieldValidate = React.useCallback(function (value) {
75
49
  var _Validater, _validater$validate;
76
-
77
50
  if (!typeAssertion.isArrayNonEmpty(fieldRules)) {
78
51
  return Promise.resolve(null);
79
- } // TODO: rules 处理成 Async Validate 的指定结构
80
-
81
-
52
+ }
53
+ // TODO: rules 处理成 Async Validate 的指定结构
82
54
  var fieldMD5 = index.stringify(field);
83
- var validater = new Validater__default["default"]((_Validater = {}, _Validater[fieldMD5] = fieldRules, _Validater));
55
+ var validater = new Validater((_Validater = {}, _Validater[fieldMD5] = fieldRules, _Validater));
84
56
  return validater.validate((_validater$validate = {}, _validater$validate[fieldMD5] = valueType !== 'number' || value === '' ? value : isNaN(value) ? value : Number(value), _validater$validate), {
85
57
  firstFields: true
86
58
  });
87
- }, [fieldRules, field, valueType]); // 注入当前 field 及其验证规则到 Form
88
-
59
+ }, [fieldRules, field, valueType]);
60
+ // 注入当前 field 及其验证规则到 Form
89
61
  React.useEffect(function () {
90
62
  if (!index.isValidField(field)) return;
91
63
  registerField(field, {
@@ -98,6 +70,5 @@ var useFormField = function useFormField(props) {
98
70
  }, [registerField, unregisterField, field, fieldValidate]);
99
71
  return getFieldProps(props);
100
72
  };
101
-
102
73
  exports.useFiledRules = useFiledRules;
103
74
  exports.useFormField = useFormField;