@nutui/nutui-react-taro 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 (94) 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 +3 -4
  7. package/dist/cjs/packages/backtop/backtop.js +16 -34
  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 +16 -54
  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/countdown.js +1 -1
  20. package/dist/cjs/packages/countdown/style/countdown.scss +21 -2
  21. package/dist/cjs/packages/countdown/style/style.css +20 -2
  22. package/dist/cjs/packages/countup/style/countup.scss +1 -1
  23. package/dist/cjs/packages/countup/style/style.css +1 -1
  24. package/dist/cjs/packages/elevator/elevator.js +23 -16
  25. package/dist/cjs/packages/elevator/style/elevator.scss +7 -4
  26. package/dist/cjs/packages/elevator/style/style.css +7 -4
  27. package/dist/cjs/packages/hoverbutton/style/style.css +3 -3
  28. package/dist/cjs/packages/hoverbuttonitem/style/hoverbuttonitem.scss +3 -3
  29. package/dist/cjs/packages/hoverbuttonitem/style/style.css +3 -3
  30. package/dist/cjs/packages/inputnumber/inputnumber.js +0 -1
  31. package/dist/cjs/packages/inputnumber/style/inputnumber.scss +19 -16
  32. package/dist/cjs/packages/inputnumber/style/style.css +21 -19
  33. package/dist/cjs/packages/numberkeyboard/numberkeyboard.js +6 -5
  34. package/dist/cjs/packages/numberkeyboard/style/numberkeyboard.scss +10 -1
  35. package/dist/cjs/packages/numberkeyboard/style/style.css +12 -0
  36. package/dist/cjs/packages/popover/style/popover.scss +16 -11
  37. package/dist/cjs/packages/popover/style/style.css +14 -2
  38. package/dist/cjs/packages/tabbar/style/style.css +63 -40
  39. package/dist/cjs/packages/tabbaritem/style/style.css +63 -40
  40. package/dist/cjs/packages/tabs/style/style.css +49 -85
  41. package/dist/cjs/packages/tabs/style/tabs.scss +68 -106
  42. package/dist/cjs/packages/tabs/tabs.js +2 -4
  43. package/dist/cjs/packages/tour/style/style.css +14 -2
  44. package/dist/es/packages/address/style/style.css +56 -89
  45. package/dist/es/packages/animate/style/animate.scss +0 -3
  46. package/dist/es/packages/animate/style/style.css +0 -3
  47. package/dist/es/packages/animatingnumbers/style/style.css +1 -1
  48. package/dist/es/packages/backtop/backtop.d.ts +3 -4
  49. package/dist/es/packages/backtop/backtop.js +18 -36
  50. package/dist/es/packages/backtop/style/backtop.scss +8 -17
  51. package/dist/es/packages/backtop/style/style.css +8 -14
  52. package/dist/es/packages/badge/badge.d.ts +2 -12
  53. package/dist/es/packages/badge/badge.js +17 -55
  54. package/dist/es/packages/badge/index.d.ts +1 -1
  55. package/dist/es/packages/badge/style/badge.scss +61 -34
  56. package/dist/es/packages/badge/style/style.css +63 -40
  57. package/dist/es/packages/badge/types.d.ts +12 -0
  58. package/dist/es/packages/badge/types.js +1 -0
  59. package/dist/es/packages/cascader/style/style.css +49 -85
  60. package/dist/es/packages/configprovider/types.d.ts +1 -1
  61. package/dist/es/packages/countdown/countdown.js +1 -1
  62. package/dist/es/packages/countdown/style/countdown.scss +21 -2
  63. package/dist/es/packages/countdown/style/style.css +20 -2
  64. package/dist/es/packages/countup/style/countup.scss +1 -1
  65. package/dist/es/packages/countup/style/style.css +1 -1
  66. package/dist/es/packages/elevator/elevator.js +26 -19
  67. package/dist/es/packages/elevator/style/elevator.scss +7 -4
  68. package/dist/es/packages/elevator/style/style.css +7 -4
  69. package/dist/es/packages/hoverbutton/style/style.css +3 -3
  70. package/dist/es/packages/hoverbuttonitem/style/hoverbuttonitem.scss +3 -3
  71. package/dist/es/packages/hoverbuttonitem/style/style.css +3 -3
  72. package/dist/es/packages/inputnumber/inputnumber.js +1 -2
  73. package/dist/es/packages/inputnumber/style/inputnumber.scss +19 -16
  74. package/dist/es/packages/inputnumber/style/style.css +21 -19
  75. package/dist/es/packages/numberkeyboard/numberkeyboard.d.ts +10 -50
  76. package/dist/es/packages/numberkeyboard/numberkeyboard.js +6 -5
  77. package/dist/es/packages/numberkeyboard/style/numberkeyboard.scss +10 -1
  78. package/dist/es/packages/numberkeyboard/style/style.css +12 -0
  79. package/dist/es/packages/popover/style/popover.scss +16 -11
  80. package/dist/es/packages/popover/style/style.css +14 -2
  81. package/dist/es/packages/tabbar/style/style.css +63 -40
  82. package/dist/es/packages/tabbaritem/style/style.css +63 -40
  83. package/dist/es/packages/tabpane/tabpane.d.ts +3 -15
  84. package/dist/es/packages/tabs/style/style.css +49 -85
  85. package/dist/es/packages/tabs/style/tabs.scss +68 -106
  86. package/dist/es/packages/tabs/tabs.d.ts +12 -60
  87. package/dist/es/packages/tabs/tabs.js +2 -4
  88. package/dist/es/packages/tour/style/style.css +14 -2
  89. package/dist/nutui.react.umd.js +188 -253
  90. package/dist/style.css +1 -1
  91. package/dist/styles/theme-dark.scss +2 -0
  92. package/dist/styles/theme-default.scss +2 -0
  93. package/dist/styles/variables.scss +36 -29
  94. package/package.json +1 -1
