@nutui/nutui-react 3.0.0-beta.6 → 3.0.0-beta.8

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 (88) hide show
  1. package/README.md +39 -9
  2. package/dist/cjs/packages/address/style/style.css +56 -89
  3. package/dist/cjs/packages/animate/style/animate.scss +0 -3
  4. package/dist/cjs/packages/animate/style/style.css +0 -3
  5. package/dist/cjs/packages/animatingnumbers/style/style.css +1 -1
  6. package/dist/cjs/packages/backtop/backtop.d.ts +2 -2
  7. package/dist/cjs/packages/backtop/backtop.js +14 -21
  8. package/dist/cjs/packages/backtop/style/backtop.scss +8 -17
  9. package/dist/cjs/packages/backtop/style/style.css +8 -14
  10. package/dist/cjs/packages/badge/badge.d.ts +2 -12
  11. package/dist/cjs/packages/badge/badge.js +12 -23
  12. package/dist/cjs/packages/badge/index.d.ts +1 -1
  13. package/dist/cjs/packages/badge/style/badge.scss +61 -34
  14. package/dist/cjs/packages/badge/style/style.css +63 -40
  15. package/dist/cjs/packages/badge/types.d.ts +12 -0
  16. package/dist/cjs/packages/badge/types.js +4 -0
  17. package/dist/cjs/packages/cascader/style/style.css +49 -85
  18. package/dist/cjs/packages/configprovider/types.d.ts +1 -1
  19. package/dist/cjs/packages/countdown/style/countdown.scss +21 -2
  20. package/dist/cjs/packages/countdown/style/style.css +20 -2
  21. package/dist/cjs/packages/countup/style/countup.scss +1 -1
  22. package/dist/cjs/packages/countup/style/style.css +1 -1
  23. package/dist/cjs/packages/elevator/style/elevator.scss +7 -4
  24. package/dist/cjs/packages/elevator/style/style.css +7 -4
  25. package/dist/cjs/packages/hoverbutton/style/style.css +3 -3
  26. package/dist/cjs/packages/hoverbuttonitem/style/hoverbuttonitem.scss +3 -3
  27. package/dist/cjs/packages/hoverbuttonitem/style/style.css +3 -3
  28. package/dist/cjs/packages/inputnumber/style/inputnumber.scss +19 -16
  29. package/dist/cjs/packages/inputnumber/style/style.css +21 -19
  30. package/dist/cjs/packages/numberkeyboard/style/numberkeyboard.scss +10 -1
  31. package/dist/cjs/packages/numberkeyboard/style/style.css +12 -0
  32. package/dist/cjs/packages/popover/style/popover.scss +16 -11
  33. package/dist/cjs/packages/popover/style/style.css +14 -2
  34. package/dist/cjs/packages/tabbar/style/style.css +63 -40
  35. package/dist/cjs/packages/tabbaritem/style/style.css +63 -40
  36. package/dist/cjs/packages/tabs/style/style.css +49 -85
  37. package/dist/cjs/packages/tabs/style/tabs.scss +68 -106
  38. package/dist/cjs/packages/tour/style/style.css +14 -2
  39. package/dist/cjs/packages/video/video.d.ts +6 -2
  40. package/dist/cjs/packages/video/video.js +16 -2
  41. package/dist/es/packages/address/style/style.css +56 -89
  42. package/dist/es/packages/animate/style/animate.scss +0 -3
  43. package/dist/es/packages/animate/style/style.css +0 -3
  44. package/dist/es/packages/animatingnumbers/style/style.css +1 -1
  45. package/dist/es/packages/backtop/backtop.d.ts +2 -2
  46. package/dist/es/packages/backtop/backtop.js +15 -22
  47. package/dist/es/packages/backtop/style/backtop.scss +8 -17
  48. package/dist/es/packages/backtop/style/style.css +8 -14
  49. package/dist/es/packages/badge/badge.d.ts +2 -12
  50. package/dist/es/packages/badge/badge.js +12 -23
  51. package/dist/es/packages/badge/index.d.ts +1 -1
  52. package/dist/es/packages/badge/style/badge.scss +61 -34
  53. package/dist/es/packages/badge/style/style.css +63 -40
  54. package/dist/es/packages/badge/types.d.ts +12 -0
  55. package/dist/es/packages/badge/types.js +1 -0
  56. package/dist/es/packages/cascader/style/style.css +49 -85
  57. package/dist/es/packages/configprovider/types.d.ts +1 -1
  58. package/dist/es/packages/countdown/style/countdown.scss +21 -2
  59. package/dist/es/packages/countdown/style/style.css +20 -2
  60. package/dist/es/packages/countup/style/countup.scss +1 -1
  61. package/dist/es/packages/countup/style/style.css +1 -1
  62. package/dist/es/packages/elevator/style/elevator.scss +7 -4
  63. package/dist/es/packages/elevator/style/style.css +7 -4
  64. package/dist/es/packages/hoverbutton/style/style.css +3 -3
  65. package/dist/es/packages/hoverbuttonitem/style/hoverbuttonitem.scss +3 -3
  66. package/dist/es/packages/hoverbuttonitem/style/style.css +3 -3
  67. package/dist/es/packages/inputnumber/style/inputnumber.scss +19 -16
  68. package/dist/es/packages/inputnumber/style/style.css +21 -19
  69. package/dist/es/packages/numberkeyboard/numberkeyboard.d.ts +10 -50
  70. package/dist/es/packages/numberkeyboard/style/numberkeyboard.scss +10 -1
  71. package/dist/es/packages/numberkeyboard/style/style.css +12 -0
  72. package/dist/es/packages/popover/style/popover.scss +16 -11
  73. package/dist/es/packages/popover/style/style.css +14 -2
  74. package/dist/es/packages/tabbar/style/style.css +63 -40
  75. package/dist/es/packages/tabbaritem/style/style.css +63 -40
  76. package/dist/es/packages/tabpane/tabpane.d.ts +3 -15
  77. package/dist/es/packages/tabs/style/style.css +49 -85
  78. package/dist/es/packages/tabs/style/tabs.scss +68 -106
  79. package/dist/es/packages/tabs/tabs.d.ts +12 -60
  80. package/dist/es/packages/tour/style/style.css +14 -2
  81. package/dist/es/packages/video/video.d.ts +6 -2
  82. package/dist/es/packages/video/video.js +16 -2
  83. package/dist/nutui.react.umd.js +167 -185
  84. package/dist/style.css +1 -1
  85. package/dist/styles/theme-dark.scss +2 -0
  86. package/dist/styles/theme-default.scss +2 -0
  87. package/dist/styles/variables.scss +36 -29
  88. package/package.json +2 -2
