@sheinx/base 3.9.7 → 3.9.8-beta.2

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":"form-field.d.ts","sourceRoot":"","sources":["form-field.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAqB,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGtE,QAAA,MAAM,SAAS,gGAmHd,CAAC;AAEF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"form-field.d.ts","sourceRoot":"","sources":["form-field.tsx"],"names":[],"mappings":"AAWA,OAAO,EAAqB,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGtE,QAAA,MAAM,SAAS,gGAsId,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -13,8 +13,13 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
13
13
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
14
14
  var FormField = function FormField(props) {
15
15
  var _childrenProps$error, _childrenProps$status;
16
- var children = props.children;
16
+ var children = props.children,
17
+ fieldValidateTrigger = props.validateTrigger;
17
18
  var formConfig = (0, _hooks.useFormConfig)();
19
+ var formFunc = (0, _hooks.useFormFunc)();
20
+
21
+ // 获取最终的 validateTrigger: 优先使用字段级配置,其次使用 Form 级配置,默认为 'change'
22
+ var validateTrigger = fieldValidateTrigger || formConfig.validateTrigger || 'change';
18
23
  var getValidateProps = (0, _hooks.usePersistFn)(function () {
19
24
  if (props.getValidateProps) return props.getValidateProps();
20
25
  return props;
@@ -42,6 +47,18 @@ var FormField = function FormField(props) {
42
47
  formControl.onChange.apply(formControl, [value].concat(args));
43
48
  }
44
49
  });
50
+ var handleBlur = (0, _hooks.usePersistFn)(function (e) {
51
+ // 先调用原始的 onBlur
52
+ var originalOnBlur = /*#__PURE__*/_react.default.isValidElement(children) ? children.props.onBlur : undefined;
53
+ originalOnBlur === null || originalOnBlur === void 0 || originalOnBlur(e);
54
+
55
+ // 根据 validateTrigger 配置决定是否在失焦时触发校验
56
+ // 只有 'change-blur' 模式才在失焦时触发校验
57
+ var shouldValidateOnBlur = validateTrigger === 'change-blur';
58
+ if (shouldValidateOnBlur && formControl.inForm && formControl.name && formFunc !== null && formFunc !== void 0 && formFunc.validateFields) {
59
+ formFunc.validateFields(formControl.name).catch(function () {});
60
+ }
61
+ });
45
62
  var childrenProps = /*#__PURE__*/_react.default.isValidElement(children) ? children.props : {};
46
63
  var error = (_childrenProps$error = childrenProps.error) !== null && _childrenProps$error !== void 0 ? _childrenProps$error : formControl.error;
47
64
  var status = (_childrenProps$status = childrenProps.status) !== null && _childrenProps$status !== void 0 ? _childrenProps$status : formControl.error ? 'error' : undefined;
@@ -66,6 +83,7 @@ var FormField = function FormField(props) {
66
83
  }, [fieldsetPath, formConfig.formName]);
67
84
  var cloneProps = {
68
85
  onChange: handleChange,
86
+ onBlur: handleBlur,
69
87
  status: status,
70
88
  error: error
71
89
  };
