shineout 3.8.0-beta.9 → 3.8.0

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 (55) hide show
  1. package/README-zh_CN.md +1 -1
  2. package/README.md +1 -1
  3. package/cjs/breadcrumb/breadcrumb.js +2 -1
  4. package/cjs/cascader/cascader.d.ts +4 -1
  5. package/cjs/cascader/cascader.js +1 -0
  6. package/cjs/checkbox/checkbox.js +1 -0
  7. package/cjs/checkbox/group.js +3 -2
  8. package/cjs/date-picker/date-picker.js +3 -2
  9. package/cjs/editable-area/editable-area.js +1 -0
  10. package/cjs/empty/empty.type.d.ts +15 -1
  11. package/cjs/form/form.type.d.ts +31 -4
  12. package/cjs/index.js +1 -1
  13. package/cjs/input/input.js +1 -0
  14. package/cjs/input/number.js +1 -0
  15. package/cjs/input/password.js +1 -0
  16. package/cjs/radio/group.js +3 -2
  17. package/cjs/rate/rate.js +5 -4
  18. package/cjs/select/select.d.ts +3 -3
  19. package/cjs/select/select.js +5 -4
  20. package/cjs/slider/slider.js +1 -0
  21. package/cjs/switch/switch.js +3 -2
  22. package/cjs/textarea/textarea.js +3 -2
  23. package/cjs/tree-select/tree-select.js +1 -0
  24. package/cjs/upload/button.js +1 -0
  25. package/cjs/upload/image.js +1 -0
  26. package/cjs/upload/upload.js +1 -0
  27. package/dist/shineout.js +2013 -708
  28. package/dist/shineout.js.map +1 -1
  29. package/dist/shineout.min.js +1 -1
  30. package/dist/shineout.min.js.map +1 -1
  31. package/esm/breadcrumb/breadcrumb.js +3 -2
  32. package/esm/cascader/cascader.d.ts +4 -1
  33. package/esm/cascader/cascader.js +1 -0
  34. package/esm/checkbox/checkbox.js +1 -0
  35. package/esm/checkbox/group.js +3 -2
  36. package/esm/date-picker/date-picker.js +5 -4
  37. package/esm/editable-area/editable-area.js +1 -0
  38. package/esm/empty/empty.type.d.ts +15 -1
  39. package/esm/form/form.type.d.ts +31 -4
  40. package/esm/index.js +1 -1
  41. package/esm/input/input.js +1 -0
  42. package/esm/input/number.js +1 -0
  43. package/esm/input/password.js +1 -0
  44. package/esm/radio/group.js +3 -2
  45. package/esm/rate/rate.js +5 -4
  46. package/esm/select/select.d.ts +3 -3
  47. package/esm/select/select.js +5 -4
  48. package/esm/slider/slider.js +1 -0
  49. package/esm/switch/switch.js +3 -2
  50. package/esm/textarea/textarea.js +3 -2
  51. package/esm/tree-select/tree-select.js +1 -0
  52. package/esm/upload/button.js +1 -0
  53. package/esm/upload/image.js +1 -0
  54. package/esm/upload/upload.js +1 -0
  55. package/package.json +10 -10
package/dist/shineout.js CHANGED
@@ -6999,6 +6999,154 @@ var icons_link = ['M8.83231 20.7322C7.27024 22.2943 4.73759 22.2943 3.17546 20.7
6999
6999
  var filter = /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7000
7000
  d: "M19.9653 2.10633C20.5175 2.10633 20.9652 2.55404 20.9652 3.10633C20.9652 3.65861 20.5175 4.10633 19.9653 4.10633H19.6834L14.9666 11.3709V19.8936C14.9666 20.9981 14.0712 21.8936 12.9666 21.8936H10.9666C9.86204 21.8936 8.96662 20.9981 8.96662 19.8936V11.3709L4.35408 4.10632L4.03906 4.10632C3.48677 4.10632 3.03906 3.65861 3.03906 3.10632C3.03906 2.55404 3.48677 2.10632 4.03906 2.10632L19.9653 2.10633ZM6.75776 4.10632L10.8119 10.5206C10.913 10.6804 10.9666 10.8657 10.9666 11.0548V18.8312C10.9666 19.3835 11.4143 19.8312 11.9666 19.8312C12.5189 19.8312 12.9666 19.3835 12.9666 18.8312V11.0609C12.9666 10.868 13.0224 10.6792 13.1273 10.5172L17.2797 4.10633L6.75776 4.10632Z"
7001
7001
  });
