@nutui/nutui-react 2.0.21 → 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 +24 -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/Input.js +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 +9 -6
- 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 +32 -9
- 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/PullToRefresh.js +2 -14
- 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/TabPane/style/style.css +1 -1
- package/dist/esm/Tabs/style/style.css +1 -1
- 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/supports-passive.js +17 -0
- 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/image/demo.taro.d.ts +0 -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-props-value.d.ts +1 -1
- package/dist/esm/types/src/utils/use-touch.d.ts +8 -9
- package/dist/esm/use-props-value.js +3 -2
- 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 +733 -228
- package/dist/nutui.react.umd.js +733 -228
- 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/packages/tabpane/tabpane.scss +0 -8
- package/dist/packages/tabs/tabs.scss +6 -8
- 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-props-value.d.ts +1 -1
- 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
|
@@ -26,167 +26,169 @@ import { default as default26 } from "./Tabs.js";
|
|
|
26
26
|
import { default as default27 } from "./Address.js";
|
|
27
27
|
import { default as default28 } from "./Calendar.js";
|
|
28
28
|
import { default as default29 } from "./CalendarItem.js";
|
|
29
|
-
import { default as default30 } from "./
|
|
30
|
-
import { default as default31 } from "./
|
|
31
|
-
import { default as default32 } from "./
|
|
32
|
-
import { default as default33 } from "./
|
|
33
|
-
import { default as default34 } from "./
|
|
34
|
-
import { default as default35 } from "./
|
|
35
|
-
import { default as default36 } from "./
|
|
36
|
-
import { default as default37 } from "./
|
|
37
|
-
import { default as default38 } from "./
|
|
38
|
-
import { default as default39 } from "./
|
|
39
|
-
import { default as default40 } from "./
|
|
40
|
-
import { default as default41 } from "./
|
|
41
|
-
import { default as default42 } from "./
|
|
42
|
-
import { default as default43 } from "./
|
|
43
|
-
import { default as default44 } from "./
|
|
44
|
-
import { default as default45 } from "./
|
|
45
|
-
import { default as default46 } from "./
|
|
46
|
-
import { default as default47 } from "./
|
|
47
|
-
import { default as default48 } from "./
|
|
48
|
-
import { default as default49 } from "./
|
|
49
|
-
import { default as default50 } from "./
|
|
50
|
-
import { default as default51 } from "./
|
|
51
|
-
import { default as default52 } from "./
|
|
52
|
-
import { default as default53 } from "./
|
|
53
|
-
import { default as default54 } from "./
|
|
54
|
-
import { default as default55 } from "./
|
|
55
|
-
import { default as default56 } from "./
|
|
56
|
-
import { default as default57 } from "./
|
|
57
|
-
import { default as default58 } from "./
|
|
58
|
-
import { default as default59 } from "./
|
|
59
|
-
import { default as default60 } from "./
|
|
60
|
-
import { default as default61 } from "./
|
|
61
|
-
import { default as default62 } from "./
|
|
62
|
-
import { default as default63 } from "./
|
|
63
|
-
import { default as default64 } from "./
|
|
64
|
-
import { default as default65 } from "./
|
|
65
|
-
import { default as default66 } from "./
|
|
66
|
-
import { default as default67 } from "./
|
|
67
|
-
import { default as default68 } from "./
|
|
68
|
-
import { default as default69 } from "./
|
|
69
|
-
import { default as default70 } from "./
|
|
70
|
-
import { default as default71 } from "./
|
|
71
|
-
import { default as default72 } from "./
|
|
72
|
-
import { default as default73 } from "./
|
|
73
|
-
import { default as default74 } from "./
|
|
74
|
-
import { default as default75 } from "./
|
|
75
|
-
import { default as default76 } from "./
|
|
76
|
-
import { default as default77 } from "./
|
|
77
|
-
import { default as default78 } from "./
|
|
78
|
-
import { default as default79 } from "./
|
|
79
|
-
import { default as default80 } from "./
|
|
80
|
-
import { default as default81 } from "./
|
|
81
|
-
import { default as default82 } from "./
|
|
82
|
-
import { default as default83 } from "./
|
|
83
|
-
import { default as default84 } from "./
|
|
84
|
-
import { default as default85 } from "./
|
|
85
|
-
import { default as default86 } from "./
|
|
86
|
-
import { default as default87 } from "./
|
|
87
|
-
import { default as default88 } from "./
|
|
88
|
-
import { default as default89 } from "./
|
|
89
|
-
import { default as default90 } from "./
|
|
90
|
-
import { default as default91 } from "./
|
|
91
|
-
import { default as default92 } from "./
|
|
92
|
-
import { default as default93 } from "./
|
|
93
|
-
import { default as default94 } from "./
|
|
94
|
-
import { default as default95 } from "./
|
|
95
|
-
import { default as default96 } from "./
|
|
29
|
+
import { default as default30 } from "./CalendarCard.js";
|
|
30
|
+
import { default as default31 } from "./Cascader.js";
|
|
31
|
+
import { default as default32 } from "./Checkbox.js";
|
|
32
|
+
import { default as default33 } from "./CheckboxGroup.js";
|
|
33
|
+
import { default as default34 } from "./DatePicker.js";
|
|
34
|
+
import { default as default35 } from "./Form.js";
|
|
35
|
+
import { default as default36 } from "./FormItem.js";
|
|
36
|
+
import { default as default37 } from "./Input.js";
|
|
37
|
+
import { default as default38 } from "./InputNumber.js";
|
|
38
|
+
import { default as default39 } from "./Menu.js";
|
|
39
|
+
import { default as default40 } from "./MenuItem.js";
|
|
40
|
+
import { default as default41 } from "./NumberKeyboard.js";
|
|
41
|
+
import { default as default42 } from "./Picker.js";
|
|
42
|
+
import { default as default43 } from "./Radio.js";
|
|
43
|
+
import { default as default44 } from "./RadioGroup.js";
|
|
44
|
+
import { default as default45 } from "./Range.js";
|
|
45
|
+
import { default as default46 } from "./Rate.js";
|
|
46
|
+
import { default as default47 } from "./SearchBar.js";
|
|
47
|
+
import { default as default48 } from "./ShortPassword.js";
|
|
48
|
+
import { default as default49 } from "./Signature.js";
|
|
49
|
+
import { default as default50 } from "./Switch.js";
|
|
50
|
+
import { default as default51 } from "./TextArea.js";
|
|
51
|
+
import { default as default52 } from "./Uploader.js";
|
|
52
|
+
import { default as default53 } from "./ActionSheet.js";
|
|
53
|
+
import { default as default54 } from "./Badge.js";
|
|
54
|
+
import { default as default55 } from "./Dialog.js";
|
|
55
|
+
import { default as default56 } from "./Drag.js";
|
|
56
|
+
import { default as default57 } from "./Empty.js";
|
|
57
|
+
import { default as default58 } from "./InfiniteLoading.js";
|
|
58
|
+
import { default as default59 } from "./Loading.js";
|
|
59
|
+
import { default as default60 } from "./NoticeBar.js";
|
|
60
|
+
import { default as default61 } from "./Notify.js";
|
|
61
|
+
import { default as default62 } from "./Popover.js";
|
|
62
|
+
import { default as default63 } from "./Popup.js";
|
|
63
|
+
import { default as default64 } from "./PullToRefresh.js";
|
|
64
|
+
import { default as default65 } from "./Skeleton.js";
|
|
65
|
+
import { default as default66 } from "./Swipe.js";
|
|
66
|
+
import { default as default67 } from "./Toast.js";
|
|
67
|
+
import { default as default68 } from "./Animate.js";
|
|
68
|
+
import { default as default69 } from "./AnimatingNumbers.js";
|
|
69
|
+
import { default as default70 } from "./Audio.js";
|
|
70
|
+
import { default as default71 } from "./Avatar.js";
|
|
71
|
+
import { default as default72 } from "./AvatarGroup.js";
|
|
72
|
+
import { default as default73 } from "./CircleProgress.js";
|
|
73
|
+
import { default as default74 } from "./Collapse.js";
|
|
74
|
+
import { default as default75 } from "./CollapseItem.js";
|
|
75
|
+
import { default as default76 } from "./CountDown.js";
|
|
76
|
+
import { default as default77 } from "./Ellipsis.js";
|
|
77
|
+
import { default as default78 } from "./ImagePreview.js";
|
|
78
|
+
import { default as default79 } from "./Indicator.js";
|
|
79
|
+
import { default as default80 } from "./Pagination.js";
|
|
80
|
+
import { default as default81 } from "./Price.js";
|
|
81
|
+
import { default as default82 } from "./Progress.js";
|
|
82
|
+
import { default as default83 } from "./Step.js";
|
|
83
|
+
import { default as default84 } from "./Steps.js";
|
|
84
|
+
import { default as default85 } from "./Swiper.js";
|
|
85
|
+
import { default as default86 } from "./SwiperItem.js";
|
|
86
|
+
import { default as default87 } from "./Table.js";
|
|
87
|
+
import { default as default88 } from "./Tag.js";
|
|
88
|
+
import { default as default89 } from "./Tour.js";
|
|
89
|
+
import { default as default90 } from "./Video.js";
|
|
90
|
+
import { default as default91 } from "./VirtualList.js";
|
|
91
|
+
import { default as default92 } from "./Barrage.js";
|
|
92
|
+
import { default as default93 } from "./Card.js";
|
|
93
|
+
import { default as default94 } from "./TimeDetail.js";
|
|
94
|
+
import { default as default95 } from "./TimeSelect.js";
|
|
95
|
+
import { default as default96 } from "./TrendArrow.js";
|
|
96
|
+
import { default as default97 } from "./WaterMark.js";
|
|
96
97
|
export {
|
|
97
|
-
|
|
98
|
+
default53 as ActionSheet,
|
|
98
99
|
default27 as Address,
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
100
|
+
default68 as Animate,
|
|
101
|
+
default69 as AnimatingNumbers,
|
|
102
|
+
default70 as Audio,
|
|
103
|
+
default71 as Avatar,
|
|
104
|
+
default72 as AvatarGroup,
|
|
104
105
|
default16 as BackTop,
|
|
105
|
-
|
|
106
|
-
|
|
106
|
+
default54 as Badge,
|
|
107
|
+
default92 as Barrage,
|
|
107
108
|
default2 as Button,
|
|
108
109
|
default28 as Calendar,
|
|
110
|
+
default30 as CalendarCard,
|
|
109
111
|
default29 as CalendarItem,
|
|
110
|
-
|
|
111
|
-
|
|
112
|
+
default93 as Card,
|
|
113
|
+
default31 as Cascader,
|
|
112
114
|
default3 as Cell,
|
|
113
115
|
default4 as CellGroup,
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
116
|
+
default32 as Checkbox,
|
|
117
|
+
default33 as CheckboxGroup,
|
|
118
|
+
default73 as CircleProgress,
|
|
117
119
|
default8 as Col,
|
|
118
|
-
|
|
119
|
-
|
|
120
|
+
default74 as Collapse,
|
|
121
|
+
default75 as CollapseItem,
|
|
120
122
|
default5 as ConfigProvider,
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
123
|
+
default76 as CountDown,
|
|
124
|
+
default34 as DatePicker,
|
|
125
|
+
default55 as Dialog,
|
|
124
126
|
default9 as Divider,
|
|
125
|
-
|
|
127
|
+
default56 as Drag,
|
|
126
128
|
default17 as Elevator,
|
|
127
|
-
|
|
128
|
-
|
|
129
|
+
default77 as Ellipsis,
|
|
130
|
+
default57 as Empty,
|
|
129
131
|
default18 as FixedNav,
|
|
130
|
-
|
|
131
|
-
|
|
132
|
+
default35 as Form,
|
|
133
|
+
default36 as FormItem,
|
|
132
134
|
default10 as Grid,
|
|
133
135
|
default11 as GridItem,
|
|
134
136
|
default6 as Image,
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
137
|
+
default78 as ImagePreview,
|
|
138
|
+
default79 as Indicator,
|
|
139
|
+
default58 as InfiniteLoading,
|
|
140
|
+
default37 as Input,
|
|
141
|
+
default38 as InputNumber,
|
|
140
142
|
default12 as Layout,
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
143
|
+
default59 as Loading,
|
|
144
|
+
default39 as Menu,
|
|
145
|
+
default40 as MenuItem,
|
|
144
146
|
default19 as NavBar,
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
147
|
+
default60 as NoticeBar,
|
|
148
|
+
default61 as Notify,
|
|
149
|
+
default41 as NumberKeyboard,
|
|
148
150
|
default7 as Overlay,
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
151
|
+
default80 as Pagination,
|
|
152
|
+
default42 as Picker,
|
|
153
|
+
default62 as Popover,
|
|
154
|
+
default63 as Popup,
|
|
155
|
+
default81 as Price,
|
|
156
|
+
default82 as Progress,
|
|
157
|
+
default64 as PullToRefresh,
|
|
158
|
+
default43 as Radio,
|
|
159
|
+
default44 as RadioGroup,
|
|
160
|
+
default45 as Range,
|
|
161
|
+
default46 as Rate,
|
|
160
162
|
default13 as Row,
|
|
161
|
-
|
|
162
|
-
|
|
163
|
+
default47 as SearchBar,
|
|
164
|
+
default48 as ShortPassword,
|
|
163
165
|
default20 as SideNavBar,
|
|
164
166
|
default21 as SideNavBarItem,
|
|
165
|
-
|
|
166
|
-
|
|
167
|
+
default49 as Signature,
|
|
168
|
+
default65 as Skeleton,
|
|
167
169
|
default14 as Space,
|
|
168
|
-
|
|
169
|
-
|
|
170
|
+
default83 as Step,
|
|
171
|
+
default84 as Steps,
|
|
170
172
|
default15 as Sticky,
|
|
171
173
|
default22 as SubSideNavBar,
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
174
|
+
default66 as Swipe,
|
|
175
|
+
default85 as Swiper,
|
|
176
|
+
default86 as SwiperItem,
|
|
177
|
+
default50 as Switch,
|
|
176
178
|
default25 as TabPane,
|
|
177
179
|
default23 as Tabbar,
|
|
178
180
|
default24 as TabbarItem,
|
|
179
|
-
|
|
181
|
+
default87 as Table,
|
|
180
182
|
default26 as Tabs,
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
183
|
+
default88 as Tag,
|
|
184
|
+
default51 as TextArea,
|
|
185
|
+
default94 as TimeDetail,
|
|
186
|
+
default95 as TimeSelect,
|
|
187
|
+
default67 as Toast,
|
|
188
|
+
default89 as Tour,
|
|
189
|
+
default96 as TrendArrow,
|
|
190
|
+
default52 as Uploader,
|
|
191
|
+
default90 as Video,
|
|
192
|
+
default91 as VirtualList,
|
|
193
|
+
default97 as WaterMark
|
|
192
194
|
};
|
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,17 @@
|
|
|
1
|
+
import { c as canUseDom } from "./can-use-dom.js";
|
|
2
|
+
var passiveSupported = false;
|
|
3
|
+
if (canUseDom) {
|
|
4
|
+
try {
|
|
5
|
+
var opts = Object.defineProperty({}, "passive", {
|
|
6
|
+
get: function get() {
|
|
7
|
+
passiveSupported = true;
|
|
8
|
+
}
|
|
9
|
+
});
|
|
10
|
+
window.addEventListener("test-passive-supported", null, opts);
|
|
11
|
+
} catch (e) {
|
|
12
|
+
console.log(e);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
export {
|
|
16
|
+
passiveSupported as p
|
|
17
|
+
};
|
|
@@ -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;
|