@sheinx/base 3.4.7-beta.3 → 3.5.0-beta.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/cjs/absolute-list/absolute-context.d.ts +5 -1
  2. package/cjs/absolute-list/absolute-context.d.ts.map +1 -1
  3. package/cjs/absolute-list/absolute-context.js +3 -1
  4. package/cjs/absolute-list/absolute-list.d.ts.map +1 -1
  5. package/cjs/absolute-list/absolute-list.js +18 -3
  6. package/cjs/avatar/avatar.d.ts +5 -0
  7. package/cjs/avatar/avatar.d.ts.map +1 -0
  8. package/cjs/avatar/avatar.js +140 -0
  9. package/cjs/avatar/avatar.type.d.ts +101 -0
  10. package/cjs/avatar/avatar.type.d.ts.map +1 -0
  11. package/cjs/avatar/avatar.type.js +5 -0
  12. package/cjs/avatar/context.d.ts +5 -0
  13. package/cjs/avatar/context.d.ts.map +1 -0
  14. package/cjs/avatar/context.js +8 -0
  15. package/cjs/avatar/group.d.ts +5 -0
  16. package/cjs/avatar/group.d.ts.map +1 -0
  17. package/cjs/avatar/group.js +82 -0
  18. package/cjs/avatar/index.d.ts +5 -0
  19. package/cjs/avatar/index.d.ts.map +1 -0
  20. package/cjs/avatar/index.js +27 -0
  21. package/cjs/cascader/cascader.d.ts.map +1 -1
  22. package/cjs/cascader/cascader.js +11 -8
  23. package/cjs/cascader/cascader.type.d.ts +24 -0
  24. package/cjs/cascader/cascader.type.d.ts.map +1 -1
  25. package/cjs/cascader/index.d.ts +1 -1
  26. package/cjs/cascader/index.d.ts.map +1 -1
  27. package/cjs/cascader/list.d.ts.map +1 -1
  28. package/cjs/cascader/list.js +60 -24
  29. package/cjs/cascader/list.type.d.ts +1 -1
  30. package/cjs/cascader/list.type.d.ts.map +1 -1
  31. package/cjs/common/use-with-form-config.d.ts.map +1 -1
  32. package/cjs/common/use-with-form-config.js +4 -1
  33. package/cjs/form/form.d.ts.map +1 -1
  34. package/cjs/form/form.js +7 -1
  35. package/cjs/form/form.type.d.ts +5 -0
  36. package/cjs/form/form.type.d.ts.map +1 -1
  37. package/cjs/index.d.ts +1 -0
  38. package/cjs/index.d.ts.map +1 -1
  39. package/cjs/index.js +12 -0
  40. package/cjs/modal/modal-content.d.ts.map +1 -1
  41. package/cjs/modal/modal-content.js +2 -2
  42. package/cjs/select/result-more.d.ts.map +1 -1
  43. package/cjs/select/result-more.js +17 -6
  44. package/cjs/select/result-more.type.d.ts +4 -1
  45. package/cjs/select/result-more.type.d.ts.map +1 -1
  46. package/cjs/select/result.d.ts.map +1 -1
  47. package/cjs/select/result.js +19 -7
  48. package/cjs/select/result.type.d.ts +1 -1
  49. package/cjs/select/result.type.d.ts.map +1 -1
  50. package/cjs/select/select.type.d.ts +20 -0
  51. package/cjs/select/select.type.d.ts.map +1 -1
  52. package/cjs/table/table.d.ts.map +1 -1
  53. package/cjs/table/table.js +15 -8
  54. package/cjs/table/table.type.d.ts +2 -0
  55. package/cjs/table/table.type.d.ts.map +1 -1
  56. package/cjs/table/tbody.d.ts.map +1 -1
  57. package/cjs/table/tbody.js +3 -1
  58. package/cjs/table/tbody.type.d.ts +1 -1
  59. package/cjs/table/tbody.type.d.ts.map +1 -1
  60. package/cjs/table/thead.d.ts.map +1 -1
  61. package/cjs/table/thead.js +30 -6
  62. package/cjs/table/thead.type.d.ts +1 -1
  63. package/cjs/table/thead.type.d.ts.map +1 -1
  64. package/cjs/table/tr.d.ts +1 -1
  65. package/cjs/table/tr.d.ts.map +1 -1
  66. package/cjs/table/tr.js +78 -10
  67. package/esm/absolute-list/absolute-context.d.ts +5 -1
  68. package/esm/absolute-list/absolute-context.d.ts.map +1 -1
  69. package/esm/absolute-list/absolute-context.js +3 -1
  70. package/esm/absolute-list/absolute-list.d.ts.map +1 -1
  71. package/esm/absolute-list/absolute-list.js +20 -5
  72. package/esm/avatar/avatar.d.ts +5 -0
  73. package/esm/avatar/avatar.d.ts.map +1 -0
  74. package/esm/avatar/avatar.js +131 -0
  75. package/esm/avatar/avatar.type.d.ts +101 -0
  76. package/esm/avatar/avatar.type.d.ts.map +1 -0
  77. package/esm/avatar/avatar.type.js +1 -0
  78. package/esm/avatar/context.d.ts +5 -0
  79. package/esm/avatar/context.d.ts.map +1 -0
  80. package/esm/avatar/context.js +2 -0
  81. package/esm/avatar/group.d.ts +5 -0
  82. package/esm/avatar/group.d.ts.map +1 -0
  83. package/esm/avatar/group.js +74 -0
  84. package/esm/avatar/index.d.ts +5 -0
  85. package/esm/avatar/index.d.ts.map +1 -0
  86. package/esm/avatar/index.js +3 -0
  87. package/esm/cascader/cascader.d.ts.map +1 -1
  88. package/esm/cascader/cascader.js +11 -8
  89. package/esm/cascader/cascader.type.d.ts +24 -0
  90. package/esm/cascader/cascader.type.d.ts.map +1 -1
  91. package/esm/cascader/index.d.ts +1 -1
  92. package/esm/cascader/index.d.ts.map +1 -1
  93. package/esm/cascader/list.d.ts.map +1 -1
  94. package/esm/cascader/list.js +60 -24
  95. package/esm/cascader/list.type.d.ts +1 -1
  96. package/esm/cascader/list.type.d.ts.map +1 -1
  97. package/esm/common/use-with-form-config.d.ts.map +1 -1
  98. package/esm/common/use-with-form-config.js +4 -1
  99. package/esm/form/form.d.ts.map +1 -1
  100. package/esm/form/form.js +8 -2
  101. package/esm/form/form.type.d.ts +5 -0
  102. package/esm/form/form.type.d.ts.map +1 -1
  103. package/esm/index.d.ts +1 -0
  104. package/esm/index.d.ts.map +1 -1
  105. package/esm/index.js +1 -0
  106. package/esm/modal/modal-content.d.ts.map +1 -1
  107. package/esm/modal/modal-content.js +2 -2
  108. package/esm/select/result-more.d.ts.map +1 -1
  109. package/esm/select/result-more.js +17 -6
  110. package/esm/select/result-more.type.d.ts +4 -1
  111. package/esm/select/result-more.type.d.ts.map +1 -1
  112. package/esm/select/result.d.ts.map +1 -1
  113. package/esm/select/result.js +20 -8
  114. package/esm/select/result.type.d.ts +1 -1
  115. package/esm/select/result.type.d.ts.map +1 -1
  116. package/esm/select/select.type.d.ts +20 -0
  117. package/esm/select/select.type.d.ts.map +1 -1
  118. package/esm/table/table.d.ts.map +1 -1
  119. package/esm/table/table.js +15 -8
  120. package/esm/table/table.type.d.ts +2 -0
  121. package/esm/table/table.type.d.ts.map +1 -1
  122. package/esm/table/tbody.d.ts.map +1 -1
  123. package/esm/table/tbody.js +3 -1
  124. package/esm/table/tbody.type.d.ts +1 -1
  125. package/esm/table/tbody.type.d.ts.map +1 -1
  126. package/esm/table/thead.d.ts.map +1 -1
  127. package/esm/table/thead.js +31 -7
  128. package/esm/table/thead.type.d.ts +1 -1
  129. package/esm/table/thead.type.d.ts.map +1 -1
  130. package/esm/table/tr.d.ts +1 -1
  131. package/esm/table/tr.d.ts.map +1 -1
  132. package/esm/table/tr.js +79 -11
  133. package/package.json +2 -2