@@ -3,6 +3,7 @@ import { BaseFormControlProps, FormItemRule, ObjectType } from '@sheinx/hooks';
3
3
  export interface FieldControlProps<T> {
4
4
  value?: T;
5
5
  onChange: (value: T, ...rest: any) => void;
6
+ onBlur?: React.FocusEventHandler<any>;
6
7
  status?: 'error';
7
8
  disabled?: boolean;
8
9
  error?: {
@@ -32,6 +33,12 @@ export interface FormFieldProps<T> extends Partial<BaseFormControlProps<T>> {
32
33
  * @override RuleItem[]
33
34
  */
34
35
  rules?: FormItemRule<any>;
36
+ /**
37
+ * @en Controls when to trigger field validation. If not set, inherits from Form's validateTrigger. 'change' triggers validation on value change only, 'change-blur' triggers validation on both value change and blur. Overrides Form's global validateTrigger setting for this specific field
38
+ * @cn 控制字段校验的触发时机。如果未设置,则继承 Form 的 validateTrigger。'change' 仅在值改变时触发校验,'change-blur' 在值改变和失焦时都触发校验。会覆盖 Form 的全局 validateTrigger 设置
39
+ * @version 3.9.8
40
+ */
41
+ validateTrigger?: 'change' | 'change-blur';
35
42
  /**
36
43
  * @en The form control to render. Can be either a React element with value/onChange props or a render function. When using render function, it receives an object with: value (current field value), onChange (value change handler), error (validation error), disabled (inherited from form), status (field status). Perfect for custom components, third-party controls, or complex input scenarios
37
44
  * @cn 要渲染的表单控件。可以是具有 value/onChange 属性的 React 元素,或渲染函数。使用渲染函数时,会接收包含以下属性的对象:value(当前字段值)、onChange(值变更处理器)、error(校验错误)、disabled(继承自表单)、status(字段状态)。适用于自定义组件、第三方控件或复杂输入场景
@@ -1 +1 @@
1
- {"version":3,"file":"form-field.type.d.ts","sourceRoot":"","sources":["form-field.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE/E,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAC;CACvC;AAED,MAAM,MAAM,qBAAqB,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,YAAY,CAAC;AAE3F,MAAM,WAAW,cAAc,CAAC,CAAC,CAAE,SAAQ,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;IACzE;;;OAGG;IACH,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACxB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,CAAC;IACjB;;;;OAIG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;IAC1B;;;;;OAKG;IACH,QAAQ,EACJ,KAAK,CAAC,YAAY,CAAC;QAAE,KAAK,CAAC,EAAE,GAAG,CAAC;QAAC,QAAQ,CAAC,EAAE,GAAG,CAAC;QAAC,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC,GACxE,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC5C;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAClC;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,UAAU,CAAC;CACrC"}
1
+ {"version":3,"file":"form-field.type.d.ts","sourceRoot":"","sources":["form-field.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE/E,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC3C,MAAM,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAC;CACvC;AAED,MAAM,MAAM,qBAAqB,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,YAAY,CAAC;AAE3F,MAAM,WAAW,cAAc,CAAC,CAAC,CAAE,SAAQ,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;IACzE;;;OAGG;IACH,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACxB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,CAAC;IACjB;;;;OAIG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;IAC1B;;;;OAIG;IACH,eAAe,CAAC,EAAE,QAAQ,GAAG,aAAa,CAAC;IAC3C;;;;;OAKG;IACH,QAAQ,EACJ,KAAK,CAAC,YAAY,CAAC;QAAE,KAAK,CAAC,EAAE,GAAG,CAAC;QAAC,QAAQ,CAAC,EAAE,GAAG,CAAC;QAAC,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC,GACxE,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC5C;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAClC;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,UAAU,CAAC;CACrC"}
@@ -1 +1 @@
1
- {"version":3,"file":"input-group.d.ts","sourceRoot":"","sources":["input-group.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;gCAe9B,eAAe;AAAtC,wBAsFE"}
1
+ {"version":3,"file":"input-group.d.ts","sourceRoot":"","sources":["input-group.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;gCAe9B,eAAe;AAAtC,wBA4FE"}
@@ -123,6 +123,12 @@ var _default = exports.default = function _default(props) {
123
123
  additionalProps.innerTitle = child.props.innerTitle || innerTitle;
124
124
  additionalProps.placeTitle = child.props.placeTitle || placeTitle;
125
125
  }
126
+
127
+ // 兼容旧版 Input.Group 透传 name 和 rules 的行为
128
+ if (displayName && displayName.includes('Shineout')) {
129
+ additionalProps.name = child.props.name || props.name;
130
+ additionalProps.rules = child.props.rules || props.rules;
131
+ }
126
132
  return /*#__PURE__*/(0, _react.cloneElement)(child, additionalProps);
127
133
  }
128
134
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
@@ -1 +1 @@
1
- {"version":3,"file":"form-field.d.ts","sourceRoot":"","sources":["form-field.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAqB,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGtE,QAAA,MAAM,SAAS,gGAmHd,CAAC;AAEF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"form-field.d.ts","sourceRoot":"","sources":["form-field.tsx"],"names":[],"mappings":"AAWA,OAAO,EAAqB,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGtE,QAAA,MAAM,SAAS,gGAsId,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -1,11 +1,16 @@
1
1
  import React, { useContext, useMemo } from 'react';
2
- import { useFormConfig, useFormControl, usePersistFn, util, FieldsetContext, FormItemContext, useFormSchema } from '@sheinx/hooks';
2
+ import { useFormConfig, useFormControl, usePersistFn, util, FieldsetContext, FormItemContext, useFormSchema, useFormFunc } from '@sheinx/hooks';
3
3
  import { FormFieldContext } from "./form-field-context";
4
4
  import { jsx as _jsx } from "react/jsx-runtime";
5
5
  var FormField = function FormField(props) {
6
6
  var _childrenProps$error, _childrenProps$status;
7
- var children = props.children;
7
+ var children = props.children,
8
+ fieldValidateTrigger = props.validateTrigger;
8
9
  var formConfig = useFormConfig();
10
+ var formFunc = useFormFunc();
11
+
12
+ // 获取最终的 validateTrigger: 优先使用字段级配置,其次使用 Form 级配置,默认为 'change'
13
+ var validateTrigger = fieldValidateTrigger || formConfig.validateTrigger || 'change';
9
14
  var getValidateProps = usePersistFn(function () {
10
15
  if (props.getValidateProps) return props.getValidateProps();
11
16
  return props;
@@ -33,6 +38,18 @@ var FormField = function FormField(props) {
33
38
  formControl.onChange.apply(formControl, [value].concat(args));
34
39
  }
35
40
  });
41
+ var handleBlur = usePersistFn(function (e) {
42
+ // 先调用原始的 onBlur
43
+ var originalOnBlur = /*#__PURE__*/React.isValidElement(children) ? children.props.onBlur : undefined;
44
+ originalOnBlur === null || originalOnBlur === void 0 || originalOnBlur(e);
45
+
46
+ // 根据 validateTrigger 配置决定是否在失焦时触发校验
47
+ // 只有 'change-blur' 模式才在失焦时触发校验
48
+ var shouldValidateOnBlur = validateTrigger === 'change-blur';
49
+ if (shouldValidateOnBlur && formControl.inForm && formControl.name && formFunc !== null && formFunc !== void 0 && formFunc.validateFields) {
50
+ formFunc.validateFields(formControl.name).catch(function () {});
51
+ }
52
+ });
36
53
  var childrenProps = /*#__PURE__*/React.isValidElement(children) ? children.props : {};
37
54
  var error = (_childrenProps$error = childrenProps.error) !== null && _childrenProps$error !== void 0 ? _childrenProps$error : formControl.error;
38
55
  var status = (_childrenProps$status = childrenProps.status) !== null && _childrenProps$status !== void 0 ? _childrenProps$status : formControl.error ? 'error' : undefined;
@@ -57,6 +74,7 @@ var FormField = function FormField(props) {
57
74
  }, [fieldsetPath, formConfig.formName]);
58
75
  var cloneProps = {
59
76
  onChange: handleChange,
77
+ onBlur: handleBlur,
60
78
  status: status,
61
79
  error: error
62
80
  };
@@ -3,6 +3,7 @@ import { BaseFormControlProps, FormItemRule, ObjectType } from '@sheinx/hooks';
3
3
  export interface FieldControlProps<T> {
4
4
  value?: T;
5
5
  onChange: (value: T, ...rest: any) => void;
6
+ onBlur?: React.FocusEventHandler<any>;
6
7
  status?: 'error';
7
8
  disabled?: boolean;
8
9
  error?: {
@@ -32,6 +33,12 @@ export interface FormFieldProps<T> extends Partial<BaseFormControlProps<T>> {
32
33
  * @override RuleItem[]
33
34
  */
34
35
  rules?: FormItemRule<any>;
36
+ /**
37
+ * @en Controls when to trigger field validation. If not set, inherits from Form's validateTrigger. 'change' triggers validation on value change only, 'change-blur' triggers validation on both value change and blur. Overrides Form's global validateTrigger setting for this specific field
38
+ * @cn 控制字段校验的触发时机。如果未设置,则继承 Form 的 validateTrigger。'change' 仅在值改变时触发校验,'change-blur' 在值改变和失焦时都触发校验。会覆盖 Form 的全局 validateTrigger 设置
39
+ * @version 3.9.8
40
+ */
41
+ validateTrigger?: 'change' | 'change-blur';
35
42
  /**
36
43
  * @en The form control to render. Can be either a React element with value/onChange props or a render function. When using render function, it receives an object with: value (current field value), onChange (value change handler), error (validation error), disabled (inherited from form), status (field status). Perfect for custom components, third-party controls, or complex input scenarios
37
44
  * @cn 要渲染的表单控件。可以是具有 value/onChange 属性的 React 元素,或渲染函数。使用渲染函数时,会接收包含以下属性的对象:value(当前字段值)、onChange(值变更处理器)、error(校验错误)、disabled(继承自表单)、status(字段状态)。适用于自定义组件、第三方控件或复杂输入场景
@@ -1 +1 @@
1
- {"version":3,"file":"form-field.type.d.ts","sourceRoot":"","sources":["form-field.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE/E,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAC;CACvC;AAED,MAAM,MAAM,qBAAqB,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,YAAY,CAAC;AAE3F,MAAM,WAAW,cAAc,CAAC,CAAC,CAAE,SAAQ,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;IACzE;;;OAGG;IACH,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACxB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,CAAC;IACjB;;;;OAIG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;IAC1B;;;;;OAKG;IACH,QAAQ,EACJ,KAAK,CAAC,YAAY,CAAC;QAAE,KAAK,CAAC,EAAE,GAAG,CAAC;QAAC,QAAQ,CAAC,EAAE,GAAG,CAAC;QAAC,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC,GACxE,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC5C;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAClC;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,UAAU,CAAC;CACrC"}
1
+ {"version":3,"file":"form-field.type.d.ts","sourceRoot":"","sources":["form-field.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE/E,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC3C,MAAM,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAC;CACvC;AAED,MAAM,MAAM,qBAAqB,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,YAAY,CAAC;AAE3F,MAAM,WAAW,cAAc,CAAC,CAAC,CAAE,SAAQ,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;IACzE;;;OAGG;IACH,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACxB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,CAAC;IACjB;;;;OAIG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;IAC1B;;;;OAIG;IACH,eAAe,CAAC,EAAE,QAAQ,GAAG,aAAa,CAAC;IAC3C;;;;;OAKG;IACH,QAAQ,EACJ,KAAK,CAAC,YAAY,CAAC;QAAE,KAAK,CAAC,EAAE,GAAG,CAAC;QAAC,QAAQ,CAAC,EAAE,GAAG,CAAC;QAAC,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC,GACxE,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC5C;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAClC;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,UAAU,CAAC;CACrC"}
@@ -1 +1 @@
1
- {"version":3,"file":"input-group.d.ts","sourceRoot":"","sources":["input-group.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;gCAe9B,eAAe;AAAtC,wBAsFE"}
1
+ {"version":3,"file":"input-group.d.ts","sourceRoot":"","sources":["input-group.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;gCAe9B,eAAe;AAAtC,wBA4FE"}
@@ -116,6 +116,12 @@ export default (function (props) {
116
116
  additionalProps.innerTitle = child.props.innerTitle || innerTitle;
117
117
  additionalProps.placeTitle = child.props.placeTitle || placeTitle;
118
118
  }
119
+
120
+ // 兼容旧版 Input.Group 透传 name 和 rules 的行为
121
+ if (displayName && displayName.includes('Shineout')) {
122
+ additionalProps.name = child.props.name || props.name;
123
+ additionalProps.rules = child.props.rules || props.rules;
124
+ }
119
125
  return /*#__PURE__*/cloneElement(child, additionalProps);
120
126
  }
121
127
  return /*#__PURE__*/_jsx("span", {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sheinx/base",
3
- "version": "3.9.7",
3
+ "version": "3.9.8-beta.2",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "license": "MIT",
@@ -10,7 +10,7 @@
10
10
  "module": "./esm/index.js",
11
11
  "typings": "./cjs/index.d.ts",
12
12
  "dependencies": {
13
- "@sheinx/hooks": "3.9.7",
13
+ "@sheinx/hooks": "3.9.8-beta.2",
14
14
  "immer": "^10.0.0",
15
15
  "classnames": "^2.0.0",
16
16
  "@shined/reactive": "^0.3.3"