@nutui/nutui-react-taro 1.5.2-beta.1 → 1.5.2

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 (231) hide show
  1. package/dist/esm/ActionSheet.js +90 -14
  2. package/dist/esm/Address.js +620 -21
  3. package/dist/esm/Animate.js +53 -7
  4. package/dist/esm/AnimatingNumbers.js +125 -7
  5. package/dist/esm/Audio.js +264 -19
  6. package/dist/esm/Avatar.js +130 -11
  7. package/dist/esm/{AvatarContext-c96afdcc.js → AvatarContext-15733596.js} +1 -3
  8. package/dist/esm/AvatarGroup.js +41 -11
  9. package/dist/esm/BackTop.js +138 -10
  10. package/dist/esm/Badge.js +71 -9
  11. package/dist/esm/Barrage.js +97 -8
  12. package/dist/esm/Button.js +108 -9
  13. package/dist/esm/Calendar.js +128 -20
  14. package/dist/esm/CalendarItem.js +674 -12
  15. package/dist/esm/Card.js +61 -11
  16. package/dist/esm/Cascader.js +671 -16
  17. package/dist/esm/Cell.js +101 -9
  18. package/dist/esm/CellGroup.js +2 -5
  19. package/dist/esm/Checkbox.js +5 -7
  20. package/dist/esm/CheckboxGroup.js +111 -8
  21. package/dist/esm/CircleProgress.js +114 -8
  22. package/dist/esm/Col.js +57 -7
  23. package/dist/esm/Collapse.js +97 -7
  24. package/dist/esm/CollapseItem.js +146 -8
  25. package/dist/esm/ConfigProvider.js +187 -8
  26. package/dist/esm/CountDown.js +247 -9
  27. package/dist/esm/DatePicker.js +309 -25
  28. package/dist/esm/Dialog.js +296 -17
  29. package/dist/esm/Divider.js +34 -7
  30. package/dist/esm/Drag.js +118 -7
  31. package/dist/esm/Elevator.js +234 -8
  32. package/dist/esm/Ellipsis.js +176 -10
  33. package/dist/esm/Empty.js +79 -8
  34. package/dist/esm/FixedNav.js +103 -14
  35. package/dist/esm/Form.js +215 -10
  36. package/dist/esm/FormItem.js +3 -10
  37. package/dist/esm/Grid.js +81 -11
  38. package/dist/esm/GridItem.js +123 -13
  39. package/dist/esm/Icon.js +2 -5
  40. package/dist/esm/Image.js +169 -11
  41. package/dist/esm/ImagePreview.js +225 -19
  42. package/dist/esm/Indicator.js +50 -7
  43. package/dist/esm/Infiniteloading.js +215 -14
  44. package/dist/esm/Input.js +362 -12
  45. package/dist/esm/InputNumber.js +275 -9
  46. package/dist/esm/Layout.js +13 -5
  47. package/dist/esm/Menu.js +153 -10
  48. package/dist/esm/MenuItem.js +175 -15
  49. package/dist/esm/NavBar.js +114 -9
  50. package/dist/esm/NoticeBar.js +568 -10
  51. package/dist/esm/Notify.js +234 -8
  52. package/dist/esm/NumberKeyboard.js +247 -17
  53. package/dist/esm/Overlay.js +2 -6
  54. package/dist/esm/Pagination.js +168 -9
  55. package/dist/esm/Picker.js +494 -22
  56. package/dist/esm/Popover.js +223 -12
  57. package/dist/esm/Popup.js +193 -13
  58. package/dist/esm/Price.js +84 -6
  59. package/dist/esm/Progress.js +122 -9
  60. package/dist/esm/PullToRefresh.js +276 -13
  61. package/dist/esm/Radio.js +4 -8
  62. package/dist/esm/RadioGroup.js +120 -7
  63. package/dist/esm/Range.js +406 -15
  64. package/dist/esm/Rate.js +121 -9
  65. package/dist/esm/Row.js +49 -7
  66. package/dist/esm/SearchBar.js +235 -12
  67. package/dist/esm/ShortPassword.js +191 -17
  68. package/dist/esm/SideNavBar.js +57 -19
  69. package/dist/esm/SideNavBarItem.js +24 -5
  70. package/dist/esm/Signature.js +153 -13
  71. package/dist/esm/Skeleton.js +98 -12
  72. package/dist/esm/Step.js +87 -10
  73. package/dist/esm/Steps.js +38 -8
  74. package/dist/esm/Sticky.js +190 -11
  75. package/dist/esm/SubSideNavBar.js +78 -6
  76. package/dist/esm/Swipe.js +230 -10
  77. package/dist/esm/Swiper.js +490 -9
  78. package/dist/esm/SwiperItem.js +36 -8
  79. package/dist/esm/Switch.js +71 -6
  80. package/dist/esm/TabPane.js +2 -5
  81. package/dist/esm/Tabbar.js +68 -6
  82. package/dist/esm/TabbarItem.js +78 -9
  83. package/dist/esm/Table.js +140 -12
  84. package/dist/esm/Tabs.js +5 -8
  85. package/dist/esm/Tag.js +110 -10
  86. package/dist/esm/TextArea.js +148 -9
  87. package/dist/esm/TimeDetail.js +67 -9
  88. package/dist/esm/TimePannel.js +29 -9
  89. package/dist/esm/TimeSelect.js +171 -19
  90. package/dist/esm/Toast.js +268 -7
  91. package/dist/esm/TrendArrow.js +99 -7
  92. package/dist/esm/Uploader.js +566 -17
  93. package/dist/esm/{UserContext-0aac9a82.js → UserContext-101ad4a4.js} +1 -3
  94. package/dist/esm/{UserContext-e402e1a6.js → UserContext-2629d479.js} +1 -3
  95. package/dist/esm/{UserContext-e8176108.js → UserContext-b33bcf21.js} +1 -3
  96. package/dist/esm/Video.js +90 -7
  97. package/dist/esm/VirtualList.js +313 -9
  98. package/dist/esm/WaterMark.js +111 -11
  99. package/dist/esm/{bem-350c1702.js → bem-3b438e61.js} +6 -3
  100. package/dist/esm/cellgroup-fcc72767.js +34 -0
  101. package/dist/esm/checkbox-44e13cd0.js +137 -0
  102. package/dist/esm/date-c7aad4c0.js +97 -0
  103. package/dist/esm/formitem-8a73a5fb.js +157 -0
  104. package/dist/esm/get-scroll-parent-5f85dee8.js +24 -0
  105. package/dist/esm/{grid.taro.context-c2bbfb4f.js → grid.context-2ee27d95.js} +2 -4
  106. package/dist/esm/icon-4ef1581c.js +70 -0
  107. package/dist/esm/index-030b7245.js +11 -0
  108. package/dist/esm/nutui-react.es.js +94 -119
  109. package/dist/esm/offsetContext-3ab00d40.js +16 -0
  110. package/dist/esm/overlay-de6c79d5.js +83 -0
  111. package/dist/esm/radio-9f141e6b.js +118 -0
  112. package/dist/esm/render-bbebb760.js +79 -0
  113. package/dist/esm/tabpane-01075e6c.js +29 -0
  114. package/dist/esm/tabs-e1b4e4b1.js +181 -0
  115. package/dist/esm/typings-f27b58f4.js +8 -0
  116. package/dist/esm/useClientRect-56bb675b.js +39 -0
  117. package/dist/esm/useTouch-cf73a407.js +99 -0
  118. package/dist/locales/base.js +1 -1
  119. package/dist/locales/en-US.js +1 -1
  120. package/dist/locales/id-ID.js +1 -1
  121. package/dist/locales/zh-CN.js +1 -1
  122. package/dist/locales/zh-TW.js +1 -1
  123. package/dist/locales/zh-UG.js +1 -1
  124. package/dist/nutui.react.mjs +15025 -13192
  125. package/dist/nutui.react.umd.js +15004 -13169
  126. package/dist/style.mjs +1 -1
  127. package/dist/types/index.d.ts +183 -176
  128. package/package.json +1 -1
  129. package/dist/esm/actionsheet.taro-e6a51446.js +0 -53
  130. package/dist/esm/address.taro-3a9b6396.js +0 -461
  131. package/dist/esm/animate.taro-fb7986d6.js +0 -40
  132. package/dist/esm/animatingnumbers.taro-03e5d61d.js +0 -104
  133. package/dist/esm/audio.taro-87ec8bf2.js +0 -161
  134. package/dist/esm/avatar.taro-3676f38f.js +0 -103
  135. package/dist/esm/avatargroup-f3574510.js +0 -34
  136. package/dist/esm/backtop.taro-66394a36.js +0 -48
  137. package/dist/esm/badge.taro-a4e59c11.js +0 -52
  138. package/dist/esm/barrage.taro-0495a1b2.js +0 -94
  139. package/dist/esm/button.taro-9244d065.js +0 -100
  140. package/dist/esm/calendar.taro-670842ea.js +0 -65
  141. package/dist/esm/calendaritem.taro-2a603571.js +0 -787
  142. package/dist/esm/can-use-dom-3eeb5af4.js +0 -6
  143. package/dist/esm/card.taro-e4c76dad.js +0 -33
  144. package/dist/esm/cascader.taro-eb1fb011.js +0 -438
  145. package/dist/esm/cell.taro-a10a74d3.js +0 -64
  146. package/dist/esm/cellgroup.taro-abe501bc.js +0 -25
  147. package/dist/esm/checkbox.taro-6120e3e3.js +0 -171
  148. package/dist/esm/circleprogress.taro-79854448.js +0 -109
  149. package/dist/esm/col.taro-53eed3cc.js +0 -41
  150. package/dist/esm/collapse.taro-1a9e4ba2.js +0 -83
  151. package/dist/esm/collapseitem-4d0bc55d.js +0 -83
  152. package/dist/esm/configprovider-67d19d3a.js +0 -19
  153. package/dist/esm/configprovider.taro-8d71eb49.js +0 -42
  154. package/dist/esm/countdown.taro-5b17c607.js +0 -226
  155. package/dist/esm/datepicker.taro-6e9b4b8f.js +0 -275
  156. package/dist/esm/dialog.taro-a3267d29.js +0 -118
  157. package/dist/esm/divider.taro-26d1d8b4.js +0 -35
  158. package/dist/esm/drag.taro-79bb8744.js +0 -110
  159. package/dist/esm/elevator.taro-6019669e.js +0 -178
  160. package/dist/esm/ellipsis.taro-f15f26da.js +0 -241
  161. package/dist/esm/empty.taro-04ae4389.js +0 -62
  162. package/dist/esm/fixednav.taro-1f05acaf.js +0 -53
  163. package/dist/esm/form.taro-0c8e7a39.js +0 -179
  164. package/dist/esm/formitem.taro-190a3326.js +0 -89
  165. package/dist/esm/get-scroll-parent-b4a07e65.js +0 -25
  166. package/dist/esm/grid.taro-3503b82c.js +0 -61
  167. package/dist/esm/griditem.taro-cdb3f119.js +0 -98
  168. package/dist/esm/icon-296a1bec.js +0 -63
  169. package/dist/esm/icon.taro-296a1bec.js +0 -63
  170. package/dist/esm/image.taro-142cf512.js +0 -64
  171. package/dist/esm/imagepreview.taro-c50bb0a3.js +0 -167
  172. package/dist/esm/index-5bcb0ff8.js +0 -7
  173. package/dist/esm/indicator.taro-cba8b010.js +0 -37
  174. package/dist/esm/infiniteloading.taro-183bccbf.js +0 -144
  175. package/dist/esm/input.taro-97af6c96.js +0 -240
  176. package/dist/esm/inputnumber.taro-91f65d17.js +0 -130
  177. package/dist/esm/layout.taro-9046d093.js +0 -11
  178. package/dist/esm/menu.taro-7e4038a1.js +0 -99
  179. package/dist/esm/menuitem.taro-96cc4f15.js +0 -130
  180. package/dist/esm/navbar.taro-777c4705.js +0 -79
  181. package/dist/esm/noticebar.taro-4a23cdee.js +0 -448
  182. package/dist/esm/notify.taro-e17c6f82.js +0 -75
  183. package/dist/esm/numberkeyboard.taro-1bc24744.js +0 -159
  184. package/dist/esm/offsetContext-c2a746fa.js +0 -5
  185. package/dist/esm/overlay.taro-21e87fb1.js +0 -69
  186. package/dist/esm/pagination.taro-715a173b.js +0 -124
  187. package/dist/esm/picker.taro-9ad1b7c5.js +0 -473
  188. package/dist/esm/popover.taro-ad5e76ea.js +0 -156
  189. package/dist/esm/popup.taro-01676bff.js +0 -137
  190. package/dist/esm/price.taro-776ed16e.js +0 -83
  191. package/dist/esm/progress.taro-f0ce38e9.js +0 -90
  192. package/dist/esm/pulltorefresh.taro-a294f656.js +0 -181
  193. package/dist/esm/radio.taro-a6eff96c.js +0 -168
  194. package/dist/esm/range.taro-d8fc7656.js +0 -332
  195. package/dist/esm/rate.taro-6cdf03bd.js +0 -75
  196. package/dist/esm/row.taro-f64d4a13.js +0 -46
  197. package/dist/esm/searchbar.taro-0c25927b.js +0 -152
  198. package/dist/esm/shortpassword.taro-9ee034f7.js +0 -111
  199. package/dist/esm/sidenavbar.taro-c307b35e.js +0 -35
  200. package/dist/esm/sidenavbaritem.taro-5a7965d0.js +0 -12
  201. package/dist/esm/signature.taro-ec4e713b.js +0 -143
  202. package/dist/esm/skeleton.taro-76faf63f.js +0 -62
  203. package/dist/esm/step.taro-b7903e8c.js +0 -59
  204. package/dist/esm/steps.taro-c82d2252.js +0 -30
  205. package/dist/esm/sticky.taro-218bda37.js +0 -138
  206. package/dist/esm/subsidenavbar.taro-69cb9752.js +0 -63
  207. package/dist/esm/supports-passive-c85ef996.js +0 -18
  208. package/dist/esm/swipe.taro-ea35f07f.js +0 -177
  209. package/dist/esm/swiper.taro-7a94e211.js +0 -451
  210. package/dist/esm/swiperitem-c9e3d0d5.js +0 -29
  211. package/dist/esm/switch.taro-34ca8228.js +0 -50
  212. package/dist/esm/tabbar.taro-9acfc2fa.js +0 -59
  213. package/dist/esm/tabbaritem.taro-bf517487.js +0 -58
  214. package/dist/esm/table.taro-91fc0c01.js +0 -93
  215. package/dist/esm/tabpane.taro-4ca340ef.js +0 -23
  216. package/dist/esm/tabs.taro-6a7524a4.js +0 -140
  217. package/dist/esm/tag.taro-23ba0834.js +0 -92
  218. package/dist/esm/textarea.taro-442e7350.js +0 -94
  219. package/dist/esm/timedetail.taro-5b2f2269.js +0 -44
  220. package/dist/esm/timepannel.taro-d6e40180.js +0 -22
  221. package/dist/esm/timeselect.taro-a07036f4.js +0 -133
  222. package/dist/esm/toast.taro-d6c14811.js +0 -109
  223. package/dist/esm/trendarrow.taro-b8c5ccd9.js +0 -73
  224. package/dist/esm/typings-b9828dba.js +0 -9
  225. package/dist/esm/uploader.taro-587e6bf3.js +0 -492
  226. package/dist/esm/useClientRect-1f8ed1fe.js +0 -18
  227. package/dist/esm/useTouch-db24bb5c.js +0 -69
  228. package/dist/esm/video-f1be8a91.js +0 -67
  229. package/dist/esm/virtuallist.taro-f0b0270d.js +0 -214
  230. package/dist/esm/watermark.taro-9ce2ae37.js +0 -114
  231. package/dist/esm/zh-CN-c779e6c1.js +0 -131
