@nutui/nutui-react-taro 3.0.0-beta.2 → 3.0.0-beta.3

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 (90) hide show
  1. package/dist/cjs/packages/avatar/avatar.js +14 -16
  2. package/dist/cjs/packages/avatar/style/avatar.scss +7 -60
  3. package/dist/cjs/packages/avatar/style/style.css +5 -43
  4. package/dist/cjs/packages/avatar/style/style.harmony.css +5 -43
  5. package/dist/cjs/packages/badge/badge.js +67 -12
  6. package/dist/cjs/packages/badge/style/badge.scss +18 -24
  7. package/dist/cjs/packages/badge/style/style.css +17 -15
  8. package/dist/cjs/packages/badge/style/style.harmony.css +22 -17
  9. package/dist/cjs/packages/calendarcard/calendarcard.js +8 -3
  10. package/dist/cjs/packages/calendarcard/icon.js +14 -2
  11. package/dist/cjs/packages/calendarcard/style/calendarcard.scss +25 -4
  12. package/dist/cjs/packages/calendarcard/style/style.css +27 -2
  13. package/dist/cjs/packages/image/image.js +5 -5
  14. package/dist/cjs/packages/input/style/style.harmony.css +4 -0
  15. package/dist/cjs/packages/navbar/navbar.js +17 -8
  16. package/dist/cjs/packages/navbar/style/navbar.scss +46 -101
  17. package/dist/cjs/packages/navbar/style/style.css +44 -89
  18. package/dist/cjs/packages/navbar/style/style.harmony.css +45 -93
  19. package/dist/cjs/packages/pagination/pagination.js +2 -0
  20. package/dist/cjs/packages/pagination/style/pagination.scss +6 -12
  21. package/dist/cjs/packages/pagination/style/style.css +8 -14
  22. package/dist/cjs/packages/radio/index.d.ts +8 -2
  23. package/dist/cjs/packages/radio/index.js +6 -1
  24. package/dist/cjs/packages/radio/radio.d.ts +2 -5
  25. package/dist/cjs/packages/radio/radio.js +2 -4
  26. package/dist/cjs/packages/radio/style/radio.scss +1 -0
  27. package/dist/cjs/packages/radiogroup/radiogroup.d.ts +2 -1
  28. package/dist/cjs/packages/radiogroup/radiogroup.js +3 -2
  29. package/dist/cjs/packages/safearea/style/safearea.scss +1 -1
  30. package/dist/cjs/packages/safearea/style/style.css +1 -1
  31. package/dist/cjs/packages/safearea/style/style.harmony.css +1 -1
  32. package/dist/cjs/packages/searchbar/searchbar.d.ts +1 -1
  33. package/dist/cjs/packages/searchbar/searchbar.js +31 -33
  34. package/dist/cjs/packages/searchbar/style/searchbar.scss +10 -7
  35. package/dist/cjs/packages/searchbar/style/style.css +11 -8
  36. package/dist/cjs/packages/searchbar/style/style.harmony.css +25 -12
  37. package/dist/cjs/packages/skeleton/style/style.css +5 -43
  38. package/dist/cjs/packages/tabbar/style/style.css +17 -15
  39. package/dist/cjs/packages/tabbaritem/style/style.css +17 -15
  40. package/dist/cjs/packages/video/video.js +3 -3
  41. package/dist/es/packages/avatar/avatar.js +14 -16
  42. package/dist/es/packages/avatar/style/avatar.scss +7 -60
  43. package/dist/es/packages/avatar/style/style.css +5 -43
  44. package/dist/es/packages/avatar/style/style.harmony.css +5 -43
  45. package/dist/es/packages/badge/badge.d.ts +7 -35
  46. package/dist/es/packages/badge/badge.js +66 -12
  47. package/dist/es/packages/badge/style/badge.scss +18 -24
  48. package/dist/es/packages/badge/style/style.css +17 -15
  49. package/dist/es/packages/badge/style/style.harmony.css +22 -17
  50. package/dist/es/packages/calendarcard/calendarcard.d.ts +13 -65
  51. package/dist/es/packages/calendarcard/calendarcard.js +9 -4
  52. package/dist/es/packages/calendarcard/icon.js +15 -3
  53. package/dist/es/packages/calendarcard/style/calendarcard.scss +25 -4
  54. package/dist/es/packages/calendarcard/style/style.css +27 -2
  55. package/dist/es/packages/image/image.js +5 -5
  56. package/dist/es/packages/input/style/style.harmony.css +4 -0
  57. package/dist/es/packages/loading/loading.d.ts +3 -15
  58. package/dist/es/packages/navbar/navbar.js +17 -8
  59. package/dist/es/packages/navbar/style/navbar.scss +46 -101
  60. package/dist/es/packages/navbar/style/style.css +44 -89
  61. package/dist/es/packages/navbar/style/style.harmony.css +45 -93
  62. package/dist/es/packages/pagination/pagination.js +2 -0
  63. package/dist/es/packages/pagination/style/pagination.scss +6 -12
  64. package/dist/es/packages/pagination/style/style.css +8 -14
  65. package/dist/es/packages/radio/index.d.ts +8 -2
  66. package/dist/es/packages/radio/index.js +5 -1
  67. package/dist/es/packages/radio/radio.d.ts +11 -50
  68. package/dist/es/packages/radio/radio.js +3 -5
  69. package/dist/es/packages/radio/style/radio.scss +1 -0
  70. package/dist/es/packages/radiogroup/radiogroup.d.ts +9 -36
  71. package/dist/es/packages/radiogroup/radiogroup.js +3 -2
  72. package/dist/es/packages/safearea/safearea.d.ts +1 -5
  73. package/dist/es/packages/safearea/style/safearea.scss +1 -1
  74. package/dist/es/packages/safearea/style/style.css +1 -1
  75. package/dist/es/packages/safearea/style/style.harmony.css +1 -1
  76. package/dist/es/packages/searchbar/searchbar.d.ts +19 -95
  77. package/dist/es/packages/searchbar/searchbar.js +32 -34
  78. package/dist/es/packages/searchbar/style/searchbar.scss +10 -7
  79. package/dist/es/packages/searchbar/style/style.css +11 -8
  80. package/dist/es/packages/searchbar/style/style.harmony.css +25 -12
  81. package/dist/es/packages/skeleton/style/style.css +5 -43
  82. package/dist/es/packages/tabbar/style/style.css +17 -15
  83. package/dist/es/packages/tabbaritem/style/style.css +17 -15
  84. package/dist/es/packages/video/video.d.ts +5 -25
  85. package/dist/es/packages/video/video.js +3 -3
  86. package/dist/nutui.react.umd.js +256 -199
  87. package/dist/style.css +1 -1
  88. package/dist/styles/themes/default.scss +25 -25
  89. package/dist/styles/variables.scss +7 -4
  90. package/package.json +2 -2
