@nutui/nutui-react 2.0.22 → 2.0.23-beta.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 +13 -0
- package/dist/esm/ActionSheet/style/style.css +1 -1
- package/dist/esm/ActionSheet.js +4 -0
- package/dist/esm/Address/style/style.css +1 -1
- package/dist/esm/Address.js +4 -0
- package/dist/esm/Calendar/style/style.css +1 -1
- package/dist/esm/CalendarCard/style/css.js +1 -0
- package/dist/esm/CalendarCard/style/index.js +2 -0
- package/dist/esm/CalendarCard/style/style.css +1 -0
- package/dist/esm/CalendarCard.js +513 -0
- package/dist/esm/CalendarItem.js +2 -0
- package/dist/esm/Cascader/style/style.css +1 -1
- package/dist/esm/Cascader.js +4 -0
- package/dist/esm/DatePicker/style/style.css +1 -1
- package/dist/esm/DatePicker.js +4 -4
- package/dist/esm/Dialog/style/style.css +1 -1
- package/dist/esm/Dialog.js +4 -0
- package/dist/esm/FixedNav/style/style.css +1 -1
- package/dist/esm/Image.js +24 -10
- package/dist/esm/ImagePreview/style/style.css +1 -1
- package/dist/esm/Menu/style/style.css +1 -1
- package/dist/esm/Menu.js +4 -2
- package/dist/esm/MenuItem/style/style.css +1 -1
- package/dist/esm/MenuItem.js +4 -2
- package/dist/esm/NoticeBar/style/style.css +1 -1
- package/dist/esm/NoticeBar.js +3 -0
- package/dist/esm/NumberKeyboard/style/style.css +1 -1
- package/dist/esm/Overlay/style/style.css +1 -1
- package/dist/esm/Overlay.js +4 -0
- package/dist/esm/Picker/style/style.css +1 -1
- package/dist/esm/Picker.js +14 -8
- package/dist/esm/Popover/style/style.css +1 -1
- package/dist/esm/Popup/style/style.css +1 -1
- package/dist/esm/Popup.js +4 -0
- package/dist/esm/Range.js +2 -2
- package/dist/esm/ShortPassword/style/style.css +1 -1
- package/dist/esm/SideNavBar/style/style.css +1 -1
- package/dist/esm/Swipe.js +8 -5
- package/dist/esm/TimeSelect/style/style.css +1 -1
- package/dist/esm/Toast.js +4 -0
- package/dist/esm/Tour/style/style.css +1 -1
- package/dist/esm/nutui-react.es.js +136 -134
- package/dist/esm/overlay2.js +76 -15
- package/dist/esm/popup2.js +5 -4
- package/dist/esm/types/src/packages/calendarcard/__tests__/calendarcard.spec.d.ts +1 -0
- package/dist/esm/types/src/packages/calendarcard/calendarcard.d.ts +24 -0
- package/dist/esm/types/src/packages/calendarcard/calendarcard.taro.d.ts +24 -0
- package/dist/esm/types/src/packages/calendarcard/demo.d.ts +3 -0
- package/dist/esm/types/src/packages/calendarcard/demo.taro.d.ts +3 -0
- package/dist/esm/types/src/packages/calendarcard/icon.d.ts +5 -0
- package/dist/esm/types/src/packages/calendarcard/icon.taro.d.ts +5 -0
- package/dist/esm/types/src/packages/calendarcard/index.d.ts +3 -0
- package/dist/esm/types/src/packages/calendarcard/index.taro.d.ts +3 -0
- package/dist/esm/types/src/packages/calendarcard/types.d.ts +11 -0
- package/dist/esm/types/src/packages/calendarcard/utils.d.ts +19 -0
- package/dist/esm/types/src/packages/datepicker/datepicker.d.ts +2 -1
- package/dist/esm/types/src/packages/datepicker/datepicker.taro.d.ts +2 -1
- package/dist/esm/types/src/packages/nutui.react.build.d.ts +2 -1
- package/dist/esm/types/src/packages/nutui.react.d.ts +3 -1
- package/dist/esm/types/src/packages/nutui.react.scss.d.ts +1 -0
- package/dist/esm/types/src/packages/nutui.react.taro.d.ts +3 -1
- package/dist/esm/types/src/packages/nutui.react.taro.scss.d.ts +1 -0
- package/dist/esm/types/src/packages/nutui.taro.react.build.d.ts +2 -1
- package/dist/esm/types/src/packages/picker/picker.d.ts +2 -0
- package/dist/esm/types/src/packages/picker/picker.taro.d.ts +2 -0
- package/dist/esm/types/src/utils/use-lock-scoll-taro.d.ts +2 -0
- package/dist/esm/types/src/utils/use-lock-scroll.d.ts +2 -0
- package/dist/esm/types/src/utils/use-touch.d.ts +8 -9
- package/dist/esm/use-touch.js +23 -32
- package/dist/locales/base.js +1 -1
- package/dist/locales/en-US.js +1 -1
- package/dist/locales/id-ID.js +1 -1
- package/dist/locales/tr-TR.js +1 -1
- package/dist/locales/zh-CN.js +1 -1
- package/dist/locales/zh-TW.js +1 -1
- package/dist/locales/zh-UG.js +1 -1
- package/dist/nutui.react.es.js +713 -221
- package/dist/nutui.react.umd.js +713 -221
- package/dist/packages/calendarcard/calendarcard.scss +104 -0
- package/dist/packages/noticebar/noticebar.scss +1 -0
- package/dist/packages/overlay/overlay.scss +5 -0
- package/dist/style.css +1 -1
- package/dist/style.mjs +1 -1
- package/dist/styles/themes/default.scss +1 -0
- package/dist/types/index.d.ts +3 -1
- package/dist/types/packages/calendarcard/calendarcard.d.ts +76 -0
- package/dist/types/packages/calendarcard/icon.d.ts +5 -0
- package/dist/types/packages/calendarcard/index.d.ts +3 -0
- package/dist/types/packages/calendarcard/types.d.ts +11 -0
- package/dist/types/packages/calendarcard/utils.d.ts +19 -0
- package/dist/types/packages/datepicker/datepicker.d.ts +6 -1
- package/dist/types/packages/picker/picker.d.ts +6 -0
- package/dist/types/utils/use-lock-scroll.d.ts +2 -0
- package/dist/types/utils/use-touch.d.ts +8 -9
- package/package.json +1 -1
- package/dist/esm/types/src/packages/dialog/dialogwrap.taro.d.ts +0 -14
package/dist/esm/overlay2.js
CHANGED
|
@@ -23,10 +23,82 @@ function _objectSpread(target) {
|
|
|
23
23
|
}
|
|
24
24
|
return target;
|
|
25
25
|
}
|
|
26
|
-
import React__default, { useState, useRef
|
|
26
|
+
import React__default, { useEffect, useState, useRef } from "react";
|
|
27
27
|
import { CSSTransition } from "react-transition-group";
|
|
28
28
|
import classNames from "classnames";
|
|
29
29
|
import { C as ComponentDefaults } from "./typings.js";
|
|
30
|
+
import { u as useTouch } from "./use-touch.js";
|
|
31
|
+
import { g as getScrollParent } from "./get-scroll-parent.js";
|
|
32
|
+
import { p as passiveSupported } from "./supports-passive.js";
|
|
33
|
+
var totalLockCount = 0;
|
|
34
|
+
var BODY_LOCK_CLASS = "nut-overflow-hidden";
|
|
35
|
+
function getScrollableElement(el) {
|
|
36
|
+
var current = el === null || el === void 0 ? void 0 : el.parentElement;
|
|
37
|
+
while (current) {
|
|
38
|
+
if (current.clientHeight < current.scrollHeight) {
|
|
39
|
+
return current;
|
|
40
|
+
}
|
|
41
|
+
current = current.parentElement;
|
|
42
|
+
}
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
function useLockScroll(rootRef, shouldLock) {
|
|
46
|
+
var touch = useTouch();
|
|
47
|
+
var onTouchMove = function onTouchMove2(event) {
|
|
48
|
+
touch.move(event);
|
|
49
|
+
var direction = touch.deltaY.current > 0 ? "10" : "01";
|
|
50
|
+
var el = getScrollParent(event.target, rootRef.current);
|
|
51
|
+
if (!el)
|
|
52
|
+
return;
|
|
53
|
+
if (shouldLock === "strict") {
|
|
54
|
+
var scrollableParent = getScrollableElement(event.target);
|
|
55
|
+
if (scrollableParent === document.body || scrollableParent === document.documentElement) {
|
|
56
|
+
event.preventDefault();
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
var scrollHeight = el.scrollHeight, offsetHeight = el.offsetHeight, scrollTop = el.scrollTop;
|
|
61
|
+
var status = "11";
|
|
62
|
+
if (scrollTop === 0) {
|
|
63
|
+
status = offsetHeight >= scrollHeight ? "00" : "01";
|
|
64
|
+
} else if (scrollTop + offsetHeight >= scrollHeight) {
|
|
65
|
+
status = "10";
|
|
66
|
+
}
|
|
67
|
+
if (status !== "11" && touch.isVertical() && !(parseInt(status, 2) & parseInt(direction, 2))) {
|
|
68
|
+
if (event.cancelable) {
|
|
69
|
+
event.preventDefault();
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
var lock = function lock2() {
|
|
74
|
+
document.addEventListener("touchstart", touch.start);
|
|
75
|
+
document.addEventListener("touchmove", onTouchMove, passiveSupported ? {
|
|
76
|
+
passive: false
|
|
77
|
+
} : false);
|
|
78
|
+
if (!totalLockCount) {
|
|
79
|
+
document.body.classList.add(BODY_LOCK_CLASS);
|
|
80
|
+
}
|
|
81
|
+
totalLockCount++;
|
|
82
|
+
};
|
|
83
|
+
var unlock = function unlock2() {
|
|
84
|
+
if (totalLockCount) {
|
|
85
|
+
document.removeEventListener("touchstart", touch.start);
|
|
86
|
+
document.removeEventListener("touchmove", onTouchMove);
|
|
87
|
+
totalLockCount--;
|
|
88
|
+
if (!totalLockCount) {
|
|
89
|
+
document.body.classList.remove(BODY_LOCK_CLASS);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
useEffect(function() {
|
|
94
|
+
if (shouldLock) {
|
|
95
|
+
lock();
|
|
96
|
+
return function() {
|
|
97
|
+
unlock();
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
}, [shouldLock]);
|
|
101
|
+
}
|
|
30
102
|
var defaultOverlayProps = _objectSpread(_objectSpread({}, ComponentDefaults), {}, {
|
|
31
103
|
zIndex: 1e3,
|
|
32
104
|
duration: 300,
|
|
@@ -47,22 +119,10 @@ var Overlay = function Overlay2(props) {
|
|
|
47
119
|
} else {
|
|
48
120
|
setInnerVisible(false);
|
|
49
121
|
}
|
|
50
|
-
lock();
|
|
51
122
|
}, [visible]);
|
|
52
|
-
|
|
53
|
-
return function() {
|
|
54
|
-
document.body.classList.remove("nut-overflow-hidden");
|
|
55
|
-
};
|
|
56
|
-
}, []);
|
|
123
|
+
useLockScroll(nodeRef, !!props.lockScroll && innerVisible);
|
|
57
124
|
var classes = classNames(className, classPrefix);
|
|
58
125
|
var styles = _objectSpread({}, style);
|
|
59
|
-
var lock = function lock2() {
|
|
60
|
-
if (lockScroll && visible) {
|
|
61
|
-
document.body.classList.add("nut-overflow-hidden");
|
|
62
|
-
} else {
|
|
63
|
-
document.body.classList.remove("nut-overflow-hidden");
|
|
64
|
-
}
|
|
65
|
-
};
|
|
66
126
|
var handleClick = function handleClick2(e) {
|
|
67
127
|
if (closeOnOverlayClick) {
|
|
68
128
|
onClick2 && onClick2(e);
|
|
@@ -94,5 +154,6 @@ Overlay.defaultProps = defaultOverlayProps;
|
|
|
94
154
|
Overlay.displayName = "NutOverlay";
|
|
95
155
|
export {
|
|
96
156
|
Overlay as O,
|
|
97
|
-
defaultOverlayProps as d
|
|
157
|
+
defaultOverlayProps as d,
|
|
158
|
+
useLockScroll as u
|
|
98
159
|
};
|
package/dist/esm/popup2.js
CHANGED
|
@@ -26,7 +26,7 @@ import { createPortal } from "react-dom";
|
|
|
26
26
|
import { CSSTransition } from "react-transition-group";
|
|
27
27
|
import classNames from "classnames";
|
|
28
28
|
import { Close } from "@nutui/icons-react";
|
|
29
|
-
import { d as defaultOverlayProps } from "./overlay2.js";
|
|
29
|
+
import { d as defaultOverlayProps, u as useLockScroll } from "./overlay2.js";
|
|
30
30
|
import Overlay from "./Overlay.js";
|
|
31
31
|
import { C as ComponentDefaults } from "./typings.js";
|
|
32
32
|
var defaultProps = _objectSpread(_objectSpread({}, ComponentDefaults), {}, {
|
|
@@ -57,10 +57,12 @@ var Popup = function Popup2(props) {
|
|
|
57
57
|
var _classNames, _classNames2;
|
|
58
58
|
var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props), children = _defaultProps$props.children, visible = _defaultProps$props.visible, overlay = _defaultProps$props.overlay, closeOnOverlayClick = _defaultProps$props.closeOnOverlayClick, overlayStyle = _defaultProps$props.overlayStyle, overlayClassName = _defaultProps$props.overlayClassName, zIndex = _defaultProps$props.zIndex, lockScroll = _defaultProps$props.lockScroll, duration = _defaultProps$props.duration, closeable = _defaultProps$props.closeable, closeIconPosition = _defaultProps$props.closeIconPosition, closeIcon = _defaultProps$props.closeIcon, left = _defaultProps$props.left, title = _defaultProps$props.title, style = _defaultProps$props.style, transition = _defaultProps$props.transition, round = _defaultProps$props.round, position = _defaultProps$props.position, className = _defaultProps$props.className, destroyOnClose = _defaultProps$props.destroyOnClose, portal = _defaultProps$props.portal, onOpen2 = _defaultProps$props.onOpen, onClose2 = _defaultProps$props.onClose, onOverlayClick2 = _defaultProps$props.onOverlayClick, onCloseIconClick2 = _defaultProps$props.onCloseIconClick, afterShow = _defaultProps$props.afterShow, afterClose = _defaultProps$props.afterClose, onClick = _defaultProps$props.onClick;
|
|
59
59
|
var nodeRef = React__default.useRef(null);
|
|
60
|
-
var
|
|
60
|
+
var innerIndex = zIndex || _zIndex;
|
|
61
|
+
var _useState = useState(innerIndex), _useState2 = _slicedToArray(_useState, 2), index = _useState2[0], setIndex = _useState2[1];
|
|
61
62
|
var _useState3 = useState(visible), _useState4 = _slicedToArray(_useState3, 2), innerVisible = _useState4[0], setInnerVisible = _useState4[1];
|
|
62
63
|
var _useState5 = useState(true), _useState6 = _slicedToArray(_useState5, 2), showChildren = _useState6[0], setShowChildren = _useState6[1];
|
|
63
64
|
var _useState7 = useState(""), _useState8 = _slicedToArray(_useState7, 2), transitionName = _useState8[0], setTransitionName = _useState8[1];
|
|
65
|
+
useLockScroll(nodeRef, innerVisible && lockScroll);
|
|
64
66
|
var classPrefix = "nut-popup";
|
|
65
67
|
var baseStyle = {
|
|
66
68
|
zIndex: index
|
|
@@ -76,7 +78,7 @@ var Popup = function Popup2(props) {
|
|
|
76
78
|
var open = function open2() {
|
|
77
79
|
if (!innerVisible) {
|
|
78
80
|
setInnerVisible(true);
|
|
79
|
-
setIndex(++
|
|
81
|
+
setIndex(++innerIndex);
|
|
80
82
|
}
|
|
81
83
|
if (destroyOnClose) {
|
|
82
84
|
setShowChildren(true);
|
|
@@ -166,7 +168,6 @@ var Popup = function Popup2(props) {
|
|
|
166
168
|
className: overlayClassName,
|
|
167
169
|
visible: innerVisible,
|
|
168
170
|
closeOnOverlayClick,
|
|
169
|
-
zIndex,
|
|
170
171
|
lockScroll,
|
|
171
172
|
duration,
|
|
172
173
|
onClick: onHandleClickOverlay
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import '@testing-library/jest-dom';
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
import { BasicComponent } from '@/utils/typings';
|
|
3
|
+
import { CalendarCardDay, CalendarCardMonth, CalendarCardValue } from './types';
|
|
4
|
+
export interface CalendarCardProps extends BasicComponent {
|
|
5
|
+
type: 'single' | 'multiple' | 'range' | 'week';
|
|
6
|
+
value?: CalendarCardValue;
|
|
7
|
+
defaultValue?: CalendarCardValue;
|
|
8
|
+
firstDayOfWeek?: number;
|
|
9
|
+
startDate?: Date;
|
|
10
|
+
endDate?: Date;
|
|
11
|
+
disableDay?: (day: CalendarCardDay) => boolean;
|
|
12
|
+
renderDay?: (day: CalendarCardDay) => ReactNode;
|
|
13
|
+
renderDayTop?: (day: CalendarCardDay) => ReactNode;
|
|
14
|
+
renderDayBottom?: (day: CalendarCardDay) => ReactNode;
|
|
15
|
+
onDayClick?: (day: CalendarCardDay) => void;
|
|
16
|
+
onPageChange: (data: CalendarCardMonth) => void;
|
|
17
|
+
onChange: (value: CalendarCardValue) => void;
|
|
18
|
+
}
|
|
19
|
+
type CalendarCardRef = {
|
|
20
|
+
jump: (step: number) => void;
|
|
21
|
+
jumpTo: (year: number, month: number) => void;
|
|
22
|
+
};
|
|
23
|
+
export declare const CalendarCard: React.ForwardRefExoticComponent<Partial<CalendarCardProps> & React.RefAttributes<CalendarCardRef>>;
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
import { BasicComponent } from '@/utils/typings';
|
|
3
|
+
import { CalendarCardDay, CalendarCardMonth, CalendarCardValue } from './types';
|
|
4
|
+
export interface CalendarCardProps extends BasicComponent {
|
|
5
|
+
type: 'single' | 'multiple' | 'range' | 'week';
|
|
6
|
+
value?: CalendarCardValue;
|
|
7
|
+
defaultValue?: CalendarCardValue;
|
|
8
|
+
firstDayOfWeek?: number;
|
|
9
|
+
startDate?: Date;
|
|
10
|
+
endDate?: Date;
|
|
11
|
+
disableDay?: (day: CalendarCardDay) => boolean;
|
|
12
|
+
renderDay?: (day: CalendarCardDay) => ReactNode;
|
|
13
|
+
renderDayTop?: (day: CalendarCardDay) => ReactNode;
|
|
14
|
+
renderDayBottom?: (day: CalendarCardDay) => ReactNode;
|
|
15
|
+
onDayClick?: (day: CalendarCardDay) => void;
|
|
16
|
+
onPageChange: (data: CalendarCardMonth) => void;
|
|
17
|
+
onChange: (value: CalendarCardValue) => void;
|
|
18
|
+
}
|
|
19
|
+
type CalendarCardRef = {
|
|
20
|
+
jump: (step: number) => void;
|
|
21
|
+
jumpTo: (year: number, month: number) => void;
|
|
22
|
+
};
|
|
23
|
+
export declare const CalendarCard: React.ForwardRefExoticComponent<Partial<CalendarCardProps> & React.RefAttributes<CalendarCardRef>>;
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export interface CalendarCardDay {
|
|
2
|
+
type?: 'prev' | 'current' | 'next';
|
|
3
|
+
year: number;
|
|
4
|
+
month: number;
|
|
5
|
+
date: number;
|
|
6
|
+
}
|
|
7
|
+
export interface CalendarCardMonth {
|
|
8
|
+
year: number;
|
|
9
|
+
month: number;
|
|
10
|
+
}
|
|
11
|
+
export type CalendarCardValue = Date | Date[] | null;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { CalendarCardDay } from './types';
|
|
2
|
+
export declare const convertDateToDay: (date: Date) => {
|
|
3
|
+
year: number;
|
|
4
|
+
month: number;
|
|
5
|
+
date: number;
|
|
6
|
+
} | null;
|
|
7
|
+
export declare const convertDayToDate: (day: CalendarCardDay) => Date | null;
|
|
8
|
+
/**
|
|
9
|
+
* 获取当月面板中前一个月的日期数据
|
|
10
|
+
*/
|
|
11
|
+
export declare const getPrevMonthDays: (year: number, month: number, firstDayOfWeek: number) => CalendarCardDay[];
|
|
12
|
+
/**
|
|
13
|
+
* 获取当前月的日期数据
|
|
14
|
+
*/
|
|
15
|
+
export declare const getCurrentMonthDays: (year: number, month: number) => CalendarCardDay[];
|
|
16
|
+
/**
|
|
17
|
+
* 根据日期获取当前周的起始日期
|
|
18
|
+
*/
|
|
19
|
+
export declare const getCurrentWeekDays: (day: CalendarCardDay, firstDayOfWeek: number) => CalendarCardDay[];
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { FunctionComponent } from 'react';
|
|
2
|
-
import { PickerOption } from '@/packages/picker/index';
|
|
2
|
+
import { PickerOption, PickerProps } from '@/packages/picker/index';
|
|
3
3
|
import { BasicComponent } from '@/utils/typings';
|
|
4
4
|
export interface DatePickerProps extends BasicComponent {
|
|
5
5
|
value?: Date;
|
|
@@ -12,6 +12,7 @@ export interface DatePickerProps extends BasicComponent {
|
|
|
12
12
|
startDate: Date;
|
|
13
13
|
endDate: Date;
|
|
14
14
|
threeDimensional: boolean;
|
|
15
|
+
pickerProps: Partial<Omit<PickerProps, 'defaultValue' | 'threeDimensional' | 'title' | 'value' | 'onConfirm' | 'onClose' | 'onChange'>>;
|
|
15
16
|
formatter: (type: string, option: PickerOption) => PickerOption;
|
|
16
17
|
filter: (type: string, option: PickerOption[]) => PickerOption[];
|
|
17
18
|
onClose: () => void;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { FunctionComponent } from 'react';
|
|
2
|
-
import { PickerOption } from '@/packages/picker/index';
|
|
2
|
+
import { PickerOption, PickerProps } from '@/packages/picker/index.taro';
|
|
3
3
|
import { BasicComponent } from '@/utils/typings';
|
|
4
4
|
export interface DatePickerProps extends BasicComponent {
|
|
5
5
|
value?: Date;
|
|
@@ -12,6 +12,7 @@ export interface DatePickerProps extends BasicComponent {
|
|
|
12
12
|
startDate: Date;
|
|
13
13
|
endDate: Date;
|
|
14
14
|
threeDimensional: boolean;
|
|
15
|
+
pickerProps: Partial<Omit<PickerProps, 'defaultValue' | 'threeDimensional' | 'title' | 'value' | 'onConfirm' | 'onClose' | 'onChange'>>;
|
|
15
16
|
formatter: (type: string, option: PickerOption) => PickerOption;
|
|
16
17
|
filter: (type: string, option: PickerOption[]) => PickerOption[];
|
|
17
18
|
onClose: () => void;
|
|
@@ -26,6 +26,7 @@ import Tabs from '@/packages/tabs';
|
|
|
26
26
|
import Address from '@/packages/address';
|
|
27
27
|
import Calendar from '@/packages/calendar';
|
|
28
28
|
import CalendarItem from '@/packages/calendaritem';
|
|
29
|
+
import CalendarCard from '@/packages/calendarcard';
|
|
29
30
|
import Cascader from '@/packages/cascader';
|
|
30
31
|
import Checkbox from '@/packages/checkbox';
|
|
31
32
|
import CheckboxGroup from '@/packages/checkboxgroup';
|
|
@@ -93,4 +94,4 @@ import TimeDetail from '@/packages/timedetail';
|
|
|
93
94
|
import TimeSelect from '@/packages/timeselect';
|
|
94
95
|
import TrendArrow from '@/packages/trendarrow';
|
|
95
96
|
import WaterMark from '@/packages/watermark';
|
|
96
|
-
export { Button, Cell, CellGroup, ConfigProvider, Image, Overlay, Col, Divider, Grid, GridItem, Layout, Row, Space, Sticky, BackTop, Elevator, FixedNav, NavBar, SideNavBar, SideNavBarItem, SubSideNavBar, Tabbar, TabbarItem, TabPane, Tabs, Address, Calendar, CalendarItem, Cascader, Checkbox, CheckboxGroup, DatePicker, Form, FormItem, Input, InputNumber, Menu, MenuItem, NumberKeyboard, Picker, Radio, RadioGroup, Range, Rate, SearchBar, ShortPassword, Signature, Switch, TextArea, Uploader, ActionSheet, Badge, Dialog, Drag, Empty, InfiniteLoading, Loading, NoticeBar, Notify, Popover, Popup, PullToRefresh, Skeleton, Swipe, Toast, Animate, AnimatingNumbers, Audio, Avatar, AvatarGroup, CircleProgress, Collapse, CollapseItem, CountDown, Ellipsis, ImagePreview, Indicator, Pagination, Price, Progress, Step, Steps, Swiper, SwiperItem, Table, Tag, Tour, Video, VirtualList, Barrage, Card, TimeDetail, TimeSelect, TrendArrow, WaterMark };
|
|
97
|
+
export { Button, Cell, CellGroup, ConfigProvider, Image, Overlay, Col, Divider, Grid, GridItem, Layout, Row, Space, Sticky, BackTop, Elevator, FixedNav, NavBar, SideNavBar, SideNavBarItem, SubSideNavBar, Tabbar, TabbarItem, TabPane, Tabs, Address, Calendar, CalendarItem, CalendarCard, Cascader, Checkbox, CheckboxGroup, DatePicker, Form, FormItem, Input, InputNumber, Menu, MenuItem, NumberKeyboard, Picker, Radio, RadioGroup, Range, Rate, SearchBar, ShortPassword, Signature, Switch, TextArea, Uploader, ActionSheet, Badge, Dialog, Drag, Empty, InfiniteLoading, Loading, NoticeBar, Notify, Popover, Popup, PullToRefresh, Skeleton, Swipe, Toast, Animate, AnimatingNumbers, Audio, Avatar, AvatarGroup, CircleProgress, Collapse, CollapseItem, CountDown, Ellipsis, ImagePreview, Indicator, Pagination, Price, Progress, Step, Steps, Swiper, SwiperItem, Table, Tag, Tour, Video, VirtualList, Barrage, Card, TimeDetail, TimeSelect, TrendArrow, WaterMark };
|
|
@@ -26,6 +26,7 @@ import Tabs from '@/packages/tabs';
|
|
|
26
26
|
import Address from '@/packages/address';
|
|
27
27
|
import Calendar from '@/packages/calendar';
|
|
28
28
|
import CalendarItem from '@/packages/calendaritem';
|
|
29
|
+
import CalendarCard from '@/packages/calendarcard';
|
|
29
30
|
import Cascader from '@/packages/cascader';
|
|
30
31
|
import Checkbox from '@/packages/checkbox';
|
|
31
32
|
import CheckboxGroup from '@/packages/checkboxgroup';
|
|
@@ -121,6 +122,7 @@ import '@/packages/tabs/tabs.scss';
|
|
|
121
122
|
import '@/packages/address/address.scss';
|
|
122
123
|
import '@/packages/calendar/calendar.scss';
|
|
123
124
|
import '@/packages/calendaritem/calendaritem.scss';
|
|
125
|
+
import '@/packages/calendarcard/calendarcard.scss';
|
|
124
126
|
import '@/packages/cascader/cascader.scss';
|
|
125
127
|
import '@/packages/checkbox/checkbox.scss';
|
|
126
128
|
import '@/packages/checkboxgroup/checkboxgroup.scss';
|
|
@@ -188,4 +190,4 @@ import '@/packages/timedetail/timedetail.scss';
|
|
|
188
190
|
import '@/packages/timeselect/timeselect.scss';
|
|
189
191
|
import '@/packages/trendarrow/trendarrow.scss';
|
|
190
192
|
import '@/packages/watermark/watermark.scss';
|
|
191
|
-
export { Button, Cell, CellGroup, ConfigProvider, Image, Overlay, Col, Divider, Grid, GridItem, Layout, Row, Space, Sticky, BackTop, Elevator, FixedNav, NavBar, SideNavBar, SideNavBarItem, SubSideNavBar, Tabbar, TabbarItem, TabPane, Tabs, Address, Calendar, CalendarItem, Cascader, Checkbox, CheckboxGroup, DatePicker, Form, FormItem, Input, InputNumber, Menu, MenuItem, NumberKeyboard, Picker, Radio, RadioGroup, Range, Rate, SearchBar, ShortPassword, Signature, Switch, TextArea, Uploader, ActionSheet, Badge, Dialog, Drag, Empty, InfiniteLoading, Loading, NoticeBar, Notify, Popover, Popup, PullToRefresh, Skeleton, Swipe, Toast, Animate, AnimatingNumbers, Audio, Avatar, AvatarGroup, CircleProgress, Collapse, CollapseItem, CountDown, Ellipsis, ImagePreview, Indicator, Pagination, Price, Progress, Step, Steps, Swiper, SwiperItem, Table, Tag, Tour, Video, VirtualList, Barrage, Card, TimeDetail, TimeSelect, TrendArrow, WaterMark };
|
|
193
|
+
export { Button, Cell, CellGroup, ConfigProvider, Image, Overlay, Col, Divider, Grid, GridItem, Layout, Row, Space, Sticky, BackTop, Elevator, FixedNav, NavBar, SideNavBar, SideNavBarItem, SubSideNavBar, Tabbar, TabbarItem, TabPane, Tabs, Address, Calendar, CalendarItem, CalendarCard, Cascader, Checkbox, CheckboxGroup, DatePicker, Form, FormItem, Input, InputNumber, Menu, MenuItem, NumberKeyboard, Picker, Radio, RadioGroup, Range, Rate, SearchBar, ShortPassword, Signature, Switch, TextArea, Uploader, ActionSheet, Badge, Dialog, Drag, Empty, InfiniteLoading, Loading, NoticeBar, Notify, Popover, Popup, PullToRefresh, Skeleton, Swipe, Toast, Animate, AnimatingNumbers, Audio, Avatar, AvatarGroup, CircleProgress, Collapse, CollapseItem, CountDown, Ellipsis, ImagePreview, Indicator, Pagination, Price, Progress, Step, Steps, Swiper, SwiperItem, Table, Tag, Tour, Video, VirtualList, Barrage, Card, TimeDetail, TimeSelect, TrendArrow, WaterMark };
|
|
@@ -26,6 +26,7 @@ import '@/packages/tabs/tabs.scss';
|
|
|
26
26
|
import '@/packages/address/address.scss';
|
|
27
27
|
import '@/packages/calendar/calendar.scss';
|
|
28
28
|
import '@/packages/calendaritem/calendaritem.scss';
|
|
29
|
+
import '@/packages/calendarcard/calendarcard.scss';
|
|
29
30
|
import '@/packages/cascader/cascader.scss';
|
|
30
31
|
import '@/packages/checkbox/checkbox.scss';
|
|
31
32
|
import '@/packages/checkboxgroup/checkboxgroup.scss';
|
|
@@ -26,6 +26,7 @@ import Tabs from '@/packages/tabs/index.taro';
|
|
|
26
26
|
import Address from '@/packages/address/index.taro';
|
|
27
27
|
import Calendar from '@/packages/calendar/index.taro';
|
|
28
28
|
import CalendarItem from '@/packages/calendaritem/index.taro';
|
|
29
|
+
import CalendarCard from '@/packages/calendarcard/index.taro';
|
|
29
30
|
import Cascader from '@/packages/cascader/index.taro';
|
|
30
31
|
import Checkbox from '@/packages/checkbox/index.taro';
|
|
31
32
|
import CheckboxGroup from '@/packages/checkboxgroup/index.taro';
|
|
@@ -121,6 +122,7 @@ import '@/packages/tabs/tabs.scss';
|
|
|
121
122
|
import '@/packages/address/address.scss';
|
|
122
123
|
import '@/packages/calendar/calendar.scss';
|
|
123
124
|
import '@/packages/calendaritem/calendaritem.scss';
|
|
125
|
+
import '@/packages/calendarcard/calendarcard.scss';
|
|
124
126
|
import '@/packages/cascader/cascader.scss';
|
|
125
127
|
import '@/packages/checkbox/checkbox.scss';
|
|
126
128
|
import '@/packages/checkboxgroup/checkboxgroup.scss';
|
|
@@ -188,4 +190,4 @@ import '@/packages/timedetail/timedetail.scss';
|
|
|
188
190
|
import '@/packages/timeselect/timeselect.scss';
|
|
189
191
|
import '@/packages/trendarrow/trendarrow.scss';
|
|
190
192
|
import '@/packages/watermark/watermark.scss';
|
|
191
|
-
export { Button, Cell, CellGroup, ConfigProvider, Image, Overlay, Col, Divider, Grid, GridItem, Layout, Row, Space, Sticky, BackTop, Elevator, FixedNav, NavBar, SideNavBar, SideNavBarItem, SubSideNavBar, Tabbar, TabbarItem, TabPane, Tabs, Address, Calendar, CalendarItem, Cascader, Checkbox, CheckboxGroup, DatePicker, Form, FormItem, Input, InputNumber, Menu, MenuItem, NumberKeyboard, Picker, Radio, RadioGroup, Range, Rate, SearchBar, ShortPassword, Signature, Switch, TextArea, Uploader, ActionSheet, Badge, Dialog, Drag, Empty, InfiniteLoading, Loading, NoticeBar, Notify, Popover, Popup, PullToRefresh, Skeleton, Swipe, Toast, Animate, AnimatingNumbers, Audio, Avatar, AvatarGroup, CircleProgress, Collapse, CollapseItem, CountDown, Ellipsis, ImagePreview, Indicator, Pagination, Price, Progress, Step, Steps, Swiper, SwiperItem, Table, Tag, Tour, Video, VirtualList, Barrage, Card, TimeDetail, TimeSelect, TrendArrow, WaterMark };
|
|
193
|
+
export { Button, Cell, CellGroup, ConfigProvider, Image, Overlay, Col, Divider, Grid, GridItem, Layout, Row, Space, Sticky, BackTop, Elevator, FixedNav, NavBar, SideNavBar, SideNavBarItem, SubSideNavBar, Tabbar, TabbarItem, TabPane, Tabs, Address, Calendar, CalendarItem, CalendarCard, Cascader, Checkbox, CheckboxGroup, DatePicker, Form, FormItem, Input, InputNumber, Menu, MenuItem, NumberKeyboard, Picker, Radio, RadioGroup, Range, Rate, SearchBar, ShortPassword, Signature, Switch, TextArea, Uploader, ActionSheet, Badge, Dialog, Drag, Empty, InfiniteLoading, Loading, NoticeBar, Notify, Popover, Popup, PullToRefresh, Skeleton, Swipe, Toast, Animate, AnimatingNumbers, Audio, Avatar, AvatarGroup, CircleProgress, Collapse, CollapseItem, CountDown, Ellipsis, ImagePreview, Indicator, Pagination, Price, Progress, Step, Steps, Swiper, SwiperItem, Table, Tag, Tour, Video, VirtualList, Barrage, Card, TimeDetail, TimeSelect, TrendArrow, WaterMark };
|
|
@@ -26,6 +26,7 @@ import '@/packages/tabs/tabs.scss';
|
|
|
26
26
|
import '@/packages/address/address.scss';
|
|
27
27
|
import '@/packages/calendar/calendar.scss';
|
|
28
28
|
import '@/packages/calendaritem/calendaritem.scss';
|
|
29
|
+
import '@/packages/calendarcard/calendarcard.scss';
|
|
29
30
|
import '@/packages/cascader/cascader.scss';
|
|
30
31
|
import '@/packages/checkbox/checkbox.scss';
|
|
31
32
|
import '@/packages/checkboxgroup/checkboxgroup.scss';
|
|
@@ -26,6 +26,7 @@ import Tabs from '@/packages/tabs/index.taro';
|
|
|
26
26
|
import Address from '@/packages/address/index.taro';
|
|
27
27
|
import Calendar from '@/packages/calendar/index.taro';
|
|
28
28
|
import CalendarItem from '@/packages/calendaritem/index.taro';
|
|
29
|
+
import CalendarCard from '@/packages/calendarcard/index.taro';
|
|
29
30
|
import Cascader from '@/packages/cascader/index.taro';
|
|
30
31
|
import Checkbox from '@/packages/checkbox/index.taro';
|
|
31
32
|
import CheckboxGroup from '@/packages/checkboxgroup/index.taro';
|
|
@@ -93,4 +94,4 @@ import TimeDetail from '@/packages/timedetail/index.taro';
|
|
|
93
94
|
import TimeSelect from '@/packages/timeselect/index.taro';
|
|
94
95
|
import TrendArrow from '@/packages/trendarrow/index.taro';
|
|
95
96
|
import WaterMark from '@/packages/watermark/index.taro';
|
|
96
|
-
export { Button, Cell, CellGroup, ConfigProvider, Image, Overlay, Col, Divider, Grid, GridItem, Layout, Row, Space, Sticky, BackTop, Elevator, FixedNav, NavBar, SideNavBar, SideNavBarItem, SubSideNavBar, Tabbar, TabbarItem, TabPane, Tabs, Address, Calendar, CalendarItem, Cascader, Checkbox, CheckboxGroup, DatePicker, Form, FormItem, Input, InputNumber, Menu, MenuItem, NumberKeyboard, Picker, Radio, RadioGroup, Range, Rate, SearchBar, ShortPassword, Signature, Switch, TextArea, Uploader, ActionSheet, Badge, Dialog, Drag, Empty, InfiniteLoading, Loading, NoticeBar, Notify, Popover, Popup, PullToRefresh, Skeleton, Swipe, Toast, Animate, AnimatingNumbers, Audio, Avatar, AvatarGroup, CircleProgress, Collapse, CollapseItem, CountDown, Ellipsis, ImagePreview, Indicator, Pagination, Price, Progress, Step, Steps, Swiper, SwiperItem, Table, Tag, Tour, Video, VirtualList, Barrage, Card, TimeDetail, TimeSelect, TrendArrow, WaterMark };
|
|
97
|
+
export { Button, Cell, CellGroup, ConfigProvider, Image, Overlay, Col, Divider, Grid, GridItem, Layout, Row, Space, Sticky, BackTop, Elevator, FixedNav, NavBar, SideNavBar, SideNavBarItem, SubSideNavBar, Tabbar, TabbarItem, TabPane, Tabs, Address, Calendar, CalendarItem, CalendarCard, Cascader, Checkbox, CheckboxGroup, DatePicker, Form, FormItem, Input, InputNumber, Menu, MenuItem, NumberKeyboard, Picker, Radio, RadioGroup, Range, Rate, SearchBar, ShortPassword, Signature, Switch, TextArea, Uploader, ActionSheet, Badge, Dialog, Drag, Empty, InfiniteLoading, Loading, NoticeBar, Notify, Popover, Popup, PullToRefresh, Skeleton, Swipe, Toast, Animate, AnimatingNumbers, Audio, Avatar, AvatarGroup, CircleProgress, Collapse, CollapseItem, CountDown, Ellipsis, ImagePreview, Indicator, Pagination, Price, Progress, Step, Steps, Swiper, SwiperItem, Table, Tag, Tour, Video, VirtualList, Barrage, Card, TimeDetail, TimeSelect, TrendArrow, WaterMark };
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import React, { RefObject } from 'react';
|
|
2
|
+
import { PopupProps } from '@/packages/popup/popup';
|
|
2
3
|
import { PickerOption } from './types';
|
|
3
4
|
import { BasicComponent } from '@/utils/typings';
|
|
4
5
|
export type PickerActions = {
|
|
@@ -13,6 +14,7 @@ export interface PickerProps extends Omit<BasicComponent, 'children'> {
|
|
|
13
14
|
defaultValue?: (number | string)[];
|
|
14
15
|
threeDimensional?: boolean;
|
|
15
16
|
duration: number | string;
|
|
17
|
+
popupProps: Partial<Omit<PopupProps, 'title' | 'onClose'>>;
|
|
16
18
|
onConfirm?: (selectedOptions: PickerOption[], selectedValue: (string | number)[]) => void;
|
|
17
19
|
onClose?: (selectedOptions: PickerOption[], selectedValue: (string | number)[]) => void;
|
|
18
20
|
afterClose?: (selectedOptions: PickerOption[], selectedValue: (string | number)[], pickerRef: RefObject<HTMLDivElement>) => void;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import React, { RefObject } from 'react';
|
|
2
|
+
import { PopupProps } from '@/packages/popup/popup.taro';
|
|
2
3
|
import { PickerOption } from './types';
|
|
3
4
|
import { BasicComponent } from '@/utils/typings';
|
|
4
5
|
export type PickerActions = {
|
|
@@ -13,6 +14,7 @@ export interface PickerProps extends Omit<BasicComponent, 'children'> {
|
|
|
13
14
|
defaultValue?: (number | string)[];
|
|
14
15
|
threeDimensional?: boolean;
|
|
15
16
|
duration: number | string;
|
|
17
|
+
popupProps: Partial<Omit<PopupProps, 'title' | 'onClose'>>;
|
|
16
18
|
onConfirm?: (selectedOptions: PickerOption[], selectedValue: (string | number)[]) => void;
|
|
17
19
|
onClose?: (selectedOptions: PickerOption[], selectedValue: (string | number)[]) => void;
|
|
18
20
|
afterClose?: (selectedOptions: PickerOption[], selectedValue: (string | number)[], pickerRef: RefObject<HTMLDivElement>) => void;
|
|
@@ -1,17 +1,16 @@
|
|
|
1
|
+
import React from 'react';
|
|
1
2
|
type Direction = '' | 'vertical' | 'horizontal';
|
|
2
3
|
export declare function useTouch(): {
|
|
3
4
|
move: (event: React.TouchEvent<HTMLElement>) => void;
|
|
4
5
|
start: (event: React.TouchEvent<HTMLElement>) => void;
|
|
5
6
|
reset: () => void;
|
|
6
|
-
startX: number
|
|
7
|
-
startY: number
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
offsetY: number;
|
|
14
|
-
direction: Direction;
|
|
7
|
+
startX: React.MutableRefObject<number>;
|
|
8
|
+
startY: React.MutableRefObject<number>;
|
|
9
|
+
deltaX: React.MutableRefObject<number>;
|
|
10
|
+
deltaY: React.MutableRefObject<number>;
|
|
11
|
+
offsetX: React.MutableRefObject<number>;
|
|
12
|
+
offsetY: React.MutableRefObject<number>;
|
|
13
|
+
direction: React.MutableRefObject<Direction>;
|
|
15
14
|
isVertical: () => boolean;
|
|
16
15
|
isHorizontal: () => boolean;
|
|
17
16
|
};
|
package/dist/esm/use-touch.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { useState } from "react";
|
|
1
|
+
import { useRef } from "react";
|
|
3
2
|
var MIN_DISTANCE = 10;
|
|
4
3
|
function getDirection(x, y) {
|
|
5
4
|
if (x > y && x > MIN_DISTANCE) {
|
|
@@ -11,45 +10,39 @@ function getDirection(x, y) {
|
|
|
11
10
|
return "";
|
|
12
11
|
}
|
|
13
12
|
function useTouch() {
|
|
14
|
-
var
|
|
15
|
-
var
|
|
16
|
-
var
|
|
17
|
-
var
|
|
18
|
-
var
|
|
19
|
-
var
|
|
20
|
-
var
|
|
21
|
-
var _useState15 = useState(0), _useState16 = _slicedToArray(_useState15, 2), offsetY = _useState16[0], SetOffsetY = _useState16[1];
|
|
22
|
-
var _useState17 = useState(""), _useState18 = _slicedToArray(_useState17, 2), direction = _useState18[0], SetDirection = _useState18[1];
|
|
13
|
+
var startX = useRef(0);
|
|
14
|
+
var startY = useRef(0);
|
|
15
|
+
var deltaX = useRef(0);
|
|
16
|
+
var deltaY = useRef(0);
|
|
17
|
+
var offsetX = useRef(0);
|
|
18
|
+
var offsetY = useRef(0);
|
|
19
|
+
var direction = useRef("");
|
|
23
20
|
var isVertical = function isVertical2() {
|
|
24
|
-
return direction === "vertical";
|
|
21
|
+
return direction.current === "vertical";
|
|
25
22
|
};
|
|
26
23
|
var isHorizontal = function isHorizontal2() {
|
|
27
|
-
return direction === "horizontal";
|
|
24
|
+
return direction.current === "horizontal";
|
|
28
25
|
};
|
|
29
26
|
var reset = function reset2() {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
27
|
+
deltaX.current = 0;
|
|
28
|
+
deltaY.current = 0;
|
|
29
|
+
offsetX.current = 0;
|
|
30
|
+
offsetY.current = 0;
|
|
31
|
+
direction.current = "";
|
|
35
32
|
};
|
|
36
33
|
var start = function start2(event) {
|
|
37
34
|
reset();
|
|
38
|
-
|
|
39
|
-
|
|
35
|
+
startX.current = event.touches[0].clientX;
|
|
36
|
+
startY.current = event.touches[0].clientY;
|
|
40
37
|
};
|
|
41
38
|
var move = function move2(event) {
|
|
42
39
|
var touch = event.touches[0];
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
SetOffsetX(Math.abs(dX));
|
|
50
|
-
SetOffsetY(Math.abs(dY));
|
|
51
|
-
if (!direction) {
|
|
52
|
-
SetDirection(getDirection(offsetX, offsetY));
|
|
40
|
+
deltaX.current = touch.clientX < 0 ? 0 : touch.clientX - startX.current;
|
|
41
|
+
deltaY.current = touch.clientY - startY.current;
|
|
42
|
+
offsetX.current = Math.abs(deltaX.current);
|
|
43
|
+
offsetY.current = Math.abs(deltaY.current);
|
|
44
|
+
if (!direction.current) {
|
|
45
|
+
direction.current = getDirection(offsetX.current, offsetY.current);
|
|
53
46
|
}
|
|
54
47
|
};
|
|
55
48
|
return {
|
|
@@ -58,8 +51,6 @@ function useTouch() {
|
|
|
58
51
|
reset,
|
|
59
52
|
startX,
|
|
60
53
|
startY,
|
|
61
|
-
moveX,
|
|
62
|
-
moveY,
|
|
63
54
|
deltaX,
|
|
64
55
|
deltaY,
|
|
65
56
|
offsetX,
|
package/dist/locales/base.js
CHANGED
package/dist/locales/en-US.js
CHANGED
package/dist/locales/id-ID.js
CHANGED
package/dist/locales/tr-TR.js
CHANGED
package/dist/locales/zh-CN.js
CHANGED
package/dist/locales/zh-TW.js
CHANGED
package/dist/locales/zh-UG.js
CHANGED