package/dist/esm/Range.js CHANGED
@@ -1,16 +1,407 @@
1
- import { R as Range } from './range.taro-d8fc7656.js';
2
- import 'react';
3
- import './useTouch-db24bb5c.js';
4
- import './useClientRect-1f8ed1fe.js';
5
- import './toast.taro-d6c14811.js';
6
- import 'classnames';
7
- import './bem-350c1702.js';
8
- import '@bem-react/classname';
9
- import './icon-296a1bec.js';
10
- import './configprovider.taro-8d71eb49.js';
11
- import 'lodash.kebabcase';
12
- import './zh-CN-c779e6c1.js';
13
-
14
-
15
-
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
4
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5
+ import React__default, { useState, useRef, useEffect, useCallback } from 'react';
6
+ import { u as useTouch } from './useTouch-cf73a407.js';
7
+ import { g as getRect } from './useClientRect-56bb675b.js';
8
+ import Toast from './Toast.js';
9
+ import { useConfig } from './ConfigProvider.js';
10
+ var defaultProps = {
11
+ range: false,
12
+ hiddenRange: false,
13
+ hiddenTag: false,
14
+ min: 0,
15
+ max: 100,
16
+ step: 1,
17
+ modelValue: 0,
18
+ vertical: false,
19
+ marks: {}
20
+ };
21
+ var startValue;
22
+ var currentValue;
23
+ var Range = function Range(props) {
24
+ var _useConfig = useConfig(),
25
+ locale = _useConfig.locale;
26
+ var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),
27
+ className = _defaultProps$props.className,
28
+ range = _defaultProps$props.range,
29
+ disabled = _defaultProps$props.disabled,
30
+ activeColor = _defaultProps$props.activeColor,
31
+ inactiveColor = _defaultProps$props.inactiveColor,
32
+ buttonColor = _defaultProps$props.buttonColor,
33
+ hiddenRange = _defaultProps$props.hiddenRange,
34
+ hiddenTag = _defaultProps$props.hiddenTag,
35
+ modelValue = _defaultProps$props.modelValue,
36
+ button = _defaultProps$props.button,
37
+ vertical = _defaultProps$props.vertical,
38
+ marks = _defaultProps$props.marks,
39
+ dragStart = _defaultProps$props.dragStart,
40
+ dragEnd = _defaultProps$props.dragEnd,
41
+ onChange = _defaultProps$props.onChange,
42
+ onDragStart = _defaultProps$props.onDragStart,
43
+ onDragEnd = _defaultProps$props.onDragEnd,
44
+ minDesc = _defaultProps$props.minDesc,
45
+ maxDesc = _defaultProps$props.maxDesc,
46
+ curValueDesc = _defaultProps$props.curValueDesc;
47
+ var _defaultProps$props2 = _objectSpread(_objectSpread({}, defaultProps), props),
48
+ min = _defaultProps$props2.min,
49
+ max = _defaultProps$props2.max,
50
+ step = _defaultProps$props2.step;
51
+ min = Number(min);
52
+ max = Number(max);
53
+ step = Number(step);
54
+ var _useState = useState(0),
55
+ _useState2 = _slicedToArray(_useState, 2),
56
+ buttonIndex = _useState2[0],
57
+ SetButtonIndex = _useState2[1];
58
+ var _useState3 = useState(),
59
+ _useState4 = _slicedToArray(_useState3, 2),
60
+ initValue = _useState4[0],
61
+ SetInitValue = _useState4[1];
62
+ var _useState5 = useState('start'),
63
+ _useState6 = _slicedToArray(_useState5, 2),
64
+ dragStatus = _useState6[0],
65
+ SetDragStatus = _useState6[1];
66
+ var touch = useTouch();
67
+ var root = useRef(null);
68
+ var _useState7 = useState([]),
69
+ _useState8 = _slicedToArray(_useState7, 2),
70
+ marksList = _useState8[0],
71
+ SetMarksList = _useState8[1];
72
+ useEffect(function () {
73
+ if (typeof modelValue === 'number') {
74
+ if (!range && (modelValue < min || modelValue > max)) {
75
+ SetInitValue(0);
76
+ Toast.text("".concat(modelValue, " ").concat(locale.range.rangeText));
77
+ return;
78
+ }
79
+ SetInitValue(modelValue);
80
+ }
81
+ }, [modelValue]);
82
+ useEffect(function () {
83
+ if (marks) {
84
+ var marksKeys = Object.keys(marks);
85
+ var list = marksKeys.map(parseFloat).sort(function (a, b) {
86
+ return a - b;
87
+ }).filter(function (point) {
88
+ return point >= min && point <= max;
89
+ });
90
+ SetMarksList(list);
91
+ }
92
+ }, [marks]);
93
+ var scope = function scope() {
94
+ return Number(max) - Number(min);
95
+ };
96
+ var classes = useCallback(function () {
97
+ var prefixCls = 'nut-range';
98
+ return [prefixCls, "".concat(disabled ? "".concat(prefixCls, "-disabled") : ''), "".concat(vertical ? "".concat(prefixCls, "-vertical") : ''), "".concat(!hiddenRange ? "".concat(prefixCls, "-show-number") : '')].filter(Boolean).join(' ');
99
+ }, [disabled, vertical, hiddenRange]);
100
+ var containerClasses = useCallback(function () {
101
+ var prefixCls = 'nut-range-container';
102
+ return [prefixCls, "".concat(vertical ? "".concat(prefixCls, "-vertical") : ''), className].filter(Boolean).join(' ');
103
+ }, [vertical, className]);
104
+ var markClassName = useCallback(function (mark) {
105
+ var classPrefix = 'nut-range-mark';
106
+ var lowerBound = Number(min);
107
+ var upperBound = Number(max);
108
+ if (range) {
109
+ var _modelValue = _slicedToArray(modelValue, 2),
110
+ left = _modelValue[0],
111
+ right = _modelValue[1];
112
+ lowerBound = left;
113
+ upperBound = right;
114
+ } else {
115
+ upperBound = modelValue;
116
+ }
117
+ var isActive = mark <= upperBound && mark >= lowerBound;
118
+ return ["".concat(classPrefix, "-text"), "".concat(isActive ? "".concat(classPrefix, "-text-active") : '')].filter(Boolean).join(' ');
119
+ }, [range, modelValue, min, max]);
120
+ var _useState9 = useState(classes()),
121
+ _useState10 = _slicedToArray(_useState9, 2),
122
+ rangeName = _useState10[0],
123
+ setRangeName = _useState10[1];
124
+ var _useState11 = useState(containerClasses()),
125
+ _useState12 = _slicedToArray(_useState11, 2),
126
+ containerName = _useState12[0],
127
+ setContainerName = _useState12[1];
128
+ useEffect(function () {
129
+ setRangeName(classes());
130
+ setContainerName(containerClasses());
131
+ }, [classes, containerClasses]);
132
+ var wrapperStyle = function wrapperStyle() {
133
+ return {
134
+ background: inactiveColor
135
+ };
136
+ };
137
+ var buttonStyle = function buttonStyle() {
138
+ return {
139
+ borderColor: buttonColor
140
+ };
141
+ };
142
+ var isRange = function isRange(val) {
143
+ return !!range && Array.isArray(val);
144
+ };
145
+ var calcMainAxis = function calcMainAxis() {
146
+ var modelVal = initValue || initValue === 0 ? initValue : modelValue;
147
+ if (isRange(modelVal)) {
148
+ return "".concat((modelVal[1] - modelVal[0]) * 100 / scope(), "%");
149
+ }
150
+ return "".concat((modelVal - Number(min)) * 100 / scope(), "%");
151
+ };
152
+ var calcOffset = function calcOffset() {
153
+ var modelVal = initValue || initValue === 0 ? initValue : modelValue;
154
+ if (isRange(modelVal)) {
155
+ return "".concat((modelVal[0] - Number(min)) * 100 / scope(), "%");
156
+ }
157
+ return "0%";
158
+ };
159
+ var barStyle = function barStyle() {
160
+ if (vertical) {
161
+ return {
162
+ height: calcMainAxis(),
163
+ top: calcOffset(),
164
+ background: activeColor,
165
+ transition: dragStatus ? 'none' : undefined
166
+ };
167
+ }
168
+ return {
169
+ width: calcMainAxis(),
170
+ left: calcOffset(),
171
+ background: activeColor,
172
+ transition: dragStatus ? 'none' : undefined
173
+ };
174
+ };
175
+ var marksStyle = function marksStyle(mark) {
176
+ var style = {
177
+ left: "".concat((mark - Number(min)) / scope() * 100, "%")
178
+ };
179
+ if (vertical) {
180
+ style = {
181
+ top: "".concat((mark - Number(min)) / scope() * 100, "%")
182
+ };
183
+ }
184
+ return style;
185
+ };
186
+ var tickStyle = function tickStyle(mark) {
187
+ var lowerBound = Number(min);
188
+ var upperBound = Number(max);
189
+ if (range) {
190
+ var _modelValue2 = _slicedToArray(modelValue, 2),
191
+ left = _modelValue2[0],
192
+ right = _modelValue2[1];
193
+ lowerBound = left;
194
+ upperBound = right;
195
+ }
196
+ var isActive = mark <= upperBound && mark >= lowerBound;
197
+ var style = {
198
+ background: !isActive ? inactiveColor : activeColor
199
+ };
200
+ return style;
201
+ };
202
+ var format = function format(value) {
203
+ value = Math.max(+min, Math.min(value, +max));
204
+ return Math.round(value / +step) * +step;
205
+ };
206
+ var isSameValue = function isSameValue(newValue, oldValue) {
207
+ return JSON.stringify(newValue) === JSON.stringify(oldValue);
208
+ };
209
+ var handleOverlap = function handleOverlap(value) {
210
+ if (value[0] > value[1]) {
211
+ return value.slice(0).reverse();
212
+ }
213
+ return value;
214
+ };
215
+ var updateValue = function updateValue(value, end) {
216
+ if (isRange(value)) {
217
+ value = handleOverlap(value).map(format);
218
+ } else {
219
+ value = format(value);
220
+ }
221
+ var modelVal = initValue || initValue === 0 ? initValue : modelValue;
222
+ if (!isSameValue(value, modelVal)) {
223
+ SetInitValue(value);
224
+ }
225
+ if ((marks || end) && !isSameValue(value, startValue)) {
226
+ onChange && onChange(value);
227
+ }
228
+ };
229
+ var click = function click(event) {
230
+ if (disabled || !root.current) {
231
+ return;
232
+ }
233
+ SetDragStatus('');
234
+ var rect = getRect(root.current);
235
+ var delta = event.clientX - rect.left;
236
+ var total = rect.width;
237
+ if (vertical) {
238
+ delta = event.clientY - rect.top;
239
+ total = rect.height;
240
+ }
241
+ var value = Number(min) + delta / total * scope();
242
+ currentValue = initValue || initValue === 0 ? initValue : modelValue;
243
+ if (isRange(currentValue)) {
244
+ var _currentValue = currentValue,
245
+ _currentValue2 = _slicedToArray(_currentValue, 2),
246
+ left = _currentValue2[0],
247
+ right = _currentValue2[1];
248
+ var middle = (left + right) / 2;
249
+ if (value <= middle) {
250
+ updateValue([value, right], true);
251
+ } else {
252
+ updateValue([left, value], true);
253
+ }
254
+ } else {
255
+ updateValue(value, true);
256
+ }
257
+ };
258
+ var _onTouchStart = function onTouchStart(event) {
259
+ if (disabled) {
260
+ return;
261
+ }
262
+ touch.start(event);
263
+ currentValue = initValue || initValue === 0 ? initValue : modelValue;
264
+ if (isRange(currentValue)) {
265
+ startValue = currentValue.map(format);
266
+ } else {
267
+ startValue = format(currentValue);
268
+ }
269
+ SetDragStatus('start');
270
+ };
271
+ var _onTouchMove = function onTouchMove(event) {
272
+ if (disabled || !root.current) {
273
+ return;
274
+ }
275
+ if (dragStatus === 'start') {
276
+ dragStart && dragStart();
277
+ onDragStart && onDragStart();
278
+ }
279
+ touch.move(event);
280
+ SetDragStatus('draging');
281
+ var rect = getRect(root.current);
282
+ var delta = touch.deltaX;
283
+ var total = rect.width;
284
+ var diff = delta / total * scope();
285
+ if (vertical) {
286
+ delta = touch.deltaY;
287
+ total = rect.height;
288
+ diff = delta / total * scope();
289
+ }
290
+ if (isRange(startValue)) {
291
+ currentValue[buttonIndex] = startValue[buttonIndex] + diff;
292
+ } else {
293
+ currentValue = startValue + diff;
294
+ }
295
+ updateValue(currentValue);
296
+ };
297
+ var _onTouchEnd = function onTouchEnd(event) {
298
+ if (disabled) {
299
+ return;
300
+ }
301
+ if (dragStatus === 'draging') {
302
+ updateValue(currentValue, true);
303
+ dragEnd && dragEnd();
304
+ onDragEnd && onDragEnd();
305
+ }
306
+ SetDragStatus('');
307
+ };
308
+ var curValue = function curValue(idx) {
309
+ var modelVal = initValue || initValue === 0 ? initValue : modelValue;
310
+ var value = typeof idx === 'number' ? modelVal[idx] : modelVal;
311
+ return value;
312
+ };
313
+ return React__default.createElement("div", {
314
+ className: "".concat(containerName)
315
+ }, !hiddenRange ? React__default.createElement("div", {
316
+ className: "min"
317
+ }, minDesc || +min) : null, React__default.createElement("div", {
318
+ ref: root,
319
+ style: wrapperStyle(),
320
+ className: "".concat(rangeName),
321
+ onClick: function onClick(e) {
322
+ click(e);
323
+ }
324
+ }, marksList.length > 0 ? React__default.createElement("div", {
325
+ className: "nut-range-mark"
326
+ }, marksList.map(function (marks) {
327
+ return React__default.createElement("span", {
328
+ key: marks,
329
+ className: markClassName(marks),
330
+ style: marksStyle(marks)
331
+ }, marks, React__default.createElement("span", {
332
+ className: "nut-range-tick",
333
+ style: tickStyle(marks)
334
+ }));
335
+ })) : null, React__default.createElement("div", {
336
+ className: "nut-range-bar",
337
+ style: barStyle()
338
+ }, range ? [0, 1].map(function (item, index) {
339
+ return React__default.createElement("div", {
340
+ role: "slider",
341
+ key: index,
342
+ className: "".concat(index === 0 ? 'nut-range-button-wrapper-left' : '', "\n ").concat(index === 1 ? 'nut-range-button-wrapper-right' : ''),
343
+ tabIndex: disabled ? -1 : 0,
344
+ "aria-valuemin": +min,
345
+ "aria-valuenow": curValue(index),
346
+ "aria-valuemax": +max,
347
+ "aria-orientation": vertical ? 'vertical' : 'horizontal',
348
+ onTouchStart: function onTouchStart(e) {
349
+ if (typeof index === 'number') {
350
+ // 实时更新当前拖动的按钮索引
351
+ SetButtonIndex(index);
352
+ }
353
+ _onTouchStart(e);
354
+ },
355
+ onTouchMove: function onTouchMove(e) {
356
+ _onTouchMove(e);
357
+ },
358
+ onTouchEnd: function onTouchEnd(e) {
359
+ _onTouchEnd();
360
+ },
361
+ onTouchCancel: function onTouchCancel(e) {
362
+ _onTouchEnd();
363
+ },
364
+ onClick: function onClick(e) {
365
+ e.stopPropagation();
366
+ }
367
+ }, button || React__default.createElement("div", {
368
+ className: "nut-range-button",
369
+ style: buttonStyle()
370
+ }, !hiddenTag ? React__default.createElement("div", {
371
+ className: "number"
372
+ }, curValueDesc || curValue(index)) : null));
373
+ }) : React__default.createElement("div", {
374
+ role: "slider",
375
+ className: "nut-range-button-wrapper",
376
+ tabIndex: disabled ? -1 : 0,
377
+ "aria-valuemin": +min,
378
+ "aria-valuenow": curValue(),
379
+ "aria-valuemax": +max,
380
+ "aria-orientation": vertical ? 'vertical' : 'horizontal',
381
+ onTouchStart: function onTouchStart(e) {
382
+ _onTouchStart(e);
383
+ },
384
+ onTouchMove: function onTouchMove(e) {
385
+ _onTouchMove(e);
386
+ },
387
+ onTouchEnd: function onTouchEnd(e) {
388
+ _onTouchEnd();
389
+ },
390
+ onTouchCancel: function onTouchCancel(e) {
391
+ _onTouchEnd();
392
+ },
393
+ onClick: function onClick(e) {
394
+ e.stopPropagation();
395
+ }
396
+ }, button || React__default.createElement("div", {
397
+ className: "nut-range-button",
398
+ style: buttonStyle()
399
+ }, !hiddenTag ? React__default.createElement("div", {
400
+ className: "number"
401
+ }, curValueDesc || curValue()) : null)))), !hiddenRange ? React__default.createElement("div", {
402
+ className: "max"
403
+ }, maxDesc || +max) : null);
404
+ };
405
+ Range.defaultProps = defaultProps;
406
+ Range.displayName = 'NutRange';
16
407
  export { Range as default };