7002
+ var emptyNoData = /*#__PURE__*/(0,jsx_runtime.jsxs)("svg", {
7003
+ width: "100",
7004
+ height: "75",
7005
+ viewBox: "0 0 100 75",
7006
+ fill: "none",
7007
+ xmlns: "http://www.w3.org/2000/svg",
7008
+ children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("g", {
7009
+ clipPath: "url(#clip0_4044_10434)",
7010
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7011
+ d: "M100 75C100 63.3607 77.6144 53.9257 50 53.9257C22.3857 53.9257 0 63.3607 0 75H100Z",
7012
+ fill: "url(#paint0_linear_4044_10434)"
7013
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("g", {
7014
+ opacity: "0.3",
7015
+ filter: "url(#filter0_f_4044_10434)",
7016
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7017
+ d: "M50.3087 70.0413C69.5706 70.0413 85.185 68.2375 85.185 66.0125C85.185 63.7875 69.5706 61.9835 50.3087 61.9835C31.0469 61.9835 15.4321 63.7875 15.4321 66.0125C15.4321 68.2375 31.0469 70.0413 50.3087 70.0413Z",
7018
+ fill: "#979EB0"
7019
+ })
7020
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7021
+ d: "M22.6082 23.6395C22.782 23.2127 23.1957 22.9338 23.6548 22.9338H75.7168C76.1718 22.9338 76.5818 23.2071 76.7593 23.6275L82.9493 38.3482H16.6184L22.6082 23.6395Z",
7022
+ fill: "#CCCFD7"
7023
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7024
+ d: "M75.9819 23.9172V37.2382H81.2882L75.9819 23.9172Z",
7025
+ fill: "#999DA8"
7026
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7027
+ d: "M18.877 37.0161H81.0701C82.6314 37.0161 83.897 38.2871 83.897 39.8547V61.7805C83.897 64.2888 81.872 66.3225 79.3739 66.3225H20.5732C18.0752 66.3225 16.05 64.2888 16.05 61.7805V39.8547C16.05 38.2871 17.3157 37.0161 18.877 37.0161Z",
7028
+ fill: "#E8EBF0"
7029
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("g", {
7030
+ filter: "url(#filter1_d_4044_10434)",
7031
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7032
+ d: "M16.0493 42.3192C16.0493 39.8108 16.0019 37.715 20.573 37.7774H79.3737C83.5612 37.7774 83.8968 39.8108 83.8968 42.3192V61.3998C83.8968 63.9087 81.8718 65.9419 79.3737 65.9419H20.573C18.075 65.9419 16.0493 63.9087 16.0493 61.3998V42.3192Z",
7033
+ fill: "black"
7034
+ })
7035
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7036
+ d: "M16.0493 42.3192C16.0493 39.8108 16.0019 37.715 20.573 37.7774H79.3737C83.5612 37.7774 83.8968 39.8108 83.8968 42.3192V61.3998C83.8968 63.9087 81.8718 65.9419 79.3737 65.9419H20.573C18.075 65.9419 16.0493 63.9087 16.0493 61.3998V42.3192Z",
7037
+ fill: "#F4F5F8"
7038
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7039
+ d: "M23.4412 23.8855V37.0162H18.3242L23.4412 23.8855Z",
7040
+ fill: "#999DA8"
7041
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7042
+ d: "M60.3971 50.7178H39.5502C38.0849 50.7178 36.897 51.9106 36.897 53.382C36.897 54.8534 38.0849 56.0462 39.5502 56.0462H60.3971C61.8625 56.0462 63.0501 54.8534 63.0501 53.382C63.0501 51.9106 61.8625 50.7178 60.3971 50.7178Z",
7043
+ fill: "#666C7C"
7044
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7045
+ d: "M60.3971 49.9565H39.5502C38.0849 49.9565 36.897 51.1494 36.897 52.6208C36.897 54.0922 38.0849 55.285 39.5502 55.285H60.3971C61.8625 55.285 63.0501 54.0922 63.0501 52.6208C63.0501 51.1494 61.8625 49.9565 60.3971 49.9565Z",
7046
+ fill: "#999DA8"
7047
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7048
+ fillRule: "evenodd",
7049
+ clipRule: "evenodd",
7050
+ d: "M46.041 3.14062C42.6319 3.14062 39.8682 5.91575 39.8682 9.33899V11.4859C39.8682 14.9092 42.6319 17.6842 46.041 17.6842H54.8002C58.2093 17.6842 60.9731 14.9092 60.9731 11.4859V9.33899C60.9731 5.91575 58.2093 3.14062 54.8002 3.14062H46.041ZM47.3169 21.0086L49.386 17.6842H45.2478L47.3169 21.0086Z",
7051
+ fill: "#E8EBF0"
7052
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7053
+ d: "M45.6834 8.54285L47.4941 11.6922H43.8726L45.6834 8.54285Z",
7054
+ fill: "#999DA8"
7055
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7056
+ d: "M52.304 8.54285H49.1677V11.6921H52.304V8.54285Z",
7057
+ fill: "#999DA8"
7058
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7059
+ d: "M55.6802 11.6919C56.5463 11.6919 57.2484 10.9869 57.2484 10.1172C57.2484 9.2476 56.5463 8.5426 55.6802 8.5426C54.8142 8.5426 54.1121 9.2476 54.1121 10.1172C54.1121 10.9869 54.8142 11.6919 55.6802 11.6919Z",
7060
+ fill: "#999DA8"
7061
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7062
+ d: "M67.7256 5.8507C66.5081 6.69694 63.5181 6.751 62.3457 7.09731L63.5875 5.64293C64.415 4.6041 64.6631 4.10547 65.6562 2.11091C66.6493 0.116362 69.3118 -0.105256 70.415 0.0332553C69.7943 1.27985 70.415 3.98081 67.7256 5.8507Z",
7063
+ fill: "#E8EBF0"
7064
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7065
+ d: "M46.257 34.8904C45.3444 35.1307 43.5421 34.5087 42.7649 34.4595L43.824 33.8603C44.5451 33.4193 44.802 33.175 45.8298 32.198C46.8574 31.221 48.4998 31.6709 49.1305 31.9953C48.4883 32.606 48.2737 34.3593 46.257 34.8904Z",
7066
+ fill: "#E8EBF0"
7067
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7068
+ d: "M37.262 32.7723C37.13 32.5427 37.2462 32.2485 37.4982 32.1696C39.7646 31.4593 49.3015 28.2658 55.6537 22.9713C62.0347 17.653 67.6725 11.576 69.1256 9.9791C69.3069 9.77991 69.6263 9.81841 69.76 10.0521C69.845 10.1989 69.8294 10.3803 69.7169 10.507C68.6225 11.7406 62.8044 18.1953 56.0675 23.6911C48.7371 29.6708 39.4667 32.4671 37.7105 32.9602C37.5349 33.0096 37.3532 32.9308 37.262 32.7723Z",
7069
+ fill: "#E8EBF0"
7070
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
7071
+ d: "M26.0283 27.1925C25.977 26.9505 26.1514 26.7154 26.396 26.6852C27.3291 26.5701 29.6586 26.1971 33.309 25.0577C37.011 23.9021 40.6908 21.2137 41.9723 20.2199C42.1914 20.05 42.5167 20.1675 42.5743 20.4394C42.6023 20.572 42.5585 20.7071 42.454 20.793C41.598 21.497 37.5626 24.6932 33.4811 25.8705C29.5763 26.9969 27.2876 27.3842 26.4592 27.5011C26.2561 27.5298 26.0709 27.394 26.0283 27.1925Z",
7072
+ fill: "#E8EBF0"
7073
+ })]
7074
+ }), /*#__PURE__*/(0,jsx_runtime.jsxs)("defs", {
7075
+ children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("filter", {
7076
+ id: "filter0_f_4044_10434",
7077
+ x: "9.43213",
7078
+ y: "55.9835",
7079
+ width: "81.7529",
7080
+ height: "20.0577",
7081
+ filterUnits: "userSpaceOnUse",
7082
+ colorInterpolationFilters: "sRGB",
7083
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("feFlood", {
7084
+ floodOpacity: "0",
7085
+ result: "BackgroundImageFix"
7086
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("feBlend", {
7087
+ mode: "normal",
7088
+ in: "SourceGraphic",
7089
+ in2: "BackgroundImageFix",
7090
+ result: "shape"
7091
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("feGaussianBlur", {
7092
+ stdDeviation: "3",
7093
+ result: "effect1_foregroundBlur_4044_10434"
7094
+ })]
7095
+ }), /*#__PURE__*/(0,jsx_runtime.jsxs)("filter", {
7096
+ id: "filter1_d_4044_10434",
7097
+ x: "16.0493",
7098
+ y: "37.776",
7099
+ width: "67.8474",
7100
+ height: "30.1659",
7101
+ filterUnits: "userSpaceOnUse",
7102
+ colorInterpolationFilters: "sRGB",
7103
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("feFlood", {
7104
+ floodOpacity: "0",
7105
+ result: "BackgroundImageFix"
7106
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("feColorMatrix", {
7107
+ in: "SourceAlpha",
7108
+ type: "matrix",
7109
+ values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0",
7110
+ result: "hardAlpha"
7111
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("feOffset", {
7112
+ dy: "2"
7113
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("feColorMatrix", {
7114
+ type: "matrix",
7115
+ values: "0 0 0 0 0.803922 0 0 0 0 0.811765 0 0 0 0 0.843137 0 0 0 1 0"
7116
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("feBlend", {
7117
+ mode: "normal",
7118
+ in2: "BackgroundImageFix",
7119
+ result: "effect1_dropShadow_4044_10434"
7120
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("feBlend", {
7121
+ mode: "normal",
7122
+ in: "SourceGraphic",
7123
+ in2: "effect1_dropShadow_4044_10434",
7124
+ result: "shape"
7125
+ })]
7126
+ }), /*#__PURE__*/(0,jsx_runtime.jsxs)("linearGradient", {
7127
+ id: "paint0_linear_4044_10434",
7128
+ x1: "50",
7129
+ y1: "53.9257",
7130
+ x2: "50",
7131
+ y2: "75",
7132
+ gradientUnits: "userSpaceOnUse",
7133
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("stop", {
7134
+ stopColor: "#E9EBEF"
7135
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("stop", {
7136
+ offset: "1",
7137
+ stopColor: "#E9EBEF",
7138
+ stopOpacity: "0"
7139
+ })]
7140
+ }), /*#__PURE__*/(0,jsx_runtime.jsx)("clipPath", {
7141
+ id: "clip0_4044_10434",
7142
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)("rect", {
7143
+ width: "100",
7144
+ height: "75",
7145
+ fill: "white"
7146
+ })
7147
+ })]
7148
+ })]
7149
+ });
7002
7150
  var Icons = {
7003
7151
  SortAsc: SortAsc,
7004
7152
  SortDesc: SortDesc,
@@ -7039,7 +7187,8 @@ var Icons = {
7039
7187
  RecoverCircle: icon(recoverCircle),
7040
7188
  StarFill: icon(pcStarFill),
7041
7189
  Link: icon(icons_link),
7042
- Loading: icon(loading)
7190
+ Loading: icon(loading),
7191
+ EmptyNoData: emptyNoData
7043
7192
  };
7044
7193
  /* harmony default export */ var icons = (Icons);
7045
7194
  ;// CONCATENATED MODULE: ../base/src/icons/config.tsx
@@ -7091,6 +7240,9 @@ var config = {
7091
7240
  dropdown: {
7092
7241
  DropdownArrow: icons.ArrowDown
7093
7242
  },
7243
+ empty: {
7244
+ NoData: icons.EmptyNoData
7245
+ },
7094
7246
  editableArea: {
7095
7247
  Close: icons.CloseFill
7096
7248
  },
@@ -7389,7 +7541,7 @@ var Alert = function Alert(props) {
7389
7541
  if (dismiss === HIDE) {
7390
7542
  return null;
7391
7543
  }
7392
- if ('title' in props && title !== undefined) {
7544
+ if (title) {
7393
7545
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", objectSpread2_default()(objectSpread2_default()({
7394
7546
  className: rootClass
7395
7547
  }, getRootProps()), {}, {
@@ -12234,7 +12386,7 @@ var handleStyle = function handleStyle(style) {
12234
12386
  };
12235
12387
  /* harmony default export */ var jss_style_handleStyle = (handleStyle);
12236
12388
  ;// CONCATENATED MODULE: ../shineout-style/src/version.ts
12237
- /* harmony default export */ var version = ('3.8.0-beta.9');
12389
+ /* harmony default export */ var version = ('3.8.0');
12238
12390
  ;// CONCATENATED MODULE: ../shineout-style/src/jss-style/index.tsx
12239
12391
 
12240
12392
 
@@ -14458,6 +14610,7 @@ var skeletonTokens = {
14458
14610
  skeletonHeight: 'Size-8',
14459
14611
  skeletonBackgroundColor: 'Neutral-fill-2',
14460
14612
  skeletonBackgroundRadius: 'Radius-default',
14613
+ skeletonButtonMarginTop: 'Spacing-32',
14461
14614
  skeletonAnimationFromColor: 'Neutral-fill-2',
14462
14615
  skeletonAnimationToColor: 'Neutral-fill-3'
14463
14616
  };
@@ -15910,6 +16063,9 @@ var breadcrumbStyle = {
15910
16063
  }
15911
16064
  }
15912
16065
  },
16066
+ wrapperPopover: {
16067
+ flexWrap: 'wrap'
16068
+ },
15913
16069
  content: {
15914
16070
  '&&': {
15915
16071
  display: 'flex',
@@ -15919,10 +16075,23 @@ var breadcrumbStyle = {
15919
16075
  color: src.breadcrumbDefaultLinkActiveColor
15920
16076
  }
15921
16077
  },
16078
+ contentMaxWidth: {
16079
+ maxWidth: '150px',
16080
+ overflow: 'hidden',
16081
+ textOverflow: 'ellipsis',
16082
+ whiteSpace: 'nowrap',
16083
+ '&&': {
16084
+ display: 'block'
16085
+ }
16086
+ },
15922
16087
  ellipsis: {
15923
16088
  color: src.breadcrumbLinkColor,
15924
16089
  position: 'relative',
15925
- top: '-3px'
16090
+ top: '-0.25em',
16091
+ cursor: 'pointer',
16092
+ '&:hover': {
16093
+ color: src.breadcrumbLinkHoverColor
16094
+ }
15926
16095
  },
15927
16096
  itemWrapper: {
15928
16097
  // padding: `0 ${token.breadcrumbListItemWrapperPaddingX}`,
@@ -16719,7 +16888,7 @@ var useCardGroupStyle = styled(card_group_card_group, 'cardGroup');
16719
16888
  /* harmony default export */ var shineout_style_src_card_group = ((/* unused pure expression or super */ null && (useCardGroupStyle)));
16720
16889
  ;// CONCATENATED MODULE: ../shineout-style/src/common/common.ts
16721
16890
 
16722
- var collapseStyle = {
16891
+ var commonStyle = {
16723
16892
  highlight: {
16724
16893
  color: src.tagWarningFontColor
16725
16894
  }
@@ -16814,9 +16983,17 @@ var animations = {
16814
16983
  opacity: 1,
16815
16984
  transform: 'translateY(-100%) scaleY(1)'
16816
16985
  }
16986
+ },
16987
+ '@keyframes bounce-in-center': {
16988
+ '0%': {
16989
+ transform: 'translate(-50%, -50%) scale(0)'
16990
+ },
16991
+ '100%': {
16992
+ transform: 'translate(-50%, -50%) scale(1)'
16993
+ }
16817
16994
  }
16818
16995
  };
16819
- /* harmony default export */ var src_common_common = (collapseStyle);
16996
+ /* harmony default export */ var src_common_common = (commonStyle);
16820
16997
  ;// CONCATENATED MODULE: ../shineout-style/src/carousel/carousel.ts
16821
16998
 
16822
16999
 
@@ -17545,6 +17722,9 @@ var cascaderStyle = objectSpread2_default()(objectSpread2_default()({
17545
17722
  },
17546
17723
  compressedWrapper: {
17547
17724
  width: 0,
17725
+ overflow: 'hidden'
17726
+ },
17727
+ compressedBoundWrapper: {
17548
17728
  overflow: 'auto'
17549
17729
  },
17550
17730
  controlMouse: {
@@ -17834,7 +18014,9 @@ var useCascaderStyle = styled(cascader_cascader, 'cascader');
17834
18014
  /* harmony default export */ var shineout_style_src_cascader = ((/* unused pure expression or super */ null && (useCascaderStyle)));
17835
18015
  ;// CONCATENATED MODULE: ../shineout-style/src/checkbox/checkbox.ts
17836
18016
 
17837
- var checkboxStyle = {
18017
+
18018
+
18019
+ var checkboxStyle = objectSpread2_default()(objectSpread2_default()({}, animations), {}, {
17838
18020
  rootClass: {},
17839
18021
  wrapper: {
17840
18022
  display: 'inline-flex',
@@ -17923,7 +18105,8 @@ var checkboxStyle = {
17923
18105
  width: '80%',
17924
18106
  top: '50%',
17925
18107
  left: '50%',
17926
- transform: 'translateY(-50%) translateX(-50%)'
18108
+ transform: 'translate(-50%, -50%)',
18109
+ animation: '$bounce-in-center 0.2s cubic-bezier(0.22, 0.61, 0.36, 1)'
17927
18110
  },
17928
18111
  '$wrapperChecked &, $wrapperIndeterminate &': {
17929
18112
  borderColor: src.checkboxIconCheckedBorderColor,
@@ -17973,7 +18156,7 @@ var checkboxStyle = {
17973
18156
  marginRight: 0
17974
18157
  }
17975
18158
  }
17976
- };
18159
+ });
17977
18160
  /* harmony default export */ var src_checkbox_checkbox = (checkboxStyle);
17978
18161
  ;// CONCATENATED MODULE: ../shineout-style/src/checkbox/index.ts
17979
18162
 
@@ -17983,7 +18166,7 @@ var useCheckboxStyle = styled(src_checkbox_checkbox, 'checkbox');
17983
18166
  /* harmony default export */ var shineout_style_src_checkbox = ((/* unused pure expression or super */ null && (useCheckboxStyle)));
17984
18167
  ;// CONCATENATED MODULE: ../shineout-style/src/collapse/collapse.ts
17985
18168
 
17986
- var collapse_collapseStyle = {
18169
+ var collapseStyle = {
17987
18170
  rootClass: {},
17988
18171
  wrapper: {
17989
18172
  overflow: 'hidden',
@@ -17995,7 +18178,7 @@ var collapse_collapseStyle = {
17995
18178
  border: 'none'
17996
18179
  }
17997
18180
  };
17998
- /* harmony default export */ var collapse_collapse = (collapse_collapseStyle);
18181
+ /* harmony default export */ var collapse_collapse = (collapseStyle);
17999
18182
  ;// CONCATENATED MODULE: ../shineout-style/src/collapse/collapse-item.ts
18000
18183
 
18001
18184
  var collapseItemStyle = {
@@ -21632,10 +21815,10 @@ var messageStyle = objectSpread2_default()(objectSpread2_default()({
21632
21815
  },
21633
21816
  itemDismissed: {
21634
21817
  ' [data-soui-position="bottom-left"] &': {
21635
- animation: "$left-out ".concat(message_animationDuration, " ease-in-out")
21818
+ animation: "$left-out ".concat(message_animationDuration, " ease-in-out forwards")
21636
21819
  },
21637
21820
  ' [data-soui-position="bottom-right"] &': {
21638
- animation: "$right-out ".concat(message_animationDuration, " ease-in-out")
21821
+ animation: "$right-out ".concat(message_animationDuration, " ease-in-out forwards")
21639
21822
  }
21640
21823
  },
21641
21824
  itemShow: {
@@ -21974,6 +22157,7 @@ var modalStyle = objectSpread2_default()(objectSpread2_default()({
21974
22157
  background: src.modalPanelBackground,
21975
22158
  borderRadius: src.modalPanelRadius,
21976
22159
  padding: "".concat(src.modalPanelPaddingY, " ").concat(src.modalPanelPaddingX),
22160
+ margin: '0 auto',
21977
22161
  fontSize: src.modalPanelFontSize,
21978
22162
  boxSizing: 'border-box',
21979
22163
  boxShadow: src.modalPanelShadow,
@@ -22242,6 +22426,8 @@ var setToken = function setToken(options) {
22242
22426
  // we force a non-overlapping, non-auto-hiding scrollbar to counteract.
22243
22427
  // 6. Change the default tap highlight to be completely transparent in iOS.
22244
22428
 
22429
+
22430
+
22245
22431
  var normalize_token = {
22246
22432
  fontFamily: 'var(--common-body-font-family, PingFang SC, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Helvetica, Hiragino KaKu Gothic Pro, Microsoft YaHei, Arial, sans-serif )',
22247
22433
  color: 'var(--common-body-color, #141737)',
@@ -22259,19 +22445,29 @@ var normalize_token = {
22259
22445
  var lineHeightComputed = '20px';
22260
22446
  var lineHeightComputed2 = '10px';
22261
22447
  var normalizeStyle = "*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\nhtml {\n font-family: sans-serif;\n line-height: 1.15;\n -ms-overflow-style: scrollbar;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n -webkit-text-size-adjust: 100%;\n -ms-text-size-adjust: 100%;\n}\n\narticle,\naside,\ndialog,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nnav,\nsection {\n display: block;\n}\n\nbody {\n margin: 0;\n color: ".concat(normalize_token.color, ";\n font-family: ").concat(normalize_token.fontFamily, ";\n font-size: ").concat(normalize_token.fontSize, ";\n line-height: ").concat(normalize_token.lineHeight, ";\n}\n\n\narticle,\naside,\nfooter,\nheader,\nnav,\nsection {\n display: block;\n}\n\nh1 {\n margin: 0.67em 0;\n font-size: 2em;\n}\n\nfigcaption,\nfigure,\nmain {\n display: block;\n}\n\nfigure {\n margin: 1em 40px;\n}\n\nhr {\n overflow: visible;\n height: 0;\n box-sizing: content-box;\n}\n\npre {\n font-family: \"SFMono-Regular\", Menlo, Monaco, Consolas, \"Courier New\", monospace;\n font-size: 1em;\n}\n\na {\n background-color: transparent;\n color: ").concat(normalize_token.linkColor, ";\n cursor: pointer;\n outline: none;\n text-decoration: ").concat(normalize_token.linkHoverDecoration, ";\n -webkit-text-decoration-skip: objects;\n transition: color 0.3s;\n}\n\na:active,\na:hover {\n color: ").concat(normalize_token.linkColor, ";\n outline: 0;\n text-decoration: ").concat(normalize_token.linkHoverDecoration, ";\n}\na[disabled] {\n color: ").concat(normalize_token.linkDisabledColor, ";\n cursor: not-allowed;\n pointer-events: none;\n}\n\nabbr[title] {\n border-bottom: none;\n text-decoration: underline;\n text-decoration: underline dotted;\n}\n\nb,\nstrong {\n font-weight: inherit;\n}\n\nb,\nstrong {\n font-weight: bolder;\n}\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\n\ndfn {\n font-style: italic;\n}\n\nmark {\n background-color: #ff0;\n color: #000;\n}\n\nsmall {\n font-size: 80%;\n}\n\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\naudio,\nvideo {\n display: inline-block;\n}\n\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n\nimg {\n border-style: none;\n}\n\nsvg:not(:root) {\n overflow: hidden;\n}\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n margin: 0;\n font-family: inherit;\n font-size: 100%;\n line-height: 1.15;\n}\n\nbutton,\ninput {\n overflow: visible;\n}\n\nbutton,\nselect {\n text-transform: none;\n}\n\nbutton,\nhtml [type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\nbutton::-moz-focus-inner,\n[type='button']::-moz-focus-inner,\n[type='reset']::-moz-focus-inner,\n[type='submit']::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\nbutton:-moz-focusring,\n[type='button']:-moz-focusring,\n[type='reset']:-moz-focusring,\n[type='submit']:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\nlegend {\n display: table;\n max-width: 100%;\n box-sizing: border-box;\n padding: 0;\n color: inherit;\n white-space: normal;\n}\n\nprogress {\n display: inline-block;\n vertical-align: baseline;\n}\n\ntextarea {\n overflow: auto;\n}\n\n[type='checkbox'],\n[type='radio'] {\n box-sizing: border-box;\n padding: 0;\n}\n\n\n[type='number']::-webkit-inner-spin-button,\n[type='number']::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type='search'] {\n -webkit-appearance: textfield;\n outline-offset: -2px;\n}\n\n[type='search']::-webkit-search-cancel-button,\n[type='search']::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n\n::-webkit-file-upload-button {\n -webkit-appearance: button;\n font: inherit;\n}\n\n\ndetails,\nmenu {\n display: block;\n}\n\n\nsummary {\n display: list-item;\n}\n\n\ncanvas {\n display: inline-block;\n}\n\n\ntemplate {\n display: none;\n}\n\n\n[hidden] {\n display: none;\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\n.h1,\n.h2,\n.h3,\n.h4,\n.h5,\n.h6 {\n color: ").concat(normalize_token.headingsColor, ";\n font-family: ").concat(normalize_token.headingsFontFamily, ";\n font-weight: ").concat(normalize_token.headingsFontWeight, ";\n line-height: ").concat(normalize_token.headingsLineHeight, ";\n}\nh1 small, h1 .small, .h1 small, .h1 .small,\nh2 small, h2 .small, .h2 small, .h2 .small,\nh3 small, h3 .small, .h3 small, .h3 .small,\nh4 small, h4 .small, .h4 small, .h4 .small,\nh5 small, h5 .small, .h5 small, .h5 .small,\nh6 small, h6 .small, .h6 small, .h6 .small {\n color: ").concat(normalize_token.headingsSmallColor, ";\n font-weight: normal;\n line-height: 1;\n}\n\n\nh1,\n.h1,\nh2,\n.h2,\nh3,\n.h3 {\n margin-top: ").concat(lineHeightComputed, ";\n margin-bottom: ").concat(lineHeightComputed2, ";\n}\n\nhi small, h1 .small, .h1 small, .h1 .small,\nh2 small, h2 .small, .h2 small, .h2 .small,\nh3 small, h3 .small, .h3 small, .h3 .small {\n font-size: 65%;\n}\n\nh4,\n.h4,\nh5,\n.h5,\nh6,\n.h6 {\n margin-top: ").concat(lineHeightComputed2, ";\n margin-bottom: ").concat(lineHeightComputed2, ";\n}\n\nh4 small, h4 .small, .h4 small, .h4 .small,\nh5 small, h5 .small, .h5 small, .h5 .small,\nh6 small, h6 .small, .h6 small, .h6 .small {\n font-size: 75%;\n}\n\np {\n margin: 0 0 ").concat(lineHeightComputed2, ";\n}");
22448
+ var normalizeStyleId = 'shineout-next-normalize__' + version;
22449
+ var jssInsertionPointId = 'shineout-next-jss-insertion-point__' + version;
22262
22450
  function appendNormalizeStyle(styleString, id) {
22263
22451
  var style = document.createElement('style');
22264
- style.id = id;
22452
+ style.setAttribute('name', id);
22265
22453
  style.innerHTML = styleString;
22266
- document.head.appendChild(style);
22454
+ document.head.insertBefore(style, document.head.firstChild);
22455
+ }
22456
+ function appendJssInsertionPoint() {
22457
+ var insertionPoint = document.createElement('style');
22458
+ insertionPoint.setAttribute('name', jssInsertionPointId);
22459
+ document.head.insertBefore(insertionPoint, document.head.firstChild);
22460
+ react_jss_esm_defaultJss.setup({
22461
+ insertionPoint: insertionPoint
22462
+ });
22267
22463
  }
22268
- var uniqueStyleId = 'shineout-next-normalize__' + Math.random().toString(36).substring(2, 15);
22269
22464
  if (typeof window !== 'undefined') {
22270
- appendNormalizeStyle(normalizeStyle, uniqueStyleId);
22465
+ appendJssInsertionPoint();
22466
+ appendNormalizeStyle(normalizeStyle, normalizeStyleId);
22271
22467
  }
22272
22468
  var scopeNormalizeStyle = function scopeNormalizeStyle() {
22273
22469
  var csScopePrefix = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '#app';
22274
- var styleElement = document.getElementById(uniqueStyleId);
22470
+ var styleElement = document.querySelector("style[name=\"".concat(normalizeStyleId, "\"]"));
22275
22471
  // 移除styleElement
22276
22472
 
22277
22473
  var styleSheet = styleElement === null || styleElement === void 0 ? void 0 : styleElement.sheet;
@@ -22300,7 +22496,7 @@ var scopeNormalizeStyle = function scopeNormalizeStyle() {
22300
22496
  return rule.cssText;
22301
22497
  }).join('') : '';
22302
22498
  document.head.removeChild(styleElement);
22303
- appendNormalizeStyle(scopedStyleString, uniqueStyleId);
22499
+ appendNormalizeStyle(scopedStyleString, normalizeStyleId);
22304
22500
  };
22305
22501
  token_setter({
22306
22502
  selector: 'html'
@@ -22409,6 +22605,26 @@ var tooltipAnimation = {
22409
22605
  transform: "var(--soui-popup-transform) scale(1)"
22410
22606
  }
22411
22607
  },
22608
+ '@keyframes moveRightTop': {
22609
+ '0%': {
22610
+ transformOrigin: 'left top',
22611
+ transform: "var(--soui-popup-transform) scale(0.5)"
22612
+ },
22613
+ '100%': {
22614
+ transformOrigin: 'left top',
22615
+ transform: "var(--soui-popup-transform) scale(1)"
22616
+ }
22617
+ },
22618
+ '@keyframes moveRightBottom': {
22619
+ '0%': {
22620
+ transformOrigin: 'left bottom',
22621
+ transform: "var(--soui-popup-transform) scale(0.5)"
22622
+ },
22623
+ '100%': {
22624
+ transformOrigin: 'left bottom',
22625
+ transform: "var(--soui-popup-transform) scale(1)"
22626
+ }
22627
+ },
22412
22628
  '@keyframes moveLeft': {
22413
22629
  '0%': {
22414
22630
  transformOrigin: 'right center',
@@ -22419,6 +22635,26 @@ var tooltipAnimation = {
22419
22635
  transform: "var(--soui-popup-transform, rotate(0deg)) scale(1)"
22420
22636
  }
22421
22637
  },
22638
+ '@keyframes moveLeftTop': {
22639
+ '0%': {
22640
+ transformOrigin: 'right top',
22641
+ transform: "var(--soui-popup-transform, rotate(0deg)) scale(0.5)"
22642
+ },
22643
+ '100%': {
22644
+ transformOrigin: 'right top',
22645
+ transform: "var(--soui-popup-transform, rotate(0deg)) scale(1)"
22646
+ }
22647
+ },
22648
+ '@keyframes moveLeftBottom': {
22649
+ '0%': {
22650
+ transformOrigin: 'right bottom',
22651
+ transform: "var(--soui-popup-transform, rotate(0deg)) scale(0.5)"
22652
+ },
22653
+ '100%': {
22654
+ transformOrigin: 'right bottom',
22655
+ transform: "var(--soui-popup-transform, rotate(0deg)) scale(1)"
22656
+ }
22657
+ },
22422
22658
  '@keyframes moveTop': {
22423
22659
  '0%': {
22424
22660
  transformOrigin: 'center bottom',
@@ -22429,6 +22665,26 @@ var tooltipAnimation = {
22429
22665
  transform: "var(--soui-popup-transform, rotate(0deg)) scale(1)"
22430
22666
  }
22431
22667
  },
22668
+ '@keyframes moveTopLeft': {
22669
+ '0%': {
22670
+ transformOrigin: 'left bottom',
22671
+ transform: "var(--soui-popup-transform, rotate(0deg)) scale(0.5)"
22672
+ },
22673
+ '100%': {
22674
+ transformOrigin: 'left bottom',
22675
+ transform: "var(--soui-popup-transform, rotate(0deg)) scale(1)"
22676
+ }
22677
+ },
22678
+ '@keyframes moveTopRight': {
22679
+ '0%': {
22680
+ transformOrigin: 'right bottom',
22681
+ transform: "var(--soui-popup-transform, rotate(0deg)) scale(0.5)"
22682
+ },
22683
+ '100%': {
22684
+ transformOrigin: 'right bottom',
22685
+ transform: "var(--soui-popup-transform, rotate(0deg)) scale(1)"
22686
+ }
22687
+ },
22432
22688
  '@keyframes moveBottom': {
22433
22689
  '0%': {
22434
22690
  transformOrigin: 'center top',
@@ -22438,6 +22694,26 @@ var tooltipAnimation = {
22438
22694
  transformOrigin: 'center top',
22439
22695
  transform: "var(--soui-popup-transform, rotate(0deg)) scale(1)"
22440
22696
  }
22697
+ },
22698
+ '@keyframes moveBottomLeft': {
22699
+ '0%': {
22700
+ transformOrigin: 'left top',
22701
+ transform: "var(--soui-popup-transform, rotate(0deg)) scale(0.5)"
22702
+ },
22703
+ '100%': {
22704
+ transformOrigin: 'left top',
22705
+ transform: "var(--soui-popup-transform, rotate(0deg)) scale(1)"
22706
+ }
22707
+ },
22708
+ '@keyframes moveBottomRight': {
22709
+ '0%': {
22710
+ transformOrigin: 'right top',
22711
+ transform: "var(--soui-popup-transform, rotate(0deg)) scale(0.5)"
22712
+ },
22713
+ '100%': {
22714
+ transformOrigin: 'right top',
22715
+ transform: "var(--soui-popup-transform, rotate(0deg)) scale(1)"
22716
+ }
22441
22717
  }
22442
22718
  };
22443
22719
  var tooltipStyle = objectSpread2_default()(objectSpread2_default()({
@@ -22465,6 +22741,16 @@ var tooltipStyle = objectSpread2_default()(objectSpread2_default()({
22465
22741
  },
22466
22742
  '&[data-soui-position^="bottom"] $arrow': {
22467
22743
  transform: 'translate(0, calc(-100% + 1px)) rotate(0deg)'
22744
+ },
22745
+ '& $arrow:before': {
22746
+ clipPath: 'none',
22747
+ borderTop: "1px solid ".concat(src.tooltipLightBorderColor),
22748
+ borderLeft: "1px solid ".concat(src.tooltipLightBorderColor),
22749
+ borderRight: 'transparent',
22750
+ borderBottom: 'transparent',
22751
+ width: 8.4,
22752
+ height: 8.4,
22753
+ transform: 'translate(50%, 27.5%) rotate(45deg)'
22468
22754
  }
22469
22755
  },
22470
22756
  '&[data-soui-type^="primary"]': {
@@ -22689,7 +22975,7 @@ var popoverStyle = objectSpread2_default()(objectSpread2_default()({}, tooltipAn
22689
22975
  borderRadius: src.popoverRadius,
22690
22976
  border: "1px solid ".concat(src.popoverBorderColor),
22691
22977
  wordWrap: 'break-word',
22692
- '& $arrow': {
22978
+ '& > $arrow': {
22693
22979
  'z-index': 1,
22694
22980
  position: 'absolute',
22695
22981
  content: '" "',
@@ -22710,7 +22996,7 @@ var popoverStyle = objectSpread2_default()(objectSpread2_default()({}, tooltipAn
22710
22996
  '&$hideArrow': defineProperty_default()({}, popover_cssvar, '4px'),
22711
22997
  '&[data-soui-position^="bottom"]': {
22712
22998
  marginTop: "calc(".concat(hideArrowGap, " - 2px)"),
22713
- '& $arrow': {
22999
+ '& > $arrow': {
22714
23000
  top: '0',
22715
23001
  transform: 'translate(0, -50%) rotate(-45deg)',
22716
23002
  left: '0',
@@ -22730,7 +23016,7 @@ var popoverStyle = objectSpread2_default()(objectSpread2_default()({}, tooltipAn
22730
23016
  '&[data-soui-position^="top"]': {
22731
23017
  // marginTop: (arrowGap - 2) * -1,
22732
23018
  marginTop: "calc((".concat(hideArrowGap, " - 2px) * -1)"),
22733
- '& $arrow': {
23019
+ '& > $arrow': {
22734
23020
  bottom: '0',
22735
23021
  transform: 'translate(0, 50%) rotate(135deg)',
22736
23022
  left: '0',
@@ -22756,7 +23042,7 @@ var popoverStyle = objectSpread2_default()(objectSpread2_default()({}, tooltipAn
22756
23042
  '&[dir=rtl]': {
22757
23043
  marginLeft: "calc((".concat(hideArrowGap, " - 2px))")
22758
23044
  },
22759
- '& $arrow': {
23045
+ '& > $arrow': {
22760
23046
  right: src.popoverBorderWidth,
22761
23047
  transform: 'translate(50%, 0) rotate(45deg)',
22762
23048
  top: '0',
@@ -22780,7 +23066,7 @@ var popoverStyle = objectSpread2_default()(objectSpread2_default()({}, tooltipAn
22780
23066
  '&[dir=rtl]': {
22781
23067
  marginRight: "calc(".concat(hideArrowGap, " - 2px)")
22782
23068
  },
22783
- '& $arrow': {
23069
+ '& > $arrow': {
22784
23070
  left: '0',
22785
23071
  transform: 'translate(-50%, 0) rotate(-135deg)',
22786
23072
  top: '0',
@@ -22799,19 +23085,19 @@ var popoverStyle = objectSpread2_default()(objectSpread2_default()({}, tooltipAn
22799
23085
  position: 'absolute'
22800
23086
  }
22801
23087
  },
22802
- '&&[data-soui-position$="-left"] $arrow': {
23088
+ '&&[data-soui-position$="-left"] > $arrow': {
22803
23089
  left: arrowMargin,
22804
23090
  right: 'auto'
22805
23091
  },
22806
- '&&[data-soui-position$="-right"] $arrow': {
23092
+ '&&[data-soui-position$="-right"] > $arrow': {
22807
23093
  right: arrowMargin,
22808
23094
  left: 'auto'
22809
23095
  },
22810
- '&&[data-soui-position$="-top"] $arrow': {
23096
+ '&&[data-soui-position$="-top"] > $arrow': {
22811
23097
  top: arrowMargin,
22812
23098
  bottom: 'auto'
22813
23099
  },
22814
- '&&[data-soui-position$="-bottom"] $arrow': {
23100
+ '&&[data-soui-position$="-bottom"] > $arrow': {
22815
23101
  bottom: arrowMargin,
22816
23102
  top: 'auto'
22817
23103
  },
@@ -22844,14 +23130,38 @@ var popoverStyle = objectSpread2_default()(objectSpread2_default()({}, tooltipAn
22844
23130
  '&[data-soui-position^="bottom"]': {
22845
23131
  animation: '$fadeIn 200ms ease, $moveBottom 200ms cubic-bezier(0.22, 0.61, 0.36, 1)'
22846
23132
  },
23133
+ '&[data-soui-position^="bottom-left"]': {
23134
+ animation: '$fadeIn 200ms ease, $moveBottomLeft 200ms cubic-bezier(0.22, 0.61, 0.36, 1)'
23135
+ },
23136
+ '&[data-soui-position^="bottom-right"]': {
23137
+ animation: '$fadeIn 200ms ease, $moveBottomRight 200ms cubic-bezier(0.22, 0.61, 0.36, 1)'
23138
+ },
22847
23139
  '&[data-soui-position^="top"]': {
22848
23140
  animation: '$fadeIn 200ms ease, $moveTop 200ms cubic-bezier(0.22, 0.61, 0.36, 1);'
22849
23141
  },
23142
+ '&[data-soui-position^="top-left"]': {
23143
+ animation: '$fadeIn 200ms ease, $moveTopLeft 200ms cubic-bezier(0.22, 0.61, 0.36, 1)'
23144
+ },
23145
+ '&[data-soui-position^="top-right"]': {
23146
+ animation: '$fadeIn 200ms ease, $moveTopRight 200ms cubic-bezier(0.22, 0.61, 0.36, 1)'
23147
+ },
22850
23148
  '&[data-soui-position^="left"]': {
22851
23149
  animation: '$fadeIn 200ms ease, $moveLeft 200ms cubic-bezier(0.22, 0.61, 0.36, 1);'
22852
23150
  },
23151
+ '&[data-soui-position^="left-top"]': {
23152
+ animation: '$fadeIn 200ms ease, $moveLeftTop 200ms cubic-bezier(0.22, 0.61, 0.36, 1);'
23153
+ },
23154
+ '&[data-soui-position^="left-bottom"]': {
23155
+ animation: '$fadeIn 200ms ease, $moveLeftBottom 200ms cubic-bezier(0.22, 0.61, 0.36, 1);'
23156
+ },
22853
23157
  '&[data-soui-position^="right"]': {
22854
23158
  animation: '$fadeIn 200ms ease, $moveRight 200ms cubic-bezier(0.22, 0.61, 0.36, 1);'
23159
+ },
23160
+ '&[data-soui-position^="right-top"]': {
23161
+ animation: '$fadeIn 200ms ease, $moveRightTop 200ms cubic-bezier(0.22, 0.61, 0.36, 1);'
23162
+ },
23163
+ '&[data-soui-position^="right-bottom"]': {
23164
+ animation: '$fadeIn 200ms ease, $moveRightBottom 200ms cubic-bezier(0.22, 0.61, 0.36, 1);'
22855
23165
  }
22856
23166
  },
22857
23167
  arrow: {},
@@ -23096,19 +23406,10 @@ var useProgressStyle = styled(progress_progress, 'progress');
23096
23406
  /* harmony default export */ var shineout_style_src_progress = ((/* unused pure expression or super */ null && (useProgressStyle)));
23097
23407
  ;// CONCATENATED MODULE: ../shineout-style/src/radio/radio.ts
23098
23408
 
23099
- var radioStyle = {
23409
+
23410
+
23411
+ var radioStyle = objectSpread2_default()(objectSpread2_default()({}, animations), {}, {
23100
23412
  rootClass: {},
23101
- // '@keyframes so-checkinput-focus': {
23102
- // '0%': {
23103
- // boxShadow: `0 0 0 0 ${cssVars.primaryColorFade50}`,
23104
- // },
23105
- // '50%': {
23106
- // boxShadow: `0 0 0 4px ${cssVars.primaryColorFade0}`,
23107
- // },
23108
- // '100%': {
23109
- // boxShadow: `0 0 0 8px ${cssVars.primaryColorFade0}`,
23110
- // },
23111
- // },
23112
23413
  wrapper: {
23113
23414
  display: 'inline-flex',
23114
23415
  position: 'relative',
@@ -23195,7 +23496,7 @@ var radioStyle = {
23195
23496
  color: src.radioIconColor,
23196
23497
  backgroundColor: src.radioIconBackgroundColor,
23197
23498
  border: '1px solid currentColor',
23198
- '$wrapperChecked &': {
23499
+ '$wrapperChecked > $indicatorWrapper > &': {
23199
23500
  backgroundColor: src.radioIconCheckedBackgroundColor,
23200
23501
  color: src.radioIconCheckedColor,
23201
23502
  '&::after': {
@@ -23208,7 +23509,8 @@ var radioStyle = {
23208
23509
  position: 'absolute',
23209
23510
  top: '50%',
23210
23511
  left: '50%',
23211
- transform: 'translate(-50%, -50%)'
23512
+ transform: 'translate(-50%, -50%)',
23513
+ animation: '$bounce-in-center 0.2s cubic-bezier(0.22, 0.61, 0.36, 1)'
23212
23514
  }
23213
23515
  },
23214
23516
  '$wrapperDisabled:not($wrapperChecked) &': {
@@ -23264,7 +23566,7 @@ var radioStyle = {
23264
23566
  margin: 0
23265
23567
  }
23266
23568
  }
23267
- };
23569
+ });
23268
23570
  /* harmony default export */ var src_radio_radio = (radioStyle);
23269
23571
  ;// CONCATENATED MODULE: ../shineout-style/src/radio/index.ts
23270
23572
 
@@ -23653,6 +23955,9 @@ var selectStyle = objectSpread2_default()(objectSpread2_default()({
23653
23955
  },
23654
23956
  compressedWrapper: {
23655
23957
  width: 0,
23958
+ overflow: 'hidden'
23959
+ },
23960
+ compressedBoundWrapper: {
23656
23961
  overflow: 'auto'
23657
23962
  },
23658
23963
  controlMouse: {
@@ -23934,7 +24239,6 @@ var selectStyle = objectSpread2_default()(objectSpread2_default()({
23934
24239
  height: 32,
23935
24240
  padding: "".concat(src.selectHeaderPaddingY, " ").concat(src.selectHeaderPaddingX),
23936
24241
  borderBottom: "1px solid ".concat(src.selectHeaderBorderColor),
23937
- marginBottom: 4,
23938
24242
  '& $columnsCheckbox': {
23939
24243
  marginRight: 0,
23940
24244
  marginLeft: 4,
@@ -24024,7 +24328,7 @@ var skeletonStyle = objectSpread2_default()(objectSpread2_default()({}, skeleton
24024
24328
  '& $textItem, & $image, & $buttonItem': {
24025
24329
  backgroundImage: "linear-gradient(90deg, ".concat(src.skeletonAnimationFromColor, " 25%, ").concat(src.skeletonAnimationToColor, " 37%, ").concat(src.skeletonAnimationFromColor, " 63%)"),
24026
24330
  backgroundSize: '400% 100%',
24027
- animation: '$skeleton-animation 1.4s ease infinite'
24331
+ animation: '$skeleton-animation 1.5s cubic-bezier(0, 0, 1, 1) infinite'
24028
24332
  }
24029
24333
  },
24030
24334
  content: {
@@ -24073,7 +24377,7 @@ var skeletonStyle = objectSpread2_default()(objectSpread2_default()({}, skeleton
24073
24377
  button: {
24074
24378
  display: 'flex',
24075
24379
  '$text + &': {
24076
- marginTop: src.skeletonMargin
24380
+ marginTop: src.skeletonButtonMarginTop
24077
24381
  }
24078
24382
  },
24079
24383
  buttonItem: {
@@ -26337,12 +26641,15 @@ var tableStyle = objectSpread2_default()(objectSpread2_default()({
26337
26641
  '$sticky > &': {
26338
26642
  zIndex: headerIndex
26339
26643
  },
26340
- '& table th': {
26644
+ '$wrapper & table th': {
26341
26645
  zIndex: fixedFixedIndex + 1,
26342
26646
  '&$cellFixedLeft': {
26343
26647
  position: 'sticky',
26344
26648
  top: 'auto',
26345
26649
  zIndex: fixedFixedIndex + 2
26650
+ },
26651
+ '&$cellFixedRight': {
26652
+ zIndex: fixedFixedIndex + 3
26346
26653
  }
26347
26654
  }
26348
26655
  },
@@ -26364,7 +26671,10 @@ var tableStyle = objectSpread2_default()(objectSpread2_default()({
26364
26671
  '&$cellFixedLeft': {
26365
26672
  position: 'sticky',
26366
26673
  top: 'auto',
26367
- zIndex: fixedIndex + 1
26674
+ zIndex: fixedIndex
26675
+ },
26676
+ '&$cellFixedRight': {
26677
+ zIndex: fixedIndex
26368
26678
  }
26369
26679
  }
26370
26680
  },
@@ -26418,10 +26728,13 @@ var tableStyle = objectSpread2_default()(objectSpread2_default()({
26418
26728
  borderBottom: 'none'
26419
26729
  },
26420
26730
  cellFixedLeft: {
26421
- position: 'sticky'
26731
+ position: 'sticky',
26732
+ // 快速横滚,有可能出现非固定列遮挡了固定列的短暂一瞬间,因此加上这个zIndex
26733
+ zIndex: fixedIndex + 1
26422
26734
  },
26423
26735
  cellFixedRight: {
26424
- position: 'sticky'
26736
+ position: 'sticky',
26737
+ zIndex: fixedFixedIndex
26425
26738
  },
26426
26739
  cellAlignLeft: {
26427
26740
  textAlign: 'left'
@@ -26550,6 +26863,9 @@ var tableStyle = objectSpread2_default()(objectSpread2_default()({
26550
26863
  color: src.tableFilterIconActiveColor
26551
26864
  }
26552
26865
  },
26866
+ filterOpened: {
26867
+ background: src.buttonSecondaryHoverBackgroundColor
26868
+ },
26553
26869
  filterContainer: {
26554
26870
  minWidth: '120px'
26555
26871
  },
@@ -26562,7 +26878,19 @@ var tableStyle = objectSpread2_default()(objectSpread2_default()({
26562
26878
  filterBody: {
26563
26879
  padding: "".concat(src.tableFilterBodyPaddingY, " ").concat(src.tableFilterBodyPaddingX),
26564
26880
  maxHeight: '300px',
26565
- overflow: 'auto'
26881
+ overflow: 'auto',
26882
+ // 特调Tree在Table filter中样式,以满足设计要求
26883
+ '& [class*=tree-content-wrapper]': {
26884
+ paddingTop: 1,
26885
+ paddingBottom: 1
26886
+ },
26887
+ '&& [class*=tree-checkbox]': {
26888
+ alignSelf: 'center'
26889
+ },
26890
+ '& [class*=tree-text]': {
26891
+ paddingTop: 5,
26892
+ paddingBottom: 5
26893
+ }
26566
26894
  },
26567
26895
  filterFooter: {
26568
26896
  display: 'flex',
@@ -26774,6 +27102,13 @@ var tableStyle = objectSpread2_default()(objectSpread2_default()({
26774
27102
  '& th, & td': {
26775
27103
  textAlign: 'left'
26776
27104
  },
27105
+ '$bordered&': {
27106
+ '& th:last-child, & td:last-child': {
27107
+ '&:after': {
27108
+ display: 'none'
27109
+ }
27110
+ }
27111
+ },
26777
27112
  '& table tr:hover td': {
26778
27113
  background: "".concat(src.tableTbodyHoverBackgroundColor)
26779
27114
  }
@@ -26838,14 +27173,14 @@ var getCardStyle = function getCardStyle() {
26838
27173
  bottom: 0,
26839
27174
  right: -1,
26840
27175
  width: 1,
26841
- background: '#FFFFFF'
27176
+ background: src.tabsCardCheckedBackgroundColor
26842
27177
  })),
26843
27178
  '&[dir=rtl]': objectSpread2_default()(objectSpread2_default()({}, active({
26844
27179
  top: 0,
26845
27180
  bottom: 0,
26846
27181
  left: -1,
26847
27182
  width: 1,
26848
- background: '#FFFFFF'
27183
+ background: src.tabsCardCheckedBackgroundColor
26849
27184
  })), {}, {
26850
27185
  '& $cardHr': {
26851
27186
  '&:before': {
@@ -26878,7 +27213,7 @@ var getCardStyle = function getCardStyle() {
26878
27213
  bottom: 0,
26879
27214
  left: -1,
26880
27215
  width: 1,
26881
- background: '#FFFFFF'
27216
+ background: src.tabsCardCheckedBackgroundColor
26882
27217
  })),
26883
27218
  '&[dir=rtl]': objectSpread2_default()({
26884
27219
  '& $cardHr': {
@@ -26893,7 +27228,7 @@ var getCardStyle = function getCardStyle() {
26893
27228
  bottom: 0,
26894
27229
  right: -1,
26895
27230
  width: 1,
26896
- background: '#FFFFFF'
27231
+ background: src.tabsCardCheckedBackgroundColor
26897
27232
  }))
26898
27233
  },
26899
27234
  '&[data-soui-position^="top-"][data-soui-shape="card"]': objectSpread2_default()({
@@ -26910,7 +27245,7 @@ var getCardStyle = function getCardStyle() {
26910
27245
  left: 0,
26911
27246
  right: 0,
26912
27247
  height: 1,
26913
- background: '#FFFFFF'
27248
+ background: src.tabsCardCheckedBackgroundColor
26914
27249
  })),
26915
27250
  '&[data-soui-position^="bottom-"][data-soui-shape="card"]': objectSpread2_default()({
26916
27251
  '& $tab,& $next,& $prev': {
@@ -26932,13 +27267,13 @@ var getCardStyle = function getCardStyle() {
26932
27267
  left: 0,
26933
27268
  right: 0,
26934
27269
  height: 1,
26935
- background: '#FFFFFF'
27270
+ background: src.tabsCardCheckedBackgroundColor
26936
27271
  }))
26937
27272
  };
26938
27273
  };
26939
27274
  var getLineStyle = function getLineStyle() {
26940
27275
  return {
26941
- '$tab': {
27276
+ '&[data-soui-shape="line"] $tab': {
26942
27277
  '&:after': {
26943
27278
  display: 'none'
26944
27279
  }
@@ -27911,7 +28246,8 @@ var textarea_input = objectSpread2_default()(objectSpread2_default()(objectSprea
27911
28246
  width: '100%',
27912
28247
  boxSizing: 'border-box',
27913
28248
  position: 'relative',
27914
- flexWrap: 'wrap'
28249
+ flexWrap: 'wrap',
28250
+ minHeight: "calc(".concat(src.lineHeightDynamic, " + ").concat(src.inputPaddingY, " * 2)")
27915
28251
  }, textarea_wrapper)
27916
28252
  }, textarea_resetWrapper), {}, {
27917
28253
  textarea: {
@@ -27931,11 +28267,13 @@ var textarea_input = objectSpread2_default()(objectSpread2_default()(objectSprea
27931
28267
  backgroundColor: 'transparent',
27932
28268
  resize: 'none',
27933
28269
  boxSizing: 'border-box',
27934
- minHeight: "calc(".concat(src.lineHeightDynamic, " + ").concat(src.inputPaddingY, " * 2)"),
27935
28270
  // why: 为了让滚动条的轨道不遮盖右上角和右下角的圆角; 注: chrome >= 121才支持scrollbar-color
27936
28271
  scrollbarColor: "".concat(src.inputBorderColor, " transparent"),
27937
28272
  '&$resize': {
27938
28273
  resize: 'vertical'
28274
+ },
28275
+ '&:not($shadow)': {
28276
+ minHeight: '-webkit-fill-available'
27939
28277
  }
27940
28278
  },
27941
28279
  resize: {
@@ -28912,6 +29250,9 @@ var treeSelectStyle = objectSpread2_default()(objectSpread2_default()({
28912
29250
  },
28913
29251
  compressedWrapper: {
28914
29252
  width: 0,
29253
+ overflow: 'hidden'
29254
+ },
29255
+ compressedBoundWrapper: {
28915
29256
  overflow: 'auto'
28916
29257
  },
28917
29258
  controlMouse: {
@@ -29499,7 +29840,11 @@ var uploadStyle = {
29499
29840
  width: src.uploadImageResultMaskIconSize,
29500
29841
  height: src.uploadImageResultMaskIconSize,
29501
29842
  borderColor: src.uploadImageResultMaskIconColor,
29502
- borderTopColor: 'transparent'
29843
+ borderTopColor: 'transparent',
29844
+ '$resultText &': {
29845
+ borderColor: src.uploadResultUploadingIconColor,
29846
+ borderTopColor: 'transparent'
29847
+ }
29503
29848
  },
29504
29849
  imageResultMaskInfo: {
29505
29850
  lineHeight: src.lineHeightDynamic,
@@ -30312,26 +30657,11 @@ var usePopup = function usePopup(props) {
30312
30657
  }
30313
30658
  setOpenState(!!props.open);
30314
30659
  }, [props.open]);
30315
-
30316
- // const getPopUpHeight = () => {
30317
- // let height = 0;
30318
- // if (popupRef.current) {
30319
- // const el = popupRef.current;
30320
- // const parent = el?.parentElement;
30321
- // let clone = el.cloneNode(true) as HTMLElement;
30322
- // clone.style.opacity = '0';
30323
- // clone.style.display = '';
30324
- // clone.style.visibility = 'visible';
30325
- // clone.style.pointerEvents = 'none';
30326
- // parent?.appendChild(clone);
30327
- // height = clone.offsetHeight;
30328
- // parent?.removeChild(clone);
30329
- // //@ts-ignore
30330
- // clone = null;
30331
- // }
30332
- // return height;
30333
- // };
30334
-
30660
+ (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
30661
+ if (props.open === undefined && defaultOpen) {
30662
+ setOpenState(true);
30663
+ }
30664
+ }, []);
30335
30665
  var handleFocus = function handleFocus(delay) {
30336
30666
  if (props.open === undefined) {
30337
30667
  updatePosition();
@@ -30364,17 +30694,20 @@ var usePopup = function usePopup(props) {
30364
30694
  }
30365
30695
  };
30366
30696
  var handleMouseEnter = use_persist_fn(function (e) {
30367
- var _targetEvents$onMouse;
30697
+ var _targetEvents$onMouse, _targetRef$current, _popupRef$current2;
30368
30698
  targetEvents === null || targetEvents === void 0 || (_targetEvents$onMouse = targetEvents.onMouseEnter) === null || _targetEvents$onMouse === void 0 || _targetEvents$onMouse.call(targetEvents, e);
30369
30699
  if (trigger !== 'hover') return;
30370
- handleHoverToggle(true);
30700
+ var isParentContainsCurrent = (_targetRef$current = targetRef.current) === null || _targetRef$current === void 0 ? void 0 : _targetRef$current.contains(e.target);
30701
+ if (isParentContainsCurrent || popupRef !== null && popupRef !== void 0 && (_popupRef$current2 = popupRef.current) !== null && _popupRef$current2 !== void 0 && _popupRef$current2.contains(e.target)) {
30702
+ handleHoverToggle(true);
30703
+ }
30371
30704
  });
30372
30705
  var handleMouseLeave = use_persist_fn(function (e) {
30373
- var _targetEvents$onMouse2, _popupRef$current2;
30706
+ var _targetEvents$onMouse2, _popupRef$current3;
30374
30707
  targetEvents === null || targetEvents === void 0 || (_targetEvents$onMouse2 = targetEvents.onMouseLeave) === null || _targetEvents$onMouse2 === void 0 || _targetEvents$onMouse2.call(targetEvents, e);
30375
30708
  if (trigger !== 'hover') return;
30376
30709
  // @ts-ignore
30377
- if (e.relatedTarget instanceof HTMLElement && (_popupRef$current2 = popupRef.current) !== null && _popupRef$current2 !== void 0 && _popupRef$current2.contains(e.relatedTarget)) {
30710
+ if (e.relatedTarget instanceof HTMLElement && (_popupRef$current3 = popupRef.current) !== null && _popupRef$current3 !== void 0 && _popupRef$current3.contains(e.relatedTarget)) {
30378
30711
  return;
30379
30712
  }
30380
30713
  handleHoverToggle(false);
@@ -30673,6 +31006,10 @@ var getFieldId = function getFieldId(name, formName) {
30673
31006
  if (!name) return undefined;
30674
31007
  return "".concat(formName ? "".concat(formName, "_") : '').concat(name);
30675
31008
  };
31009
+ var getOriginField = function getOriginField(name, formName) {
31010
+ if (!name || !formName) return '';
31011
+ return name.replace("".concat(formName, "_"), '');
31012
+ };
30676
31013
  ;// CONCATENATED MODULE: ../hooks/src/utils/attribute.ts
30677
31014
  var getDataAttribute = function getDataAttribute(attrs) {
30678
31015
  return Object.keys(attrs).reduce(function (acc, key) {
@@ -31031,6 +31368,23 @@ var getCurrentCSSZoom = function getCurrentCSSZoom() {
31031
31368
  // height: rect.height * zoomRatio,
31032
31369
  // }
31033
31370
  // }
31371
+
31372
+ var getScrollPosition = function getScrollPosition(element) {
31373
+ if (!element) return {
31374
+ scrollTop: 0,
31375
+ scrollLeft: 0
31376
+ };
31377
+ if (element === document.documentElement || element === document.body) {
31378
+ return {
31379
+ scrollTop: document.documentElement.scrollTop || document.body.scrollTop,
31380
+ scrollLeft: document.documentElement.scrollLeft || document.body.scrollLeft
31381
+ };
31382
+ }
31383
+ return {
31384
+ scrollTop: element.scrollTop,
31385
+ scrollLeft: element.scrollLeft
31386
+ };
31387
+ };
31034
31388
  ;// CONCATENATED MODULE: ../hooks/src/common/use-position-style/index.ts
31035
31389
 
31036
31390
 
@@ -31264,7 +31618,7 @@ var usePositionStyle = function usePositionStyle(config) {
31264
31618
  _v = _targetPosition$split4[1];
31265
31619
  if (_v === 'top') {
31266
31620
  style.top = rect.top - containerRect.top + containerScroll.top - (offset ? offset[1] : 0);
31267
- setTransform(style, '');
31621
+ setTransform(style, 'translateX(0%)');
31268
31622
  } else if (_v === 'bottom') {
31269
31623
  style.top = rect.bottom - containerRect.top + containerScroll.top + (offset ? offset[1] : 0);
31270
31624
  setTransform(style, 'translateY(-100%)');
@@ -31287,17 +31641,18 @@ var usePositionStyle = function usePositionStyle(config) {
31287
31641
  };
31288
31642
  };
31289
31643
  var getAbsoluteStyle = function getAbsoluteStyle(position) {
31290
- var _scrollElRef$current, _scrollElRef$current2, _scrollElRef$current3;
31644
+ var _scrollElRef$current;
31291
31645
  if (!parentElRef.current) return {
31292
31646
  style: hideStyle
31293
31647
  };
31294
31648
  var rect = context.parentRect;
31295
31649
  var needCheck = !show || !shallow_equal(context.prevParentPosition, parentElNewPosition);
31296
- var scrollTop = (scrollElRef === null || scrollElRef === void 0 || (_scrollElRef$current = scrollElRef.current) === null || _scrollElRef$current === void 0 ? void 0 : _scrollElRef$current.scrollTop) || 0;
31297
- var scrollLeft = (scrollElRef === null || scrollElRef === void 0 || (_scrollElRef$current2 = scrollElRef.current) === null || _scrollElRef$current2 === void 0 ? void 0 : _scrollElRef$current2.scrollLeft) || 0;
31298
- if (needCheck && scrollElRef !== null && scrollElRef !== void 0 && scrollElRef.current && (_scrollElRef$current3 = scrollElRef.current) !== null && _scrollElRef$current3 !== void 0 && _scrollElRef$current3.contains(parentElRef.current)) {
31299
- var _scrollElRef$current4;
31300
- var visibleRect = ((_scrollElRef$current4 = scrollElRef.current) === null || _scrollElRef$current4 === void 0 ? void 0 : _scrollElRef$current4.getBoundingClientRect()) || {};
31650
+ var _getScrollPosition = getScrollPosition(scrollElRef === null || scrollElRef === void 0 ? void 0 : scrollElRef.current),
31651
+ scrollTop = _getScrollPosition.scrollTop,
31652
+ scrollLeft = _getScrollPosition.scrollLeft;
31653
+ if (needCheck && scrollElRef !== null && scrollElRef !== void 0 && scrollElRef.current && (_scrollElRef$current = scrollElRef.current) !== null && _scrollElRef$current !== void 0 && _scrollElRef$current.contains(parentElRef.current)) {
31654
+ var _scrollElRef$current2;
31655
+ var visibleRect = ((_scrollElRef$current2 = scrollElRef.current) === null || _scrollElRef$current2 === void 0 ? void 0 : _scrollElRef$current2.getBoundingClientRect()) || {};
31301
31656
  if (rect.bottom < visibleRect.top || rect.top > visibleRect.bottom + scrollTop || rect.right < visibleRect.left || rect.left > visibleRect.right + scrollLeft) {
31302
31657
  return {
31303
31658
  style: hideStyle
@@ -31371,7 +31726,9 @@ var usePositionStyle = function usePositionStyle(config) {
31371
31726
  }
31372
31727
 
31373
31728
  // 当父元素的滚动容器滚动时,判断是否需要更新弹出层位置,包括是否隐藏弹出层(通过hideStyle隐藏,不是show状态)
31374
- context.prevParentPosition = parentElNewPosition;
31729
+ if (show) {
31730
+ context.prevParentPosition = parentElNewPosition;
31731
+ }
31375
31732
  });
31376
31733
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(updateStyle, [show, position, absolute, updateKey, fixedWidth, parentElNewPosition, popupElSize]);
31377
31734
  return {
@@ -31885,6 +32242,13 @@ var _process;
31885
32242
 
31886
32243
 
31887
32244
 
32245
+
32246
+ /**
32247
+ * @en Global configuration for Empty component
32248
+ * @cn Empty组件的全局配置
32249
+ * @version 3.8.0
32250
+ */
32251
+
31888
32252
  var processEnv = typeof process !== 'undefined' ? (_process = process) === null || process === void 0 ? void 0 : ({"NODE_ENV":"production","PUBLIC_PATH":"/"}) : {};
31889
32253
  var src_config_config = {
31890
32254
  prefix: 'soui',
@@ -31893,6 +32257,7 @@ var src_config_config = {
31893
32257
  trim: undefined,
31894
32258
  spin: 'ring',
31895
32259
  tooltip: undefined,
32260
+ empty: undefined,
31896
32261
  direction: 'ltr',
31897
32262
  popupContainer: null
31898
32263
  };
@@ -31978,6 +32343,9 @@ var useContainer = function useContainer() {
31978
32343
  if (!context.element) {
31979
32344
  context.element = document.createElement('div');
31980
32345
  context.element.setAttribute('style', 'position: absolute; top: 0px; left: 0px; width: 100%;');
32346
+ if (props.containerClassName) {
32347
+ context.element.classList.add(props.containerClassName);
32348
+ }
31981
32349
  }
31982
32350
  var rootContainer = getRootContainer(props);
31983
32351
  if (rootContainer && context.element.parentElement !== rootContainer) {
@@ -32126,7 +32494,8 @@ var Popover = function Popover(props) {
32126
32494
  _props$zIndex = props.zIndex,
32127
32495
  zIndex = _props$zIndex === void 0 ? 1060 : _props$zIndex;
32128
32496
  var _React$useRef = external_root_React_commonjs2_react_commonjs_react_amd_react_default().useRef({
32129
- rendered: false
32497
+ rendered: false,
32498
+ hasOpened: false
32130
32499
  }),
32131
32500
  context = _React$useRef.current;
32132
32501
  var config = useConfig();
@@ -32240,8 +32609,16 @@ var Popover = function Popover(props) {
32240
32609
  });
32241
32610
  }
32242
32611
  context.rendered = true;
32243
- var childrened = isFunc(children) ? children(closePop) : children;
32612
+
32613
+ // Track if popover has ever been opened
32614
+ if (open && !context.hasOpened) {
32615
+ context.hasOpened = true;
32616
+ }
32617
+
32618
+ // Only execute functional children after popover has been opened at least once
32619
+ var childrened = isFunc(children) ? context.hasOpened ? children(closePop) : null : children;
32244
32620
  var containerStyle = {
32621
+ display: open ? undefined : 'none',
32245
32622
  borderColor: props.border,
32246
32623
  backgroundColor: props.background
32247
32624
  };
@@ -32344,7 +32721,7 @@ var AvatarGroup = function AvatarGroup(props) {
32344
32721
  children: childrenHidden
32345
32722
  })
32346
32723
  }))]
32347
- }));
32724
+ }, "more-avatar"));
32348
32725
  }
32349
32726
  return /*#__PURE__*/(0,jsx_runtime.jsx)(AvatarProvider, {
32350
32727
  shape: shape,
@@ -32943,6 +33320,226 @@ var List = function List(props) {
32943
33320
  }));
32944
33321
  };
32945
33322
  /* harmony default export */ var breadcrumb_list = (List);
33323
+ ;// CONCATENATED MODULE: ../base/src/tooltip/tooltip.tsx
33324
+
33325
+
33326
+
33327
+
33328
+
33329
+
33330
+
33331
+
33332
+
33333
+
33334
+ var tooltip_devUseWarning = devUseWarning;
33335
+ var defaultDelay = 0;
33336
+ var Tooltip = function Tooltip(props) {
33337
+ var _jssStyle$tooltip, _config$tooltip;
33338
+ var _props$trigger = props.trigger,
33339
+ trigger = _props$trigger === void 0 ? 'hover' : _props$trigger,
33340
+ priorityDirection = props.priorityDirection,
33341
+ children = props.children,
33342
+ tip = props.tip,
33343
+ disabledChild = props.disabledChild,
33344
+ jssStyle = props.jssStyle,
33345
+ className = props.className,
33346
+ style = props.style,
33347
+ zIndex = props.zIndex,
33348
+ _props$showArrow = props.showArrow,
33349
+ showArrow = _props$showArrow === void 0 ? true : _props$showArrow,
33350
+ persistentProp = props.persistent,
33351
+ _props$type = props.type,
33352
+ type = _props$type === void 0 ? 'default' : _props$type,
33353
+ _props$position = props.position,
33354
+ popsitionProps = _props$position === void 0 ? 'auto' : _props$position,
33355
+ _props$popupGap = props.popupGap,
33356
+ popupGap = _props$popupGap === void 0 ? 0 : _props$popupGap;
33357
+ var tooltipClasses = jssStyle === null || jssStyle === void 0 || (_jssStyle$tooltip = jssStyle.tooltip) === null || _jssStyle$tooltip === void 0 ? void 0 : _jssStyle$tooltip.call(jssStyle);
33358
+ var config = useConfig();
33359
+ var persistent = persistentProp !== null && persistentProp !== void 0 ? persistentProp : (_config$tooltip = config.tooltip) === null || _config$tooltip === void 0 ? void 0 : _config$tooltip.persistent;
33360
+ var childrenProps = /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_.isValidElement)(children) ? children === null || children === void 0 ? void 0 : children.props : {};
33361
+ var delay = props.delay || props.mouseEnterDelay || defaultDelay;
33362
+ var _usePopup = use_popup({
33363
+ position: popsitionProps,
33364
+ trigger: trigger,
33365
+ autoMode: 'popover',
33366
+ priorityDirection: priorityDirection,
33367
+ mouseEnterDelay: delay,
33368
+ targetEvents: disabledChild ? {} : childrenProps
33369
+ }),
33370
+ open = _usePopup.open,
33371
+ position = _usePopup.position,
33372
+ getTargetProps = _usePopup.getTargetProps,
33373
+ targetRef = _usePopup.targetRef,
33374
+ popupRef = _usePopup.popupRef,
33375
+ closePop = _usePopup.closePop;
33376
+ var events = getTargetProps();
33377
+ var _React$useState = external_root_React_commonjs2_react_commonjs_react_amd_react_default().useState(0),
33378
+ _React$useState2 = slicedToArray_default()(_React$useState, 2),
33379
+ updateKey = _React$useState2[0],
33380
+ setUpdateKey = _React$useState2[1];
33381
+ var handleUpdateKey = usePersistFn(function () {
33382
+ setUpdateKey(function (prev) {
33383
+ return (prev + 1) % 2;
33384
+ });
33385
+ });
33386
+ var bindEvents = function bindEvents() {
33387
+ var _window;
33388
+ var targetEl = targetRef.current;
33389
+ if (!targetEl) return;
33390
+ if (events.onMouseEnter) targetEl.addEventListener('mouseenter', events.onMouseEnter);
33391
+ if (events.onMouseLeave) targetEl.addEventListener('mouseleave', events.onMouseLeave);
33392
+ if (events.onClick) targetEl.addEventListener('click', events.onClick);
33393
+ (_window = window) === null || _window === void 0 || _window.addEventListener('resize', handleUpdateKey);
33394
+ };
33395
+ var unbindEvents = function unbindEvents() {
33396
+ var _window2;
33397
+ var targetEl = targetRef.current;
33398
+ if (!targetEl) return;
33399
+ var events = getTargetProps();
33400
+ if (events.onMouseEnter) targetEl.removeEventListener('mouseenter', events.onMouseEnter);
33401
+ if (events.onMouseLeave) targetEl.removeEventListener('mouseleave', events.onMouseLeave);
33402
+ if (events.onClick) targetEl.removeEventListener('click', events.onClick);
33403
+ targetEl.removeEventListener('click', closePop);
33404
+ (_window2 = window) === null || _window2 === void 0 || _window2.removeEventListener('resize', handleUpdateKey);
33405
+ };
33406
+ (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
33407
+ if (!persistent) return;
33408
+ bindEvents();
33409
+ return function () {
33410
+ unbindEvents();
33411
+ };
33412
+ }, [persistent]);
33413
+ if (! /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_.isValidElement)(children)) {
33414
+ tooltip_devUseWarning.error('Tooltip children expect a single ReactElement.');
33415
+ return null;
33416
+ }
33417
+ if (!tip) return children;
33418
+ var inner = disabledChild ? /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
33419
+ className: tooltipClasses === null || tooltipClasses === void 0 ? void 0 : tooltipClasses.target,
33420
+ style: {
33421
+ cursor: 'not-allowed'
33422
+ },
33423
+ children: /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_.cloneElement)(children, {
33424
+ style: objectSpread2_default()(objectSpread2_default()({}, childrenProps.style), {}, {
33425
+ pointerEvents: 'none'
33426
+ })
33427
+ })
33428
+ }) : children;
33429
+ return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
33430
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("noscript", {
33431
+ ref: function ref(el) {
33432
+ if (!el) return;
33433
+ var targetEl = el.nextElementSibling;
33434
+ if (!targetEl) return;
33435
+ if (targetRef.current === targetEl) return;
33436
+ targetRef.current = targetEl;
33437
+ }
33438
+ }, 'ns'), /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_.cloneElement)(inner, events), /*#__PURE__*/(0,jsx_runtime.jsx)(absolute_list, {
33439
+ focus: open,
33440
+ parentElRef: targetRef,
33441
+ popupElRef: popupRef,
33442
+ absolute: true,
33443
+ position: position,
33444
+ fixedWidth: false,
33445
+ popupGap: popupGap,
33446
+ zIndex: zIndex,
33447
+ adjust: popsitionProps === 'auto',
33448
+ updateKey: updateKey,
33449
+ children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", objectSpread2_default()(objectSpread2_default()({
33450
+ className: classnames_default()(className, tooltipClasses === null || tooltipClasses === void 0 ? void 0 : tooltipClasses.rootClass, tooltipClasses === null || tooltipClasses === void 0 ? void 0 : tooltipClasses.wrapper, open && (tooltipClasses === null || tooltipClasses === void 0 ? void 0 : tooltipClasses.wrapperOpen)),
33451
+ style: {
33452
+ pointerEvents: persistent ? 'initial' : undefined,
33453
+ display: open ? 'block' : 'none'
33454
+ }
33455
+ }, getDataAttribute({
33456
+ type: type,
33457
+ position: position
33458
+ })), {}, {
33459
+ ref: popupRef,
33460
+ onMouseLeave: events.onMouseLeave,
33461
+ dir: config.direction,
33462
+ children: [showArrow && /*#__PURE__*/(0,jsx_runtime.jsx)("span", objectSpread2_default()({
33463
+ className: tooltipClasses === null || tooltipClasses === void 0 ? void 0 : tooltipClasses.arrow
33464
+ }, getDataAttribute({
33465
+ role: 'arrow'
33466
+ }))), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
33467
+ style: style,
33468
+ className: classnames_default()(tooltipClasses === null || tooltipClasses === void 0 ? void 0 : tooltipClasses.content),
33469
+ children: tip
33470
+ })]
33471
+ }))
33472
+ })]
33473
+ });
33474
+ };
33475
+ /* harmony default export */ var src_tooltip_tooltip = (Tooltip);
33476
+ ;// CONCATENATED MODULE: ../base/src/breadcrumb/breadcrumb-item.tsx
33477
+
33478
+
33479
+
33480
+
33481
+
33482
+
33483
+
33484
+
33485
+ var BreadcrumbItem = function BreadcrumbItem(_ref) {
33486
+ var _jssStyle$breadcrumb;
33487
+ var dataItem = _ref.dataItem,
33488
+ renderItem = _ref.renderItem,
33489
+ jssStyle = _ref.jssStyle,
33490
+ max = _ref.max;
33491
+ var contentRef = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)(null);
33492
+ var _useState = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useState)(false),
33493
+ _useState2 = slicedToArray_default()(_useState, 2),
33494
+ isOverflow = _useState2[0],
33495
+ setIsOverflow = _useState2[1];
33496
+ (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useLayoutEffect)(function () {
33497
+ if (contentRef.current && max !== undefined) {
33498
+ setIsOverflow(contentRef.current.offsetWidth > 150);
33499
+ }
33500
+ }, [max, dataItem]);
33501
+ var breadcrumbClasses = jssStyle === null || jssStyle === void 0 || (_jssStyle$breadcrumb = jssStyle.breadcrumb) === null || _jssStyle$breadcrumb === void 0 ? void 0 : _jssStyle$breadcrumb.call(jssStyle);
33502
+ var contentClass = classnames_default()(breadcrumbClasses.content, isOverflow && (breadcrumbClasses === null || breadcrumbClasses === void 0 ? void 0 : breadcrumbClasses.contentMaxWidth));
33503
+ var d = dataItem;
33504
+ var item = d.title;
33505
+ if (! /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().isValidElement(item)) {
33506
+ if (d.onClick || d.url) {
33507
+ var props = {
33508
+ onClick: d.onClick
33509
+ };
33510
+ if (d.url) props.href = d.url;
33511
+ item = /*#__PURE__*/(0,jsx_runtime.jsxs)("a", objectSpread2_default()(objectSpread2_default()({}, props), {}, {
33512
+ className: contentClass,
33513
+ role: "button",
33514
+ ref: contentRef,
33515
+ children: [d.icon, d.icon && d.title && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
33516
+ children: "\xA0"
33517
+ }), d.title]
33518
+ }));
33519
+ } else {
33520
+ item = /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
33521
+ className: contentClass,
33522
+ ref: contentRef,
33523
+ children: [d.icon, d.icon && d.title && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
33524
+ children: "\xA0"
33525
+ }), d.title]
33526
+ });
33527
+ }
33528
+ }
33529
+ if (renderItem) {
33530
+ return renderItem(dataItem);
33531
+ }
33532
+ if (isOverflow && d.title && max !== undefined) {
33533
+ return /*#__PURE__*/(0,jsx_runtime.jsx)(src_tooltip_tooltip, {
33534
+ jssStyle: jssStyle,
33535
+ type: "light",
33536
+ tip: d.title,
33537
+ children: item
33538
+ });
33539
+ }
33540
+ return item;
33541
+ };
33542
+ /* harmony default export */ var breadcrumb_item = (BreadcrumbItem);
32946
33543
  ;// CONCATENATED MODULE: ../base/src/breadcrumb/breadcrumb.tsx
32947
33544
 
32948
33545
 
@@ -32953,6 +33550,7 @@ var List = function List(props) {
32953
33550
 
32954
33551
 
32955
33552
 
33553
+
32956
33554
  var breadcrumb_getKey = getKey;
32957
33555
  var Breadcrumb = function Breadcrumb(props) {
32958
33556
  var _props$jssStyle, _props$jssStyle$bread;
@@ -32963,32 +33561,14 @@ var Breadcrumb = function Breadcrumb(props) {
32963
33561
  _props$maxHeight = props.maxHeight,
32964
33562
  maxHeight = _props$maxHeight === void 0 ? '50vh' : _props$maxHeight;
32965
33563
  var breadcrumbClasses = (_props$jssStyle = props.jssStyle) === null || _props$jssStyle === void 0 || (_props$jssStyle$bread = _props$jssStyle.breadcrumb) === null || _props$jssStyle$bread === void 0 ? void 0 : _props$jssStyle$bread.call(_props$jssStyle);
33564
+ var maxCount = props.max ? Math.max(2, props.max) : undefined;
32966
33565
  var renderItem = function renderItem(dataItem) {
32967
- var d = dataItem;
32968
- var item = d.title;
32969
- if (! /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().isValidElement(item)) {
32970
- if (d.onClick || d.url) {
32971
- var _props = {
32972
- onClick: d.onClick
32973
- };
32974
- if (d.url) _props.href = d.url;
32975
- item = /*#__PURE__*/(0,jsx_runtime.jsxs)("a", objectSpread2_default()(objectSpread2_default()({}, _props), {}, {
32976
- className: breadcrumbClasses === null || breadcrumbClasses === void 0 ? void 0 : breadcrumbClasses.content,
32977
- role: "button",
32978
- children: [d.icon, d.icon && d.title && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
32979
- children: "\xA0"
32980
- }), d.title]
32981
- }));
32982
- } else {
32983
- item = /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
32984
- className: breadcrumbClasses === null || breadcrumbClasses === void 0 ? void 0 : breadcrumbClasses.content,
32985
- children: [d.icon, d.icon && d.title && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
32986
- children: "\xA0"
32987
- }), d.title]
32988
- });
32989
- }
32990
- }
32991
- return props.renderItem ? props.renderItem(dataItem) : item;
33566
+ return /*#__PURE__*/(0,jsx_runtime.jsx)(breadcrumb_item, {
33567
+ dataItem: dataItem,
33568
+ renderItem: props.renderItem,
33569
+ jssStyle: props.jssStyle,
33570
+ max: maxCount
33571
+ });
32992
33572
  };
32993
33573
  var renderArray = function renderArray(data) {
32994
33574
  return /*#__PURE__*/(0,jsx_runtime.jsx)(breadcrumb_list, {
@@ -33000,14 +33580,27 @@ var Breadcrumb = function Breadcrumb(props) {
33000
33580
  };
33001
33581
  var className = classnames_default()(breadcrumbClasses === null || breadcrumbClasses === void 0 ? void 0 : breadcrumbClasses.rootClass, breadcrumbClasses === null || breadcrumbClasses === void 0 ? void 0 : breadcrumbClasses.wrapper, props.className);
33002
33582
  var getRenderData = function getRenderData() {
33003
- if (!props.max) return data;
33004
- if (data.length <= props.max) return data;
33583
+ if (!maxCount) return data;
33584
+ if (data.length <= maxCount) return data;
33005
33585
  var first = data[0];
33006
- var reset = data.slice(data.length - props.max + 1);
33586
+ var sliceIndex = data.length - maxCount + 1;
33587
+ var reset = data.slice(sliceIndex);
33588
+ var moreData = data.slice(1, sliceIndex);
33589
+ var moreClassName = classnames_default()(props.className, breadcrumbClasses.wrapperPopover);
33007
33590
  var more = {
33008
- title: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
33591
+ title: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
33009
33592
  className: classnames_default()(breadcrumbClasses === null || breadcrumbClasses === void 0 ? void 0 : breadcrumbClasses.content, breadcrumbClasses === null || breadcrumbClasses === void 0 ? void 0 : breadcrumbClasses.ellipsis),
33010
- children: "..."
33593
+ children: ["...", /*#__PURE__*/(0,jsx_runtime.jsx)(src_popover_popover, {
33594
+ jssStyle: props.jssStyle,
33595
+ useTextStyle: true,
33596
+ offset: [8, 0],
33597
+ popupGap: -4,
33598
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(Breadcrumb, objectSpread2_default()(objectSpread2_default()({}, props), {}, {
33599
+ className: moreClassName,
33600
+ data: moreData,
33601
+ max: undefined
33602
+ }))
33603
+ })]
33011
33604
  })
33012
33605
  };
33013
33606
  return [first, more].concat(toConsumableArray_default()(reset));
@@ -33017,10 +33610,15 @@ var Breadcrumb = function Breadcrumb(props) {
33017
33610
  style: props.style,
33018
33611
  children: data && getRenderData().map(function (d, index) {
33019
33612
  var itemFirst = Array.isArray(d) ? d[0] : d;
33020
- var isLastItem = index === (props.max !== undefined ? props.max : data.length - 1);
33613
+ var isLastItem = index === (maxCount !== undefined ? maxCount : data.length - 1);
33021
33614
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
33022
33615
  className: breadcrumbClasses === null || breadcrumbClasses === void 0 ? void 0 : breadcrumbClasses.item,
33023
- children: [Array.isArray(d) ? renderArray(d) : renderItem(d), !isLastItem && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
33616
+ children: [Array.isArray(d) ? renderArray(d) : /*#__PURE__*/(0,jsx_runtime.jsx)(breadcrumb_item, {
33617
+ dataItem: d,
33618
+ renderItem: renderItem,
33619
+ jssStyle: props.jssStyle,
33620
+ max: maxCount
33621
+ }), !isLastItem && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
33024
33622
  className: breadcrumbClasses === null || breadcrumbClasses === void 0 ? void 0 : breadcrumbClasses.separator,
33025
33623
  children: separator
33026
33624
  })]
@@ -33037,7 +33635,8 @@ var Breadcrumb = function Breadcrumb(props) {
33037
33635
 
33038
33636
  var breadcrumb_jssStyle = {
33039
33637
  breadcrumb: useBreadcrumbStyle,
33040
- popover: usePopoverStyle
33638
+ popover: usePopoverStyle,
33639
+ tooltip: useTooltipStyle
33041
33640
  };
33042
33641
  /* harmony default export */ var src_breadcrumb_breadcrumb_0 = (function (props) {
33043
33642
  return /*#__PURE__*/(0,jsx_runtime.jsx)(src_breadcrumb_breadcrumb, objectSpread2_default()({
@@ -34903,6 +35502,34 @@ function removeStack(id, removeListener) {
34903
35502
  }
34904
35503
  delete components[id];
34905
35504
  }
35505
+
35506
+ // 检测容器是否高度受限
35507
+ var isRootHeightConstrained = function isRootHeightConstrained(root, targetElement) {
35508
+ if (!root || root === document.body) {
35509
+ var bodyRect = document.body.getBoundingClientRect();
35510
+ var _targetRect = targetElement.getBoundingClientRect();
35511
+ // body的底部和targetElement的顶部永远不可能有相交,则是受限的
35512
+ if (bodyRect.bottom < _targetRect.top) {
35513
+ return true;
35514
+ } else {
35515
+ return false;
35516
+ }
35517
+ }
35518
+
35519
+ // 当root的overflow是auto或hidden,则认为不是受限的
35520
+ var rootStyle = window.getComputedStyle(root);
35521
+ if (rootStyle.overflow === 'auto' || rootStyle.overflow === 'hidden') {
35522
+ return false;
35523
+ }
35524
+
35525
+ // 当root的底部与targetElement的顶部永远不可能有相交,则是受限的
35526
+ var rootRect = root.getBoundingClientRect();
35527
+ var targetRect = targetElement.getBoundingClientRect();
35528
+ if (rootRect.top > targetRect.bottom || rootRect.bottom < targetRect.top) {
35529
+ return true;
35530
+ }
35531
+ return false;
35532
+ };
34906
35533
  function getObserver(obj, id) {
34907
35534
  var _obj$container = obj.container,
34908
35535
  container = _obj$container === void 0 ? null : _obj$container,
@@ -34912,6 +35539,10 @@ function getObserver(obj, id) {
34912
35539
  offscreen = obj.offscreen,
34913
35540
  noRemove = obj.noRemove;
34914
35541
  var fixedContainer = getClosestPositionedContainer(element, ['fixed', 'absolute']);
35542
+
35543
+ // 获取最优的观察器配置
35544
+ var candidateRoot = fixedContainer || container;
35545
+ var observerRoot = isRootHeightConstrained(candidateRoot, element) ? null : candidateRoot;
34915
35546
  var observer = new IntersectionObserver(function (entries) {
34916
35547
  entries.forEach(function (en) {
34917
35548
  if (en.isIntersecting || en.intersectionRatio > 0) {
@@ -34923,7 +35554,7 @@ function getObserver(obj, id) {
34923
35554
  }
34924
35555
  });
34925
35556
  }, {
34926
- root: fixedContainer || container,
35557
+ root: observerRoot,
34927
35558
  rootMargin: "".concat(offset, "px")
34928
35559
  });
34929
35560
  obj.observer = observer;
@@ -35316,6 +35947,26 @@ var getCompleteFieldKeys = function getCompleteFieldKeys(fields, allFields) {
35316
35947
  // 返回之前去重
35317
35948
  return Array.from(new Set(completeFields));
35318
35949
  };
35950
+
35951
+ /**
35952
+ * 将对象中的所有值设置为空, 如果值是数组,重置为空数组,如果是对象,重置为空对象,如果是基础类型,重置为undefined
35953
+ * @param obj 对象
35954
+ * @returns 空对象
35955
+ */
35956
+ var clearValue = function clearValue(obj) {
35957
+ if (isArray(obj)) {
35958
+ return obj.map(function (item) {
35959
+ return clearValue(item);
35960
+ });
35961
+ }
35962
+ if (is_isObject(obj)) {
35963
+ return Object.keys(obj).reduce(function (acc, key) {
35964
+ acc[key] = clearValue(obj[key]);
35965
+ return acc;
35966
+ }, {});
35967
+ }
35968
+ return undefined;
35969
+ };
35319
35970
  ;// CONCATENATED MODULE: ../hooks/src/components/use-check/use-check.ts
35320
35971
 
35321
35972
 
@@ -35349,11 +36000,19 @@ var useCheck = function useCheck(props) {
35349
36000
  var handleInputRef = use_fork_ref(inputRef, inputRefPo);
35350
36001
  var handleClick = function handleClick(otherHandlers, needStopPropagation) {
35351
36002
  return function (event) {
35352
- var _inputRef$current, _otherHandlers$onClic;
36003
+ var _otherHandlers$onClic;
35353
36004
  if (needStopPropagation) {
35354
36005
  event.stopPropagation();
35355
36006
  }
35356
- (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.click();
36007
+
36008
+ // 检查是否被 label 元素包裹,如果是则不需要手动触发 input.click()
36009
+ // 因为 label 会自动将点击事件传递给内部的 input 元素
36010
+ var target = event.currentTarget;
36011
+ var isInsideLabel = target.closest('label') !== null;
36012
+ if (!isInsideLabel) {
36013
+ var _inputRef$current;
36014
+ (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.click();
36015
+ }
35357
36016
  otherHandlers === null || otherHandlers === void 0 || (_otherHandlers$onClic = otherHandlers.onClick) === null || _otherHandlers$onClic === void 0 || _otherHandlers$onClic.call(otherHandlers, event);
35358
36017
  };
35359
36018
  };
@@ -35707,7 +36366,10 @@ var useInput = function useInput(params) {
35707
36366
  (_otherHandlers$onFocu = otherHandlers.onFocus) === null || _otherHandlers$onFocu === void 0 || _otherHandlers$onFocu.call(otherHandlers, event);
35708
36367
  setFocused(true);
35709
36368
  if (autoSelect) {
35710
- event.target.select();
36369
+ // why requestAnimationFrame: 当在文字身体上hover后立即点击,select()与浏览器的光标定位逻辑产生竞争,有可能导致只选中的部分文本,所以需要延迟一下
36370
+ requestAnimationFrame(function () {
36371
+ event.target.select();
36372
+ });
35711
36373
  }
35712
36374
  };
35713
36375
  };
@@ -36236,9 +36898,11 @@ function escapeRegExp() {
36236
36898
  timeOfDayValues: ['上午', '下午'],
36237
36899
  ok: '确定',
36238
36900
  cancel: '取消',
36901
+ reset: '重置',
36239
36902
  noData: '暂无数据',
36240
36903
  selectAll: '全选',
36241
36904
  loading: '加载中...',
36905
+ searchPlaceholder: '在筛选项中搜索',
36242
36906
  rules: {
36243
36907
  required: {
36244
36908
  array: '{title} 不能为空',
@@ -36263,6 +36927,7 @@ function escapeRegExp() {
36263
36927
  search: '搜索',
36264
36928
  urlInvalidMsg: '图片格式不正确,请重新上传',
36265
36929
  invalidAccept: '文件格式不正确',
36930
+ invalidImage: '图片格式不正确',
36266
36931
  notFound: '未找到'
36267
36932
  });
36268
36933
  ;// CONCATENATED MODULE: ../base/src/config/locale/en_US.ts
@@ -36301,9 +36966,11 @@ function escapeRegExp() {
36301
36966
  timeOfDayValues: ['a.m.', 'p.m.'],
36302
36967
  ok: 'Ok',
36303
36968
  cancel: 'Cancel',
36969
+ reset: 'Reset',
36304
36970
  noData: 'Data not found',
36305
36971
  selectAll: 'Select All',
36306
36972
  loading: 'loading...',
36973
+ searchPlaceholder: 'Search in filter options',
36307
36974
  rules: {
36308
36975
  required: {
36309
36976
  array: 'Please select {title}',
@@ -36328,6 +36995,7 @@ function escapeRegExp() {
36328
36995
  search: 'search',
36329
36996
  urlInvalidMsg: 'Picture format is incorrect, please upload again',
36330
36997
  invalidAccept: 'Invalid file format',
36998
+ invalidImage: 'Invalid image format',
36331
36999
  notFound: 'not found'
36332
37000
  });
36333
37001
  ;// CONCATENATED MODULE: ../base/src/config/locale/index.ts
@@ -38536,7 +39204,10 @@ var useFilter = function useFilter(props) {
38536
39204
  return getKey(keygen, item) === key;
38537
39205
  };
38538
39206
  var handleClearCreatedData = function handleClearCreatedData() {
38539
- setCreatedData(undefined);
39207
+ // why setTimeout: 避免回车时,新创建的数据走到了renderUnmatched逻辑中去
39208
+ setTimeout(function () {
39209
+ setCreatedData(undefined);
39210
+ }, 0);
38540
39211
  };
38541
39212
  var handleCreate = function handleCreate(text) {
38542
39213
  var createFn = typeof onCreate === 'boolean' ? function (t) {
@@ -38964,6 +39635,8 @@ var useTree = function useTree(props) {
38964
39635
  var _context$dataFlatStat2;
38965
39636
  context.updateMap.set(id, update);
38966
39637
  var isActive = activeProp === id;
39638
+ // 立即调用update函数设置正确的active状态
39639
+ if (isActive) update('active', isActive);
38967
39640
  return {
38968
39641
  active: isActive,
38969
39642
  expanded: !!((_context$dataFlatStat2 = context.dataFlatStatusMap.get(id)) !== null && _context$dataFlatStat2 !== void 0 && _context$dataFlatStat2.expanded)
@@ -39093,7 +39766,7 @@ var useTree = function useTree(props) {
39093
39766
  context.dataMap.set(id, item);
39094
39767
  if (virtual) {
39095
39768
  context.dataFlatStatusMap.set(id, {
39096
- active: false,
39769
+ active: activeProp === id,
39097
39770
  expanded: defaultExpandAll ? true : (expanded === null || expanded === void 0 ? void 0 : expanded.includes(id)) || false,
39098
39771
  fetching: false
39099
39772
  });
@@ -39317,9 +39990,9 @@ var useTree = function useTree(props) {
39317
39990
  var _context$value;
39318
39991
  if (mode !== MODE.MODE_0) return;
39319
39992
  (_context$value = context.value) === null || _context$value === void 0 || _context$value.forEach(function (id) {
39320
- var _ref3 = context.pathMap.get(id),
39321
- children = _ref3.children;
39322
- if (children.length) {
39993
+ var node = context.pathMap.get(id);
39994
+ var children = node === null || node === void 0 ? void 0 : node.children;
39995
+ if (children && children.length) {
39323
39996
  var noCheckedChildren = children.filter(function (cid) {
39324
39997
  var _context$value2;
39325
39998
  return !((_context$value2 = context.value) !== null && _context$value2 !== void 0 && _context$value2.includes(cid));
@@ -39430,16 +40103,31 @@ var useTree = function useTree(props) {
39430
40103
  var getFlatData = function getFlatData() {
39431
40104
  return context.dataFlat;
39432
40105
  };
39433
- var updateExpanded = usePersistFn(function (expanded) {
40106
+ var updateExpanded = usePersistFn(function (expanded, ignoreExpanded) {
39434
40107
  var tempExpandMap = new Set(expanded);
39435
40108
  if (!expanded) return;
39436
40109
  if (virtual) {
39437
40110
  expandedFlat(expanded);
39438
40111
  }
39439
- context.updateMap.forEach(function (update, id) {
39440
- update('expanded', tempExpandMap.has(id));
40112
+ context.updateMap.forEach(function (call, id) {
40113
+ if (ignoreExpanded) {
40114
+ var nodeStatus = call('get', true);
40115
+ if (nodeStatus && nodeStatus.hasTriggered) return;
40116
+ }
40117
+ call('expanded', tempExpandMap.has(id));
39441
40118
  });
39442
40119
  });
40120
+ (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
40121
+ if (props.datum) return;
40122
+ if (!dataUpdate) return;
40123
+ setData(data);
40124
+ var nextExpanded = props.expanded || props.defaultExpanded || [];
40125
+ if (!defaultExpandAll && !shallowEqual(nextExpanded, expanded)) {
40126
+ onExpand(nextExpanded);
40127
+ updateExpanded(nextExpanded, true);
40128
+ }
40129
+ updateInnerCheckStatus();
40130
+ }, [props.data]);
39443
40131
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
39444
40132
  if (defaultExpandAll) {
39445
40133
  var nextExpanded = [];
@@ -39449,19 +40137,9 @@ var useTree = function useTree(props) {
39449
40137
  }
39450
40138
  });
39451
40139
  onExpand(nextExpanded);
40140
+ updateExpanded(nextExpanded, true);
39452
40141
  }
39453
- }, [context.dataMap]);
39454
- (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
39455
- if (props.datum) return;
39456
- if (!dataUpdate) return;
39457
- setData(data);
39458
- var nextExpanded = props.expanded || props.defaultExpanded || [];
39459
- if (!shallowEqual(nextExpanded, expanded)) {
39460
- onExpand(nextExpanded);
39461
- updateExpanded(nextExpanded);
39462
- }
39463
- updateInnerCheckStatus();
39464
- }, [props.data]);
40142
+ }, [context.dataMap, props.data]);
39465
40143
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
39466
40144
  if (props.datum) return;
39467
40145
  setValue(value);
@@ -39762,6 +40440,7 @@ var VirtualList = function VirtualList(props) {
39762
40440
  className = props.className,
39763
40441
  lineHeight = props.lineHeight,
39764
40442
  height = props.height,
40443
+ keepScrollTop = props.keepScrollTop,
39765
40444
  keepScrollHeight = props.keepScrollHeight,
39766
40445
  renderItem = props.renderItem,
39767
40446
  customRenderItem = props.customRenderItem,
@@ -39797,7 +40476,8 @@ var VirtualList = function VirtualList(props) {
39797
40476
  preIndex: null,
39798
40477
  topTimer: null,
39799
40478
  rateTimer: null,
39800
- shouldUpdateHeight: true
40479
+ shouldUpdateHeight: true,
40480
+ prevWrapperRefHeight: 0
39801
40481
  }),
39802
40482
  context = _useRef.current;
39803
40483
  var getContentHeight = function getContentHeight(index) {
@@ -39957,10 +40637,14 @@ var VirtualList = function VirtualList(props) {
39957
40637
  context.preIndex = startIndex;
39958
40638
  }, [startIndex]);
39959
40639
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useLayoutEffect)(function () {
39960
- if (keepScrollHeight) return;
40640
+ var _wrapperRef$current2;
40641
+ var currentWrapperRefHeight = ((_wrapperRef$current2 = wrapperRef.current) === null || _wrapperRef$current2 === void 0 ? void 0 : _wrapperRef$current2.clientHeight) || 0;
40642
+ if (keepScrollHeight && currentWrapperRefHeight === context.prevWrapperRefHeight) return;
40643
+ if (keepScrollTop) return;
39961
40644
  // 数据变化的时候清空掉 preIndex, 如果之前有缓存的index, setRowHeight 会有问题
39962
40645
  setTop(0);
39963
40646
  setStartIndex(0);
40647
+ context.prevWrapperRefHeight = currentWrapperRefHeight;
39964
40648
  return function () {
39965
40649
  context.preIndex = null;
39966
40650
  };
@@ -40002,6 +40686,7 @@ var VirtualList = function VirtualList(props) {
40002
40686
 
40003
40687
 
40004
40688
 
40689
+
40005
40690
  function getHighlightText(_ref) {
40006
40691
  var nodeList = _ref.nodeList,
40007
40692
  searchWords = _ref.searchWords,
@@ -40010,22 +40695,31 @@ function getHighlightText(_ref) {
40010
40695
  if (!enable || !searchWords) {
40011
40696
  return nodeList;
40012
40697
  }
40013
- var transformNode = function transformNode(node) {
40014
- var _node$props;
40015
- if (node && typeof ((_node$props = node.props) === null || _node$props === void 0 ? void 0 : _node$props.children) === 'string') {
40016
- return /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_.cloneElement)(node, undefined, /*#__PURE__*/(0,jsx_runtime.jsx)(HighlightText, {
40017
- textToHighlight: node.props.children,
40698
+
40699
+ // 递归转换节点
40700
+ var transformNode = function transformNode(node, index) {
40701
+ // 如果是合法的 React 元素
40702
+ if ( /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().isValidElement(node) && node.props && node.props.children) {
40703
+ // 对 children 递归调用 getHighlightText 进行转换
40704
+ var transformedChildren = getHighlightText({
40705
+ nodeList: node.props.children,
40018
40706
  searchWords: searchWords,
40019
- highlightClassName: highlightClassName
40020
- }));
40707
+ highlightClassName: highlightClassName,
40708
+ enable: enable
40709
+ });
40710
+ return /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_.cloneElement)(node, objectSpread2_default()(objectSpread2_default()({}, node.props), {}, {
40711
+ key: index
40712
+ }), transformedChildren);
40021
40713
  }
40022
- if (node && typeof node === 'string') {
40714
+ // 如果节点为字符串,则直接高亮替换
40715
+ if (typeof node === 'string') {
40023
40716
  return /*#__PURE__*/(0,jsx_runtime.jsx)(HighlightText, {
40024
40717
  textToHighlight: node,
40025
40718
  searchWords: searchWords,
40026
40719
  highlightClassName: highlightClassName
40027
40720
  });
40028
40721
  }
40722
+ // 其他情况直接返回原节点
40029
40723
  return node;
40030
40724
  };
40031
40725
  return isArray(nodeList) ? nodeList.map(transformNode) : transformNode(nodeList);
@@ -40041,8 +40735,7 @@ function HighlightText(_ref2) {
40041
40735
  searchWords = searchWords.slice(0, 500);
40042
40736
  }
40043
40737
 
40044
- // 注意这里的括号,这里使用了带capture group功能的正则,来split字符串
40045
- // 从而在strArr中可以保留匹配文本
40738
+ // capture group 的正则用于 split 保留匹配文本
40046
40739
  var re = new RegExp("(".concat(escapeRegExp(searchWords), ")"), 'i');
40047
40740
  var strArr = textToHighlight.split(re);
40048
40741
  return /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
@@ -40090,8 +40783,8 @@ var CascaderNode = function CascaderNode(props) {
40090
40783
  _useState2 = slicedToArray_default()(_useState, 2),
40091
40784
  loading = _useState2[0],
40092
40785
  setLoading = _useState2[1];
40093
- // const [activeState, setActiveState] = useState(false);
40094
40786
  var checkboxRef = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)();
40787
+ var hasHandleSelectRef = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)(false);
40095
40788
  var isDisabled = datum.isDisabled(id);
40096
40789
  var children = data[childrenKey];
40097
40790
  var hasChildren = children && children.length > 0;
@@ -40132,13 +40825,17 @@ var CascaderNode = function CascaderNode(props) {
40132
40825
  }
40133
40826
  if (isHoverAble) {
40134
40827
  events.onMouseEnter = handlePathChange;
40135
- if (multiple) events.onClick = handleSelect;
40828
+ if (multiple) {
40829
+ events.onClick = handleSelect;
40830
+ hasHandleSelectRef.current = true;
40831
+ }
40136
40832
  } else if (isRealLeafNode && multiple) {
40137
40833
  // 非hover模式下: 末级节点支持整个节点区域点击选中checkbox
40138
40834
  events.onClick = function (e) {
40139
40835
  handleClick(e);
40140
40836
  handleSelect(e);
40141
40837
  };
40838
+ hasHandleSelectRef.current = true;
40142
40839
  }
40143
40840
  return events;
40144
40841
  };
@@ -40194,7 +40891,7 @@ var CascaderNode = function CascaderNode(props) {
40194
40891
  className: styles.optionCheckbox,
40195
40892
  checked: datum.getChecked(id),
40196
40893
  disabled: isDisabled,
40197
- onChange: isRealLeafNode && multiple ? undefined : handleChange
40894
+ onChange: hasHandleSelectRef.current ? undefined : handleChange
40198
40895
  }), renderContent(), renderIcon()]
40199
40896
  })
40200
40897
  }));
@@ -41111,7 +41808,7 @@ function getResetMore(onFilter, container, doms) {
41111
41808
  var paddingLeft = parsePxToNumber(style.paddingLeft);
41112
41809
  var paddingRight = parsePxToNumber(style.paddingRight);
41113
41810
  var minFilterWidth = onFilter ? 16 : 0;
41114
- var contentWidth = clientWidth - paddingLeft - paddingRight - minFilterWidth - 1;
41811
+ var contentWidth = clientWidth - paddingLeft - paddingRight - minFilterWidth;
41115
41812
  var hideEl = items.pop();
41116
41813
  var hideElStyle = getComputedStyle(hideEl);
41117
41814
  var hideMargin = parsePxToNumber(hideElStyle.marginLeft) + parsePxToNumber(hideElStyle.marginRight);
@@ -41176,16 +41873,7 @@ var More = function More(props) {
41176
41873
  var shouldShowMore = showNum < 0 || showNum >= data.length;
41177
41874
  var before = [];
41178
41875
  var after = [];
41179
- var itemsLength = 0;
41180
- var tagStyle = shouldShowMore ? {
41181
- position: 'absolute',
41182
- zIndex: -100,
41183
- userSelect: 'none',
41184
- msUserSelect: 'none',
41185
- contain: 'layout',
41186
- opacity: 0,
41187
- pointerEvents: 'none'
41188
- } : {};
41876
+ var afterLength = 0;
41189
41877
  if (!shouldShowMore) {
41190
41878
  before = new Array(showNum).fill(undefined).map(function (_item, index) {
41191
41879
  return data[index];
@@ -41193,9 +41881,9 @@ var More = function More(props) {
41193
41881
  after = new Array(data.length - showNum).fill(undefined).map(function (_item, index) {
41194
41882
  return data[showNum + index];
41195
41883
  });
41196
- itemsLength = after.length;
41884
+ afterLength = after.length;
41197
41885
  }
41198
- if (showNum < 0 || showNum >= data.length) {
41886
+ if (shouldShowMore) {
41199
41887
  return /*#__PURE__*/(0,jsx_runtime.jsxs)((external_root_React_commonjs2_react_commonjs_react_amd_react_default()).Fragment, {
41200
41888
  children: [data, /*#__PURE__*/(0,jsx_runtime.jsx)(src_tag_tag, {
41201
41889
  className: styles.tag,
@@ -41222,10 +41910,9 @@ var More = function More(props) {
41222
41910
  className: styles.tag,
41223
41911
  jssStyle: jssStyle,
41224
41912
  size: size,
41225
- style: tagStyle,
41226
41913
  mode: visible ? 'fill' : 'bright',
41227
41914
  color: visible ? 'info' : 'default',
41228
- children: shouldShowMore ? '+' : "+".concat(itemsLength)
41915
+ children: shouldShowMore ? '+' : "+".concat(afterLength)
41229
41916
  }, 'more'), compressed !== 'hide-popover' && /*#__PURE__*/(0,jsx_runtime.jsx)(src_popover_popover, {
41230
41917
  jssStyle: jssStyle,
41231
41918
  className: compressedClassName,
@@ -41323,12 +42010,16 @@ var result_Result = function Result(props) {
41323
42010
  setShouldResetMore = _useState4[1];
41324
42011
  var render = useRender();
41325
42012
  var resultRef = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)(null);
41326
- var prevMore = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)(more);
42013
+ var _useRef = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)({
42014
+ prevMore: more,
42015
+ maxMore: 0
42016
+ }),
42017
+ context = _useRef.current;
41327
42018
  var removeLock = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)(false);
41328
42019
  var showInput = allowOnFilter;
41329
42020
  var mounted = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)(false);
41330
42021
  var styles = props.classes;
41331
- var rootClass = classnames_default()(styles.resultTextWrapper, compressed && styles.compressedWrapper, multiple && styles.multipleResultWrapper, multiple && compressed && styles.multipleCompressedWrapper);
42022
+ var rootClass = classnames_default()(styles.resultTextWrapper, compressed && styles.compressedWrapper, compressedBound && compressedBound > 0 && styles.compressedBoundWrapper, multiple && styles.multipleResultWrapper, multiple && compressed && styles.multipleCompressedWrapper);
41332
42023
  var renderResultContent = function renderResultContent(data, index, nodes) {
41333
42024
  if (checkUnMatched(data)) {
41334
42025
  var _data = data;
@@ -41526,7 +42217,6 @@ var result_Result = function Result(props) {
41526
42217
  data: result,
41527
42218
  datas: renderMultipleResult.datas,
41528
42219
  size: size,
41529
- more: moreNumber,
41530
42220
  compressed: compressed,
41531
42221
  renderCompressed: renderCompressed,
41532
42222
  compressedClassName: compressedClassName,
@@ -41556,15 +42246,27 @@ var result_Result = function Result(props) {
41556
42246
  }
41557
42247
  return result;
41558
42248
  };
41559
- var handleResetMore = function handleResetMore() {
42249
+ var handleResetMore = function handleResetMore(valueLength) {
41560
42250
  if (!compressed) return;
41561
42251
  if (isCompressedBound()) return;
41562
42252
  if (removeLock.current) {
41563
42253
  removeLock.current = false;
41564
42254
  return;
41565
42255
  }
41566
- setMore(-1);
41567
- setShouldResetMore(true);
42256
+
42257
+ // why requestIdleCallback: 当选项数量远超容器承载能力时,延迟昂贵的DOM计算,在1000+选项时,同步的重新计算会导致INP超过1000ms
42258
+ var hasExistingCompression = context.prevMore > 0;
42259
+ var hasValidEstimate = context.maxMore > 0;
42260
+ var exceedsCapacity = valueLength && valueLength > context.maxMore;
42261
+ if (hasExistingCompression && hasValidEstimate && exceedsCapacity && typeof requestIdleCallback !== 'undefined') {
42262
+ requestIdleCallback(function () {
42263
+ setMore(-1);
42264
+ setShouldResetMore(true);
42265
+ });
42266
+ } else {
42267
+ if (!renderCompressed) setMore(-1);
42268
+ setShouldResetMore(true);
42269
+ }
41568
42270
  };
41569
42271
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
41570
42272
  if (!focus && mounted.current) {
@@ -41619,7 +42321,7 @@ var result_Result = function Result(props) {
41619
42321
  }
41620
42322
  }, [focus, multiple]);
41621
42323
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useLayoutEffect)(function () {
41622
- handleResetMore();
42324
+ handleResetMore((valueProp === null || valueProp === void 0 ? void 0 : valueProp.length) || 0);
41623
42325
  }, [valueProp, data]);
41624
42326
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
41625
42327
  // datum.getDataByValues(value); 需要等待 useTree useEffect 执行完毕 才能获取到
@@ -41630,7 +42332,7 @@ var result_Result = function Result(props) {
41630
42332
  var tagClassName = ".".concat(styles.tag.split(' ')[0]);
41631
42333
  if (shouldResetMore && result_isArray(value) && (value || []).length) {
41632
42334
  var newMore = getResetMore(showInput, resultRef.current, resultRef.current.querySelectorAll(tagClassName));
41633
- prevMore.current = newMore;
42335
+ context.prevMore = newMore;
41634
42336
  setMore(newMore);
41635
42337
  setShouldResetMore(false);
41636
42338
  } else {
@@ -41644,6 +42346,7 @@ var result_Result = function Result(props) {
41644
42346
  if (!resultRef.current) return;
41645
42347
  if (!compressed) return;
41646
42348
  if (isCompressedBound()) return;
42349
+ context.maxMore = Math.floor(resultRef.current.clientWidth / 20);
41647
42350
  var cancelObserver = addResizeObserver(resultRef.current, handleResetMore, {
41648
42351
  direction: 'x'
41649
42352
  });
@@ -42003,6 +42706,7 @@ var Cascader = function Cascader(props0) {
42003
42706
  }
42004
42707
  handleChange([]);
42005
42708
  if (open) closePop();
42709
+ if (props.onClear) props.onClear();
42006
42710
  };
42007
42711
  var handleResultItemClick = function handleResultItemClick(e, item) {
42008
42712
  e.stopPropagation();
@@ -42285,8 +42989,8 @@ var Cascader = function Cascader(props0) {
42285
42989
  }
42286
42990
  }, [data]);
42287
42991
 
42288
- // 修复外部受控打开的场景下,从外部修改value导致的面板勾选情况没有及时同步
42289
- if (openProp && !shallowEqual(value, datum.getValue())) {
42992
+ // 修复外部受控打开或renderOptionList做全选的场景下,从外部修改value导致的面板勾选情况没有及时同步
42993
+ if ((openProp || props.renderOptionList) && !shallowEqual(value, datum.getValue())) {
42290
42994
  datum.setValue(value);
42291
42995
  }
42292
42996
  ;
@@ -42295,9 +42999,6 @@ var Cascader = function Cascader(props0) {
42295
42999
  datum.setValue(value);
42296
43000
  if (!open) return;
42297
43001
  updatePathByValue();
42298
- if (props.renderOptionList) {
42299
- updatePath();
42300
- }
42301
43002
  }, [value, open]);
42302
43003
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
42303
43004
  if (filterText !== undefined) {
@@ -42422,6 +43123,7 @@ var useFormBind = function useFormBind() {
42422
43123
  var FormItemContext = /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_.createContext({
42423
43124
  updateError: function updateError() {}
42424
43125
  });
43126
+ FormItemContext.displayName = 'FormItemContext';
42425
43127
  ;// CONCATENATED MODULE: ../hooks/src/components/use-form/use-form-fieldset/fieldset-context.ts
42426
43128
  'use client';
42427
43129
 
@@ -42860,7 +43562,8 @@ function useFormControl(props) {
42860
43562
  defaultValue = props.defaultValue,
42861
43563
  rules = props.rules,
42862
43564
  onError = props.onError,
42863
- getValidateProps = props.getValidateProps;
43565
+ getValidateProps = props.getValidateProps,
43566
+ clearToUndefined = props.clearToUndefined;
42864
43567
  var _useFieldSetConsumer = useFieldSetConsumer({
42865
43568
  name: props.name,
42866
43569
  bind: props.bind
@@ -42907,7 +43610,9 @@ function useFormControl(props) {
42907
43610
  var errors = arguments.length > 1 ? arguments[1] : undefined;
42908
43611
  var severErrors = arguments.length > 2 ? arguments[2] : undefined;
42909
43612
  if (!name) return;
42910
- if (isArray(name)) {
43613
+ // 加入defaultValue的判断,让其只对 https://github.com/sheinsight/shineout-next/pull/742 的场景生效
43614
+ // 如果不加入defaultValue的判断,会导致 8ea43144-36a5-403a-9147-59d54087a110 的问题
43615
+ if (isArray(name) && defaultValue !== undefined) {
42911
43616
  var _value = getValue(name, formValue);
42912
43617
  var _error = getError(name, errors, severErrors);
42913
43618
  if (_error !== errorState) {
@@ -42918,7 +43623,11 @@ function useFormControl(props) {
42918
43623
  var nextValue = [];
42919
43624
  name.forEach(function (n, index) {
42920
43625
  if (_value[index] === undefined && dv[index] !== undefined) {
42921
- nextValue[index] = dv[index];
43626
+ if (clearToUndefined) {
43627
+ nextValue[index] = undefined;
43628
+ } else {
43629
+ nextValue[index] = dv[index];
43630
+ }
42922
43631
  } else {
42923
43632
  nextValue[index] = _value[index];
42924
43633
  }
@@ -42932,7 +43641,11 @@ function useFormControl(props) {
42932
43641
  }
42933
43642
  if (!shallowEqual(_value2, latestInfo.valueState)) {
42934
43643
  if (_value2 === undefined && defaultValue !== undefined) {
42935
- setValueState(defaultValue);
43644
+ if (clearToUndefined) {
43645
+ setValueState(undefined);
43646
+ } else {
43647
+ setValueState(defaultValue);
43648
+ }
42936
43649
  } else {
42937
43650
  setValueState(_value2);
42938
43651
  }
@@ -43025,8 +43738,27 @@ function useFormControl(props) {
43025
43738
  if (onChangePo) onChangePo.apply(void 0, [v].concat(other));
43026
43739
  if (validateFieldSet) validateFieldSet();
43027
43740
  });
43741
+ var initError = use_persist_fn(function () {
43742
+ var errors = formFunc === null || formFunc === void 0 ? void 0 : formFunc.getErrors();
43743
+ if (isArray(name)) {
43744
+ for (var i = 0; i < name.length; i++) {
43745
+ var n = name[i];
43746
+ var currentErrorInForm = errors === null || errors === void 0 ? void 0 : errors[n];
43747
+ if (currentErrorInForm) {
43748
+ setErrorState(currentErrorInForm);
43749
+ break;
43750
+ }
43751
+ }
43752
+ } else {
43753
+ var _currentErrorInForm = errors === null || errors === void 0 ? void 0 : errors[name];
43754
+ if (_currentErrorInForm) {
43755
+ setErrorState(_currentErrorInForm);
43756
+ }
43757
+ }
43758
+ });
43028
43759
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
43029
43760
  if (inForm && controlFunc) {
43761
+ initError();
43030
43762
  if (isArray(name)) {
43031
43763
  var dv = isArray(defaultValue) ? defaultValue : [];
43032
43764
  name.forEach(function (n, index) {
@@ -43070,6 +43802,15 @@ function useFormControl(props) {
43070
43802
  name: name
43071
43803
  };
43072
43804
  }
43805
+ ;// CONCATENATED MODULE: ../hooks/src/components/use-form/form-schema-context.ts
43806
+ "use client";
43807
+
43808
+
43809
+ var FormSchemaContext = /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_.createContext(null);
43810
+ var useFormSchema = function useFormSchema() {
43811
+ return external_root_React_commonjs2_react_commonjs_react_amd_react_.useContext(FormSchemaContext);
43812
+ };
43813
+ FormSchemaContext.displayName = 'FormSchemaContext';
43073
43814
  ;// CONCATENATED MODULE: ../base/src/form/form-field.tsx
43074
43815
 
43075
43816
 
@@ -43091,7 +43832,8 @@ var FormField = function FormField(props) {
43091
43832
  rules: props.rules,
43092
43833
  onError: props.onError,
43093
43834
  bind: props.bind,
43094
- getValidateProps: getValidateProps
43835
+ getValidateProps: getValidateProps,
43836
+ clearToUndefined: props.clearToUndefined
43095
43837
  });
43096
43838
  var handleChange = usePersistFn(function (value) {
43097
43839
  for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
@@ -43146,9 +43888,31 @@ var FormField = function FormField(props) {
43146
43888
  } else {
43147
43889
  finalChildren = children;
43148
43890
  }
43891
+ var formSchema = useFormSchema();
43892
+ var _useContext3 = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useContext)(FormItemContext),
43893
+ label = _useContext3.label;
43894
+ var finalFieldId = formFieldId || fieldId || fieldsetPathId;
43895
+
43896
+ // 只有当 formConfig.formName 存在时才运行 schema 逻辑
43897
+ if (formConfig.formName && formSchema && finalFieldId) {
43898
+ var schemaFields = finalFieldId.split(separator) || [];
43899
+ var schemaMeta = formSchema.buildSchemaFromComponent({
43900
+ componentElement: finalChildren,
43901
+ rules: props.rules,
43902
+ label: label,
43903
+ finalFieldId: finalFieldId,
43904
+ separator: separator
43905
+ });
43906
+ schemaFields.forEach(function (field) {
43907
+ formSchema.updateSchema({
43908
+ path: getOriginField(field, formConfig.formName),
43909
+ meta: schemaMeta
43910
+ });
43911
+ });
43912
+ }
43149
43913
  return /*#__PURE__*/(0,jsx_runtime.jsx)(FormFieldContext.Provider, {
43150
43914
  value: {
43151
- fieldId: formFieldId || fieldId || fieldsetPathId,
43915
+ fieldId: finalFieldId,
43152
43916
  separator: separator
43153
43917
  },
43154
43918
  children: finalChildren
@@ -43216,6 +43980,7 @@ var cascader_Cascader = function Cascader(props) {
43216
43980
  jssStyle: cascader_jssStyle
43217
43981
  }));
43218
43982
  };
43983
+ cascader_Cascader.displayName = 'ShineoutCascader';
43219
43984
  /* harmony default export */ var src_cascader_cascader_0 = (/*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_.memo)(function (props) {
43220
43985
  return use_field_common(props, cascader_Cascader, 'array');
43221
43986
  }));
@@ -43240,6 +44005,7 @@ var BaseCheckbox = function BaseCheckbox(props) {
43240
44005
  jssStyle: checkbox_jssStyle
43241
44006
  }));
43242
44007
  };
44008
+ BaseCheckbox.displayName = 'ShineoutCheckbox';
43243
44009
  var checkbox_checkbox_Checkbox = function Checkbox(props) {
43244
44010
  return use_field_common(props, BaseCheckbox);
43245
44011
  };
@@ -43633,22 +44399,23 @@ var checkbox_group_jssStyle = {
43633
44399
  checkbox: useCheckboxStyle,
43634
44400
  input: useInputStyle
43635
44401
  };
43636
- var BaseCheckboxGroup = function BaseCheckboxGroup(props) {
44402
+ var CheckboxGroup = function CheckboxGroup(props) {
43637
44403
  return /*#__PURE__*/(0,jsx_runtime.jsx)(checkbox_group, objectSpread2_default()(objectSpread2_default()({}, props), {}, {
43638
44404
  jssStyle: checkbox_group_jssStyle
43639
44405
  }));
43640
44406
  };
44407
+ CheckboxGroup.displayName = 'ShineoutCheckboxGroup';
43641
44408
  var CheckboxGroupWithField = function CheckboxGroupWithField(props) {
43642
- return use_field_common(props, BaseCheckboxGroup, 'array');
44409
+ return use_field_common(props, CheckboxGroup, 'array');
43643
44410
  };
43644
44411
  /* harmony default export */ var src_checkbox_group = (CheckboxGroupWithField);
43645
44412
  ;// CONCATENATED MODULE: ./src/checkbox/index.ts
43646
44413
 
43647
44414
 
43648
- var CheckboxGroup = src_checkbox_group;
43649
- CheckboxGroup.displayName = 'ShineoutCheckboxGroup';
44415
+ var checkbox_CheckboxGroup = src_checkbox_group;
44416
+ checkbox_CheckboxGroup.displayName = 'ShineoutCheckboxGroup';
43650
44417
  src_checkbox_checkbox_0.displayName = 'ShineoutCheckbox';
43651
- src_checkbox_checkbox_0.Group = CheckboxGroup;
44418
+ src_checkbox_checkbox_0.Group = checkbox_CheckboxGroup;
43652
44419
  /* harmony default export */ var src_checkbox_0 = (src_checkbox_checkbox_0);
43653
44420
  ;// CONCATENATED MODULE: ../base/src/collapse/group-context.ts
43654
44421
  "use client";
@@ -44897,7 +45664,16 @@ function util_toDate(day, options) {
44897
45664
  if (!day) return new Date('');
44898
45665
  if (day instanceof Date) return dayjs_min_default()(day).toDate();
44899
45666
  if (typeof day === 'number') return new Date(day);
44900
- if (typeof day === 'string') return transDateWithZone(dayjs_min_default()(day).toDate(), options, true);
45667
+ if (typeof day === 'string') {
45668
+ // 当 day 只有时间部分,没有日期部分时
45669
+ if (/^\d{1,2}(:\d{2}(:\d{2})?)?$/.test(day)) {
45670
+ var today = new Date();
45671
+ var todayStr = today.getFullYear() + '-' + (today.getMonth() + 1) + '-' + today.getDate();
45672
+ var dayStr = todayStr + ' ' + day;
45673
+ return transDateWithZone(dayjs_min_default()(dayStr).toDate(), options, true);
45674
+ }
45675
+ return transDateWithZone(dayjs_min_default()(day).toDate(), options, true);
45676
+ }
44901
45677
  return dayjs_min_default()(day).toDate();
44902
45678
  }
44903
45679
  function getDaysOfMonth(dirtyDate, options) {
@@ -45314,6 +46090,7 @@ var useDatePickerFormat = function useDatePickerFormat(props) {
45314
46090
  return getFormatValueArr(dateArr, props.formatResult);
45315
46091
  } else if (typeof props.formatResult === 'function') {
45316
46092
  return dateArr.map(function (item) {
46093
+ if (!item) return '';
45317
46094
  return props.formatResult(item);
45318
46095
  });
45319
46096
  } else {
@@ -45689,6 +46466,9 @@ var useDate = function useDate(props) {
45689
46466
  ;// CONCATENATED MODULE: ../hooks/src/components/use-datepicker/use-time.tsx
45690
46467
 
45691
46468
 
46469
+ var getStepIndex = function getStepIndex(index, step) {
46470
+ return Math.floor(index / step);
46471
+ };
45692
46472
  var useTime = function useTime(props) {
45693
46473
  var options = props.options,
45694
46474
  mi = props.min,
@@ -45701,13 +46481,24 @@ var useTime = function useTime(props) {
45701
46481
  _props$secondStep = props.secondStep,
45702
46482
  secondStep = _props$secondStep === void 0 ? 1 : _props$secondStep,
45703
46483
  staticMin = props.staticMin,
45704
- staticMax = props.staticMax;
46484
+ staticMax = props.staticMax,
46485
+ position = props.position,
46486
+ rangeDate = props.rangeDate;
45705
46487
  var min = util.resetTimeByFormat(mi, format, options);
45706
46488
  var max = util.resetTimeByFormat(ma, format, options);
45707
46489
  var current = props.value || util.newDate(undefined, options);
45708
- var getStepIndex = function getStepIndex(index, step) {
45709
- return Math.floor(index / step);
45710
- };
46490
+ if (!props.value && typeof props.defaultTime === 'string' && /^\d{1,2}(:\d{2}(:\d{2})?)?$/.test(props.defaultTime)) {
46491
+ var today = new Date();
46492
+ var todayStr = today.getFullYear() + '-' + (today.getMonth() + 1) + '-' + today.getDate();
46493
+ var timesStr = props.defaultTime.split(':');
46494
+ var hStr = timesStr[0];
46495
+ var mStr = timesStr[1] || '00';
46496
+ var sStr = timesStr[2] || '00';
46497
+ var timeStr = hStr + ':' + mStr + ':' + sStr;
46498
+ var dayStr = todayStr + ' ' + timeStr;
46499
+ var val = new Date(dayStr);
46500
+ if (val) current = val;
46501
+ }
45711
46502
  var time = {
45712
46503
  hour: util.getDateInfo(current, 'hour', options),
45713
46504
  minute: util.getDateInfo(current, 'minute', options),
@@ -45727,7 +46518,7 @@ var useTime = function useTime(props) {
45727
46518
  disabledTime = props.disabledTime;
45728
46519
  if (disabledTime) {
45729
46520
  var _time = util.format(date, util.TIME_FORMAT, options);
45730
- if (typeof disabledTime === 'function') return disabledTime(_time);
46521
+ if (typeof disabledTime === 'function') return disabledTime(_time, position, rangeDate === null || rangeDate === void 0 ? void 0 : rangeDate[0], rangeDate === null || rangeDate === void 0 ? void 0 : rangeDate[1]);
45731
46522
  return disabledTime === _time;
45732
46523
  }
45733
46524
  var isDis = disabled && typeof disabled === 'function' ? disabled(date) : false;
@@ -46078,7 +46869,10 @@ var Time = function Time(props) {
46078
46869
  disabledTime: props.disabledTime,
46079
46870
  hourStep: props.hourStep,
46080
46871
  minuteStep: props.minuteStep,
46081
- secondStep: props.secondStep
46872
+ secondStep: props.secondStep,
46873
+ position: props.position,
46874
+ rangeDate: props.rangeDate,
46875
+ defaultTime: props.defaultTime
46082
46876
  }),
46083
46877
  func = _useTimePick.func,
46084
46878
  times = _useTimePick.times;
@@ -46112,6 +46906,7 @@ var Time = function Time(props) {
46112
46906
  })]
46113
46907
  });
46114
46908
  };
46909
+ var shouldRenderTimes = times && times.length > 0;
46115
46910
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
46116
46911
  onMouseEnter: props.onMouseEnter,
46117
46912
  onMouseLeave: props.onMouseLeave,
@@ -46120,7 +46915,7 @@ var Time = function Time(props) {
46120
46915
  children: [props.showTitle && /*#__PURE__*/(0,jsx_runtime.jsx)(pickerTitle, {
46121
46916
  position: props.position,
46122
46917
  jssStyle: props.jssStyle
46123
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
46918
+ }), shouldRenderTimes && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
46124
46919
  className: styles === null || styles === void 0 ? void 0 : styles.pickerBody,
46125
46920
  children: times.map(function (item) {
46126
46921
  return /*#__PURE__*/(0,jsx_runtime.jsx)(TimeScroll, {
@@ -47923,11 +48718,12 @@ var date_picker_jssStyle = {
47923
48718
  popover: usePopoverStyle,
47924
48719
  link: useLinkStyle
47925
48720
  };
47926
- var BaseDatePicker = function BaseDatePicker(props) {
48721
+ var date_picker_DatePicker = function DatePicker(props) {
47927
48722
  return /*#__PURE__*/(0,jsx_runtime.jsx)(src_date_picker_date_picker, objectSpread2_default()({
47928
48723
  jssStyle: date_picker_jssStyle
47929
48724
  }, props));
47930
48725
  };
48726
+ date_picker_DatePicker.displayName = 'ShineoutDatePicker';
47931
48727
  /* harmony default export */ var src_date_picker_date_picker_0 = (function (props) {
47932
48728
  var _useConfig = useConfig(),
47933
48729
  locale = _useConfig.locale;
@@ -47954,7 +48750,7 @@ var BaseDatePicker = function BaseDatePicker(props) {
47954
48750
  }, []);
47955
48751
  return use_field_common(objectSpread2_default()(objectSpread2_default()({}, props), {}, {
47956
48752
  defaultValue: defaultValue
47957
- }), BaseDatePicker);
48753
+ }), date_picker_DatePicker);
47958
48754
  });
47959
48755
  ;// CONCATENATED MODULE: ./src/date-picker/index.ts
47960
48756
 
@@ -48442,7 +49238,23 @@ function _ReactUnmount() {
48442
49238
 
48443
49239
 
48444
49240
 
49241
+
48445
49242
  var hasMask = false;
49243
+ var modal_content_config = {
49244
+ instanceIds: []
49245
+ };
49246
+ var modal_content_state = createWithHooks(modal_content_config);
49247
+ var useModalConfig = function useModalConfig() {
49248
+ return modal_content_state.useSnapshot();
49249
+ };
49250
+ var addModalInstance = function addModalInstance(instanceId) {
49251
+ modal_content_state.mutate.instanceIds.push(instanceId);
49252
+ };
49253
+ var removeModalInstance = function removeModalInstance(instanceId) {
49254
+ modal_content_state.mutate.instanceIds = modal_content_state.mutate.instanceIds.filter(function (id) {
49255
+ return id !== instanceId;
49256
+ });
49257
+ };
48446
49258
  var mousePosition = null;
48447
49259
  var getClickPosition = function getClickPosition(e) {
48448
49260
  mousePosition = {
@@ -48485,12 +49297,11 @@ var Modal = function Modal(props) {
48485
49297
  mouseDownTarget: null,
48486
49298
  mouseUpTarget: null,
48487
49299
  content: null,
48488
- originDocumentStyle: {
48489
- overflow: '',
48490
- paddingRight: ''
48491
- }
49300
+ originDocumentStyle: null,
49301
+ instanceId: generateUUID()
48492
49302
  }),
48493
49303
  context = _useRef.current;
49304
+ var config = useModalConfig();
48494
49305
  var _useState3 = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useState)(props.visible || props.autoShow),
48495
49306
  _useState4 = slicedToArray_default()(_useState3, 2),
48496
49307
  animation = _useState4[0],
@@ -48505,6 +49316,10 @@ var Modal = function Modal(props) {
48505
49316
  defaultHeight: height,
48506
49317
  panelRef: panelRef
48507
49318
  });
49319
+ var showMask = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useMemo)(function () {
49320
+ if (props.forceMask) return config.instanceIds.includes(context.instanceId);
49321
+ return config.instanceIds[0] === context.instanceId;
49322
+ }, [config.instanceIds, props.forceMask]);
48508
49323
  var rerender = useRender();
48509
49324
  var handleMaskVisible = function handleMaskVisible() {
48510
49325
  // 多个moal 只有第一个显示的时候才显示遮罩
@@ -48515,6 +49330,15 @@ var Modal = function Modal(props) {
48515
49330
  rerender();
48516
49331
  }
48517
49332
  };
49333
+ (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
49334
+ var index = config.instanceIds.indexOf(context.instanceId);
49335
+ if (visible && index === -1) {
49336
+ addModalInstance(context.instanceId);
49337
+ }
49338
+ if (!visible && index > -1 && !animation) {
49339
+ removeModalInstance(context.instanceId);
49340
+ }
49341
+ }, [visible, animation, config.instanceIds]);
48518
49342
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(handleMaskVisible, [visible]);
48519
49343
  var updateOrigin = function updateOrigin() {
48520
49344
  // 更新transform-origin
@@ -48592,9 +49416,11 @@ var Modal = function Modal(props) {
48592
49416
  // 设置 document.body.style.overflow 和 document.body.style.paddingRight,并记录原始值到 context 中
48593
49417
  var setDocumentOverflow = usePersistFn(function () {
48594
49418
  var doc = document.body.parentNode;
48595
- if (context.isMask) {
48596
- context.originDocumentStyle.overflow = doc.style.overflow;
48597
- context.originDocumentStyle.paddingRight = doc.style.paddingRight;
49419
+ if (context.isMask && !context.originDocumentStyle) {
49420
+ context.originDocumentStyle = {
49421
+ overflow: doc.style.overflow,
49422
+ paddingRight: doc.style.paddingRight
49423
+ };
48598
49424
  }
48599
49425
  doc.style.overflow = 'hidden';
48600
49426
  if (!doc.style.paddingRight) {
@@ -48605,19 +49431,21 @@ var Modal = function Modal(props) {
48605
49431
  // 还原 document.body.style.overflow 和 document.body.style.paddingRight
48606
49432
  var resetDocumentOverflow = usePersistFn(function () {
48607
49433
  var doc = document.body.parentNode;
48608
- doc.style.overflow = context.originDocumentStyle.overflow;
48609
- doc.style.paddingRight = context.originDocumentStyle.paddingRight;
49434
+ if (context.originDocumentStyle) {
49435
+ doc.style.overflow = context.originDocumentStyle.overflow;
49436
+ doc.style.paddingRight = context.originDocumentStyle.paddingRight;
49437
+ }
48610
49438
  });
48611
49439
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
48612
49440
  if (!props.hideMask) {
48613
49441
  if (visible) {
48614
49442
  setDocumentOverflow();
48615
49443
  } else {
48616
- if (!context.isMask) return;
49444
+ if (config.instanceIds.length && config.instanceIds[config.instanceIds.length - 1] === context.instanceId) return;
48617
49445
  resetDocumentOverflow();
48618
49446
  }
48619
49447
  }
48620
- }, [visible]);
49448
+ }, [visible, config.instanceIds]);
48621
49449
  var canDestroy = !visible && !animation;
48622
49450
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
48623
49451
  var _props$shouldDestroy;
@@ -48628,6 +49456,7 @@ var Modal = function Modal(props) {
48628
49456
  // unmount
48629
49457
  return function () {
48630
49458
  var _props$shouldDestroy2;
49459
+ removeModalInstance(context.instanceId);
48631
49460
  if (context.isMask) {
48632
49461
  resetDocumentOverflow();
48633
49462
  }
@@ -48641,7 +49470,10 @@ var Modal = function Modal(props) {
48641
49470
  }, []);
48642
49471
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
48643
49472
  if (props.setInnerClose) {
48644
- props.setInnerClose(handleClose);
49473
+ props.setInnerClose(function () {
49474
+ setVisible(false);
49475
+ setAnimation(true);
49476
+ });
48645
49477
  }
48646
49478
  }, [props.setInnerClose]);
48647
49479
 
@@ -48754,11 +49586,12 @@ var Modal = function Modal(props) {
48754
49586
  onClick: function onClick(e) {
48755
49587
  e.stopPropagation();
48756
49588
  },
48757
- className: classnames_default()(props.rootClassName, modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.rootClass, modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapper, animation && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperAnimation), visible ? modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperShow : modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperHide, (context.isMask || props.forceMask) && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperIsMask), props.fullScreen && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperFullScreen), props.moveable && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperMoveable), props.hideMask && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperHideMask), props.zoom && !props.moveable && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperZoom), (isPositionX || isPositionY) && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperDrawer), props.position === 'left' && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperDrawerLeft), props.position === 'right' && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperDrawerRight), props.position === 'top' && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperDrawerTop), props.position === 'bottom' && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperDrawerBottom)),
49589
+ className: classnames_default()(props.rootClassName, modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.rootClass, modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapper, animation && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperAnimation), visible ? modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperShow : modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperHide, showMask && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperIsMask), props.fullScreen && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperFullScreen), props.moveable && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperMoveable), props.hideMask && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperHideMask), props.zoom && !props.moveable && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperZoom), (isPositionX || isPositionY) && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperDrawer), props.position === 'left' && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperDrawerLeft), props.position === 'right' && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperDrawerRight), props.position === 'top' && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperDrawerTop), props.position === 'bottom' && (modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.wrapperDrawerBottom)),
48758
49590
  onAnimationEnd: handleAnimationEnd,
48759
49591
  style: {
48760
49592
  background: props.maskBackground,
48761
- zIndex: props.zIndex
49593
+ zIndex: props.zIndex,
49594
+ display: !visible && !animation ? 'none' : undefined
48762
49595
  },
48763
49596
  children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", objectSpread2_default()(objectSpread2_default()({
48764
49597
  className: modalClasses === null || modalClasses === void 0 ? void 0 : modalClasses.mask
@@ -48921,7 +49754,8 @@ var modal_Modal = function Modal(props) {
48921
49754
  modal_devUseWarning.deprecated('maskOpacity', 'maskBackground', 'Modal');
48922
49755
  }
48923
49756
  var _useContainer = use_container({
48924
- container: props.container
49757
+ container: props.container,
49758
+ containerClassName: props.containerClassName
48925
49759
  }),
48926
49760
  getRoot = _useContainer.getRoot,
48927
49761
  unMount = _useContainer.unMount;
@@ -49085,7 +49919,9 @@ var Item_Item = /*#__PURE__*/function (_React$PureComponent) {
49085
49919
  contentPropsClassName = _ref2$className === void 0 ? '' : _ref2$className,
49086
49920
  contentPropsOnClick = _ref2.onClick,
49087
49921
  otherContentProps = objectWithoutProperties_default()(_ref2, Item_excluded2);
49088
- var className = classnames_default()(propsClassName, contentPropsClassName);
49922
+ var className = classnames_default()(
49923
+ // 如果content是Tooltip,则不传递className(就是dropdown-item的className)
49924
+ content.type.displayName !== 'ShineoutTooltip' ? propsClassName : '', contentPropsClassName);
49089
49925
  return /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_.cloneElement)(content, Object.assign(otherProps, otherContentProps, {
49090
49926
  className: className,
49091
49927
  onClick: function onClick(e) {
@@ -49508,7 +50344,10 @@ var Textarea = function Textarea(props) {
49508
50344
  });
49509
50345
  }
49510
50346
  }, [focused]);
49511
- var textareaEl = /*#__PURE__*/(0,jsx_runtime.jsx)("textarea", objectSpread2_default()({}, textareaProps));
50347
+ var textareaElProps = removeProps(textareaProps, {
50348
+ formName: undefined
50349
+ });
50350
+ var textareaEl = /*#__PURE__*/(0,jsx_runtime.jsx)("textarea", objectSpread2_default()({}, textareaElProps));
49512
50351
  if (typeof renderTextarea === 'function') {
49513
50352
  textareaEl = renderTextarea(textareaEl);
49514
50353
  }
@@ -49999,6 +50838,7 @@ var editable_area_EditableArea = function EditableArea(props) {
49999
50838
  jssStyle: editable_area_jssStyle
50000
50839
  }, props));
50001
50840
  };
50841
+ editable_area_EditableArea.displayName = 'ShineoutEditableArea';
50002
50842
  /* harmony default export */ var src_editable_area_editable_area_0 = (function (props) {
50003
50843
  return use_field_common(props, editable_area_EditableArea);
50004
50844
  });
@@ -50007,159 +50847,6 @@ var editable_area_EditableArea = function EditableArea(props) {
50007
50847
  var EditableAreaComp = src_editable_area_editable_area_0;
50008
50848
  EditableAreaComp.displayName = 'ShineoutEditableArea';
50009
50849
  /* harmony default export */ var src_editable_area_0 = (EditableAreaComp);
50010
- ;// CONCATENATED MODULE: ../base/src/empty/empty-image.tsx
50011
-
50012
-
50013
- var renderNoData = function renderNoData() {
50014
- return /*#__PURE__*/(0,jsx_runtime.jsxs)("svg", {
50015
- width: "100",
50016
- height: "75",
50017
- viewBox: "0 0 100 75",
50018
- fill: "none",
50019
- xmlns: "http://www.w3.org/2000/svg",
50020
- children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("g", {
50021
- clipPath: "url(#clip0_4044_10434)",
50022
- children: [/*#__PURE__*/(0,jsx_runtime.jsx)("path", {
50023
- d: "M100 75C100 63.3607 77.6144 53.9257 50 53.9257C22.3857 53.9257 0 63.3607 0 75H100Z",
50024
- fill: "url(#paint0_linear_4044_10434)"
50025
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("g", {
50026
- opacity: "0.3",
50027
- filter: "url(#filter0_f_4044_10434)",
50028
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
50029
- d: "M50.3087 70.0413C69.5706 70.0413 85.185 68.2375 85.185 66.0125C85.185 63.7875 69.5706 61.9835 50.3087 61.9835C31.0469 61.9835 15.4321 63.7875 15.4321 66.0125C15.4321 68.2375 31.0469 70.0413 50.3087 70.0413Z",
50030
- fill: "#979EB0"
50031
- })
50032
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
50033
- d: "M22.6082 23.6395C22.782 23.2127 23.1957 22.9338 23.6548 22.9338H75.7168C76.1718 22.9338 76.5818 23.2071 76.7593 23.6275L82.9493 38.3482H16.6184L22.6082 23.6395Z",
50034
- fill: "#CCCFD7"
50035
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
50036
- d: "M75.9819 23.9172V37.2382H81.2882L75.9819 23.9172Z",
50037
- fill: "#999DA8"
50038
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
50039
- d: "M18.877 37.0161H81.0701C82.6314 37.0161 83.897 38.2871 83.897 39.8547V61.7805C83.897 64.2888 81.872 66.3225 79.3739 66.3225H20.5732C18.0752 66.3225 16.05 64.2888 16.05 61.7805V39.8547C16.05 38.2871 17.3157 37.0161 18.877 37.0161Z",
50040
- fill: "#E8EBF0"
50041
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("g", {
50042
- filter: "url(#filter1_d_4044_10434)",
50043
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
50044
- d: "M16.0493 42.3192C16.0493 39.8108 16.0019 37.715 20.573 37.7774H79.3737C83.5612 37.7774 83.8968 39.8108 83.8968 42.3192V61.3998C83.8968 63.9087 81.8718 65.9419 79.3737 65.9419H20.573C18.075 65.9419 16.0493 63.9087 16.0493 61.3998V42.3192Z",
50045
- fill: "black"
50046
- })
50047
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
50048
- d: "M16.0493 42.3192C16.0493 39.8108 16.0019 37.715 20.573 37.7774H79.3737C83.5612 37.7774 83.8968 39.8108 83.8968 42.3192V61.3998C83.8968 63.9087 81.8718 65.9419 79.3737 65.9419H20.573C18.075 65.9419 16.0493 63.9087 16.0493 61.3998V42.3192Z",
50049
- fill: "#F4F5F8"
50050
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
50051
- d: "M23.4412 23.8855V37.0162H18.3242L23.4412 23.8855Z",
50052
- fill: "#999DA8"
50053
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
50054
- d: "M60.3971 50.7178H39.5502C38.0849 50.7178 36.897 51.9106 36.897 53.382C36.897 54.8534 38.0849 56.0462 39.5502 56.0462H60.3971C61.8625 56.0462 63.0501 54.8534 63.0501 53.382C63.0501 51.9106 61.8625 50.7178 60.3971 50.7178Z",
50055
- fill: "#666C7C"
50056
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
50057
- d: "M60.3971 49.9565H39.5502C38.0849 49.9565 36.897 51.1494 36.897 52.6208C36.897 54.0922 38.0849 55.285 39.5502 55.285H60.3971C61.8625 55.285 63.0501 54.0922 63.0501 52.6208C63.0501 51.1494 61.8625 49.9565 60.3971 49.9565Z",
50058
- fill: "#999DA8"
50059
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
50060
- fillRule: "evenodd",
50061
- clipRule: "evenodd",
50062
- d: "M46.041 3.14062C42.6319 3.14062 39.8682 5.91575 39.8682 9.33899V11.4859C39.8682 14.9092 42.6319 17.6842 46.041 17.6842H54.8002C58.2093 17.6842 60.9731 14.9092 60.9731 11.4859V9.33899C60.9731 5.91575 58.2093 3.14062 54.8002 3.14062H46.041ZM47.3169 21.0086L49.386 17.6842H45.2478L47.3169 21.0086Z",
50063
- fill: "#E8EBF0"
50064
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
50065
- d: "M45.6834 8.54285L47.4941 11.6922H43.8726L45.6834 8.54285Z",
50066
- fill: "#999DA8"
50067
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
50068
- d: "M52.304 8.54285H49.1677V11.6921H52.304V8.54285Z",
50069
- fill: "#999DA8"
50070
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
50071
- d: "M55.6802 11.6919C56.5463 11.6919 57.2484 10.9869 57.2484 10.1172C57.2484 9.2476 56.5463 8.5426 55.6802 8.5426C54.8142 8.5426 54.1121 9.2476 54.1121 10.1172C54.1121 10.9869 54.8142 11.6919 55.6802 11.6919Z",
50072
- fill: "#999DA8"
50073
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
50074
- d: "M67.7256 5.8507C66.5081 6.69694 63.5181 6.751 62.3457 7.09731L63.5875 5.64293C64.415 4.6041 64.6631 4.10547 65.6562 2.11091C66.6493 0.116362 69.3118 -0.105256 70.415 0.0332553C69.7943 1.27985 70.415 3.98081 67.7256 5.8507Z",
50075
- fill: "#E8EBF0"
50076
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
50077
- d: "M46.257 34.8904C45.3444 35.1307 43.5421 34.5087 42.7649 34.4595L43.824 33.8603C44.5451 33.4193 44.802 33.175 45.8298 32.198C46.8574 31.221 48.4998 31.6709 49.1305 31.9953C48.4883 32.606 48.2737 34.3593 46.257 34.8904Z",
50078
- fill: "#E8EBF0"
50079
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
50080
- d: "M37.262 32.7723C37.13 32.5427 37.2462 32.2485 37.4982 32.1696C39.7646 31.4593 49.3015 28.2658 55.6537 22.9713C62.0347 17.653 67.6725 11.576 69.1256 9.9791C69.3069 9.77991 69.6263 9.81841 69.76 10.0521C69.845 10.1989 69.8294 10.3803 69.7169 10.507C68.6225 11.7406 62.8044 18.1953 56.0675 23.6911C48.7371 29.6708 39.4667 32.4671 37.7105 32.9602C37.5349 33.0096 37.3532 32.9308 37.262 32.7723Z",
50081
- fill: "#E8EBF0"
50082
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("path", {
50083
- d: "M26.0283 27.1925C25.977 26.9505 26.1514 26.7154 26.396 26.6852C27.3291 26.5701 29.6586 26.1971 33.309 25.0577C37.011 23.9021 40.6908 21.2137 41.9723 20.2199C42.1914 20.05 42.5167 20.1675 42.5743 20.4394C42.6023 20.572 42.5585 20.7071 42.454 20.793C41.598 21.497 37.5626 24.6932 33.4811 25.8705C29.5763 26.9969 27.2876 27.3842 26.4592 27.5011C26.2561 27.5298 26.0709 27.394 26.0283 27.1925Z",
50084
- fill: "#E8EBF0"
50085
- })]
50086
- }), /*#__PURE__*/(0,jsx_runtime.jsxs)("defs", {
50087
- children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("filter", {
50088
- id: "filter0_f_4044_10434",
50089
- x: "9.43213",
50090
- y: "55.9835",
50091
- width: "81.7529",
50092
- height: "20.0577",
50093
- filterUnits: "userSpaceOnUse",
50094
- colorInterpolationFilters: "sRGB",
50095
- children: [/*#__PURE__*/(0,jsx_runtime.jsx)("feFlood", {
50096
- floodOpacity: "0",
50097
- result: "BackgroundImageFix"
50098
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("feBlend", {
50099
- mode: "normal",
50100
- in: "SourceGraphic",
50101
- in2: "BackgroundImageFix",
50102
- result: "shape"
50103
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("feGaussianBlur", {
50104
- stdDeviation: "3",
50105
- result: "effect1_foregroundBlur_4044_10434"
50106
- })]
50107
- }), /*#__PURE__*/(0,jsx_runtime.jsxs)("filter", {
50108
- id: "filter1_d_4044_10434",
50109
- x: "16.0493",
50110
- y: "37.776",
50111
- width: "67.8474",
50112
- height: "30.1659",
50113
- filterUnits: "userSpaceOnUse",
50114
- colorInterpolationFilters: "sRGB",
50115
- children: [/*#__PURE__*/(0,jsx_runtime.jsx)("feFlood", {
50116
- floodOpacity: "0",
50117
- result: "BackgroundImageFix"
50118
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("feColorMatrix", {
50119
- in: "SourceAlpha",
50120
- type: "matrix",
50121
- values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0",
50122
- result: "hardAlpha"
50123
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("feOffset", {
50124
- dy: "2"
50125
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("feColorMatrix", {
50126
- type: "matrix",
50127
- values: "0 0 0 0 0.803922 0 0 0 0 0.811765 0 0 0 0 0.843137 0 0 0 1 0"
50128
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("feBlend", {
50129
- mode: "normal",
50130
- in2: "BackgroundImageFix",
50131
- result: "effect1_dropShadow_4044_10434"
50132
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("feBlend", {
50133
- mode: "normal",
50134
- in: "SourceGraphic",
50135
- in2: "effect1_dropShadow_4044_10434",
50136
- result: "shape"
50137
- })]
50138
- }), /*#__PURE__*/(0,jsx_runtime.jsxs)("linearGradient", {
50139
- id: "paint0_linear_4044_10434",
50140
- x1: "50",
50141
- y1: "53.9257",
50142
- x2: "50",
50143
- y2: "75",
50144
- gradientUnits: "userSpaceOnUse",
50145
- children: [/*#__PURE__*/(0,jsx_runtime.jsx)("stop", {
50146
- stopColor: "#E9EBEF"
50147
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("stop", {
50148
- offset: "1",
50149
- stopColor: "#E9EBEF",
50150
- stopOpacity: "0"
50151
- })]
50152
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("clipPath", {
50153
- id: "clip0_4044_10434",
50154
- children: /*#__PURE__*/(0,jsx_runtime.jsx)("rect", {
50155
- width: "100",
50156
- height: "75",
50157
- fill: "white"
50158
- })
50159
- })]
50160
- })]
50161
- });
50162
- };
50163
50850
  ;// CONCATENATED MODULE: ../base/src/empty/empty.tsx
50164
50851
 
50165
50852
 
@@ -50180,7 +50867,8 @@ var Empty = function Empty(props) {
50180
50867
  description = props.description,
50181
50868
  rest = objectWithoutProperties_default()(props, empty_excluded);
50182
50869
  var _useConfig = useConfig(),
50183
- locale = _useConfig.locale;
50870
+ locale = _useConfig.locale,
50871
+ empty = _useConfig.empty;
50184
50872
  var styles = jssStyle === null || jssStyle === void 0 || (_jssStyle$empty = jssStyle.empty) === null || _jssStyle$empty === void 0 ? void 0 : _jssStyle$empty.call(jssStyle);
50185
50873
  var rootClass = classnames_default()(styles === null || styles === void 0 ? void 0 : styles.rootClass, styles === null || styles === void 0 ? void 0 : styles.empty, className);
50186
50874
  var wrapperClass = classnames_default()(styles === null || styles === void 0 ? void 0 : styles.wrapper);
@@ -50203,16 +50891,20 @@ var Empty = function Empty(props) {
50203
50891
  }
50204
50892
  return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
50205
50893
  className: styles === null || styles === void 0 ? void 0 : styles.image,
50206
- children: icon || renderNoData()
50894
+ children: icon || (empty === null || empty === void 0 ? void 0 : empty.icon) || icons_config.empty.NoData
50207
50895
  });
50208
50896
  };
50209
50897
  var renderDescription = function renderDescription() {
50210
- if (description === false) {
50898
+ // 确定最终使用的description值,优先级:props.description > 全局配置description > 默认locale文本
50899
+ var finalDescription = description !== undefined ? description : (empty === null || empty === void 0 ? void 0 : empty.description) !== undefined ? empty === null || empty === void 0 ? void 0 : empty.description : getLocale(locale, 'noData');
50900
+
50901
+ // 如果最终确定的description值为false,则不显示描述
50902
+ if (finalDescription === false) {
50211
50903
  return null;
50212
50904
  }
50213
50905
  return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
50214
50906
  className: styles === null || styles === void 0 ? void 0 : styles.description,
50215
- children: description || getLocale(locale, 'noData')
50907
+ children: finalDescription
50216
50908
  });
50217
50909
  };
50218
50910
  return /*#__PURE__*/(0,jsx_runtime.jsx)("div", objectSpread2_default()(objectSpread2_default()({
@@ -50250,6 +50942,7 @@ EmptyComp.displayName = 'ShineoutEmpty';
50250
50942
 
50251
50943
 
50252
50944
 
50945
+
50253
50946
  var topPath = {
50254
50947
  path: '',
50255
50948
  validateFieldSet: function validateFieldSet() {}
@@ -50258,7 +50951,8 @@ var Provider = function Provider(props) {
50258
50951
  var children = props.children,
50259
50952
  formConfig = props.formConfig,
50260
50953
  formValue = props.formValue,
50261
- formFunc = props.formFunc;
50954
+ formFunc = props.formFunc,
50955
+ formSchema = props.formSchema;
50262
50956
  return /*#__PURE__*/(0,jsx_runtime.jsx)(FormFuncContext.Provider, {
50263
50957
  value: formFunc,
50264
50958
  children: /*#__PURE__*/(0,jsx_runtime.jsx)(FormBindContext.Provider, {
@@ -50267,7 +50961,10 @@ var Provider = function Provider(props) {
50267
50961
  value: topPath,
50268
50962
  children: /*#__PURE__*/(0,jsx_runtime.jsx)(FormConfigContext.Provider, {
50269
50963
  value: formConfig,
50270
- children: children
50964
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(FormSchemaContext.Provider, {
50965
+ value: formSchema,
50966
+ children: children
50967
+ })
50271
50968
  })
50272
50969
  })
50273
50970
  })
@@ -50366,6 +51063,369 @@ function use_previous_usePrevious(value) {
50366
51063
  });
50367
51064
  return ref.current;
50368
51065
  }
51066
+ ;// CONCATENATED MODULE: ../hooks/src/components/use-form/use-form-schema/form-schema-builder.ts
51067
+
51068
+
51069
+
51070
+
51071
+
51072
+
51073
+ var form_schema_builder_excluded = ["required"];
51074
+ var SchemaBuilder = /*#__PURE__*/function () {
51075
+ function SchemaBuilder(formName) {
51076
+ classCallCheck_default()(this, SchemaBuilder);
51077
+ defineProperty_default()(this, "schema", void 0);
51078
+ this.schema = {
51079
+ type: 'object',
51080
+ title: formName,
51081
+ properties: {}
51082
+ };
51083
+ }
51084
+ createClass_default()(SchemaBuilder, [{
51085
+ key: "updateSchema",
51086
+ value: function updateSchema(_ref) {
51087
+ var path = _ref.path,
51088
+ meta = _ref.meta;
51089
+ var pathSegments = this.parsePath(path);
51090
+ if (!pathSegments) return;
51091
+ this.mergeSchema(this.schema, pathSegments, meta);
51092
+ }
51093
+
51094
+ /**
51095
+ * 根据组件信息构建 schema meta
51096
+ */
51097
+ }, {
51098
+ key: "buildSchemaFromComponent",
51099
+ value: function buildSchemaFromComponent(params) {
51100
+ var _componentElement$pro;
51101
+ var componentElement = params.componentElement,
51102
+ rules = params.rules,
51103
+ label = params.label,
51104
+ finalFieldId = params.finalFieldId,
51105
+ separator = params.separator;
51106
+ var fieldSchemaInfo = {
51107
+ title: label
51108
+ };
51109
+ var data = componentElement.props.data;
51110
+ var isRequired = rules === null || rules === void 0 ? void 0 : rules.some(function (rule) {
51111
+ return rule.required;
51112
+ });
51113
+ fieldSchemaInfo.required = isRequired;
51114
+ fieldSchemaInfo.description = '';
51115
+ if (rules !== null && rules !== void 0 && rules.length) {
51116
+ var messageRules = rules.filter(function (rule) {
51117
+ return typeof rule.message === 'string';
51118
+ });
51119
+ if (messageRules.length) {
51120
+ fieldSchemaInfo.description += "rules: ".concat(messageRules.map(function (rule) {
51121
+ return rule.message;
51122
+ }).join(', '), ";");
51123
+ }
51124
+ }
51125
+ var itemType;
51126
+ if (typeof componentElement.type === 'function') {
51127
+ var componentName = componentElement.type.displayName || componentElement.type.name;
51128
+ var format = componentElement.props.format || componentElement.props.keygen;
51129
+ switch (componentName) {
51130
+ case 'ShineoutInput':
51131
+ case 'ShineoutEditableArea':
51132
+ fieldSchemaInfo.type = 'string';
51133
+ break;
51134
+ case 'ShineoutInputNumber':
51135
+ fieldSchemaInfo.type = 'number';
51136
+ break;
51137
+ case 'ShineoutInputPassword':
51138
+ fieldSchemaInfo.type = 'string';
51139
+ break;
51140
+ case 'ShineoutTextarea':
51141
+ fieldSchemaInfo.type = 'string';
51142
+ break;
51143
+ case 'ShineoutCascader':
51144
+ case 'ShineoutSelect':
51145
+ case 'ShineoutTreeSelect':
51146
+ {
51147
+ if (typeof componentElement.props.keygen !== 'boolean') {
51148
+ if (typeof format === 'string') {
51149
+ var _data$;
51150
+ itemType = typeof_default()(data === null || data === void 0 ? void 0 : data[0]) === 'object' ? typeof_default()(data === null || data === void 0 || (_data$ = data[0]) === null || _data$ === void 0 ? void 0 : _data$[format]) : typeof_default()(data === null || data === void 0 ? void 0 : data[0]);
51151
+ } else if (typeof format === 'function') {
51152
+ itemType = typeof_default()(format(data === null || data === void 0 ? void 0 : data[0]));
51153
+ } else {
51154
+ itemType = typeof_default()(data === null || data === void 0 ? void 0 : data[0]);
51155
+ }
51156
+ } else {
51157
+ itemType = typeof_default()(data === null || data === void 0 ? void 0 : data[0]);
51158
+ }
51159
+ if (componentElement.props.multiple) {
51160
+ fieldSchemaInfo.type = 'array';
51161
+ if (itemType !== 'undefined') {
51162
+ fieldSchemaInfo.items = {
51163
+ type: itemType
51164
+ };
51165
+ }
51166
+ } else {
51167
+ if (itemType !== 'undefined') {
51168
+ fieldSchemaInfo.type = itemType;
51169
+ }
51170
+ }
51171
+ if (itemType === 'object') {
51172
+ // 对于对象类型,使用 oneOf 而不是 enum
51173
+ if (componentElement.props.multiple) {
51174
+ fieldSchemaInfo.items.oneOf = componentElement.props.data.map(function (item) {
51175
+ return {
51176
+ const: item,
51177
+ title: (item === null || item === void 0 ? void 0 : item.title) || JSON.stringify(item)
51178
+ };
51179
+ });
51180
+ } else {
51181
+ fieldSchemaInfo.oneOf = componentElement.props.data.map(function (item) {
51182
+ return {
51183
+ const: item,
51184
+ title: (item === null || item === void 0 ? void 0 : item.title) || JSON.stringify(item)
51185
+ };
51186
+ });
51187
+ }
51188
+ } else {
51189
+ fieldSchemaInfo.enum = componentElement.props.data.map(function (item) {
51190
+ return (item === null || item === void 0 ? void 0 : item[format]) || item;
51191
+ });
51192
+ }
51193
+ break;
51194
+ }
51195
+ case 'ShineoutDatePicker':
51196
+ if (componentElement.props.range) {
51197
+ if (finalFieldId !== null && finalFieldId !== void 0 && finalFieldId.includes(separator || '')) {
51198
+ fieldSchemaInfo.type = 'string';
51199
+ fieldSchemaInfo.format = 'date';
51200
+ } else {
51201
+ fieldSchemaInfo.type = 'array';
51202
+ fieldSchemaInfo.items = {
51203
+ type: 'string',
51204
+ format: 'date'
51205
+ };
51206
+ }
51207
+ } else {
51208
+ fieldSchemaInfo.type = 'string';
51209
+ fieldSchemaInfo.format = 'date';
51210
+ }
51211
+ fieldSchemaInfo.description += "\u9ED8\u8BA4\u65F6\u95F4\uFF1A".concat(((_componentElement$pro = componentElement.props.defaultTime) === null || _componentElement$pro === void 0 ? void 0 : _componentElement$pro.toString()) || '', "; \u683C\u5F0F\uFF1A").concat(componentElement.props.format || '', " ");
51212
+ break;
51213
+ case 'ShineoutCheckbox':
51214
+ case 'ShineoutCheckboxGroup':
51215
+ {
51216
+ if (typeof componentElement.props.keygen !== 'boolean') {
51217
+ if (typeof format === 'string') {
51218
+ var _data$2;
51219
+ itemType = typeof_default()(data === null || data === void 0 ? void 0 : data[0]) === 'object' ? typeof_default()(data === null || data === void 0 || (_data$2 = data[0]) === null || _data$2 === void 0 ? void 0 : _data$2[format]) : typeof_default()(data === null || data === void 0 ? void 0 : data[0]);
51220
+ } else if (typeof format === 'function') {
51221
+ itemType = typeof_default()(format(data === null || data === void 0 ? void 0 : data[0]));
51222
+ } else {
51223
+ itemType = typeof_default()(data === null || data === void 0 ? void 0 : data[0]);
51224
+ }
51225
+ } else {
51226
+ itemType = typeof_default()(data === null || data === void 0 ? void 0 : data[0]);
51227
+ }
51228
+ fieldSchemaInfo.type = 'array';
51229
+ fieldSchemaInfo.items = {
51230
+ type: itemType
51231
+ };
51232
+
51233
+ // ShineoutCheckboxGroup 有 data 时(多选的)
51234
+ if (itemType === 'object') {
51235
+ fieldSchemaInfo.items.oneOf = componentElement.props.data.map(function (item) {
51236
+ return {
51237
+ const: item,
51238
+ title: (item === null || item === void 0 ? void 0 : item.title) || JSON.stringify(item)
51239
+ };
51240
+ });
51241
+ } else {
51242
+ fieldSchemaInfo.items.enum = componentElement.props.data.map(function (item) {
51243
+ return (item === null || item === void 0 ? void 0 : item[format]) || item;
51244
+ });
51245
+ }
51246
+ break;
51247
+ }
51248
+ case 'ShineoutRadio':
51249
+ case 'ShineoutRadioGroup':
51250
+ {
51251
+ if (typeof componentElement.props.keygen !== 'boolean') {
51252
+ if (typeof format === 'string') {
51253
+ var _data$3;
51254
+ itemType = typeof_default()(data === null || data === void 0 ? void 0 : data[0]) === 'object' ? typeof_default()(data === null || data === void 0 || (_data$3 = data[0]) === null || _data$3 === void 0 ? void 0 : _data$3[format]) : typeof_default()(data === null || data === void 0 ? void 0 : data[0]);
51255
+ } else if (typeof format === 'function') {
51256
+ itemType = typeof_default()(format(data === null || data === void 0 ? void 0 : data[0]));
51257
+ } else {
51258
+ itemType = typeof_default()(data === null || data === void 0 ? void 0 : data[0]);
51259
+ }
51260
+ } else {
51261
+ itemType = typeof_default()(data === null || data === void 0 ? void 0 : data[0]);
51262
+ }
51263
+ fieldSchemaInfo.type = itemType;
51264
+
51265
+ // ShineoutRadioGroup 有 data 时(单选的)
51266
+ if (itemType === 'object') {
51267
+ fieldSchemaInfo.oneOf = componentElement.props.data.map(function (item) {
51268
+ return {
51269
+ const: item,
51270
+ title: (item === null || item === void 0 ? void 0 : item.title) || JSON.stringify(item)
51271
+ };
51272
+ });
51273
+ } else {
51274
+ fieldSchemaInfo.enum = componentElement.props.data.map(function (item) {
51275
+ return (item === null || item === void 0 ? void 0 : item[format]) || item;
51276
+ });
51277
+ }
51278
+ break;
51279
+ }
51280
+ case 'ShineoutSwitch':
51281
+ fieldSchemaInfo.type = 'boolean';
51282
+ break;
51283
+ case 'ShineoutSlider':
51284
+ case 'ShineoutRate':
51285
+ fieldSchemaInfo.type = 'number';
51286
+ break;
51287
+ default:
51288
+ if (Array.isArray(componentElement.props.value) && componentElement.props.value.length === 0) {
51289
+ fieldSchemaInfo.type = 'array';
51290
+ fieldSchemaInfo.items = {
51291
+ type: 'string'
51292
+ };
51293
+ } else {
51294
+ fieldSchemaInfo.type = typeof_default()(componentElement.props.value);
51295
+ }
51296
+ break;
51297
+ }
51298
+ }
51299
+ return fieldSchemaInfo;
51300
+ }
51301
+
51302
+ // 解析路径字符串,如 'a[0].b1' -> ['a', '[0]', 'b1']
51303
+ }, {
51304
+ key: "parsePath",
51305
+ value: function parsePath(path) {
51306
+ if (!path) return null;
51307
+ var segments = [];
51308
+ var current = '';
51309
+ var inBracket = false;
51310
+ for (var i = 0; i < path.length; i++) {
51311
+ var char = path[i];
51312
+ if (char === '[') {
51313
+ if (current) {
51314
+ segments.push(current);
51315
+ current = '';
51316
+ }
51317
+ current = '[';
51318
+ inBracket = true;
51319
+ } else if (char === ']') {
51320
+ current += ']';
51321
+ segments.push(current);
51322
+ current = '';
51323
+ inBracket = false;
51324
+ } else if (char === '.' && !inBracket) {
51325
+ if (current) {
51326
+ segments.push(current);
51327
+ current = '';
51328
+ }
51329
+ } else {
51330
+ current += char;
51331
+ }
51332
+ }
51333
+ if (current) {
51334
+ segments.push(current);
51335
+ }
51336
+ return segments;
51337
+ }
51338
+
51339
+ // 递归合并 schema
51340
+ }, {
51341
+ key: "mergeSchema",
51342
+ value: function mergeSchema(currentSchema, pathSegments, meta) {
51343
+ if (pathSegments.length === 0) {
51344
+ // 到达叶子节点,应用元数据
51345
+ Object.assign(currentSchema, meta);
51346
+ return;
51347
+ }
51348
+ var _pathSegments = toArray_default()(pathSegments),
51349
+ currentSegment = _pathSegments[0],
51350
+ remainingSegments = _pathSegments.slice(1);
51351
+ if (currentSegment.startsWith('[') && currentSegment.endsWith(']')) {
51352
+ // 处理数组索引,如 [0]
51353
+ this.handleArraySegment(currentSchema, remainingSegments, meta);
51354
+ } else {
51355
+ // 处理对象属性
51356
+ this.handleObjectProperty(currentSchema, currentSegment, remainingSegments, meta);
51357
+ }
51358
+ }
51359
+ }, {
51360
+ key: "handleArraySegment",
51361
+ value: function handleArraySegment(currentSchema, remainingSegments, meta) {
51362
+ // 当前节点应该是数组类型
51363
+ if (!currentSchema.items) {
51364
+ currentSchema.type = 'array';
51365
+ currentSchema.items = {
51366
+ type: 'object',
51367
+ properties: {}
51368
+ };
51369
+ }
51370
+ this.mergeSchema(currentSchema.items, remainingSegments, meta);
51371
+ }
51372
+ }, {
51373
+ key: "handleObjectProperty",
51374
+ value: function handleObjectProperty(currentSchema, propertyName, remainingSegments, meta) {
51375
+ // 确保当前节点有 properties
51376
+ if (!currentSchema.properties) {
51377
+ currentSchema.properties = {};
51378
+ }
51379
+
51380
+ // 如果属性不存在,创建它
51381
+ if (!currentSchema.properties[propertyName]) {
51382
+ currentSchema.properties[propertyName] = remainingSegments.length > 0 ? {
51383
+ type: 'object'
51384
+ } : {};
51385
+ }
51386
+ if (remainingSegments.length === 0) {
51387
+ // 叶子节点,应用元数据并处理 required
51388
+ var required = meta.required,
51389
+ restMeta = objectWithoutProperties_default()(meta, form_schema_builder_excluded);
51390
+ Object.assign(currentSchema.properties[propertyName], restMeta);
51391
+ if (typeof required === 'boolean') {
51392
+ this.handleRequired(currentSchema, propertyName, required);
51393
+ }
51394
+ } else {
51395
+ // 继续递归
51396
+ this.mergeSchema(currentSchema.properties[propertyName], remainingSegments, meta);
51397
+ }
51398
+ }
51399
+ }, {
51400
+ key: "handleRequired",
51401
+ value: function handleRequired(parentSchema, propertyName, isRequired) {
51402
+ // 如果required是布尔值,转换为数组形式
51403
+ if (typeof parentSchema.required === 'boolean') {
51404
+ return;
51405
+ }
51406
+ if (!parentSchema.required) {
51407
+ parentSchema.required = [];
51408
+ }
51409
+ var requiredIndex = parentSchema.required.indexOf(propertyName);
51410
+ if (isRequired && requiredIndex === -1) {
51411
+ parentSchema.required.push(propertyName);
51412
+ } else if (!isRequired && requiredIndex !== -1) {
51413
+ parentSchema.required.splice(requiredIndex, 1);
51414
+ }
51415
+
51416
+ // 如果 required 数组为空,删除它
51417
+ if (parentSchema.required.length === 0) {
51418
+ delete parentSchema.required;
51419
+ }
51420
+ }
51421
+ }, {
51422
+ key: "getFormSchema",
51423
+ value: function getFormSchema() {
51424
+ return this.schema;
51425
+ }
51426
+ }]);
51427
+ return SchemaBuilder;
51428
+ }();
50369
51429
  ;// CONCATENATED MODULE: ../hooks/src/components/use-form/use-form.ts
50370
51430
 
50371
51431
 
@@ -50378,6 +51438,7 @@ function use_previous_usePrevious(value) {
50378
51438
 
50379
51439
 
50380
51440
 
51441
+
50381
51442
  var globalKey = '__global__&&@@';
50382
51443
  var SUBMIT_TIMEOUT = 10;
50383
51444
 
@@ -50426,7 +51487,8 @@ var useForm = function useForm(props) {
50426
51487
  resetTime: 0,
50427
51488
  mounted: false,
50428
51489
  unmounted: false,
50429
- removeLock: false
51490
+ removeLock: false,
51491
+ schema: props.name ? new SchemaBuilder(props.name) : null
50430
51492
  }),
50431
51493
  context = _React$useRef.current;
50432
51494
  var getValue = use_persist_fn(function (name) {
@@ -50591,7 +51653,7 @@ var useForm = function useForm(props) {
50591
51653
  var _props$onChange;
50592
51654
  var newValue = typeof change === 'function' ? utils_immer_produce(context.value, change) : change;
50593
51655
  context.value = newValue;
50594
- (_props$onChange = props.onChange) === null || _props$onChange === void 0 || _props$onChange.call(props, context.value);
51656
+ (_props$onChange = props.onChange) === null || _props$onChange === void 0 || _props$onChange.call(props, newValue);
50595
51657
  });
50596
51658
  var scrollToField = use_persist_fn(function (name) {
50597
51659
  var _document;
@@ -50645,6 +51707,9 @@ var useForm = function useForm(props) {
50645
51707
  context.removeArr.forEach(function (n) {
50646
51708
  deepRemove(v, n);
50647
51709
  context.removeArr.delete(n);
51710
+ if (context.errors[n]) {
51711
+ delete context.errors[n];
51712
+ }
50648
51713
  });
50649
51714
  });
50650
51715
  };
@@ -50694,6 +51759,10 @@ var useForm = function useForm(props) {
50694
51759
  Object.keys(context.defaultValues).forEach(function (df) {
50695
51760
  var latestDefaultValue = getValue(df);
50696
51761
  if (latestDefaultValue === undefined) {
51762
+ // todo: Form组件传了clearToUndefined时,加入这部分判断?
51763
+ // if(context.value.hasOwnProperty(df) && clearToUndefined){
51764
+ // return;
51765
+ // }
50697
51766
  setValue(defineProperty_default()({}, df, context.defaultValues[df]), {
50698
51767
  validate: false
50699
51768
  });
@@ -50930,7 +51999,11 @@ var useForm = function useForm(props) {
50930
51999
  validateFieldset: validateFieldset,
50931
52000
  insertError: insertError,
50932
52001
  spliceError: spliceError,
50933
- scrollToField: scrollToField
52002
+ scrollToField: scrollToField,
52003
+ getFormSchema: function getFormSchema() {
52004
+ var _context$schema;
52005
+ return (_context$schema = context.schema) === null || _context$schema === void 0 ? void 0 : _context$schema.getFormSchema();
52006
+ }
50934
52007
  });
50935
52008
  var formConfig = external_root_React_commonjs2_react_commonjs_react_amd_react_.useMemo(function () {
50936
52009
  return {
@@ -50968,11 +52041,6 @@ var useForm = function useForm(props) {
50968
52041
  // 默认值更新
50969
52042
  external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect(function () {
50970
52043
  context.removeLock = false;
50971
- // 内部 onChange 改的 value, 不需要更新
50972
- if (props.value === context.value) {
50973
- if (!isControl) update();
50974
- return;
50975
- }
50976
52044
  if (initValidate && !context.resetTime) {
50977
52045
  var keys = Object.keys(context.validateMap).filter(function (key) {
50978
52046
  var oldValue = deepGet(preValue || emptyObj, key);
@@ -50982,6 +52050,7 @@ var useForm = function useForm(props) {
50982
52050
  validateFields(keys).catch(function () {});
50983
52051
  }
50984
52052
  update();
52053
+ if (!isControl) return;
50985
52054
  // 默认值上位时会提前触发外部的onChange, 导致外部的多次setFormValue不能合并后生效的问题(ReactDOM.render方式渲染)
50986
52055
  setTimeout(updateDefaultValue);
50987
52056
  context.resetTime = 0;
@@ -51003,7 +52072,8 @@ var useForm = function useForm(props) {
51003
52072
  ProviderProps: {
51004
52073
  formValue: formValue,
51005
52074
  formConfig: formConfig,
51006
- formFunc: formFunc
52075
+ formFunc: formFunc,
52076
+ formSchema: context.schema
51007
52077
  },
51008
52078
  formFunc: formFunc
51009
52079
  };
@@ -51087,7 +52157,8 @@ var Form = function Form(props) {
51087
52157
  validateFieldsWithValue: validateFieldsWithValue,
51088
52158
  validateFieldsWithError: formFunc.validateFields,
51089
52159
  set: formFunc.setValue,
51090
- scrollToField: formFunc.scrollToField
52160
+ scrollToField: formFunc.scrollToField,
52161
+ getFormSchema: formFunc.getFormSchema
51091
52162
  });
51092
52163
  external_root_React_commonjs2_react_commonjs_react_amd_react_default().useEffect(function () {
51093
52164
  if (formRef) {
@@ -51218,158 +52289,6 @@ var UseFormItem = function UseFormItem() {
51218
52289
  };
51219
52290
  };
51220
52291
  /* harmony default export */ var use_form_item = (UseFormItem);
51221
- ;// CONCATENATED MODULE: ../base/src/tooltip/tooltip.tsx
51222
-
51223
-
51224
-
51225
-
51226
-
51227
-
51228
-
51229
-
51230
-
51231
-
51232
- var tooltip_devUseWarning = devUseWarning;
51233
- var defaultDelay = 0;
51234
- var Tooltip = function Tooltip(props) {
51235
- var _jssStyle$tooltip, _config$tooltip;
51236
- var _props$trigger = props.trigger,
51237
- trigger = _props$trigger === void 0 ? 'hover' : _props$trigger,
51238
- priorityDirection = props.priorityDirection,
51239
- children = props.children,
51240
- tip = props.tip,
51241
- disabledChild = props.disabledChild,
51242
- jssStyle = props.jssStyle,
51243
- className = props.className,
51244
- style = props.style,
51245
- zIndex = props.zIndex,
51246
- _props$showArrow = props.showArrow,
51247
- showArrow = _props$showArrow === void 0 ? true : _props$showArrow,
51248
- persistentProp = props.persistent,
51249
- _props$type = props.type,
51250
- type = _props$type === void 0 ? 'default' : _props$type,
51251
- _props$position = props.position,
51252
- popsitionProps = _props$position === void 0 ? 'auto' : _props$position,
51253
- _props$popupGap = props.popupGap,
51254
- popupGap = _props$popupGap === void 0 ? 0 : _props$popupGap;
51255
- var tooltipClasses = jssStyle === null || jssStyle === void 0 || (_jssStyle$tooltip = jssStyle.tooltip) === null || _jssStyle$tooltip === void 0 ? void 0 : _jssStyle$tooltip.call(jssStyle);
51256
- var config = useConfig();
51257
- var persistent = persistentProp !== null && persistentProp !== void 0 ? persistentProp : (_config$tooltip = config.tooltip) === null || _config$tooltip === void 0 ? void 0 : _config$tooltip.persistent;
51258
- var childrenProps = /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_.isValidElement)(children) ? children === null || children === void 0 ? void 0 : children.props : {};
51259
- var delay = props.delay || props.mouseEnterDelay || defaultDelay;
51260
- var _usePopup = use_popup({
51261
- position: popsitionProps,
51262
- trigger: trigger,
51263
- autoMode: 'popover',
51264
- priorityDirection: priorityDirection,
51265
- mouseEnterDelay: delay,
51266
- targetEvents: disabledChild ? {} : childrenProps
51267
- }),
51268
- open = _usePopup.open,
51269
- position = _usePopup.position,
51270
- getTargetProps = _usePopup.getTargetProps,
51271
- targetRef = _usePopup.targetRef,
51272
- popupRef = _usePopup.popupRef,
51273
- closePop = _usePopup.closePop;
51274
- var events = getTargetProps();
51275
- var _React$useState = external_root_React_commonjs2_react_commonjs_react_amd_react_default().useState(0),
51276
- _React$useState2 = slicedToArray_default()(_React$useState, 2),
51277
- updateKey = _React$useState2[0],
51278
- setUpdateKey = _React$useState2[1];
51279
- var handleUpdateKey = usePersistFn(function () {
51280
- setUpdateKey(function (prev) {
51281
- return (prev + 1) % 2;
51282
- });
51283
- });
51284
- var bindEvents = function bindEvents() {
51285
- var _window;
51286
- var targetEl = targetRef.current;
51287
- if (!targetEl) return;
51288
- if (events.onMouseEnter) targetEl.addEventListener('mouseenter', events.onMouseEnter);
51289
- if (events.onMouseLeave) targetEl.addEventListener('mouseleave', events.onMouseLeave);
51290
- if (events.onClick) targetEl.addEventListener('click', events.onClick);
51291
- (_window = window) === null || _window === void 0 || _window.addEventListener('resize', handleUpdateKey);
51292
- };
51293
- var unbindEvents = function unbindEvents() {
51294
- var _window2;
51295
- var targetEl = targetRef.current;
51296
- if (!targetEl) return;
51297
- var events = getTargetProps();
51298
- if (events.onMouseEnter) targetEl.removeEventListener('mouseenter', events.onMouseEnter);
51299
- if (events.onMouseLeave) targetEl.removeEventListener('mouseleave', events.onMouseLeave);
51300
- if (events.onClick) targetEl.removeEventListener('click', events.onClick);
51301
- targetEl.removeEventListener('click', closePop);
51302
- (_window2 = window) === null || _window2 === void 0 || _window2.removeEventListener('resize', handleUpdateKey);
51303
- };
51304
- (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
51305
- if (!persistent) return;
51306
- bindEvents();
51307
- return function () {
51308
- unbindEvents();
51309
- };
51310
- }, [persistent]);
51311
- if (! /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_.isValidElement)(children)) {
51312
- tooltip_devUseWarning.error('Tooltip children expect a single ReactElement.');
51313
- return null;
51314
- }
51315
- if (!tip) return children;
51316
- var inner = disabledChild ? /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
51317
- className: tooltipClasses === null || tooltipClasses === void 0 ? void 0 : tooltipClasses.target,
51318
- style: {
51319
- cursor: 'not-allowed'
51320
- },
51321
- children: /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_.cloneElement)(children, {
51322
- style: objectSpread2_default()(objectSpread2_default()({}, childrenProps.style), {}, {
51323
- pointerEvents: 'none'
51324
- })
51325
- })
51326
- }) : children;
51327
- return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
51328
- children: [/*#__PURE__*/(0,jsx_runtime.jsx)("noscript", {
51329
- ref: function ref(el) {
51330
- if (!el) return;
51331
- var targetEl = el.nextElementSibling;
51332
- if (!targetEl) return;
51333
- if (targetRef.current === targetEl) return;
51334
- targetRef.current = targetEl;
51335
- }
51336
- }, 'ns'), /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_.cloneElement)(inner, events), /*#__PURE__*/(0,jsx_runtime.jsx)(absolute_list, {
51337
- focus: open,
51338
- parentElRef: targetRef,
51339
- popupElRef: popupRef,
51340
- absolute: true,
51341
- position: position,
51342
- fixedWidth: false,
51343
- popupGap: popupGap,
51344
- zIndex: zIndex,
51345
- adjust: popsitionProps === 'auto',
51346
- updateKey: updateKey,
51347
- children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", objectSpread2_default()(objectSpread2_default()({
51348
- className: classnames_default()(className, tooltipClasses === null || tooltipClasses === void 0 ? void 0 : tooltipClasses.rootClass, tooltipClasses === null || tooltipClasses === void 0 ? void 0 : tooltipClasses.wrapper, open && (tooltipClasses === null || tooltipClasses === void 0 ? void 0 : tooltipClasses.wrapperOpen)),
51349
- style: {
51350
- pointerEvents: persistent ? 'initial' : undefined
51351
- }
51352
- }, getDataAttribute({
51353
- type: type,
51354
- position: position
51355
- })), {}, {
51356
- ref: popupRef,
51357
- onMouseLeave: events.onMouseLeave,
51358
- dir: config.direction,
51359
- children: [showArrow && /*#__PURE__*/(0,jsx_runtime.jsx)("span", objectSpread2_default()({
51360
- className: tooltipClasses === null || tooltipClasses === void 0 ? void 0 : tooltipClasses.arrow
51361
- }, getDataAttribute({
51362
- role: 'arrow'
51363
- }))), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
51364
- style: style,
51365
- className: classnames_default()(tooltipClasses === null || tooltipClasses === void 0 ? void 0 : tooltipClasses.content),
51366
- children: tip
51367
- })]
51368
- }))
51369
- })]
51370
- });
51371
- };
51372
- /* harmony default export */ var src_tooltip_tooltip = (Tooltip);
51373
52292
  ;// CONCATENATED MODULE: ../base/src/form/form-item.tsx
51374
52293
 
51375
52294
 
@@ -51387,7 +52306,7 @@ var form_item_excluded = ["children", "jssStyle", "className", "style", "label",
51387
52306
 
51388
52307
 
51389
52308
  var FormItem = function FormItem(props) {
51390
- var _jssStyle$formItem;
52309
+ var _jssStyle$formItem, _labelRef$current, _labelTipRef$current;
51391
52310
  var children = props.children,
51392
52311
  jssStyle = props.jssStyle,
51393
52312
  className = props.className,
@@ -51398,7 +52317,7 @@ var FormItem = function FormItem(props) {
51398
52317
  rest = objectWithoutProperties_default()(props, form_item_excluded);
51399
52318
  var formItemClasses = jssStyle === null || jssStyle === void 0 || (_jssStyle$formItem = jssStyle.formItem) === null || _jssStyle$formItem === void 0 ? void 0 : _jssStyle$formItem.call(jssStyle);
51400
52319
  var _useFormItem = use_form_item(),
51401
- Provider = _useFormItem.Provider,
52320
+ FormItemContextProvider = _useFormItem.Provider,
51402
52321
  ProviderValue = _useFormItem.ProviderValue,
51403
52322
  labelConfig = _useFormItem.labelConfig,
51404
52323
  errors = _useFormItem.errors,
@@ -51458,11 +52377,40 @@ var FormItem = function FormItem(props) {
51458
52377
  children: label
51459
52378
  });
51460
52379
  };
52380
+ var labelRef = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)(null);
52381
+ var labelTipRef = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)(null);
52382
+ var labelText = (_labelRef$current = labelRef.current) === null || _labelRef$current === void 0 ? void 0 : _labelRef$current.textContent;
52383
+ if ((_labelTipRef$current = labelTipRef.current) !== null && _labelTipRef$current !== void 0 && _labelTipRef$current.textContent) {
52384
+ var _labelTipRef$current2;
52385
+ labelText += " (tip: ".concat((_labelTipRef$current2 = labelTipRef.current) === null || _labelTipRef$current2 === void 0 ? void 0 : _labelTipRef$current2.textContent, ")");
52386
+ }
52387
+ var renderError = function renderError() {
52388
+ if (!showError) return null;
52389
+ var uniqueErrors = errors;
52390
+ if (errors.length > 1) {
52391
+ uniqueErrors = errors.filter(function (error, index, self) {
52392
+ return index === self.findIndex(function (t) {
52393
+ return t.message === error.message;
52394
+ });
52395
+ });
52396
+ }
52397
+ return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
52398
+ className: formItemClasses === null || formItemClasses === void 0 ? void 0 : formItemClasses.error,
52399
+ children: uniqueErrors.map(function (error, index) {
52400
+ return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
52401
+ children: error && /*#__PURE__*/(0,jsx_runtime.jsx)(error_trans, {
52402
+ error: error
52403
+ })
52404
+ }, index);
52405
+ })
52406
+ });
52407
+ };
51461
52408
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", objectSpread2_default()(objectSpread2_default()({
51462
52409
  className: classnames_default()(className, formItemClasses === null || formItemClasses === void 0 ? void 0 : formItemClasses.wrapper, defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()({}, formItemClasses === null || formItemClasses === void 0 ? void 0 : formItemClasses.wrapperLabelTop, labelAlign === 'top'), formItemClasses === null || formItemClasses === void 0 ? void 0 : formItemClasses.wrapperLabelVerticalMiddle, labelAlign !== 'top' && labelVerticalAlign === 'middle'), formItemClasses === null || formItemClasses === void 0 ? void 0 : formItemClasses.wrapperLabelVerticalBottom, labelAlign !== 'top' && labelVerticalAlign === 'bottom'), formItemClasses === null || formItemClasses === void 0 ? void 0 : formItemClasses.wrapperInline, inline), formItemClasses === null || formItemClasses === void 0 ? void 0 : formItemClasses.wrapperKeepHeight, keepErrorHeight), formItemClasses === null || formItemClasses === void 0 ? void 0 : formItemClasses.wrapperRequired, required), formItemClasses === null || formItemClasses === void 0 ? void 0 : formItemClasses.wrapperHideRequired, required === false), formItemClasses === null || formItemClasses === void 0 ? void 0 : formItemClasses.wrapperTip, showError || tip))
51463
52410
  }, attributes), {}, {
51464
52411
  style: style,
51465
52412
  children: [label !== undefined ? /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
52413
+ ref: labelRef,
51466
52414
  className: classnames_default()(formItemClasses === null || formItemClasses === void 0 ? void 0 : formItemClasses.label, defineProperty_default()(defineProperty_default()(defineProperty_default()({}, formItemClasses === null || formItemClasses === void 0 ? void 0 : formItemClasses.labelLeft, labelAlign === 'left'), formItemClasses === null || formItemClasses === void 0 ? void 0 : formItemClasses.labelWithColon, colon), formItemClasses === null || formItemClasses === void 0 ? void 0 : formItemClasses.labelWithTooltip, label && typeof_default()(label) === 'object' && 'tooltip' in label)),
51467
52415
  style: labelAlign !== 'top' || inline ? {
51468
52416
  width: labelWidth
@@ -51473,22 +52421,16 @@ var FormItem = function FormItem(props) {
51473
52421
  }, getDataAttribute({
51474
52422
  role: 'form-control'
51475
52423
  })), {}, {
51476
- children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Provider, {
51477
- value: ProviderValue,
52424
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)(FormItemContextProvider, {
52425
+ value: objectSpread2_default()(objectSpread2_default()({}, ProviderValue), {}, {
52426
+ label: labelText
52427
+ }),
51478
52428
  children: children
51479
52429
  }), !!tip && (!showError || keepErrorBelow) && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
52430
+ ref: labelTipRef,
51480
52431
  className: formItemClasses === null || formItemClasses === void 0 ? void 0 : formItemClasses.tip,
51481
52432
  children: tip
51482
- }), showError && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
51483
- className: formItemClasses === null || formItemClasses === void 0 ? void 0 : formItemClasses.error,
51484
- children: errors.map(function (error, index) {
51485
- return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
51486
- children: error && /*#__PURE__*/(0,jsx_runtime.jsx)(error_trans, {
51487
- error: error
51488
- })
51489
- }, index);
51490
- })
51491
- })]
52433
+ }), renderError()]
51492
52434
  }))]
51493
52435
  }));
51494
52436
  };
@@ -51559,6 +52501,7 @@ var useFormFieldSet = function useFormFieldSet(props) {
51559
52501
 
51560
52502
 
51561
52503
 
52504
+
51562
52505
  var form_fieldset_produce = utils_immer_produce;
51563
52506
  var FormFieldSet = function FormFieldSet(props) {
51564
52507
  var children = props.children,
@@ -51617,6 +52560,48 @@ var FormFieldSet = function FormFieldSet(props) {
51617
52560
  // }
51618
52561
 
51619
52562
  return valueArr.map(function (v, i) {
52563
+ // 创建一个代理对象,让 {...value} 操作能获取最新值
52564
+ // 确保 target 是一个对象,避免 Proxy 报错
52565
+ var target = v && typeof_default()(v) === 'object' ? v : {};
52566
+ var valueProxy = new Proxy(target, {
52567
+ get: function get(target, prop) {
52568
+ var currentValue = formFunc === null || formFunc === void 0 ? void 0 : formFunc.getValue(name);
52569
+ var latestItem = Array.isArray(currentValue) ? currentValue[i] : v;
52570
+
52571
+ // 如果最新值是对象,返回对象的属性
52572
+ if (latestItem && typeof_default()(latestItem) === 'object') {
52573
+ return latestItem[prop];
52574
+ }
52575
+
52576
+ // 如果最新值是基本类型,但原始target是对象,从target获取
52577
+ if (target && typeof_default()(target) === 'object' && prop in target) {
52578
+ return target[prop];
52579
+ }
52580
+
52581
+ // 其他情况返回undefined
52582
+ return undefined;
52583
+ },
52584
+ ownKeys: function ownKeys(target) {
52585
+ var currentValue = formFunc === null || formFunc === void 0 ? void 0 : formFunc.getValue(name);
52586
+ var latestItem = Array.isArray(currentValue) ? currentValue[i] : v;
52587
+ if (latestItem && typeof_default()(latestItem) === 'object') {
52588
+ return Object.keys(latestItem);
52589
+ }
52590
+ return Object.keys(target || {});
52591
+ },
52592
+ getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, prop) {
52593
+ var currentValue = formFunc === null || formFunc === void 0 ? void 0 : formFunc.getValue(name);
52594
+ var latestItem = Array.isArray(currentValue) ? currentValue[i] : v;
52595
+ if (latestItem && typeof_default()(latestItem) === 'object' && prop in latestItem) {
52596
+ return {
52597
+ enumerable: true,
52598
+ configurable: true,
52599
+ value: latestItem[prop]
52600
+ };
52601
+ }
52602
+ return Object.getOwnPropertyDescriptor(target || {}, prop);
52603
+ }
52604
+ });
51620
52605
  return /*#__PURE__*/(0,jsx_runtime.jsx)(Provider, {
51621
52606
  value: {
51622
52607
  path: "".concat(ProviderValue.path, "[").concat(i, "]"),
@@ -51624,7 +52609,7 @@ var FormFieldSet = function FormFieldSet(props) {
51624
52609
  },
51625
52610
  children: children({
51626
52611
  list: valueArr,
51627
- value: v,
52612
+ value: valueProxy,
51628
52613
  index: i,
51629
52614
  error: errorList,
51630
52615
  onChange: function onChange(val, options) {
@@ -51639,8 +52624,13 @@ var FormFieldSet = function FormFieldSet(props) {
51639
52624
  },
51640
52625
  onInsert: function onInsert(val) {
51641
52626
  var oldValue = formFunc === null || formFunc === void 0 ? void 0 : formFunc.getValue(name);
52627
+ var insertValue = val;
52628
+ var valueTemplate = oldValue[i];
52629
+ if (insertValue === undefined) {
52630
+ insertValue = clearValue(deepClone(valueTemplate));
52631
+ }
51642
52632
  var newValue = form_fieldset_produce(oldValue, function (draft) {
51643
- draft.splice(i, 0, val);
52633
+ draft.splice(i, 0, insertValue);
51644
52634
  });
51645
52635
  _onChange(newValue);
51646
52636
  // context.ids.splice(i, 0, util.generateUUID());
@@ -51648,8 +52638,13 @@ var FormFieldSet = function FormFieldSet(props) {
51648
52638
  },
51649
52639
  onAppend: function onAppend(val) {
51650
52640
  var oldValue = formFunc === null || formFunc === void 0 ? void 0 : formFunc.getValue(name);
52641
+ var insertValue = val;
52642
+ var valueTemplate = oldValue[i];
52643
+ if (insertValue === undefined) {
52644
+ insertValue = clearValue(deepClone(valueTemplate));
52645
+ }
51651
52646
  var newValue = form_fieldset_produce(oldValue, function (draft) {
51652
- draft.splice(i + 1, 0, val);
52647
+ draft.splice(i + 1, 0, insertValue);
51653
52648
  });
51654
52649
  _onChange(newValue);
51655
52650
  // context.ids.splice(i + 1, 0, util.generateUUID());
@@ -53308,6 +54303,7 @@ var input_input_Input = function Input(props) {
53308
54303
  jssStyle: input_jssStyle
53309
54304
  }));
53310
54305
  };
54306
+ input_input_Input.displayName = 'ShineoutInput';
53311
54307
  /* harmony default export */ var src_input_input_0 = (/*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_.memo)(function (props) {
53312
54308
  return use_field_common(props, input_input_Input);
53313
54309
  }));
@@ -53543,6 +54539,7 @@ var InputPassword = function InputPassword(props) {
53543
54539
  jssStyle: password_jssStyle
53544
54540
  }));
53545
54541
  };
54542
+ InputPassword.displayName = 'ShineoutInputPassword';
53546
54543
  /* harmony default export */ var src_input_password = (function (props) {
53547
54544
  return use_field_common(props, InputPassword);
53548
54545
  });
@@ -53567,7 +54564,8 @@ var useNumberFormat = function useNumberFormat(props) {
53567
54564
  _props$step = props.step,
53568
54565
  step = _props$step === void 0 ? 1 : _props$step,
53569
54566
  cancelBlurChange = props.cancelBlurChange,
53570
- disabled = props.disabled;
54567
+ disabled = props.disabled,
54568
+ coin = props.coin;
53571
54569
  var getStringValue = function getStringValue(value) {
53572
54570
  if (value === undefined) return value;
53573
54571
  if (typeof value === 'number') {
@@ -53686,6 +54684,7 @@ var useNumberFormat = function useNumberFormat(props) {
53686
54684
  numType: numType,
53687
54685
  integerLimit: integerLimit,
53688
54686
  digits: digits,
54687
+ coin: coin,
53689
54688
  onChange: onNumberChange,
53690
54689
  onBlur: onNumberBlur,
53691
54690
  onFocus: props.onFocus,
@@ -53699,7 +54698,7 @@ var useNumberFormat = function useNumberFormat(props) {
53699
54698
  ;// CONCATENATED MODULE: ../base/src/input/input-number.tsx
53700
54699
 
53701
54700
 
53702
- var input_number_excluded = ["jssStyle", "hideArrow", "numType", "integerLimit", "digits", "min", "max", "step", "allowNull"],
54701
+ var input_number_excluded = ["jssStyle", "hideArrow", "numType", "integerLimit", "digits", "min", "max", "step", "allowNull", "coin"],
53703
54702
  input_number_excluded2 = ["onMinus", "onPlus"];
53704
54703
 
53705
54704
 
@@ -53721,6 +54720,7 @@ var InputNumber = function InputNumber(props) {
53721
54720
  max = commonProps.max,
53722
54721
  step = commonProps.step,
53723
54722
  allowNull = commonProps.allowNull,
54723
+ coin = commonProps.coin,
53724
54724
  restProps = objectWithoutProperties_default()(commonProps, input_number_excluded);
53725
54725
  var inputStyle = jssStyle === null || jssStyle === void 0 || (_jssStyle$input = jssStyle.input) === null || _jssStyle$input === void 0 ? void 0 : _jssStyle$input.call(jssStyle);
53726
54726
  var numberFormatParams = {
@@ -53732,7 +54732,8 @@ var InputNumber = function InputNumber(props) {
53732
54732
  min: min,
53733
54733
  max: max,
53734
54734
  step: step,
53735
- allowNull: allowNull
54735
+ allowNull: allowNull,
54736
+ coin: coin
53736
54737
  };
53737
54738
  var _useInputNumber = use_input_number(objectSpread2_default()({
53738
54739
  value: commonProps.value,
@@ -53803,6 +54804,7 @@ var number_InputNumber = function InputNumber(props) {
53803
54804
  jssStyle: number_jssStyle
53804
54805
  }));
53805
54806
  };
54807
+ number_InputNumber.displayName = 'ShineoutInputNumber';
53806
54808
  /* harmony default export */ var number = (function (props) {
53807
54809
  return use_field_common(props, number_InputNumber, 'number');
53808
54810
  });
@@ -54226,6 +55228,7 @@ var list_List = function List(props) {
54226
55228
  lineHeightProp = props.lineHeight,
54227
55229
  threshold = props.threshold,
54228
55230
  controlType = props.controlType,
55231
+ keepScrollTop = props.keepScrollTop,
54229
55232
  hideCreateOption = props.hideCreateOption,
54230
55233
  optionListRef = props.optionListRef,
54231
55234
  isAnimationFinish = props.isAnimationFinish,
@@ -54401,6 +55404,7 @@ var list_List = function List(props) {
54401
55404
  dynamicVirtual: dynamicVirtual,
54402
55405
  tagClassName: styles.virtualList,
54403
55406
  height: height,
55407
+ keepScrollTop: keepScrollTop,
54404
55408
  onScroll: handleVirtualScroll,
54405
55409
  lineHeight: lineHeight,
54406
55410
  rowsInView: itemsInView,
@@ -54518,6 +55522,7 @@ var NodeContent = function NodeContent(props) {
54518
55522
  onToggle = props.onToggle,
54519
55523
  onDragOver = props.onDragOver,
54520
55524
  onNodeClick = props.onNodeClick,
55525
+ onTriggered = props.onTriggered,
54521
55526
  actionOnClick = props.actionOnClick;
54522
55527
  var forceUpdate = useRender();
54523
55528
  var _useTreeContext = useTreeContext(),
@@ -54547,6 +55552,7 @@ var NodeContent = function NodeContent(props) {
54547
55552
  };
54548
55553
  var handleNodeExpand = function handleNodeExpand() {
54549
55554
  onToggle === null || onToggle === void 0 || onToggle(id);
55555
+ onTriggered === null || onTriggered === void 0 || onTriggered();
54550
55556
  if (data[childrenKey] !== undefined) return;
54551
55557
  if (loader) {
54552
55558
  setFetching(true);
@@ -54735,6 +55741,18 @@ var useTreeNode = function useTreeNode(props) {
54735
55741
  _useState6 = slicedToArray_default()(_useState5, 2),
54736
55742
  fetching = _useState6[0],
54737
55743
  setFetching = _useState6[1];
55744
+ var _useState7 = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useState)(false),
55745
+ _useState8 = slicedToArray_default()(_useState7, 2),
55746
+ hasTriggered = _useState8[0],
55747
+ setHasTriggered = _useState8[1];
55748
+ var get = function get() {
55749
+ return {
55750
+ hasTriggered: hasTriggered,
55751
+ active: active,
55752
+ expanded: expanded,
55753
+ fetching: fetching
55754
+ };
55755
+ };
54738
55756
  var update = use_persist_fn(function (key, value) {
54739
55757
  switch (key) {
54740
55758
  case 'active':
@@ -54750,9 +55768,14 @@ var useTreeNode = function useTreeNode(props) {
54750
55768
  setFetching(value);
54751
55769
  }
54752
55770
  break;
55771
+ case 'get':
55772
+ return get();
54753
55773
  }
54754
55774
  });
54755
55775
  var handleToggle = function handleToggle() {};
55776
+ var handleTriggered = function handleTriggered() {
55777
+ setHasTriggered(true);
55778
+ };
54756
55779
  var isLeaf = function isLeaf() {
54757
55780
  var children = data[childrenKey];
54758
55781
  if (children && children.length > 0) return false;
@@ -54776,7 +55799,8 @@ var useTreeNode = function useTreeNode(props) {
54776
55799
  isLeaf: isLeaf,
54777
55800
  setFetching: setFetching,
54778
55801
  setExpanded: setExpanded,
54779
- onToggle: handleToggle
55802
+ onToggle: handleToggle,
55803
+ onTriggered: handleTriggered
54780
55804
  };
54781
55805
  };
54782
55806
  /* harmony default export */ var use_tree_node = (useTreeNode);
@@ -54867,7 +55891,8 @@ var Node = function Node(props) {
54867
55891
  fetching = _useTreeNode.fetching,
54868
55892
  setFetching = _useTreeNode.setFetching,
54869
55893
  expanded = _useTreeNode.expanded,
54870
- setExpanded = _useTreeNode.setExpanded;
55894
+ setExpanded = _useTreeNode.setExpanded,
55895
+ onTriggered = _useTreeNode.onTriggered;
54871
55896
  var children = data[childrenKey];
54872
55897
  var hasChildren = children && children.length > 0;
54873
55898
  var contentStyle = (jssStyle === null || jssStyle === void 0 ? void 0 : jssStyle.tree()) || {};
@@ -55053,6 +56078,7 @@ var Node = function Node(props) {
55053
56078
  onChange: onChange,
55054
56079
  onFetch: handleFetch,
55055
56080
  onNodeClick: onNodeClick,
56081
+ onTriggered: onTriggered,
55056
56082
  onDragOver: handleDragOver,
55057
56083
  onToggle: handleToggle,
55058
56084
  actionOnClick: actionOnClick
@@ -55218,7 +56244,19 @@ var VirtualNode = function VirtualNode(props) {
55218
56244
  });
55219
56245
  if (onToggle) onToggle(id, nextExpanded);
55220
56246
  };
55221
- var indent = size === "large" ? 32 : 24;
56247
+ var getIndent = function getIndent() {
56248
+ if (size === "large") {
56249
+ if (line && level === 1) {
56250
+ return 16;
56251
+ }
56252
+ return 32;
56253
+ }
56254
+ if (line && level === 1) {
56255
+ return 8;
56256
+ }
56257
+ return 24;
56258
+ };
56259
+ var indent = getIndent();
55222
56260
  var $indents;
55223
56261
  if (line) {
55224
56262
  $indents = Array.from({
@@ -55237,7 +56275,8 @@ var VirtualNode = function VirtualNode(props) {
55237
56275
  className: rootClass,
55238
56276
  dir: config.direction,
55239
56277
  style: {
55240
- paddingLeft: level * indent
56278
+ paddingLeft: level * indent,
56279
+ height: props.lineHeight
55241
56280
  },
55242
56281
  children: [$indents, /*#__PURE__*/(0,jsx_runtime.jsx)(tree_content, {
55243
56282
  virtual: true,
@@ -55521,7 +56560,8 @@ var TreeVirtual = function TreeVirtual(props) {
55521
56560
  onNodeClick: onNodeClick,
55522
56561
  onToggle: onToggle,
55523
56562
  onChange: onChange,
55524
- size: datum.size
56563
+ size: datum.size,
56564
+ lineHeight: lineHeight
55525
56565
  }, id);
55526
56566
  };
55527
56567
  return /*#__PURE__*/(0,jsx_runtime.jsx)(virtual_scroll_list, {
@@ -55948,7 +56988,8 @@ var Radio = function Radio(props) {
55948
56988
  var inputProps = getInputProps();
55949
56989
  var rootProps = getRootProps({
55950
56990
  className: rootClass,
55951
- style: style
56991
+ style: style,
56992
+ needStopPropagation: true
55952
56993
  });
55953
56994
  var indicatorProps = getIndicatorProps();
55954
56995
  var simpleRadio = /*#__PURE__*/(0,jsx_runtime.jsxs)("div", objectSpread2_default()(objectSpread2_default()({
@@ -56056,6 +57097,7 @@ var ListColumnsOption = function ListColumnsOption(props) {
56056
57097
 
56057
57098
 
56058
57099
 
57100
+
56059
57101
  var ColumnsList = function ColumnsList(props) {
56060
57102
  var _jssStyle$select;
56061
57103
  var jssStyle = props.jssStyle,
@@ -56079,6 +57121,8 @@ var ColumnsList = function ColumnsList(props) {
56079
57121
  closePop = props.closePop;
56080
57122
  var groupKey = groupKeyProp;
56081
57123
  var styles = jssStyle === null || jssStyle === void 0 || (_jssStyle$select = jssStyle.select) === null || _jssStyle$select === void 0 ? void 0 : _jssStyle$select.call(jssStyle);
57124
+ var _useConfig = useConfig(),
57125
+ locale = _useConfig.locale;
56082
57126
 
56083
57127
  // columns 模式无上下边距,故而 lineHeight 需要调整
56084
57128
  var getLineHeight = function getLineHeight() {
@@ -56204,7 +57248,8 @@ var ColumnsList = function ColumnsList(props) {
56204
57248
  colNum: columns,
56205
57249
  lineHeight: lineHeight,
56206
57250
  rowsInView: itemsInView,
56207
- renderItem: renderItem
57251
+ renderItem: renderItem,
57252
+ paddingY: 4
56208
57253
  });
56209
57254
  };
56210
57255
  var renderSelectAll = function renderSelectAll() {
@@ -56217,7 +57262,7 @@ var ColumnsList = function ColumnsList(props) {
56217
57262
  jssStyle: jssStyle,
56218
57263
  checked: checked,
56219
57264
  onChange: handleChange,
56220
- children: "\u5168\u9009"
57265
+ children: getLocale(locale, 'selectAll')
56221
57266
  }), columnsTitle && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
56222
57267
  className: styles.columnsTitle,
56223
57268
  children: columnsTitle
@@ -56463,9 +57508,10 @@ function Select(props0) {
56463
57508
  closePop();
56464
57509
  }
56465
57510
  };
57511
+ var finalData = createdData ? [createdData].concat(toConsumableArray_default()(data || [])) : data;
56466
57512
  var _useSelect = use_select({
56467
57513
  value: valueProp,
56468
- data: data,
57514
+ data: finalData,
56469
57515
  separator: separator,
56470
57516
  treeData: treeData,
56471
57517
  childrenKey: childrenKey,
@@ -56612,7 +57658,8 @@ function Select(props0) {
56612
57658
  if (hideCreate) {
56613
57659
  // optionListRef.current?.hoverMove(filterData.length - 1, true);
56614
57660
  }
56615
- onFilter === null || onFilter === void 0 || onFilter(trim ? text.trim() : text, from);
57661
+ // onFilter?.(trim ? text.trim() : text, from);
57662
+ onFilter === null || onFilter === void 0 || onFilter(text.trim(), from);
56616
57663
  };
56617
57664
  var handleOptionClick = function handleOptionClick() {
56618
57665
  if (multiple) return;
@@ -56653,20 +57700,24 @@ function Select(props0) {
56653
57700
  if (!open) return;
56654
57701
  setControlType('keyboard');
56655
57702
  switch (e.keyCode || e.code) {
56656
- case 38 || 0:
57703
+ case 38:
57704
+ case 'ArrowUp':
56657
57705
  if ((_optionListRef$curren3 = optionListRef.current) !== null && _optionListRef$curren3 !== void 0 && _optionListRef$curren3.hoverHover) (_optionListRef$curren4 = optionListRef.current) === null || _optionListRef$curren4 === void 0 || _optionListRef$curren4.hoverMove(-1);
56658
57706
  e.preventDefault();
56659
57707
  break;
56660
- case 40 || 0:
57708
+ case 40:
57709
+ case 'ArrowDown':
56661
57710
  if ((_optionListRef$curren5 = optionListRef.current) !== null && _optionListRef$curren5 !== void 0 && _optionListRef$curren5.hoverHover) (_optionListRef$curren6 = optionListRef.current) === null || _optionListRef$curren6 === void 0 || _optionListRef$curren6.hoverMove(1);
56662
57711
  e.preventDefault();
56663
57712
  break;
56664
- case 13 || 0:
57713
+ case 13:
57714
+ case 'Enter':
56665
57715
  handleEnter();
56666
57716
  e.preventDefault();
56667
57717
  e.stopPropagation();
56668
57718
  break;
56669
- case 8 || 0:
57719
+ case 8:
57720
+ case 'Backspace':
56670
57721
  handleDelete(e);
56671
57722
  break;
56672
57723
  }
@@ -56679,6 +57730,7 @@ function Select(props0) {
56679
57730
  onFilter === null || onFilter === void 0 || onFilter('');
56680
57731
  }
56681
57732
  if (open) closePop();
57733
+ if (props.onClear) props.onClear();
56682
57734
  };
56683
57735
  var getRenderResult = function getRenderResult(data, index) {
56684
57736
  if (!renderResultProp) return renderItem(data, index);
@@ -56818,6 +57870,7 @@ function Select(props0) {
56818
57870
  renderItem: renderItem,
56819
57871
  controlType: controlType,
56820
57872
  onLoadMore: onLoadMore,
57873
+ keepScrollTop: !!filterText ? false : true,
56821
57874
  isAnimationFinish: isAnimationFinish,
56822
57875
  threshold: threshold,
56823
57876
  onControlTypeChange: setControlType,
@@ -56966,6 +58019,7 @@ function Select(props0) {
56966
58019
 
56967
58020
 
56968
58021
 
58022
+
56969
58023
  var PaginationSizeList = function PaginationSizeList(props) {
56970
58024
  var _jssStyle$pagination;
56971
58025
  var jssStyle = props.jssStyle,
@@ -56976,26 +58030,21 @@ var PaginationSizeList = function PaginationSizeList(props) {
56976
58030
  text = props.text,
56977
58031
  size = props.size,
56978
58032
  select = props.select,
58033
+ sizeListProps = props.sizeListProps,
56979
58034
  pageSize = props.pageSize,
56980
58035
  onChange = props.onChange;
56981
58036
  var paginationStyle = jssStyle === null || jssStyle === void 0 || (_jssStyle$pagination = jssStyle.pagination) === null || _jssStyle$pagination === void 0 ? void 0 : _jssStyle$pagination.call(jssStyle);
56982
58037
  var rootClasses = classnames_default()(paginationStyle === null || paginationStyle === void 0 ? void 0 : paginationStyle.section, paginationStyle === null || paginationStyle === void 0 ? void 0 : paginationStyle.sizeList);
56983
- var _ref = select || {},
56984
- absolute = _ref.absolute,
56985
- position = _ref.position,
56986
- zIndex = _ref.zIndex;
56987
58038
  var handleChange = function handleChange(pageSize) {
56988
58039
  var start = (current - 1) * props.pageSize + 1;
56989
58040
  onChange(Math.ceil(start / pageSize), pageSize);
56990
58041
  };
56991
58042
  return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
56992
58043
  className: rootClasses,
56993
- children: /*#__PURE__*/(0,jsx_runtime.jsx)(base_src_select_select, {
58044
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(base_src_select_select, objectSpread2_default()(objectSpread2_default()({
56994
58045
  jssStyle: jssStyle,
56995
58046
  disabled: disabled,
56996
- zIndex: zIndex || undefined,
56997
- absolute: absolute || true,
56998
- position: position || undefined,
58047
+ absolute: true,
56999
58048
  autoAdapt: true,
57000
58049
  keygen: true,
57001
58050
  size: size,
@@ -57006,7 +58055,7 @@ var PaginationSizeList = function PaginationSizeList(props) {
57006
58055
  renderItem: function renderItem(d) {
57007
58056
  return "".concat(d, " ").concat(text.page || '');
57008
58057
  }
57009
- })
58058
+ }, sizeListProps), select))
57010
58059
  });
57011
58060
  };
57012
58061
  /* harmony default export */ var pagination_size_list = (PaginationSizeList);
@@ -57526,7 +58575,8 @@ var usePagination = function usePagination(props) {
57526
58575
  return objectSpread2_default()({}, mergedEventHandlers);
57527
58576
  };
57528
58577
  return {
57529
- current: current,
58578
+ // current,
58579
+ current: currentProp !== undefined ? currentProp : current,
57530
58580
  pageSize: pageSize,
57531
58581
  total: total,
57532
58582
  onChange: handleChange,
@@ -57543,6 +58593,7 @@ var usePagination = function usePagination(props) {
57543
58593
 
57544
58594
 
57545
58595
 
58596
+ var pagination_devUseWarning = devUseWarning;
57546
58597
  var Pagination = function Pagination(props) {
57547
58598
  var _jssStyle$pagination;
57548
58599
  var className = props.className,
@@ -57570,7 +58621,13 @@ var Pagination = function Pagination(props) {
57570
58621
  text = _props$text === void 0 ? {} : _props$text,
57571
58622
  pageSizeList = props.pageSizeList,
57572
58623
  style = props.style,
57573
- select = props.select;
58624
+ select = props.select,
58625
+ sizeListProps = props.sizeListProps;
58626
+
58627
+ // 兼容v1 & v2版本
58628
+ if (props.sizeListProps) {
58629
+ pagination_devUseWarning.deprecated('sizeListProps', 'select', 'Pagination');
58630
+ }
57574
58631
  var _usePagination = use_pagination({
57575
58632
  total: total,
57576
58633
  span: span,
@@ -57639,7 +58696,8 @@ var Pagination = function Pagination(props) {
57639
58696
  current: current || 0,
57640
58697
  pageSize: pageSize,
57641
58698
  pageSizeList: pageSizeList,
57642
- onChange: onChange
58699
+ onChange: onChange,
58700
+ sizeListProps: sizeListProps
57643
58701
  }), i);
57644
58702
  case 'simple':
57645
58703
  return /*#__PURE__*/(0,jsx_runtime.jsx)(pagination_simple, objectSpread2_default()(objectSpread2_default()({}, props), {}, {
@@ -57770,7 +58828,7 @@ var list_list_List = function List(props) {
57770
58828
  return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
57771
58829
  className: listClasses === null || listClasses === void 0 ? void 0 : listClasses.row,
57772
58830
  style: {
57773
- height: props.fixed ? lineHeight : 'auto'
58831
+ height: props.fixed && !props.dynamicHeight ? lineHeight : 'auto'
57774
58832
  },
57775
58833
  children: columnData.map(function (item, rowIndex) {
57776
58834
  var index = rowIndex + columnIndex * colNum;
@@ -57778,6 +58836,35 @@ var list_list_List = function List(props) {
57778
58836
  })
57779
58837
  }, columnIndex);
57780
58838
  });
58839
+ var DynamicRow = function DynamicRow(_ref) {
58840
+ var columnData = _ref.columnData,
58841
+ columnIndex = _ref.columnIndex,
58842
+ setRowHeight = _ref.setRowHeight;
58843
+ var rowRef = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)(null);
58844
+ (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useLayoutEffect)(function () {
58845
+ if (rowRef.current && setRowHeight) {
58846
+ var rect = rowRef.current.getBoundingClientRect();
58847
+ if (rect.height > 0) {
58848
+ setRowHeight(columnIndex, rect.height);
58849
+ }
58850
+ }
58851
+ });
58852
+ return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
58853
+ ref: rowRef,
58854
+ className: listClasses === null || listClasses === void 0 ? void 0 : listClasses.row,
58855
+ children: columnData.map(function (item, rowIndex) {
58856
+ var index = rowIndex + columnIndex * colNum;
58857
+ return renderItem(item, index);
58858
+ })
58859
+ });
58860
+ };
58861
+ var renderDynamicColumn = usePersistFn(function (columnData, columnIndex, _relativeIndex, setRowHeight) {
58862
+ return /*#__PURE__*/(0,jsx_runtime.jsx)(DynamicRow, {
58863
+ columnData: columnData,
58864
+ columnIndex: columnIndex,
58865
+ setRowHeight: setRowHeight
58866
+ }, columnIndex);
58867
+ });
57781
58868
  var loadingPosition = props.loadingPosition || 'center';
57782
58869
  var renderCenterLoading = function renderCenterLoading() {
57783
58870
  if (!props.loading || loadingPosition !== 'center') return null;
@@ -57836,27 +58923,30 @@ var list_list_List = function List(props) {
57836
58923
  });
57837
58924
  var renderList = function renderList() {
57838
58925
  if (isEmpty) return null;
57839
- if (props.fixed) return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
57840
- children: [/*#__PURE__*/(0,jsx_runtime.jsx)(virtual_scroll_list, {
57841
- data: columnData,
57842
- renderItem: renderColumn,
57843
- lineHeight: lineHeight,
57844
- rowsInView: rowsInView,
57845
- onScroll: handleVirtualScroll,
57846
- height: 'auto',
57847
- style: {
57848
- flex: '1',
57849
- minHeight: '0',
57850
- display: 'flex'
57851
- },
57852
- scrollerStyle: {
57853
- flex: 1,
57854
- minHeight: 0,
57855
- minWidth: 0,
57856
- overflow: 'auto'
57857
- }
57858
- }), renderFooter()]
57859
- });
58926
+ if (props.fixed) {
58927
+ return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
58928
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)(virtual_scroll_list, {
58929
+ data: columnData,
58930
+ renderItem: props.dynamicHeight ? renderDynamicColumn : renderColumn,
58931
+ lineHeight: lineHeight,
58932
+ rowsInView: rowsInView,
58933
+ onScroll: handleVirtualScroll,
58934
+ height: 'auto',
58935
+ style: {
58936
+ flex: '1',
58937
+ minHeight: '0',
58938
+ display: 'flex'
58939
+ },
58940
+ scrollerStyle: {
58941
+ flex: 1,
58942
+ minHeight: 0,
58943
+ minWidth: 0,
58944
+ overflow: 'auto'
58945
+ },
58946
+ dynamicVirtual: props.dynamicHeight
58947
+ }), renderFooter()]
58948
+ });
58949
+ }
57860
58950
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
57861
58951
  className: listClasses === null || listClasses === void 0 ? void 0 : listClasses.scrollContainer,
57862
58952
  onScroll: handleListScroll,
@@ -59562,6 +60652,7 @@ ProgressComp.displayName = 'ShineoutProgress';
59562
60652
 
59563
60653
 
59564
60654
  var radio_group_context_groupContext = /*#__PURE__*/(0,external_root_React_commonjs2_react_commonjs_react_amd_react_.createContext)({});
60655
+ radio_group_context_groupContext.displayName = 'RadioGroupContext';
59565
60656
  /* harmony default export */ var radio_group_context = (radio_group_context_groupContext);
59566
60657
  ;// CONCATENATED MODULE: ../base/src/radio/radio.tsx
59567
60658
 
@@ -59589,11 +60680,20 @@ var radio_Radio = function Radio(props) {
59589
60680
  }
59590
60681
  return checked;
59591
60682
  };
60683
+
60684
+ // 对齐v1,v2版本的表现
60685
+ var getDisabled = function getDisabled() {
60686
+ if (typeof props.disabled === 'function') {
60687
+ return !!props.disabled(htmlValue);
60688
+ }
60689
+ return props.disabled;
60690
+ };
59592
60691
  return /*#__PURE__*/(0,jsx_runtime.jsx)(simple_radio, objectSpread2_default()(objectSpread2_default()({
59593
60692
  jssStyle: jssStyle
59594
60693
  }, rest), {}, {
59595
60694
  checked: getChecked(),
59596
60695
  onChange: handleChange,
60696
+ disabled: getDisabled(),
59597
60697
  children: children
59598
60698
  }));
59599
60699
  };
@@ -59665,7 +60765,6 @@ var useListSelectSingle = function useListSelectSingle(props) {
59665
60765
 
59666
60766
 
59667
60767
 
59668
-
59669
60768
  var radio_group_defaultFormat = function defaultFormat(d) {
59670
60769
  return d;
59671
60770
  };
@@ -59767,7 +60866,11 @@ var radio_group_Group = function Group(props0) {
59767
60866
  var Radios = props.data === undefined ? /*#__PURE__*/(0,jsx_runtime.jsx)(radio_group_context.Provider, {
59768
60867
  value: providerValue,
59769
60868
  children: children
59770
- }) : /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
60869
+ }) :
60870
+ /*#__PURE__*/
60871
+ // 传一个空的providerValue目的是为了避免父级Radio向下传递的GroupContext.Consumer影响
60872
+ (0,jsx_runtime.jsxs)(radio_group_context.Provider, {
60873
+ value: {},
59771
60874
  children: [props.data.map(function (d, i) {
59772
60875
  return /*#__PURE__*/(0,jsx_runtime.jsx)(base_src_radio_radio, {
59773
60876
  jssStyle: jssStyle,
@@ -59806,22 +60909,23 @@ var radio_group_jssStyle = {
59806
60909
  radio: useRadioStyle,
59807
60910
  button: useButtonStyle
59808
60911
  };
59809
- var BaseRadioGroup = function BaseRadioGroup(props) {
60912
+ var RadioGroup = function RadioGroup(props) {
59810
60913
  return /*#__PURE__*/(0,jsx_runtime.jsx)(radio_group, objectSpread2_default()(objectSpread2_default()({}, props), {}, {
59811
60914
  jssStyle: radio_group_jssStyle
59812
60915
  }));
59813
60916
  };
60917
+ RadioGroup.displayName = 'ShineoutRadioGroup';
59814
60918
  var RadioGroupWithField = function RadioGroupWithField(props) {
59815
- return use_field_common(props, BaseRadioGroup, 'array');
60919
+ return use_field_common(props, RadioGroup, 'array');
59816
60920
  };
59817
60921
  /* harmony default export */ var src_radio_group = (RadioGroupWithField);
59818
60922
  ;// CONCATENATED MODULE: ./src/radio/index.ts
59819
60923
 
59820
60924
 
59821
- var RadioGroup = src_radio_group;
59822
- RadioGroup.displayName = 'ShineoutRadioGroup';
60925
+ var radio_RadioGroup = src_radio_group;
60926
+ radio_RadioGroup.displayName = 'ShineoutRadioGroup';
59823
60927
  src_radio_radio_0.displayName = 'ShineoutRadio';
59824
- src_radio_radio_0.Group = RadioGroup;
60928
+ src_radio_radio_0.Group = radio_RadioGroup;
59825
60929
  /* harmony default export */ var src_radio_0 = (src_radio_radio_0);
59826
60930
  ;// CONCATENATED MODULE: ../base/src/rate/rate.tsx
59827
60931
 
@@ -59952,17 +61056,18 @@ var Rate = function Rate(props0) {
59952
61056
  var rate_jssStyle = {
59953
61057
  rate: useRateStyle
59954
61058
  };
59955
- var BaseRate = function BaseRate(props) {
61059
+ var rate_Rate = function Rate(props) {
59956
61060
  return /*#__PURE__*/(0,jsx_runtime.jsx)(src_rate_rate, objectSpread2_default()({
59957
61061
  jssStyle: rate_jssStyle
59958
61062
  }, props));
59959
61063
  };
59960
- var rate_Rate = function Rate(props) {
59961
- return use_field_common(props, BaseRate, 'number');
61064
+ rate_Rate.displayName = 'ShineoutRate';
61065
+ var WrappedRate = function WrappedRate(props) {
61066
+ return use_field_common(props, rate_Rate, 'number');
59962
61067
  };
59963
61068
  /* harmony default export */ var src_rate_rate_0 = (function (background, front, opts) {
59964
61069
  var RateIns = function RateIns(props) {
59965
- return /*#__PURE__*/(0,jsx_runtime.jsx)(rate_Rate, objectSpread2_default()(objectSpread2_default()({}, opts), {}, {
61070
+ return /*#__PURE__*/(0,jsx_runtime.jsx)(WrappedRate, objectSpread2_default()(objectSpread2_default()({}, opts), {}, {
59966
61071
  background: background,
59967
61072
  front: front || background
59968
61073
  }, props));
@@ -60183,15 +61288,16 @@ var select_jssStyle = {
60183
61288
  spin: useSpinStyle,
60184
61289
  common: useCommonStyle
60185
61290
  };
60186
- function SelectComponent(props) {
61291
+ function select_Select(props) {
60187
61292
  return /*#__PURE__*/(0,jsx_runtime.jsx)(base_src_select_select, objectSpread2_default()({
60188
61293
  jssStyle: select_jssStyle
60189
61294
  }, props));
60190
61295
  }
60191
- function select_Select(props) {
60192
- return use_field_common(props, SelectComponent, 'array');
61296
+ select_Select.displayName = 'ShineoutSelect';
61297
+ function SelectComponent(props) {
61298
+ return use_field_common(props, select_Select, 'array');
60193
61299
  }
60194
- /* harmony default export */ var src_select_select_0 = (select_Select);
61300
+ /* harmony default export */ var src_select_select_0 = (SelectComponent);
60195
61301
  ;// CONCATENATED MODULE: ./src/select/index.ts
60196
61302
 
60197
61303
  var SelectComp = src_select_select_0;
@@ -60662,6 +61768,7 @@ var BaseSlider = function BaseSlider(props) {
60662
61768
  jssStyle: slider_jssStyle
60663
61769
  }, props));
60664
61770
  };
61771
+ BaseSlider.displayName = 'ShineoutSlider';
60665
61772
  /* harmony default export */ var src_slider_slider_0 = (function (props) {
60666
61773
  return use_field_common(props, BaseSlider, 'number');
60667
61774
  });
@@ -61112,24 +62219,18 @@ var sticky_cssSupport = cssSupport,
61112
62219
  var supportSticky = sticky_cssSupport('position', 'sticky');
61113
62220
  var defaultZIndex = 900;
61114
62221
  var events = ['scroll', 'pageshow', 'load', 'resize'];
61115
-
61116
- // const getFirstScrollParent = (el: HTMLElement) => {
61117
- // let parent = el.parentNode as HTMLElement;
61118
- // while (parent) {
61119
- // if (parent === document.body || parent === document.documentElement) {
61120
- // parent = document.body;
61121
- // break;
61122
- // }
61123
- // const { overflowY } = window.getComputedStyle(parent);
61124
- // if (overflowY === 'scroll' || overflowY === 'auto') {
61125
- // break;
61126
- // }
61127
- // parent = parent.parentNode as HTMLElement;
61128
- // }
61129
- // return parent;
61130
- // };
61131
-
62222
+ function getStaticTop(el) {
62223
+ var stopper = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : document.body;
62224
+ var top = 0;
62225
+ var currentEl = el;
62226
+ while (currentEl && currentEl !== stopper) {
62227
+ top += currentEl.offsetTop;
62228
+ currentEl = currentEl.offsetParent;
62229
+ }
62230
+ return top;
62231
+ }
61132
62232
  var Sticky = function Sticky(props) {
62233
+ var _props$style;
61133
62234
  if (props.target) {
61134
62235
  sticky_devUseWarning.deprecated('target', 'scrollContainer', 'Sticky');
61135
62236
  }
@@ -61139,13 +62240,16 @@ var Sticky = function Sticky(props) {
61139
62240
  // 是否使用css sticky
61140
62241
  var css = (props.css || props.target) && supportSticky;
61141
62242
  var forceUpdate = useRender();
62243
+ var fixedStickyElRef = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)(null);
61142
62244
  var _useRef = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)({
61143
62245
  target: null,
61144
62246
  div: null,
61145
62247
  position: '',
61146
62248
  targetObserver: null,
61147
62249
  parentObserver: null,
61148
- fixedObserver: null
62250
+ fixedObserver: null,
62251
+ stoped: false,
62252
+ originPosition: null
61149
62253
  }),
61150
62254
  context = _useRef.current;
61151
62255
  var _useState = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useState)({}),
@@ -61161,6 +62265,77 @@ var Sticky = function Sticky(props) {
61161
62265
  parentVisible = _useState6[0],
61162
62266
  setParentVisible = _useState6[1];
61163
62267
  var elementRef = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)(null);
62268
+ var onStickyBoundaryChange = usePersistFn(function (e) {
62269
+ var target = e.target;
62270
+ var isDocument = !context.target || context.target === document.documentElement;
62271
+ var scrollTop = isDocument ? window.scrollY : target.scrollTop;
62272
+ if (!target || typeof scrollTop !== 'number') return;
62273
+ var stopStickyPoint = -1;
62274
+ var baseTop = 0;
62275
+ var absoluteTop = 0;
62276
+ var absoluteLeft = 0;
62277
+ var stopStickyElement = null;
62278
+ if (typeof props.stickyBoundary === 'number') {
62279
+ stopStickyPoint = props.stickyBoundary;
62280
+ } else if (typeof props.stickyBoundary === 'function') {
62281
+ stopStickyElement = props.stickyBoundary();
62282
+ if (!stopStickyElement) return;
62283
+ var stopStickyRect = stopStickyElement.getBoundingClientRect();
62284
+ var targetRect = elementRef.current.getBoundingClientRect();
62285
+ if (context.target === document.documentElement || !context.target) {
62286
+ baseTop = getStaticTop(elementRef.current) - (props.top || 0);
62287
+ absoluteTop = stopStickyRect.bottom - targetRect.bottom;
62288
+ absoluteLeft = stopStickyRect.left - targetRect.left;
62289
+ }
62290
+ stopStickyPoint = stopStickyRect.bottom - targetRect.bottom + baseTop;
62291
+ }
62292
+ if (stopStickyPoint < 0) return;
62293
+ if (scrollTop > stopStickyPoint) {
62294
+ if (context.stoped) return;
62295
+ context.stoped = true;
62296
+
62297
+ // 把 div 移动到 target 内部,使用 absolute 定位跟随滚动
62298
+ if (context.div && context.target) {
62299
+ context.target.insertBefore(context.div, context.target.firstChild);
62300
+ var paddingLeft = Number(window.getComputedStyle(context.target).paddingLeft.replace('px', '')) || 0;
62301
+ var borderLeftWidth = Number(window.getComputedStyle(context.target).borderLeftWidth.replace('px', '')) || 0;
62302
+ var left = paddingLeft + borderLeftWidth;
62303
+ context.div.style.transform = "translate(-".concat(left, "px, ").concat(stopStickyPoint, "px)");
62304
+ } else {
62305
+ if (stopStickyElement) {
62306
+ if (!fixedStickyElRef.current) return;
62307
+ // 存储原始位置到 context 中
62308
+ if (!context.originPosition) {
62309
+ var originStyle = window.getComputedStyle(fixedStickyElRef.current);
62310
+ context.originPosition = {
62311
+ top: originStyle.top,
62312
+ left: originStyle.left
62313
+ };
62314
+ }
62315
+
62316
+ // 直接操作DOM的原因是:不闪烁且性能更好
62317
+ stopStickyElement.style.transform = "translateZ(0)";
62318
+ fixedStickyElRef.current.style.top = "".concat(absoluteTop, "px");
62319
+ fixedStickyElRef.current.style.left = "".concat(absoluteLeft, "px");
62320
+ }
62321
+ // 暂不支持 props.stickyBoundary 为 number 的fixed定位情况
62322
+ }
62323
+ } else {
62324
+ if (!context.stoped) return;
62325
+ context.stoped = false;
62326
+
62327
+ // 恢复正常吸附模式:把 div 移动到 target 外部
62328
+ if (context.div && context.target && context.target.parentNode) {
62329
+ context.target.parentNode.insertBefore(context.div, context.target);
62330
+ context.div.style.transform = 'none';
62331
+ } else if (stopStickyElement && fixedStickyElRef.current && context.originPosition) {
62332
+ stopStickyElement.style.transform = "none";
62333
+ fixedStickyElRef.current.style.top = context.originPosition.top;
62334
+ fixedStickyElRef.current.style.left = context.originPosition.left;
62335
+ context.originPosition = null; // 清理状态
62336
+ }
62337
+ }
62338
+ });
61164
62339
  var getTarget = function getTarget() {
61165
62340
  var scrollContainer = props.scrollContainer;
61166
62341
  if (typeof scrollContainer === 'string') {
@@ -61276,7 +62451,7 @@ var Sticky = function Sticky(props) {
61276
62451
  if (top !== undefined && Math.ceil(selfRect.top) <= top) {
61277
62452
  setFixedStyle(true, 'top', selfRect.left);
61278
62453
  return;
61279
- } else if (bottom !== undefined && Math.ceil(selfRect.bottom) + bottom > scrollRect.bottom) {
62454
+ } else if (bottom !== undefined && (Math.ceil(selfRect.bottom) + bottom > Math.max(window.innerHeight, scrollRect.bottom) || selfRect.bottom + bottom >= window.innerHeight)) {
61280
62455
  setFixedStyle(true, 'bottom', selfRect.left);
61281
62456
  return;
61282
62457
  } else {
@@ -61402,6 +62577,10 @@ var Sticky = function Sticky(props) {
61402
62577
  context.div.remove();
61403
62578
  context.div = null;
61404
62579
  }
62580
+ if (props.stickyBoundary) {
62581
+ var _context$target;
62582
+ (_context$target = context.target) === null || _context$target === void 0 || _context$target.removeEventListener('scroll', onStickyBoundaryChange);
62583
+ }
61405
62584
  };
61406
62585
  var createFixedEvents = function createFixedEvents() {
61407
62586
  createFixedObserver();
@@ -61414,6 +62593,10 @@ var Sticky = function Sticky(props) {
61414
62593
  events.forEach(function (event) {
61415
62594
  window.removeEventListener(event, handleFixedPosition);
61416
62595
  });
62596
+ if (props.stickyBoundary) {
62597
+ var _context$target2;
62598
+ (_context$target2 = context.target) === null || _context$target2 === void 0 || _context$target2.removeEventListener('scroll', onStickyBoundaryChange);
62599
+ }
61417
62600
  };
61418
62601
  var handleElementRef = function handleElementRef(el) {
61419
62602
  if (el) {
@@ -61441,7 +62624,15 @@ var Sticky = function Sticky(props) {
61441
62624
  context.target = target;
61442
62625
  forceUpdate();
61443
62626
  }
61444
- if (context.target) {
62627
+ if (props.stickyBoundary) {
62628
+ if (!context.target || context.target === document.documentElement) {
62629
+ window.addEventListener('scroll', onStickyBoundaryChange);
62630
+ } else {
62631
+ var _context$target3;
62632
+ (_context$target3 = context.target) === null || _context$target3 === void 0 || _context$target3.addEventListener('scroll', onStickyBoundaryChange);
62633
+ }
62634
+ }
62635
+ if (context.target && context.target !== document.documentElement) {
61445
62636
  createTargetEvents();
61446
62637
  return cancelTargetEvents;
61447
62638
  } else {
@@ -61462,7 +62653,6 @@ var Sticky = function Sticky(props) {
61462
62653
  if (props.onChange) {
61463
62654
  props.onChange(show);
61464
62655
  }
61465
- ;
61466
62656
  }, [show]);
61467
62657
 
61468
62658
  // 纯css方法 直接使用css
@@ -61485,7 +62675,7 @@ var Sticky = function Sticky(props) {
61485
62675
  }
61486
62676
  var StickyEl = show && parentVisible ? /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
61487
62677
  style: objectSpread2_default()(objectSpread2_default()({
61488
- zIndex: defaultZIndex
62678
+ zIndex: ((_props$style = props.style) === null || _props$style === void 0 ? void 0 : _props$style.zIndex) || defaultZIndex
61489
62679
  }, style), elementSize),
61490
62680
  children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
61491
62681
  className: props.className,
@@ -61624,13 +62814,14 @@ var Switch = function Switch(props0) {
61624
62814
  var switch_jssStyle = {
61625
62815
  switch: useSwitchStyle
61626
62816
  };
61627
- var BaseSwitch = function BaseSwitch(props) {
62817
+ var switch_Switch = function Switch(props) {
61628
62818
  return /*#__PURE__*/(0,jsx_runtime.jsx)(base_src_switch_switch, objectSpread2_default()({
61629
62819
  jssStyle: switch_jssStyle
61630
62820
  }, props));
61631
62821
  };
62822
+ switch_Switch.displayName = 'ShineoutSwitch';
61632
62823
  /* harmony default export */ var src_switch_switch_0 = (function (props) {
61633
- return use_field_common(props, BaseSwitch);
62824
+ return use_field_common(props, switch_Switch);
61634
62825
  });
61635
62826
  ;// CONCATENATED MODULE: ./src/switch/index.ts
61636
62827
 
@@ -61658,7 +62849,8 @@ var scroll_table_Scroll = function Scroll(props) {
61658
62849
  var wrapperRef = useForkRef(scrollRef, props.wrapperRef);
61659
62850
  var _useRef = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)({
61660
62851
  isMouseDown: false,
61661
- lastTableHeight: 0
62852
+ lastTableHeight: 0,
62853
+ unmounted: false
61662
62854
  }),
61663
62855
  context = _useRef.current;
61664
62856
  var _props$scrollHeight = props.scrollHeight,
@@ -61767,7 +62959,7 @@ var scroll_table_Scroll = function Scroll(props) {
61767
62959
 
61768
62960
  // 非定高的Table但依旧采用了virtual渲染方式,需要渲染出全部的data
61769
62961
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useLayoutEffect)(function () {
61770
- if (!props.tableRef.current) return;
62962
+ if (!props.tableRef.current || context.unmounted) return;
61771
62963
  var rootTableHeight = props.tableRef.current.clientHeight;
61772
62964
  var container = containerRef.current;
61773
62965
  // 判断内容滚动高度是否真的超过了容器高度
@@ -61779,6 +62971,9 @@ var scroll_table_Scroll = function Scroll(props) {
61779
62971
  } else {
61780
62972
  context.lastTableHeight = rootTableHeight;
61781
62973
  }
62974
+ return function () {
62975
+ context.unmounted = true;
62976
+ };
61782
62977
  }, [paddingTop]);
61783
62978
  if (props.isEmpty) {
61784
62979
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", objectSpread2_default()(objectSpread2_default()({}, scrollRoleProps), {}, {
@@ -62665,7 +63860,7 @@ var useTableVirtual = function useTableVirtual(props) {
62665
63860
  for (var i = 0; i <= index; i++) {
62666
63861
  sum += context.cachedHeight[i] || props.rowHeight;
62667
63862
  }
62668
- return sum + props.theadAndTfootHeight;
63863
+ return sum + props.theadHeight + props.tfootHeight;
62669
63864
  };
62670
63865
  var setRowHeight = usePersistFn(function (index, height) {
62671
63866
  if (props.disabled) return;
@@ -62808,7 +64003,7 @@ var useTableVirtual = function useTableVirtual(props) {
62808
64003
  callback();
62809
64004
  }
62810
64005
  };
62811
- props.scrollRef.current.scrollTop = beforeHeight;
64006
+ props.scrollRef.current.scrollTop = beforeHeight - props.theadHeight;
62812
64007
  }
62813
64008
  });
62814
64009
  var scrollColumnByLeft = usePersistFn(function (targetLeft) {
@@ -62885,7 +64080,7 @@ var useTableVirtual = function useTableVirtual(props) {
62885
64080
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
62886
64081
  if (props.disabled) return;
62887
64082
  setHeight(getContentHeight(props.data.length - 1));
62888
- }, [props.data.length, props.theadAndTfootHeight]);
64083
+ }, [props.data.length, props.theadHeight, props.tfootHeight]);
62889
64084
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
62890
64085
  if (props.disabled) return;
62891
64086
  if (context.heightCallback) {
@@ -62917,7 +64112,8 @@ var useTableVirtual = function useTableVirtual(props) {
62917
64112
  setRowHeight: setRowHeight,
62918
64113
  scrollToIndex: scrollToIndex,
62919
64114
  scrollColumnByLeft: scrollColumnByLeft,
62920
- scrollColumnIntoView: scrollColumnIntoView
64115
+ scrollColumnIntoView: scrollColumnIntoView,
64116
+ rowSpanInfo: rowSpanInfo
62921
64117
  };
62922
64118
  };
62923
64119
  /* harmony default export */ var use_table_virtual = (useTableVirtual);
@@ -63274,8 +64470,11 @@ var useTableGroup = function useTableGroup(props) {
63274
64470
 
63275
64471
 
63276
64472
 
64473
+
63277
64474
  var FilterFooter = function FilterFooter(props) {
63278
64475
  var tableClasses = props.tableClasses;
64476
+ var _useConfig = useConfig(),
64477
+ locale = _useConfig.locale;
63279
64478
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("footer", {
63280
64479
  className: tableClasses.filterFooter,
63281
64480
  children: [/*#__PURE__*/(0,jsx_runtime.jsx)(base_src_button_button, {
@@ -63284,18 +64483,21 @@ var FilterFooter = function FilterFooter(props) {
63284
64483
  size: "small",
63285
64484
  onClick: props.onReset,
63286
64485
  disabled: !props.resetable,
63287
- children: "\u91CD\u7F6E"
64486
+ mode: "outline",
64487
+ children: getLocale(locale, 'reset')
63288
64488
  }), /*#__PURE__*/(0,jsx_runtime.jsx)(base_src_button_button, {
63289
64489
  jssStyle: props.jssStyle,
63290
64490
  size: "small",
63291
64491
  type: "primary",
63292
64492
  onClick: props.onConfirm,
63293
- children: "\u786E\u5B9A"
64493
+ children: getLocale(locale, 'ok')
63294
64494
  })]
63295
64495
  });
63296
64496
  };
63297
64497
  var FilterSelect = function FilterSelect(props) {
63298
64498
  var _props$filterInfo;
64499
+ var _useConfig2 = useConfig(),
64500
+ locale = _useConfig2.locale;
63299
64501
  var _useState = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useState)(false),
63300
64502
  _useState2 = slicedToArray_default()(_useState, 2),
63301
64503
  popoverVisible = _useState2[0],
@@ -63374,7 +64576,7 @@ var FilterSelect = function FilterSelect(props) {
63374
64576
  jssStyle: props.jssStyle,
63375
64577
  shape: "circle",
63376
64578
  size: "small",
63377
- className: classnames_default()(tableClasses.filterIconContainer, (currentFilter === null || currentFilter === void 0 ? void 0 : currentFilter.value) && tableClasses.filterActive),
64579
+ className: classnames_default()(tableClasses.filterIconContainer, (currentFilter === null || currentFilter === void 0 ? void 0 : currentFilter.value) && tableClasses.filterActive, popoverVisible && tableClasses.filterOpened),
63378
64580
  style: {
63379
64581
  border: 'none'
63380
64582
  },
@@ -63392,13 +64594,14 @@ var FilterSelect = function FilterSelect(props) {
63392
64594
  children: [(config === null || config === void 0 ? void 0 : config.search) && /*#__PURE__*/(0,jsx_runtime.jsx)("header", {
63393
64595
  className: tableClasses.filterHeader,
63394
64596
  children: /*#__PURE__*/(0,jsx_runtime.jsx)(base_src_input_input, {
64597
+ showClear: true,
63395
64598
  value: inputText,
63396
64599
  onChange: function onChange(v) {
63397
64600
  if (onFilter) onFilter(v || '');
63398
64601
  setInputText(v);
63399
64602
  },
63400
64603
  jssStyle: props.jssStyle,
63401
- placeholder: "\u5728\u7B5B\u9009\u9879\u4E2D\u641C\u7D22",
64604
+ placeholder: getLocale(locale, 'searchPlaceholder'),
63402
64605
  className: tableClasses.filterInput,
63403
64606
  prefix: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
63404
64607
  className: tableClasses.filterInputIcon,
@@ -63434,6 +64637,8 @@ var FilterSelect = function FilterSelect(props) {
63434
64637
  };
63435
64638
  var FilterSearch = function FilterSearch(props) {
63436
64639
  var _props$filterInfo2;
64640
+ var _useConfig3 = useConfig(),
64641
+ locale = _useConfig3.locale;
63437
64642
  var tableClasses = props.tableClasses,
63438
64643
  filter = props.filter;
63439
64644
  var _useState5 = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useState)(false),
@@ -63480,7 +64685,7 @@ var FilterSearch = function FilterSearch(props) {
63480
64685
  jssStyle: props.jssStyle,
63481
64686
  shape: "circle",
63482
64687
  size: "small",
63483
- className: classnames_default()(tableClasses.filterIconContainer, (currentFilter === null || currentFilter === void 0 ? void 0 : currentFilter.value) && tableClasses.filterActive),
64688
+ className: classnames_default()(tableClasses.filterIconContainer, (currentFilter === null || currentFilter === void 0 ? void 0 : currentFilter.value) && tableClasses.filterActive, popoverVisible && tableClasses.filterOpened),
63484
64689
  style: {
63485
64690
  border: 'none'
63486
64691
  },
@@ -63499,7 +64704,7 @@ var FilterSearch = function FilterSearch(props) {
63499
64704
  className: tableClasses.filterHeader,
63500
64705
  children: /*#__PURE__*/(0,jsx_runtime.jsx)(base_src_input_input, {
63501
64706
  jssStyle: props.jssStyle,
63502
- placeholder: "\u5728\u7B5B\u9009\u9879\u4E2D\u641C\u7D22",
64707
+ placeholder: getLocale(locale, 'searchPlaceholder'),
63503
64708
  className: tableClasses.filterInput,
63504
64709
  prefix: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
63505
64710
  className: tableClasses.filterInputIcon,
@@ -63508,7 +64713,8 @@ var FilterSearch = function FilterSearch(props) {
63508
64713
  value: tempValue,
63509
64714
  onChange: setTempValue,
63510
64715
  onEnterPress: onConfirm,
63511
- forwardRef: inputRef
64716
+ forwardRef: inputRef,
64717
+ showClear: true
63512
64718
  })
63513
64719
  }), /*#__PURE__*/(0,jsx_runtime.jsx)(FilterFooter, {
63514
64720
  jssStyle: props.jssStyle,
@@ -64221,6 +65427,7 @@ var Tr = function Tr(props) {
64221
65427
  return expandInstance;
64222
65428
  }
64223
65429
  if (col.type === 'checkbox') {
65430
+ var selectData = props.selectData || data;
64224
65431
  var instance = /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
64225
65432
  className: tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.iconWrapper,
64226
65433
  children: props.radio ? /*#__PURE__*/(0,jsx_runtime.jsx)(base_src_radio_radio, {
@@ -64232,9 +65439,9 @@ var Tr = function Tr(props) {
64232
65439
  disabled: props.disabled,
64233
65440
  onChange: function onChange(value) {
64234
65441
  if (value) {
64235
- props.datum.add(data);
65442
+ props.datum.add(selectData);
64236
65443
  } else {
64237
- props.datum.remove(data);
65444
+ props.datum.remove(selectData);
64238
65445
  }
64239
65446
  }
64240
65447
  }) : /*#__PURE__*/(0,jsx_runtime.jsx)(base_src_checkbox_checkbox, {
@@ -64246,11 +65453,11 @@ var Tr = function Tr(props) {
64246
65453
  checked: props.isSelect,
64247
65454
  onChange: function onChange(_value, check) {
64248
65455
  if (check) {
64249
- props.datum.add(data, props.treeCheckAll ? {
65456
+ props.datum.add(selectData, props.treeCheckAll ? {
64250
65457
  childrenKey: props.treeColumnsName
64251
65458
  } : undefined);
64252
65459
  } else {
64253
- props.datum.remove(data, props.treeCheckAll ? {
65460
+ props.datum.remove(selectData, props.treeCheckAll ? {
64254
65461
  childrenKey: props.treeColumnsName
64255
65462
  } : undefined);
64256
65463
  }
@@ -64442,6 +65649,17 @@ var Tr = function Tr(props) {
64442
65649
  var rowIndex = index + currentIndex;
64443
65650
  var originKey = getKey(props.keygen, item, rowIndex);
64444
65651
  var trRenderKey = props.loader || (_props$rowEvents = props.rowEvents) !== null && _props$rowEvents !== void 0 && _props$rowEvents.draggable ? originKey : "".concat(originKey, "-").concat(rowIndex);
65652
+
65653
+ // 在虚拟列表模式下,使用 virtualRowSpanInfo 来获取正确的选择数据
65654
+ var selectData = item;
65655
+ if (props.virtualRowSpanInfo && props.fullData) {
65656
+ // rowSpanIndexArray[rowIndex] 表示第 rowIndex 行所属合并组的起始行索引
65657
+ var selectIndex = props.virtualRowSpanInfo.rowSpanIndexArray[rowIndex];
65658
+ selectData = props.fullData[selectIndex];
65659
+ } else {
65660
+ // 非虚拟列表模式使用原有逻辑
65661
+ selectData = rowSelectMergeStartData[index];
65662
+ }
64445
65663
  return /*#__PURE__*/(0,jsx_runtime.jsx)(tr, {
64446
65664
  originKey: originKey,
64447
65665
  row: rowData[index],
@@ -64469,7 +65687,8 @@ var Tr = function Tr(props) {
64469
65687
  striped: props.striped,
64470
65688
  radio: props.radio,
64471
65689
  hover: hover,
64472
- isSelect: props.datum.check(rowSelectMergeStartData[index]),
65690
+ isSelect: props.datum.check(selectData),
65691
+ selectData: selectData,
64473
65692
  handleCellHover: handleCellHover
64474
65693
  // to update
64475
65694
  ,
@@ -64561,8 +65780,12 @@ var tfoot_isArray = isArray,
64561
65780
  }, index);
64562
65781
  };
64563
65782
  var getTrs = function getTrs() {
64564
- var _props$summary = props.summary,
64565
- summary = _props$summary === void 0 ? [] : _props$summary;
65783
+ var _props$summary, _props$data;
65784
+ if (props !== null && props !== void 0 && (_props$summary = props.summary) !== null && _props$summary !== void 0 && _props$summary.length && (props === null || props === void 0 || (_props$data = props.data) === null || _props$data === void 0 ? void 0 : _props$data.length) === 0) {
65785
+ return [];
65786
+ }
65787
+ var _props$summary2 = props.summary,
65788
+ summary = _props$summary2 === void 0 ? [] : _props$summary2;
64566
65789
  if (!tfoot_isArray(summary[0])) {
64567
65790
  summary = [summary];
64568
65791
  }
@@ -64687,7 +65910,8 @@ var emptyRef = {
64687
65910
  };
64688
65911
  var _useRef = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)({
64689
65912
  emptyHeight: 0,
64690
- theadAndTfootHeight: 0,
65913
+ theadHeight: 0,
65914
+ tfootHeight: 0,
64691
65915
  scrollingTimer: null
64692
65916
  }),
64693
65917
  context = _useRef.current;
@@ -64820,15 +66044,38 @@ var emptyRef = {
64820
66044
  onChange: inputableData.onChange,
64821
66045
  disabled: props.disabled
64822
66046
  });
64823
- (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
66047
+ var handleTheadAndTfootHeight = usePersistFn(function () {
64824
66048
  var _theadRef$current, _tfootRef$current;
64825
66049
  var theadHeight = (theadRef === null || theadRef === void 0 || (_theadRef$current = theadRef.current) === null || _theadRef$current === void 0 ? void 0 : _theadRef$current.clientHeight) || 0;
64826
66050
  var tfootHeight = ((_tfootRef$current = tfootRef.current) === null || _tfootRef$current === void 0 ? void 0 : _tfootRef$current.clientHeight) || 0;
64827
66051
  if (props.sticky) {
64828
- context.theadAndTfootHeight = tfootHeight;
66052
+ context.tfootHeight = tfootHeight;
64829
66053
  } else {
64830
- context.theadAndTfootHeight = theadHeight + tfootHeight;
66054
+ context.theadHeight = theadHeight;
66055
+ context.tfootHeight = tfootHeight;
64831
66056
  }
66057
+ });
66058
+ (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
66059
+ handleTheadAndTfootHeight();
66060
+ var cancelFunc1;
66061
+ if (theadRef !== null && theadRef !== void 0 && theadRef.current) {
66062
+ cancelFunc1 = addResizeObserver(theadRef === null || theadRef === void 0 ? void 0 : theadRef.current, handleTheadAndTfootHeight, {
66063
+ direction: 'y',
66064
+ timer: 10
66065
+ });
66066
+ }
66067
+ var cancelFunc2;
66068
+ if (tfootRef !== null && tfootRef !== void 0 && tfootRef.current) {
66069
+ cancelFunc2 = addResizeObserver(tfootRef === null || tfootRef === void 0 ? void 0 : tfootRef.current, handleTheadAndTfootHeight, {
66070
+ direction: 'y',
66071
+ timer: 10
66072
+ });
66073
+ }
66074
+ return function () {
66075
+ var _cancelFunc, _cancelFunc2;
66076
+ (_cancelFunc = cancelFunc1) === null || _cancelFunc === void 0 || _cancelFunc();
66077
+ (_cancelFunc2 = cancelFunc2) === null || _cancelFunc2 === void 0 || _cancelFunc2();
66078
+ };
64832
66079
  }, [theadRef.current, tfootRef.current]);
64833
66080
  var virtualInfo = use_table_virtual({
64834
66081
  disabled: !virtual,
@@ -64841,7 +66088,8 @@ var emptyRef = {
64841
66088
  innerRef: tbodyRef,
64842
66089
  scrollLeft: props.scrollLeft,
64843
66090
  isRtl: isRtl,
64844
- theadAndTfootHeight: context.theadAndTfootHeight
66091
+ theadHeight: context.theadHeight,
66092
+ tfootHeight: context.tfootHeight
64845
66093
  });
64846
66094
  var syncHeaderScroll = usePersistFn(function (left) {
64847
66095
  var _tableRef$current;
@@ -64987,7 +66235,8 @@ var emptyRef = {
64987
66235
  summary: props.summary,
64988
66236
  columns: columns,
64989
66237
  jssStyle: props.jssStyle,
64990
- colgroup: colgroup
66238
+ colgroup: colgroup,
66239
+ data: props.data
64991
66240
  };
64992
66241
  var StickyWrapper = props.sticky ? src_sticky_sticky : (external_root_React_commonjs2_react_commonjs_react_amd_react_default()).Fragment;
64993
66242
  var sticky = typeof_default()(props.sticky) === 'object' ? props.sticky : {
@@ -65127,7 +66376,9 @@ var emptyRef = {
65127
66376
  currentIndex: virtualInfo.startIndex,
65128
66377
  data: virtualInfo.data,
65129
66378
  setRowHeight: virtualInfo.setRowHeight,
65130
- scrolling: scrolling
66379
+ scrolling: scrolling,
66380
+ virtualRowSpanInfo: virtualInfo.rowSpanInfo,
66381
+ fullData: treeData
65131
66382
  }))]
65132
66383
  }), showFoot ? /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
65133
66384
  className: footWrapperClass,
@@ -65828,36 +67079,66 @@ var TabsHeader = function TabsHeader(props) {
65828
67079
  _useState2 = slicedToArray_default()(_useState, 2),
65829
67080
  currentTabOffset = _useState2[0],
65830
67081
  setCurrentTabOffset = _useState2[1];
65831
- var _useState3 = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useState)(null),
67082
+ var _useState3 = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useState)({
67083
+ width: 0,
67084
+ height: 0
67085
+ }),
65832
67086
  _useState4 = slicedToArray_default()(_useState3, 2),
65833
- currentTabRect = _useState4[0],
65834
- setCurrentTabRect = _useState4[1];
67087
+ currentTabSize = _useState4[0],
67088
+ setCurrentTabSize = _useState4[1];
65835
67089
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useLayoutEffect)(function () {
65836
- var _currentTab$getBoundi;
65837
67090
  if (shape !== 'line' && shape !== 'dash') return;
65838
67091
  var currentTab = tabRef.current[active];
65839
67092
  setCurrentTabOffset({
65840
67093
  offsetTop: (currentTab === null || currentTab === void 0 ? void 0 : currentTab.offsetTop) || 0,
65841
67094
  offsetLeft: (currentTab === null || currentTab === void 0 ? void 0 : currentTab.offsetLeft) || 0
65842
67095
  });
65843
- var currentTabRect = currentTab === null || currentTab === void 0 || (_currentTab$getBoundi = currentTab.getBoundingClientRect) === null || _currentTab$getBoundi === void 0 ? void 0 : _currentTab$getBoundi.call(currentTab);
65844
- setCurrentTabRect(currentTabRect);
67096
+
67097
+ // 使用 offsetWidth/offsetHeight 而不是 getBoundingClientRect()
67098
+ // 这样可以避免受到外部容器 CSS transform scale 的影响
67099
+ var width = (currentTab === null || currentTab === void 0 ? void 0 : currentTab.offsetWidth) || 0;
67100
+ var height = (currentTab === null || currentTab === void 0 ? void 0 : currentTab.offsetHeight) || 0;
67101
+ // 微前端场景下,可能出现获取不到元素的尺寸信息
67102
+ if (width === 0 || height === 0) {
67103
+ var timerCount = 0;
67104
+ var timer = setInterval(function () {
67105
+ timerCount++;
67106
+ if (currentTab !== null && currentTab !== void 0 && currentTab.offsetWidth && currentTab !== null && currentTab !== void 0 && currentTab.offsetHeight) {
67107
+ setCurrentTabSize({
67108
+ width: currentTab.offsetWidth,
67109
+ height: currentTab.offsetHeight
67110
+ });
67111
+ clearInterval(timer);
67112
+ }
67113
+ if (timerCount >= 100) {
67114
+ clearInterval(timer);
67115
+ }
67116
+ }, 16);
67117
+ return function () {
67118
+ return clearInterval(timer);
67119
+ };
67120
+ } else {
67121
+ setCurrentTabSize({
67122
+ width: width,
67123
+ height: height
67124
+ });
67125
+ }
65845
67126
  }, [active, tabs]);
65846
67127
  var renderHeaderScrollBar = function renderHeaderScrollBar() {
65847
67128
  if (shape !== 'line' && shape !== 'dash') return;
65848
- if (!currentTabRect) return;
67129
+ if (!currentTabSize.width || !currentTabSize.height) return;
65849
67130
  var scrollBarStyle = isVertical ? {
65850
67131
  right: getPosition !== null && getPosition !== void 0 && getPosition.startsWith('left') ? 0 : 'auto',
65851
67132
  left: getPosition !== null && getPosition !== void 0 && getPosition.startsWith('right') ? 0 : 'auto',
65852
- top: currentTabOffset.offsetTop + currentTabRect.height / 2,
65853
- height: shape === 'line' ? currentTabRect.height : 24,
67133
+ top: currentTabOffset.offsetTop + currentTabSize.height / 2,
67134
+ height: shape === 'line' ? currentTabSize.height : 24,
65854
67135
  width: 2,
65855
67136
  transform: 'translateY(-50%)'
65856
67137
  } : {
65857
67138
  bottom: getPosition !== null && getPosition !== void 0 && getPosition.startsWith('top') ? 0 : 'auto',
65858
67139
  top: getPosition !== null && getPosition !== void 0 && getPosition.startsWith('bottom') ? 0 : 'auto',
65859
- left: currentTabOffset.offsetLeft + currentTabRect.width / 2,
65860
- width: shape === 'line' ? currentTabRect.width : 24,
67140
+ left: currentTabOffset.offsetLeft + currentTabSize.width / 2,
67141
+ width: shape === 'line' ? currentTabSize.width : 24,
65861
67142
  height: 2,
65862
67143
  transform: 'translateX(-50%)'
65863
67144
  };
@@ -66321,13 +67602,14 @@ var textarea_jssStyle = {
66321
67602
  popover: usePopoverStyle,
66322
67603
  innerTitle: useInnerTitleStyle
66323
67604
  };
66324
- var BaseTextarea = function BaseTextarea(props) {
67605
+ var textarea_textarea_Textarea = function Textarea(props) {
66325
67606
  return /*#__PURE__*/(0,jsx_runtime.jsx)(base_src_textarea_textarea, objectSpread2_default()(objectSpread2_default()({}, props), {}, {
66326
67607
  jssStyle: textarea_jssStyle
66327
67608
  }));
66328
67609
  };
67610
+ textarea_textarea_Textarea.displayName = 'ShineoutTextarea';
66329
67611
  /* harmony default export */ var src_textarea_textarea_0 = (function (props) {
66330
- return use_field_common(props, BaseTextarea);
67612
+ return use_field_common(props, textarea_textarea_Textarea);
66331
67613
  });
66332
67614
  ;// CONCATENATED MODULE: ./src/textarea/index.ts
66333
67615
 
@@ -67622,6 +68904,7 @@ var TreeSelect = function TreeSelect(props0) {
67622
68904
  });
67623
68905
  }
67624
68906
  if (open) closePop();
68907
+ if (props.onClear) props.onClear();
67625
68908
  };
67626
68909
  var renderClearable = function renderClearable() {
67627
68910
  if (!multiple !== undefined && !showArrow) return null;
@@ -68021,6 +69304,7 @@ var TreeSelectComponent = function TreeSelectComponent(props) {
68021
69304
  jssStyle: tree_select_jssStyle
68022
69305
  }, props));
68023
69306
  };
69307
+ TreeSelectComponent.displayName = 'ShineoutTreeSelect';
68024
69308
  var tree_select_TreeSelect = function TreeSelect(props) {
68025
69309
  return use_field_common(props, TreeSelectComponent, 'array');
68026
69310
  };
@@ -68728,6 +70012,23 @@ var upload_result_Result = function Result(props) {
68728
70012
  }),
68729
70013
  context = _useRef.current;
68730
70014
  var renderText = function renderText() {
70015
+ var $loading;
70016
+ if (status === 1) {
70017
+ if (props.process !== -1) {
70018
+ $loading = /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
70019
+ className: uploadClasses === null || uploadClasses === void 0 ? void 0 : uploadClasses.resultProgressText,
70020
+ children: [Math.min(99, Math.floor(props.process || 0)), "%"]
70021
+ });
70022
+ } else {
70023
+ $loading = /*#__PURE__*/(0,jsx_runtime.jsx)(src_spin_spin, {
70024
+ size: 'null',
70025
+ jssStyle: props.jssStyle,
70026
+ name: 'ring',
70027
+ ignoreConfig: true,
70028
+ className: uploadClasses === null || uploadClasses === void 0 ? void 0 : uploadClasses.imageResultLoading
70029
+ });
70030
+ }
70031
+ }
68731
70032
  return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
68732
70033
  children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
68733
70034
  className: uploadClasses === null || uploadClasses === void 0 ? void 0 : uploadClasses.resultText,
@@ -68739,12 +70040,9 @@ var upload_result_Result = function Result(props) {
68739
70040
  children: [name, message && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
68740
70041
  children: ["(", message, ") "]
68741
70042
  })]
68742
- }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
70043
+ }), $loading && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
68743
70044
  className: uploadClasses === null || uploadClasses === void 0 ? void 0 : uploadClasses.resultTextFooter,
68744
- children: status === 1 && props.process !== -1 && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
68745
- className: uploadClasses === null || uploadClasses === void 0 ? void 0 : uploadClasses.resultProgressText,
68746
- children: [Math.min(99, Math.floor(props.process || 0)), "%"]
68747
- })
70045
+ children: $loading
68748
70046
  })]
68749
70047
  }), props.removeAble && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
68750
70048
  className: classnames_default()(uploadClasses === null || uploadClasses === void 0 ? void 0 : uploadClasses.resultClose, uploadClasses === null || uploadClasses === void 0 ? void 0 : uploadClasses.icon, uploadClasses === null || uploadClasses === void 0 ? void 0 : uploadClasses.iconHover, status === 3 && (uploadClasses === null || uploadClasses === void 0 ? void 0 : uploadClasses.resultErrorClose)),
@@ -68844,6 +70142,10 @@ var useInputClick = function useInputClick() {
68844
70142
  type: 'file',
68845
70143
  style: {
68846
70144
  display: 'none'
70145
+ },
70146
+ onClick: function onClick(event) {
70147
+ // 阻止程序化触发(inputRef.current.click())的input点击事件冒泡
70148
+ event.stopPropagation();
68847
70149
  }
68848
70150
  };
68849
70151
  var wrapperProps = {
@@ -69142,6 +70444,7 @@ var BaseUpload = function BaseUpload(props) {
69142
70444
  jssStyle: upload_jssStyle
69143
70445
  }, props));
69144
70446
  };
70447
+ BaseUpload.displayName = 'ShineoutUpload';
69145
70448
  /* harmony default export */ var src_upload_upload_0 = (function (props) {
69146
70449
  var customProps = use_upload_common({
69147
70450
  rules: props.rules
@@ -69182,6 +70485,7 @@ var BaseUploadImage = function BaseUploadImage(props) {
69182
70485
  jssStyle: upload_image_jssStyle
69183
70486
  }, props));
69184
70487
  };
70488
+ BaseUploadImage.displayName = 'ShineoutUploadImage';
69185
70489
  /* harmony default export */ var src_upload_image = (function (props) {
69186
70490
  var customProps = use_upload_common({
69187
70491
  rules: props.rules
@@ -69312,6 +70616,7 @@ var BaseUploadButton = function BaseUploadButton(props) {
69312
70616
  jssStyle: upload_button_jssStyle
69313
70617
  }, props));
69314
70618
  };
70619
+ BaseUploadButton.displayName = 'ShineoutUploadButton';
69315
70620
  /* harmony default export */ var src_upload_button = (function (props) {
69316
70621
  var customProps = use_upload_common({
69317
70622
  rules: props.rules
@@ -71717,7 +73022,7 @@ var upload_interface = __webpack_require__(8821);
71717
73022
 
71718
73023
 
71719
73024
  /* harmony default export */ var src_0 = ({
71720
- version: '3.8.0-beta.9'
73025
+ version: '3.8.0'
71721
73026
  });
71722
73027
  }();
71723
73028
  /******/ return __webpack_exports__;