shineout 3.9.7-beta.9 → 3.9.8-beta.1

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/cjs/index.js CHANGED
@@ -522,5 +522,5 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
522
522
  // 此文件由脚本自动生成,请勿直接修改。
523
523
  // This file was generated automatically by a script. Please do not modify it directly.
524
524
  var _default = exports.default = {
525
- version: '3.9.7-beta.9'
525
+ version: '3.9.8-beta.1'
526
526
  };
package/dist/shineout.js CHANGED
@@ -12401,7 +12401,7 @@ var handleStyle = function handleStyle(style) {
12401
12401
  };
12402
12402
  /* harmony default export */ var jss_style_handleStyle = (handleStyle);
12403
12403
  ;// CONCATENATED MODULE: ../shineout-style/src/version.ts
12404
- /* harmony default export */ var version = ('3.9.7-beta.9');
12404
+ /* harmony default export */ var version = ('3.9.8-beta.1');
12405
12405
  ;// CONCATENATED MODULE: ../shineout-style/src/jss-style/index.tsx
12406
12406
 
12407
12407
 
@@ -14332,8 +14332,8 @@ var messageTokens = {
14332
14332
  // This file was generated automatically by a script. Please do not modify it directly.
14333
14333
 
14334
14334
  var modalTokens = {
14335
- modalMaskBackground: 'rgba(2, 11, 24, 0.3)',
14336
- modalMaskLightBackground: 'rgba(2, 11, 24, 0.01)',
14335
+ modalMaskBackground: 'Mask-fill-1',
14336
+ modalMaskLightBackground: 'Neutral-mask-2',
14337
14337
  modalPanelPaddingY: 'Spacing-24',
14338
14338
  modalPanelPaddingX: 'Spacing-24',
14339
14339
  modalPanelBackground: 'Neutral-fill-1',
@@ -24210,7 +24210,7 @@ var selectStyle = objectSpread2_default()(objectSpread2_default()({
24210
24210
  fontSize: src.selectLargeFontSize
24211
24211
  },
24212
24212
  '& $optionGroupTitle': {
24213
- padding: "calc(".concat(src.selectFontSize, " + 2px) calc(").concat(src.selectOptionPaddingX, " + ").concat(src.selectLargeOptionInnerPaddingX, ") ").concat(src.selectGroupTitleLargeBottom, " calc(").concat(src.selectOptionPaddingX, " + ").concat(src.selectLargeOptionInnerPaddingX, ")")
24213
+ padding: "".concat(src.selectFontSize, " calc(").concat(src.selectOptionPaddingX, " + ").concat(src.selectLargeOptionInnerPaddingX, ") ").concat(src.selectGroupTitleLargeBottom, " calc(").concat(src.selectOptionPaddingX, " + ").concat(src.selectLargeOptionInnerPaddingX, ")")
24214
24214
  }
24215
24215
  },
24216
24216
  iconWrapper: {
@@ -24301,7 +24301,15 @@ var selectStyle = objectSpread2_default()(objectSpread2_default()({
24301
24301
  },
24302
24302
  moreIcon: {},
24303
24303
  hideTag: {},
24304
- list: {},
24304
+ list: {
24305
+ '--group-font-size': "calc(".concat(src.selectFontSize, " - 2px)"),
24306
+ '$pickerSmall &': {
24307
+ '--group-font-size': "".concat(src.selectSmallFontSize)
24308
+ },
24309
+ '$pickerLarge &': {
24310
+ '--group-font-size': "calc(".concat(src.selectLargeFontSize, " - 2px)")
24311
+ }
24312
+ },
24305
24313
  tree: {
24306
24314
  padding: '0 4px',
24307
24315
  overflow: 'auto'
@@ -24430,9 +24438,9 @@ var selectStyle = objectSpread2_default()(objectSpread2_default()({
24430
24438
  },
24431
24439
  optionGroup: {},
24432
24440
  optionGroupTitle: {
24433
- fontSize: src.selectGroupTitleFontSize,
24441
+ fontSize: "var(--group-font-size, ".concat(src.selectGroupTitleFontSize, ")"),
24434
24442
  lineHeight: src.lineHeightDynamic,
24435
- padding: "calc(".concat(src.selectFontSize, " - 4px) ").concat(src.selectGroupTitlePaddingX, " ").concat(src.selectGroupTitlePaddingBottom, " ").concat(src.selectGroupTitlePaddingX),
24443
+ padding: "calc(".concat(src.selectFontSize, " - 2px) ").concat(src.selectGroupTitlePaddingX, " ").concat(src.selectGroupTitlePaddingBottom, " ").concat(src.selectGroupTitlePaddingX),
24436
24444
  color: src.selectGroupTitleFontColor,
24437
24445
  fontWeight: src.selectGroupTitleFontWeight
24438
24446
  },
@@ -24825,8 +24833,8 @@ var sliderStyle = {
24825
24833
  }
24826
24834
  },
24827
24835
  valueHover: {
24828
- backgroundColor: src.sliderValueHoverBackgroundColor,
24829
- color: src.sliderValueHoverFontColor,
24836
+ backgroundColor: src.tooltipBackgroundColor,
24837
+ color: src.tooltipColor,
24830
24838
  padding: "".concat(src.sliderValueHoverPaddingY, " ").concat(src.sliderValueHoverPaddingX),
24831
24839
  lineHeight: src.lineHeightDynamic,
24832
24840
  borderRadius: src.sliderValueHoverRadius,
@@ -24843,7 +24851,7 @@ var sliderStyle = {
24843
24851
  height: 0,
24844
24852
  borderStyle: 'solid',
24845
24853
  borderWidth: '4px',
24846
- borderColor: "".concat(src.sliderValueHoverBackgroundColor, " transparent transparent transparent")
24854
+ borderColor: "".concat(src.tooltipBackgroundColor, " transparent transparent transparent")
24847
24855
  },
24848
24856
  '$vertical &': {
24849
24857
  '&::after': {
@@ -24851,7 +24859,7 @@ var sliderStyle = {
24851
24859
  right: '100%',
24852
24860
  left: 'unset',
24853
24861
  transform: 'translate(0, -50%)',
24854
- borderColor: "transparent ".concat(src.sliderValueHoverBackgroundColor, " transparent transparent ")
24862
+ borderColor: "transparent ".concat(src.tooltipBackgroundColor, " transparent transparent ")
24855
24863
  }
24856
24864
  },
24857
24865
  '$indicator:hover + &, $indicatorActive + &': {
@@ -29172,7 +29180,7 @@ var treeStyle = {
29172
29180
  position: 'absolute',
29173
29181
  width: 24,
29174
29182
  height: 24,
29175
- margin: '1px 0',
29183
+ margin: "calc((".concat(src.treeFontSize, " - 12px)/2) 0"),
29176
29184
  display: 'inline-flex',
29177
29185
  alignItems: 'center',
29178
29186
  justifyContent: 'center',
@@ -29702,8 +29710,7 @@ var treeSelectStyle = objectSpread2_default()(objectSpread2_default()({
29702
29710
  cursor: 'not-allowed',
29703
29711
  color: src.treeSelectOptionDisabledColor,
29704
29712
  backgroundColor: src.treeSelectOptionDisabledBackgroundColor,
29705
- '&>div': {
29706
- cursor: 'not-allowed',
29713
+ '&>[data-role="text"]': {
29707
29714
  color: src.treeSelectOptionDisabledColor,
29708
29715
  backgroundColor: src.treeSelectOptionDisabledBackgroundColor
29709
29716
  },
@@ -30644,14 +30651,7 @@ var isLink = function isLink(el) {
30644
30651
  if (! /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().isValidElement(el)) return false;
30645
30652
  if (!el.type) return false;
30646
30653
  if (el.type === 'a') return true;
30647
- // 只有当是已知的路由组件时才判断 to 属性
30648
- if (el.props && el.props.to) {
30649
- var typeName = typeof el.type === 'function' ? el.type.name : '';
30650
- var displayName = typeof_default()(el.type) === 'object' && el.type !== null ? el.type.displayName : '';
30651
- // 检查是否为常见的路由链接组件
30652
- var isRouterComponent = typeName === 'Link' || typeName === 'NavLink' || displayName === 'Link' || displayName === 'NavLink';
30653
- return isRouterComponent;
30654
- }
30654
+ if (el.props && el.props.to) return true;
30655
30655
  }
30656
30656
  return false;
30657
30657
  };
@@ -44950,8 +44950,13 @@ FormSchemaContext.displayName = 'FormSchemaContext';
44950
44950
 
44951
44951
  var FormField = function FormField(props) {
44952
44952
  var _childrenProps$error, _childrenProps$status;
44953
- var children = props.children;
44953
+ var children = props.children,
44954
+ fieldValidateTrigger = props.validateTrigger;
44954
44955
  var formConfig = useFormConfig();
44956
+ var formFunc = useFormFunc();
44957
+
44958
+ // 获取最终的 validateTrigger: 优先使用字段级配置,其次使用 Form 级配置,默认为 'change'
44959
+ var validateTrigger = fieldValidateTrigger || formConfig.validateTrigger || 'change';
44955
44960
  var getValidateProps = usePersistFn(function () {
44956
44961
  if (props.getValidateProps) return props.getValidateProps();
44957
44962
  return props;
@@ -44979,6 +44984,18 @@ var FormField = function FormField(props) {
44979
44984
  formControl.onChange.apply(formControl, [value].concat(args));
44980
44985
  }
44981
44986
  });
44987
+ var handleBlur = usePersistFn(function (e) {
44988
+ // 先调用原始的 onBlur
44989
+ var originalOnBlur = /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().isValidElement(children) ? children.props.onBlur : undefined;
44990
+ originalOnBlur === null || originalOnBlur === void 0 || originalOnBlur(e);
44991
+
44992
+ // 根据 validateTrigger 配置决定是否在失焦时触发校验
44993
+ // 只有 'change-blur' 模式才在失焦时触发校验
44994
+ var shouldValidateOnBlur = validateTrigger === 'change-blur';
44995
+ if (shouldValidateOnBlur && formControl.inForm && formControl.name && formFunc !== null && formFunc !== void 0 && formFunc.validateFields) {
44996
+ formFunc.validateFields(formControl.name).catch(function () {});
44997
+ }
44998
+ });
44982
44999
  var childrenProps = /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().isValidElement(children) ? children.props : {};
44983
45000
  var error = (_childrenProps$error = childrenProps.error) !== null && _childrenProps$error !== void 0 ? _childrenProps$error : formControl.error;
44984
45001
  var status = (_childrenProps$status = childrenProps.status) !== null && _childrenProps$status !== void 0 ? _childrenProps$status : formControl.error ? 'error' : undefined;
@@ -45003,6 +45020,7 @@ var FormField = function FormField(props) {
45003
45020
  }, [fieldsetPath, formConfig.formName]);
45004
45021
  var cloneProps = {
45005
45022
  onChange: handleChange,
45023
+ onBlur: handleBlur,
45006
45024
  status: status,
45007
45025
  error: error
45008
45026
  };
@@ -52746,7 +52764,9 @@ var useForm = function useForm(props) {
52746
52764
  colon = props.colon,
52747
52765
  formName = props.name,
52748
52766
  scrollParent = props.scrollParent,
52749
- isControl = props.isControl;
52767
+ isControl = props.isControl,
52768
+ _props$validateTrigge = props.validateTrigger,
52769
+ validateTrigger = _props$validateTrigge === void 0 ? 'change' : _props$validateTrigge;
52750
52770
  var deepSetOptions = {
52751
52771
  removeUndefined: removeUndefined,
52752
52772
  forceSet: true
@@ -53310,9 +53330,10 @@ var useForm = function useForm(props) {
53310
53330
  disabled: disabled,
53311
53331
  size: size,
53312
53332
  formName: formName,
53313
- colon: colon
53333
+ colon: colon,
53334
+ validateTrigger: validateTrigger
53314
53335
  };
53315
- }, [labelWidth, labelAlign, labelVerticalAlign, keepErrorHeight, inline, disabled, size, formName, colon]);
53336
+ }, [labelWidth, labelAlign, labelVerticalAlign, keepErrorHeight, inline, disabled, size, formName, colon, validateTrigger]);
53316
53337
  var updateValue = function updateValue() {
53317
53338
  if (props.value !== context.lastValue && props.value !== context.value) {
53318
53339
  context.value = deepClone(props.value) || emptyObj;
@@ -75061,7 +75082,7 @@ var upload_interface = __webpack_require__(8821);
75061
75082
 
75062
75083
 
75063
75084
  /* harmony default export */ var src_0 = ({
75064
- version: '3.9.7-beta.9'
75085
+ version: '3.9.8-beta.1'
75065
75086
  });
75066
75087
  }();
75067
75088
  /******/ return __webpack_exports__;