@@ -1,4 +1,8 @@
1
1
  /// <reference types="react" />
2
- declare const AbsoluteContext: import("react").Context<boolean>;
2
+ interface AbsoluteContextProps {
3
+ absolute: boolean;
4
+ scrollElRef?: React.RefObject<HTMLElement>;
5
+ }
6
+ declare const AbsoluteContext: import("react").Context<AbsoluteContextProps>;
3
7
  export default AbsoluteContext;
4
8
  //# sourceMappingURL=absolute-context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"absolute-context.d.ts","sourceRoot":"","sources":["absolute-context.tsx"],"names":[],"mappings":";AAIA,QAAA,MAAM,eAAe,kCAAgC,CAAC;AAItD,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"absolute-context.d.ts","sourceRoot":"","sources":["absolute-context.tsx"],"names":[],"mappings":";AAIA,UAAU,oBAAoB;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;CAC5C;AAGD,QAAA,MAAM,eAAe,+CAEnB,CAAC;AAIH,eAAe,eAAe,CAAC"}
@@ -6,6 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.default = void 0;
8
8
  var _react = require("react");
9
- var AbsoluteContext = /*#__PURE__*/(0, _react.createContext)(false);
9
+ var AbsoluteContext = /*#__PURE__*/(0, _react.createContext)({
10
+ absolute: false
11
+ });
10
12
  AbsoluteContext.displayName = 'AbsoluteContext';