package/dist/esm/Rate.js CHANGED
@@ -1,11 +1,123 @@
1
- import { R as Rate } from './rate.taro-6cdf03bd.js';
2
- import 'react';
3
- import 'classnames';
4
- import './bem-350c1702.js';
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
4
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5
+ import React__default, { useState, useEffect } from 'react';
6
+ import classNames from 'classnames';
7
+ import { c as cn } from './bem-3b438e61.js';
8
+ import Icon from './Icon.js';
9
+ import { C as ComponentDefaults } from './typings-f27b58f4.js';
5
10
  import '@bem-react/classname';
6
- import './icon-296a1bec.js';
7
- import './typings-b9828dba.js';
8
-
9
-
10
-
11
+ var defaultProps = _objectSpread(_objectSpread({}, ComponentDefaults), {}, {
12
+ count: 5,
13
+ modelValue: 0,
14
+ minimizeValue: 0,
15
+ iconSize: 18,
16
+ activeColor: '',
17
+ voidColor: '',
18
+ checkedIcon: 'star-fill-n',
19
+ uncheckedIcon: 'star-n',
20
+ disabled: false,
21
+ readonly: false,
22
+ allowHalf: false,
23
+ spacing: 14
24
+ });
25
+ var Rate = function Rate(props) {
26
+ var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),
27
+ className = _defaultProps$props.className,
28
+ style = _defaultProps$props.style,
29
+ count = _defaultProps$props.count,
30
+ modelValue = _defaultProps$props.modelValue,
31
+ minimizeValue = _defaultProps$props.minimizeValue,
32
+ iconSize = _defaultProps$props.iconSize,
33
+ activeColor = _defaultProps$props.activeColor,
34
+ voidColor = _defaultProps$props.voidColor,
35
+ checkedIcon = _defaultProps$props.checkedIcon,
36
+ uncheckedIcon = _defaultProps$props.uncheckedIcon,
37
+ disabled = _defaultProps$props.disabled,
38
+ readonly = _defaultProps$props.readonly,
39
+ allowHalf = _defaultProps$props.allowHalf,
40
+ spacing = _defaultProps$props.spacing,
41
+ onChange = _defaultProps$props.onChange,
42
+ iconClassPrefix = _defaultProps$props.iconClassPrefix,
43
+ iconFontClassName = _defaultProps$props.iconFontClassName;
44
+ var b = cn('rate');
45
+ var bi = cn('rate-item');
46
+ var _useState = useState([1, 2, 3, 4, 5]),
47
+ _useState2 = _slicedToArray(_useState, 2),
48
+ countArray = _useState2[0],
49
+ setCountArray = _useState2[1];
50
+ var _useState3 = useState(0),
51
+ _useState4 = _slicedToArray(_useState3, 2),
52
+ score = _useState4[0],
53
+ setScore = _useState4[1];
54
+ useEffect(function () {
55
+ var tmp = [];
56
+ for (var i = 1; i <= Number(count); i++) {
57
+ tmp.push(i);
58
+ }
59
+ setCountArray(tmp);
60
+ }, [count]);
61
+ useEffect(function () {
62
+ setScore(Math.max(Number(modelValue), Number(minimizeValue)));
63
+ }, [modelValue]);
64
+ var pxCheck = function pxCheck(value) {
65
+ return Number.isNaN(Number(value)) ? String(value) : "".concat(value, "px");
66
+ };
67
+ var _onClick = function onClick(e, index) {
68
+ e.preventDefault();
69
+ e.stopPropagation();
70
+ if (disabled || readonly) return;
71
+ var value = 0;
72
+ if (!(index === 1 && score === index)) {
73
+ value = index;
74
+ if (allowHalf) {
75
+ if ((e === null || e === void 0 ? void 0 : e.target).className.includes('__icon--half')) {
76
+ value -= 0.5;
77
+ }
78
+ }
79
+ }
80
+ value = Math.max(value, Number(minimizeValue));
81
+ setScore(value);
82
+ onChange && onChange(value);
83
+ };
84
+ return React__default.createElement("div", {
85
+ className: classNames(b(), className),
86
+ style: style
87
+ }, countArray.map(function (n) {
88
+ return React__default.createElement("div", {
89
+ className: bi(),
90
+ key: n,
91
+ onClick: function onClick(event) {
92
+ return _onClick(event, n);
93
+ },
94
+ style: {
95
+ marginRight: pxCheck(spacing)
96
+ }
97
+ }, React__default.createElement(Icon, {
98
+ classPrefix: iconClassPrefix,
99
+ fontClassName: iconFontClassName,
100
+ size: iconSize,
101
+ className: classNames(bi('icon'), _defineProperty({}, bi('icon--disabled'), disabled || n > score)),
102
+ name: n <= score ? checkedIcon : uncheckedIcon,
103
+ color: n <= score ? activeColor : voidColor
104
+ }), allowHalf && score > n - 1 && React__default.createElement(Icon, {
105
+ classPrefix: iconClassPrefix,
106
+ fontClassName: iconFontClassName,
107
+ className: "".concat(bi('icon'), " ").concat(bi('icon--half')),
108
+ color: n <= score ? activeColor : voidColor,
109
+ size: iconSize,
110
+ name: checkedIcon
111
+ }), allowHalf && score < n - 1 && React__default.createElement(Icon, {
112
+ classPrefix: iconClassPrefix,
113
+ fontClassName: iconFontClassName,
114
+ className: "".concat(bi('icon'), " ").concat(bi('icon--disabled'), " ").concat(bi('icon--half')),
115
+ color: voidColor,
116
+ size: iconSize,
117
+ name: uncheckedIcon
118
+ }));
119
+ }));
120
+ };
121
+ Rate.defaultProps = defaultProps;
122
+ Rate.displayName = 'NutRate';
11
123
  export { Rate as default };
