@nutui/nutui-react-taro 4.0.0-beta.5 → 4.0.0-beta.7

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.
Files changed (142) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/cjs/packages/actionsheet/style/style.harmony.css +12 -6
  3. package/dist/cjs/packages/address/style/style.harmony.css +12 -6
  4. package/dist/cjs/packages/animate/style/style.css +27 -9
  5. package/dist/cjs/packages/animate/style/style.harmony.css +27 -9
  6. package/dist/cjs/packages/animate/style-jmapp/style.css +27 -9
  7. package/dist/cjs/packages/animate/style-jrkf/style.css +27 -9
  8. package/dist/cjs/packages/audio/audio.js +14 -14
  9. package/dist/cjs/packages/audio/style/style.harmony.css +20 -8
  10. package/dist/cjs/packages/badge/badge.js +17 -17
  11. package/dist/cjs/packages/button/button.js +1 -2
  12. package/dist/cjs/packages/button/style/style.css +20 -8
  13. package/dist/cjs/packages/button/style/style.harmony.css +20 -8
  14. package/dist/cjs/packages/button/style-jmapp/style.css +20 -8
  15. package/dist/cjs/packages/button/style-jrkf/style.css +20 -8
  16. package/dist/cjs/packages/calendar/style/style.harmony.css +12 -6
  17. package/dist/cjs/packages/cascader/style/style.harmony.css +12 -6
  18. package/dist/cjs/packages/cascader/utils.js +3 -2
  19. package/dist/cjs/packages/configprovider/types.d.ts +1 -1
  20. package/dist/cjs/packages/datepicker/style/style.harmony.css +12 -6
  21. package/dist/cjs/packages/dialog/style/style.harmony.css +20 -8
  22. package/dist/cjs/packages/empty/style/style.harmony.css +20 -8
  23. package/dist/cjs/packages/imagepreview/style/style.harmony.css +12 -6
  24. package/dist/cjs/packages/indicator/indicator.js +6 -6
  25. package/dist/cjs/packages/infiniteloading/infiniteloading.js +9 -9
  26. package/dist/cjs/packages/navbar/style/style.css +3 -1
  27. package/dist/cjs/packages/navbar/style/style.harmony.css +3 -1
  28. package/dist/cjs/packages/navbar/style-jmapp/style.css +3 -1
  29. package/dist/cjs/packages/navbar/style-jrkf/style.css +3 -1
  30. package/dist/cjs/packages/noticebar/noticebar.js +120 -60
  31. package/dist/cjs/packages/noticebar/style/noticebar.scss +130 -10
  32. package/dist/cjs/packages/noticebar/style/style.css +138 -35
  33. package/dist/cjs/packages/noticebar/style/style.harmony.css +138 -35
  34. package/dist/cjs/packages/noticebar/style-jmapp/noticebar.scss +130 -10
  35. package/dist/cjs/packages/noticebar/style-jmapp/style.css +113 -10
  36. package/dist/cjs/packages/noticebar/style-jrkf/noticebar.scss +130 -10
  37. package/dist/cjs/packages/noticebar/style-jrkf/style.css +113 -10
  38. package/dist/cjs/packages/numberkeyboard/style/style.css +6 -6
  39. package/dist/cjs/packages/numberkeyboard/style/style.harmony.css +18 -12
  40. package/dist/cjs/packages/numberkeyboard/style-jmapp/style.css +6 -6
  41. package/dist/cjs/packages/numberkeyboard/style-jrkf/style.css +6 -6
  42. package/dist/cjs/packages/picker/style/style.harmony.css +12 -6
  43. package/dist/cjs/packages/popover/popover.js +46 -37
  44. package/dist/cjs/packages/popover/style/popover.scss +79 -54
  45. package/dist/cjs/packages/popover/style/style.css +73 -61
  46. package/dist/cjs/packages/popover/style/style.harmony.css +85 -67
  47. package/dist/cjs/packages/popover/style-jmapp/popover.scss +79 -54
  48. package/dist/cjs/packages/popover/style-jmapp/style.css +73 -61
  49. package/dist/cjs/packages/popover/style-jrkf/popover.scss +79 -54
  50. package/dist/cjs/packages/popover/style-jrkf/style.css +73 -61
  51. package/dist/cjs/packages/popup/style/style.css +12 -6
  52. package/dist/cjs/packages/popup/style/style.harmony.css +12 -6
  53. package/dist/cjs/packages/popup/style-jmapp/style.css +12 -6
  54. package/dist/cjs/packages/popup/style-jrkf/style.css +12 -6
  55. package/dist/cjs/packages/pulltorefresh/pulltorefresh.js +54 -54
  56. package/dist/cjs/packages/quickenter/style/style.harmony.css +12 -6
  57. package/dist/cjs/packages/resultpage/style/style.harmony.css +20 -8
  58. package/dist/cjs/packages/shortpassword/style/style.harmony.css +12 -6
  59. package/dist/cjs/packages/skeleton/skeleton.js +15 -15
  60. package/dist/cjs/packages/timeselect/style/style.harmony.css +12 -6
  61. package/dist/cjs/packages/tour/style/style.harmony.css +86 -68
  62. package/dist/cjs/packages/tour/tour.js +1 -1
  63. package/dist/cjs/types/spec/noticebar/base.d.ts +5 -1
  64. package/dist/cjs/types/spec/popover/base.d.ts +4 -0
  65. package/dist/cjs/utils/is-forward-ref-component.js +2 -2
  66. package/dist/cjs/utils/render.js +1 -1
  67. package/dist/es/packages/actionsheet/style/style.harmony.css +12 -6
  68. package/dist/es/packages/address/style/style.harmony.css +12 -6
  69. package/dist/es/packages/animate/style/style.css +27 -9
  70. package/dist/es/packages/animate/style/style.harmony.css +27 -9
  71. package/dist/es/packages/animate/style-jmapp/style.css +27 -9
  72. package/dist/es/packages/animate/style-jrkf/style.css +27 -9
  73. package/dist/es/packages/audio/audio.js +14 -14
  74. package/dist/es/packages/audio/style/style.harmony.css +20 -8
  75. package/dist/es/packages/badge/badge.js +17 -17
  76. package/dist/es/packages/button/button.js +1 -2
  77. package/dist/es/packages/button/style/style.css +20 -8
  78. package/dist/es/packages/button/style/style.harmony.css +20 -8
  79. package/dist/es/packages/button/style-jmapp/style.css +20 -8
  80. package/dist/es/packages/button/style-jrkf/style.css +20 -8
  81. package/dist/es/packages/calendar/style/style.harmony.css +12 -6
  82. package/dist/es/packages/cascader/style/style.harmony.css +12 -6
  83. package/dist/es/packages/cascader/utils.js +3 -2
  84. package/dist/es/packages/configprovider/types.d.ts +1 -1
  85. package/dist/es/packages/datepicker/style/style.harmony.css +12 -6
  86. package/dist/es/packages/dialog/style/style.harmony.css +20 -8
  87. package/dist/es/packages/empty/style/style.harmony.css +20 -8
  88. package/dist/es/packages/imagepreview/style/style.harmony.css +12 -6
  89. package/dist/es/packages/indicator/indicator.js +6 -6
  90. package/dist/es/packages/infiniteloading/infiniteloading.js +9 -9
  91. package/dist/es/packages/navbar/style/style.css +3 -1
  92. package/dist/es/packages/navbar/style/style.harmony.css +3 -1
  93. package/dist/es/packages/navbar/style-jmapp/style.css +3 -1
  94. package/dist/es/packages/navbar/style-jrkf/style.css +3 -1
  95. package/dist/es/packages/noticebar/noticebar.js +120 -60
  96. package/dist/es/packages/noticebar/style/noticebar.scss +130 -10
  97. package/dist/es/packages/noticebar/style/style.css +138 -35
  98. package/dist/es/packages/noticebar/style/style.harmony.css +138 -35
  99. package/dist/es/packages/noticebar/style-jmapp/noticebar.scss +130 -10
  100. package/dist/es/packages/noticebar/style-jmapp/style.css +113 -10
  101. package/dist/es/packages/noticebar/style-jrkf/noticebar.scss +130 -10
  102. package/dist/es/packages/noticebar/style-jrkf/style.css +113 -10
  103. package/dist/es/packages/numberkeyboard/style/style.css +6 -6
  104. package/dist/es/packages/numberkeyboard/style/style.harmony.css +18 -12
  105. package/dist/es/packages/numberkeyboard/style-jmapp/style.css +6 -6
  106. package/dist/es/packages/numberkeyboard/style-jrkf/style.css +6 -6
  107. package/dist/es/packages/picker/style/style.harmony.css +12 -6
  108. package/dist/es/packages/popover/popover.js +46 -37
  109. package/dist/es/packages/popover/style/popover.scss +79 -54
  110. package/dist/es/packages/popover/style/style.css +73 -61
  111. package/dist/es/packages/popover/style/style.harmony.css +85 -67
  112. package/dist/es/packages/popover/style-jmapp/popover.scss +79 -54
  113. package/dist/es/packages/popover/style-jmapp/style.css +73 -61
  114. package/dist/es/packages/popover/style-jrkf/popover.scss +79 -54
  115. package/dist/es/packages/popover/style-jrkf/style.css +73 -61
  116. package/dist/es/packages/popup/style/style.css +12 -6
  117. package/dist/es/packages/popup/style/style.harmony.css +12 -6
  118. package/dist/es/packages/popup/style-jmapp/style.css +12 -6
  119. package/dist/es/packages/popup/style-jrkf/style.css +12 -6
  120. package/dist/es/packages/pulltorefresh/pulltorefresh.js +54 -54
  121. package/dist/es/packages/quickenter/style/style.harmony.css +12 -6
  122. package/dist/es/packages/resultpage/style/style.harmony.css +20 -8
  123. package/dist/es/packages/shortpassword/style/style.harmony.css +12 -6
  124. package/dist/es/packages/skeleton/skeleton.js +15 -15
  125. package/dist/es/packages/timeselect/style/style.harmony.css +12 -6
  126. package/dist/es/packages/tour/style/style.harmony.css +86 -68
  127. package/dist/es/packages/tour/tour.js +1 -1
  128. package/dist/es/types/spec/noticebar/base.d.ts +19 -3
  129. package/dist/es/types/spec/popover/base.d.ts +21 -2
  130. package/dist/es/utils/render.js +1 -1
  131. package/dist/nutui.react.umd.js +329 -1213
  132. package/dist/style-jmapp.css +1 -1
  133. package/dist/style-jmapp.scss +32 -32
  134. package/dist/style-jrkf.css +1 -1
  135. package/dist/style-jrkf.scss +30 -30
  136. package/dist/style.css +1 -1
  137. package/dist/style.scss +33 -33
  138. package/dist/styles/variables-daojia.scss +55 -9
  139. package/dist/styles/variables-jmapp.scss +52 -6
  140. package/dist/styles/variables-jrkf.scss +52 -6
  141. package/dist/styles/variables.scss +123 -15
  142. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,3 +1,18 @@
