@arco-design/mobile-react 2.27.5 → 2.28.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 +18 -0
- package/README.en-US.md +2 -2
- package/README.md +2 -2
- package/cjs/_helpers/hooks.d.ts +1 -0
- package/cjs/_helpers/hooks.js +43 -27
- package/cjs/badge/style/css/index.css +12 -0
- package/cjs/badge/style/index.less +3 -3
- package/cjs/button/style/css/index.css +4 -0
- package/cjs/button/style/index.less +1 -1
- package/cjs/cell/style/css/index.css +7 -0
- package/cjs/cell/style/index.less +4 -1
- package/cjs/checkbox/style/css/index.css +13 -0
- package/cjs/checkbox/style/index.less +3 -3
- package/cjs/collapse/collapse.js +12 -6
- package/cjs/form/style/css/index.css +16 -0
- package/cjs/form/style/index.less +4 -4
- package/cjs/image-preview/index.js +2 -1
- package/cjs/radio/style/css/index.css +8 -0
- package/cjs/radio/style/index.less +2 -2
- package/cjs/rate/index.js +5 -3
- package/cjs/rate/style/css/index.css +4 -0
- package/cjs/rate/style/index.less +4 -0
- package/cjs/sticky/index.d.ts +5 -0
- package/cjs/sticky/index.js +20 -7
- package/cjs/switch/index.js +7 -2
- package/cjs/switch/style/css/index.css +44 -0
- package/cjs/switch/style/index.less +19 -7
- package/cjs/tabs/demo/style/css/mobile.css +11 -0
- package/cjs/tabs/demo/style/mobile.less +5 -1
- package/cjs/tabs/index.js +14 -5
- package/cjs/tabs/style/css/index.css +32 -7
- package/cjs/tabs/style/index.less +9 -14
- package/cjs/tabs/tab-cell-underline.js +14 -5
- package/cjs/tabs/tab-cell.js +15 -7
- package/cjs/tabs/tab-pane.js +4 -3
- package/cjs/tabs/type.d.ts +1 -0
- package/dist/index.js +92 -40
- package/dist/index.min.js +3 -3
- package/dist/style.css +134 -7
- package/dist/style.min.css +1 -1
- package/esm/_helpers/hooks.d.ts +1 -0
- package/esm/_helpers/hooks.js +41 -27
- package/esm/badge/style/css/index.css +12 -0
- package/esm/badge/style/index.less +3 -3
- package/esm/button/style/css/index.css +4 -0
- package/esm/button/style/index.less +1 -1
- package/esm/cell/style/css/index.css +7 -0
- package/esm/cell/style/index.less +4 -1
- package/esm/checkbox/style/css/index.css +13 -0
- package/esm/checkbox/style/index.less +3 -3
- package/esm/collapse/collapse.js +14 -8
- package/esm/form/style/css/index.css +16 -0
- package/esm/form/style/index.less +4 -4
- package/esm/image-preview/index.js +2 -1
- package/esm/radio/style/css/index.css +8 -0
- package/esm/radio/style/index.less +2 -2
- package/esm/rate/index.js +5 -3
- package/esm/rate/style/css/index.css +4 -0
- package/esm/rate/style/index.less +4 -0
- package/esm/sticky/index.d.ts +5 -0
- package/esm/sticky/index.js +20 -7
- package/esm/switch/index.js +9 -4
- package/esm/switch/style/css/index.css +44 -0
- package/esm/switch/style/index.less +19 -7
- package/esm/tabs/demo/style/css/mobile.css +11 -0
- package/esm/tabs/demo/style/mobile.less +5 -1
- package/esm/tabs/index.js +16 -7
- package/esm/tabs/style/css/index.css +32 -7
- package/esm/tabs/style/index.less +9 -14
- package/esm/tabs/tab-cell-underline.js +14 -6
- package/esm/tabs/tab-cell.js +15 -8
- package/esm/tabs/tab-pane.js +4 -3
- package/esm/tabs/type.d.ts +1 -0
- package/package.json +3 -3
- package/umd/_helpers/hooks.d.ts +1 -0
- package/umd/_helpers/hooks.js +43 -27
- package/umd/badge/style/css/index.css +12 -0
- package/umd/badge/style/index.less +3 -3
- package/umd/button/style/css/index.css +4 -0
- package/umd/button/style/index.less +1 -1
- package/umd/cell/style/css/index.css +7 -0
- package/umd/cell/style/index.less +4 -1
- package/umd/checkbox/style/css/index.css +13 -0
- package/umd/checkbox/style/index.less +3 -3
- package/umd/collapse/collapse.js +12 -6
- package/umd/form/style/css/index.css +16 -0
- package/umd/form/style/index.less +4 -4
- package/umd/image-preview/index.js +2 -1
- package/umd/radio/style/css/index.css +8 -0
- package/umd/radio/style/index.less +2 -2
- package/umd/rate/index.js +5 -3
- package/umd/rate/style/css/index.css +4 -0
- package/umd/rate/style/index.less +4 -0
- package/umd/sticky/index.d.ts +5 -0
- package/umd/sticky/index.js +20 -7
- package/umd/switch/index.js +7 -2
- package/umd/switch/style/css/index.css +44 -0
- package/umd/switch/style/index.less +19 -7
- package/umd/tabs/demo/style/css/mobile.css +11 -0
- package/umd/tabs/demo/style/mobile.less +5 -1
- package/umd/tabs/index.js +14 -5
- package/umd/tabs/style/css/index.css +32 -7
- package/umd/tabs/style/index.less +9 -14
- package/umd/tabs/tab-cell-underline.js +16 -9
- package/umd/tabs/tab-cell.js +17 -11
- package/umd/tabs/tab-pane.js +4 -3
- package/umd/tabs/type.d.ts +1 -0
package/dist/index.js
CHANGED
@@ -406,7 +406,7 @@
|
|
406
406
|
type = 'to';
|
407
407
|
}
|
408
408
|
|
409
|
-
var targetTop =
|
409
|
+
var targetTop = type === 'by' ? initTop + target : target;
|
410
410
|
var start = Date.now();
|
411
411
|
|
412
412
|
var fn = function fn() {
|
@@ -3165,6 +3165,20 @@
|
|
3165
3165
|
var result = [state, setValidState];
|
3166
3166
|
return result;
|
3167
3167
|
}
|
3168
|
+
function useSameRefState(initialValue) {
|
3169
|
+
var _a = React.useState(initialValue),
|
3170
|
+
state = _a[0],
|
3171
|
+
setState = _a[1];
|
3172
|
+
|
3173
|
+
var stateRef = React.useRef(state);
|
3174
|
+
|
3175
|
+
var setStateProxy = function setStateProxy(data) {
|
3176
|
+
stateRef.current = data;
|
3177
|
+
setState(data);
|
3178
|
+
};
|
3179
|
+
|
3180
|
+
return [state, stateRef, setStateProxy];
|
3181
|
+
}
|
3168
3182
|
function useRefState(initialValue) {
|
3169
3183
|
var _a = React.useState(initialValue),
|
3170
3184
|
state = _a[0],
|
@@ -3707,6 +3721,7 @@
|
|
3707
3721
|
renderUnderline = props.renderUnderline,
|
3708
3722
|
getTabRect = props.getTabRect,
|
3709
3723
|
getTabCenterLeft = props.getTabCenterLeft;
|
3724
|
+
var useRtl = React.useContext(GlobalContext).useRtl;
|
3710
3725
|
|
3711
3726
|
var _a = React.useState({}),
|
3712
3727
|
underlineStyle = _a[0],
|
@@ -3727,6 +3742,7 @@
|
|
3727
3742
|
var isVertical = tabDirection === 'vertical';
|
3728
3743
|
var maxScaleWithDefault = caterpillarMaxScale || 2;
|
3729
3744
|
var translateZStr = translateZ ? ' translateZ(0)' : '';
|
3745
|
+
var rtlRatio = isVertical && useRtl ? -1 : 1;
|
3730
3746
|
React.useImperativeHandle(ref, function () {
|
3731
3747
|
return {
|
3732
3748
|
setCaterpillarAnimate: setCaterpillarAnimate,
|
@@ -3798,11 +3814,13 @@
|
|
3798
3814
|
}
|
3799
3815
|
|
3800
3816
|
function getDescIndex() {
|
3801
|
-
|
3817
|
+
var comparedDis = distance * rtlRatio;
|
3818
|
+
|
3819
|
+
if (comparedDis > 0) {
|
3802
3820
|
return activeIndex - 1;
|
3803
3821
|
}
|
3804
3822
|
|
3805
|
-
if (
|
3823
|
+
if (comparedDis < 0) {
|
3806
3824
|
return activeIndex + 1;
|
3807
3825
|
}
|
3808
3826
|
|
@@ -3824,7 +3842,8 @@
|
|
3824
3842
|
var currentLeft = getLineLeft(activeIndex);
|
3825
3843
|
var descIndex = getDescIndex();
|
3826
3844
|
var descLeft = getLineLeft(descIndex);
|
3827
|
-
var
|
3845
|
+
var comparedDis = distance * rtlRatio;
|
3846
|
+
var moveRatio = wrapWidth ? comparedDis / wrapWidth : 0;
|
3828
3847
|
var leftOffset = moveRatio * (currentLeft - descLeft);
|
3829
3848
|
var direc = isVertical ? 'X' : 'Y';
|
3830
3849
|
var transStyle = useCaterpillar && !jumpingDis && !underlineAdaptive ? caterpillarProperty === 'size' ? (_a = {}, _a[isVertical ? 'width' : 'height'] = 100 * getLineScale(moveRatio) + "%", _a.willChange = 'width', _a) : {
|
@@ -3837,7 +3856,7 @@
|
|
3837
3856
|
var currentWidth = getLineWidth(activeIndex);
|
3838
3857
|
var descWidth = getLineWidth(descIndex);
|
3839
3858
|
var widthOffset = moveRatio * (currentWidth - descWidth);
|
3840
|
-
adaptiveStyle = (_b = {}, _b[isVertical ? 'width' : 'height'] =
|
3859
|
+
adaptiveStyle = (_b = {}, _b[isVertical ? 'width' : 'height'] = comparedDis > 0 ? currentWidth - widthOffset : currentWidth + widthOffset, _b.willChange = 'width', _b);
|
3841
3860
|
adaptiveOuterStyle = isVertical ? {
|
3842
3861
|
width: 'auto'
|
3843
3862
|
} : {
|
@@ -3854,7 +3873,7 @@
|
|
3854
3873
|
};
|
3855
3874
|
return {
|
3856
3875
|
outer: __assign$2(__assign$2({
|
3857
|
-
transform: "translate" + direc + "(" + (
|
3876
|
+
transform: "translate" + direc + "(" + (comparedDis > 0 ? currentLeft - leftOffset : currentLeft + leftOffset) + "px)" + translateZStr
|
3858
3877
|
}, outerSize), adaptiveOuterStyle),
|
3859
3878
|
inner: __assign$2(__assign$2({}, transStyle), adaptiveStyle)
|
3860
3879
|
};
|
@@ -3980,6 +3999,7 @@
|
|
3980
3999
|
translateZ = props.translateZ,
|
3981
4000
|
tabBarStopPropagation = props.tabBarStopPropagation;
|
3982
4001
|
var prefix = prefixCls + "-tab-cell";
|
4002
|
+
var useRtl = React.useContext(GlobalContext).useRtl;
|
3983
4003
|
var domRef = React.useRef(null);
|
3984
4004
|
var underlineRef = React.useRef(null);
|
3985
4005
|
var allCellRectRef = React.useRef([]);
|
@@ -4174,20 +4194,20 @@
|
|
4174
4194
|
}
|
4175
4195
|
|
4176
4196
|
function getCellStyle(index) {
|
4197
|
+
var _a, _b;
|
4198
|
+
|
4177
4199
|
if (!isVertical) {
|
4178
4200
|
return {};
|
4179
4201
|
}
|
4180
4202
|
|
4203
|
+
var marginStart = useRtl ? 'marginRight' : 'marginLeft';
|
4204
|
+
var marginEnd = useRtl ? 'marginLeft' : 'marginRight';
|
4205
|
+
|
4181
4206
|
if (index === 0) {
|
4182
|
-
return {
|
4183
|
-
marginRight: cellGutter,
|
4184
|
-
marginLeft: getCellPadding('left')
|
4185
|
-
};
|
4207
|
+
return _a = {}, _a[marginEnd] = cellGutter, _a[marginStart] = getCellPadding('left'), _a;
|
4186
4208
|
}
|
4187
4209
|
|
4188
|
-
return {
|
4189
|
-
marginRight: index === tabs.length - 1 ? void 0 : cellGutter
|
4190
|
-
};
|
4210
|
+
return _b = {}, _b[marginEnd] = index === tabs.length - 1 ? void 0 : cellGutter, _b;
|
4191
4211
|
}
|
4192
4212
|
|
4193
4213
|
function renderBarItem(tab, index) {
|
@@ -4766,7 +4786,8 @@
|
|
4766
4786
|
autoHeight = props.autoHeight,
|
4767
4787
|
swipeEnergySaving = props.swipeEnergySaving,
|
4768
4788
|
changeIndex = props.changeIndex,
|
4769
|
-
onScroll = props.onScroll
|
4789
|
+
onScroll = props.onScroll,
|
4790
|
+
rtlRatio = props.rtlRatio;
|
4770
4791
|
var domRef = React.useRef(null);
|
4771
4792
|
var panesRef = React.useRef([]);
|
4772
4793
|
var autoScrollingRef = React.useRef(false);
|
@@ -4965,7 +4986,7 @@
|
|
4965
4986
|
var translateStr = translateZ ? ' translateZ(0)' : '';
|
4966
4987
|
var sizeStyle = tabDirection === 'vertical' ? {
|
4967
4988
|
width: 100 * panes.length + "%",
|
4968
|
-
transform: "translateX(" + (distance - wrapWidth * activeIndex) + "px)" + translateStr
|
4989
|
+
transform: "translateX(" + (distance - wrapWidth * activeIndex * rtlRatio) + "px)" + translateStr
|
4969
4990
|
} : {
|
4970
4991
|
height: 100 * panes.length + "%",
|
4971
4992
|
transform: "translateY(" + (distance - wrapHeight * activeIndex) + "px)" + translateStr
|
@@ -4993,7 +5014,7 @@
|
|
4993
5014
|
|
4994
5015
|
var translateStr = translateZ ? ' translateZ(0)' : '';
|
4995
5016
|
var sizeStyle = tabDirection === 'vertical' ? {
|
4996
|
-
transform: "translateX(" + (distance - wrapWidth * (activeIndex - index)) + "px)" + translateStr
|
5017
|
+
transform: "translateX(" + (distance - wrapWidth * (activeIndex - index) * rtlRatio) + "px)" + translateStr
|
4997
5018
|
} : {
|
4998
5019
|
transform: "translateY(" + (distance - wrapHeight * (activeIndex - index)) + "px)" + translateStr
|
4999
5020
|
};
|
@@ -5175,6 +5196,7 @@
|
|
5175
5196
|
tabBarStopPropagation = _6 === void 0 ? true : _6,
|
5176
5197
|
_7 = props.swipeEnergySaving,
|
5177
5198
|
swipeEnergySaving = _7 === void 0 ? false : _7;
|
5199
|
+
var useRtl = React.useContext(GlobalContext).useRtl;
|
5178
5200
|
var domRef = React.useRef(null);
|
5179
5201
|
var cellRef = React.useRef(null);
|
5180
5202
|
var paneRef = React.useRef(null);
|
@@ -5226,6 +5248,8 @@
|
|
5226
5248
|
var allPanes = getAllPanes();
|
5227
5249
|
var tabDirection = ['top', 'bottom'].indexOf(tabBarPosition) !== -1 ? 'vertical' : 'horizontal';
|
5228
5250
|
var canSwipe = mode === 'swipe' && !disabled && swipeable && tabDirection === 'vertical' && tabs.length > 1;
|
5251
|
+
var horizontalUseRtl = tabDirection === 'vertical' && useRtl;
|
5252
|
+
var rtlRatio = horizontalUseRtl ? -1 : 1;
|
5229
5253
|
React.useImperativeHandle(ref, function () {
|
5230
5254
|
return {
|
5231
5255
|
dom: domRef.current,
|
@@ -5343,6 +5367,7 @@
|
|
5343
5367
|
var posDisY = touchMoveY - touchStartYRef.current;
|
5344
5368
|
var absDisX = Math.abs(posDisX);
|
5345
5369
|
var absDisY = Math.abs(posDisY);
|
5370
|
+
var comparedDis = posDisX * rtlRatio;
|
5346
5371
|
|
5347
5372
|
if (scrollingRef.current === null) {
|
5348
5373
|
scrollingRef.current = absDisX < absDisY;
|
@@ -5360,10 +5385,10 @@
|
|
5360
5385
|
return;
|
5361
5386
|
}
|
5362
5387
|
|
5363
|
-
if (activeIndexRef.current === 0 &&
|
5388
|
+
if (activeIndexRef.current === 0 && comparedDis > 0 || activeIndexRef.current === tabs.length - 1 && comparedDis < 0) {
|
5364
5389
|
if (!touchStoppedRef.current && absDisX > stopTouchThreshold) {
|
5365
5390
|
touchStoppedRef.current = true;
|
5366
|
-
onTouchStopped && onTouchStopped(
|
5391
|
+
onTouchStopped && onTouchStopped(comparedDis >= 0 ? -1 : 1);
|
5367
5392
|
}
|
5368
5393
|
|
5369
5394
|
setDistance(0);
|
@@ -5413,10 +5438,11 @@
|
|
5413
5438
|
var index = activeIndexRef.current;
|
5414
5439
|
var needJump = Math.abs(dis) > maxSlice && Math.abs(dis) > distanceToChangeTab || Math.abs(speed) > speedToChangeTab;
|
5415
5440
|
var newIndex = index;
|
5441
|
+
var comparedDis = dis * rtlRatio;
|
5416
5442
|
|
5417
|
-
if (
|
5443
|
+
if (comparedDis > 0 && needJump) {
|
5418
5444
|
newIndex = index - 1;
|
5419
|
-
} else if (
|
5445
|
+
} else if (comparedDis < 0 && needJump) {
|
5420
5446
|
newIndex = index + 1;
|
5421
5447
|
}
|
5422
5448
|
|
@@ -5560,7 +5586,8 @@
|
|
5560
5586
|
tabPaneExtra: tabPaneExtra,
|
5561
5587
|
autoHeight: autoHeight,
|
5562
5588
|
onScroll: onScroll,
|
5563
|
-
swipeEnergySaving: swipeEnergySaving
|
5589
|
+
swipeEnergySaving: swipeEnergySaving,
|
5590
|
+
rtlRatio: rtlRatio
|
5564
5591
|
}, commonProps)));
|
5565
5592
|
});
|
5566
5593
|
});
|
@@ -5721,6 +5748,22 @@
|
|
5721
5748
|
});
|
5722
5749
|
framePendingRef.current = true;
|
5723
5750
|
}, [containerEventHandler]);
|
5751
|
+
var updatePlaceholderLayoutInner = React.useCallback(function () {
|
5752
|
+
if (placeholderRef.current) {
|
5753
|
+
var contentHeight = contentCalculateHeightRef.current; // 当元素吸顶时,默认有一个占位的元素占住该元素的位置,避免布局产生抖动
|
5754
|
+
// @en When an element is sticky to the top, a placeholder element occupies the element's position by default to avoid jitter in the layout
|
5755
|
+
|
5756
|
+
placeholderRef.current.style.height = (isStickyRef.current ? contentHeight : 0) + "px";
|
5757
|
+
}
|
5758
|
+
}, []);
|
5759
|
+
var updatePlaceholderLayout = React.useCallback(function () {
|
5760
|
+
if (contentRef.current) {
|
5761
|
+
var contentClientRect = contentRef.current.getBoundingClientRect();
|
5762
|
+
contentCalculateHeightRef.current = contentClientRect.height;
|
5763
|
+
}
|
5764
|
+
|
5765
|
+
updatePlaceholderLayoutInner();
|
5766
|
+
}, []);
|
5724
5767
|
React.useEffect(function () {
|
5725
5768
|
var containerEle = getActualContainer(getContainer);
|
5726
5769
|
containerRef.current = containerEle || document.body;
|
@@ -5743,18 +5786,15 @@
|
|
5743
5786
|
};
|
5744
5787
|
}, [getContainer, getScrollContainer, recalculatePosition]);
|
5745
5788
|
React.useEffect(function () {
|
5746
|
-
|
5747
|
-
// 当元素吸顶时,默认有一个占位的元素占住该元素的位置,避免布局产生抖动
|
5748
|
-
// @en When an element is sticky to the top, a placeholder element occupies the element's position by default to avoid jitter in the layout
|
5749
|
-
placeholderRef.current.style.height = (isStickyRef.current ? contentCalculateHeightRef.current : 0) + "px";
|
5750
|
-
}
|
5789
|
+
updatePlaceholderLayoutInner();
|
5751
5790
|
}, [isSticky, wasSticky]);
|
5752
5791
|
React.useImperativeHandle(ref, function () {
|
5753
5792
|
return {
|
5754
5793
|
dom: contentRef.current,
|
5755
|
-
recalculatePosition: recalculatePosition
|
5794
|
+
recalculatePosition: recalculatePosition,
|
5795
|
+
updatePlaceholderLayout: updatePlaceholderLayout
|
5756
5796
|
};
|
5757
|
-
}, [recalculatePosition]);
|
5797
|
+
}, [recalculatePosition, updatePlaceholderLayout]);
|
5758
5798
|
var computedStyle = React.useMemo(function () {
|
5759
5799
|
return __assign$2(__assign$2({}, style || {}), stickyStateStyle);
|
5760
5800
|
}, [stickyStateStyle, style]);
|
@@ -10167,7 +10207,13 @@
|
|
10167
10207
|
var groupKey = React.useContext(CollapseKeyContext).key;
|
10168
10208
|
var CollapseContext = allContexts[groupKey] || {};
|
10169
10209
|
var groupContext = React.useContext(CollapseContext) || {};
|
10170
|
-
|
10210
|
+
|
10211
|
+
var _l = useSameRefState(false),
|
10212
|
+
opened = _l[0],
|
10213
|
+
openedRef = _l[1],
|
10214
|
+
setOpened = _l[2];
|
10215
|
+
|
10216
|
+
React.useEffect(function () {
|
10171
10217
|
var show = false; // 优先级: group > children
|
10172
10218
|
// @en Priority: group > children
|
10173
10219
|
|
@@ -10181,7 +10227,7 @@
|
|
10181
10227
|
show = itemActive;
|
10182
10228
|
}
|
10183
10229
|
|
10184
|
-
|
10230
|
+
setOpened(show);
|
10185
10231
|
}, [value, active, itemActive, groupContext.isGroup, groupContext.value]);
|
10186
10232
|
|
10187
10233
|
var getContentHeight = function getContentHeight() {
|
@@ -10199,8 +10245,8 @@
|
|
10199
10245
|
contentWrapRef.current.style.height = newHeight;
|
10200
10246
|
var transTimeout = convertCssDuration(contentWrapRef.current, 'transitionDuration');
|
10201
10247
|
setTimeout(function () {
|
10202
|
-
return contentWrapRef.current && (contentWrapRef.current.style.height =
|
10203
|
-
},
|
10248
|
+
return contentWrapRef.current && (contentWrapRef.current.style.height = openedRef.current ? 'auto' : '0px');
|
10249
|
+
}, openedRef.current ? transTimeout : 20);
|
10204
10250
|
};
|
10205
10251
|
|
10206
10252
|
var toggleOpened = function toggleOpened() {
|
@@ -10223,10 +10269,10 @@
|
|
10223
10269
|
}
|
10224
10270
|
|
10225
10271
|
var height = getContentHeight();
|
10226
|
-
contentWrapRef.current.style.height =
|
10272
|
+
contentWrapRef.current.style.height = openedRef.current ? contentHeightRef.current + "px" : '0px';
|
10227
10273
|
nextTick(function () {
|
10228
10274
|
contentHeightRef.current = height;
|
10229
|
-
resetHeight(
|
10275
|
+
resetHeight(openedRef.current ? height + "px" : '0px');
|
10230
10276
|
});
|
10231
10277
|
};
|
10232
10278
|
|
@@ -20203,7 +20249,8 @@
|
|
20203
20249
|
return /*#__PURE__*/React__default["default"].createElement(Carousel, __assign$2({
|
20204
20250
|
autoPlay: false,
|
20205
20251
|
loop: loop,
|
20206
|
-
lazyloadCount: lazyloadCount
|
20252
|
+
lazyloadCount: lazyloadCount,
|
20253
|
+
stopPropagation: false
|
20207
20254
|
}, carouselProps), (allImages || []).map(function (image, index) {
|
20208
20255
|
var innerNode = /*#__PURE__*/React__default["default"].createElement("div", {
|
20209
20256
|
key: index,
|
@@ -24718,7 +24765,8 @@
|
|
24718
24765
|
}
|
24719
24766
|
|
24720
24767
|
return /*#__PURE__*/React__default["default"].createElement(ContextLayout, null, function (_a) {
|
24721
|
-
var prefixCls = _a.prefixCls
|
24768
|
+
var prefixCls = _a.prefixCls,
|
24769
|
+
useRtl = _a.useRtl;
|
24722
24770
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
24723
24771
|
role: "slider",
|
24724
24772
|
"aria-valuemin": 0,
|
@@ -24734,6 +24782,7 @@
|
|
24734
24782
|
// 对内的index从1开始,方便计算
|
24735
24783
|
// @en The index of the pair starts from 1, which is convenient for calculation
|
24736
24784
|
var index = i + 1;
|
24785
|
+
var halfIndex = allowHalf ? index - 0.5 : index;
|
24737
24786
|
var status = getIconStatus(index);
|
24738
24787
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
24739
24788
|
key: index,
|
@@ -24744,12 +24793,12 @@
|
|
24744
24793
|
}, renderRateIcon(prefixCls + "-rate", status, index), /*#__PURE__*/React__default["default"].createElement("div", {
|
24745
24794
|
className: prefixCls + "-rate-icon-click-half left",
|
24746
24795
|
onClick: function onClick() {
|
24747
|
-
return handleStarIndexChange(
|
24796
|
+
return handleStarIndexChange(useRtl ? index : halfIndex);
|
24748
24797
|
}
|
24749
24798
|
}), /*#__PURE__*/React__default["default"].createElement("div", {
|
24750
24799
|
className: prefixCls + "-rate-icon-click-half right",
|
24751
24800
|
onClick: function onClick() {
|
24752
|
-
return handleStarIndexChange(index);
|
24801
|
+
return handleStarIndexChange(useRtl ? halfIndex : index);
|
24753
24802
|
}
|
24754
24803
|
}));
|
24755
24804
|
}));
|
@@ -27578,6 +27627,7 @@
|
|
27578
27627
|
});
|
27579
27628
|
|
27580
27629
|
var Switch = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
27630
|
+
var useRtl = React.useContext(GlobalContext).useRtl;
|
27581
27631
|
var system = useSystem();
|
27582
27632
|
var className = props.className,
|
27583
27633
|
style = props.style,
|
@@ -27645,13 +27695,15 @@
|
|
27645
27695
|
|
27646
27696
|
var touchEndX = e.changedTouches && e.changedTouches[0] ? e.changedTouches[0].clientX : 0;
|
27647
27697
|
var distance = touchEndX - touchStartX;
|
27698
|
+
var swipeRight = useRtl ? distance < 0 : distance > 0;
|
27699
|
+
var swipeLeft = useRtl ? distance > 0 : distance < 0;
|
27648
27700
|
var newChecked = false; // 右滑打开
|
27649
27701
|
// @en Swipe right to open
|
27650
27702
|
|
27651
|
-
if (
|
27703
|
+
if (swipeRight) {
|
27652
27704
|
newChecked = true; // 左滑关闭
|
27653
27705
|
// @en Swipe left to close
|
27654
|
-
} else if (
|
27706
|
+
} else if (swipeLeft) {
|
27655
27707
|
newChecked = false; // 点击时取反
|
27656
27708
|
// @en Invert on clicking
|
27657
27709
|
} else {
|