@@ -83,7 +83,7 @@ var CalendarCard = /*#__PURE__*/ _react.default.forwardRef(function(props, ref)
83
83
  onChange === null || onChange === void 0 ? void 0 : onChange(val);
84
84
  }
85
85
  };
86
- var getDays = function getDays(month) {
86
+ var getDays = (0, _react.useCallback)(function(month) {
87
87
  var y = month.year;
88
88
  var m = month.month;
89
89
  var days = (0, _to_consumable_array._)((0, _utils.getPrevMonthDays)(y, m, firstDayOfWeek)).concat((0, _to_consumable_array._)((0, _utils.getCurrentMonthDays)(y, m)));
@@ -100,13 +100,18 @@ var CalendarCard = /*#__PURE__*/ _react.default.forwardRef(function(props, ref)
100
100
  });
101
101
  }
102
102
  return days;
103
- };
103
+ }, [
104
+ firstDayOfWeek
105
+ ]);
104
106
  (0, _react.useEffect)(function() {
105
107
  var newDays = getDays(month);
106
108
  setDays(newDays);
107
109
  onPageChange === null || onPageChange === void 0 ? void 0 : onPageChange(month);
108
110
  }, [
109
- month
111
+ month,
112
+ getDays,
113
+ onPageChange,
114
+ firstDayOfWeek
110
115
  ]);
