@nutui/nutui-react 3.0.5 → 3.0.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 (182) hide show
  1. package/CHANGELOG.md +59 -1
  2. package/dist/cjs/packages/actionsheet/style/style.css +4 -4
  3. package/dist/cjs/packages/address/style/style.css +4 -4
  4. package/dist/cjs/packages/audio/style/style.css +4 -16
  5. package/dist/cjs/packages/badge/badge.js +4 -3
  6. package/dist/cjs/packages/badge/style/badge.scss +4 -0
  7. package/dist/cjs/packages/badge/style/style.css +9 -6
  8. package/dist/cjs/packages/button/style/button.scss +4 -20
  9. package/dist/cjs/packages/button/style/style.css +4 -16
  10. package/dist/cjs/packages/calendar/style/style.css +4 -4
  11. package/dist/cjs/packages/cascader/style/style.css +4 -4
  12. package/dist/cjs/packages/collapse/style/style.css +22 -7
  13. package/dist/cjs/packages/collapseitem/collapseitem.js +46 -44
  14. package/dist/cjs/packages/collapseitem/style/collapseitem.scss +22 -5
  15. package/dist/cjs/packages/collapseitem/style/style.css +22 -7
  16. package/dist/cjs/packages/configprovider/types.d.ts +1 -1
  17. package/dist/cjs/packages/datepicker/style/style.css +7 -4
  18. package/dist/cjs/packages/datepickerview/style/style.css +3 -0
  19. package/dist/cjs/packages/dialog/confirm.d.ts +2 -3
  20. package/dist/cjs/packages/dialog/confirm.js +4 -18
  21. package/dist/cjs/packages/dialog/content.d.ts +11 -3
  22. package/dist/cjs/packages/dialog/dialog.d.ts +1 -1
  23. package/dist/cjs/packages/dialog/dialog.js +98 -69
  24. package/dist/cjs/packages/dialog/index.d.ts +1 -1
  25. package/dist/cjs/packages/dialog/style/style.css +4 -16
  26. package/dist/cjs/packages/empty/style/style.css +4 -16
  27. package/dist/cjs/packages/fixednav/style/style.css +9 -6
  28. package/dist/cjs/packages/imagepreview/style/style.css +4 -4
  29. package/dist/cjs/packages/indicator/indicator.js +1 -1
  30. package/dist/cjs/packages/lottie/index.d.ts +1 -1
  31. package/dist/cjs/packages/lottie/index.js +2 -2
  32. package/dist/cjs/packages/notify/Notification.d.ts +3 -9
  33. package/dist/cjs/packages/notify/Notification.js +27 -7
  34. package/dist/cjs/packages/notify/notify.d.ts +0 -4
  35. package/dist/cjs/packages/notify/notify.js +6 -34
  36. package/dist/cjs/packages/notify/style/notify.scss +39 -36
  37. package/dist/cjs/packages/notify/style/style.css +36 -31
  38. package/dist/cjs/packages/numberkeyboard/style/style.css +4 -4
  39. package/dist/cjs/packages/picker/style/style.css +7 -4
  40. package/dist/cjs/packages/pickerview/style/pickerview.scss +3 -0
  41. package/dist/cjs/packages/pickerview/style/style.css +3 -0
  42. package/dist/cjs/packages/popover/popover.js +72 -65
  43. package/dist/cjs/packages/popover/style/popover.scss +48 -51
  44. package/dist/cjs/packages/popover/style/style.css +64 -70
  45. package/dist/cjs/packages/popup/style/popup.scss +4 -4
  46. package/dist/cjs/packages/popup/style/style.css +4 -4
  47. package/dist/cjs/packages/resultpage/style/style.css +4 -16
  48. package/dist/cjs/packages/shortpassword/style/style.css +4 -4
  49. package/dist/cjs/packages/skeleton/skeleton.js +64 -49
  50. package/dist/cjs/packages/skeleton/style/index.js +0 -1
  51. package/dist/cjs/packages/skeleton/style/skeleton.scss +40 -46
  52. package/dist/cjs/packages/skeleton/style/style.css +32 -175
  53. package/dist/cjs/packages/switch/style/style.css +5 -0
  54. package/dist/cjs/packages/switch/style/switch.scss +5 -0
  55. package/dist/cjs/packages/switch/switch.js +22 -11
  56. package/dist/cjs/packages/tabbar/style/style.css +54 -45
  57. package/dist/cjs/packages/tabbar/style/tabbar.scss +28 -19
  58. package/dist/cjs/packages/tabbar/tabbar.js +28 -10
  59. package/dist/cjs/packages/tabbaritem/style/style.css +30 -27
  60. package/dist/cjs/packages/tabbaritem/style/tabbaritem.scss +32 -29
  61. package/dist/cjs/packages/tabbaritem/tabbaritem.js +34 -13
  62. package/dist/cjs/packages/tabpane/tabpane.js +2 -2
  63. package/dist/cjs/packages/timeselect/style/style.css +4 -4
  64. package/dist/cjs/packages/tour/style/style.css +64 -70
  65. package/dist/cjs/types/spec/badge/base.d.ts +1 -0
  66. package/dist/cjs/types/spec/dialog/base.d.ts +50 -1
  67. package/dist/cjs/types/spec/dialog/base.js +7 -0
  68. package/dist/cjs/types/spec/dialog/h5.d.ts +4 -1
  69. package/dist/cjs/types/spec/dialog/taro.d.ts +8 -2
  70. package/dist/cjs/types/spec/indicator/base.d.ts +1 -1
  71. package/dist/cjs/types/spec/notify/base.d.ts +7 -2
  72. package/dist/cjs/types/spec/popover/base.d.ts +7 -0
  73. package/dist/cjs/types/spec/searchbar/taro.d.ts +10 -7
  74. package/dist/cjs/types/spec/skeleton/base.d.ts +7 -5
  75. package/dist/cjs/types/spec/switch/base.d.ts +3 -2
  76. package/dist/cjs/types/spec/switch/h5.d.ts +1 -1
  77. package/dist/cjs/types/spec/switch/taro.d.ts +1 -4
  78. package/dist/cjs/types/spec/tabbar/base.d.ts +7 -4
  79. package/dist/cjs/utils/get-rect-by-taro.js +10 -0
  80. package/dist/cjs/utils/lru.d.ts +8 -0
  81. package/dist/cjs/utils/lru.js +58 -0
  82. package/dist/es/packages/actionsheet/style/style.css +4 -4
  83. package/dist/es/packages/address/style/style.css +4 -4
  84. package/dist/es/packages/audio/style/style.css +4 -16
  85. package/dist/es/packages/badge/badge.js +4 -3
  86. package/dist/es/packages/badge/style/badge.scss +4 -0
  87. package/dist/es/packages/badge/style/style.css +9 -6
  88. package/dist/es/packages/button/style/button.scss +4 -20
  89. package/dist/es/packages/button/style/style.css +4 -16
  90. package/dist/es/packages/calendar/style/style.css +4 -4
  91. package/dist/es/packages/cascader/style/style.css +4 -4
  92. package/dist/es/packages/collapse/style/style.css +22 -7
  93. package/dist/es/packages/collapseitem/collapseitem.js +47 -45
  94. package/dist/es/packages/collapseitem/style/collapseitem.scss +22 -5
  95. package/dist/es/packages/collapseitem/style/style.css +22 -7
  96. package/dist/es/packages/configprovider/types.d.ts +1 -1
  97. package/dist/es/packages/datepicker/style/style.css +7 -4
  98. package/dist/es/packages/datepickerview/style/style.css +3 -0
  99. package/dist/es/packages/dialog/confirm.d.ts +2 -3
  100. package/dist/es/packages/dialog/confirm.js +1 -8
  101. package/dist/es/packages/dialog/content.d.ts +11 -3
  102. package/dist/es/packages/dialog/dialog.d.ts +1 -1
  103. package/dist/es/packages/dialog/dialog.js +98 -69
  104. package/dist/es/packages/dialog/index.d.ts +1 -1
  105. package/dist/es/packages/dialog/style/style.css +4 -16
  106. package/dist/es/packages/empty/style/style.css +4 -16
  107. package/dist/es/packages/fixednav/style/style.css +9 -6
  108. package/dist/es/packages/imagepreview/style/style.css +4 -4
  109. package/dist/es/packages/indicator/indicator.js +1 -1
  110. package/dist/es/packages/lottie/index.d.ts +1 -1
  111. package/dist/es/packages/lottie/index.js +1 -1
  112. package/dist/es/packages/notify/Notification.d.ts +3 -9
  113. package/dist/es/packages/notify/Notification.js +27 -7
  114. package/dist/es/packages/notify/notify.d.ts +0 -4
  115. package/dist/es/packages/notify/notify.js +6 -34
  116. package/dist/es/packages/notify/style/notify.scss +39 -36
  117. package/dist/es/packages/notify/style/style.css +36 -31
  118. package/dist/es/packages/numberkeyboard/style/style.css +4 -4
  119. package/dist/es/packages/picker/style/style.css +7 -4
  120. package/dist/es/packages/pickerview/style/pickerview.scss +3 -0
  121. package/dist/es/packages/pickerview/style/style.css +3 -0
  122. package/dist/es/packages/popover/popover.js +72 -65
  123. package/dist/es/packages/popover/style/popover.scss +48 -51
  124. package/dist/es/packages/popover/style/style.css +64 -70
  125. package/dist/es/packages/popup/style/popup.scss +4 -4
  126. package/dist/es/packages/popup/style/style.css +4 -4
  127. package/dist/es/packages/resultpage/style/style.css +4 -16
  128. package/dist/es/packages/shortpassword/style/style.css +4 -4
  129. package/dist/es/packages/skeleton/skeleton.js +63 -49
  130. package/dist/es/packages/skeleton/style/index.js +0 -1
  131. package/dist/es/packages/skeleton/style/skeleton.scss +40 -46
  132. package/dist/es/packages/skeleton/style/style.css +32 -175
  133. package/dist/es/packages/switch/style/style.css +5 -0
  134. package/dist/es/packages/switch/style/switch.scss +5 -0
  135. package/dist/es/packages/switch/switch.js +21 -11
  136. package/dist/es/packages/tabbar/style/style.css +54 -45
  137. package/dist/es/packages/tabbar/style/tabbar.scss +28 -19
  138. package/dist/es/packages/tabbar/tabbar.js +27 -10
  139. package/dist/es/packages/tabbaritem/style/style.css +30 -27
  140. package/dist/es/packages/tabbaritem/style/tabbaritem.scss +32 -29
  141. package/dist/es/packages/tabbaritem/tabbaritem.js +34 -13
  142. package/dist/es/packages/tabpane/tabpane.js +2 -2
  143. package/dist/es/packages/timeselect/style/style.css +4 -4
  144. package/dist/es/packages/tour/style/style.css +64 -70
  145. package/dist/es/types/spec/badge/base.d.ts +4 -0
  146. package/dist/es/types/spec/dialog/base.d.ts +83 -1
  147. package/dist/es/types/spec/dialog/base.js +1 -1
  148. package/dist/es/types/spec/dialog/h5.d.ts +4 -1
  149. package/dist/es/types/spec/dialog/taro.d.ts +8 -2
  150. package/dist/es/types/spec/indicator/base.d.ts +1 -1
  151. package/dist/es/types/spec/notify/base.d.ts +22 -5
  152. package/dist/es/types/spec/popover/base.d.ts +7 -0
  153. package/dist/es/types/spec/searchbar/taro.d.ts +10 -7
  154. package/dist/es/types/spec/skeleton/base.d.ts +19 -14
  155. package/dist/es/types/spec/switch/base.d.ts +6 -2
  156. package/dist/es/types/spec/switch/h5.d.ts +1 -1
  157. package/dist/es/types/spec/switch/taro.d.ts +1 -4
  158. package/dist/es/types/spec/tabbar/base.d.ts +7 -4
  159. package/dist/es/utils/get-rect-by-taro.js +9 -0
  160. package/dist/es/utils/lru.d.ts +8 -0
  161. package/dist/es/utils/lru.js +49 -0
  162. package/dist/nutui.react.umd.js +557 -529
  163. package/dist/style.css +1 -1
  164. package/dist/style.scss +38 -38
  165. package/dist/styles/theme-jmapp.scss +1 -0
  166. package/dist/styles/themes/jmapp.css +1 -1
  167. package/dist/styles/variables-jmapp.scss +237 -50
  168. package/dist/styles/variables-jrkf.scss +25 -14
  169. package/dist/styles/variables.scss +38 -51
  170. package/package.json +1 -1
  171. package/dist/cjs/packages/dialog/dialogwrap.d.ts +0 -4
  172. package/dist/cjs/packages/dialog/dialogwrap.js +0 -79
  173. package/dist/cjs/packages/dialog/types.d.ts +0 -57
  174. package/dist/cjs/packages/dialog/types.js +0 -11
  175. package/dist/es/packages/dialog/dialogwrap.d.ts +0 -4
  176. package/dist/es/packages/dialog/dialogwrap.js +0 -60
  177. package/dist/es/packages/dialog/types.d.ts +0 -57
  178. package/dist/es/packages/dialog/types.js +0 -1
  179. /package/dist/cjs/packages/lottie/{web.d.ts → lottie.d.ts} +0 -0
  180. /package/dist/cjs/packages/lottie/{web.js → lottie.js} +0 -0
  181. /package/dist/es/packages/lottie/{web.d.ts → lottie.d.ts} +0 -0
  182. /package/dist/es/packages/lottie/{web.js → lottie.js} +0 -0
