@arco-design/mobile-react 2.19.1-941e02b.7 → 2.20.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.
- package/CHANGELOG.md +36 -0
- package/README.en-US.md +6 -6
- package/README.md +6 -6
- package/cjs/_helpers/type.d.ts +1 -1
- package/cjs/avatar/group.js +1 -1
- package/cjs/avatar/index.js +10 -13
- package/cjs/avatar/style/css/index.css +96 -126
- package/cjs/avatar/style/index.less +54 -72
- package/cjs/badge/index.js +6 -8
- package/cjs/badge/style/css/index.css +5 -5
- package/cjs/badge/style/index.less +5 -5
- package/cjs/button/hooks.d.ts +1 -2
- package/cjs/button/hooks.js +5 -3
- package/cjs/button/index.d.ts +12 -0
- package/cjs/button/index.js +40 -33
- package/cjs/button/style/css/index.css +75 -310
- package/cjs/button/style/index.less +32 -38
- package/cjs/count-down/demo/style/mobile.less +1 -1
- package/cjs/dropdown/dropdown.d.ts +3 -0
- package/cjs/dropdown/dropdown.js +306 -0
- package/cjs/dropdown/index.d.ts +3 -4
- package/cjs/dropdown/index.js +3 -303
- package/cjs/dropdown/options.js +2 -1
- package/cjs/dropdown/type.d.ts +20 -9
- package/cjs/dropdown-menu/dropdown-menu.d.ts +4 -0
- package/cjs/dropdown-menu/dropdown-menu.js +273 -0
- package/cjs/dropdown-menu/helper.d.ts +1 -1
- package/cjs/dropdown-menu/index.d.ts +2 -3
- package/cjs/dropdown-menu/index.js +2 -245
- package/cjs/dropdown-menu/type.d.ts +21 -20
- package/cjs/image/index.js +4 -1
- package/cjs/image/style/css/index.css +2 -1
- package/cjs/image/style/index.less +2 -1
- package/cjs/image-picker/index.d.ts +11 -8
- package/cjs/image-picker/index.js +19 -12
- package/cjs/image-picker/style/index.less +1 -1
- package/cjs/nav-bar/index.js +7 -2
- package/cjs/notify/index.d.ts +1 -0
- package/cjs/notify/index.js +12 -0
- package/cjs/notify/type.d.ts +1 -0
- package/cjs/show-monitor/index.js +31 -3
- package/cjs/transition/index.js +4 -2
- package/dist/index.js +677 -617
- package/dist/index.min.js +4 -4
- package/dist/style.css +174 -438
- package/dist/style.min.css +1 -1
- package/esm/_helpers/type.d.ts +1 -1
- package/esm/avatar/group.js +1 -1
- package/esm/avatar/index.js +10 -13
- package/esm/avatar/style/css/index.css +96 -126
- package/esm/avatar/style/index.less +54 -72
- package/esm/badge/index.js +6 -8
- package/esm/badge/style/css/index.css +5 -5
- package/esm/badge/style/index.less +5 -5
- package/esm/button/hooks.d.ts +1 -2
- package/esm/button/hooks.js +5 -3
- package/esm/button/index.d.ts +12 -0
- package/esm/button/index.js +42 -35
- package/esm/button/style/css/index.css +75 -310
- package/esm/button/style/index.less +32 -38
- package/esm/count-down/demo/style/mobile.less +1 -1
- package/esm/dropdown/dropdown.d.ts +3 -0
- package/esm/dropdown/dropdown.js +288 -0
- package/esm/dropdown/index.d.ts +3 -4
- package/esm/dropdown/index.js +3 -293
- package/esm/dropdown/options.js +2 -1
- package/esm/dropdown/type.d.ts +20 -9
- package/esm/dropdown-menu/dropdown-menu.d.ts +4 -0
- package/esm/dropdown-menu/dropdown-menu.js +256 -0
- package/esm/dropdown-menu/helper.d.ts +1 -1
- package/esm/dropdown-menu/index.d.ts +2 -3
- package/esm/dropdown-menu/index.js +2 -237
- package/esm/dropdown-menu/type.d.ts +21 -20
- package/esm/image/index.js +4 -1
- package/esm/image/style/css/index.css +2 -1
- package/esm/image/style/index.less +2 -1
- package/esm/image-picker/index.d.ts +11 -8
- package/esm/image-picker/index.js +19 -12
- package/esm/image-picker/style/index.less +1 -1
- package/esm/nav-bar/index.js +6 -2
- package/esm/notify/index.d.ts +1 -0
- package/esm/notify/index.js +1 -0
- package/esm/notify/type.d.ts +1 -0
- package/esm/show-monitor/index.js +31 -3
- package/esm/transition/index.js +4 -2
- package/package.json +3 -3
- package/tokens/app/arcodesign/default/css-variables.less +2 -1
- package/tokens/app/arcodesign/default/index.d.ts +2 -1
- package/tokens/app/arcodesign/default/index.js +2 -1
- package/tokens/app/arcodesign/default/index.json +123 -47
- package/tokens/app/arcodesign/default/index.less +2 -1
- package/umd/_helpers/type.d.ts +1 -1
- package/umd/avatar/group.js +1 -1
- package/umd/avatar/index.js +10 -13
- package/umd/avatar/style/css/index.css +96 -126
- package/umd/avatar/style/index.less +54 -72
- package/umd/badge/index.js +6 -8
- package/umd/badge/style/css/index.css +5 -5
- package/umd/badge/style/index.less +5 -5
- package/umd/button/hooks.d.ts +1 -2
- package/umd/button/hooks.js +5 -3
- package/umd/button/index.d.ts +12 -0
- package/umd/button/index.js +40 -33
- package/umd/button/style/css/index.css +75 -310
- package/umd/button/style/index.less +32 -38
- package/umd/count-down/demo/style/mobile.less +1 -1
- package/umd/dropdown/dropdown.d.ts +3 -0
- package/umd/dropdown/dropdown.js +309 -0
- package/umd/dropdown/index.d.ts +3 -4
- package/umd/dropdown/index.js +5 -298
- package/umd/dropdown/options.js +2 -1
- package/umd/dropdown/type.d.ts +20 -9
- package/umd/dropdown-menu/dropdown-menu.d.ts +4 -0
- package/umd/dropdown-menu/dropdown-menu.js +278 -0
- package/umd/dropdown-menu/helper.d.ts +1 -1
- package/umd/dropdown-menu/index.d.ts +2 -3
- package/umd/dropdown-menu/index.js +5 -241
- package/umd/dropdown-menu/type.d.ts +21 -20
- package/umd/image/index.js +4 -1
- package/umd/image/style/css/index.css +2 -1
- package/umd/image/style/index.less +2 -1
- package/umd/image-picker/index.d.ts +11 -8
- package/umd/image-picker/index.js +19 -12
- package/umd/image-picker/style/index.less +1 -1
- package/umd/nav-bar/index.js +9 -6
- package/umd/notify/index.d.ts +1 -0
- package/umd/notify/index.js +13 -4
- package/umd/notify/type.d.ts +1 -0
- package/umd/show-monitor/index.js +31 -3
- package/umd/transition/index.js +4 -2
package/dist/index.js
CHANGED
@@ -1983,14 +1983,16 @@
|
|
1983
1983
|
*/
|
1984
1984
|
|
1985
1985
|
function Transition(props) {
|
1986
|
-
var
|
1986
|
+
var _a = props.children,
|
1987
|
+
children = _a === void 0 ? /*#__PURE__*/React__default["default"].createElement("div", null) : _a,
|
1987
1988
|
type = props.type,
|
1988
1989
|
transIn = props.in,
|
1989
|
-
|
1990
|
-
|
1991
|
-
|
1992
|
-
|
1993
|
-
|
1990
|
+
_b = props.timeout,
|
1991
|
+
timeout = _b === void 0 ? 300 : _b,
|
1992
|
+
_c = props.mountOnEnter,
|
1993
|
+
mountOnEnter = _c === void 0 ? true : _c,
|
1994
|
+
_d = props.unmountOnExit,
|
1995
|
+
unmountOnExit = _d === void 0 ? true : _d,
|
1994
1996
|
restProps = __rest(props, ["children", "type", "in", "timeout", "mountOnEnter", "unmountOnExit"]);
|
1995
1997
|
|
1996
1998
|
return /*#__PURE__*/React__default["default"].createElement(ContextLayout, null, function (_a) {
|
@@ -2947,7 +2949,7 @@
|
|
2947
2949
|
var GroupContext = /*#__PURE__*/React__default["default"].createContext({
|
2948
2950
|
isFromGroup: false
|
2949
2951
|
});
|
2950
|
-
function componentGenerator$
|
2952
|
+
function componentGenerator$a(Comp) {
|
2951
2953
|
return /*#__PURE__*/React.forwardRef(function (props, ref) {
|
2952
2954
|
var _a = props.className,
|
2953
2955
|
className = _a === void 0 ? '' : _a,
|
@@ -3070,7 +3072,7 @@
|
|
3070
3072
|
});
|
3071
3073
|
});
|
3072
3074
|
|
3073
|
-
var Group$4 = componentGenerator$
|
3075
|
+
var Group$4 = componentGenerator$a(Cell);
|
3074
3076
|
/**
|
3075
3077
|
* 单元格组件,含单元格及单元格组合,常用于设置项、表单等。
|
3076
3078
|
* @en Cell, including cells and cell group, are often used to set items, forms, etc.
|
@@ -3375,27 +3377,25 @@
|
|
3375
3377
|
};
|
3376
3378
|
});
|
3377
3379
|
|
3378
|
-
function renderInnerBadge() {
|
3380
|
+
function renderInnerBadge(prefix) {
|
3379
3381
|
return dot ? null : /*#__PURE__*/React__default["default"].createElement("span", {
|
3380
|
-
className: "badge-text"
|
3382
|
+
className: prefix + "-text badge-text"
|
3381
3383
|
}, Number(text) && Number(text) > maxCount ? maxCount + "+" : text);
|
3382
3384
|
}
|
3383
3385
|
|
3384
3386
|
return /*#__PURE__*/React__default["default"].createElement(ContextLayout, null, function (_a) {
|
3387
|
+
var _b;
|
3388
|
+
|
3385
3389
|
var prefixCls = _a.prefixCls;
|
3386
3390
|
return /*#__PURE__*/React__default["default"].createElement(Transition, {
|
3387
3391
|
in: visible,
|
3388
3392
|
timeout: timeout,
|
3389
3393
|
type: "scale"
|
3390
3394
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
3391
|
-
className: cls(prefixCls + "-badge", className, {
|
3392
|
-
dot: dot,
|
3393
|
-
bordered: bordered,
|
3394
|
-
absolute: absolute
|
3395
|
-
}),
|
3395
|
+
className: cls(prefixCls + "-badge", className, (_b = {}, _b[prefixCls + "-badge-dot dot"] = dot, _b[prefixCls + "-badge-bordered bordered"] = bordered, _b[prefixCls + "-badge-absolute absolute"] = absolute, _b)),
|
3396
3396
|
style: style,
|
3397
3397
|
ref: domRef
|
3398
|
-
}, children || renderInnerBadge()));
|
3398
|
+
}, children || renderInnerBadge(prefixCls + "-badge")));
|
3399
3399
|
});
|
3400
3400
|
});
|
3401
3401
|
|
@@ -3432,6 +3432,7 @@
|
|
3432
3432
|
var wrapRef = React.useRef(null);
|
3433
3433
|
var retryCountRef = React.useRef(0);
|
3434
3434
|
var loadingImageRef = React.useRef(null);
|
3435
|
+
var hasLoadedRef = React.useRef(false);
|
3435
3436
|
var style = props.style,
|
3436
3437
|
className = props.className,
|
3437
3438
|
status = props.status,
|
@@ -3555,6 +3556,7 @@
|
|
3555
3556
|
image.onload = function (evt) {
|
3556
3557
|
loadingImageRef.current = null;
|
3557
3558
|
imageDomRef.current = image;
|
3559
|
+
hasLoadedRef.current = true;
|
3558
3560
|
changeStatus('loaded');
|
3559
3561
|
var _a = image.width,
|
3560
3562
|
imageWidth = _a === void 0 ? 0 : _a,
|
@@ -3669,7 +3671,8 @@
|
|
3669
3671
|
})) : null, /*#__PURE__*/React__default["default"].createElement("div", {
|
3670
3672
|
className: cls('image-container', validStatus, {
|
3671
3673
|
animate: Boolean(animateDuration),
|
3672
|
-
'static-label': staticLabel
|
3674
|
+
'static-label': staticLabel,
|
3675
|
+
'has-loaded': hasLoadedRef.current
|
3673
3676
|
}),
|
3674
3677
|
style: getStyleWithVendor({
|
3675
3678
|
transitionDuration: animateDuration + "ms"
|
@@ -3773,7 +3776,7 @@
|
|
3773
3776
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
3774
3777
|
ref: domRef,
|
3775
3778
|
style: style,
|
3776
|
-
className: cls(className, prefixCls + "-avatar-group", "group-" + size)
|
3779
|
+
className: cls(className, prefixCls + "-avatar-group", prefixCls + "-avatar-group-size-" + size, "group-" + size)
|
3777
3780
|
}, /*#__PURE__*/React__default["default"].createElement(AvatarGroupContext.Provider, {
|
3778
3781
|
value: {
|
3779
3782
|
isGroup: true,
|
@@ -3793,50 +3796,47 @@
|
|
3793
3796
|
})));
|
3794
3797
|
});
|
3795
3798
|
|
3796
|
-
function componentGenerator$
|
3799
|
+
function componentGenerator$9(Comp) {
|
3797
3800
|
return /*#__PURE__*/React.forwardRef(function (props, ref) {
|
3798
|
-
var _a;
|
3801
|
+
var _a, _b;
|
3799
3802
|
|
3800
3803
|
var prefixCls = React.useContext(GlobalContext).prefixCls;
|
3801
3804
|
|
3802
|
-
var
|
3803
|
-
groupShape =
|
3804
|
-
groupSize =
|
3805
|
-
isGroup =
|
3805
|
+
var _c = React.useContext(AvatarGroupContext),
|
3806
|
+
groupShape = _c.shape,
|
3807
|
+
groupSize = _c.size,
|
3808
|
+
isGroup = _c.isGroup;
|
3806
3809
|
|
3807
|
-
var
|
3808
|
-
shape =
|
3809
|
-
|
3810
|
-
size =
|
3810
|
+
var _d = props.shape,
|
3811
|
+
shape = _d === void 0 ? props.shape || (isGroup ? groupShape : 'circle') : _d,
|
3812
|
+
_e = props.size,
|
3813
|
+
size = _e === void 0 ? props.size || (isGroup ? groupSize : 'small') : _e,
|
3811
3814
|
src = props.src,
|
3812
|
-
|
3813
|
-
decoration =
|
3814
|
-
|
3815
|
-
textAvatar =
|
3816
|
-
|
3817
|
-
avatarStyle =
|
3818
|
-
|
3819
|
-
autoFixFontSize =
|
3820
|
-
|
3821
|
-
autoFixFontOffset =
|
3822
|
-
|
3823
|
-
avatarName =
|
3824
|
-
|
3825
|
-
avatarDesc =
|
3826
|
-
|
3827
|
-
children =
|
3828
|
-
|
3829
|
-
renderInfo =
|
3830
|
-
|
3831
|
-
className =
|
3832
|
-
|
3833
|
-
style =
|
3834
|
-
|
3835
|
-
imageProps =
|
3836
|
-
|
3837
|
-
defaultOverLap = _s === void 0 ? /*#__PURE__*/React__default["default"].createElement(IconUserFill, {
|
3838
|
-
className: prefixCls + "-avatar-default"
|
3839
|
-
}) : _s,
|
3815
|
+
_f = props.decoration,
|
3816
|
+
decoration = _f === void 0 ? null : _f,
|
3817
|
+
_g = props.textAvatar,
|
3818
|
+
textAvatar = _g === void 0 ? '' : _g,
|
3819
|
+
_h = props.avatarStyle,
|
3820
|
+
avatarStyle = _h === void 0 ? {} : _h,
|
3821
|
+
_j = props.autoFixFontSize,
|
3822
|
+
autoFixFontSize = _j === void 0 ? true : _j,
|
3823
|
+
_k = props.autoFixFontOffset,
|
3824
|
+
autoFixFontOffset = _k === void 0 ? 2 : _k,
|
3825
|
+
_l = props.avatarName,
|
3826
|
+
avatarName = _l === void 0 ? '' : _l,
|
3827
|
+
_m = props.avatarDesc,
|
3828
|
+
avatarDesc = _m === void 0 ? '' : _m,
|
3829
|
+
_o = props.children,
|
3830
|
+
children = _o === void 0 ? null : _o,
|
3831
|
+
_p = props.renderInfo,
|
3832
|
+
renderInfo = _p === void 0 ? null : _p,
|
3833
|
+
_q = props.className,
|
3834
|
+
className = _q === void 0 ? '' : _q,
|
3835
|
+
_r = props.style,
|
3836
|
+
style = _r === void 0 ? {} : _r,
|
3837
|
+
_s = props.imageProps,
|
3838
|
+
imageProps = _s === void 0 ? {} : _s,
|
3839
|
+
defaultOverLap = props.defaultOverLap,
|
3840
3840
|
onClickDecoration = props.onClickDecoration,
|
3841
3841
|
onClick = props.onClick;
|
3842
3842
|
var domRef = React.useRef(null);
|
@@ -3891,19 +3891,19 @@
|
|
3891
3891
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
3892
3892
|
ref: domRef,
|
3893
3893
|
style: style,
|
3894
|
-
className: cls(prefixCls + "-avatar-wrapper", className, size, shape, {
|
3895
|
-
'with-info': Boolean(avatarName)
|
3896
|
-
}),
|
3894
|
+
className: cls(prefixCls + "-avatar-wrapper", className, size, shape, prefixCls + "-avatar-wrapper-shape-" + shape, (_a = {}, _a[prefixCls + "-avatar-wrapper-with-info " + prefixCls + "-avatar-wrapper-with-info-size-" + size + " with-info"] = Boolean(avatarName), _a)),
|
3897
3895
|
onClick: onClick
|
3898
3896
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
3899
|
-
className: cls(prefixCls + "-avatar", size, shape, (
|
3897
|
+
className: cls(prefixCls + "-avatar", prefixCls + "-avatar-size-" + size, size, prefixCls + "-avatar-shape-" + shape, shape, (_b = {}, _b[prefixCls + "-text-avatar " + prefixCls + "-avatar-mode-text"] = isTextAvatar, _b[prefixCls + "-image-avatar " + prefixCls + "-avatar-mode-image"] = isImageAvatar, _b[prefixCls + "-avatar-default-overlap default-overlap"] = useDefaultAvatar, _b)),
|
3900
3898
|
style: avatarStyle,
|
3901
3899
|
ref: avatarRef
|
3902
|
-
}, children, useDefaultAvatar && defaultOverLap
|
3900
|
+
}, children, useDefaultAvatar && (defaultOverLap === void 0 ? /*#__PURE__*/React__default["default"].createElement(IconUserFill, {
|
3901
|
+
className: prefixCls + "-avatar-default " + prefixCls + "-avatar-default-icon-size-" + size
|
3902
|
+
}) : defaultOverLap), isImageAvatar && src && /*#__PURE__*/React__default["default"].createElement(Comp, __assign({}, {
|
3903
3903
|
className: prefixCls + "-avatar-img",
|
3904
3904
|
src: src
|
3905
3905
|
}, imageProps)), isTextAvatar && /*#__PURE__*/React__default["default"].createElement("span", {
|
3906
|
-
className: prefixCls + "-avatar-text",
|
3906
|
+
className: prefixCls + "-avatar-text " + prefixCls + "-avatar-text-size-" + size,
|
3907
3907
|
ref: avatarTextRef,
|
3908
3908
|
style: {
|
3909
3909
|
transform: "scale(" + textScale + ")"
|
@@ -3914,13 +3914,13 @@
|
|
3914
3914
|
}, decoration)), renderInfo, !renderInfo && avatarName && /*#__PURE__*/React__default["default"].createElement("div", {
|
3915
3915
|
className: cls(prefixCls + "-avatar-info")
|
3916
3916
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
3917
|
-
className:
|
3917
|
+
className: prefixCls + "-avatar-name " + prefixCls + "-avatar-name-size-" + size
|
3918
3918
|
}, avatarName), avatarDesc && /*#__PURE__*/React__default["default"].createElement("div", {
|
3919
|
-
className:
|
3919
|
+
className: prefixCls + "-avatar-desc " + prefixCls + "-avatar-desc-size-" + size
|
3920
3920
|
}, avatarDesc)));
|
3921
3921
|
});
|
3922
3922
|
}
|
3923
|
-
var Avatar = componentGenerator$
|
3923
|
+
var Avatar = componentGenerator$9(BaseImage);
|
3924
3924
|
/**
|
3925
3925
|
* 头像展示组件,支持圆形和方形两种形状,支持图片文字头像,支持五种尺寸。
|
3926
3926
|
* @en Avatar component supports two shapes of circle and square, supports pictures or text avatars, with five sizes.
|
@@ -3956,7 +3956,8 @@
|
|
3956
3956
|
bgColor = _a.bgColor,
|
3957
3957
|
borderColor = _a.borderColor,
|
3958
3958
|
active = _a.isActive,
|
3959
|
-
disabled = _a.disabled
|
3959
|
+
disabled = _a.disabled,
|
3960
|
+
halfBorder = _a.halfBorder;
|
3960
3961
|
var state = {
|
3961
3962
|
active: active,
|
3962
3963
|
disabled: disabled
|
@@ -3993,8 +3994,9 @@
|
|
3993
3994
|
return res;
|
3994
3995
|
}, [styleConfig, active, disabled]);
|
3995
3996
|
var customColorClass = React.useMemo(function () {
|
3996
|
-
|
3997
|
-
|
3997
|
+
var borderCls = halfBorder ? 'half-border' : '';
|
3998
|
+
return styleConfig.borderColor ? ['has-custom-border'] : [borderCls];
|
3999
|
+
}, [styleConfig.borderColor, halfBorder]);
|
3998
4000
|
return {
|
3999
4001
|
customColorStyle: customColorStyle,
|
4000
4002
|
customColorClass: customColorClass
|
@@ -4011,58 +4013,67 @@
|
|
4011
4013
|
*/
|
4012
4014
|
|
4013
4015
|
var Button = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
4014
|
-
var _a
|
4015
|
-
|
4016
|
-
|
4016
|
+
var _a, _b;
|
4017
|
+
|
4018
|
+
var _c = React.useState(false),
|
4019
|
+
isActive = _c[0],
|
4020
|
+
setActive = _c[1];
|
4017
4021
|
|
4018
4022
|
var system = useSystem();
|
4019
|
-
var
|
4020
|
-
type =
|
4021
|
-
|
4022
|
-
size =
|
4023
|
-
|
4024
|
-
inline =
|
4025
|
-
|
4026
|
-
loading =
|
4027
|
-
|
4028
|
-
disabled =
|
4029
|
-
|
4030
|
-
|
4031
|
-
|
4032
|
-
|
4023
|
+
var _d = props.type,
|
4024
|
+
type = _d === void 0 ? 'primary' : _d,
|
4025
|
+
_e = props.size,
|
4026
|
+
size = _e === void 0 ? 'large' : _e,
|
4027
|
+
_f = props.inline,
|
4028
|
+
inline = _f === void 0 ? false : _f,
|
4029
|
+
_g = props.loading,
|
4030
|
+
loading = _g === void 0 ? false : _g,
|
4031
|
+
_h = props.disabled,
|
4032
|
+
disabled = _h === void 0 ? false : _h,
|
4033
|
+
_j = props.disableWhenLoading,
|
4034
|
+
disableWhenLoading = _j === void 0 ? true : _j,
|
4035
|
+
_k = props.shape,
|
4036
|
+
shape = _k === void 0 ? 'semi' : _k,
|
4037
|
+
_l = props.halfBorder,
|
4038
|
+
halfBorder = _l === void 0 ? false : _l,
|
4033
4039
|
icon = props.icon,
|
4034
|
-
|
4035
|
-
showTextWhenLoading =
|
4036
|
-
|
4037
|
-
needActive =
|
4038
|
-
|
4039
|
-
style =
|
4040
|
+
_m = props.showTextWhenLoading,
|
4041
|
+
showTextWhenLoading = _m === void 0 ? true : _m,
|
4042
|
+
_o = props.needActive,
|
4043
|
+
needActive = _o === void 0 ? true : _o,
|
4044
|
+
_p = props.style,
|
4045
|
+
style = _p === void 0 ? {} : _p,
|
4040
4046
|
color = props.color,
|
4041
4047
|
bgColor = props.bgColor,
|
4042
4048
|
borderColor = props.borderColor,
|
4043
|
-
|
4044
|
-
className =
|
4045
|
-
|
4046
|
-
children =
|
4049
|
+
_q = props.className,
|
4050
|
+
className = _q === void 0 ? '' : _q,
|
4051
|
+
_r = props.children,
|
4052
|
+
children = _r === void 0 ? null : _r,
|
4047
4053
|
loadingIcon = props.loadingIcon,
|
4048
4054
|
onClick = props.onClick,
|
4049
|
-
onClickDisabled = props.onClickDisabled
|
4055
|
+
onClickDisabled = props.onClickDisabled,
|
4056
|
+
_s = props.coverIconWhenLoading,
|
4057
|
+
coverIconWhenLoading = _s === void 0 ? true : _s;
|
4050
4058
|
var domRef = React.useRef(null);
|
4059
|
+
var prefixCls = React.useContext(GlobalContext).prefixCls;
|
4060
|
+
var prefix = prefixCls + "-button";
|
4051
4061
|
React.useImperativeHandle(ref, function () {
|
4052
4062
|
return {
|
4053
4063
|
dom: domRef.current
|
4054
4064
|
};
|
4055
4065
|
});
|
4056
4066
|
|
4057
|
-
var
|
4067
|
+
var _t = useCustomColor({
|
4058
4068
|
color: color,
|
4059
4069
|
bgColor: bgColor,
|
4060
4070
|
borderColor: borderColor,
|
4061
4071
|
isActive: isActive,
|
4062
|
-
disabled: disabled
|
4072
|
+
disabled: disabled,
|
4073
|
+
halfBorder: halfBorder
|
4063
4074
|
}),
|
4064
|
-
customColorClass =
|
4065
|
-
customColorStyle =
|
4075
|
+
customColorClass = _t.customColorClass,
|
4076
|
+
customColorStyle = _t.customColorStyle;
|
4066
4077
|
|
4067
4078
|
var handleTouchStart = function handleTouchStart() {
|
4068
4079
|
if (needActive && !disabled && !loading) {
|
@@ -4074,37 +4085,32 @@
|
|
4074
4085
|
setActive(false);
|
4075
4086
|
};
|
4076
4087
|
|
4077
|
-
|
4078
|
-
|
4079
|
-
|
4080
|
-
|
4081
|
-
|
4082
|
-
|
4083
|
-
|
4084
|
-
|
4085
|
-
|
4086
|
-
|
4087
|
-
|
4088
|
-
|
4089
|
-
|
4090
|
-
|
4091
|
-
|
4092
|
-
|
4093
|
-
|
4094
|
-
|
4095
|
-
|
4096
|
-
|
4097
|
-
|
4098
|
-
|
4099
|
-
|
4100
|
-
|
4101
|
-
|
4102
|
-
|
4103
|
-
className: cls('btn-text', {
|
4104
|
-
'has-icon': loading || icon
|
4105
|
-
})
|
4106
|
-
}, children) : null);
|
4107
|
-
});
|
4088
|
+
var renderIcon = function renderIcon() {
|
4089
|
+
if (coverIconWhenLoading) {
|
4090
|
+
return loading ? null : icon;
|
4091
|
+
}
|
4092
|
+
|
4093
|
+
return icon;
|
4094
|
+
};
|
4095
|
+
|
4096
|
+
return /*#__PURE__*/React__default["default"].createElement("button", {
|
4097
|
+
type: "button",
|
4098
|
+
ref: domRef,
|
4099
|
+
style: __assign(__assign({}, customColorStyle), style),
|
4100
|
+
className: cls.apply(void 0, __spreadArrays([prefix, prefix + "-type-" + type + " type-" + type, prefix + "-size-" + size + " " + prefix + "-size-" + size + "-is-" + shape + " size-" + size, className, "is-" + shape, system, (_a = {}, _a[prefix + "-inline inline"] = inline, _a[prefix + "-type-" + type + "-disabled disabled"] = disabled, _a.loading = loading, _a[prefix + "-type-" + type + "-active active"] = isActive, _a)], customColorClass)),
|
4101
|
+
onTouchStart: handleTouchStart,
|
4102
|
+
onTouchEnd: handleTouchEnd,
|
4103
|
+
onTouchCancel: handleTouchEnd,
|
4104
|
+
onClick: disabled || loading && disableWhenLoading ? onClickDisabled : onClick
|
4105
|
+
}, icon || loading ? /*#__PURE__*/React__default["default"].createElement("div", {
|
4106
|
+
className: prefix + "-icon btn-icon"
|
4107
|
+
}, renderIcon(), loading && (loadingIcon === void 0 ? /*#__PURE__*/React__default["default"].createElement(Loading, {
|
4108
|
+
className: prefix + "-loading-icon loading-icon",
|
4109
|
+
radius: 6,
|
4110
|
+
type: "circle"
|
4111
|
+
}) : loadingIcon)) : null, (!loading || loading && showTextWhenLoading) && children ? /*#__PURE__*/React__default["default"].createElement("div", {
|
4112
|
+
className: cls(prefix + "-text", prefix + "-text-" + system, 'btn-text', (_b = {}, _b[prefix + "-text-has-icon has-icon"] = loading || icon, _b))
|
4113
|
+
}, children) : null);
|
4108
4114
|
});
|
4109
4115
|
|
4110
4116
|
/**
|
@@ -5562,7 +5568,7 @@
|
|
5562
5568
|
value: [],
|
5563
5569
|
onChange: function onChange() {}
|
5564
5570
|
});
|
5565
|
-
function componentGenerator$
|
5571
|
+
function componentGenerator$8(Comp) {
|
5566
5572
|
return /*#__PURE__*/React.forwardRef(function (props, ref) {
|
5567
5573
|
var _a = props.style,
|
5568
5574
|
style = _a === void 0 ? {} : _a,
|
@@ -5990,7 +5996,7 @@
|
|
5990
5996
|
* @en Checkbox group
|
5991
5997
|
* */
|
5992
5998
|
|
5993
|
-
var Group$2 = componentGenerator$
|
5999
|
+
var Group$2 = componentGenerator$8(Checkbox$1);
|
5994
6000
|
/**
|
5995
6001
|
* 复选框,可用状态下点击切换选择,支持禁用,支持复选项组。
|
5996
6002
|
* @en Checkbox, click to switch selection when available, support disabled status, support checkbox group.
|
@@ -6386,7 +6392,7 @@
|
|
6386
6392
|
});
|
6387
6393
|
});
|
6388
6394
|
|
6389
|
-
function componentGenerator$
|
6395
|
+
function componentGenerator$7(Comp) {
|
6390
6396
|
return /*#__PURE__*/React.forwardRef(function (props, ref) {
|
6391
6397
|
var _a = props.items,
|
6392
6398
|
items = _a === void 0 ? [] : _a,
|
@@ -6504,7 +6510,7 @@
|
|
6504
6510
|
})))));
|
6505
6511
|
});
|
6506
6512
|
}
|
6507
|
-
var Group$1 = componentGenerator$
|
6513
|
+
var Group$1 = componentGenerator$7(Collapse);
|
6508
6514
|
|
6509
6515
|
/**
|
6510
6516
|
* 折叠面板组件,支持手风琴模式。
|
@@ -10170,6 +10176,7 @@
|
|
10170
10176
|
var Options = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
10171
10177
|
var options = props.options,
|
10172
10178
|
useColumn = props.useColumn,
|
10179
|
+
icon = props.icon,
|
10173
10180
|
selectedValue = props.selectedValue,
|
10174
10181
|
defaultSelectedValue = props.defaultSelectedValue,
|
10175
10182
|
multiple = props.multiple;
|
@@ -10250,7 +10257,7 @@
|
|
10250
10257
|
return handleOptionChange(e, op);
|
10251
10258
|
},
|
10252
10259
|
style: minWidthStyle
|
10253
|
-
}, op.label, /*#__PURE__*/React__default["default"].createElement(IconCheck, {
|
10260
|
+
}, op.label, icon !== void 0 ? icon : /*#__PURE__*/React__default["default"].createElement(IconCheck, {
|
10254
10261
|
className: prefixCls + "-dropdown-options-item-icon"
|
10255
10262
|
}));
|
10256
10263
|
}), fakeOpts.map(function (_, i) {
|
@@ -10262,300 +10269,295 @@
|
|
10262
10269
|
}));
|
10263
10270
|
});
|
10264
10271
|
|
10265
|
-
|
10266
|
-
|
10267
|
-
|
10268
|
-
|
10269
|
-
|
10270
|
-
|
10271
|
-
|
10272
|
-
|
10273
|
-
|
10274
|
-
|
10275
|
-
|
10276
|
-
|
10277
|
-
|
10278
|
-
|
10279
|
-
|
10280
|
-
|
10281
|
-
|
10282
|
-
|
10283
|
-
|
10284
|
-
|
10285
|
-
|
10286
|
-
|
10287
|
-
|
10288
|
-
|
10289
|
-
|
10290
|
-
|
10291
|
-
|
10292
|
-
|
10293
|
-
|
10294
|
-
|
10295
|
-
|
10296
|
-
|
10297
|
-
|
10298
|
-
|
10299
|
-
|
10300
|
-
|
10301
|
-
|
10302
|
-
|
10303
|
-
|
10304
|
-
|
10305
|
-
|
10306
|
-
|
10307
|
-
|
10308
|
-
|
10309
|
-
|
10310
|
-
|
10311
|
-
|
10312
|
-
|
10313
|
-
|
10314
|
-
|
10315
|
-
|
10316
|
-
|
10317
|
-
|
10318
|
-
|
10319
|
-
|
10320
|
-
|
10321
|
-
|
10322
|
-
|
10272
|
+
function componentGenerator$6(Comp) {
|
10273
|
+
return /*#__PURE__*/React.forwardRef(function (props, ref) {
|
10274
|
+
var optionsWrapper = React.useRef(null);
|
10275
|
+
var domRef = React.useRef(null);
|
10276
|
+
var _a = props.className,
|
10277
|
+
className = _a === void 0 ? '' : _a,
|
10278
|
+
_b = props.style,
|
10279
|
+
style = _b === void 0 ? {} : _b,
|
10280
|
+
_c = props.options,
|
10281
|
+
options = _c === void 0 ? [] : _c,
|
10282
|
+
_d = props.showDropdown,
|
10283
|
+
showDropdown = _d === void 0 ? false : _d,
|
10284
|
+
_e = props.showMask,
|
10285
|
+
showMask = _e === void 0 ? true : _e,
|
10286
|
+
_f = props.direction,
|
10287
|
+
direction = _f === void 0 ? 'down' : _f,
|
10288
|
+
height = props.height,
|
10289
|
+
_g = props.maxHeight,
|
10290
|
+
maxHeight = _g === void 0 ? 500 : _g,
|
10291
|
+
_h = props.touchToClose,
|
10292
|
+
touchToClose = _h === void 0 ? true : _h,
|
10293
|
+
useColumn = props.useColumn,
|
10294
|
+
optionIcon = props.optionIcon,
|
10295
|
+
multiple = props.multiple,
|
10296
|
+
defaultSelectedValue = props.defaultSelectedValue,
|
10297
|
+
onCancel = props.onCancel,
|
10298
|
+
getAnchorElement = props.getAnchorElement,
|
10299
|
+
isStopTouchEl = props.isStopTouchEl,
|
10300
|
+
getStopTouchElements = props.getStopTouchElements,
|
10301
|
+
_j = props.getScrollContainer,
|
10302
|
+
getScrollContainer = _j === void 0 ? function () {
|
10303
|
+
return optionsWrapper.current;
|
10304
|
+
} : _j,
|
10305
|
+
getPortalContainer = props.getPortalContainer,
|
10306
|
+
_k = props.clickOtherToClose,
|
10307
|
+
clickOtherToClose = _k === void 0 ? true : _k,
|
10308
|
+
_l = props.dropdownAnimationTimeout,
|
10309
|
+
dropdownAnimationTimeout = _l === void 0 ? 300 : _l,
|
10310
|
+
_m = props.dropdownAnimationFunction,
|
10311
|
+
dropdownAnimationFunction = _m === void 0 ? 'cubic-bezier(0.32, 0.96, 0.6, 1)' : _m,
|
10312
|
+
// 坑:ios touchstart会停留300ms 导致点击关闭蒙层后出现点击穿透 触发底部可点区域事件 这里设置更长的timeout规避
|
10313
|
+
// @en In iOS, touchstart will stay for 300ms, resulting in click penetration after clicking to close the mask, triggering the bottom clickable area event, and setting a longer timeout to avoid it
|
10314
|
+
_o = props.maskAnimationTimeout,
|
10315
|
+
// 坑:ios touchstart会停留300ms 导致点击关闭蒙层后出现点击穿透 触发底部可点区域事件 这里设置更长的timeout规避
|
10316
|
+
// @en In iOS, touchstart will stay for 300ms, resulting in click penetration after clicking to close the mask, triggering the bottom clickable area event, and setting a longer timeout to avoid it
|
10317
|
+
maskAnimationTimeout = _o === void 0 ? 500 : _o,
|
10318
|
+
_p = props.maskAnimationFunction,
|
10319
|
+
maskAnimationFunction = _p === void 0 ? 'cubic-bezier(0.32, 0.96, 0.6, 1)' : _p,
|
10320
|
+
_q = props.mountOnEnter,
|
10321
|
+
mountOnEnter = _q === void 0 ? true : _q,
|
10322
|
+
_r = props.unmountOnExit,
|
10323
|
+
unmountOnExit = _r === void 0 ? true : _r,
|
10324
|
+
_s = props.preventBodyScroll,
|
10325
|
+
preventBodyScroll = _s === void 0 ? true : _s,
|
10326
|
+
initialBodyOverflow = props.initialBodyOverflow;
|
10327
|
+
var system = useSystem();
|
10328
|
+
|
10329
|
+
var _t = useWindowSize(),
|
10330
|
+
windowHeight = _t.windowHeight,
|
10331
|
+
windowWidth = _t.windowWidth;
|
10332
|
+
|
10333
|
+
var _u = React.useState({
|
10334
|
+
top: '',
|
10335
|
+
bottom: ''
|
10336
|
+
}),
|
10337
|
+
positionStyle = _u[0],
|
10338
|
+
setPositionStyle = _u[1];
|
10323
10339
|
|
10324
|
-
|
10325
|
-
|
10326
|
-
|
10327
|
-
|
10328
|
-
|
10329
|
-
|
10340
|
+
var _v = React.useState(function () {
|
10341
|
+
var defaultValue = multiple ? [] : 0;
|
10342
|
+
return defaultSelectedValue !== void 0 ? defaultSelectedValue : defaultValue;
|
10343
|
+
}),
|
10344
|
+
innerValue = _v[0],
|
10345
|
+
setInnerValue = _v[1]; // down=0为向上展开,1为向下展开
|
10346
|
+
// @en down=0 is to expand upwards, 1 is to expand downwards
|
10330
10347
|
|
10331
|
-
var _v = React.useState(function () {
|
10332
|
-
var defaultValue = multiple ? [] : 0;
|
10333
|
-
return defaultSelectedValue !== void 0 ? defaultSelectedValue : defaultValue;
|
10334
|
-
}),
|
10335
|
-
innerValue = _v[0],
|
10336
|
-
setInnerValue = _v[1]; // down=0为向上展开,1为向下展开
|
10337
|
-
// @en down=0 is to expand upwards, 1 is to expand downwards
|
10338
10348
|
|
10349
|
+
var _w = React.useState(direction === 'down'),
|
10350
|
+
down = _w[0],
|
10351
|
+
setDown = _w[1];
|
10339
10352
|
|
10340
|
-
|
10341
|
-
|
10342
|
-
|
10353
|
+
var maskHeight = React.useRef(0);
|
10354
|
+
var optionsContainer = React.useRef(null);
|
10355
|
+
var dropdownContainer = React.useRef(null);
|
10343
10356
|
|
10344
|
-
|
10345
|
-
|
10346
|
-
|
10357
|
+
var _x = React.useState(0),
|
10358
|
+
optionsWrapperHeight = _x[0],
|
10359
|
+
setOptionsWrapperHeight = _x[1];
|
10360
|
+
/**
|
10361
|
+
* 判断是否阻止touch事件
|
10362
|
+
* @en Determine whether to block touch events
|
10363
|
+
* */
|
10347
10364
|
|
10348
|
-
var _x = React.useState(0),
|
10349
|
-
optionsWrapperHeight = _x[0],
|
10350
|
-
setOptionsWrapperHeight = _x[1];
|
10351
|
-
/**
|
10352
|
-
* 判断是否阻止touch事件
|
10353
|
-
* @en Determine whether to block touch events
|
10354
|
-
* */
|
10355
10365
|
|
10366
|
+
var ifStopTouch = function ifStopTouch(el) {
|
10367
|
+
var _a;
|
10356
10368
|
|
10357
|
-
|
10358
|
-
|
10369
|
+
if (isStopTouchEl) return isStopTouchEl(el);
|
10370
|
+
var tempEl = el;
|
10371
|
+
var elements = getStopTouchElements ? getStopTouchElements() : [(_a = dropdownContainer.current) === null || _a === void 0 ? void 0 : _a.parentElement];
|
10359
10372
|
|
10360
|
-
|
10361
|
-
|
10362
|
-
|
10373
|
+
for (var i = 0; i < elements.length; i++) {
|
10374
|
+
while (tempEl && elements[i]) {
|
10375
|
+
if (tempEl === elements[i]) {
|
10376
|
+
return true;
|
10377
|
+
}
|
10363
10378
|
|
10364
|
-
|
10365
|
-
while (tempEl && elements[i]) {
|
10366
|
-
if (tempEl === elements[i]) {
|
10367
|
-
return true;
|
10379
|
+
tempEl = tempEl.parentElement;
|
10368
10380
|
}
|
10369
|
-
|
10370
|
-
tempEl = tempEl.parentElement;
|
10371
10381
|
}
|
10372
|
-
}
|
10373
10382
|
|
10374
|
-
|
10375
|
-
|
10376
|
-
|
10377
|
-
usePopupScroll(showDropdown, domRef.current, getScrollContainer);
|
10378
|
-
usePreventBodyScroll(showDropdown, preventBodyScroll, initialBodyOverflow);
|
10379
|
-
React.useEffect(function () {
|
10380
|
-
var _a; // 为0的时候不改变
|
10381
|
-
// @en Does not change when it is 0
|
10383
|
+
return false;
|
10384
|
+
};
|
10382
10385
|
|
10386
|
+
usePopupScroll(showDropdown, domRef.current, getScrollContainer);
|
10387
|
+
usePreventBodyScroll(showDropdown, preventBodyScroll, initialBodyOverflow);
|
10388
|
+
React.useEffect(function () {
|
10389
|
+
var _a; // 为0的时候不改变
|
10390
|
+
// @en Does not change when it is 0
|
10383
10391
|
|
10384
|
-
if (optionsWrapperHeight === 0) return;
|
10385
|
-
var tempEl = getAnchorElement ? getAnchorElement() : (_a = dropdownContainer.current) === null || _a === void 0 ? void 0 : _a.parentElement;
|
10386
10392
|
|
10387
|
-
|
10388
|
-
|
10389
|
-
top: 0
|
10390
|
-
},
|
10391
|
-
bottom = _b.bottom,
|
10392
|
-
top = _b.top;
|
10393
|
+
if (optionsWrapperHeight === 0) return;
|
10394
|
+
var tempEl = getAnchorElement ? getAnchorElement() : (_a = dropdownContainer.current) === null || _a === void 0 ? void 0 : _a.parentElement;
|
10393
10395
|
|
10394
|
-
|
10395
|
-
|
10396
|
-
|
10397
|
-
|
10396
|
+
var _b = (tempEl === null || tempEl === void 0 ? void 0 : tempEl.getBoundingClientRect()) || {
|
10397
|
+
bottom: 0,
|
10398
|
+
top: 0
|
10399
|
+
},
|
10400
|
+
bottom = _b.bottom,
|
10401
|
+
top = _b.top;
|
10398
10402
|
|
10399
|
-
|
10403
|
+
var tempTop = props.top || bottom;
|
10404
|
+
var tempBottom = props.bottom || windowHeight - top;
|
10405
|
+
var tempMaskHeight = windowHeight - tempTop; // 没有指定方向,且空间足够时,或向上展开的空间不够,向下展开
|
10406
|
+
// @en If there is no specified direction and there is enough space, or there is not enough space to expand upward, expand downward
|
10400
10407
|
|
10401
|
-
|
10402
|
-
maskHeight.current = tempMaskHeight;
|
10403
|
-
setPositionStyle({
|
10404
|
-
top: tempTop + "px",
|
10405
|
-
bottom: ''
|
10406
|
-
});
|
10407
|
-
} else {
|
10408
|
-
maskHeight.current = windowHeight - tempBottom;
|
10409
|
-
setPositionStyle({
|
10410
|
-
top: '',
|
10411
|
-
bottom: tempBottom + "px"
|
10412
|
-
});
|
10413
|
-
}
|
10408
|
+
var tempDown = direction !== 'up' && optionsWrapperHeight < tempMaskHeight || optionsWrapperHeight > tempTop;
|
10414
10409
|
|
10415
|
-
|
10416
|
-
|
10417
|
-
|
10418
|
-
|
10419
|
-
|
10420
|
-
|
10410
|
+
if (tempDown) {
|
10411
|
+
maskHeight.current = tempMaskHeight;
|
10412
|
+
setPositionStyle({
|
10413
|
+
top: tempTop + "px",
|
10414
|
+
bottom: ''
|
10415
|
+
});
|
10416
|
+
} else {
|
10417
|
+
maskHeight.current = windowHeight - tempBottom;
|
10418
|
+
setPositionStyle({
|
10419
|
+
top: '',
|
10420
|
+
bottom: tempBottom + "px"
|
10421
|
+
});
|
10422
|
+
}
|
10421
10423
|
|
10422
|
-
|
10423
|
-
|
10424
|
+
setDown(tempDown);
|
10425
|
+
}, [dropdownContainer, optionsWrapperHeight, props.top, props.bottom, Boolean(getAnchorElement), direction, windowHeight]);
|
10426
|
+
/**
|
10427
|
+
* 取消选择
|
10428
|
+
* @en Cancel selection
|
10429
|
+
* */
|
10424
10430
|
|
10425
|
-
|
10426
|
-
|
10427
|
-
}
|
10431
|
+
var handleCancel = React.useCallback(function (e) {
|
10432
|
+
var optionsWrapperDom = optionsWrapper.current;
|
10428
10433
|
|
10429
|
-
|
10434
|
+
if (!e || !optionsWrapperDom) {
|
10435
|
+
return;
|
10436
|
+
}
|
10430
10437
|
|
10431
|
-
|
10432
|
-
onCancel();
|
10433
|
-
}
|
10438
|
+
var target = e.target;
|
10434
10439
|
|
10435
|
-
|
10436
|
-
|
10437
|
-
|
10438
|
-
* 当面板放下时,给body添加事件监听,面板收起时,移除
|
10439
|
-
* @en When the panel is down, add an event listener to the body, and when the panel is retracted, remove it
|
10440
|
-
* */
|
10440
|
+
if (!optionsWrapperDom.contains(target) && !ifStopTouch(target)) {
|
10441
|
+
onCancel();
|
10442
|
+
}
|
10441
10443
|
|
10442
|
-
|
10443
|
-
|
10444
|
-
|
10444
|
+
e.stopPropagation();
|
10445
|
+
}, [ifStopTouch, onCancel]);
|
10446
|
+
/**
|
10447
|
+
* 当面板放下时,给body添加事件监听,面板收起时,移除
|
10448
|
+
* @en When the panel is down, add an event listener to the body, and when the panel is retracted, remove it
|
10449
|
+
* */
|
10445
10450
|
|
10446
|
-
|
10447
|
-
|
10448
|
-
|
10451
|
+
React.useEffect(function () {
|
10452
|
+
var needBind = showDropdown && clickOtherToClose;
|
10453
|
+
var event = touchToClose ? 'touchstart' : 'click';
|
10449
10454
|
|
10450
|
-
return function () {
|
10451
10455
|
if (needBind) {
|
10452
|
-
document.
|
10456
|
+
document.addEventListener(event, handleCancel);
|
10453
10457
|
}
|
10454
|
-
};
|
10455
|
-
}, [showDropdown, clickOtherToClose, handleCancel]);
|
10456
|
-
React.useEffect(function () {
|
10457
|
-
nextTick(function () {
|
10458
|
-
if (height !== void 0) {
|
10459
|
-
// 受控模式下,完全交由外层控制
|
10460
|
-
// @en In controlled mode, it is completely controlled by the outer layer
|
10461
|
-
setOptionsWrapperHeight(height);
|
10462
|
-
} else {
|
10463
|
-
if (!optionsContainer.current) return;
|
10464
|
-
if (!showDropdown) setOptionsWrapperHeight(0);else {
|
10465
|
-
setOptionsWrapperHeight(optionsContainer.current.getBoundingClientRect().height);
|
10466
|
-
}
|
10467
|
-
}
|
10468
|
-
});
|
10469
|
-
}, [showDropdown, options.length, height]);
|
10470
|
-
React.useImperativeHandle(ref, function () {
|
10471
|
-
return {
|
10472
|
-
dom: domRef.current
|
10473
|
-
};
|
10474
|
-
});
|
10475
10458
|
|
10476
|
-
|
10477
|
-
|
10478
|
-
|
10479
|
-
|
10480
|
-
|
10481
|
-
|
10482
|
-
|
10483
|
-
|
10459
|
+
return function () {
|
10460
|
+
if (needBind) {
|
10461
|
+
document.removeEventListener(event, handleCancel);
|
10462
|
+
}
|
10463
|
+
};
|
10464
|
+
}, [showDropdown, clickOtherToClose, handleCancel]);
|
10465
|
+
React.useEffect(function () {
|
10466
|
+
nextTick(function () {
|
10467
|
+
if (height !== void 0) {
|
10468
|
+
// 受控模式下,完全交由外层控制
|
10469
|
+
// @en In controlled mode, it is completely controlled by the outer layer
|
10470
|
+
setOptionsWrapperHeight(height);
|
10471
|
+
} else {
|
10472
|
+
if (!optionsContainer.current) return;
|
10473
|
+
if (!showDropdown) setOptionsWrapperHeight(0);else {
|
10474
|
+
setOptionsWrapperHeight(optionsContainer.current.getBoundingClientRect().height);
|
10475
|
+
}
|
10476
|
+
}
|
10477
|
+
});
|
10478
|
+
}, [showDropdown, options.length, height]);
|
10479
|
+
React.useImperativeHandle(ref, function () {
|
10480
|
+
return {
|
10481
|
+
dom: domRef.current
|
10482
|
+
};
|
10484
10483
|
});
|
10485
|
-
}
|
10486
10484
|
|
10487
|
-
|
10488
|
-
|
10489
|
-
|
10490
|
-
|
10491
|
-
|
10492
|
-
|
10493
|
-
|
10494
|
-
|
10495
|
-
|
10496
|
-
|
10497
|
-
onOptionChange: function onOptionChange(vals, op) {
|
10498
|
-
var _a;
|
10485
|
+
function getOptionsStyle() {
|
10486
|
+
var trans = down ? 'translateY(-100%)' : 'translateY(100%)';
|
10487
|
+
return getStyleWithVendor({
|
10488
|
+
// height: `${optionsWrapperHeight}px`,
|
10489
|
+
transform: optionsWrapperHeight ? '' : trans,
|
10490
|
+
transition: "transform " + dropdownAnimationTimeout + "ms " + dropdownAnimationFunction,
|
10491
|
+
overflow: optionsWrapperHeight > maxHeight || height ? 'auto' : 'hidden',
|
10492
|
+
maxHeight: maxHeight + "px"
|
10493
|
+
});
|
10494
|
+
}
|
10499
10495
|
|
10500
|
-
|
10501
|
-
|
10502
|
-
|
10503
|
-
|
10504
|
-
|
10505
|
-
|
10506
|
-
|
10507
|
-
|
10508
|
-
|
10496
|
+
function renderInnerOptions() {
|
10497
|
+
var value = props.selectedValue !== void 0 ? props.selectedValue : innerValue;
|
10498
|
+
var optionProps = {
|
10499
|
+
options: options,
|
10500
|
+
useColumn: useColumn,
|
10501
|
+
icon: optionIcon,
|
10502
|
+
selectedValue: value,
|
10503
|
+
multiple: props.multiple,
|
10504
|
+
onOptionClick: props.onOptionClick,
|
10505
|
+
onOptionChange: function onOptionChange(vals, op) {
|
10506
|
+
var _a;
|
10509
10507
|
|
10510
|
-
|
10511
|
-
|
10512
|
-
|
10513
|
-
|
10514
|
-
|
10508
|
+
setInnerValue(vals);
|
10509
|
+
(_a = props.onOptionChange) === null || _a === void 0 ? void 0 : _a.call(props, vals, op);
|
10510
|
+
}
|
10511
|
+
};
|
10512
|
+
return /*#__PURE__*/React__default["default"].createElement(Comp, __assign({}, optionProps));
|
10513
|
+
}
|
10515
10514
|
|
10516
|
-
|
10517
|
-
|
10518
|
-
|
10519
|
-
|
10520
|
-
|
10521
|
-
|
10522
|
-
|
10523
|
-
|
10524
|
-
|
10525
|
-
|
10526
|
-
|
10527
|
-
|
10528
|
-
|
10529
|
-
|
10530
|
-
|
10531
|
-
|
10532
|
-
|
10533
|
-
|
10534
|
-
|
10535
|
-
|
10536
|
-
|
10537
|
-
|
10538
|
-
|
10539
|
-
|
10540
|
-
|
10541
|
-
|
10542
|
-
|
10543
|
-
|
10544
|
-
|
10545
|
-
|
10546
|
-
|
10547
|
-
|
10548
|
-
|
10549
|
-
|
10550
|
-
|
10551
|
-
|
10552
|
-
|
10553
|
-
|
10554
|
-
|
10555
|
-
|
10556
|
-
|
10515
|
+
return /*#__PURE__*/React__default["default"].createElement(ContextLayout, null, function (_a) {
|
10516
|
+
var prefixCls = _a.prefixCls;
|
10517
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
10518
|
+
ref: dropdownContainer
|
10519
|
+
}, /*#__PURE__*/React__default["default"].createElement(Portal, {
|
10520
|
+
getContainer: getPortalContainer
|
10521
|
+
}, /*#__PURE__*/React__default["default"].createElement(reactTransitionGroup.CSSTransition, {
|
10522
|
+
in: showDropdown,
|
10523
|
+
timeout: Math.max(dropdownAnimationTimeout, maskAnimationTimeout),
|
10524
|
+
onEnter: function onEnter(el) {
|
10525
|
+
el.style.visibility = 'visible';
|
10526
|
+
},
|
10527
|
+
onExited: function onExited(el) {
|
10528
|
+
el.style.visibility = 'hidden';
|
10529
|
+
},
|
10530
|
+
mountOnEnter: mountOnEnter,
|
10531
|
+
unmountOnExit: unmountOnExit
|
10532
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
10533
|
+
className: cls(prefixCls + "-dropdown all-border-box", system, className, {
|
10534
|
+
'drop-up': !down
|
10535
|
+
}),
|
10536
|
+
ref: domRef,
|
10537
|
+
style: __assign(__assign({
|
10538
|
+
height: maskHeight.current + "px",
|
10539
|
+
maxWidth: windowWidth + "px"
|
10540
|
+
}, style), positionStyle)
|
10541
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
10542
|
+
className: cls(prefixCls + "-dropdown-options"),
|
10543
|
+
ref: optionsWrapper,
|
10544
|
+
style: getOptionsStyle()
|
10545
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
10546
|
+
className: cls(prefixCls + "-dropdown-options-container"),
|
10547
|
+
ref: optionsContainer
|
10548
|
+
}, props.children || renderInnerOptions(), props.extraNode)), showMask && /*#__PURE__*/React__default["default"].createElement("div", {
|
10549
|
+
className: cls(prefixCls + "-dropdown-mask", {
|
10550
|
+
'is-show': optionsWrapperHeight
|
10551
|
+
}),
|
10552
|
+
style: {
|
10553
|
+
transition: "opacity " + maskAnimationTimeout + "ms " + maskAnimationFunction
|
10554
|
+
}
|
10555
|
+
})))));
|
10556
|
+
});
|
10557
10557
|
});
|
10558
|
-
}
|
10558
|
+
}
|
10559
|
+
|
10560
|
+
var Dropdown = componentGenerator$6(Options);
|
10559
10561
|
/**
|
10560
10562
|
* 下拉面板,展示供选择的选择项
|
10561
10563
|
* @en Dropdown panel, showing options to choose from
|
@@ -10703,251 +10705,271 @@
|
|
10703
10705
|
});
|
10704
10706
|
}
|
10705
10707
|
|
10706
|
-
|
10707
|
-
|
10708
|
-
|
10709
|
-
|
10710
|
-
|
10711
|
-
|
10712
|
-
|
10713
|
-
|
10714
|
-
|
10715
|
-
|
10716
|
-
|
10717
|
-
|
10718
|
-
|
10719
|
-
|
10720
|
-
|
10721
|
-
|
10722
|
-
|
10723
|
-
|
10724
|
-
|
10725
|
-
|
10726
|
-
|
10727
|
-
|
10728
|
-
|
10729
|
-
|
10730
|
-
|
10731
|
-
|
10732
|
-
|
10733
|
-
|
10734
|
-
|
10735
|
-
|
10736
|
-
|
10737
|
-
|
10738
|
-
renderSelectLabel = props.renderSelectLabel,
|
10739
|
-
onValuesChange = props.onValuesChange,
|
10740
|
-
onSelectChange = props.onSelectChange,
|
10741
|
-
onDropdownChange = props.onDropdownChange,
|
10742
|
-
_k = props.getFormattedOptions,
|
10743
|
-
getFormattedOptions$1 = _k === void 0 ? getFormattedOptions : _k,
|
10744
|
-
children = props.children,
|
10745
|
-
extraForDropdown = props.extraForDropdown;
|
10746
|
-
|
10747
|
-
var _l = React.useContext(GlobalContext),
|
10748
|
-
prefixCls = _l.prefixCls,
|
10749
|
-
locale = _l.locale;
|
10708
|
+
function componentGenerator$5(Comp) {
|
10709
|
+
return /*#__PURE__*/React.forwardRef(function (props, ref) {
|
10710
|
+
var _a = props.className,
|
10711
|
+
className = _a === void 0 ? '' : _a,
|
10712
|
+
_b = props.style,
|
10713
|
+
style = _b === void 0 ? {} : _b,
|
10714
|
+
_c = props.options,
|
10715
|
+
options = _c === void 0 ? [] : _c,
|
10716
|
+
_d = props.disabled,
|
10717
|
+
disabled = _d === void 0 ? [] : _d,
|
10718
|
+
_e = props.selectTips,
|
10719
|
+
selectTips = _e === void 0 ? [] : _e,
|
10720
|
+
values = props.values,
|
10721
|
+
_f = props.defaultValues,
|
10722
|
+
defaultValues = _f === void 0 ? [] : _f,
|
10723
|
+
icon = props.icon,
|
10724
|
+
_g = props.chooseAndClose,
|
10725
|
+
chooseAndClose = _g === void 0 ? true : _g,
|
10726
|
+
selectIndex = props.selectIndex,
|
10727
|
+
_h = props.defaultSelectIndex,
|
10728
|
+
defaultSelectIndex = _h === void 0 ? 0 : _h,
|
10729
|
+
showDropdown = props.showDropdown,
|
10730
|
+
_j = props.defaultShowDropdown,
|
10731
|
+
defaultShowDropdown = _j === void 0 ? false : _j,
|
10732
|
+
onValuesChange = props.onValuesChange,
|
10733
|
+
onSelectChange = props.onSelectChange,
|
10734
|
+
onDropdownChange = props.onDropdownChange,
|
10735
|
+
_k = props.getFormattedOptions,
|
10736
|
+
getFormattedOptions$1 = _k === void 0 ? getFormattedOptions : _k,
|
10737
|
+
getContainer = props.getContainer,
|
10738
|
+
children = props.children,
|
10739
|
+
extraForDropdown = props.extraForDropdown;
|
10750
10740
|
|
10751
|
-
|
10752
|
-
|
10753
|
-
|
10741
|
+
var _l = React.useContext(GlobalContext),
|
10742
|
+
prefixCls = _l.prefixCls,
|
10743
|
+
locale = _l.locale;
|
10754
10744
|
|
10755
|
-
|
10756
|
-
|
10757
|
-
|
10745
|
+
var _m = React.useState(defaultValues),
|
10746
|
+
innerValues = _m[0],
|
10747
|
+
setInnerValues = _m[1];
|
10758
10748
|
|
10759
|
-
|
10749
|
+
var _o = React.useState(0),
|
10750
|
+
defaultTop = _o[0],
|
10751
|
+
setDefaultTop = _o[1];
|
10760
10752
|
|
10761
|
-
|
10762
|
-
innerShowDropdown = _p[0],
|
10763
|
-
setInnerShowDropdown = _p[1];
|
10753
|
+
var currentValues = values !== void 0 ? values : innerValues;
|
10764
10754
|
|
10765
|
-
|
10755
|
+
var _p = React.useState(defaultShowDropdown),
|
10756
|
+
innerShowDropdown = _p[0],
|
10757
|
+
setInnerShowDropdown = _p[1];
|
10766
10758
|
|
10767
|
-
|
10768
|
-
innerSelectedIndex = _q[0],
|
10769
|
-
setInnerSelectedIndex = _q[1];
|
10759
|
+
var dropdownShown = showDropdown !== void 0 ? showDropdown : innerShowDropdown;
|
10770
10760
|
|
10771
|
-
|
10772
|
-
|
10773
|
-
|
10774
|
-
var defaultOpItem = {
|
10775
|
-
label: locale === null || locale === void 0 ? void 0 : locale.DropdownMenu.select,
|
10776
|
-
value: -1
|
10777
|
-
};
|
10778
|
-
/**
|
10779
|
-
* 下拉框的容器
|
10780
|
-
* @en Dropdown container
|
10781
|
-
*/
|
10761
|
+
var _q = React.useState(defaultSelectIndex),
|
10762
|
+
innerSelectedIndex = _q[0],
|
10763
|
+
setInnerSelectedIndex = _q[1];
|
10782
10764
|
|
10783
|
-
|
10784
|
-
|
10785
|
-
|
10786
|
-
|
10765
|
+
var selectedIndex = selectIndex !== void 0 ? selectIndex : innerSelectedIndex;
|
10766
|
+
var selectWrapper = React.useRef(null);
|
10767
|
+
var domRef = React.useRef(null);
|
10768
|
+
var defaultOpItem = {
|
10769
|
+
label: locale === null || locale === void 0 ? void 0 : locale.DropdownMenu.select,
|
10770
|
+
value: -1
|
10771
|
+
};
|
10772
|
+
/**
|
10773
|
+
* 更新选项数组和选择情况
|
10774
|
+
* @en Update options list and selection
|
10775
|
+
*/
|
10787
10776
|
|
10788
|
-
|
10789
|
-
|
10790
|
-
|
10791
|
-
|
10792
|
-
|
10793
|
-
|
10777
|
+
var formattedOptions = React.useMemo(function () {
|
10778
|
+
return getFormattedOptions$1(options, currentValues);
|
10779
|
+
}, [options, currentValues]).formattedOptions;
|
10780
|
+
var selectedOptions = React.useMemo(function () {
|
10781
|
+
return formattedOptions.map(function (ops, index) {
|
10782
|
+
if (props.multiple) {
|
10783
|
+
var value_1 = currentValues[index] || [];
|
10784
|
+
var opItems = ops.reduce(function (acc, op) {
|
10785
|
+
return __spreadArrays(acc, value_1.includes(op.value) ? [op] : []);
|
10786
|
+
}, []);
|
10787
|
+
return opItems.length ? opItems : [defaultOpItem];
|
10788
|
+
}
|
10794
10789
|
|
10795
|
-
var formattedOptions = React.useMemo(function () {
|
10796
|
-
return getFormattedOptions$1(options, currentValues);
|
10797
|
-
}, [options, currentValues]).formattedOptions;
|
10798
|
-
var selectedOptions = React.useMemo(function () {
|
10799
|
-
return formattedOptions.map(function (ops, index) {
|
10800
|
-
return ops.find(function (op) {
|
10801
10790
|
var value = currentValues[index];
|
10802
|
-
return
|
10803
|
-
|
10804
|
-
|
10805
|
-
|
10806
|
-
|
10807
|
-
|
10808
|
-
|
10809
|
-
|
10791
|
+
return ops.find(function (op) {
|
10792
|
+
return op.value === value;
|
10793
|
+
}) || ops[0];
|
10794
|
+
});
|
10795
|
+
}, [formattedOptions, currentValues, props.multiple]);
|
10796
|
+
/**
|
10797
|
+
* 当下拉框的状态变化
|
10798
|
+
* @en When the state of the dropdown box changes
|
10799
|
+
*/
|
10810
10800
|
|
10811
|
-
|
10812
|
-
|
10813
|
-
|
10814
|
-
|
10801
|
+
var handleShowDropdownChange = function handleShowDropdownChange(show, index) {
|
10802
|
+
onDropdownChange && onDropdownChange(show, index);
|
10803
|
+
setInnerShowDropdown(show);
|
10804
|
+
};
|
10815
10805
|
|
10816
|
-
|
10817
|
-
|
10818
|
-
|
10819
|
-
|
10806
|
+
var handleSelectedIndexChange = function handleSelectedIndexChange(idx) {
|
10807
|
+
setInnerSelectedIndex(idx);
|
10808
|
+
onSelectChange === null || onSelectChange === void 0 ? void 0 : onSelectChange(idx);
|
10809
|
+
};
|
10820
10810
|
|
10821
|
-
|
10822
|
-
|
10823
|
-
|
10811
|
+
var handleValuesChange = function handleValuesChange(val) {
|
10812
|
+
var newValue = __spreadArrays(currentValues); // 级联情况下 selectedIndex 之后的选项值重置
|
10813
|
+
// @en Option values are reset after selectedIndex in case of cascade
|
10824
10814
|
|
10825
10815
|
|
10826
|
-
|
10827
|
-
|
10828
|
-
|
10816
|
+
if (isCascadeArray(options)) {
|
10817
|
+
newValue = newValue.slice(0, selectedIndex);
|
10818
|
+
}
|
10829
10819
|
|
10830
|
-
|
10831
|
-
|
10832
|
-
|
10833
|
-
|
10834
|
-
|
10835
|
-
|
10836
|
-
|
10837
|
-
|
10838
|
-
|
10820
|
+
newValue[selectedIndex] = val;
|
10821
|
+
newValue = getFormattedOptions$1(options, newValue).formattedValue;
|
10822
|
+
setInnerValues(newValue);
|
10823
|
+
onValuesChange === null || onValuesChange === void 0 ? void 0 : onValuesChange(newValue);
|
10824
|
+
};
|
10825
|
+
/**
|
10826
|
+
* 处理选择框的点击事件
|
10827
|
+
* @en Handle click event of dropdown box
|
10828
|
+
*/
|
10839
10829
|
|
10840
10830
|
|
10841
|
-
|
10842
|
-
|
10831
|
+
var handleSelectClick = function handleSelectClick(idx) {
|
10832
|
+
if (disabled[idx]) return;
|
10843
10833
|
|
10844
|
-
|
10845
|
-
|
10846
|
-
|
10847
|
-
|
10848
|
-
|
10849
|
-
|
10850
|
-
|
10851
|
-
|
10852
|
-
|
10853
|
-
|
10854
|
-
|
10834
|
+
if (Number(idx) === selectedIndex) {
|
10835
|
+
handleShowDropdownChange(!dropdownShown, idx);
|
10836
|
+
} else {
|
10837
|
+
handleSelectedIndexChange(idx);
|
10838
|
+
if (!dropdownShown) handleShowDropdownChange(true, idx);
|
10839
|
+
}
|
10840
|
+
};
|
10841
|
+
/**
|
10842
|
+
* 判断是否为当前实例下的选择框
|
10843
|
+
* @en Determine whether it is the dropdown box under the current instance
|
10844
|
+
*/
|
10855
10845
|
|
10856
10846
|
|
10857
|
-
|
10858
|
-
|
10859
|
-
|
10860
|
-
|
10847
|
+
var isCurrentSelectEl = function isCurrentSelectEl(target) {
|
10848
|
+
var isStopTouchEl = (extraForDropdown || {}).isStopTouchEl;
|
10849
|
+
return isRefDom(target, selectWrapper) && isClassNameDom(target, 'select-item') || (isStopTouchEl === null || isStopTouchEl === void 0 ? void 0 : isStopTouchEl(target)) || false;
|
10850
|
+
};
|
10861
10851
|
|
10862
|
-
|
10863
|
-
|
10864
|
-
|
10852
|
+
React.useImperativeHandle(ref, function () {
|
10853
|
+
return {
|
10854
|
+
dom: domRef.current
|
10855
|
+
};
|
10856
|
+
});
|
10857
|
+
React.useEffect(function () {
|
10858
|
+
var defaultContainer = selectWrapper.current;
|
10859
|
+
var container = getContainer ? getContainer() || defaultContainer : defaultContainer;
|
10860
|
+
setDefaultTop((container === null || container === void 0 ? void 0 : container.getBoundingClientRect().bottom) || 0);
|
10861
|
+
}, [getContainer, dropdownShown]);
|
10862
|
+
|
10863
|
+
var onCancel = props.onCancel || function () {
|
10864
|
+
return handleShowDropdownChange(false);
|
10865
10865
|
};
|
10866
|
-
});
|
10867
|
-
React.useEffect(function () {
|
10868
|
-
var _a;
|
10869
10866
|
|
10870
|
-
|
10871
|
-
|
10867
|
+
var dropdownCommonProps = __assign(__assign({
|
10868
|
+
showDropdown: dropdownShown,
|
10869
|
+
top: (extraForDropdown === null || extraForDropdown === void 0 ? void 0 : extraForDropdown.top) || defaultTop,
|
10870
|
+
onCancel: onCancel
|
10871
|
+
}, extraForDropdown || {}), {
|
10872
|
+
isStopTouchEl: isCurrentSelectEl
|
10873
|
+
});
|
10872
10874
|
|
10873
|
-
|
10874
|
-
|
10875
|
-
|
10875
|
+
var renderSelectedLabel = function renderSelectedLabel(op, index) {
|
10876
|
+
if (props.multiple === true) {
|
10877
|
+
var multipleOp = op || [];
|
10878
|
+
return props.renderSelectLabel ? props.renderSelectLabel(multipleOp, index) : /*#__PURE__*/React__default["default"].createElement("div", {
|
10879
|
+
className: cls(prefixCls + "-select-item-label-text")
|
10880
|
+
}, multipleOp.map(function (item) {
|
10881
|
+
return item.label;
|
10882
|
+
}).join(','));
|
10883
|
+
}
|
10876
10884
|
|
10877
|
-
|
10878
|
-
|
10879
|
-
|
10880
|
-
|
10881
|
-
|
10882
|
-
isStopTouchEl: isCurrentSelectEl
|
10883
|
-
});
|
10885
|
+
var singleOp = op || [];
|
10886
|
+
return props.renderSelectLabel ? props.renderSelectLabel(singleOp, index) : /*#__PURE__*/React__default["default"].createElement("div", {
|
10887
|
+
className: cls(prefixCls + "-select-item-label-text")
|
10888
|
+
}, singleOp.label);
|
10889
|
+
};
|
10884
10890
|
|
10885
|
-
return /*#__PURE__*/React__default["default"].createElement("div", {
|
10886
|
-
ref: domRef,
|
10887
|
-
className: cls(prefixCls + "-dropdown-menu all-border-box " + (dropdownShown ? 'show' : ''), className),
|
10888
|
-
style: style
|
10889
|
-
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
10890
|
-
className: cls(prefixCls + "-select"),
|
10891
|
-
ref: selectWrapper
|
10892
|
-
}, selectedOptions.map(function (op, index) {
|
10893
|
-
var tip = selectTips[index] || '';
|
10894
10891
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
10895
|
-
|
10896
|
-
|
10897
|
-
|
10892
|
+
ref: domRef,
|
10893
|
+
className: cls(prefixCls + "-dropdown-menu all-border-box", className, {
|
10894
|
+
show: dropdownShown
|
10898
10895
|
}),
|
10899
|
-
|
10900
|
-
|
10901
|
-
|
10902
|
-
|
10903
|
-
|
10904
|
-
|
10905
|
-
|
10906
|
-
|
10907
|
-
|
10908
|
-
|
10909
|
-
|
10910
|
-
|
10911
|
-
|
10912
|
-
|
10913
|
-
|
10914
|
-
|
10915
|
-
|
10916
|
-
|
10917
|
-
|
10918
|
-
|
10919
|
-
|
10920
|
-
|
10896
|
+
style: style
|
10897
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
10898
|
+
className: cls(prefixCls + "-select"),
|
10899
|
+
ref: selectWrapper
|
10900
|
+
}, selectedOptions.map(function (op, index) {
|
10901
|
+
var tip = selectTips[index] || '';
|
10902
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
10903
|
+
className: cls(prefixCls + "-select-item", {
|
10904
|
+
'is-disabled': disabled[index],
|
10905
|
+
'is-selected': dropdownShown && selectedIndex === index
|
10906
|
+
}),
|
10907
|
+
key: index,
|
10908
|
+
"data-idx": index,
|
10909
|
+
onClick: function onClick() {
|
10910
|
+
return handleSelectClick(index);
|
10911
|
+
}
|
10912
|
+
}, tip.length > 0 && /*#__PURE__*/React__default["default"].createElement("span", {
|
10913
|
+
className: cls(prefixCls + "-select-item-tip")
|
10914
|
+
}, tip), /*#__PURE__*/React__default["default"].createElement("div", {
|
10915
|
+
className: cls(prefixCls + "-select-item-label")
|
10916
|
+
}, renderSelectedLabel(op, index), icon === void 0 ? /*#__PURE__*/React__default["default"].createElement(IconTriDown, {
|
10917
|
+
className: cls(prefixCls + "-select-item-icon", {
|
10918
|
+
'is-show': dropdownShown && selectedIndex === index
|
10919
|
+
})
|
10920
|
+
}) : icon));
|
10921
|
+
}), props.multiple === true ? /*#__PURE__*/React__default["default"].createElement(Comp, __assign({}, __assign(__assign({
|
10922
|
+
multiple: true,
|
10923
|
+
options: formattedOptions[selectedIndex] || [],
|
10924
|
+
selectedValue: currentValues[selectedIndex] || [],
|
10925
|
+
onOptionClick: function onOptionClick(selected, val, op) {
|
10926
|
+
var _a;
|
10921
10927
|
|
10922
|
-
|
10923
|
-
|
10924
|
-
|
10925
|
-
|
10928
|
+
(_a = props.onOptionClick) === null || _a === void 0 ? void 0 : _a.call(props, selected, val, op, selectedIndex);
|
10929
|
+
},
|
10930
|
+
onOptionChange: function onOptionChange(val, op) {
|
10931
|
+
var _a;
|
10926
10932
|
|
10927
|
-
|
10928
|
-
|
10929
|
-
|
10930
|
-
|
10931
|
-
|
10932
|
-
|
10933
|
-
|
10934
|
-
|
10935
|
-
|
10933
|
+
(_a = props.onOptionChange) === null || _a === void 0 ? void 0 : _a.call(props, val, op, selectedIndex);
|
10934
|
+
handleValuesChange(val);
|
10935
|
+
}
|
10936
|
+
}, dropdownCommonProps), {
|
10937
|
+
children: children
|
10938
|
+
}))) : /*#__PURE__*/React__default["default"].createElement(Comp, __assign({}, __assign(__assign({
|
10939
|
+
multiple: props.multiple,
|
10940
|
+
options: formattedOptions[selectedIndex] || [],
|
10941
|
+
selectedValue: currentValues[selectedIndex] || 0,
|
10942
|
+
onOptionClick: function onOptionClick(val, op) {
|
10943
|
+
var _a;
|
10936
10944
|
|
10937
|
-
|
10945
|
+
(_a = props.onOptionClick) === null || _a === void 0 ? void 0 : _a.call(props, val, op, selectedIndex);
|
10938
10946
|
|
10939
|
-
|
10940
|
-
|
10947
|
+
if (chooseAndClose) {
|
10948
|
+
handleShowDropdownChange(false, selectedIndex);
|
10949
|
+
}
|
10950
|
+
},
|
10951
|
+
onOptionChange: function onOptionChange(val, op) {
|
10952
|
+
var _a;
|
10953
|
+
|
10954
|
+
(_a = props.onOptionChange) === null || _a === void 0 ? void 0 : _a.call(props, val, op, selectedIndex);
|
10955
|
+
handleValuesChange(val);
|
10941
10956
|
}
|
10942
|
-
},
|
10943
|
-
|
10944
|
-
|
10957
|
+
}, dropdownCommonProps), {
|
10958
|
+
children: children
|
10959
|
+
})))));
|
10960
|
+
});
|
10961
|
+
}
|
10945
10962
|
|
10946
|
-
|
10947
|
-
|
10948
|
-
|
10949
|
-
|
10950
|
-
|
10963
|
+
/**
|
10964
|
+
* 下拉选择组件,点击选择器(select)展开下拉框(dropdown),展示选择项(options),兼容多个选择器的情况。
|
10965
|
+
* @en Dropdown component, click the selector (select) to expand the dropdown box (dropdown), display the options (options), compatible with multiple selectors.
|
10966
|
+
* @type 导航
|
10967
|
+
* @type_en Navigation
|
10968
|
+
* @name 下拉选择菜单
|
10969
|
+
* @name_en DropdownMenu
|
10970
|
+
*/
|
10971
|
+
|
10972
|
+
var DropdownMenu = componentGenerator$5(Dropdown$1);
|
10951
10973
|
|
10952
10974
|
var isBrowser$1 = function isBrowser() {
|
10953
10975
|
return typeof window !== 'undefined' && typeof document !== 'undefined';
|
@@ -12473,6 +12495,34 @@
|
|
12473
12495
|
offset: offset,
|
12474
12496
|
threshold: threshold
|
12475
12497
|
}, true);
|
12498
|
+
},
|
12499
|
+
|
12500
|
+
/**
|
12501
|
+
* 重置元素初始可见态为false,并重新对元素可见度发起检测,优先级低于disabled(通常用在对ShowMonitor内部元素变化时发起的重新监听)
|
12502
|
+
* @en Reset the initial visible state of the element to false, and re-detect the visibility of the element, the priority is lower than 'disabled'(Usually used to re-listen when elements inside ShowMonitor change)
|
12503
|
+
*/
|
12504
|
+
flushVisibleStatus: function flushVisibleStatus() {
|
12505
|
+
isVisible.current = false;
|
12506
|
+
|
12507
|
+
if (isSupportNativeApi && io.current && domRef.current) {
|
12508
|
+
disabled ? io.current.unobserve(domRef.current) : io.current.observe(domRef.current);
|
12509
|
+
} else if (listener.current) {
|
12510
|
+
var key = wrapperKey.current;
|
12511
|
+
|
12512
|
+
if (once && (onOnceEmittedListeners === null || onOnceEmittedListeners === void 0 ? void 0 : onOnceEmittedListeners[key])) {
|
12513
|
+
onOnceEmittedListeners[key] = onOnceEmittedListeners[key].filter(function (emitListener) {
|
12514
|
+
return emitListener !== listener.current;
|
12515
|
+
});
|
12516
|
+
}
|
12517
|
+
|
12518
|
+
if (!disabled && !listeners[key].find(function (_listener) {
|
12519
|
+
return _listener === listener.current;
|
12520
|
+
})) {
|
12521
|
+
listeners[key].push(listener.current);
|
12522
|
+
}
|
12523
|
+
|
12524
|
+
!disabled && _checkVisible(listener.current);
|
12525
|
+
}
|
12476
12526
|
}
|
12477
12527
|
};
|
12478
12528
|
});
|
@@ -13048,7 +13098,7 @@
|
|
13048
13098
|
});
|
13049
13099
|
};
|
13050
13100
|
|
13051
|
-
var handleChange = function handleChange(event) {
|
13101
|
+
var handleChange = function handleChange(event, fromAdapter) {
|
13052
13102
|
var files = __spreadArrays(event.target.files || []).filter(function (file) {
|
13053
13103
|
// 过滤maxSize
|
13054
13104
|
if (maxSize && file.size > maxSize * 1024) {
|
@@ -13058,7 +13108,11 @@
|
|
13058
13108
|
|
13059
13109
|
return true;
|
13060
13110
|
}) || [];
|
13061
|
-
|
13111
|
+
|
13112
|
+
if (!fromAdapter) {
|
13113
|
+
event.target.value = '';
|
13114
|
+
} // 截断limit
|
13115
|
+
|
13062
13116
|
|
13063
13117
|
if (limit !== 0 && files.length + images.length > limit) {
|
13064
13118
|
onLimitExceed && onLimitExceed(files);
|
@@ -13072,7 +13126,7 @@
|
|
13072
13126
|
var res = parseFiles.map(function (url, index) {
|
13073
13127
|
return {
|
13074
13128
|
url: url,
|
13075
|
-
status: upload ? 'loading' : 'loaded',
|
13129
|
+
status: typeof upload === 'function' ? 'loading' : 'loaded',
|
13076
13130
|
file: files[index]
|
13077
13131
|
};
|
13078
13132
|
});
|
@@ -13085,11 +13139,12 @@
|
|
13085
13139
|
var propsImageLength_1 = images.length;
|
13086
13140
|
files.forEach(function (_file, index) {
|
13087
13141
|
upload(cacheRes[propsImageLength_1 + index]).then(function (data) {
|
13088
|
-
cacheRes[propsImageLength_1 + index] = __assign(__assign({}, cacheRes[propsImageLength_1 + index]), data)
|
13142
|
+
cacheRes[propsImageLength_1 + index] = __assign(__assign(__assign({}, cacheRes[propsImageLength_1 + index]), data), {
|
13143
|
+
status: undefined
|
13144
|
+
});
|
13089
13145
|
}).catch(function () {
|
13090
13146
|
cacheRes[propsImageLength_1 + index].status = 'error';
|
13091
13147
|
}).finally(function () {
|
13092
|
-
cacheRes[propsImageLength_1 + index].status = 'loaded';
|
13093
13148
|
onChange(__spreadArrays(cacheRes));
|
13094
13149
|
});
|
13095
13150
|
});
|
@@ -13110,15 +13165,15 @@
|
|
13110
13165
|
e.preventDefault();
|
13111
13166
|
timeOutEvent = setTimeout(function () {
|
13112
13167
|
timeOutEvent = 0;
|
13113
|
-
|
13168
|
+
onLongPress === null || onLongPress === void 0 ? void 0 : onLongPress(e, image, index);
|
13114
13169
|
}, 750);
|
13115
13170
|
};
|
13116
13171
|
|
13117
|
-
var
|
13172
|
+
var handleClick = function handleClick(e, image, index) {
|
13118
13173
|
clearTimeout(timeOutEvent);
|
13119
13174
|
|
13120
13175
|
if (timeOutEvent !== 0) {
|
13121
|
-
|
13176
|
+
onClick === null || onClick === void 0 ? void 0 : onClick(e, image, index);
|
13122
13177
|
}
|
13123
13178
|
};
|
13124
13179
|
|
@@ -13131,7 +13186,7 @@
|
|
13131
13186
|
target: {
|
13132
13187
|
files: files
|
13133
13188
|
}
|
13134
|
-
});
|
13189
|
+
}, true);
|
13135
13190
|
}) : (_a = fileRef.current) === null || _a === void 0 ? void 0 : _a.click();
|
13136
13191
|
};
|
13137
13192
|
|
@@ -13167,8 +13222,8 @@
|
|
13167
13222
|
onTouchStart: function onTouchStart(e) {
|
13168
13223
|
return handleTouchStart(e, image, index);
|
13169
13224
|
},
|
13170
|
-
|
13171
|
-
return
|
13225
|
+
onClick: function onClick(e) {
|
13226
|
+
return handleClick(e, image, index);
|
13172
13227
|
},
|
13173
13228
|
className: prefixCls + "-image-picker-image-container"
|
13174
13229
|
}, /*#__PURE__*/React__default["default"].createElement(BaseImage, __assign({
|
@@ -13209,7 +13264,9 @@
|
|
13209
13264
|
accept: accept,
|
13210
13265
|
multiple: multiple,
|
13211
13266
|
type: "file",
|
13212
|
-
onChange:
|
13267
|
+
onChange: function onChange(e) {
|
13268
|
+
return handleChange(e);
|
13269
|
+
},
|
13213
13270
|
ref: fileRef
|
13214
13271
|
}) : null)),
|
13215
13272
|
title: ''
|
@@ -13240,7 +13297,7 @@
|
|
13240
13297
|
});
|
13241
13298
|
|
13242
13299
|
/*!
|
13243
|
-
* @arco-design/transformable v1.0.
|
13300
|
+
* @arco-design/transformable v1.0.1
|
13244
13301
|
* (c) 2022 ludan.kibbon
|
13245
13302
|
*/
|
13246
13303
|
function _defineProperty(obj, key, value) {
|
@@ -16944,8 +17001,10 @@
|
|
16944
17001
|
customStyle = _k[0],
|
16945
17002
|
setCustomStyle = _k[1];
|
16946
17003
|
|
17004
|
+
var system = useSystem();
|
17005
|
+
|
16947
17006
|
var onElementScroll = function onElementScroll(curOffset) {
|
16948
|
-
setScrollToggleHide(curOffset
|
17007
|
+
setScrollToggleHide(curOffset < showOffset);
|
16949
17008
|
|
16950
17009
|
if (getComputedStyleByScroll) {
|
16951
17010
|
var cstyle = getComputedStyleByScroll(curOffset);
|
@@ -16971,6 +17030,7 @@
|
|
16971
17030
|
React.useEffect(function () {
|
16972
17031
|
var needBind = showOffset || getComputedStyleByScroll;
|
16973
17032
|
var container = getValidScrollContainer(getScrollContainer);
|
17033
|
+
handleEleScroll();
|
16974
17034
|
|
16975
17035
|
if (needBind && container) {
|
16976
17036
|
container.addEventListener('scroll', handleEleScroll, false);
|
@@ -17018,7 +17078,7 @@
|
|
17018
17078
|
background: relBackground
|
17019
17079
|
} : {})
|
17020
17080
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
17021
|
-
className: cls(className, prefixCls + "-nav-bar-wrapper", (_c = {}, _c[prefixCls + "-nav-bar-wrapper-fixed"] = fixed, _c[prefixCls + "-nav-bar-wrapper-border"] = hasBottomLine, _c)),
|
17081
|
+
className: cls(className, system, prefixCls + "-nav-bar-wrapper", (_c = {}, _c[prefixCls + "-nav-bar-wrapper-fixed"] = fixed, _c[prefixCls + "-nav-bar-wrapper-border"] = hasBottomLine, _c)),
|
17022
17082
|
style: __assign({
|
17023
17083
|
paddingTop: statusBarHeight ? statusBarHeight + "px" : ''
|
17024
17084
|
}, customStyle)
|