111
116
  var isSameDay = function isSameDay(day1, day2) {
112
117
  return (day1 === null || day1 === void 0 ? void 0 : day1.year) === (day2 === null || day2 === void 0 ? void 0 : day2.year) && (day1 === null || day1 === void 0 ? void 0 : day1.month) === (day2 === null || day2 === void 0 ? void 0 : day2.month) && (day1 === null || day1 === void 0 ? void 0 : day1.date) === (day2 === null || day2 === void 0 ? void 0 : day2.date);
@@ -29,14 +29,26 @@ var left = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMj
29
29
  var right = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4Ij48cGF0aCBkPSJNMTEuMzk2IDkuNDlhLjc3MS43NzEgMCAwIDAgMC0uOThsLTMuNi00LjM3MmEuNzcxLjc3MSAwIDAgMC0xLjE5MS45ODFMOS44IDlsLTMuMTk2IDMuODgxYS43NzEuNzcxIDAgMCAwIDEuMTkuOThsMy42LTQuMzd6Ii8+PC9zdmc+';
30
30
  var doubleLeft = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4Ij48cGF0aCBkPSJNMTMuODUzIDQuMDI2YS43NzEuNzcxIDAgMCAxIC4xMiAxLjA4NUwxMC44NjQgOWwzLjExIDMuODg5YS43NzEuNzcxIDAgMSAxLTEuMjA0Ljk2M2wtMy40OTgtNC4zN2EuNzcxLjc3MSAwIDAgMSAwLS45NjRsMy40OTctNC4zNzFhLjc3MS43NzEgMCAwIDEgMS4wODQtLjEyem0tNS4yNDUgMGEuNzcxLjc3MSAwIDAgMSAuMTIgMS4wODVMNS42MTcgOWwzLjExMSAzLjg4OWEuNzcxLjc3MSAwIDAgMS0xLjIwNS45NjNsLTMuNDk3LTQuMzdhLjc3MS43NzEgMCAwIDEgMC0uOTY0bDMuNDk3LTQuMzcxYS43NzEuNzcxIDAgMCAxIDEuMDg1LS4xMnoiLz48L3N2Zz4=';
31
31
  var doubleRight = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4Ij48cGF0aCBkPSJNNC4xNDcgMTMuOTc0YS43NzEuNzcxIDAgMCAxLS4xMi0xLjA4NUw3LjEzNiA5IDQuMDI4IDUuMTFhLjc3MS43NzEgMCAxIDEgMS4yMDQtLjk2M2wzLjQ5NyA0LjM3MWEuNzcxLjc3MSAwIDAgMSAwIC45NjRsLTMuNDk3IDQuMzcxYS43NzEuNzcxIDAgMCAxLTEuMDg0LjEyem01LjI0NSAwYS43NzEuNzcxIDAgMCAxLS4xMi0xLjA4NUwxMi4zODMgOSA5LjI3MiA1LjExYS43NzEuNzcxIDAgMSAxIDEuMjA1LS45NjNsMy40OTcgNC4zNzFhLjc3MS43NzEgMCAwIDEgMCAuOTY0bC0zLjQ5NyA0LjM3MWEuNzcxLjc3MSAwIDAgMS0xLjA4NS4xMnoiLz48L3N2Zz4=';
32
+ if (process.env.TARO_ENV === 'jdharmony_cpp') {
33
+ left = 'https://img11.360buyimg.com/imagetools/jfs/t1/187031/35/51586/196/6731c464F9b9f8f00/5506e32bf15e29dc.png';
34
+ right = 'https://img12.360buyimg.com/imagetools/jfs/t1/181006/25/51824/185/6731c452F9e252322/7493147dd6b4a88d.png';
35
+ doubleLeft = 'https://img13.360buyimg.com/imagetools/jfs/t1/221244/29/45876/259/6731c6bdF515df0a2/624e8eee3c8494a2.png';
36
+ doubleRight = 'https://img11.360buyimg.com/imagetools/jfs/t1/238382/25/24000/235/6731c6bdF0153286c/4a57e60b6e889af3.png';
37
+ }
32
38
  var Icon = function Icon(param) {
33
39
  var url = param.url;
34
40
  var style = {
35
41
  background: "url('".concat(url, "') no-repeat center"),
36
42
  backgroundSize: '100% 100%',
37
- width: '18px',
38
- height: '18px'
43
+ width: 18,
44
+ height: 18
39
45
  };
46
+ if (process.env.TARO_ENV === 'jdharmony_cpp') {
47
+ return /*#__PURE__*/ _react.default.createElement(_components.Image, {
48
+ src: url,
49
+ style: style
50
+ });
51
+ }
40
52
  return /*#__PURE__*/ _react.default.createElement(_components.View, {
41
53
  style: style
42
54
  });
@@ -55,6 +55,9 @@
55
55
 
56
56
  &-top,
57
57
  &-bottom {
58
+ display: flex;
59
+ align-items: center;
60
+ justify-content: center;
58
61
  width: 100%;
59
62
  height: 12px;
60
63
  font-size: 12px;
@@ -67,14 +70,22 @@
67
70
 
68
71
  &.active {
69
72
  background-color: $calendar-active-background-color;
70
- color: $color-primary-text;
71
73
  border-radius: $calendar-day-active-border-radius;
74
+ .nut-calendarcard-day-top,
75
+ .nut-calendarcard-day-inner,
76
+ .nut-calendarcard-day-bottom {
77
+ color: $color-primary-text;
78
+ }
72
79
  }
73
80
 
74
81
  &.start,
75
82
  &.end {
76
83
  background-color: $calendar-active-background-color;
77
- color: $color-primary-text;
84
+ .nut-calendarcard-day-top,
85
+ .nut-calendarcard-day-inner,
86
+ .nut-calendarcard-day-bottom {
87
+ color: $color-primary-text;
88
+ }
78
89
  }
79
90
 
80
91
  &.start {
@@ -89,7 +100,11 @@
89
100
 
90
101
  &.mid {
91
102
  background-color: $calendar-choose-background-color;
92
- color: $calendar-choose-color;
103
+ .nut-calendarcard-day-top,
104
+ .nut-calendarcard-day-inner,
105
+ .nut-calendarcard-day-bottom {
106
+ color: $calendar-choose-color;
107
+ }
93
108
  }
94
109
 
95
110
  .nut-calendar-day-info {
@@ -100,7 +115,11 @@
100
115
  &.prev,
101
116
  &.next,
102
117
  &.disabled {
103
- color: $calendar-disable-color;
118
+ .nut-calendarcard-day-top,
119
+ .nut-calendarcard-day-inner,
120
+ .nut-calendarcard-day-bottom {
121
+ color: $calendar-disable-color;
122
+ }
104
123
  cursor: not-allowed;
105
124
  }
106
125
  }
@@ -128,11 +147,13 @@
128
147
  }
129
148
  }
130
149
  }
150
+
131
151
  &-day {
132
152
  &.start,
133
153
  &.end {
134
154
  border-radius: 0;
135
155
  }
156
+
136
157
  &.start {
137
158
  border-top-right-radius: $calendar-day-active-border-radius;
138
159
  border-bottom-right-radius: $calendar-day-active-border-radius;
@@ -47,6 +47,9 @@
47
47
  cursor: auto;
48
48
  }
49
49
  .nut-calendarcard-day-top, .nut-calendarcard-day-bottom {
50
+ display: flex;
51
+ align-items: center;
52
+ justify-content: center;
50
53
  width: 100%;
51
54
  height: 12px;
52
55
  font-size: 12px;
@@ -57,11 +60,21 @@
57
60
  }
58
61
  .nut-calendarcard-day.active {
59
62
  background-color: var(--nutui-calendar-active-background-color, var(--nutui-color-primary, #ff0f23));
60
- color: var(--nutui-color-primary-text, #ffffff);
61
63
  border-radius: var(--nutui-calendar-day-active-border-radius, 4px);
62
64
  }
65
+ .nut-calendarcard-day.active .nut-calendarcard-day-top,
66
+ .nut-calendarcard-day.active .nut-calendarcard-day-inner,
67
+ .nut-calendarcard-day.active .nut-calendarcard-day-bottom {
68
+ color: var(--nutui-color-primary-text, #ffffff);
69
+ }
63
70
  .nut-calendarcard-day.start, .nut-calendarcard-day.end {
64
71
  background-color: var(--nutui-calendar-active-background-color, var(--nutui-color-primary, #ff0f23));
72
+ }
73
+ .nut-calendarcard-day.start .nut-calendarcard-day-top,
74
+ .nut-calendarcard-day.start .nut-calendarcard-day-inner,
75
+ .nut-calendarcard-day.start .nut-calendarcard-day-bottom, .nut-calendarcard-day.end .nut-calendarcard-day-top,
76
+ .nut-calendarcard-day.end .nut-calendarcard-day-inner,
77
+ .nut-calendarcard-day.end .nut-calendarcard-day-bottom {
65
78
  color: var(--nutui-color-primary-text, #ffffff);
66
79
  }
67
80
  .nut-calendarcard-day.start {
@@ -74,15 +87,27 @@
74
87
  }
75
88
  .nut-calendarcard-day.mid {
76
89
  background-color: var(--nutui-calendar-choose-background-color, var(--nutui-color-primary-light-pressed, #ffebf1));
90
+ }
91
+ .nut-calendarcard-day.mid .nut-calendarcard-day-top,
92
+ .nut-calendarcard-day.mid .nut-calendarcard-day-inner,
93
+ .nut-calendarcard-day.mid .nut-calendarcard-day-bottom {
77
94
  color: var(--nutui-calendar-choose-color, var(--nutui-color-primary, #ff0f23));
78
95
  }
79
96
  .nut-calendarcard-day .nut-calendar-day-info {
80
97
  color: var(--nutui-color-primary-text, #ffffff);
81
98
  }
82
99
  .nut-calendarcard-day.prev, .nut-calendarcard-day.next, .nut-calendarcard-day.disabled {
83
- color: var(--nutui-calendar-disable-color, var(--nutui-color-text-disabled, #c2c4cc));
84
100
  cursor: not-allowed;
85
101
  }
102
+ .nut-calendarcard-day.prev .nut-calendarcard-day-top,
103
+ .nut-calendarcard-day.prev .nut-calendarcard-day-inner,
104
+ .nut-calendarcard-day.prev .nut-calendarcard-day-bottom, .nut-calendarcard-day.next .nut-calendarcard-day-top,
105
+ .nut-calendarcard-day.next .nut-calendarcard-day-inner,
106
+ .nut-calendarcard-day.next .nut-calendarcard-day-bottom, .nut-calendarcard-day.disabled .nut-calendarcard-day-top,
107
+ .nut-calendarcard-day.disabled .nut-calendarcard-day-inner,
108
+ .nut-calendarcard-day.disabled .nut-calendarcard-day-bottom {
109
+ color: var(--nutui-calendar-disable-color, var(--nutui-color-text-disabled, #c2c4cc));
110
+ }
86
111
 
87
112
  [dir=rtl] .nut-calendarcard-header-left .left, [dir=rtl] .nut-calendarcard-header-right .left,
88
113
  .nut-rtl .nut-calendarcard-header-left .left,
@@ -19,7 +19,7 @@ var _taro = /*#__PURE__*/ _interop_require_default._(require("@tarojs/taro"));
19
19
  var _components = require("@tarojs/components");
20
20
  var _iconsreacttaro = require("@nutui/icons-react-taro");
21
21
  var _classnames = /*#__PURE__*/ _interop_require_default._(require("classnames"));
22
- var _platformtaro = require("../../utils/platform-taro");
22
+ var _pxtransform = /*#__PURE__*/ _interop_require_default._(require("../../utils/px-transform"));
23
23
  var defaultProps = {
24
24
  src: '',
25
25
  error: true,
@@ -42,7 +42,7 @@ var Image = function Image(props) {
42
42
  var _useState = (0, _sliced_to_array._)((0, _react.useState)(true), 2), innerLoading = _useState[0], setInnerLoading = _useState[1];
43
43
  var _useState1 = (0, _sliced_to_array._)((0, _react.useState)(false), 2), isError = _useState1[0], setIsError = _useState1[1];
44
44
  var pxCheck = function pxCheck(value) {
45
- return Number.isNaN(Number(value)) ? String(value) : "".concat(value, "px");
45
+ return Number.isNaN(Number(value)) ? String(value) : (0, _pxtransform.default)(+value);
46
46
  };
47
47
  // 图片加载
48
48
  var handleLoad = function handleLoad(e) {
@@ -59,9 +59,9 @@ var Image = function Image(props) {
59
59
  };
60
60
  var containerStyle = {
61
61
  // eslint-disable-next-line no-nested-ternary
62
- height: height ? _taro.default.getEnv() === 'RN' ? height : pxCheck(height) : _taro.default.getEnv() === 'WEB' ? '' : '100%',
62
+ height: height ? pxCheck(height) : _taro.default.getEnv() === 'WEB' ? '' : '100%',
63
63
  // eslint-disable-next-line no-nested-ternary
64
- width: width ? _taro.default.getEnv() === 'RN' ? width : pxCheck(width) : _taro.default.getEnv() === 'WEB' ? '' : '100%',
64
+ width: width ? pxCheck(width) : _taro.default.getEnv() === 'WEB' ? '' : '100%',
65
65
  overflow: radius !== undefined && radius !== null ? 'hidden' : '',
66
66
  borderRadius: radius !== undefined && radius != null ? _taro.default.getEnv() === 'RN' ? radius : pxCheck(radius) : ''
67
67
  };
@@ -117,6 +117,6 @@ var Image = function Image(props) {
117
117
  onError: function onError(e) {
118
118
  return handleError(e);
119
119
  }
120
- })), !(0, _platformtaro.harmonyAndRn)() && /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, renderLoading(), renderErrorImg()));
120
+ })), /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, renderLoading(), renderErrorImg()));
121
121
  };
122
122
  Image.displayName = 'NutImage';
@@ -43,4 +43,8 @@
43
43
  background: none;
44
44
  opacity: 1;
45
45
  -webkit-text-fill-color: #c2c4cc;
46
+ }
47
+
48
+ .nut-input-clear {
49
+ flex: 0;
46
50
  }
@@ -19,8 +19,11 @@ var _ts_generator = require("@swc/helpers/_/_ts_generator");
19
19
  var _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
20
20
  var _classnames = /*#__PURE__*/ _interop_require_default._(require("classnames"));
21
21
  var _components = require("@tarojs/components");
22
+ var _index = require("../configprovider/index");
22
23
  var _typings = require("../../utils/typings");
23
24
  var _getrectbytaro = require("../../utils/get-rect-by-taro");
25
+ var _platformtaro = require("../../utils/platform-taro");
26
+ var _pxtransform = /*#__PURE__*/ _interop_require_default._(require("../../utils/px-transform"));
24
27
  var _safearea = require("../safearea/safearea");
25
28
  var defaultProps = (0, _object_spread_props._)((0, _object_spread._)({}, _typings.ComponentDefaults), {
26
29
  left: '',
@@ -35,6 +38,7 @@ var defaultProps = (0, _object_spread_props._)((0, _object_spread._)({}, _typing
35
38
  var NavBar = function NavBar(props) {
36
39
  var _$_object_spread = (0, _object_spread._)({}, defaultProps, props), right = _$_object_spread.right, left = _$_object_spread.left, titleAlign = _$_object_spread.titleAlign, className = _$_object_spread.className, style = _$_object_spread.style, back = _$_object_spread.back, fixed = _$_object_spread.fixed, safeAreaInsetTop = _$_object_spread.safeAreaInsetTop, placeholder = _$_object_spread.placeholder, zIndex = _$_object_spread.zIndex, onBackClick = _$_object_spread.onBackClick;
37
40
  var classPrefix = 'nut-navbar';
41
+ var rtl = (0, _index.useRtl)();
38
42
  var children = Array.isArray(props.children) ? props.children : [
39
43
  props.children
40
44
  ];
@@ -127,18 +131,21 @@ var NavBar = function NavBar(props) {
127
131
  return _ref.apply(this, arguments);
128
132
  };
129
133
  }();
130
- init();
134
+ setTimeout(function() {
135
+ init();
136
+ }, 0);
131
137
  }, [
132
138
  left,
133
139
  right,
134
140
  back
135
141
  ]);
136
142
  var renderLeft = function renderLeft() {
143
+ var _obj, _obj1;
137
144
  return back || left ? /*#__PURE__*/ _react.default.createElement(_components.View, {
138
- className: "".concat(classPrefix, "-left"),
145
+ className: (0, _classnames.default)((_obj = {}, (0, _define_property._)(_obj, "".concat(classPrefix, "-left"), true), (0, _define_property._)(_obj, "".concat(classPrefix, "-left-align-").concat(titleAlign), true), (0, _define_property._)(_obj, "".concat(classPrefix, "-left-rtl"), rtl), _obj)),
139
146
  ref: leftRef
140
147
  }, back && /*#__PURE__*/ _react.default.createElement(_components.View, {
141
- className: "".concat(classPrefix, "-left-back"),
148
+ className: (0, _classnames.default)((_obj1 = {}, (0, _define_property._)(_obj1, "".concat(classPrefix, "-left-back"), true), (0, _define_property._)(_obj1, "".concat(classPrefix, "-left-back-align-").concat(titleAlign), true), (0, _define_property._)(_obj1, "".concat(classPrefix, "-left-back-children"), left), (0, _define_property._)(_obj1, "".concat(classPrefix, "-left-back-children-rtl"), left && rtl), _obj1)),
142
149
  onClick: function onClick(e) {
143
150
  return onBackClick(e);
144
151
  }
@@ -147,20 +154,22 @@ var NavBar = function NavBar(props) {
147
154
  var renderContent = function renderContent() {
148
155
  var titleStyle = {};
149
156
  if (titleAlign === 'center') {
150
- var contentRealWidth = "".concat(contentWidth).concat(/%$/i.test(contentWidth) ? '' : 'px');
157
+ var width = (0, _platformtaro.harmonyAndRn)() ? (0, _pxtransform.default)(Number(contentWidth)) : "".concat(contentWidth, "px");
158
+ var contentRealWidth = /%$/i.test(contentWidth) ? contentWidth : width;
151
159
  titleStyle = {
152
- minWidth: contentRealWidth,
153
160
  width: contentRealWidth
154
161
  };
155
162
  }
163
+ var _obj;
156
164
  return /*#__PURE__*/ _react.default.createElement(_components.View, {
157
- className: "".concat(classPrefix, "-title"),
165
+ className: (0, _classnames.default)((_obj = {}, (0, _define_property._)(_obj, "".concat(classPrefix, "-title"), true), (0, _define_property._)(_obj, "".concat(classPrefix, "-title-align-").concat(titleAlign), true), _obj)),
158
166
  style: titleStyle
159
167
  }, children);
160
168
  };
161
169
  var renderRight = function renderRight() {
170
+ var _obj;
162
171
  return /*#__PURE__*/ _react.default.createElement(_components.View, {
163
- className: "".concat(classPrefix, "-right"),
172
+ className: (0, _classnames.default)((_obj = {}, (0, _define_property._)(_obj, "".concat(classPrefix, "-right"), true), (0, _define_property._)(_obj, "".concat(classPrefix, "-right-align-").concat(titleAlign), true), (0, _define_property._)(_obj, "".concat(classPrefix, "-right-rtl"), rtl), _obj)),
164
173
  ref: rightRef
165
174
  }, right);
166
175
  };
@@ -172,7 +181,7 @@ var NavBar = function NavBar(props) {
172
181
  }, renderLeft(), renderContent(), renderRight());
173
182
  };
174
183
  var _obj;
175
- var classes = (0, _classnames.default)((_obj = {}, (0, _define_property._)(_obj, "".concat(classPrefix, "-fixed"), fixed), (0, _define_property._)(_obj, "".concat(classPrefix, "-title-align-").concat(titleAlign), true), _obj));
184
+ var classes = (0, _classnames.default)((_obj = {}, (0, _define_property._)(_obj, "".concat(classPrefix, "-fixed"), fixed), (0, _define_property._)(_obj, "".concat(classPrefix, "-safe-area-inset-top"), safeAreaInsetTop), (0, _define_property._)(_obj, "".concat(classPrefix, "-align-").concat(titleAlign), true), (0, _define_property._)(_obj, "".concat(classPrefix, "-rtl"), rtl), _obj));
176
185
  var cls = (0, _classnames.default)(classPrefix, classes, className);
177
186
  return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, safeAreaInsetTop && /*#__PURE__*/ _react.default.createElement(_safearea.SafeArea, {
178
187
  position: "top"
@@ -2,6 +2,8 @@
2
2
  width: $navbar-width;
3
3
  position: relative;
4
4
  display: flex;
5
+ flex-direction: row;
6
+ justify-content: center;
5
7
  align-items: center;
6
8
  height: $navbar-height;
7
9
  box-sizing: border-box;
@@ -16,6 +18,7 @@
16
18
  position: fixed;
17
19
  top: 0;
18
20
  left: 0;
21
+ right: 0;
19
22
  width: 100%;
20
23
  }
21
24
 
@@ -24,27 +27,32 @@
24
27
  width: 100%;
25
28
  }
26
29
 
30
+ &-safe-area-inset-top {
31
+ padding-top: constant(safe-area-inset-top);
32
+ padding-top: env(safe-area-inset-top);
33
+ }
34
+
35
+ &-align-left {
36
+ padding-left: 14px;
37
+ }
38
+
27
39
  &-title {
28
- min-width: 53%;
29
- margin: 0 auto;
40
+ width: 50%;
41
+ height: 100%;
30
42
  text-align: center;
31
43
  display: flex;
44
+ flex-direction: row;
32
45
  align-items: center;
33
46
  justify-content: center;
34
47
  font-size: $navbar-title-font-size;
35
48
  font-weight: $navbar-title-font-weight;
36
49
  color: $navbar-title-font-color;
37
-
38
- .nut-tabs-titles {
39
- background: transparent;
40
-
41
- &-item-text {
42
- color: $color-title;
43
- }
44
- }
45
-
46
- .nut-tabpane {
47
- display: none;
50
+ &-align-left {
51
+ min-width: 0;
52
+ flex: 1;
53
+ justify-content: flex-start;
54
+ padding: 0 8px;
55
+ text-align: left;
48
56
  }
49
57
  }
50
58
 
@@ -59,125 +67,62 @@
59
67
  bottom: 0;
60
68
  display: flex;
61
69
  align-items: center;
70
+ flex-direction: row;
71
+ height: 100%;
62
72
  cursor: pointer;
63
73
  padding: 0 14px;
64
-
74
+ /* #ifndef rn harmony jd h5 weapp*/
65
75
  .nut-icon,
66
76
  .nutui-iconfont {
67
77
  width: 20px;
68
78
  height: 20px;
69
79
  font-size: 20px;
70
80
  }
81
+ /* #endif */
71
82
  }
72
83
 
73
84
  &-left {
74
85
  left: 0;
86
+ &-rtl {
87
+ left: auto;
88
+ right: 0;
89
+ }
90
+ &-align-left {
91
+ position: static;
92
+ padding: 0;
93
+ }
75
94
 
76
95
  &-back {
77
96
  display: flex;
97
+ flex-direction: row;
78
98
  align-items: center;
79
99
  justify-content: center;
80
- margin-right: 10px;
100
+ &-children {
101
+ margin-right: 10px;
102
+ &-rtl {
103
+ margin-right: 0;
104
+ margin-left: 10px;
105
+ }
106
+ }
81
107
  }
82
108
  }
83
109
 
84
110
  &-right {
85
111
  right: 0;
86
-
87
- .nut-icon {
88
- margin-left: 12px;
89
-
90
- &:first-child {
91
- margin-left: 0;
92
- }
93
- }
94
- }
95
-
96
- &-title-align-left {
97
- padding-left: 14px;
98
-
99
- .nut-navbar-left {
100
- position: static;
101
- padding: 0;
102
-
103
- .nut-icon {
104
- margin-left: 12px;
105
-
106
- &:first-child {
107
- margin-left: 0;
108
- }
109
- }
112
+ &-rtl {
113
+ right: auto;
114
+ left: 0;
110
115
  }
111
- .nut-navbar-right {
116
+ &-align-left {
112
117
  position: static;
113
118
  display: inline-flex;
114
119
  white-space: nowrap;
115
120
  padding-left: 0;
116
121
  }
117
- .nut-navbar-left-back {
118
- margin-right: 0;
119
- }
120
-
121
- .nut-navbar-title {
122
- min-width: 0;
123
- margin: 0;
124
- flex: 1;
125
- justify-content: flex-start;
126
- padding: 0 8px;
127
- text-align: left;
128
- }
129
122
  }
130
- }
131
-
132
- [dir='rtl'] .nut-navbar,
133
- .nut-rtl .nut-navbar {
134
- &-fixed {
135
- left: auto;
136
- right: 0;
137
- }
138
-
139
- &-left {
140
- left: auto;
141
- right: 0;
123
+ &-rtl {
142
124
  .nut-icon-ArrowLeft {
143
125
  transform: rotateY(180deg);
144
126
  }
145
- &-back {
146
- margin-right: 0;
147
- margin-left: 10px;
148
- }
149
- }
150
-
151
- &-right {
152
- right: auto;
153
- left: 0;
154
- .nut-icon {
155
- margin-left: 0;
156
- margin-right: 12px;
157
-
158
- &:first-child {
159
- margin-left: 0;
160
- margin-right: 0;
161
- }
162
- }
163
- }
164
-
165
- &-title-align-left {
166
- .nut-navbar-left {
167
- .nut-icon-ArrowLeft {
168
- margin-left: 0;
169
- margin-right: 12px;
170
-
171
- &:first-child {
172
- margin-left: 0;
173
- margin-right: 0;
174
- }
175
- }
176
- }
177
-
178
- .nut-navbar-left-back {
179
- margin-right: 0;
180
- margin-left: 0;
181
- }
182
127
  }
183
128
  }