@@ -2,22 +2,14 @@
2
2
  position: relative;
3
3
  display: inline-flex;
4
4
  width: auto;
5
- /* #ifdef harmony */
6
- min-width: 1px;
7
- /* #endif */
8
- /* #ifndef harmony */
9
- min-width: auto;
10
- /* #endif */
5
+
11
6
  &-icon {
12
- position: absolute;
13
7
  display: flex;
14
8
  justify-content: center;
15
9
  align-items: center;
16
10
  background: $badge-background-color;
17
11
  padding: $badge-icon-padding;
18
12
  text-align: center;
19
- border: $badge-border;
20
- border-radius: $badge-border-radius;
21
13
  z-index: $badge-z-index;
22
14
 
23
15
  .nut-icon {
@@ -27,53 +19,88 @@
27
19
  }
28
20
  }
29
21
 
22
+ &-sup,
23
+ &-icon {
24
+ border-radius: $badge-border-radius;
25
+ &::after {
26
+ content: '';
27
+ position: absolute;
28
+ top: -50%;
29
+ bottom: -50%;
30
+ left: -50%;
31
+ right: -50%;
32
+ transform: scale(0.5);
33
+ border: $badge-border;
34
+ border-radius: $badge-border-radius;
35
+ }
36
+ }
37
+
30
38
  &-sup {
31
- height: $badge-height;
32
- position: absolute;
33
- display: flex;
39
+ display: inline-flex;
34
40
  justify-content: center;
35
- align-items: center;
36
- /* #ifdef harmony */
37
- background: $color-primary;
38
- /* #endif */
39
- /* #ifndef harmony */
40
- background: $badge-background-color;
41
- /* #endif */
42
- color: $badge-color;
41
+ height: $badge-height;
42
+ min-width: $badge-min-width;
43
43
  padding: $badge-padding;
44
+ box-sizing: border-box;
45
+ color: $badge-color;
44
46
  font-size: $badge-font-size;
45
- font-weight: normal;
46
- text-align: center;
47
- border: $badge-border;
48
- border-radius: $badge-border-radius;
49
- min-width: $badge-min-width;
47
+ line-height: 12px;
50
48
  white-space: nowrap;
49
+ font-weight: normal;
50
+ vertical-align: middle;
51
+ background: $badge-background-color;
51
52
  z-index: 1;
52
53
  }