@@ -60,7 +60,7 @@
60
60
 
61
61
  .nut-popup {
62
62
  position: fixed;
63
- min-height: 46%;
63
+ min-height: 26%;
64
64
  max-height: 100%;
65
65
  background-color: var(--nutui-overlay-content-bg-color, var(--nutui-color-background-overlay, #ffffff));
66
66
  -webkit-overflow-scrolling: touch;
@@ -198,12 +198,12 @@
198
198
  transform: scale(0.8);
199
199
  }
200
200
  }
201
- .nut-popup-slide-default-enter-active {
201
+ .nut-popup-slide-none-enter-active {
202
202
  animation-fill-mode: both;
203
203
  animation-name: popup-scale-fade-in;
204
204
  animation-duration: var(--nutui-popup-animation-duration, 0.3s);
205
205
  }
206
- .nut-popup-slide-default-exit-active {
206
+ .nut-popup-slide-none-exit-active {
207
207
  animation-fill-mode: both;
208
208
  animation-name: popup-scale-fade-out;
209
209
  animation-duration: var(--nutui-popup-animation-duration, 0.3s);
@@ -330,7 +330,7 @@
330
330
  animation-name: popup-slide-left-exit;
331
331
  animation-duration: var(--nutui-popup-animation-duration, 0.3s);
332
332
  }
333
- .nut-popup-slide-default-exit-done.nut-popup, .nut-popup-slide-center-exit-done.nut-popup, .nut-popup-slide-left-exit-done.nut-popup, .nut-popup-slide-right-exit-done.nut-popup, .nut-popup-slide-top-exit-done.nut-popup, .nut-popup-slide-bottom-exit-done.nut-popup {
333
+ .nut-popup-slide-none-exit-done.nut-popup, .nut-popup-slide-center-exit-done.nut-popup, .nut-popup-slide-left-exit-done.nut-popup, .nut-popup-slide-right-exit-done.nut-popup, .nut-popup-slide-top-exit-done.nut-popup, .nut-popup-slide-bottom-exit-done.nut-popup {
334
334
  display: none;
335
335
  }
336
336
  .nut-popup .nut-overflow-hidden {
@@ -411,12 +411,13 @@
411
411
  top: 50%;
412
412
  transform: rotate(90deg) translateY(-50%);
413
413
  }
414
- .nut-popover-arrow-left.nut-popover-arrow-left-start {
414
+ .nut-popover-arrow-left.nut-popover-arrow-left-top {
415
415
  top: 16px;
416
416
  right: -8px;
417
417
  transform: rotate(90deg) translateY(0%);
418
418
  }
419
- .nut-popover-arrow-left.nut-popover-arrow-left-end {
419
+ .nut-popover-arrow-left.nut-popover-arrow-left-bottom {
420
+ top: auto;
420
421
  bottom: 16px;
421
422
  right: -8px;
422
423
  transform: rotate(90deg) translateY(0%);
@@ -429,12 +430,12 @@
429
430
  left: -6px;
430
431
  transform: rotate(-90deg) translateY(-50%);
431
432
  }
432
- .nut-popover-arrow-right.nut-popover-arrow-right-start {
433
+ .nut-popover-arrow-right.nut-popover-arrow-right-top {
433
434
  top: 16px;
434
435
  left: -8px;
435
436
  transform: rotate(-90deg) translateY(0%);
436
437
  }
437
- .nut-popover-arrow-right.nut-popover-arrow-right-end {
438
+ .nut-popover-arrow-right.nut-popover-arrow-right-bottom {
438
439
  bottom: 16px;
439
440
  left: -8px;
440
441
  transform: rotate(-90deg) translateY(0%);
@@ -449,57 +450,51 @@
449
450
  max-height: initial;
450
451
  overflow-y: initial;
451
452
  }
452
- .nut-popover .nut-popover-content .nut-popover-menu-item {
453
+ .nut-popover .nut-popover-content-group {
454
+ padding: 0 var(--nutui-popover-padding, 8px);
455
+ }
456
+ .nut-popover .nut-popover-content .nut-popover-item {
453
457
  display: flex;
454
458
  align-items: center;
455
459
  justify-content: center;
456
- padding: 0 var(--nutui-popover-menu-item-padding, 8px);
457
460
  border-bottom: 1px solid var(--nutui-popover-divider-color, var(--nutui-color-border, rgba(0, 0, 0, 0.06)));
458
- max-width: var(--nutui-popover-menu-item-width, 160px);
461
+ max-width: var(--nutui-popover-item-width, 160px);
459
462
  word-wrap: break-word;
460
463
  }
461
- .nut-popover .nut-popover-content .nut-popover-menu-item:last-child {
464
+ .nut-popover .nut-popover-content .nut-popover-item:last-child {
462
465
  margin-bottom: 0px;
463
466
  border-bottom: none;
464
467
  }
465
- .nut-popover .nut-popover-content .nut-popover-menu-item-icon {
468
+ .nut-popover .nut-popover-content .nut-popover-item-icon, .nut-popover .nut-popover-content .nut-popover-item-action-icon {
466
469
  display: flex;
467
470
  justify-content: center;
468
471
  align-items: center;
469
- width: 12px;
470
- height: 12px;
471
- font-size: 12px;
472
+ width: var(--nutui-font-size-s, 12px);
473
+ height: var(--nutui-font-size-s, 12px);
474
+ font-size: var(--nutui-font-size-s, 12px);
475
+ }
476
+ .nut-popover .nut-popover-content .nut-popover-item-icon .nut-icon, .nut-popover .nut-popover-content .nut-popover-item-action-icon .nut-icon {
477
+ width: var(--nutui-font-size-s, 12px);
478
+ height: var(--nutui-font-size-s, 12px);
479
+ font-size: var(--nutui-font-size-s, 12px);
472
480
  }
473
- .nut-popover .nut-popover-content .nut-popover-menu-item-icon .nut-icon {
474
- width: 12px;
475
- height: 12px;
476
- font-size: 12px;
481
+ .nut-popover .nut-popover-content .nut-popover-item-icon {
482
+ margin-right: var(--nutui-spacing-xxs, 4px);
477
483
  }
478
- .nut-popover .nut-popover-content .nut-popover-menu-item-name {
484
+ .nut-popover .nut-popover-content .nut-popover-item-name {
479
485
  width: calc(100% - 34px);
480
486
  word-break: keep-all;
481
- margin: 0 8px 0 4px;
482
487
  flex: 1;
483
488
  }
484
- .nut-popover .nut-popover-content .nut-popover-menu-item-action-icon {
485
- display: flex;
486
- justify-content: center;
487
- align-items: center;
488
- width: 12px;
489
- height: 12px;
490
- font-size: 12px;
489
+ .nut-popover .nut-popover-content .nut-popover-item-action-icon {
491
490
  color: var(--nutui-color-text, #505259);
491
+ margin-left: var(--nutui-spacing-base, 8px);
492
492
  }
493
- .nut-popover .nut-popover-content .nut-popover-menu-item-action-icon .nut-icon {
494
- width: 12px;
495
- height: 12px;
496
- font-size: 12px;
497
- }
498
- .nut-popover .nut-popover-content .nut-popover-menu-item.nut-popover-menu-disabled {
493
+ .nut-popover .nut-popover-content .nut-popover-item.nut-popover-item-disabled {
499
494
  color: var(--nutui-popover-disable-color, var(--nutui-color-text-disabled, #c2c4cc));
500
495
  cursor: not-allowed;
501
496
  }
502
- .nut-popover .nut-popover-content .nut-popover-menu-item.nut-popover-menu-taroitem {
497
+ .nut-popover .nut-popover-content .nut-popover-item.nut-popover-taroitem {
503
498
  display: flex;
504
499
  }
505
500
  .nut-popover .nut-popover-content-top .nut-popover-arrow-top {
@@ -507,18 +502,18 @@
507
502
  transform-origin: center left;
508
503
  transform: rotate(180deg) translateX(-50%);
509
504
  }
510
- .nut-popover .nut-popover-content-top-end {
505
+ .nut-popover .nut-popover-content-top-right {
511
506
  right: 0;
512
507
  }
513
- .nut-popover .nut-popover-content-top-end .nut-popover-arrow-top-end {
508
+ .nut-popover .nut-popover-content-top-right .nut-popover-arrow-top-right {
514
509
  right: 16px;
515
510
  bottom: -3.5px;
516
511
  transform: rotate(180deg) translateX(0%);
517
512
  }
518
- .nut-popover .nut-popover-content-top-start {
513
+ .nut-popover .nut-popover-content-top-left {
519
514
  left: 0;
520
515
  }
521
- .nut-popover .nut-popover-content-top-start .nut-popover-arrow-top-start {
516
+ .nut-popover .nut-popover-content-top-left .nut-popover-arrow-top-left {
522
517
  left: 16px;
523
518
  bottom: -3.5px;
524
519
  transform: rotate(180deg) translateX(0%);
@@ -527,30 +522,30 @@
527
522
  left: 50%;
528
523
  transform: translateX(-50%);
529
524
  }
530
- .nut-popover .nut-popover-content-bottom-end {
525
+ .nut-popover .nut-popover-content-bottom-right {
531
526
  right: 0;
532
527
  }
533
- .nut-popover .nut-popover-content-bottom-end .nut-popover-arrow-bottom-end {
528
+ .nut-popover .nut-popover-content-bottom-right .nut-popover-arrow-bottom-right {
534
529
  right: 16px;
535
530
  transform: translateX(0%);
536
531
  }
537
- .nut-popover .nut-popover-content-bottom-start {
532
+ .nut-popover .nut-popover-content-bottom-left {
538
533
  left: 0;
539
534
  }
540
- .nut-popover .nut-popover-content-bottom-start .nut-popover-arrow-bottom-start {
535
+ .nut-popover .nut-popover-content-bottom-left .nut-popover-arrow-bottom-left {
541
536
  left: 16px;
542
537
  transform: translateX(0%);
543
538
  }
544
- .nut-popover .nut-popover-content-left-end {
539
+ .nut-popover .nut-popover-content-left-bottom {
545
540
  bottom: 0;
546
541
  }
547
- .nut-popover .nut-popover-content-left-start {
542
+ .nut-popover .nut-popover-content-left-top {
548
543
  top: 0;
549
544
  }
550
- .nut-popover .nut-popover-content-right-end {
545
+ .nut-popover .nut-popover-content-right-bottom {
551
546
  bottom: 0;
552
547
  }
553
- .nut-popover .nut-popover-content-right-start {
548
+ .nut-popover .nut-popover-content-right-top {
554
549
  top: 0;
555
550
  }
556
551
 
@@ -565,19 +560,18 @@
565
560
  background: var(--nutui-popover-text-color, var(--nutui-color-mask, rgba(0, 0, 0, 0.7))) !important;
566
561
  color: var(--nutui-popover-content-background-color, #ffffff) !important;
567
562
  }
568
- .nut-popover-dark .nut-popover-content .nut-popover-menu-item-action-icon {
563
+ .nut-popover-dark .nut-popover-content .nut-popover-item-action-icon {
569
564
  color: rgba(255, 255, 255, 0.8);
570
565
  }
571
566
 
572
- [dir=rtl] .nut-popover .nut-popover-content .nut-popover-menu-item-name,
573
- .nut-rtl .nut-popover .nut-popover-content .nut-popover-menu-item-name {
567
+ [dir=rtl] .nut-popover .nut-popover-content .nut-popover-item-name,
568
+ .nut-rtl .nut-popover .nut-popover-content .nut-popover-item-name {
574
569
  margin-left: 0;
575
570
  margin-right: 4px;
576
571
  }
577
- [dir=rtl] .nut-popover .nut-popover-content .nut-popover-menu-item-action-icon,
578
- .nut-rtl .nut-popover .nut-popover-content .nut-popover-menu-item-action-icon {
572
+ [dir=rtl] .nut-popover .nut-popover-content .nut-popover-item-action-icon,
573
+ .nut-rtl .nut-popover .nut-popover-content .nut-popover-item-action-icon {
579
574
  right: auto;
580
- left: var(--nutui-popover-menu-item-padding, 8px);
581
575
  }
582
576
  [dir=rtl] .nut-popover .nut-popover-content-top .nut-popover-arrow-top,
583
577
  .nut-rtl .nut-popover .nut-popover-content-top .nut-popover-arrow-top {
@@ -585,23 +579,23 @@
585
579
  right: 50%;
586
580
  transform: translateX(50%);
587
581
  }
588
- [dir=rtl] .nut-popover .nut-popover-content-top-end,
589
- .nut-rtl .nut-popover .nut-popover-content-top-end {
582
+ [dir=rtl] .nut-popover .nut-popover-content-top-right,
583
+ .nut-rtl .nut-popover .nut-popover-content-top-right {
590
584
  right: auto;
591
585
  left: 0;
592
586
  }
593
- [dir=rtl] .nut-popover .nut-popover-content-top-end .nut-popover-arrow-top-end,
594
- .nut-rtl .nut-popover .nut-popover-content-top-end .nut-popover-arrow-top-end {
587
+ [dir=rtl] .nut-popover .nut-popover-content-top-right .nut-popover-arrow-top-right,
588
+ .nut-rtl .nut-popover .nut-popover-content-top-right .nut-popover-arrow-top-right {
595
589
  right: auto;
596
590
  left: 16px;
597
591
  }
598
- [dir=rtl] .nut-popover .nut-popover-content-top-start,
599
- .nut-rtl .nut-popover .nut-popover-content-top-start {
592
+ [dir=rtl] .nut-popover .nut-popover-content-top-left,
593
+ .nut-rtl .nut-popover .nut-popover-content-top-left {
600
594
  left: auto;
601
595
  right: 0;
602
596
  }
603
- [dir=rtl] .nut-popover .nut-popover-content-top-start .nut-popover-arrow-top-start,
604
- .nut-rtl .nut-popover .nut-popover-content-top-start .nut-popover-arrow-top-start {
597
+ [dir=rtl] .nut-popover .nut-popover-content-top-left .nut-popover-arrow-top-left,
598
+ .nut-rtl .nut-popover .nut-popover-content-top-left .nut-popover-arrow-top-left {
605
599
  left: auto;
606
600
  right: 16px;
607
601
  }
@@ -611,23 +605,23 @@
611
605
  right: 50%;
612
606
  transform: translateX(50%);
613
607
  }
614
- [dir=rtl] .nut-popover .nut-popover-content-bottom-end,
615
- .nut-rtl .nut-popover .nut-popover-content-bottom-end {
608
+ [dir=rtl] .nut-popover .nut-popover-content-bottom-right,
609
+ .nut-rtl .nut-popover .nut-popover-content-bottom-right {
616
610
  right: auto;
617
611
  left: 0;
618
612
  }
619
- [dir=rtl] .nut-popover .nut-popover-content-bottom-end .nut-popover-arrow-bottom-end,
620
- .nut-rtl .nut-popover .nut-popover-content-bottom-end .nut-popover-arrow-bottom-end {
613
+ [dir=rtl] .nut-popover .nut-popover-content-bottom-right .nut-popover-arrow-bottom-right,
614
+ .nut-rtl .nut-popover .nut-popover-content-bottom-right .nut-popover-arrow-bottom-right {
621
615
  right: auto;
622
616
  left: 16px;
623
617
  }
624
- [dir=rtl] .nut-popover .nut-popover-content-bottom-start,
625
- .nut-rtl .nut-popover .nut-popover-content-bottom-start {
618
+ [dir=rtl] .nut-popover .nut-popover-content-bottom-left,
619
+ .nut-rtl .nut-popover .nut-popover-content-bottom-left {
626
620
  left: auto;
627
621
  right: 0;
628
622
  }
629
- [dir=rtl] .nut-popover .nut-popover-content-bottom-start .nut-popover-arrow-bottom-start,
630
- .nut-rtl .nut-popover .nut-popover-content-bottom-start .nut-popover-arrow-bottom-start {
623
+ [dir=rtl] .nut-popover .nut-popover-content-bottom-left .nut-popover-arrow-bottom-left,
624
+ .nut-rtl .nut-popover .nut-popover-content-bottom-left .nut-popover-arrow-bottom-left {
631
625
  left: auto;
632
626
  right: 16px;
633
627
  }
@@ -11,4 +11,5 @@ export interface BaseBadge extends BaseProps {
11
11
  right: SimpleValue;
12
12
  fill: BadgeFill;
13
13
  size: BadgeDotSize;
14
+ disabled: boolean;
14
15
  }
@@ -1,2 +1,51 @@
1
- export interface BaseDialog {
1
+ import { ReactNode, ForwardRefExoticComponent, PropsWithChildren } from 'react';
2
+ import type { MouseEvent, CSSProperties } from 'react';
3
+ import { WebOverlayProps } from "../../../types";
4
+ import { BasicComponent } from "../../../utils/typings";
5
+ export type DialogConfigType = {
6
+ prefixCls?: string;
7
+ simple?: boolean;
8
+ };
9
+ export type DialogCloseIconPosition = 'top-right' | 'top-left' | 'bottom';
10
+ export type DialogFooterDirection = 'horizontal' | 'vertical';
11
+ export interface BaseContentProps extends BasicComponent {
12
+ visible: boolean;
13
+ title: ReactNode;
14
+ header: ReactNode;
15
+ footer: ReactNode;
16
+ close: ReactNode;
17
+ footerDirection: DialogFooterDirection;
2
18
  }
19
+ export interface DialogWrapProps extends WebOverlayProps, Omit<BaseContentProps, 'onClick'> {
20
+ visible: boolean;
21
+ overlay: boolean;
22
+ overlayStyle: CSSProperties;
23
+ overlayClassName: string;
24
+ onCancel: () => void;
25
+ onClose: () => void;
26
+ onOverlayClick: (e: MouseEvent) => boolean | void;
27
+ }
28
+ export interface BaseDialog extends DialogWrapProps {
29
+ content: ReactNode;
30
+ confirmText: ReactNode;
31
+ cancelText: ReactNode;
32
+ hideConfirmButton: boolean;
33
+ hideCancelButton: boolean;
34
+ disableConfirmButton: boolean;
35
+ closeIconPosition: DialogCloseIconPosition;
36
+ closeIcon: boolean | ReactNode;
37
+ beforeClose: () => boolean;
38
+ beforeCancel: () => boolean;
39
+ onConfirm: (e?: MouseEvent<HTMLButtonElement>) => PromiseLike<any> | void;
40
+ }
41
+ export type DialogReturnProps = {
42
+ update: (newConfig: Partial<BaseDialog>) => void;
43
+ close: () => void;
44
+ };
45
+ export interface DialogComponent extends ForwardRefExoticComponent<PropsWithChildren<Partial<BaseDialog>>> {
46
+ confirm: (props: Partial<BaseDialog>) => DialogReturnProps;
47
+ alert: (props: Partial<BaseDialog>) => DialogReturnProps;
48
+ config: (config: DialogConfigType) => void;
49
+ destroyAll: () => void;
50
+ }
51
+ export declare const destroyList: Array<() => void>;
@@ -2,3 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
+ Object.defineProperty(exports, "destroyList", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return destroyList;
9
+ }
10
+ });
11
+ var destroyList = [];
@@ -1,3 +1,6 @@
1
- import { BaseDialog } from './base';
1
+ import { BaseDialog, BaseContentProps } from './base';
2
+ export interface WebContentProps extends BaseContentProps {
3
+ onClick: (event: MouseEvent) => void;
4
+ }
2
5
  export interface WebDialogProps extends BaseDialog {
3
6
  }
@@ -1,3 +1,9 @@
1
- import { BaseDialog } from './base';
2
- export interface TaroDialogProps extends BaseDialog {
1
+ import { ITouchEvent } from '@tarojs/components';
2
+ import { BaseDialog, BaseContentProps } from './base';
3
+ export interface TaroContentProps extends BaseContentProps {
4
+ onClick: (event: ITouchEvent) => void;
5
+ }
6
+ export interface TaroDialogProps extends Omit<BaseDialog, 'onOverlayClick' | 'onClick'> {
7
+ onClick: (event: ITouchEvent) => void;
8
+ onOverlayClick: (event: ITouchEvent) => boolean | void;
3
9
  }
@@ -1,6 +1,6 @@
1
1
  import { BaseProps } from '../../base/props';
2
2
  import { UIType } from '../../base/atoms';
3
- export type IndicatorType = 'anchor' | 'slide';
3
+ export type IndicatorType = 'anchor' | 'slide' | 'dualScreen';
4
4
  export type IndicatorColor = Extract<UIType, 'primary' | 'default'>;
5
5
  export interface BaseIndicator extends BaseProps {
6
6
  total: number;
@@ -1,9 +1,14 @@
1
+ import { PositionY } from "../../base/atoms";
1
2
  import { BaseProps } from '../../base/props';
2
3
  export interface BaseNotify extends BaseProps {
3
4
  id: string;
5
+ distance: number;
6
+ navHeight: number;
7
+ closeable: boolean;
8
+ leftIcon: React.ReactNode;
9
+ rightIcon: React.ReactNode;
10
+ position: PositionY;
4
11
  duration: number;
5
- type: string;
6
- position: string;
7
12
  onClick: () => void;
8
13
  onClose: () => void;
9
14
  }
@@ -12,6 +12,13 @@ export interface PopoverList {
12
12
  onClick?: (e: any) => void;
13
13
  };
14
14
  }
15
+ export interface WrapperPosition {
16
+ width: number;
17
+ height: number;
18
+ left: number;
19
+ top: number;
20
+ right: number;
21
+ }
15
22
  export type BasePopover<POPUP_PROPS> = POPUP_PROPS & BaseProps & {
16
23
  theme: UITheme;
17
24
  location: FullPosition;
@@ -1,10 +1,13 @@
1
- import type { ChangeEvent, FocusEvent, MouseEvent } from 'react';
2
- import { ITouchEvent } from '@tarojs/components';
1
+ import { BaseEventOrig, ITouchEvent, InputProps } from '@tarojs/components';
3
2
  import { BaseSearchBar } from './base';
3
+ type inputEventDetail = InputProps.inputEventDetail;
4
+ type inputForceEventDetail = InputProps.inputForceEventDetail;
5
+ type inputValueEventDetail = InputProps.inputValueEventDetail;
4
6
  export interface TaroSearchBarProps extends Omit<BaseSearchBar, 'onChange' | 'onFocus' | 'onBlur' | 'onClear' | 'onInputClick'> {
5
- onChange?: (value: string, event?: ChangeEvent<HTMLInputElement>) => void;
6
- onFocus?: (value: string, event: FocusEvent<HTMLInputElement>) => void;
7
- onBlur?: (value: string, event: FocusEvent<HTMLInputElement>) => void;
8
- onClear?: (event: React.MouseEvent<Element, MouseEvent> | ITouchEvent) => void;
9
- onInputClick?: (event: MouseEvent<HTMLInputElement>) => void;
7
+ onChange?: (value: string, event?: BaseEventOrig<inputEventDetail>) => void;
8
+ onFocus?: (value: string, event: BaseEventOrig<inputForceEventDetail>) => void;
9
+ onBlur?: (value: string, event: BaseEventOrig<inputValueEventDetail>) => void;
10
+ onClear?: (event: ITouchEvent) => void;
11
+ onInputClick?: (event: ITouchEvent) => void;
10
12
  }
13
+ export {};
@@ -1,11 +1,13 @@
1
1
  import { BaseProps } from '../../base/props';
2
+ import { SimpleValue, UIRound, UISize } from '../../base/atoms';
2
3
  export type avatarShape = 'round' | 'square';
3
4
  export interface BaseSkeleton extends BaseProps {
4
- animated: boolean;
5
5
  rows: number;
6
- title: boolean;
7
- avatar: boolean;
8
- avatarSize: string;
6
+ size: Extract<UISize, 'small' | 'normal' | 'large'>;
7
+ width?: SimpleValue;
8
+ height?: SimpleValue;
9
+ shape: UIRound | 'circle';
10
+ animated: boolean;
11
+ duration: number;
9
12
  visible: boolean;
10
- avatarShape: avatarShape;
11
13
  }
@@ -1,10 +1,11 @@
1
1
  import { ReactNode } from 'react';
2
2
  import { BaseProps } from '../../base/props';
3
- export interface BaseSwitch<EVENT = any> extends BaseProps {
3
+ export interface BaseSwitch extends BaseProps {
4
4
  checked: boolean;
5
5
  defaultChecked: boolean;
6
6
  disabled: boolean;
7
7
  activeText: ReactNode;
8
8
  inactiveText: ReactNode;
9
- onChange: (val: boolean, event: EVENT) => void;
9
+ loadingIcon: ReactNode;
10
+ onChange: (val: boolean) => void;
10
11
  }
@@ -1,3 +1,3 @@
1
1
  import { BaseSwitch } from '../switch/base';
2
- export interface WebSwitchProps extends BaseSwitch<React.MouseEvent> {
2
+ export interface WebSwitchProps extends BaseSwitch {
3
3
  }
@@ -1,6 +1,3 @@
1
- import { ITouchEvent } from '@tarojs/components';
2
1
  import { BaseSwitch } from './base';
3
- type UnionEvent = React.MouseEvent<Element, MouseEvent> | ITouchEvent;
4
- export interface TaroSwitchProps extends BaseSwitch<UnionEvent> {
2
+ export interface TaroSwitchProps extends BaseSwitch {
5
3
  }
6
- export {};
@@ -1,20 +1,23 @@
1
1
  import { ReactNode } from 'react';
2
- import { BaseProps } from '../../base/props';
2
+ import { BaseProps, Direction } from "../../../types";
3
3
  export interface BaseTabbar extends BaseProps {
4
4
  defaultValue: number;
5
5
  value?: number;
6
6
  fixed: boolean;
7
7
  inactiveColor: string;
8
8
  activeColor: string;
9
+ direction: Direction;
9
10
  safeArea: boolean;
10
11
  onSwitch: (value: number) => void;
11
12
  }
12
13
  export interface BaseTabbarItem extends BaseProps {
13
- title: ReactNode;
14
- icon: ReactNode;
15
- value: ReactNode;
14
+ title: ReactNode | ((active: boolean) => ReactNode);
15
+ icon: ReactNode | ((active: boolean) => ReactNode);
16
+ value: ReactNode | ((active: boolean) => ReactNode);
16
17
  dot: boolean;
17
18
  max: number;
18
19
  top: string;
19
20
  right: string;
21
+ direction: Direction;
22
+ onActiveClick: () => void;
20
23
  }
@@ -16,11 +16,14 @@ _export(exports, {
16
16
  return makeRect;
17
17
  }
18
18
  });
19
+ var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
19
20
  var _async_to_generator = require("@swc/helpers/_/_async_to_generator");
20
21
  var _sliced_to_array = require("@swc/helpers/_/_sliced_to_array");
21
22
  var _ts_generator = require("@swc/helpers/_/_ts_generator");
22
23
  var _taro = require("@tarojs/taro");
24
+ var _lru = /*#__PURE__*/ _interop_require_default._(require("./lru"));
23
25
  var _useclientrect = require("../hooks/use-client-rect");
26
+ var lru = new _lru.default(10);
24
27
  function makeRect(width, height) {
25
28
  return {
26
29
  top: 0,
@@ -48,8 +51,15 @@ var getRectByTaro = /*#__PURE__*/ function() {
48
51
  return [
49
52
  2,
50
53
  new Promise(function(resolve, reject) {
54
+ if (lru.has(element)) {
55
+ resolve(lru.get(element));
56
+ return;
57
+ }
51
58
  (0, _taro.createSelectorQuery)().select("#".concat(harmonyId || element.uid)).boundingClientRect().exec(function(param) {
52
59
  var _param = (0, _sliced_to_array._)(param, 1), rects = _param[0];
60
+ if (rects) {
61
+ lru.set(element, rects);
62
+ }
53
63
  resolve(rects);
54
64
  });
55
65
  })
@@ -0,0 +1,8 @@
1
+ export default class MiniLru {
2
+ private cache;
3
+ private capacity;
4
+ constructor(capacity: number);
5
+ get(key: any): any | null;
6
+ set(key: any, value: any): void;
7
+ has(key: any): boolean;
8
+ }
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return MiniLru;
9
+ }
10
+ });
11
+ var _class_call_check = require("@swc/helpers/_/_class_call_check");
12
+ var _create_class = require("@swc/helpers/_/_create_class");
13
+ var _define_property = require("@swc/helpers/_/_define_property");
14
+ var MiniLru = /*#__PURE__*/ function() {
15
+ "use strict";
16
+ function MiniLru(capacity) {
17
+ (0, _class_call_check._)(this, MiniLru);
18
+ (0, _define_property._)(this, "cache", void 0);
19
+ (0, _define_property._)(this, "capacity", void 0);
20
+ if (capacity <= 0) {
21
+ throw new Error('Cache capacity must be a positive number');
22
+ }
23
+ this.cache = new Map();
24
+ this.capacity = capacity;
25
+ }
26
+ (0, _create_class._)(MiniLru, [
27
+ {
28
+ key: "get",
29
+ value: function get(key) {
30
+ if (this.cache.has(key)) {
31
+ var value = this.cache.get(key);
32
+ this.cache.delete(key);
33
+ this.cache.set(key, value);
34
+ return value;
35
+ }
36
+ return null;
37
+ }
38
+ },
39
+ {
40
+ key: "set",
41
+ value: function set(key, value) {
42
+ if (this.cache.has(key)) {
43
+ this.cache.delete(key);
44
+ } else if (this.cache.size >= this.capacity) {
45
+ this.cache.delete(this.cache.keys().next().value);
46
+ }
47
+ this.cache.set(key, value);
48
+ }
49
+ },
50
+ {
51
+ key: "has",
52
+ value: function has(key) {
53
+ return this.cache.has(key);
54
+ }
55
+ }
56
+ ]);
57
+ return MiniLru;
58
+ }();
@@ -60,7 +60,7 @@
60
60
 
61
61
  .nut-popup {
62
62
  position: fixed;
63
- min-height: 46%;
63
+ min-height: 26%;
64
64
  max-height: 100%;
65
65
  background-color: var(--nutui-overlay-content-bg-color, var(--nutui-color-background-overlay, #ffffff));
66
66
  -webkit-overflow-scrolling: touch;
@@ -198,12 +198,12 @@
198
198
  transform: scale(0.8);
199
199
  }
200
200
  }
201
- .nut-popup-slide-default-enter-active {
201
+ .nut-popup-slide-none-enter-active {
202
202
  animation-fill-mode: both;
203
203
  animation-name: popup-scale-fade-in;
204
204
  animation-duration: var(--nutui-popup-animation-duration, 0.3s);
205
205
  }
206
- .nut-popup-slide-default-exit-active {
206
+ .nut-popup-slide-none-exit-active {
207
207
  animation-fill-mode: both;
208
208
  animation-name: popup-scale-fade-out;
209
209
  animation-duration: var(--nutui-popup-animation-duration, 0.3s);
@@ -330,7 +330,7 @@
330
330
  animation-name: popup-slide-left-exit;
331
331
  animation-duration: var(--nutui-popup-animation-duration, 0.3s);
332
332
  }
333
- .nut-popup-slide-default-exit-done.nut-popup, .nut-popup-slide-center-exit-done.nut-popup, .nut-popup-slide-left-exit-done.nut-popup, .nut-popup-slide-right-exit-done.nut-popup, .nut-popup-slide-top-exit-done.nut-popup, .nut-popup-slide-bottom-exit-done.nut-popup {
333
+ .nut-popup-slide-none-exit-done.nut-popup, .nut-popup-slide-center-exit-done.nut-popup, .nut-popup-slide-left-exit-done.nut-popup, .nut-popup-slide-right-exit-done.nut-popup, .nut-popup-slide-top-exit-done.nut-popup, .nut-popup-slide-bottom-exit-done.nut-popup {
334
334
  display: none;
335
335
  }
336
336
  .nut-popup .nut-overflow-hidden {