@@ -1,55 +1,15 @@
1
1
  import React, { FunctionComponent, ReactNode } from 'react';
2
2
  import { PopupProps } from "../popup/popup";
3
3
  export interface NumberKeyboardProps extends PopupProps {
4
- /**
5
- * 是否显示键盘
6
- * @default false
7
- */
8
- visible: boolean
9
- /**
10
- * 标题右侧内容
11
- * @default -
12
- */
13
- rightActions: ReactNode
14
- /**
15
- * 自定义完成按钮文字,如"支付","下一步","提交"等,搭配 rightColumn 使用
16
- * @default 完成
17
- */
18
- confirmText?: string
19
- /**
20
- * 键盘模式, default:默认样式 rightColumn:带右侧栏
21
- * @default default
22
- */
23
- type: 'default' | 'rightColumn'
24
- /**
25
- * 自定义键盘额外的键, 数组形式最多支持添加 2 个, 超出默认取前 2 项
26
- * @default -
27
- */
28
- custom: Array<string>
29
- /**
30
- * 随机数
31
- * @default false
32
- */
33
- random: boolean
34
- /**
35
- * 点击按键时触发
36
- * @default -
37
- */
38
- onChange?: (value: string) => void
39
- /**
40
- * 点击删除键时触发
41
- * @default -
42
- */
43
- onDelete?: () => void
44
- /**
45
- * 点击关闭按钮或非键盘区域时触发
46
- * @default -
47
- */
48
- onClose: () => void
49
- /**
50
- * 点击确定按钮时触发
51
- * @default -
52
- */
53
- onConfirm?: () => void
4
+ visible: boolean;
5
+ rightActions: ReactNode;
6
+ confirmText?: string;
7
+ type: 'default' | 'rightColumn';
8
+ custom: Array<string>;
9
+ random: boolean;
10
+ onChange?: (value: string) => void;
11
+ onDelete?: () => void;
12
+ onClose: () => void;
13
+ onConfirm?: () => void;
54
14
  }
55
15
  export declare const NumberKeyboard: FunctionComponent<Partial<NumberKeyboardProps> & Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange' | 'onClick' | 'title'>>;
@@ -10,6 +10,7 @@ import { View } from "@tarojs/components";
10
10
  import Popup from "../popup/index";