11
13
  var _default = exports.default = AbsoluteContext;
@@ -1 +1 @@
1
- {"version":3,"file":"absolute-list.d.ts","sourceRoot":"","sources":["absolute-list.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6B,MAAM,OAAO,CAAC;AAGlD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAIzD,QAAA,MAAM,YAAY,UAAW,iBAAiB;;sBAwE7C,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"absolute-list.d.ts","sourceRoot":"","sources":["absolute-list.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwC,MAAM,OAAO,CAAC;AAG7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAIzD,QAAA,MAAM,YAAY,UAAW,iBAAiB;;sBAuF7C,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -22,7 +22,7 @@ var AbsoluteList = function AbsoluteList(props) {
22
22
  var position = props.position,
23
23
  children = props.children,
24
24
  parentElRef = props.parentElRef,
25
- scrollElRef = props.scrollElRef,
25
+ scrollElRefProp = props.scrollElRef,
26
26
  fixedWidth = props.fixedWidth,
27
27
  _props$zIndex = props.zIndex,
28
28
  zIndex = _props$zIndex === void 0 ? 1051 : _props$zIndex,
@@ -36,7 +36,9 @@ var AbsoluteList = function AbsoluteList(props) {
36
36
  destroy = _props$destroy === void 0 ? false : _props$destroy,
37
37
  _props$lazy = props.lazy,
38
38
  lazy = _props$lazy === void 0 ? true : _props$lazy;
39
- var defaultAbsolute = (0, _react.useContext)(_absoluteContext.default);
39
+ var _useContext = (0, _react.useContext)(_absoluteContext.default),
40
+ defaultAbsolute = _useContext.absolute,
41
+ scrollElRefContext = _useContext.scrollElRef;
40
42
  var absolute = props.absolute === undefined ? defaultAbsolute : props.absolute;
41
43
  var _useContainer = (0, _useContainer2.default)({
42
44
  container: typeof absolute === 'function' ? absolute : undefined
@@ -46,6 +48,19 @@ var AbsoluteList = function AbsoluteList(props) {
46
48
  rendered: false
47
49
  }),
48
50
  context = _useRef.current;
51
+ var closestScrollContainerRef = _react.default.useRef(null);
52
+
53
+ // scrollElRef的3个来源:1. 外部传入 2. 上下文传入 3. 最接近的滚动容器
54
+ var finalScrollElRef = _react.default.useMemo(function () {
55
+ return scrollElRefProp || scrollElRefContext || closestScrollContainerRef;
56
+ }, [scrollElRefProp, scrollElRefContext]);
57
+ (0, _react.useEffect)(function () {
58
+ if (scrollElRefProp || scrollElRefContext) return;
59
+ var closestScrollContainer = (0, _hooks.getClosestScrollContainer)(parentElRef.current);
60
+ if (closestScrollContainer) {
61
+ closestScrollContainerRef.current = closestScrollContainer;
62
+ }
63
+ }, [parentElRef, scrollElRefProp, scrollElRefContext]);
49
64
  var _usePositionStyle = (0, _hooks.usePositionStyle)({
50
65
  getContainer: getRoot,
51
66
  position: position,
@@ -54,7 +69,7 @@ var AbsoluteList = function AbsoluteList(props) {
54
69
  show: focus,
55
70
  fixedWidth: fixedWidth,
56
71
  zIndex: zIndex,
57
- scrollElRef: scrollElRef,
72
+ scrollElRef: finalScrollElRef,
58
73
  popupElRef: popupElRef,
59
74
  updateKey: updateKey,
60
75
  popupGap: popupGap,
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ import { AvatarProps } from './avatar.type';
3
+ declare const Avatar: (props: AvatarProps) => JSX.Element;
4
+ export default Avatar;
5
+ //# sourceMappingURL=avatar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avatar.d.ts","sourceRoot":"","sources":["avatar.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,WAAW,EAAiB,MAAM,eAAe,CAAC;AAE3D,QAAA,MAAM,MAAM,UAAW,WAAW,gBA4HjC,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _classnames = _interopRequireDefault(require("classnames"));
10
+ var _context = require("./context");
11
+ var _jsxRuntime = require("react/jsx-runtime");
12
+ var _excluded = ["jssStyle", "className", "children", "style", "src", "alt", "icon", "gap", "shape", "srcSet", "draggable", "size", "crossOrigin", "onError"];
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
15
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
17
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
18
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
19
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
20
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
21
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
22
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
23
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
24
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
25
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
26
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
27
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
28
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
29
+ var Avatar = function Avatar(props) {
30
+ var _jssStyle$avatar;
31
+ var jssStyle = props.jssStyle,
32
+ className = props.className,
33
+ children = props.children,
34
+ style = props.style,
35
+ src = props.src,
36
+ alt = props.alt,
37
+ icon = props.icon,
38
+ _props$gap = props.gap,
39
+ gap = _props$gap === void 0 ? 4 : _props$gap,
40
+ shapeProp = props.shape,
41
+ srcSet = props.srcSet,
42
+ draggable = props.draggable,
43
+ sizeProp = props.size,
44
+ crossOrigin = props.crossOrigin,
45
+ onError = props.onError,
46
+ rest = _objectWithoutProperties(props, _excluded);
47
+ var _useState = (0, _react.useState)(1),
48
+ _useState2 = _slicedToArray(_useState, 2),
49
+ scale = _useState2[0],
50
+ setScale = _useState2[1];
51
+ var _useState3 = (0, _react.useState)(false),
52
+ _useState4 = _slicedToArray(_useState3, 2),
53
+ mounted = _useState4[0],
54
+ setMounted = _useState4[1];
55
+ var _useState5 = (0, _react.useState)(true),
56
+ _useState6 = _slicedToArray(_useState5, 2),
57
+ isImgExist = _useState6[0],
58
+ setIsImgExist = _useState6[1];
59
+ var avatarRef = (0, _react.useRef)(null);
60
+ var childrenRef = (0, _react.useRef)(null);
61
+ var avatarContext = (0, _react.useContext)(_context.AvatarContext);
62
+ var shape = shapeProp || avatarContext.shape || 'circle';
63
+ var size = sizeProp || avatarContext.size;
64
+ var hasImageElement = /*#__PURE__*/(0, _react.isValidElement)(src);
65
+ var avatarClasses = (jssStyle === null || jssStyle === void 0 || (_jssStyle$avatar = jssStyle.avatar) === null || _jssStyle$avatar === void 0 ? void 0 : _jssStyle$avatar.call(jssStyle)) || {};
66
+ var rootClass = (0, _classnames.default)(className, avatarClasses.wrapper, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, avatarClasses.circle, shape === 'circle'), avatarClasses.square, shape === 'square'), avatarClasses.image, hasImageElement || src), avatarClasses.small, size === 'small'), avatarClasses.large, size === 'large'), avatarClasses.icon, !!icon));
67
+ var setScaleByChildren = function setScaleByChildren() {
68
+ if (!childrenRef.current || !avatarRef.current) return;
69
+ var avatarWidth = avatarRef.current.offsetWidth;
70
+ var childrenWidth = childrenRef.current.offsetWidth;
71
+ if (childrenWidth !== 0 && avatarWidth !== 0) {
72
+ if (gap * 2 < avatarWidth) {
73
+ setScale(avatarWidth - gap * 2 < childrenWidth ? (avatarWidth - gap * 2) / childrenWidth : 1);
74
+ }
75
+ }
76
+ };
77
+ var handleImageLoadError = function handleImageLoadError() {
78
+ var errorFlag = (onError === null || onError === void 0 ? void 0 : onError()) || false;
79
+ if (errorFlag !== false) {
80
+ setIsImgExist(false);
81
+ }
82
+ };
83
+ var renderChildren = function renderChildren() {
84
+ if (typeof src === 'string' && isImgExist) {
85
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("img", {
86
+ src: src,
87
+ alt: alt,
88
+ draggable: draggable,
89
+ srcSet: srcSet,
90
+ crossOrigin: crossOrigin,
91
+ onError: handleImageLoadError
92
+ });
93
+ }
94
+ if (hasImageElement) {
95
+ return src;
96
+ }
97
+ if (icon) {
98
+ return icon;
99
+ }
100
+ var className = (0, _classnames.default)(icon ? avatarClasses.icon : avatarClasses.string);
101
+ if (mounted || scale !== 1) {
102
+ var transform = "scale(".concat(scale, ")");
103
+ var childrenStyle = {
104
+ transform: transform,
105
+ msTransform: transform,
106
+ WebkitTransform: transform
107
+ };
108
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
109
+ style: childrenStyle,
110
+ className: className,
111
+ ref: childrenRef,
112
+ children: children
113
+ });
114
+ }
115
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
116
+ style: {
117
+ opacity: 0
118
+ },
119
+ className: className,
120
+ ref: childrenRef,
121
+ children: children
122
+ });
123
+ };
124
+ (0, _react.useEffect)(function () {
125
+ setMounted(true);
126
+ }, []);
127
+ (0, _react.useEffect)(function () {
128
+ setIsImgExist(true);
129
+ setScale(1);
130
+ }, [props.src]);
131
+ (0, _react.useEffect)(setScaleByChildren, [gap]);
132
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("span", _objectSpread(_objectSpread({
133
+ ref: avatarRef,
134
+ className: rootClass,
135
+ style: style
136
+ }, rest), {}, {
137
+ children: renderChildren()
138
+ }));
139
+ };
140
+ var _default = exports.default = Avatar;
@@ -0,0 +1,101 @@
1
+ import React from 'react';
2
+ import { CommonType } from '../common/type';
3
+ import { PopoverClasses, PopoverProps } from '../popover/popover.type';
4
+ export interface AvatarClasses {
5
+ wrapper: string;
6
+ small: string;
7
+ large: string;
8
+ image: string;
9
+ string: string;
10
+ circle: string;
11
+ square: string;
12
+ icon: string;
13
+ text: string;
14
+ group: string;
15
+ max: string;
16
+ popover: string;
17
+ }
18
+ export interface AvatarProps extends Pick<CommonType, 'className' | 'style' | 'size'> {
19
+ jssStyle?: {
20
+ avatar: () => AvatarClasses;
21
+ };
22
+ /**
23
+ * @en The alternative text for the image
24
+ * @cn 图像无法显示时的替代文本
25
+ */
26
+ alt?: string;
27
+ /**
28
+ * @en The address of the image or the image element of the image class avatar
29
+ * @cn 图片类头像的资源地址或者图片元素
30
+ */
31
+ src?: string | React.ReactNode;
32
+ /**
33
+ * @en Set the custom icon of the avatar
34
+ * @cn 设置头像的自定义图标
35
+ */
36
+ icon?: React.ReactNode;
37
+ /**
38
+ * @en Specifies the shape of the avatar
39
+ * @cn 指定头像的形状
40
+ * @default 'circle'
41
+ */
42
+ children?: React.ReactNode;
43
+ /**
44
+ * @en The text content of the avatar, the scaling ratio will be calculated according to the content size
45
+ * @cn 头像文本内容,会根据内容尺寸自适应计算缩放比例
46
+ */
47
+ shape?: 'circle' | 'square';
48
+ /**
49
+ * @en Set the responsive resource address of the image class avatar
50
+ * @cn 设置图片类头像响应式资源地址
51
+ */
52
+ srcSet?: string;
53
+ /**
54
+ * @en The distance between the left and right edges of the character type in pixels
55
+ * @cn 字符类型距离左右两侧边界单位像素
56
+ */
57
+ gap?: number;
58
+ /**
59
+ * @en Whether the image is allowed to be dragged
60
+ * @cn 图片是否允许拖动
61
+ * @default true
62
+ */
63
+ draggable?: boolean;
64
+ /**
65
+ * @en CORS attribute setting
66
+ * @cn CORS 属性设置
67
+ */
68
+ crossOrigin?: 'anonymous' | 'use-credentials';
69
+ /**
70
+ * @en The event that the image fails to load, returning false will close the component's default fallback behavior
71
+ * @cn 图片加载失败的事件,返回 false 会关闭组件默认的 fallback 行为
72
+ */
73
+ onError?: () => boolean;
74
+ }
75
+ export interface AvatarGroupProps extends Pick<CommonType, 'className' | 'style' | 'size'>, Pick<AvatarProps, 'shape'> {
76
+ jssStyle?: {
77
+ avatar: () => AvatarClasses;
78
+ popover: () => PopoverClasses;
79
+ };
80
+ /**
81
+ * @en Set the maximum number of avatars displayed in the avatar group
82
+ * @cn 设置头像组展示头像的最大数量
83
+ */
84
+ max?: number;
85
+ /**
86
+ * @en Custom rendering of hidden avatar nodes, hideAvatarNodes is an array of hidden node dom, max is the number of hidden nodes
87
+ * @cn 自定义渲染隐藏的头像节点,hideAvatarNodes 为隐藏的节点 dom 数组,max 为隐藏的节点数量
88
+ */
89
+ renderMax?: (hideAvatarNodes: React.ReactNode[], max: number) => React.ReactNode;
90
+ /**
91
+ * @en Avatar node
92
+ * @cn 头像节点
93
+ */
94
+ children: React.ReactNode;
95
+ /**
96
+ * @en The event that the image fails to load, returning false will close the component's default fallback behavior
97
+ * @cn 用于展示隐藏头像的 Popover 相关配置,配置属性为 Popover 部分属性: position、zIndex、getPopupContainer、adjust
98
+ */
99
+ popover?: Pick<PopoverProps, 'position' | 'zIndex' | 'getPopupContainer' | 'adjust'>;
100
+ }
101
+ //# sourceMappingURL=avatar.type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avatar.type.d.ts","sourceRoot":"","sources":["avatar.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvE,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAY,SAAQ,IAAI,CAAC,UAAU,EAAE,WAAW,GAAG,OAAO,GAAG,MAAM,CAAC;IACnF,QAAQ,CAAC,EAAE;QACT,MAAM,EAAE,MAAM,aAAa,CAAC;KAC7B,CAAC;IACF;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IAC/B;;;OAGG;IACH,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;;OAGG;IACH,KAAK,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC5B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,WAAW,CAAC,EAAE,WAAW,GAAG,iBAAiB,CAAC;IAC9C;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC;CACzB;AACD,MAAM,WAAW,gBACf,SAAQ,IAAI,CAAC,UAAU,EAAE,WAAW,GAAG,OAAO,GAAG,MAAM,CAAC,EACtD,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,EAAE;QACT,MAAM,EAAE,MAAM,aAAa,CAAC;QAC5B,OAAO,EAAE,MAAM,cAAc,CAAC;KAC/B,CAAC;IACF;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,eAAe,EAAE,KAAK,CAAC,SAAS,EAAE,EAAE,GAAG,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC;IACjF;;;OAGG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;OAGG;IACH,OAAO,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,UAAU,GAAG,QAAQ,GAAG,mBAAmB,GAAG,QAAQ,CAAC,CAAC;CACtF"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ import { AvatarGroupProps } from './avatar.type';
3
+ export type AvatarContextProps = Pick<AvatarGroupProps, 'shape' | 'size'>;
4
+ export declare const AvatarContext: import("react").Context<AvatarContextProps>;
5
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["context.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,gBAAgB,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC;AAE1E,eAAO,MAAM,aAAa,6CAAwC,CAAC"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AvatarContext = void 0;
7
+ var _react = require("react");
8
+ var AvatarContext = exports.AvatarContext = /*#__PURE__*/(0, _react.createContext)({});
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ import { AvatarGroupProps } from './avatar.type';
3
+ declare const AvatarGroup: (props: AvatarGroupProps) => JSX.Element;
4
+ export default AvatarGroup;
5
+ //# sourceMappingURL=group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["group.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,gBAAgB,EAAiB,MAAM,eAAe,CAAC;AAahE,QAAA,MAAM,WAAW,UAAW,gBAAgB,gBA2C3C,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _context = require("./context");
9
+ var _avatar = _interopRequireDefault(require("./avatar"));
10
+ var _popover = require("../popover");
11
+ var _jsxRuntime = require("react/jsx-runtime");
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
14
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
15
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
16
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
17
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
18
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
19
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
20
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
21
+ var AvatarProvider = function AvatarProvider(props) {
22
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_context.AvatarContext.Provider, {
23
+ value: props,
24
+ children: props.children
25
+ });
26
+ };
27
+ var AvatarGroup = function AvatarGroup(props) {
28
+ var _jssStyle$avatar;
29
+ var jssStyle = props.jssStyle,
30
+ childrenProp = props.children,
31
+ size = props.size,
32
+ shape = props.shape,
33
+ max = props.max,
34
+ popover = props.popover,
35
+ renderMax = props.renderMax;
36
+ var avatarGroupClasses = (jssStyle === null || jssStyle === void 0 || (_jssStyle$avatar = jssStyle.avatar) === null || _jssStyle$avatar === void 0 ? void 0 : _jssStyle$avatar.call(jssStyle)) || {};
37
+ var children = _react.Children.toArray(childrenProp).map(function (child, index) {
38
+ return /*#__PURE__*/(0, _react.cloneElement)(child, {
39
+ key: "avatar-key-".concat(index)
40
+ });
41
+ });
42
+ var childrenNumber = children.length;
43
+ if (max && max < childrenNumber) {
44
+ var childrenShow = children.slice(0, max);
45
+ var childrenHidden = children.slice(max, childrenNumber);
46
+ if (renderMax) {
47
+ childrenShow.push( /*#__PURE__*/(0, _jsxRuntime.jsx)(_react.default.Fragment, {
48
+ children: renderMax(childrenHidden, childrenHidden.length)
49
+ }, 'avatar-provider-key'));
50
+ } else {
51
+ childrenShow.push( /*#__PURE__*/(0, _jsxRuntime.jsxs)(_avatar.default, {
52
+ jssStyle: jssStyle,
53
+ className: avatarGroupClasses.max,
54
+ children: ["+", childrenHidden.length, /*#__PURE__*/(0, _jsxRuntime.jsx)(_popover.Popover, _objectSpread(_objectSpread({
55
+ jssStyle: jssStyle
56
+ }, popover), {}, {
57
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
58
+ className: avatarGroupClasses.popover,
59
+ children: childrenHidden
60
+ })
61
+ }))]
62
+ }, 'avatar-provider-key'));
63
+ }
64
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(AvatarProvider, {
65
+ shape: shape,
66
+ size: size,
67
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
68
+ className: avatarGroupClasses.group,
69
+ children: childrenShow
70
+ })
71
+ });
72
+ }
73
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(AvatarProvider, {
74
+ shape: shape,
75
+ size: size,
76
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
77
+ className: avatarGroupClasses.group,
78
+ children: children
79
+ })
80
+ });
81
+ };
82
+ var _default = exports.default = AvatarGroup;
@@ -0,0 +1,5 @@
1
+ export { default, default as Avatar } from './avatar';
2
+ export type { AvatarProps } from './avatar.type';
3
+ export { default as AvatarGroup } from './group';
4
+ export type { AvatarGroupProps } from './avatar.type';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AACtD,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,SAAS,CAAC;AACjD,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ "use client";
3
+
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ Object.defineProperty(exports, "Avatar", {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _avatar.default;
11
+ }
12
+ });
13
+ Object.defineProperty(exports, "AvatarGroup", {
14
+ enumerable: true,
15
+ get: function get() {
16
+ return _group.default;
17
+ }
18
+ });
19
+ Object.defineProperty(exports, "default", {
20
+ enumerable: true,
21
+ get: function get() {
22
+ return _avatar.default;
23
+ }
24
+ });
25
+ var _avatar = _interopRequireDefault(require("./avatar"));
26
+ var _group = _interopRequireDefault(require("./group"));
27
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -1 +1 @@
1
- {"version":3,"file":"cascader.d.ts","sourceRoot":"","sources":["cascader.tsx"],"names":[],"mappings":";AAEA,OAAO,EAML,YAAY,EAIb,MAAM,eAAe,CAAC;AAMvB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAShD,QAAA,MAAM,QAAQ,iGAysBb,CAAC;AACF,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"cascader.d.ts","sourceRoot":"","sources":["cascader.tsx"],"names":[],"mappings":";AAEA,OAAO,EAML,YAAY,EAIb,MAAM,eAAe,CAAC;AAMvB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAUhD,QAAA,MAAM,QAAQ,iGA6sBb,CAAC;AACF,eAAe,QAAQ,CAAC"}
@@ -41,7 +41,7 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
41
41
  var Cascader = function Cascader(props0) {
42
42
  var _jssStyle$cascader;
43
43
  var props = (0, _useWithFormConfig.default)(props0);
44
- var defaultHeight = 232;
44
+ var defaultHeight = 250;
45
45
  var jssStyle = props.jssStyle,
46
46
  style = props.style,
47
47
  _props$adjust = props.adjust,
@@ -86,6 +86,7 @@ var Cascader = function Cascader(props0) {
86
86
  placeholder = props.placeholder,
87
87
  _props$focusSelected = props.focusSelected,
88
88
  focusSelected = _props$focusSelected === void 0 ? true : _props$focusSelected,
89
+ renderCompressed = props.renderCompressed,
89
90
  compressedClassName = props.compressedClassName,
90
91
  resultClassName = props.resultClassName,
91
92
  renderUnmatched = props.renderUnmatched,
@@ -105,6 +106,7 @@ var Cascader = function Cascader(props0) {
105
106
  onFilterProp = props.onFilter,
106
107
  onCollapseProp = props.onCollapse,
107
108
  size = props.size,
109
+ virtual = props.virtual,
108
110
  filterSameChange = props.filterSameChange;
109
111
  var showInput = _hooks.util.isFunc(onFilterProp);
110
112
  var styles = jssStyle === null || jssStyle === void 0 || (_jssStyle$cascader = jssStyle.cascader) === null || _jssStyle$cascader === void 0 ? void 0 : _jssStyle$cascader.call(jssStyle);
@@ -343,13 +345,8 @@ var Cascader = function Cascader(props0) {
343
345
  onChange(datum.getValue(), item);
344
346
  };
345
347
  var getDataByValues = function getDataByValues(values) {
346
- var nextValues = values === null || values === void 0 ? void 0 : values.filter(function (v) {
347
- return !_hooks.util.isEmpty(v);
348
- }).reduce(function (acc, val) {
349
- return acc.concat(val);
350
- }, []);
351
- if (!nextValues) return [];
352
- return datum.getDataByValues(nextValues);
348
+ if (!values) return [];
349
+ return datum.getDataByValues(values);
353
350
  };
354
351
  var checkUnMatched = function checkUnMatched(item) {
355
352
  return _hooks.util.isUnMatchedData(item);
@@ -419,6 +416,7 @@ var Cascader = function Cascader(props0) {
419
416
  keygen: keygen,
420
417
  disabled: disabled,
421
418
  compressed: compressed,
419
+ renderCompressed: renderCompressed,
422
420
  compressedBound: compressedBound,
423
421
  compressedClassName: compressedClassName,
424
422
  multiple: true,
@@ -468,9 +466,11 @@ var Cascader = function Cascader(props0) {
468
466
  expandTrigger: expandTrigger,
469
467
  childrenKey: childrenKey,
470
468
  shouldFinal: shouldFinal,
469
+ height: height,
471
470
  data: tempData,
472
471
  id: path[0],
473
472
  parentId: "",
473
+ virtual: virtual,
474
474
  path: [],
475
475
  mode: mode
476
476
  }, 'root')];
@@ -483,6 +483,8 @@ var Cascader = function Cascader(props0) {
483
483
  tempData = tempData[childrenKey];
484
484
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_list.default, {
485
485
  datum: datum,
486
+ size: size,
487
+ height: height,
486
488
  jssStyle: jssStyle,
487
489
  renderItem: renderItem,
488
490
  keygen: keygen,
@@ -495,6 +497,7 @@ var Cascader = function Cascader(props0) {
495
497
  shouldFinal: shouldFinal,
496
498
  data: tempData,
497
499
  id: path[i + 1],
500
+ virtual: virtual,
498
501
  parentId: path[i],
499
502
  path: path.slice(0, i + 1)
500
503
  }, p);
@@ -98,6 +98,18 @@ export interface CascaderRef {
98
98
  */
99
99
  close: (e?: MouseEvent) => void;
100
100
  }
101
+ export interface RenderCompressedOption<DataItem> {
102
+ /**
103
+ * @en The current selected data
104
+ * @cn 当前选中的数据
105
+ */
106
+ data: DataItem[];
107
+ /**
108
+ * @en Method to remove the option
109
+ * @cn 删除选项的方法
110
+ */
111
+ onRemove: (item: DataItem) => void;
112
+ }
101
113
  export interface CascaderProps<DataItem, Value extends KeygenResult[]> extends Pick<CommonType, 'className' | 'style' | 'size' | 'status' | 'innerTitle' | 'filterSameChange'>, Pick<AbsoluteListProps, 'absolute' | 'zIndex'>, BaseTipProps {
102
114
  jssStyle?: JssStyleType;
103
115
  /**
@@ -225,6 +237,11 @@ export interface CascaderProps<DataItem, Value extends KeygenResult[]> extends P
225
237
  * @default false
226
238
  */
227
239
  compressed?: boolean | 'no-repeat';
240
+ /**
241
+ * @en Custom render compressed content
242
+ * @cn 自定义渲染折叠内容,其中 data 为选中的数据,onRemove 为删除事件
243
+ */
244
+ renderCompressed?: (options: RenderCompressedOption<DataItem>) => React.ReactNode;
228
245
  /**
229
246
  * @en options collapse callback
230
247
  * @cn 下拉列表展开/收起回调
@@ -347,5 +364,12 @@ export interface CascaderProps<DataItem, Value extends KeygenResult[]> extends P
347
364
  * @default true
348
365
  */
349
366
  adjust?: boolean;
367
+ /**
368
+ * @en Whether to use virtual list
369
+ * @cn 是否使用虚拟列表
370
+ * @default false
371
+ * @version 3.5.0
372
+ */
373
+ virtual?: boolean;
350
374
  }
351
375
  //# sourceMappingURL=cascader.type.d.ts.map