53
54
 
55
+ &-number {
56
+ font-family: 'JD';
57
+ /* #ifdef harmony */
58
+ line-height: 12px;
59
+ /* #endif */
60
+ /* #ifndef harmony */
61
+ line-height: 13px;
62
+ /* #endif */
63
+ }
64
+
54
65
  &-one {
55
66
  height: $badge-height;
56
67
  width: $badge-height;
57
- padding: 0;
58
68
  }
59
69
 
60
70
  &-content {
61
- /* #ifndef rn */
71
+ position: absolute;
62
72
  transform: $badge-content-transform;
63
- /* #endif */
64
73
  }
65
74
 
66
75
  &-dot {
67
- width: $badge-dot-width;
68
- height: $badge-dot-width;
69
- border: $badge-dot-border;
70
- border-radius: $badge-dot-width;
71
76
  padding: 0;
77
+ border-radius: 50%;
78
+ &::after {
79
+ border: $badge-dot-border;
80
+ border-radius: 50%;
81
+ }
82
+ &-normal {
83
+ min-width: $badge-dot-width;
84
+ width: $badge-dot-width;
85
+ height: $badge-dot-width;
86
+ }
87
+ &-small {
88
+ min-width: $badge-dot-small-width;
89
+ width: $badge-dot-small-width;
90
+ height: $badge-dot-small-width;
91
+ }
92
+ &-large {
93
+ min-width: $badge-dot-large-width;
94
+ width: $badge-dot-large-width;
95
+ height: $badge-dot-large-width;
96
+ }
72
97
  }
73
98
 
74
99
  &-outline {
75
100
  background: $color-primary-text;
76
- border: 1px solid $color-primary;
77
- color: $color-primary;
101
+ color: $badge-outline-color;
102
+ &::after {
103
+ border: $badge-outline-border;
104
+ }
78
105
  }
79
106
  }
@@ -6,72 +6,95 @@
6
6
  position: relative;
7
7
  display: inline-flex;
8
8
  width: auto;
9
- /* #ifdef harmony */
10
- min-width: 1px;
11
- /* #endif */
12
- /* #ifndef harmony */
13
- min-width: auto;
14
- /* #endif */
15
9
  }