11
11
  import { useConfig } from "../configprovider/configprovider";
12
12
  import { ComponentDefaults } from "../../utils/typings";
13
+ import { mergeProps } from "../../utils/merge-props";
13
14
  var defaultProps = _object_spread_props(_object_spread({}, ComponentDefaults), {
14
15
  visible: false,
15
16
  rightActions: '',
@@ -20,7 +21,7 @@ var defaultProps = _object_spread_props(_object_spread({}, ComponentDefaults), {
20
21
  });
21
22
  export var NumberKeyboard = function(props) {
22
23
  var locale = useConfig().locale;
23
- var _ref = _object_spread({}, defaultProps, props), title = _ref.title, rightActions = _ref.rightActions, confirmText = _ref.confirmText, visible = _ref.visible, type = _ref.type, custom = _ref.custom, random = _ref.random, style = _ref.style, className = _ref.className, onChange = _ref.onChange, onDelete = _ref.onDelete, onClose = _ref.onClose, onConfirm = _ref.onConfirm, rest = _object_without_properties(_ref, [
24
+ var _mergeProps = mergeProps(defaultProps, props), title = _mergeProps.title, rightActions = _mergeProps.rightActions, confirmText = _mergeProps.confirmText, visible = _mergeProps.visible, type = _mergeProps.type, custom = _mergeProps.custom, random = _mergeProps.random, style = _mergeProps.style, className = _mergeProps.className, onChange = _mergeProps.onChange, onDelete = _mergeProps.onDelete, onClose = _mergeProps.onClose, onConfirm = _mergeProps.onConfirm, rest = _object_without_properties(_mergeProps, [
24
25
  "title",
25
26
  "rightActions",
26
27
  "confirmText",
@@ -88,8 +89,8 @@ export var NumberKeyboard = function(props) {
88
89
  var style = {
89
90
  background: "url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAnCAYAAABJ0cukAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozOUNBQTQ0MkY3RTMxMUVBQjIzNEJCQkYxNDZGQjg5OCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozOUNBQTQ0M0Y3RTMxMUVBQjIzNEJCQkYxNDZGQjg5OCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjM5Q0FBNDQwRjdFMzExRUFCMjM0QkJCRjE0NkZCODk4IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjM5Q0FBNDQxRjdFMzExRUFCMjM0QkJCRjE0NkZCODk4Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+T12ahwAABClJREFUeNrUWVtIFFEY3pkdrbaCiAINK81VW3d2102pjKLtoXoJrNAswoeEXoyilx7sJXvIh6CHAoMg6yEfSpdECIqE0jCMbMm9qCVYUmR5S8huXmZO39nWOI7mzsy6uzqgM/vvzNnv+y/n/84ZjhBiWMwHF+kA+fn5y0ZHRzNwuTomgDnui9/vfzMvBJxWa7bE87W4tMbY8S8MhNz0BQLVugnY7fZdGORZPNNHJmSPUSf47QD/PN75z3NcpqD1IVEU8wC+dZojDIajyMu6WAG322zBmQf/7LzGnHeAdRtjmuAIKYoleMWxQnUEHA6HVZLldsb0m3oehdQQzzQSVILPJLIcYEw/4HkK/kG86yAsAZvNtgng3059hte/Gf56/uFCaGR8mIJdj3m2hzGNGAkpRM4vCPBzErBYLMko2A//DIQMoQ0WtgcCjWFnCVGswEzxCecqLc0y9Nyww2ariYhAbm7umgRB6GNM/QTgfT7fEzWD4t7dOK0D4TKAcrtcLkENeNx/gUoSpOnx4Gc9BHJyclZNjI8PMqY+judp2jSr1iuENDPi5fDX4WG32WxeogL81NGRIEk3NBNAh10uS9IIY/oIbxR6vd4WLXmJAq9Ayl1kTAUmk8mNyJrUgDfK8hFPV9dnTQSCHiLkO/Ndb8jzrXqKawYJQg4gsu6srKyV4cC/7ujo1CqneRSPxNh74PligPdE3PYVIDHuY6PRWCxPTp7VC35KSvwjwBpwdPP4gXYc86ZdZnr6Pf7S9HqexUs9z0qBLprz8wn+PzWRFknaKGsgjwlvCdLGH42GQ0lg+dqkMP+Enj+lF/yMWYgnJD1qEhhphOWgS2E2yQZDJWa/lEgIvGIa0D2HKJZGA7yiBgaZqO9AermdFstGXQR8fn+BootW4wfPRBE8zXmXoia2SYLgpsJRVwqBBJ2N+pnueRVhPR8l8MGCnaWw8wDCDSWQoasGQCKJnpjGcwkkKqMBfo7ZyQklQCOxWVcRg4QDXmhkSJRjsGvRAD8HCTuNhNPpXKtLzHn9/n0orBqm052GvL2lcfepTMs8PwsJqyRJRbrlNFpBCUBcYWaKE2h4tampqUtV6pP60HNtapuUksTY2NidiLcWUQPnMOhlxvQoITGxxOPxDIVdR2dnb/V2dr7Umn50/Q31261JC4UhUQYSVUxdtPCCUAK10RuvZeQ0LRQ2tD7fddxdyuT3TijJehATF/yinqmJ2wB+jCGRA11TH9xiXAwEQpG4i0gcZHLPjHSqF0Vx76IgEIpEA9a7+3H5K2RK4jnuPvTToXgR0LW9Htpap71iAzPVNsUIMH0XMdXkfLrfD9BdanifksiKW/5w3Emj3mcHBgb6kpKTn6KYzfBCehzg10H6lHPzMdIWq9U8znEpsXE6N4rTO9TjSGgPanG/pfwjwABn1PZcM5XI0AAAAABJRU5ErkJggg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLTkwMjA5MzIyMjIxMzkzMzc2NzAwNjg0MC0tDQo=') no-repeat center",
90
91
  backgroundSize: '100% 100%',
91
- width: '28px',
92
- height: '24px'
92
+ width: 28,
93
+ height: 24
93
94
  };
94
95
  return /*#__PURE__*/ React.createElement(View, {
95
96
  style: style
@@ -125,7 +126,7 @@ export var NumberKeyboard = function(props) {
125
126
  switch(item.type){
126
127
  case 'num':
127
128
  case 'custom':
128
- return /*#__PURE__*/ React.createElement(View, null, item.id);
129
+ return /*#__PURE__*/ React.createElement(React.Fragment, null, item.id);
129
130
  case 'delete':
130
131
  return /*#__PURE__*/ React.createElement(DeleteIcon, null);
131
132
  case 'close':
@@ -176,7 +177,7 @@ export var NumberKeyboard = function(props) {
176
177
  className: "".concat(classPrefix, "-header")
177
178
  }, /*#__PURE__*/ React.createElement(View, {
178
179
  className: "".concat(classPrefix, "-header-title")
179
- }, title), type === 'default' && /*#__PURE__*/ React.createElement("span", {
180
+ }, title), type === 'default' && /*#__PURE__*/ React.createElement(View, {
180
181
  className: "".concat(classPrefix, "-header-close"),
181
182
  onClick: onConfirm
182
183
  }, rightActions || locale.done)), /*#__PURE__*/ React.createElement(View, {
@@ -17,12 +17,15 @@
17
17
  &-title {
18
18
  color: $color-title;
19
19
  display: inline-block;
20
+ font-size: $popup-title-font-size;
20
21
  }
21
22
 
22
23
  &-close {
23
24
  position: absolute;
24
25
  display: block;
25
26
  right: 0;
27
+ top: 50%;
28
+ transform: translateY(-50%);
26
29
  padding: $numberkeyboard-header-close-padding;
27
30
  color: $numberkeyboard-header-close-color;
28
31
  font-size: $numberkeyboard-header-close-font-size;
@@ -45,7 +48,12 @@
45
48
  &-wrapper {
46
49
  position: relative;
47
50
  flex: 1;
51
+ /* #ifdef harmony */
52
+ width: 33%;
53
+ /* #endif */
54
+ /* #ifndef harmony */
48
55
  flex-basis: 33%;
56
+ /* #endif */
49
57
  box-sizing: border-box;
50
58
  padding: 0 6px 6px 0;
51
59
  background-color: $numberkeyboard-wrapper-background-color;
@@ -74,9 +82,10 @@
74
82
  &-sidebar {
75
83
  display: flex;
76
84
  flex: 1;
85
+ flex-basis: 33%;
77
86
  flex-direction: column;
78
-
79
87
  .nut-numberkeyboard-body-wrapper {
88
+ width: 100%;
80
89
  .key {
81
90
  position: absolute;
82
91
  top: 0;
@@ -429,11 +429,14 @@
429
429
  .nut-numberkeyboard-header-title {
430
430
  color: var(--nutui-color-title, #1a1a1a);
431
431
  display: inline-block;
432
+ font-size: var(--nutui-popup-title-font-size, var(--nutui-font-size-xl, 18px));
432
433
  }
433
434
  .nut-numberkeyboard-header-close {
434
435
  position: absolute;
435
436
  display: block;
436
437
  right: 0;
438
+ top: 50%;
439
+ transform: translateY(-50%);
437
440
  padding: var(--nutui-numberkeyboard-header-close-padding, 0 16px);
438
441
  color: var(--nutui-numberkeyboard-header-close-color, var(--nutui-color-text, #505259));
439
442
  font-size: var(--nutui-numberkeyboard-header-close-font-size, 14px);
@@ -453,7 +456,12 @@
453
456
  .nut-numberkeyboard-body-wrapper {
454
457
  position: relative;
455
458
  flex: 1;
459
+ /* #ifdef harmony */
460
+ width: 33%;
461
+ /* #endif */
462
+ /* #ifndef harmony */
456
463
  flex-basis: 33%;
464
+ /* #endif */
457
465
  box-sizing: border-box;
458
466
  padding: 0 6px 6px 0;
459
467
  background-color: var(--nutui-numberkeyboard-wrapper-background-color, var(--nutui-color-background-sunken, #f7f8fc));
@@ -478,8 +486,12 @@
478
486
  .nut-numberkeyboard-sidebar {
479
487
  display: flex;
480
488
  flex: 1;
489
+ flex-basis: 33%;
481
490
  flex-direction: column;
482
491
  }
492
+ .nut-numberkeyboard-sidebar .nut-numberkeyboard-body-wrapper {
493
+ width: 100%;
494
+ }
483
495
  .nut-numberkeyboard-sidebar .nut-numberkeyboard-body-wrapper .key {
484
496
  position: absolute;
485
497
  top: 0;
@@ -93,18 +93,14 @@
93
93
  justify-content: center;
94
94
  padding: $popover-menu-item-padding;
95
95
  border-bottom: 1px solid $popover-divider-color;
96
+ max-width: $popover-menu-item-width;
97
+ word-wrap: break-word;
96
98
 
97
99
  &:last-child {
98
100
  margin-bottom: 0px;
99
101
  border-bottom: none;
100
102
  }
101
103
 
102
- // &:hover:not(:only-child) {
103
- // cursor: pointer;
104
- // color: $popover-hover-text-color;
105
- // background-color: $popover-hover-background-color;
106
- // }
107
-
108
104
  &:hover:nth-of-type(2) {
109
105
  border-radius: 8px 8px 0px 0px;
110
106
  }
@@ -128,9 +124,10 @@
128
124
  }
129
125
 
130
126
  &-name {
131
- width: 100%;
127
+ width: calc(100% - 34px);
132
128
  word-break: keep-all;
133
129
  margin: 0 6px 0 4px;
130
+ flex: 1;
134
131
  }
135
132
 
136
133
  &-action-icon {
@@ -170,7 +167,6 @@
170
167
 
171
168
  &-top-start {
172
169
  left: 0;
173
-
174
170
  .nut-popover-arrow-top-start {
175
171
  left: 16px;
176
172
  transform: translateX(0%);
@@ -186,7 +182,6 @@
186
182
 
187
183
  &-bottom-end {
188
184
  right: 0;
189
-
190
185
  .nut-popover-arrow-bottom-end {
191
186
  right: 16px;
192
187
  transform: translateX(0%);
@@ -195,7 +190,6 @@
195
190
 
196
191
  &-bottom-start {
197
192
  left: 0;
198
-
199
193
  .nut-popover-arrow-bottom-start {
200
194
  left: 16px;
201
195
  transform: translateX(0%);
@@ -225,7 +219,18 @@
225
219
  color: $popover-content-background-color;
226
220
 
227
221
  .nut-popover-arrow {
228
- border-bottom-color: $popover-text-color;
222
+ &-top {
223
+ border-top-color: $popover-text-color;
224
+ }
225
+ &-bottom {
226
+ border-bottom-color: $popover-text-color;
227
+ }
228
+ &-left {
229
+ border-left-color: $popover-text-color;
230
+ }
231
+ &-right {
232
+ border-right-color: $popover-text-color;
233
+ }
229
234
  }
230
235
 
231
236
  .nut-popover-content {
@@ -493,6 +493,8 @@
493
493
  justify-content: center;
494
494
  padding: var(--nutui-popover-menu-item-padding, 8px);
495
495
  border-bottom: 1px solid var(--nutui-popover-divider-color, var(--nutui-color-border, rgba(0, 0, 0, 0.06)));
496
+ max-width: var(--nutui-popover-menu-item-width, 160px);
497
+ word-wrap: break-word;
496
498
  }
497
499
  .nut-popover .nut-popover-content .nut-popover-menu-item:last-child {
498
500
  margin-bottom: 0px;
@@ -518,9 +520,10 @@
518
520
  font-size: 12px;
519
521
  }
520
522
  .nut-popover .nut-popover-content .nut-popover-menu-item-name {
521
- width: 100%;
523
+ width: calc(100% - 34px);
522
524
  word-break: keep-all;
523
525
  margin: 0 6px 0 4px;
526
+ flex: 1;
524
527
  }
525
528
  .nut-popover .nut-popover-content .nut-popover-menu-item-action-icon {
526
529
  display: flex;
@@ -591,9 +594,18 @@
591
594
  background: var(--nutui-popover-text-color, #1a1a1a);
592
595
  color: var(--nutui-popover-content-background-color, #ffffff);
593
596
  }
594
- .nut-popover-dark .nut-popover-arrow {
597
+ .nut-popover-dark .nut-popover-arrow-top {
598
+ border-top-color: var(--nutui-popover-text-color, #1a1a1a);
599
+ }
600
+ .nut-popover-dark .nut-popover-arrow-bottom {
595
601
  border-bottom-color: var(--nutui-popover-text-color, #1a1a1a);
596
602
  }
603
+ .nut-popover-dark .nut-popover-arrow-left {
604
+ border-left-color: var(--nutui-popover-text-color, #1a1a1a);
605
+ }
606
+ .nut-popover-dark .nut-popover-arrow-right {
607
+ border-right-color: var(--nutui-popover-text-color, #1a1a1a);
608
+ }
597
609
  .nut-popover-dark .nut-popover-content {
598
610
  background: var(--nutui-popover-text-color, #1a1a1a) !important;
599
611
  color: var(--nutui-popover-content-background-color, #ffffff) !important;
@@ -6,74 +6,97 @@
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
  }
78
101
 
79
102
  .nut-tabbar-item {
@@ -6,74 +6,97 @@
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
  }
78
101
 
79
102
  .nut-tabbar-item {
@@ -3,21 +3,9 @@ interface TabPanelInnerProps {
3
3
  autoHeightClassName: string;
4
4
  }
5
5
  export interface TabPaneProps {
6
- /**
7
- * 标题
8
- * @default -
9
- */
10
- title: string | number
11
- /**
12
- * 标签 Key , 匹配的标识符, 默认为索引值
13
- * @default -
14
- */
15
- value: string | number
16
- /**
17
- * 是否禁用标签
18
- * @default false
19
- */
20
- disabled: boolean
6
+ title: string | number;
7
+ value: string | number;
8
+ disabled: boolean;
21
9
  className: string;
22
10
  children?: React.ReactNode;
23
11
  }