@nutui/nutui-react-taro 3.0.19-cpp.25 → 3.0.19-cpp.26-beta.2
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/dist/cjs/locales/base.d.ts +3 -0
- package/dist/cjs/locales/en-US.js +4 -1
- package/dist/cjs/locales/id-ID.js +4 -1
- package/dist/cjs/locales/ja-JP.js +4 -1
- package/dist/cjs/locales/tr-TR.js +4 -1
- package/dist/cjs/locales/zh-CN.js +4 -1
- package/dist/cjs/locales/zh-TW.js +4 -1
- package/dist/cjs/locales/zh-UG.js +4 -1
- package/dist/cjs/packages/actionsheet/style/style.harmony.css +45 -24
- package/dist/cjs/packages/address/style/style.harmony.css +45 -24
- package/dist/cjs/packages/calendar/style/style.harmony.css +45 -24
- package/dist/cjs/packages/cascader/style/style.harmony.css +45 -24
- package/dist/cjs/packages/configprovider/types.d.ts +1 -1
- package/dist/cjs/packages/datepicker/style/style.harmony.css +46 -25
- package/dist/cjs/packages/imagepreview/style/style.harmony.css +45 -24
- package/dist/cjs/packages/numberkeyboard/style/style.css +1 -1
- package/dist/cjs/packages/numberkeyboard/style/style.harmony.css +46 -25
- package/dist/cjs/packages/nutui.react.build.d.ts +3 -1
- package/dist/cjs/packages/nutui.react.build.js +18 -14
- package/dist/cjs/packages/nutui.react.d.ts +4 -1
- package/dist/cjs/packages/nutui.react.js +19 -14
- package/dist/cjs/packages/nutui.react.scss.d.ts +1 -0
- package/dist/cjs/packages/nutui.react.scss.js +1 -0
- package/dist/cjs/packages/overlay/overlay.js +11 -17
- package/dist/cjs/packages/picker/style/style.css +1 -1
- package/dist/cjs/packages/picker/style/style.harmony.css +46 -25
- package/dist/cjs/packages/popover/style/style.harmony.css +45 -24
- package/dist/cjs/packages/popup/popup.js +171 -99
- package/dist/cjs/packages/popup/style/popup.scss +29 -9
- package/dist/cjs/packages/popup/style/style.css +45 -24
- package/dist/cjs/packages/popup/style/style.harmony.css +45 -24
- package/dist/cjs/packages/popup/style-jmapp/popup.scss +29 -9
- package/dist/cjs/packages/popup/style-jmapp/style.css +29 -8
- package/dist/cjs/packages/popup/style-jrkf/popup.scss +29 -9
- package/dist/cjs/packages/popup/style-jrkf/style.css +29 -8
- package/dist/cjs/packages/quickenter/index.d.ts +3 -0
- package/dist/cjs/packages/quickenter/index.js +13 -0
- package/dist/cjs/packages/quickenter/quickenter.d.ts +4 -0
- package/dist/cjs/packages/quickenter/quickenter.js +147 -0
- package/dist/cjs/packages/quickenter/style/css.js +2 -0
- package/dist/cjs/packages/quickenter/style/index.js +2 -0
- package/dist/cjs/packages/quickenter/style/quickenter.scss +110 -0
- package/dist/cjs/packages/quickenter/style/style.css +99 -0
- package/dist/cjs/packages/quickenter/style/style.harmony.css +500 -0
- package/dist/cjs/packages/quickenter/style-jmapp/css.js +2 -0
- package/dist/cjs/packages/quickenter/style-jmapp/index.js +2 -0
- package/dist/cjs/packages/quickenter/style-jmapp/quickenter.scss +110 -0
- package/dist/cjs/packages/quickenter/style-jmapp/style.css +99 -0
- package/dist/cjs/packages/quickenter/style-jrkf/css.js +2 -0
- package/dist/cjs/packages/quickenter/style-jrkf/index.js +2 -0
- package/dist/cjs/packages/quickenter/style-jrkf/quickenter.scss +110 -0
- package/dist/cjs/packages/quickenter/style-jrkf/style.css +99 -0
- package/dist/cjs/packages/shortpassword/style/style.harmony.css +45 -24
- package/dist/cjs/packages/timeselect/style/style.harmony.css +45 -24
- package/dist/cjs/packages/tour/style/style.harmony.css +45 -24
- package/dist/cjs/types/index.d.ts +3 -0
- package/dist/cjs/types/index.js +3 -0
- package/dist/cjs/types/spec/quickenter/base.d.ts +26 -0
- package/dist/cjs/types/spec/quickenter/base.js +4 -0
- package/dist/cjs/types/spec/quickenter/h5.d.ts +5 -0
- package/dist/cjs/types/spec/quickenter/h5.js +4 -0
- package/dist/cjs/types/spec/quickenter/taro.d.ts +5 -0
- package/dist/cjs/types/spec/quickenter/taro.js +4 -0
- package/dist/cjs/utils/taro/ConfigurableCSSTransition.d.ts +15 -0
- package/dist/cjs/utils/taro/ConfigurableCSSTransition.js +90 -0
- package/dist/es/locales/base.d.ts +3 -0
- package/dist/es/locales/en-US.js +4 -1
- package/dist/es/locales/id-ID.js +4 -1
- package/dist/es/locales/ja-JP.js +4 -1
- package/dist/es/locales/tr-TR.js +4 -1
- package/dist/es/locales/zh-CN.js +4 -1
- package/dist/es/locales/zh-TW.js +4 -1
- package/dist/es/locales/zh-UG.js +4 -1
- package/dist/es/packages/actionsheet/style/style.harmony.css +45 -24
- package/dist/es/packages/address/style/style.harmony.css +45 -24
- package/dist/es/packages/calendar/style/style.harmony.css +45 -24
- package/dist/es/packages/cascader/style/style.harmony.css +45 -24
- package/dist/es/packages/configprovider/types.d.ts +1 -1
- package/dist/es/packages/datepicker/style/style.harmony.css +46 -25
- package/dist/es/packages/imagepreview/style/style.harmony.css +45 -24
- package/dist/es/packages/numberkeyboard/style/style.css +1 -1
- package/dist/es/packages/numberkeyboard/style/style.harmony.css +46 -25
- package/dist/es/packages/nutui.react.build.d.ts +3 -1
- package/dist/es/packages/nutui.react.build.js +3 -1
- package/dist/es/packages/overlay/overlay.js +11 -17
- package/dist/es/packages/picker/style/style.css +1 -1
- package/dist/es/packages/picker/style/style.harmony.css +46 -25
- package/dist/es/packages/popover/style/style.harmony.css +45 -24
- package/dist/es/packages/popup/popup.js +172 -101
- package/dist/es/packages/popup/style/popup.scss +29 -9
- package/dist/es/packages/popup/style/style.css +45 -24
- package/dist/es/packages/popup/style/style.harmony.css +45 -24
- package/dist/es/packages/popup/style-jmapp/popup.scss +29 -9
- package/dist/es/packages/popup/style-jmapp/style.css +29 -8
- package/dist/es/packages/popup/style-jrkf/popup.scss +29 -9
- package/dist/es/packages/popup/style-jrkf/style.css +29 -8
- package/dist/es/packages/quickenter/index.d.ts +3 -0
- package/dist/es/packages/quickenter/index.js +2 -0
- package/dist/es/packages/quickenter/quickenter.d.ts +4 -0
- package/dist/es/packages/quickenter/quickenter.js +135 -0
- package/dist/es/packages/quickenter/style/css.js +2 -0
- package/dist/es/packages/quickenter/style/index.js +2 -0
- package/dist/es/packages/quickenter/style/quickenter.scss +110 -0
- package/dist/es/packages/quickenter/style/style.css +99 -0
- package/dist/es/packages/quickenter/style/style.harmony.css +500 -0
- package/dist/es/packages/quickenter/style-jmapp/css.js +2 -0
- package/dist/es/packages/quickenter/style-jmapp/index.js +2 -0
- package/dist/es/packages/quickenter/style-jmapp/quickenter.scss +110 -0
- package/dist/es/packages/quickenter/style-jmapp/style.css +99 -0
- package/dist/es/packages/quickenter/style-jrkf/css.js +2 -0
- package/dist/es/packages/quickenter/style-jrkf/index.js +2 -0
- package/dist/es/packages/quickenter/style-jrkf/quickenter.scss +110 -0
- package/dist/es/packages/quickenter/style-jrkf/style.css +99 -0
- package/dist/es/packages/shortpassword/style/style.harmony.css +45 -24
- package/dist/es/packages/timeselect/style/style.harmony.css +45 -24
- package/dist/es/packages/tour/style/style.harmony.css +45 -24
- package/dist/es/types/index.d.ts +3 -0
- package/dist/es/types/index.js +3 -0
- package/dist/es/types/spec/quickenter/base.d.ts +44 -0
- package/dist/es/types/spec/quickenter/base.js +1 -0
- package/dist/es/types/spec/quickenter/h5.d.ts +5 -0
- package/dist/es/types/spec/quickenter/h5.js +1 -0
- package/dist/es/types/spec/quickenter/taro.d.ts +5 -0
- package/dist/es/types/spec/quickenter/taro.js +1 -0
- package/dist/es/utils/taro/ConfigurableCSSTransition.d.ts +15 -0
- package/dist/es/utils/taro/ConfigurableCSSTransition.js +79 -0
- package/dist/nutui.react.umd.js +631 -332
- package/dist/style-jmapp.css +1 -1
- package/dist/style-jmapp.scss +35 -34
- package/dist/style-jrkf.css +1 -1
- package/dist/style-jrkf.scss +34 -33
- package/dist/style.css +1 -1
- package/dist/style.scss +35 -34
- package/dist/styles/variables-daojia.scss +36 -0
- package/dist/styles/variables-jmapp.scss +36 -0
- package/dist/styles/variables-jrkf.scss +36 -0
- package/dist/styles/variables.scss +37 -1
- package/package.json +1 -1
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
align-items: center;
|
|
72
72
|
justify-content: center;
|
|
73
73
|
border-bottom: var(--nutui-popup-title-border-bottom, 0);
|
|
74
|
-
padding: var(--nutui-popup-title-padding,
|
|
74
|
+
padding: var(--nutui-popup-title-padding, 11px);
|
|
75
75
|
position: relative;
|
|
76
76
|
}
|
|
77
77
|
.nut-popup-title-wrapper {
|
|
@@ -84,7 +84,6 @@
|
|
|
84
84
|
color: var(--nutui-color-title, #1a1a1a);
|
|
85
85
|
font-weight: var(--nutui-font-weight-bold, 600);
|
|
86
86
|
font-size: var(--nutui-popup-title-font-size, var(--nutui-font-size-xl, 18px));
|
|
87
|
-
line-height: var(--nutui-popup-title-font-size, var(--nutui-font-size-xl, 18px));
|
|
88
87
|
}
|
|
89
88
|
.nut-popup-title-description {
|
|
90
89
|
color: var(--nutui-color-text, #505259);
|
|
@@ -96,13 +95,13 @@
|
|
|
96
95
|
}
|
|
97
96
|
.nut-popup-title-left {
|
|
98
97
|
position: absolute;
|
|
99
|
-
top: var(--nutui-popup-title-padding,
|
|
100
|
-
left: var(--nutui-popup-title-padding,
|
|
98
|
+
top: var(--nutui-popup-title-padding, 11px);
|
|
99
|
+
left: var(--nutui-popup-title-padding, 11px);
|
|
101
100
|
}
|
|
102
101
|
.nut-popup-title-right {
|
|
103
102
|
position: absolute;
|
|
104
|
-
top: var(--nutui-popup-title-padding,
|
|
105
|
-
right: var(--nutui-popup-title-padding,
|
|
103
|
+
top: var(--nutui-popup-title-padding, 11px);
|
|
104
|
+
right: var(--nutui-popup-title-padding, 11px);
|
|
106
105
|
z-index: 1;
|
|
107
106
|
width: var(--nutui-popup-icon-size, 20px);
|
|
108
107
|
height: var(--nutui-popup-icon-size, 20px);
|
|
@@ -113,20 +112,22 @@
|
|
|
113
112
|
opacity: 0.7;
|
|
114
113
|
}
|
|
115
114
|
.nut-popup-title-right-top-left {
|
|
116
|
-
top: var(--nutui-popup-title-padding,
|
|
117
|
-
left: var(--nutui-popup-title-padding,
|
|
115
|
+
top: var(--nutui-popup-title-padding, 11px);
|
|
116
|
+
left: var(--nutui-popup-title-padding, 11px);
|
|
118
117
|
}
|
|
119
118
|
.nut-popup-title-right-bottom-left {
|
|
120
|
-
bottom: var(--nutui-popup-title-padding,
|
|
121
|
-
left: var(--nutui-popup-title-padding,
|
|
119
|
+
bottom: var(--nutui-popup-title-padding, 11px);
|
|
120
|
+
left: var(--nutui-popup-title-padding, 11px);
|
|
122
121
|
}
|
|
123
122
|
.nut-popup-title-right-bottom-right {
|
|
124
|
-
right: var(--nutui-popup-title-padding,
|
|
125
|
-
bottom: var(--nutui-popup-title-padding,
|
|
123
|
+
right: var(--nutui-popup-title-padding, 11px);
|
|
124
|
+
bottom: var(--nutui-popup-title-padding, 11px);
|
|
126
125
|
}
|
|
127
126
|
.nut-popup-center {
|
|
128
127
|
top: 50%;
|
|
129
128
|
left: 50%;
|
|
129
|
+
right: auto;
|
|
130
|
+
bottom: auto;
|
|
130
131
|
min-height: 10%;
|
|
131
132
|
max-width: 295px;
|
|
132
133
|
transform: translate(-50%, -50%);
|
|
@@ -137,6 +138,8 @@
|
|
|
137
138
|
.nut-popup-bottom {
|
|
138
139
|
bottom: 0;
|
|
139
140
|
left: 0;
|
|
141
|
+
right: auto;
|
|
142
|
+
top: auto;
|
|
140
143
|
width: 100%;
|
|
141
144
|
}
|
|
142
145
|
.nut-popup-bottom.nut-popup-round {
|
|
@@ -148,6 +151,8 @@
|
|
|
148
151
|
.nut-popup-right {
|
|
149
152
|
top: 0;
|
|
150
153
|
right: 0;
|
|
154
|
+
left: auto;
|
|
155
|
+
bottom: auto;
|
|
151
156
|
width: 100px;
|
|
152
157
|
height: 100%;
|
|
153
158
|
}
|
|
@@ -157,6 +162,8 @@
|
|
|
157
162
|
.nut-popup-left {
|
|
158
163
|
top: 0;
|
|
159
164
|
left: 0;
|
|
165
|
+
right: auto;
|
|
166
|
+
bottom: auto;
|
|
160
167
|
width: 100px;
|
|
161
168
|
height: 100%;
|
|
162
169
|
}
|
|
@@ -166,6 +173,8 @@
|
|
|
166
173
|
.nut-popup-top {
|
|
167
174
|
top: 0;
|
|
168
175
|
left: 0;
|
|
176
|
+
right: auto;
|
|
177
|
+
bottom: auto;
|
|
169
178
|
width: 100%;
|
|
170
179
|
}
|
|
171
180
|
.nut-popup-top.nut-popup-round {
|
|
@@ -242,6 +251,9 @@
|
|
|
242
251
|
}
|
|
243
252
|
}
|
|
244
253
|
@keyframes popup-slide-top-exit {
|
|
254
|
+
from {
|
|
255
|
+
transform: translate3d(0, 0%, 0);
|
|
256
|
+
}
|
|
245
257
|
to {
|
|
246
258
|
transform: translate3d(0, -100%, 0);
|
|
247
259
|
}
|
|
@@ -266,6 +278,9 @@
|
|
|
266
278
|
}
|
|
267
279
|
}
|
|
268
280
|
@keyframes popup-slide-right-exit {
|
|
281
|
+
from {
|
|
282
|
+
transform: translate3d(0%, 0, 0);
|
|
283
|
+
}
|
|
269
284
|
to {
|
|
270
285
|
transform: translate3d(100%, 0, 0);
|
|
271
286
|
}
|
|
@@ -276,7 +291,7 @@
|
|
|
276
291
|
animation-name: popup-slide-right-enter;
|
|
277
292
|
animation-duration: var(--nutui-popup-animation-duration, 0.3s);
|
|
278
293
|
}
|
|
279
|
-
.nut-popup-slide-right-exit {
|
|
294
|
+
.nut-popup-slide-right-exit-active {
|
|
280
295
|
animation-fill-mode: both;
|
|
281
296
|
animation-name: popup-slide-right-exit;
|
|
282
297
|
animation-duration: var(--nutui-popup-animation-duration, 0.3s);
|
|
@@ -289,20 +304,23 @@
|
|
|
289
304
|
transform: translate3d(0, 0%, 0);
|
|
290
305
|
}
|
|
291
306
|
}
|
|
292
|
-
@keyframes slide-bottom-exit {
|
|
307
|
+
@keyframes popup-slide-bottom-exit {
|
|
308
|
+
from {
|
|
309
|
+
transform: translate3d(0, 0%, 0);
|
|
310
|
+
}
|
|
293
311
|
to {
|
|
294
312
|
transform: translate3d(0, 100%, 0);
|
|
295
313
|
}
|
|
296
314
|
}
|
|
297
315
|
.nut-popup-slide-bottom-enter-active, .nut-popup-slide-bottom-appear-active {
|
|
298
|
-
transform:
|
|
316
|
+
transform: translate3d(0, 0, 0);
|
|
299
317
|
animation-fill-mode: both;
|
|
300
318
|
animation-name: popup-slide-bottom-enter;
|
|
301
319
|
animation-duration: var(--nutui-popup-animation-duration, 0.3s);
|
|
302
320
|
}
|
|
303
|
-
.nut-popup-slide-bottom-exit {
|
|
321
|
+
.nut-popup-slide-bottom-exit-active {
|
|
304
322
|
animation-fill-mode: both;
|
|
305
|
-
animation-name: slide-bottom-exit;
|
|
323
|
+
animation-name: popup-slide-bottom-exit;
|
|
306
324
|
animation-duration: var(--nutui-popup-animation-duration, 0.3s);
|
|
307
325
|
}
|
|
308
326
|
@keyframes popup-slide-left-enter {
|
|
@@ -314,17 +332,20 @@
|
|
|
314
332
|
}
|
|
315
333
|
}
|
|
316
334
|
@keyframes popup-slide-left-exit {
|
|
335
|
+
from {
|
|
336
|
+
transform: translate3d(0%, 0, 0);
|
|
337
|
+
}
|
|
317
338
|
to {
|
|
318
339
|
transform: translate3d(-100%, 0, 0);
|
|
319
340
|
}
|
|
320
341
|
}
|
|
321
342
|
.nut-popup-slide-left-enter-active, .nut-popup-slide-left-appear-active {
|
|
322
|
-
transform:
|
|
343
|
+
transform: translate3d(0, 0, 0);
|
|
323
344
|
animation-fill-mode: both;
|
|
324
345
|
animation-name: popup-slide-left-enter;
|
|
325
346
|
animation-duration: var(--nutui-popup-animation-duration, 0.3s);
|
|
326
347
|
}
|
|
327
|
-
.nut-popup-slide-left-exit-active
|
|
348
|
+
.nut-popup-slide-left-exit-active {
|
|
328
349
|
animation-fill-mode: both;
|
|
329
350
|
animation-name: popup-slide-left-exit;
|
|
330
351
|
animation-duration: var(--nutui-popup-animation-duration, 0.3s);
|
|
@@ -339,27 +360,27 @@
|
|
|
339
360
|
[dir=rtl] .nut-popup-title-left,
|
|
340
361
|
.nut-rtl .nut-popup-title-left {
|
|
341
362
|
left: auto;
|
|
342
|
-
right: var(--nutui-popup-title-padding,
|
|
363
|
+
right: var(--nutui-popup-title-padding, 11px);
|
|
343
364
|
}
|
|
344
365
|
[dir=rtl] .nut-popup-title-right,
|
|
345
366
|
.nut-rtl .nut-popup-title-right {
|
|
346
367
|
right: auto;
|
|
347
|
-
left: var(--nutui-popup-title-padding,
|
|
368
|
+
left: var(--nutui-popup-title-padding, 11px);
|
|
348
369
|
}
|
|
349
370
|
[dir=rtl] .nut-popup-title-right-top-left,
|
|
350
371
|
.nut-rtl .nut-popup-title-right-top-left {
|
|
351
372
|
left: auto;
|
|
352
|
-
right: var(--nutui-popup-title-padding,
|
|
373
|
+
right: var(--nutui-popup-title-padding, 11px);
|
|
353
374
|
}
|
|
354
375
|
[dir=rtl] .nut-popup-title-right-bottom-left,
|
|
355
376
|
.nut-rtl .nut-popup-title-right-bottom-left {
|
|
356
377
|
left: auto;
|
|
357
|
-
right: var(--nutui-popup-title-padding,
|
|
378
|
+
right: var(--nutui-popup-title-padding, 11px);
|
|
358
379
|
}
|
|
359
380
|
[dir=rtl] .nut-popup-title-right-bottom-right,
|
|
360
381
|
.nut-rtl .nut-popup-title-right-bottom-right {
|
|
361
382
|
right: auto;
|
|
362
|
-
left: var(--nutui-popup-title-padding,
|
|
383
|
+
left: var(--nutui-popup-title-padding, 11px);
|
|
363
384
|
}
|
|
364
385
|
[dir=rtl] .nut-popup-title .nut-icon-ArrowLeft,
|
|
365
386
|
.nut-rtl .nut-popup-title .nut-icon-ArrowLeft {
|
package/dist/es/types/index.d.ts
CHANGED
|
@@ -262,3 +262,6 @@ export * from './spec/audio/taro';
|
|
|
262
262
|
export * from './spec/steps/base';
|
|
263
263
|
export * from './spec/steps/h5';
|
|
264
264
|
export * from './spec/steps/taro';
|
|
265
|
+
export * from './spec/quickenter/base';
|
|
266
|
+
export * from './spec/quickenter/h5';
|
|
267
|
+
export * from './spec/quickenter/taro';
|
package/dist/es/types/index.js
CHANGED
|
@@ -262,3 +262,6 @@ export * from "./spec/audio/taro";
|
|
|
262
262
|
export * from "./spec/steps/base";
|
|
263
263
|
export * from "./spec/steps/h5";
|
|
264
264
|
export * from "./spec/steps/taro";
|
|
265
|
+
export * from "./spec/quickenter/base";
|
|
266
|
+
export * from "./spec/quickenter/h5";
|
|
267
|
+
export * from "./spec/quickenter/taro";
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { BaseProps } from '../../base/props';
|
|
3
|
+
export type QuickEnterRef = QuickEnterActions;
|
|
4
|
+
export type QuickEnterActions = {
|
|
5
|
+
open: () => void;
|
|
6
|
+
close: () => void;
|
|
7
|
+
};
|
|
8
|
+
export interface QuickEnterOption extends Record<string, any> {
|
|
9
|
+
title?: string;
|
|
10
|
+
icon?: ReactNode;
|
|
11
|
+
type?: string;
|
|
12
|
+
url?: string;
|
|
13
|
+
badge?: boolean | ReactNode;
|
|
14
|
+
badgeProps?: any;
|
|
15
|
+
}
|
|
16
|
+
export interface BaseQuickEnter<POPUP_PROPS = any> extends BaseProps {
|
|
17
|
+
/**
|
|
18
|
+
* 是否可见
|
|
19
|
+
*/
|
|
20
|
+
visible?: boolean
|
|
21
|
+
/**
|
|
22
|
+
* 标题
|
|
23
|
+
*/
|
|
24
|
+
title?: ReactNode
|
|
25
|
+
/**
|
|
26
|
+
* 选项列表
|
|
27
|
+
*/
|
|
28
|
+
options?: QuickEnterOption[]
|
|
29
|
+
/**
|
|
30
|
+
* 透传给 Popup 组件的属性
|
|
31
|
+
*/
|
|
32
|
+
popupProps?: POPUP_PROPS
|
|
33
|
+
/**
|
|
34
|
+
* 是否在点击遮罩层后关闭
|
|
35
|
+
*/
|
|
36
|
+
closeOnOverlayClick?: boolean
|
|
37
|
+
/**
|
|
38
|
+
* 自定义关闭图标
|
|
39
|
+
*/
|
|
40
|
+
closeIcon?: ReactNode
|
|
41
|
+
onClose?: () => void;
|
|
42
|
+
onChange?: (item: QuickEnterOption, index: number) => void;
|
|
43
|
+
children?: ReactNode;
|
|
44
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export type TransitionStatus = 'entering' | 'entered' | 'exiting' | 'exited' | 'unmounted';
|
|
3
|
+
interface CSSTransitionProps {
|
|
4
|
+
in?: boolean;
|
|
5
|
+
timeout?: number;
|
|
6
|
+
classNames?: string;
|
|
7
|
+
nodeRef?: React.RefObject<any>;
|
|
8
|
+
mountOnEnter?: boolean;
|
|
9
|
+
unmountOnExit?: boolean;
|
|
10
|
+
onEntered?: () => void;
|
|
11
|
+
onExited?: () => void;
|
|
12
|
+
children: React.ReactElement;
|
|
13
|
+
}
|
|
14
|
+
declare const ConfigurableCSSTransition: React.FC<CSSTransitionProps>;
|
|
15
|
+
export default ConfigurableCSSTransition;
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { _ as _sliced_to_array } from "@swc/helpers/_/_sliced_to_array";
|
|
2
|
+
import React, { useState, useEffect, useRef, cloneElement, useCallback } from "react";
|
|
3
|
+
var ConfigurableCSSTransition = function(props) {
|
|
4
|
+
var inPhase = props.in, _props_timeout = props.timeout, timeout = _props_timeout === void 0 ? 300 : _props_timeout, tmp = props.classNames, baseClassName = tmp === void 0 ? '' : tmp, nodeRef = props.nodeRef, mountOnEnter = props.mountOnEnter, unmountOnExit = props.unmountOnExit, onEntered = props.onEntered, onExited = props.onExited, children = props.children;
|
|
5
|
+
var _useState = _sliced_to_array(useState(function() {
|
|
6
|
+
if (inPhase) return 'entered';
|
|
7
|
+
return unmountOnExit || mountOnEnter ? 'unmounted' : 'exited';
|
|
8
|
+
}), 2), status = _useState[0], setStatus = _useState[1];
|
|
9
|
+
var _useState1 = _sliced_to_array(useState(function() {
|
|
10
|
+
if (inPhase) return "".concat(baseClassName, "-enter-done");
|
|
11
|
+
return "".concat(baseClassName, "-exit-done");
|
|
12
|
+
}), 2), classes = _useState1[0], setClasses = _useState1[1];
|
|
13
|
+
var timerRef = useRef(null);
|
|
14
|
+
var statusRef = useRef(status);
|
|
15
|
+
var prevInPhase = useRef(inPhase);
|
|
16
|
+
var updateStatus = useCallback(function(nextStatus) {
|
|
17
|
+
statusRef.current = nextStatus;
|
|
18
|
+
setStatus(nextStatus);
|
|
19
|
+
}, []);
|
|
20
|
+
var enter = useCallback(function() {
|
|
21
|
+
if (timerRef.current) clearTimeout(timerRef.current);
|
|
22
|
+
if (statusRef.current === 'unmounted') {
|
|
23
|
+
updateStatus('exited');
|
|
24
|
+
}
|
|
25
|
+
updateStatus('entering');
|
|
26
|
+
setClasses("".concat(baseClassName, "-enter ").concat(baseClassName, "-enter-active"));
|
|
27
|
+
timerRef.current = setTimeout(function() {
|
|
28
|
+
updateStatus('entered');
|
|
29
|
+
setClasses("".concat(baseClassName, "-enter-done"));
|
|
30
|
+
onEntered === null || onEntered === void 0 ? void 0 : onEntered();
|
|
31
|
+
}, timeout);
|
|
32
|
+
}, [
|
|
33
|
+
baseClassName,
|
|
34
|
+
onEntered,
|
|
35
|
+
timeout,
|
|
36
|
+
updateStatus
|
|
37
|
+
]);
|
|
38
|
+
var exit = useCallback(function() {
|
|
39
|
+
if (timerRef.current) clearTimeout(timerRef.current);
|
|
40
|
+
updateStatus('exiting');
|
|
41
|
+
setClasses("".concat(baseClassName, "-exit ").concat(baseClassName, "-exit-active"));
|
|
42
|
+
timerRef.current = setTimeout(function() {
|
|
43
|
+
updateStatus('exited');
|
|
44
|
+
setClasses("".concat(baseClassName, "-exit-done"));
|
|
45
|
+
if (unmountOnExit) {
|
|
46
|
+
updateStatus('unmounted');
|
|
47
|
+
}
|
|
48
|
+
onExited === null || onExited === void 0 ? void 0 : onExited();
|
|
49
|
+
}, timeout);
|
|
50
|
+
}, [
|
|
51
|
+
baseClassName,
|
|
52
|
+
onExited,
|
|
53
|
+
timeout,
|
|
54
|
+
unmountOnExit,
|
|
55
|
+
updateStatus
|
|
56
|
+
]);
|
|
57
|
+
useEffect(function() {
|
|
58
|
+
if (prevInPhase.current !== inPhase) {
|
|
59
|
+
if (inPhase) {
|
|
60
|
+
enter();
|
|
61
|
+
} else {
|
|
62
|
+
exit();
|
|
63
|
+
}
|
|
64
|
+
prevInPhase.current = inPhase;
|
|
65
|
+
}
|
|
66
|
+
return function() {
|
|
67
|
+
if (timerRef.current) clearTimeout(timerRef.current);
|
|
68
|
+
};
|
|
69
|
+
}, [
|
|
70
|
+
inPhase,
|
|
71
|
+
enter,
|
|
72
|
+
exit
|
|
73
|
+
]);
|
|
74
|
+
if (status === 'unmounted') return null;
|
|
75
|
+
return /*#__PURE__*/ cloneElement(children, {
|
|
76
|
+
className: "".concat(children.props.className || '', " ").concat(classes)
|
|
77
|
+
});
|
|
78
|
+
};
|
|
79
|
+
export default ConfigurableCSSTransition;
|