1
+ # v4.0.0-beta.7
2
+
3
+ `2026-08-31`
4
+
5
+ - :sparkles: Feat v16 noticebar simple (#3491)
6
+ - :bug: fix(deps): update all non-major dependencies (#3503)
7
+ - 🪵 refactor(popover): v16适配 (#3492)
8
+
9
+ # v4.0.0-beta.6
10
+
11
+ `2026-08-10`
12
+
13
+ - :sparkles: feat: 为 @nutui/nutui-react-taro 补齐 AI-Coding 能力(CLI / MCP / Skill + 站点文档) (#3500)
14
+ - :bug: fix(Cascader): preserve normalized option keys (#3501)
15
+
1
16
  # v4.0.0-beta.5
2
17
 
3
18
  `2026-07-21`
@@ -189,12 +189,6 @@ page {
189
189
  .nut-popup-top.nut-popup-round {
190
190
  border-radius: 0 0 var(--nutui-popup-border-radius, var(--nutui-radius-xl, calc(12px * var(--nut-scale-f, 1)))) var(--nutui-popup-border-radius, var(--nutui-radius-xl, calc(12px * var(--nut-scale-f, 1))));
191
191
  }
192
- .nut-popup-slide {
193
- /* 从顶部滑出 */
194
- /* 从右侧滑出 */
195
- /* 从底部滑出 */
196
- /* 从左侧滑出 */
197
- }
198
192
  @keyframes popup-scale-fade-in {
199
193
  from {
200
194
  opacity: 0;
@@ -251,6 +245,9 @@ page {
251
245
  animation-name: popup-fade-out;
252
246
  animation-duration: var(--nutui-popup-animation-duration, 0.3s);
253
247
  }
248
+ .nut-popup-slide {
249
+ /* 从顶部滑出 */
250
+ }
254
251
  @keyframes popup-slide-top-enter {
255
252
  from {
256
253
  transform: translate3d(0, -100%, 0);
@@ -278,6 +275,9 @@ page {
278
275
  animation-name: popup-slide-top-exit;
279
276
  animation-duration: var(--nutui-popup-animation-duration, 0.3s);
280
277
  }
278
+ .nut-popup-slide {
279
+ /* 从右侧滑出 */
280
+ }
281
281
  @keyframes popup-slide-right-enter {
282
282
  from {
283
283
  transform: translate3d(100%, 0, 0);
@@ -305,6 +305,9 @@ page {
305
305
  animation-name: popup-slide-right-exit;
306
306
  animation-duration: var(--nutui-popup-animation-duration, 0.3s);
307
307
  }
308
+ .nut-popup-slide {
309
+ /* 从底部滑出 */
310
+ }
308
311
  @keyframes popup-slide-bottom-enter {
309
312
  from {
310
313
  transform: translate3d(0, 100%, 0);
@@ -332,6 +335,9 @@ page {
332
335
  animation-name: slide-bottom-exit;
333
336
  animation-duration: var(--nutui-popup-animation-duration, 0.3s);
334
337
  }
338
+ .nut-popup-slide {
339
+ /* 从左侧滑出 */
340
+ }
335
341
  @keyframes popup-slide-left-enter {
336
342
  from {
337
343
  transform: translate3d(-100%, 0, 0);
@@ -339,12 +339,6 @@ page {
339
339
  .nut-popup-top.nut-popup-round {
340
340
  border-radius: 0 0 var(--nutui-popup-border-radius, var(--nutui-radius-xl, calc(12px * var(--nut-scale-f, 1)))) var(--nutui-popup-border-radius, var(--nutui-radius-xl, calc(12px * var(--nut-scale-f, 1))));
341
341
  }
342
- .nut-popup-slide {
343
- /* 从顶部滑出 */
344
- /* 从右侧滑出 */
345
- /* 从底部滑出 */
346
- /* 从左侧滑出 */
347
- }
348
342
  @keyframes popup-scale-fade-in {
349
343
  from {
350
344
  opacity: 0;
@@ -401,6 +395,9 @@ page {
401
395
  animation-name: popup-fade-out;
402
396
  animation-duration: var(--nutui-popup-animation-duration, 0.3s);
403
397
  }
398
+ .nut-popup-slide {
399
+ /* 从顶部滑出 */
400
+ }
404
401
  @keyframes popup-slide-top-enter {
405
402
  from {
406
403
  transform: translate3d(0, -100%, 0);
@@ -428,6 +425,9 @@ page {
428
425
  animation-name: popup-slide-top-exit;
429
426
  animation-duration: var(--nutui-popup-animation-duration, 0.3s);
430
427
  }
428
+ .nut-popup-slide {
429
+ /* 从右侧滑出 */
430
+ }
431
431
  @keyframes popup-slide-right-enter {
432
432
  from {
433
433
  transform: translate3d(100%, 0, 0);
@@ -455,6 +455,9 @@ page {
455
455
  animation-name: popup-slide-right-exit;
456
456
  animation-duration: var(--nutui-popup-animation-duration, 0.3s);
457
457
  }
458
+ .nut-popup-slide {
459
+ /* 从底部滑出 */
460
+ }
458
461
  @keyframes popup-slide-bottom-enter {
459
462
  from {
460
463
  transform: translate3d(0, 100%, 0);
@@ -482,6 +485,9 @@ page {
482
485
  animation-name: slide-bottom-exit;
483
486
  animation-duration: var(--nutui-popup-animation-duration, 0.3s);
484
487
  }
488
+ .nut-popup-slide {
489
+ /* 从左侧滑出 */
490
+ }
485
491
  @keyframes popup-slide-left-enter {
486
492
  from {
487
493
  transform: translate3d(-100%, 0, 0);
@@ -10,21 +10,15 @@ page {
10
10
 
11
11
  .nut-animate {
12
12
  /* Animation CSS */
13
- /* Slide Animations */
14
- /* Shake Animation */
15
- /* Ripple Animation */
16
- /* Breath Animation */
17
- /* Twinkle Animation */
18
- /* Flicker Animation */
19
- /* Jump Animation */
20
- /* Float Animation */
21
- /* Loop Animation */
22
13
  }
23
14
  .nut-animate [class*=nut-animate-] {
24
15
  animation-duration: 0.5s;
25
16
  animation-timing-function: ease-out;
26
17
  animation-fill-mode: both;
27
18
  }
19
+ .nut-animate {
20
+ /* Slide Animations */
21
+ }
28
22
  @keyframes slide-right {
29
23
  0% {
30
24
  opacity: 0;
@@ -77,6 +71,9 @@ page {
77
71
  .nut-animate .nut-animate-slide-bottom {
78
72
  animation-name: slide-bottom;
79
73
  }
74
+ .nut-animate {
75
+ /* Shake Animation */
76
+ }
80
77
  @keyframes shake {
81
78
  0%, 100% {
82
79
  transform: translateX(0);
@@ -112,6 +109,9 @@ page {
112
109
  .nut-animate .nut-animate-shake {
113
110
  animation-name: shake;
114
111
  }
112
+ .nut-animate {
113
+ /* Ripple Animation */
114
+ }
115
115
  @keyframes ripple {
116
116
  0% {
117
117
  transform: scale(1);
@@ -123,6 +123,9 @@ page {
123
123
  .nut-animate .nut-animate-ripple {
124
124
  animation-name: ripple;
125
125
  }
126
+ .nut-animate {
127
+ /* Breath Animation */
128
+ }
126
129
  @keyframes breath {
127
130
  0%, 100% {
128
131
  transform: scale(1);
@@ -137,6 +140,9 @@ page {
137
140
  animation-timing-function: ease-in-out;
138
141
  animation-direction: alternate;
139
142
  }
143
+ .nut-animate {
144
+ /* Twinkle Animation */
145
+ }
140
146
  .nut-animate .nut-animate-twinkle {
141
147
  position: relative;
142
148
  }
@@ -170,6 +176,9 @@ page {
170
176
  opacity: 0;
171
177
  }
172
178
  }
179
+ .nut-animate {
180
+ /* Flicker Animation */
181
+ }
173
182
  .nut-animate .nut-animate-flicker {
174
183
  position: relative;
175
184
  overflow: hidden;
@@ -195,6 +204,9 @@ page {
195
204
  transform: translateX(calc(150px * var(--nut-scale-f, 1))) skewX(-20deg);
196
205
  }
197
206
  }
207
+ .nut-animate {
208
+ /* Jump Animation */
209
+ }
198
210
  @keyframes jump {
199
211
  0% {
200
212
  transform: rotate(0) translateY(0);
@@ -216,6 +228,9 @@ page {
216
228
  transform-origin: center center;
217
229
  animation: jump 0.7s linear;
218
230
  }
231
+ .nut-animate {
232
+ /* Float Animation */
233
+ }
219
234
  @keyframes float-pop {
220
235
  0% {
221
236
  top: 0;
@@ -237,6 +252,9 @@ page {
237
252
  position: relative;
238
253
  animation-name: float-pop;
239
254
  }
255
+ .nut-animate {
256
+ /* Loop Animation */
257
+ }
240
258
  .nut-animate .loop {
241
259
  animation-iteration-count: infinite;
242
260
  }
@@ -10,21 +10,15 @@ page {
10
10
 
11
11
  .nut-animate {
12
12
  /* Animation CSS */
13
- /* Slide Animations */
14
- /* Shake Animation */
15
- /* Ripple Animation */
16
- /* Breath Animation */
17
- /* Twinkle Animation */
18
- /* Flicker Animation */
19
- /* Jump Animation */
20
- /* Float Animation */
21
- /* Loop Animation */
22
13
  }
23
14
  .nut-animate [class*=nut-animate-] {
24
15
  animation-duration: 0.5s;
25
16
  animation-timing-function: ease-out;
26
17
  animation-fill-mode: both;
27
18
  }
19
+ .nut-animate {
20
+ /* Slide Animations */
21
+ }
28
22
  @keyframes slide-right {
29
23
  0% {
30
24
  opacity: 0;
@@ -77,6 +71,9 @@ page {
77
71
  .nut-animate .nut-animate-slide-bottom {
78
72
  animation-name: slide-bottom;
79
73
  }
74
+ .nut-animate {
75
+ /* Shake Animation */
76
+ }
80
77
  @keyframes shake {
81
78
  0%, 100% {
82
79
  transform: translateX(0);
@@ -112,6 +109,9 @@ page {
112
109
  .nut-animate .nut-animate-shake {
113
110
  animation-name: shake;
114
111
  }
112
+ .nut-animate {
113
+ /* Ripple Animation */
114
+ }
115
115
  @keyframes ripple {
116
116
  0% {
117
117
  transform: scale(1);
@@ -123,6 +123,9 @@ page {
123
123
  .nut-animate .nut-animate-ripple {
124
124
  animation-name: ripple;
125
125
  }
126
+ .nut-animate {
127
+ /* Breath Animation */
128
+ }
126
129
  @keyframes breath {
127
130
  0%, 100% {
128
131
  transform: scale(1);
@@ -137,6 +140,9 @@ page {
137
140
  animation-timing-function: ease-in-out;
138
141
  animation-direction: alternate;
139
142
  }
143
+ .nut-animate {
144
+ /* Twinkle Animation */
145
+ }
140
146
  .nut-animate .nut-animate-twinkle {
141
147
  position: relative;
142
148
  }
@@ -170,6 +176,9 @@ page {
170
176
  opacity: 0;
171
177
  }
172
178
  }
179
+ .nut-animate {
180
+ /* Flicker Animation */
181
+ }
173
182
  .nut-animate .nut-animate-flicker {
174
183
  position: relative;
175
184
  overflow: hidden;
@@ -195,6 +204,9 @@ page {
195
204
  transform: translateX(calc(150px * var(--nut-scale-f, 1))) skewX(-20deg);
196
205
  }
197
206
  }
207
+ .nut-animate {
208
+ /* Jump Animation */
209
+ }
198
210
  @keyframes jump {
199
211
  0% {
200
212
  transform: rotate(0) translateY(0);
@@ -216,6 +228,9 @@ page {
216
228
  transform-origin: center center;
217
229
  animation: jump 0.7s linear;
218
230
  }
231
+ .nut-animate {
232
+ /* Float Animation */
233
+ }
219
234
  @keyframes float-pop {
220
235
  0% {
221
236
  top: 0;
@@ -237,6 +252,9 @@ page {
237
252
  position: relative;
238
253
  animation-name: float-pop;
239
254
  }
255
+ .nut-animate {
256
+ /* Loop Animation */
257
+ }
240
258
  .nut-animate .loop {
241
259
  animation-iteration-count: infinite;
242
260
  }
@@ -4,21 +4,15 @@
4
4
  /* #endif */
5
5
  .nut-animate {
6
6
  /* Animation CSS */
7
- /* Slide Animations */
8
- /* Shake Animation */
9
- /* Ripple Animation */
10
- /* Breath Animation */
11
- /* Twinkle Animation */
12
- /* Flicker Animation */
13
- /* Jump Animation */
14
- /* Float Animation */
15
- /* Loop Animation */
16
7
  }
17
8
  .nut-animate [class*=nut-animate-] {
18
9
  animation-duration: 0.5s;
19
10
  animation-timing-function: ease-out;
20
11
  animation-fill-mode: both;
21
12
  }
13
+ .nut-animate {
14
+ /* Slide Animations */
15
+ }
22
16
  @keyframes slide-right {
23
17
  0% {
24
18
  opacity: 0;
@@ -71,6 +65,9 @@
71
65
  .nut-animate .nut-animate-slide-bottom {
72
66
  animation-name: slide-bottom;
73
67
  }
68
+ .nut-animate {
69
+ /* Shake Animation */
70
+ }
74
71
  @keyframes shake {
75
72
  0%, 100% {
76
73
  transform: translateX(0);
@@ -106,6 +103,9 @@
106
103
  .nut-animate .nut-animate-shake {
107
104
  animation-name: shake;
108
105
  }
106
+ .nut-animate {
107
+ /* Ripple Animation */
108
+ }
109
109
  @keyframes ripple {
110
110
  0% {
111
111
  transform: scale(1);
@@ -117,6 +117,9 @@
117
117
  .nut-animate .nut-animate-ripple {
118
118
  animation-name: ripple;
119
119
  }
120
+ .nut-animate {
121
+ /* Breath Animation */
122
+ }
120
123
  @keyframes breath {
121
124
  0%, 100% {
122
125
  transform: scale(1);
@@ -131,6 +134,9 @@
131
134
  animation-timing-function: ease-in-out;
132
135
  animation-direction: alternate;
133
136
  }
137
+ .nut-animate {
138
+ /* Twinkle Animation */
139
+ }
134
140
  .nut-animate .nut-animate-twinkle {
135
141
  position: relative;
136
142
  }
@@ -164,6 +170,9 @@
164
170
  opacity: 0;
165
171
  }
166
172
  }
173
+ .nut-animate {
174
+ /* Flicker Animation */
175
+ }
167
176
  .nut-animate .nut-animate-flicker {
168
177
  position: relative;
169
178
  overflow: hidden;
@@ -189,6 +198,9 @@
189
198
  transform: translateX(scale-px(150px)) skewX(-20deg);
190
199
  }
191
200
  }
201
+ .nut-animate {
202
+ /* Jump Animation */
203
+ }
192
204
  @keyframes jump {
193
205
  0% {
194
206
  transform: rotate(0) translateY(0);
@@ -210,6 +222,9 @@
210
222
  transform-origin: center center;
211
223
  animation: jump 0.7s linear;
212
224
  }
225
+ .nut-animate {
226
+ /* Float Animation */
227
+ }
213
228
  @keyframes float-pop {
214
229
  0% {
215
230
  top: 0;
@@ -231,6 +246,9 @@
231
246
  position: relative;
232
247
  animation-name: float-pop;
233
248
  }
249
+ .nut-animate {
250
+ /* Loop Animation */
251
+ }
234
252
  .nut-animate .loop {
235
253
  animation-iteration-count: infinite;
236
254
  }
@@ -4,21 +4,15 @@
4
4
  /* #endif */
5
5
  .nut-animate {
6
6
  /* Animation CSS */
7
- /* Slide Animations */
8
- /* Shake Animation */
9
- /* Ripple Animation */
10
- /* Breath Animation */
11
- /* Twinkle Animation */
12
- /* Flicker Animation */
13
- /* Jump Animation */
14
- /* Float Animation */
15
- /* Loop Animation */
16
7
  }
17
8
  .nut-animate [class*=nut-animate-] {
18
9
  animation-duration: 0.5s;
19
10
  animation-timing-function: ease-out;
20
11
  animation-fill-mode: both;
21
12
  }
13
+ .nut-animate {
14
+ /* Slide Animations */
15
+ }
22
16
  @keyframes slide-right {
23
17
  0% {
24
18
  opacity: 0;
@@ -71,6 +65,9 @@
71
65
  .nut-animate .nut-animate-slide-bottom {
72
66
  animation-name: slide-bottom;
73
67
  }
68
+ .nut-animate {
69
+ /* Shake Animation */
70
+ }
74
71
  @keyframes shake {
75
72
  0%, 100% {
76
73
  transform: translateX(0);
@@ -106,6 +103,9 @@
106
103
  .nut-animate .nut-animate-shake {
107
104
  animation-name: shake;
108
105
  }
106
+ .nut-animate {
107
+ /* Ripple Animation */
108
+ }
109
109
  @keyframes ripple {
110
110
  0% {
111
111
  transform: scale(1);
@@ -117,6 +117,9 @@
117
117
  .nut-animate .nut-animate-ripple {
118
118
  animation-name: ripple;
119
119
  }
120
+ .nut-animate {
121
+ /* Breath Animation */
122
+ }
120
123
  @keyframes breath {
121
124
  0%, 100% {
122
125
  transform: scale(1);
@@ -131,6 +134,9 @@
131
134
  animation-timing-function: ease-in-out;
132
135
  animation-direction: alternate;
133
136
  }
137
+ .nut-animate {
138
+ /* Twinkle Animation */
139
+ }
134
140
  .nut-animate .nut-animate-twinkle {
135
141
  position: relative;
136
142
  }
@@ -164,6 +170,9 @@
164
170
  opacity: 0;
165
171
  }
166
172
  }
173
+ .nut-animate {
174
+ /* Flicker Animation */
175
+ }
167
176
  .nut-animate .nut-animate-flicker {
168
177
  position: relative;
169
178
  overflow: hidden;
@@ -189,6 +198,9 @@
189
198
  transform: translateX(scale-px(150px)) skewX(-20deg);
190
199
  }
191
200
  }
201
+ .nut-animate {
202
+ /* Jump Animation */
203
+ }
192
204
  @keyframes jump {
193
205
  0% {
194
206
  transform: rotate(0) translateY(0);
@@ -210,6 +222,9 @@
210
222
  transform-origin: center center;
211
223
  animation: jump 0.7s linear;
212
224
  }
225
+ .nut-animate {
226
+ /* Float Animation */
227
+ }
213
228
  @keyframes float-pop {
214
229
  0% {
215
230
  top: 0;
@@ -231,6 +246,9 @@
231
246
  position: relative;
232
247
  animation-name: float-pop;
233
248
  }
249
+ .nut-animate {
250
+ /* Loop Animation */
251
+ }
234
252
  .nut-animate .loop {
235
253
  animation-iteration-count: infinite;
236
254
  }
@@ -37,20 +37,6 @@ var defaultProps = (0, _object_spread_props._)((0, _object_spread._)({}, _typing
37
37
  onCanPlay: function onCanPlay(ctx) {}
38
38
  });
39
39
  var Audio = function Audio(props) {
40
- var formatSeconds = function formatSeconds(value) {
41
- if (!value) {
42
- return '00:00:00';
43
- }
44
- var time = parseInt(value);
45
- var hours = Math.floor(time / 3600);
46
- var minutes = Math.floor((time - hours * 3600) / 60);
47
- var secondss = time - hours * 3600 - minutes * 60;
48
- var result = '';
49
- result += "".concat("0".concat(hours.toString()).slice(-2), ":");
50
- result += "".concat("0".concat(minutes.toString()).slice(-2), ":");
51
- result += "0".concat(secondss.toString()).slice(-2);
52
- return result;
53
- };
54
40
  var classPrefix = 'nut-audio';
55
41
  var locale = (0, _index2.useConfig)().locale;
56
42
  var _$_object_spread = (0, _object_spread._)({}, defaultProps, props), className = _$_object_spread.className, src = _$_object_spread.src, style = _$_object_spread.style, autoplay = _$_object_spread.autoplay, loop = _$_object_spread.loop, type = _$_object_spread.type, onFastBack = _$_object_spread.onFastBack, onForward = _$_object_spread.onForward, onPause = _$_object_spread.onPause, onPlay = _$_object_spread.onPlay, onPlayEnd = _$_object_spread.onPlayEnd, onCanPlay = _$_object_spread.onCanPlay, children = _$_object_spread.children, iconClassPrefix = _$_object_spread.iconClassPrefix, iconFontClassName = _$_object_spread.iconFontClassName, rest = (0, _object_without_properties._)(_$_object_spread, [
@@ -120,6 +106,20 @@ var Audio = function Audio(props) {
120
106
  audioCtx.onError(function(res) {
121
107
  console.warn('onError', res.errCode, res.errMsg);
122
108
  });
109
+ function formatSeconds(value) {
110
+ if (!value) {
111
+ return '00:00:00';
112
+ }
113
+ var time = parseInt(value);
114
+ var hours = Math.floor(time / 3600);
115
+ var minutes = Math.floor((time - hours * 3600) / 60);
116
+ var secondss = time - hours * 3600 - minutes * 60;
117
+ var result = '';
118
+ result += "".concat("0".concat(hours.toString()).slice(-2), ":");
119
+ result += "".concat("0".concat(minutes.toString()).slice(-2), ":");
120
+ result += "0".concat(secondss.toString()).slice(-2);
121
+ return result;
122
+ }
123
123
  var handleBack = function handleBack() {
124
124
  var currentTime = Math.floor(audioCtx.currentTime);
125
125
  statusRef.current.currentTime = Math.max(currentTime - 1, 0);
@@ -162,7 +162,6 @@ page {
162
162
  padding: var(--nutui-button-xlarge-padding, 0px calc(20px * var(--nut-scale-f, 1)));
163
163
  font-size: var(--nutui-button-xlarge-font-size, var(--nutui-font-size-xl, calc(18px * var(--nut-scale-font, var(--nut-scale-f, 1)))));
164
164
  border-radius: var(--nutui-button-xlarge-border-radius, var(--nutui-radius-base, calc(8px * var(--nut-scale-f, 1))));
165
- font-weight: var(--nutui-font-weight-bold, 600);
166
165
  }
167
166
  .nut-button-xlarge .nut-button-text {
168
167
  margin-left: var(--nutui-button-xlarge-text-icon-margin, calc(6px * var(--nut-scale-f, 1)));
@@ -178,12 +177,14 @@ page {
178
177
  .nut-button-xlarge-children {
179
178
  font-size: var(--nutui-button-xlarge-font-size, var(--nutui-font-size-xl, calc(18px * var(--nut-scale-font, var(--nut-scale-f, 1)))));
180
179
  }
180
+ .nut-button-xlarge {
181
+ font-weight: var(--nutui-font-weight-bold, 600);
182
+ }
181
183
  .nut-button-44 {
182
184
  height: var(--nutui-button-44-height, calc(44px * var(--nut-scale-f, 1)));
183
185
  padding: var(--nutui-button-44-padding, 0px calc(16px * var(--nut-scale-f, 1)));
184
186
  font-size: var(--nutui-button-44-font-size, var(--nutui-font-size-15));
185
187
  border-radius: var(--nutui-button-44-border-radius, var(--nutui-radius-base, calc(8px * var(--nut-scale-f, 1))));
186
- font-weight: var(--nutui-font-weight-bold, 600);
187
188
  }
188
189
  .nut-button-44 .nut-button-text {
189
190
  margin-left: var(--nutui-button-xlarge-text-icon-margin, calc(6px * var(--nut-scale-f, 1)));
@@ -199,12 +200,14 @@ page {
199
200
  .nut-button-44-children {
200
201
  font-size: var(--nutui-button-44-font-size, var(--nutui-font-size-15));
201
202
  }
203
+ .nut-button-44 {
204
+ font-weight: var(--nutui-font-weight-bold, 600);
205
+ }
202
206
  .nut-button-large {
203
207
  height: var(--nutui-button-large-height, calc(40px * var(--nut-scale-f, 1)));
204
208
  padding: var(--nutui-button-large-padding, 0px calc(12px * var(--nut-scale-f, 1)));
205
209
  font-size: var(--nutui-button-large-font-size, var(--nutui-font-size-l, calc(15px * var(--nut-scale-font, var(--nut-scale-f, 1)))));
206
210
  border-radius: var(--nutui-button-large-border-radius, var(--nutui-radius-base, calc(8px * var(--nut-scale-f, 1))));
207
- min-width: calc(84px * var(--nut-scale-f, 1));
208
211
  }
209
212
  .nut-button-large .nut-button-text {
210
213
  margin-left: var(--nutui-button-xlarge-text-icon-margin, calc(6px * var(--nut-scale-f, 1)));
@@ -220,12 +223,14 @@ page {
220
223
  .nut-button-large-children {
221
224
  font-size: var(--nutui-button-large-font-size, var(--nutui-font-size-l, calc(15px * var(--nut-scale-font, var(--nut-scale-f, 1)))));
222
225
  }
226
+ .nut-button-large {
227
+ min-width: calc(84px * var(--nut-scale-f, 1));
228
+ }
223
229
  .nut-button-36 {
224
230
  height: var(--nutui-button-36-height, calc(36px * var(--nut-scale-f, 1)));
225
231
  padding: var(--nutui-button-36-padding, 0px calc(12px * var(--nut-scale-f, 1)));
226
232
  font-size: var(--nutui-button-36-font-size, var(--nutui-font-size-14));
227
233
  border-radius: var(--nutui-button-36-border-radius, var(--nutui-radius-base, calc(8px * var(--nut-scale-f, 1))));
228
- min-width: calc(66px * var(--nut-scale-f, 1));
229
234
  }
230
235
  .nut-button-36 .nut-button-text {
231
236
  margin-left: var(--nutui-button-xlarge-text-icon-margin, calc(6px * var(--nut-scale-f, 1)));
@@ -241,13 +246,14 @@ page {
241
246
  .nut-button-36-children {
242
247
  font-size: var(--nutui-button-36-font-size, var(--nutui-font-size-14));
243
248
  }
249
+ .nut-button-36 {
250
+ min-width: calc(66px * var(--nut-scale-f, 1));
251
+ }
244
252
  .nut-button-small {
245
253
  height: var(--nutui-button-small-height, calc(28px * var(--nut-scale-f, 1)));
246
254
  padding: var(--nutui-button-small-padding, 0px calc(8px * var(--nut-scale-f, 1)));
247
255
  font-size: var(--nutui-button-small-font-size, var(--nutui-font-size-s, calc(12px * var(--nut-scale-font, var(--nut-scale-f, 1)))));
248
256
  border-radius: var(--nutui-button-small-border-radius, var(--nutui-radius-s, calc(6px * var(--nut-scale-f, 1))));
249
- min-width: calc(52px * var(--nut-scale-f, 1));
250
- font-weight: var(--nutui-font-weight, 400);
251
257
  }
252
258
  .nut-button-small .nut-icon {
253
259
  font-size: var(--nutui-button-small-font-size, var(--nutui-font-size-s, calc(12px * var(--nut-scale-font, var(--nut-scale-f, 1)))));
@@ -257,13 +263,15 @@ page {
257
263
  .nut-button-small-children {
258
264
  font-size: var(--nutui-button-small-font-size, var(--nutui-font-size-s, calc(12px * var(--nut-scale-font, var(--nut-scale-f, 1)))));
259
265
  }
266
+ .nut-button-small {
267
+ min-width: calc(52px * var(--nut-scale-f, 1));
268
+ font-weight: var(--nutui-font-weight, 400);
269
+ }
260
270
  .nut-button-mini {
261
271
  height: var(--nutui-button-mini-height, calc(24px * var(--nut-scale-f, 1)));
262
272
  padding: var(--nutui-button-mini-padding, 0px calc(6px * var(--nut-scale-f, 1)));
263
273
  font-size: var(--nutui-button-mini-font-size, var(--nutui-font-size-xs, calc(11px * var(--nut-scale-font, var(--nut-scale-f, 1)))));
264
274
  border-radius: var(--nutui-button-mini-border-radius, var(--nutui-radius-xs, calc(4px * var(--nut-scale-f, 1))));
265
- min-width: calc(48px * var(--nut-scale-f, 1));
266
- font-weight: var(--nutui-font-weight, 400);
267
275
  }
268
276
  .nut-button-mini .nut-icon {
269
277
  font-size: var(--nutui-button-mini-font-size, var(--nutui-font-size-xs, calc(11px * var(--nut-scale-font, var(--nut-scale-f, 1)))));
@@ -273,6 +281,10 @@ page {
273
281
  .nut-button-mini-children {
274
282
  font-size: var(--nutui-button-mini-font-size, var(--nutui-font-size-xs, calc(11px * var(--nut-scale-font, var(--nut-scale-f, 1)))));
275
283
  }
284
+ .nut-button-mini {
285
+ min-width: calc(48px * var(--nut-scale-f, 1));
286
+ font-weight: var(--nutui-font-weight, 400);
287
+ }
276
288
  .nut-button-primary {
277
289
  color: var(--nutui-button-primary-color, var(--nutui-color-primary-text, #ffffff));
278
290
  background: var(--nutui-button-primary-background-color, var(--nutui-color-primary, #ff0f23));