16
10
  .nut-badge-icon {
17
- position: absolute;
18
11
  display: flex;
19
12
  justify-content: center;
20
13
  align-items: center;
21
- background: var(--nutui-badge-background-color, linear-gradient(135deg, var(--nutui-color-primary-stop-1, #ff475d) 0%, var(--nutui-color-primary-stop-2, #ff0f23) 100%));
22
- padding: var(--nutui-badge-icon-padding, 3px);
14
+ background: var(--nutui-badge-background-color, var(--nutui-color-primary, #ff0f23));
15
+ padding: var(--nutui-badge-icon-padding, 2px);
23
16
  text-align: center;
24
- border: var(--nutui-badge-border, 0px solid var(--nutui-color-primary-text, #ffffff));
25
- border-radius: var(--nutui-badge-border-radius, var(--nutui-badge-height, 14px));
26
17
  z-index: var(--nutui-badge-z-index, 1);
27
18
  }
28
19
  .nut-badge-icon .nut-icon {
29
- width: var(--nutui-badge-icon-size, 12px);
30
- height: var(--nutui-badge-icon-size, 12px);
31
- font-size: var(--nutui-badge-icon-size, 12px);
20
+ width: var(--nutui-badge-icon-size, 10px);
21
+ height: var(--nutui-badge-icon-size, 10px);
22
+ font-size: var(--nutui-badge-icon-size, 10px);
32
23
  }
33
- .nut-badge-sup {
34
- height: var(--nutui-badge-height, 14px);
24
+ .nut-badge-sup, .nut-badge-icon {
25
+ border-radius: var(--nutui-badge-border-radius, var(--nutui-badge-height, 14px));
26
+ }
27
+ .nut-badge-sup::after, .nut-badge-icon::after {
28
+ content: "";
35
29
  position: absolute;
36
- display: flex;
30
+ top: -50%;
31
+ bottom: -50%;
32
+ left: -50%;
33
+ right: -50%;
34
+ transform: scale(0.5);
35
+ border: var(--nutui-badge-border, 1px solid var(--nutui-color-primary-text, #ffffff));
36
+ border-radius: var(--nutui-badge-border-radius, var(--nutui-badge-height, 14px));
37
+ }
38
+ .nut-badge-sup {
39
+ display: inline-flex;
37
40
  justify-content: center;
38
- align-items: center;
41
+ height: var(--nutui-badge-height, 14px);
42
+ min-width: var(--nutui-badge-min-width, 6px);
43
+ padding: var(--nutui-badge-padding, 1px 4px);
44
+ box-sizing: border-box;
45
+ color: var(--nutui-badge-color, var(--nutui-color-primary-text, #ffffff));
46
+ font-size: var(--nutui-badge-font-size, var(--nutui-font-size-xxs, 10px));
47
+ line-height: 12px;
48
+ white-space: nowrap;
49
+ font-weight: normal;
50
+ vertical-align: middle;
51
+ background: var(--nutui-badge-background-color, var(--nutui-color-primary, #ff0f23));
52
+ z-index: 1;
53
+ }
54
+ .nut-badge-number {
55
+ font-family: "JD";
39
56
  /* #ifdef harmony */
40
- background: var(--nutui-color-primary, #ff0f23);
57
+ line-height: 12px;
41
58
  /* #endif */
42
59
  /* #ifndef harmony */
43
- background: var(--nutui-badge-background-color, linear-gradient(135deg, var(--nutui-color-primary-stop-1, #ff475d) 0%, var(--nutui-color-primary-stop-2, #ff0f23) 100%));
60
+ line-height: 13px;
44
61
  /* #endif */
45
- color: var(--nutui-badge-color, #fff);
46
- padding: var(--nutui-badge-padding, 0 4px);
47
- font-size: var(--nutui-badge-font-size, var(--nutui-font-size-xxs, 10px));
48
- font-weight: normal;
49
- text-align: center;
50
- border: var(--nutui-badge-border, 0px solid var(--nutui-color-primary-text, #ffffff));
51
- border-radius: var(--nutui-badge-border-radius, var(--nutui-badge-height, 14px));
52
- min-width: var(--nutui-badge-min-width, 5px);
53
- white-space: nowrap;
54
- z-index: 1;
55
62
  }
56
63
  .nut-badge-one {
57
64
  height: var(--nutui-badge-height, 14px);
58
65
  width: var(--nutui-badge-height, 14px);
59
- padding: 0;
60
66
  }
61
67
  .nut-badge-content {
62
- /* #ifndef rn */
63
- transform: var(--nutui-badge-content-transform, translateX(100%));
64
- /* #endif */
68
+ position: absolute;
69
+ transform: var(--nutui-badge-content-transform, translate(50%, -50%));
65
70
  }
66
71
  .nut-badge-dot {
67
- width: var(--nutui-badge-dot-width, 7px);
68
- height: var(--nutui-badge-dot-width, 7px);
69
- border: var(--nutui-badge-dot-border, 0px solid var(--nutui-color-primary-text, #ffffff));
70
- border-radius: var(--nutui-badge-dot-width, 7px);
71
72
  padding: 0;
73
+ border-radius: 50%;
74
+ }
75
+ .nut-badge-dot::after {
76
+ border: var(--nutui-badge-dot-border, 1px solid var(--nutui-color-primary-text, #ffffff));
77
+ border-radius: 50%;
78
+ }
79
+ .nut-badge-dot-normal {
80
+ min-width: var(--nutui-badge-dot-width, 6px);
81
+ width: var(--nutui-badge-dot-width, 6px);
82
+ height: var(--nutui-badge-dot-width, 6px);
83
+ }
84
+ .nut-badge-dot-small {
85
+ min-width: var(--nutui-badge-dot-width, 4px);
86
+ width: var(--nutui-badge-dot-width, 4px);
87
+ height: var(--nutui-badge-dot-width, 4px);
88
+ }
89
+ .nut-badge-dot-large {
90
+ min-width: var(--nutui-badge-dot-width, 8px);
91
+ width: var(--nutui-badge-dot-width, 8px);
92
+ height: var(--nutui-badge-dot-width, 8px);
72
93
  }
73
94
  .nut-badge-outline {
74
95
  background: var(--nutui-color-primary-text, #ffffff);
75
- border: 1px solid var(--nutui-color-primary, #ff0f23);
76
- color: var(--nutui-color-primary, #ff0f23);
96
+ color: var(--nutui-badge-outline-color, var(--nutui-color-primary, #ff0f23));
97
+ }
98
+ .nut-badge-outline::after {
99
+ border: var(--nutui-badge-outline-border, 1px solid var(--nutui-color-primary, #ff0f23));
77
100
  }
@@ -0,0 +1,12 @@
1
+ import { BasicComponent } from "../../utils/typings";
2
+ export type BadgeFill = 'solid' | 'outline';
3
+ export type BadgeDotSize = 'small' | 'normal' | 'large';
4
+ export interface BadgeProps extends BasicComponent {
5
+ value: React.ReactNode;
6
+ dot: boolean;
7
+ max: number;
8
+ top: string | number;
9
+ right: string | number;
10
+ fill: BadgeFill;
11
+ size: BadgeDotSize;
12
+ }
@@ -0,0 +1 @@
1
+ export { };
@@ -429,12 +429,17 @@
429
429
  display: flex;
430
430
  }
431
431
 
432
+ .nut-tabs-horizontal {
433
+ flex-direction: column;
434
+ }
435
+
432
436
  .nut-tabs-titles {
433
437
  display: flex;
434
438
  box-sizing: border-box;
435
439
  height: var(--nutui-tabs-titles-height, 44px);
436
440
  user-select: none;
437
- overflow: hidden;
441
+ overflow-x: auto;
442
+ overflow-y: hidden;
438
443
  background: var(--nutui-tabs-titles-background-color, var(--nutui-color-background, #f5f6fa));
439
444
  scrollbar-width: none;
440
445
  }
@@ -445,7 +450,6 @@
445
450
  }
446
451
  .nut-tabs-titles .nut-tabs-list {
447
452
  width: 100%;
448
- height: auto;
449
453
  display: flex;
450
454
  flex-shrink: 0;
451
455
  }
@@ -461,10 +465,6 @@
461
465
  .nut-tabs-titles-right .nut-tabs-titles-item {
462
466
  padding: 0 22px;
463
467
  }
464
- .nut-tabs-titles-scrollable {
465
- overflow-x: auto;
466
- overflow-y: hidden;
467
- }
468
468
  .nut-tabs-titles-item {
469
469
  position: relative;
470
470
  display: flex;
@@ -480,11 +480,14 @@
480
480
  text-overflow: ellipsis;
481
481
  white-space: nowrap;
482
482
  }
483
+ .nut-tabs-titles-item .nut-icon {
484
+ color: var(--nutui-tabs-titles-item-color, var(--nutui-color-title, #1a1a1a));
485
+ }
483
486
  .nut-tabs-titles-item-left, .nut-tabs-titles-item-right {
484
487
  flex: none;
485
488
  }
486
489
  .nut-tabs-titles-item-text {
487
- text-align: center;
490
+ color: var(--nutui-tabs-titles-item-color, var(--nutui-color-title, #1a1a1a));
488
491
  }
489
492
  .nut-tabs-titles-item-smile, .nut-tabs-titles-item-line {
490
493
  position: absolute;
@@ -492,9 +495,9 @@
492
495
  width: 0;
493
496
  height: 0;
494
497
  content: " ";
495
- bottom: var(--nutui-tabs-line-bottom, 15%);
496
498
  left: 50%;
497
499
  transform: translate(-50%, 0);
500
+ bottom: var(--nutui-tabs-line-bottom, 15%);
498
501
  border-radius: var(--nutui-tabs-line-border-radius, 2px);
499
502
  opacity: var(--nutui-tabs-tab-line-opacity, 1);
500
503
  overflow: hidden;
@@ -507,9 +510,11 @@
507
510
  font-size: 20px;
508
511
  width: 100%;
509
512
  height: 100%;
510
- color: var(--nutui-color-primary, #ff0f23);
511
513
  }
512
- .nut-tabs-titles-item-active {
514
+ .nut-tabs-titles-item-active .nut-icon {
515
+ color: var(--nutui-tabs-titles-item-active-color, var(--nutui-color-primary, #ff0f23));
516
+ }
517
+ .nut-tabs-titles-item-active .nut-tabs-titles-item-text {
513
518
  color: var(--nutui-tabs-titles-item-active-color, var(--nutui-color-primary, #ff0f23));
514
519
  font-weight: var(--nutui-tabs-titles-item-active-font-weight, var(--nutui-font-weight-bold, 600));
515
520
  }
@@ -525,10 +530,20 @@
525
530
  width: 40px;
526
531
  height: 20px;
527
532
  }
533
+ .nut-tabs-titles-item-active .nut-tabs-titles-item-smile .nut-icon {
534
+ color: var(--nutui-tabs-titles-item-active-color, var(--nutui-color-primary, #ff0f23));
535
+ }
528
536
  .nut-tabs-titles-item-disabled {
529
537
  color: var(--nutui-color-text-disabled, #c2c4cc);
530
538
  }
531
- .nut-tabs-titles-simple .nut-tabs-titles-item-active {
539
+ .nut-tabs-titles-item-disabled .nut-icon {
540
+ color: var(--nutui-color-text-disabled, #c2c4cc);
541
+ }
542
+ .nut-tabs-titles-item-disabled .nut-tabs-titles-item-text {
543
+ color: var(--nutui-color-text-disabled, #c2c4cc);
544
+ }
545
+ .nut-tabs-titles-simple .nut-tabs-titles-item-active .nut-tabs-titles-item-text,
546
+ .nut-tabs-titles-simple .nut-tabs-titles-item-active .nut-icon {
532
547
  color: var(--nutui-color-title, #1a1a1a);
533
548
  font-size: var(--nutui-tabs-titles-item-active-font-size, var(--nutui-font-size-l, 16px));
534
549
  }
@@ -557,11 +572,10 @@
557
572
  }
558
573
  .nut-tabs-titles-button .nut-tabs-titles-item-active .nut-tabs-titles-item-text {
559
574
  background: var(--nutui-color-default-light);
560
- color: var(--nutui-color-text, #505259);
575
+ color: var(--nutui-tabs-titles-item-active-color, var(--nutui-color-primary, #ff0f23));
561
576
  border-radius: var(--nutui-tabs-button-border-radius, 50px);
562
577
  font-weight: var(--nutui-font-weight-bold, 600);
563
578
  background-color: var(--nutui-tabs-button-active-background-color, var(--nutui-color-primary-light-pressed, #ffebf1));
564
- color: var(--nutui-color-primary, #ff0f23);
565
579
  border: var(--nutui-tabs-button-active-border, 1px solid var(--nutui-color-primary, #ff0f23));
566
580
  }
567
581
  .nut-tabs-titles-divider {
@@ -586,68 +600,29 @@
586
600
  display: none;
587
601
  }
588
602
 
589
- [dir=rtl] .nut-tabs-titles-item-smile, [dir=rtl] .nut-tabs-titles-item-line,
590
- .nut-rtl .nut-tabs-titles-item-smile,
591
- .nut-rtl .nut-tabs-titles-item-line {
592
- left: auto;
593
- right: 50%;
594
- transform: translate(50%, 0);
595
- }
596
- [dir=rtl] .nut-tabs-titles-divider .nut-tabs-titles-item::after,
597
- .nut-rtl .nut-tabs-titles-divider .nut-tabs-titles-item::after {
598
- right: auto;
599
- left: 0;
600
- }
601
-
602
- .nut-tabs-horizontal {
603
- flex-direction: column;
604
- position: relative;
605
- }
606
-
607
- .nut-tabs-vertical {
608
- flex-direction: row;
609
- width: 100%;
610
- }
611
603
  .nut-tabs-vertical .nut-tabs-ellipsis {
612
604
  text-overflow: ellipsis;
613
605
  white-space: nowrap;
614
606
  overflow: hidden;
615
607
  }
616
608
  .nut-tabs-vertical .nut-tabs-titles {
617
- box-sizing: border-box;
618
609
  flex-direction: column;
619
610
  height: 100%;
620
- padding: 0;
621
611
  width: var(--nutui-tabs-vertical-titles-width, 100px);
622
612
  flex-shrink: 0;
623
613
  }
624
614
  .nut-tabs-vertical .nut-tabs-titles .nut-tabs-list {
625
- width: 100%;
626
- display: flex;
627
615
  flex-direction: column;
628
- flex-shrink: 0;
629
- }
630
- .nut-tabs-vertical .nut-tabs-titles-line .nut-tabs-titles-item {
631
- padding-left: 14px;
632
- }
633
- .nut-tabs-vertical .nut-tabs-titles-scrollable {
634
- overflow-x: hidden;
635
- overflow-y: auto;
636
616
  }
637
617
  .nut-tabs-vertical .nut-tabs-titles-item {
638
618
  height: var(--nutui-tabs-vertical-titles-item-height, 40px);
639
- margin: 0;
640
619
  flex: none;
641
620
  }
642
621
  .nut-tabs-vertical .nut-tabs-titles-item-smile {
643
- width: 0;
644
- height: 0;
645
622
  overflow: hidden;
646
623
  transition: width 0.3s ease;
647
624
  }
648
625
  .nut-tabs-vertical .nut-tabs-titles-item-line {
649
- width: 0;
650
- height: 0;
651
626
  transform: translate(0, -50%);
652
627
  transition: height 0.3s ease;
653
628
  }
@@ -667,21 +642,17 @@
667
642
  right: -12px;
668
643
  bottom: -2%;
669
644
  left: auto;
670
- width: 40px;
671
- height: 20px;
672
645
  transform: rotate(320deg);
673
646
  }
674
647
  .nut-tabs-vertical .nut-tabs-horizontal .nut-tabs-titles {
675
648
  flex-direction: row;
676
- overflow-x: auto;
677
- overflow-y: hidden;
678
649
  height: var(--nutui-tabs-titles-height, 44px);
650
+ width: 100%;
651
+ padding: 0 !important;
679
652
  }
680
653
  .nut-tabs-vertical .nut-tabs-horizontal .nut-tabs-titles .nut-tabs-list {
681
- width: 100%;
682
- display: flex;
683
654
  flex-direction: row;
684
- flex-shrink: 0;
655
+ height: auto;
685
656
  }
686
657
  .nut-tabs-vertical .nut-tabs-horizontal .nut-tabs-content {
687
658
  flex-direction: row;
@@ -692,6 +663,9 @@
692
663
  .nut-tabs-vertical .nut-tabs-horizontal .nut-tabs-titles-item-active .nut-tabs-titles-item-line {
693
664
  left: 50%;
694
665
  transform: translate(-50%, 0);
666
+ width: var(--nutui-tabs-tab-line-width, 12px);
667
+ height: var(--nutui-tabs-tab-line-height, 2px);
668
+ background: var(--nutui-tabs-tab-line-color, var(--nutui-color-primary, #ff0f23));
695
669
  }
696
670
  .nut-tabs-vertical .nut-tabs-horizontal .nut-tabs-titles-item-active .nut-tabs-titles-item-smile {
697
671
  left: 50%;
@@ -709,28 +683,26 @@
709
683
  .nut-tabs-vertical .nut-tabs-content .nut-tabpane {
710
684
  height: 100%;
711
685
  }
712
- .nut-tabs-vertical .nut-tabs-horizontal .nut-tabs-titles {
686
+
687
+ .nut-tabs-content {
713
688
  display: flex;
714
- flex-direction: row;
715
- padding: 0 !important;
716
- width: 100%;
689
+ box-sizing: border-box;
717
690
  }
718
- .nut-tabs-vertical .nut-tabs-horizontal .nut-tabs-titles .nut-tabs-titles-item {
719
- display: flex;
720
- align-items: center;
721
- justify-content: center;
722
- flex: 1 0 auto;
691
+ .nut-tabs-content-wrap {
692
+ overflow: hidden;
723
693
  }
724
- .nut-tabs-vertical .nut-tabs-horizontal .nut-tabs-titles .nut-tabs-titles-item-active {
725
- color: var(--nutui-color-primary, #ff0f23);
726
- font-weight: var(--nutui-tabs-titles-item-active-font-weight, var(--nutui-font-weight-bold, 600));
727
- font-size: var(--nutui-tabs-titles-item-active-font-size, var(--nutui-font-size-l, 16px));
694
+
695
+ [dir=rtl] .nut-tabs-titles-item-smile, [dir=rtl] .nut-tabs-titles-item-line,
696
+ .nut-rtl .nut-tabs-titles-item-smile,
697
+ .nut-rtl .nut-tabs-titles-item-line {
698
+ left: auto;
699
+ right: 50%;
700
+ transform: translate(50%, 0);
728
701
  }
729
- .nut-tabs-vertical .nut-tabs-horizontal .nut-tabs-titles .nut-tabs-titles-item-active .nut-tabs-titles-item-line {
730
- content: " ";
731
- width: var(--nutui-tabs-tab-line-width, 12px);
732
- height: var(--nutui-tabs-tab-line-height, 2px);
733
- background: var(--nutui-tabs-tab-line-color, var(--nutui-color-primary, #ff0f23));
702
+ [dir=rtl] .nut-tabs-titles-divider .nut-tabs-titles-item::after,
703
+ .nut-rtl .nut-tabs-titles-divider .nut-tabs-titles-item::after {
704
+ right: auto;
705
+ left: 0;
734
706
  }
735
707
 
736
708
  [dir=rtl] .nut-tabs-vertical .nut-tabs-titles-line .nut-tabs-titles-item,
@@ -762,14 +734,6 @@
762
734
  transform: translate(50%, 0) rotate(0deg);
763
735
  }
764
736
 
765
- .nut-tabs-content {
766
- display: flex;
767
- box-sizing: border-box;
768
- }
769
- .nut-tabs-content-wrap {
770
- overflow: hidden;
771
- }
772
-
773
737
  .nut-cascader {
774
738
  width: 100%;
775
739
  font-size: var(--nutui-cascader-font-size, var(--nutui-font-size-base, 14px));