package/dist/esm/Row.js CHANGED
@@ -1,8 +1,50 @@
1
- import { R as Row } from './row.taro-f64d4a13.js';
2
- import 'react';
3
- import 'classnames';
4
- import './UserContext-0aac9a82.js';
5
-
6
-
7
-
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
3
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
+ import React__default from 'react';
5
+ import classNames from 'classnames';
6
+ import { D as DataContext } from './UserContext-101ad4a4.js';
7
+ var defaultProps = {
8
+ type: '',
9
+ justify: 'start',
10
+ align: 'flex-start',
11
+ wrap: 'nowrap',
12
+ gutter: '0'
13
+ };
14
+ var Row = function Row(props) {
15
+ var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),
16
+ className = _defaultProps$props.className,
17
+ _defaultProps$props$s = _defaultProps$props.style,
18
+ style = _defaultProps$props$s === void 0 ? {} : _defaultProps$props$s,
19
+ children = _defaultProps$props.children,
20
+ type = _defaultProps$props.type,
21
+ justify = _defaultProps$props.justify,
22
+ align = _defaultProps$props.align,
23
+ wrap = _defaultProps$props.wrap,
24
+ gutter = _defaultProps$props.gutter,
25
+ _onClick = _defaultProps$props.onClick;
26
+ var prefixCls = 'nut-row';
27
+ var getClass = function getClass(prefix, type) {
28
+ var classType = type ? "nut-row-".concat(prefix, "-").concat(type) : '';
29
+ var className = prefix ? classType : "nut-row-".concat(type);
30
+ return className;
31
+ };
32
+ var getClasses = function getClasses() {
33
+ return "\n ".concat(getClass('', type), "\n ").concat(getClass('justify', justify), "\n ").concat(getClass('align', align), "\n ").concat(getClass('flex', wrap), "\n ").concat(prefixCls, "\n ");
34
+ };
35
+ var parentRow = {
36
+ gutter: gutter
37
+ };
38
+ return React__default.createElement(DataContext.Provider, {
39
+ value: parentRow
40
+ }, React__default.createElement('div', {
41
+ className: classNames(getClasses(), className),
42
+ style: style,
43
+ onClick: function onClick(e) {
44
+ _onClick && _onClick(e, 'row');
45
+ }
46
+ }, children));
47
+ };
48
+ Row.defaultProps = defaultProps;
49
+ Row.displayName = 'NutRow';
8
50
  export { Row as default };