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

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 (232) hide show
  1. package/CHANGELOG.md +7 -1
  2. package/dist/esm/ActionSheet.js +14 -90
  3. package/dist/esm/Address.js +21 -620
  4. package/dist/esm/Animate.js +7 -53
  5. package/dist/esm/AnimatingNumbers.js +7 -125
  6. package/dist/esm/Audio.js +19 -264
  7. package/dist/esm/Avatar.js +11 -130
  8. package/dist/esm/{AvatarContext-15733596.js → AvatarContext-c96afdcc.js} +3 -1
  9. package/dist/esm/AvatarGroup.js +11 -41
  10. package/dist/esm/BackTop.js +10 -138
  11. package/dist/esm/Badge.js +9 -71
  12. package/dist/esm/Barrage.js +8 -97
  13. package/dist/esm/Button.js +9 -108
  14. package/dist/esm/Calendar.js +20 -128
  15. package/dist/esm/CalendarItem.js +12 -674
  16. package/dist/esm/Card.js +11 -61
  17. package/dist/esm/Cascader.js +16 -671
  18. package/dist/esm/Cell.js +9 -101
  19. package/dist/esm/CellGroup.js +5 -2
  20. package/dist/esm/Checkbox.js +7 -5
  21. package/dist/esm/CheckboxGroup.js +8 -111
  22. package/dist/esm/CircleProgress.js +8 -114
  23. package/dist/esm/Col.js +7 -57
  24. package/dist/esm/Collapse.js +7 -97
  25. package/dist/esm/CollapseItem.js +8 -146
  26. package/dist/esm/ConfigProvider.js +8 -187
  27. package/dist/esm/CountDown.js +9 -247
  28. package/dist/esm/DatePicker.js +25 -309
  29. package/dist/esm/Dialog.js +17 -296
  30. package/dist/esm/Divider.js +7 -34
  31. package/dist/esm/Drag.js +7 -118
  32. package/dist/esm/Elevator.js +8 -234
  33. package/dist/esm/Ellipsis.js +10 -176
  34. package/dist/esm/Empty.js +8 -79
  35. package/dist/esm/FixedNav.js +14 -103
  36. package/dist/esm/Form.js +10 -215
  37. package/dist/esm/FormItem.js +10 -3
  38. package/dist/esm/Grid.js +11 -81
  39. package/dist/esm/GridItem.js +13 -123
  40. package/dist/esm/Icon.js +5 -2
  41. package/dist/esm/Image.js +11 -169
  42. package/dist/esm/ImagePreview.js +19 -225
  43. package/dist/esm/Indicator.js +7 -50
  44. package/dist/esm/Infiniteloading.js +14 -215
  45. package/dist/esm/Input.js +12 -362
  46. package/dist/esm/InputNumber.js +9 -275
  47. package/dist/esm/Layout.js +5 -13
  48. package/dist/esm/Menu.js +10 -153
  49. package/dist/esm/MenuItem.js +15 -175
  50. package/dist/esm/NavBar.js +9 -114
  51. package/dist/esm/NoticeBar.js +10 -568
  52. package/dist/esm/Notify.js +8 -234
  53. package/dist/esm/NumberKeyboard.js +17 -247
  54. package/dist/esm/Overlay.js +6 -2
  55. package/dist/esm/Pagination.js +9 -168
  56. package/dist/esm/Picker.js +22 -494
  57. package/dist/esm/Popover.js +12 -223
  58. package/dist/esm/Popup.js +13 -193
  59. package/dist/esm/Price.js +6 -84
  60. package/dist/esm/Progress.js +9 -122
  61. package/dist/esm/PullToRefresh.js +13 -276
  62. package/dist/esm/Radio.js +8 -4
  63. package/dist/esm/RadioGroup.js +7 -120
  64. package/dist/esm/Range.js +15 -406
  65. package/dist/esm/Rate.js +9 -121
  66. package/dist/esm/Row.js +7 -49
  67. package/dist/esm/SearchBar.js +12 -235
  68. package/dist/esm/ShortPassword.js +17 -191
  69. package/dist/esm/SideNavBar.js +19 -57
  70. package/dist/esm/SideNavBarItem.js +5 -24
  71. package/dist/esm/Signature.js +13 -153
  72. package/dist/esm/Skeleton.js +12 -98
  73. package/dist/esm/Step.js +10 -87
  74. package/dist/esm/Steps.js +8 -38
  75. package/dist/esm/Sticky.js +11 -190
  76. package/dist/esm/SubSideNavBar.js +6 -78
  77. package/dist/esm/Swipe.js +10 -230
  78. package/dist/esm/Swiper.js +9 -490
  79. package/dist/esm/SwiperItem.js +8 -36
  80. package/dist/esm/Switch.js +6 -71
  81. package/dist/esm/TabPane.js +5 -2
  82. package/dist/esm/Tabbar.js +6 -68
  83. package/dist/esm/TabbarItem.js +9 -78
  84. package/dist/esm/Table.js +12 -140
  85. package/dist/esm/Tabs.js +8 -5
  86. package/dist/esm/Tag.js +10 -110
  87. package/dist/esm/TextArea.js +9 -148
  88. package/dist/esm/TimeDetail.js +9 -67
  89. package/dist/esm/TimePannel.js +9 -29
  90. package/dist/esm/TimeSelect.js +19 -171
  91. package/dist/esm/Toast.js +7 -268
  92. package/dist/esm/TrendArrow.js +7 -99
  93. package/dist/esm/Uploader.js +17 -566
  94. package/dist/esm/{UserContext-101ad4a4.js → UserContext-0aac9a82.js} +3 -1
  95. package/dist/esm/{UserContext-2629d479.js → UserContext-e402e1a6.js} +3 -1
  96. package/dist/esm/{UserContext-b33bcf21.js → UserContext-e8176108.js} +3 -1
  97. package/dist/esm/Video.js +7 -90
  98. package/dist/esm/VirtualList.js +9 -313
  99. package/dist/esm/WaterMark.js +11 -111
  100. package/dist/esm/actionsheet.taro-e6a51446.js +53 -0
  101. package/dist/esm/address.taro-3a9b6396.js +461 -0
  102. package/dist/esm/animate.taro-fb7986d6.js +40 -0
  103. package/dist/esm/animatingnumbers.taro-03e5d61d.js +104 -0
  104. package/dist/esm/audio.taro-87ec8bf2.js +161 -0
  105. package/dist/esm/avatar.taro-3676f38f.js +103 -0
  106. package/dist/esm/avatargroup-f3574510.js +34 -0
  107. package/dist/esm/backtop.taro-66394a36.js +48 -0
  108. package/dist/esm/badge.taro-a4e59c11.js +52 -0
  109. package/dist/esm/barrage.taro-0495a1b2.js +94 -0
  110. package/dist/esm/{bem-3b438e61.js → bem-350c1702.js} +3 -6
  111. package/dist/esm/button.taro-9244d065.js +100 -0
  112. package/dist/esm/calendar.taro-670842ea.js +65 -0
  113. package/dist/esm/calendaritem.taro-2a603571.js +787 -0
  114. package/dist/esm/can-use-dom-3eeb5af4.js +6 -0
  115. package/dist/esm/card.taro-e4c76dad.js +33 -0
  116. package/dist/esm/cascader.taro-a5553aa5.js +437 -0
  117. package/dist/esm/cell.taro-a10a74d3.js +64 -0
  118. package/dist/esm/cellgroup.taro-abe501bc.js +25 -0
  119. package/dist/esm/checkbox.taro-6120e3e3.js +171 -0
  120. package/dist/esm/circleprogress.taro-79854448.js +109 -0
  121. package/dist/esm/col.taro-53eed3cc.js +41 -0
  122. package/dist/esm/collapse.taro-1a9e4ba2.js +83 -0
  123. package/dist/esm/collapseitem-4d0bc55d.js +83 -0
  124. package/dist/esm/configprovider-67d19d3a.js +19 -0
  125. package/dist/esm/configprovider.taro-8d71eb49.js +42 -0
  126. package/dist/esm/countdown.taro-5b17c607.js +226 -0
  127. package/dist/esm/datepicker.taro-477ad357.js +275 -0
  128. package/dist/esm/dialog.taro-a3267d29.js +118 -0
  129. package/dist/esm/divider.taro-26d1d8b4.js +35 -0
  130. package/dist/esm/drag.taro-79bb8744.js +110 -0
  131. package/dist/esm/elevator.taro-6019669e.js +178 -0
  132. package/dist/esm/ellipsis.taro-f15f26da.js +241 -0
  133. package/dist/esm/empty.taro-04ae4389.js +62 -0
  134. package/dist/esm/fixednav.taro-1f05acaf.js +53 -0
  135. package/dist/esm/form.taro-0b399b30.js +178 -0
  136. package/dist/esm/formitem.taro-190a3326.js +89 -0
  137. package/dist/esm/get-scroll-parent-b4a07e65.js +25 -0
  138. package/dist/esm/grid.taro-3503b82c.js +61 -0
  139. package/dist/esm/{grid.context-2ee27d95.js → grid.taro.context-c2bbfb4f.js} +4 -2
  140. package/dist/esm/griditem.taro-cdb3f119.js +98 -0
  141. package/dist/esm/icon-296a1bec.js +63 -0
  142. package/dist/esm/icon.taro-296a1bec.js +63 -0
  143. package/dist/esm/image.taro-142cf512.js +64 -0
  144. package/dist/esm/imagepreview.taro-c50bb0a3.js +167 -0
  145. package/dist/esm/index-5bcb0ff8.js +7 -0
  146. package/dist/esm/indicator.taro-cba8b010.js +37 -0
  147. package/dist/esm/infiniteloading.taro-183bccbf.js +144 -0
  148. package/dist/esm/input.taro-97af6c96.js +240 -0
  149. package/dist/esm/inputnumber.taro-91f65d17.js +130 -0
  150. package/dist/esm/layout.taro-9046d093.js +11 -0
  151. package/dist/esm/menu.taro-7e4038a1.js +99 -0
  152. package/dist/esm/menuitem.taro-96cc4f15.js +130 -0
  153. package/dist/esm/navbar.taro-777c4705.js +79 -0
  154. package/dist/esm/noticebar.taro-4a23cdee.js +448 -0
  155. package/dist/esm/notify.taro-e17c6f82.js +75 -0
  156. package/dist/esm/numberkeyboard.taro-1bc24744.js +159 -0
  157. package/dist/esm/nutui-react.es.js +119 -94
  158. package/dist/esm/offsetContext-c2a746fa.js +5 -0
  159. package/dist/esm/overlay.taro-21e87fb1.js +69 -0
  160. package/dist/esm/pagination.taro-715a173b.js +124 -0
  161. package/dist/esm/picker.taro-0073eeaa.js +472 -0
  162. package/dist/esm/popover.taro-ad5e76ea.js +156 -0
  163. package/dist/esm/popup.taro-01676bff.js +137 -0
  164. package/dist/esm/price.taro-776ed16e.js +83 -0
  165. package/dist/esm/progress.taro-f0ce38e9.js +90 -0
  166. package/dist/esm/pulltorefresh.taro-a294f656.js +181 -0
  167. package/dist/esm/radio.taro-a6eff96c.js +168 -0
  168. package/dist/esm/range.taro-d8fc7656.js +332 -0
  169. package/dist/esm/rate.taro-6cdf03bd.js +75 -0
  170. package/dist/esm/row.taro-f64d4a13.js +46 -0
  171. package/dist/esm/searchbar.taro-0c25927b.js +152 -0
  172. package/dist/esm/shortpassword.taro-9ee034f7.js +111 -0
  173. package/dist/esm/sidenavbar.taro-c307b35e.js +35 -0
  174. package/dist/esm/sidenavbaritem.taro-5a7965d0.js +12 -0
  175. package/dist/esm/signature.taro-ec4e713b.js +143 -0
  176. package/dist/esm/skeleton.taro-76faf63f.js +62 -0
  177. package/dist/esm/step.taro-b7903e8c.js +59 -0
  178. package/dist/esm/steps.taro-c82d2252.js +30 -0
  179. package/dist/esm/sticky.taro-218bda37.js +138 -0
  180. package/dist/esm/subsidenavbar.taro-69cb9752.js +63 -0
  181. package/dist/esm/supports-passive-c85ef996.js +18 -0
  182. package/dist/esm/swipe.taro-ea35f07f.js +177 -0
  183. package/dist/esm/swiper.taro-7a94e211.js +451 -0
  184. package/dist/esm/swiperitem-c9e3d0d5.js +29 -0
  185. package/dist/esm/switch.taro-34ca8228.js +50 -0
  186. package/dist/esm/tabbar.taro-9acfc2fa.js +59 -0
  187. package/dist/esm/tabbaritem.taro-bf517487.js +58 -0
  188. package/dist/esm/table.taro-91fc0c01.js +93 -0
  189. package/dist/esm/tabpane.taro-4ca340ef.js +23 -0
  190. package/dist/esm/tabs.taro-6a7524a4.js +140 -0
  191. package/dist/esm/tag.taro-23ba0834.js +92 -0
  192. package/dist/esm/textarea.taro-442e7350.js +94 -0
  193. package/dist/esm/timedetail.taro-5b2f2269.js +44 -0
  194. package/dist/esm/timepannel.taro-d6e40180.js +22 -0
  195. package/dist/esm/timeselect.taro-a07036f4.js +133 -0
  196. package/dist/esm/toast.taro-d6c14811.js +109 -0
  197. package/dist/esm/trendarrow.taro-b8c5ccd9.js +73 -0
  198. package/dist/esm/typings-b9828dba.js +9 -0
  199. package/dist/esm/uploader.taro-587e6bf3.js +492 -0
  200. package/dist/esm/useClientRect-1f8ed1fe.js +18 -0
  201. package/dist/esm/useTouch-db24bb5c.js +69 -0
  202. package/dist/esm/video-f1be8a91.js +67 -0
  203. package/dist/esm/virtuallist.taro-f0b0270d.js +214 -0
  204. package/dist/esm/watermark.taro-9ce2ae37.js +114 -0
  205. package/dist/esm/zh-CN-c779e6c1.js +131 -0
  206. package/dist/locales/base.js +1 -1
  207. package/dist/locales/en-US.js +1 -1
  208. package/dist/locales/id-ID.js +1 -1
  209. package/dist/locales/zh-CN.js +1 -1
  210. package/dist/locales/zh-TW.js +1 -1
  211. package/dist/locales/zh-UG.js +1 -1
  212. package/dist/nutui.react.mjs +13028 -14863
  213. package/dist/nutui.react.umd.js +13027 -14864
  214. package/dist/style.mjs +1 -1
  215. package/dist/types/index.d.ts +176 -183
  216. package/package.json +1 -1
  217. package/dist/esm/cellgroup-fcc72767.js +0 -34
  218. package/dist/esm/checkbox-44e13cd0.js +0 -137
  219. package/dist/esm/date-c7aad4c0.js +0 -97
  220. package/dist/esm/formitem-8a73a5fb.js +0 -157
  221. package/dist/esm/get-scroll-parent-5f85dee8.js +0 -24
  222. package/dist/esm/icon-4ef1581c.js +0 -70
  223. package/dist/esm/index-030b7245.js +0 -11
  224. package/dist/esm/offsetContext-3ab00d40.js +0 -16
  225. package/dist/esm/overlay-de6c79d5.js +0 -83
  226. package/dist/esm/radio-9f141e6b.js +0 -118
  227. package/dist/esm/render-bbebb760.js +0 -79
  228. package/dist/esm/tabpane-01075e6c.js +0 -29
  229. package/dist/esm/tabs-e1b4e4b1.js +0 -181
  230. package/dist/esm/typings-f27b58f4.js +0 -8
  231. package/dist/esm/useClientRect-56bb675b.js +0 -39
  232. package/dist/esm/useTouch-cf73a407.js +0 -99
@@ -1,36 +1,9 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- var _excluded = ["children", "contentPosition", "dashed", "hairline", "styles", "className", "direction"];
4
- 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; }
5
- 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; }
6
- import React__default from 'react';
7
- import classNames from 'classnames';
8
- import { c as cn } from './bem-3b438e61.js';
1
+ import { D as Divider } from './divider.taro-26d1d8b4.js';
2
+ import 'react';
3
+ import 'classnames';
4
+ import './bem-350c1702.js';
9
5
  import '@bem-react/classname';
10
- var defaultProps = {
11
- contentPosition: 'center',
12
- dashed: false,
13
- hairline: true,
14
- direction: 'horizontal'
15
- };
16
- var Divider = function Divider(props) {
17
- var _classNames, _classNames2;
18
- var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),
19
- children = _defaultProps$props.children,
20
- contentPosition = _defaultProps$props.contentPosition,
21
- dashed = _defaultProps$props.dashed,
22
- hairline = _defaultProps$props.hairline,
23
- styles = _defaultProps$props.styles,
24
- className = _defaultProps$props.className,
25
- direction = _defaultProps$props.direction,
26
- rest = _objectWithoutProperties(_defaultProps$props, _excluded);
27
- var dividerBem = cn('divider');
28
- var classes = direction === 'horizontal' ? classNames((_classNames = {}, _defineProperty(_classNames, dividerBem(), true), _defineProperty(_classNames, dividerBem('center'), children), _defineProperty(_classNames, dividerBem('left'), contentPosition === 'left'), _defineProperty(_classNames, dividerBem('right'), contentPosition === 'right'), _defineProperty(_classNames, dividerBem('dashed'), dashed), _defineProperty(_classNames, dividerBem('hairline'), hairline), _classNames)) : classNames((_classNames2 = {}, _defineProperty(_classNames2, dividerBem(), true), _defineProperty(_classNames2, dividerBem('vertical'), direction === 'vertical'), _classNames2));
29
- return React__default.createElement("div", _objectSpread({
30
- className: "".concat(classes, " ").concat(className || ''),
31
- style: styles
32
- }, rest), children);
33
- };
34
- Divider.defaultProps = defaultProps;
35
- Divider.displayName = 'NutDivider';
6
+
7
+
8
+
36
9
  export { Divider as default };
package/dist/esm/Drag.js CHANGED
@@ -1,120 +1,9 @@
1
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
- import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
- var _excluded = ["attract", "direction", "boundary", "children", "className", "style"];
5
- 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; }
6
- 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; }
7
- import React__default, { useState, useRef, useEffect } from 'react';
8
- import { useDrag } from '@use-gesture/react';
9
- import { useSpring, animated } from '@react-spring/web';
10
- import { c as cn } from './bem-3b438e61.js';
1
+ import { D as Drag } from './drag.taro-79bb8744.js';
2
+ import 'react';
3
+ import '@tarojs/taro';
4
+ import './bem-350c1702.js';
11
5
  import '@bem-react/classname';
12
- var defaultProps = {
13
- attract: false,
14
- direction: undefined,
15
- boundary: {
16
- top: 0,
17
- left: 0,
18
- right: 0,
19
- bottom: 0
20
- },
21
- className: ''
22
- };
23
- var Drag = function Drag(props) {
24
- var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),
25
- attract = _defaultProps$props.attract,
26
- direction = _defaultProps$props.direction,
27
- boundary = _defaultProps$props.boundary,
28
- children = _defaultProps$props.children,
29
- className = _defaultProps$props.className,
30
- style = _defaultProps$props.style,
31
- reset = _objectWithoutProperties(_defaultProps$props, _excluded);
32
- var b = cn('drag');
33
- var _useState = useState(boundary),
34
- _useState2 = _slicedToArray(_useState, 2),
35
- boundaryState = _useState2[0],
36
- setBoundaryState = _useState2[1];
37
- var myDrag = useRef(null);
38
- var _useSpring = useSpring(function () {
39
- return {
40
- x: 0,
41
- y: 0
42
- };
43
- }),
44
- _useSpring2 = _slicedToArray(_useSpring, 2),
45
- currstyle = _useSpring2[0],
46
- api = _useSpring2[1];
47
- var middleLine = useRef(0);
48
- var getInfo = function getInfo() {
49
- var el = myDrag.current;
50
- if (el) {
51
- var offsetWidth = el.offsetWidth,
52
- offsetHeight = el.offsetHeight,
53
- offsetTop = el.offsetTop,
54
- offsetLeft = el.offsetLeft;
55
- var _document$documentEle = document.documentElement,
56
- clientWidth = _document$documentEle.clientWidth,
57
- clientHeight = _document$documentEle.clientHeight;
58
- var top = boundary.top,
59
- left = boundary.left,
60
- bottom = boundary.bottom,
61
- right = boundary.right;
62
- setBoundaryState({
63
- top: -offsetTop + top,
64
- left: -offsetLeft + left,
65
- bottom: clientHeight - offsetHeight - offsetTop - bottom,
66
- right: clientWidth - offsetWidth - offsetLeft - right
67
- });
68
- middleLine.current = clientWidth - offsetWidth - offsetLeft - (clientWidth - offsetWidth) / 2;
69
- }
70
- };
71
- var bind = useDrag(function (_ref) {
72
- var down = _ref.down,
73
- last = _ref.last,
74
- _ref$offset = _slicedToArray(_ref.offset, 2),
75
- x = _ref$offset[0],
76
- y = _ref$offset[1];
77
- api.start({
78
- x: x,
79
- y: y,
80
- immediate: down
81
- });
82
- if (last) {
83
- if (props.direction !== 'y' && props.attract) {
84
- if (x < middleLine.current) {
85
- api.start({
86
- x: boundaryState.left,
87
- y: y,
88
- immediate: down
89
- });
90
- } else {
91
- api.start({
92
- x: boundaryState.right,
93
- y: y,
94
- immediate: down
95
- });
96
- }
97
- }
98
- }
99
- }, {
100
- from: function from() {
101
- return [currstyle.x.get(), currstyle.y.get()];
102
- },
103
- axis: direction,
104
- bounds: boundaryState
105
- });
106
- useEffect(function () {
107
- getInfo();
108
- }, [myDrag]);
109
- return React__default.createElement("div", _objectSpread(_objectSpread({
110
- style: style,
111
- className: "".concat(b(), " ").concat(className)
112
- }, reset), {}, {
113
- ref: myDrag
114
- }), React__default.createElement(animated.div, _objectSpread({
115
- style: currstyle
116
- }, bind()), children));
117
- };
118
- Drag.defaultProps = defaultProps;
119
- Drag.displayName = 'NutDrag';
6
+
7
+
8
+
120
9
  export { Drag as default };
@@ -1,236 +1,10 @@
1
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
- import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
- var _excluded = ["height", "acceptKey", "indexList", "isSticky", "spaceHeight", "titleHeight", "className", "onClickItem", "onClickIndex", "children"];
5
- 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; }
6
- 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; }
7
- import React__default, { createContext, useRef, useState, useEffect } from 'react';
8
- import { useGesture } from '@use-gesture/react';
9
- import { animated } from '@react-spring/web';
10
- import { c as cn } from './bem-3b438e61.js';
1
+ import { E as Elevator } from './elevator.taro-6019669e.js';
2
+ import 'react';
3
+ import '@tarojs/taro';
4
+ import '@tarojs/components';
5
+ import './bem-350c1702.js';
11
6
  import '@bem-react/classname';
12
- var elevatorContext = createContext({});
13
- var defaultProps = {
14
- height: '200px',
15
- acceptKey: 'title',
16
- indexList: [],
17
- isSticky: false,
18
- spaceHeight: 23,
19
- titleHeight: 35,
20
- className: ''
21
- };
22
- var Elevator = function Elevator(props) {
23
- var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),
24
- height = _defaultProps$props.height,
25
- acceptKey = _defaultProps$props.acceptKey,
26
- indexList = _defaultProps$props.indexList,
27
- isSticky = _defaultProps$props.isSticky,
28
- spaceHeight = _defaultProps$props.spaceHeight,
29
- titleHeight = _defaultProps$props.titleHeight,
30
- className = _defaultProps$props.className,
31
- onClickItem = _defaultProps$props.onClickItem,
32
- onClickIndex = _defaultProps$props.onClickIndex,
33
- children = _defaultProps$props.children,
34
- rest = _objectWithoutProperties(_defaultProps$props, _excluded);
35
- var b = cn('elevator');
36
- var listview = useRef(null);
37
- var initData = {
38
- anchorIndex: 0,
39
- listHeight: [],
40
- listGroup: [],
41
- scrollY: 0
42
- };
43
- var touchState = useRef({
44
- y1: 0,
45
- y2: 0
46
- });
47
- var _useState = useState(0),
48
- _useState2 = _slicedToArray(_useState, 2),
49
- scrollY = _useState2[0],
50
- setScrollY = _useState2[1];
51
- var _useState3 = useState({}),
52
- _useState4 = _slicedToArray(_useState3, 2),
53
- currentData = _useState4[0],
54
- setCurrentData = _useState4[1];
55
- var _useState5 = useState(''),
56
- _useState6 = _slicedToArray(_useState5, 2),
57
- currentKey = _useState6[0],
58
- setCurrentKey = _useState6[1];
59
- var _useState7 = useState(0),
60
- _useState8 = _slicedToArray(_useState7, 2),
61
- currentIndex = _useState8[0],
62
- setCurrentIndex = _useState8[1];
63
- var _useState9 = useState(0),
64
- _useState10 = _slicedToArray(_useState9, 2),
65
- codeIndex = _useState10[0],
66
- setCodeIndex = _useState10[1];
67
- var _useState11 = useState(false),
68
- _useState12 = _slicedToArray(_useState11, 2),
69
- scrollStart = _useState12[0],
70
- setScrollStart = _useState12[1];
71
- var state = useRef(initData);
72
- // 重置滚动参数
73
- var resetScrollState = function resetScrollState() {
74
- setScrollStart(false);
75
- };
76
- var getData = function getData(el, name) {
77
- var prefix = 'data-';
78
- return el.getAttribute(prefix + name);
79
- };
80
- var calculateHeight = function calculateHeight() {
81
- var height = 0;
82
- state.current.listHeight.push(height);
83
- for (var i = 0; i < state.current.listGroup.length; i++) {
84
- var item = state.current.listGroup[i];
85
- height += item.clientHeight;
86
- state.current.listHeight.push(height);
87
- }
88
- };
89
- var scrollTo = function scrollTo(index) {
90
- if (!index && index !== 0) {
91
- return;
92
- }
93
- if (!state.current.listHeight.length) {
94
- calculateHeight();
95
- }
96
- var cacheIndex = index;
97
- if (index < 0) {
98
- cacheIndex = 0;
99
- }
100
- if (index > state.current.listHeight.length - 2) {
101
- cacheIndex = state.current.listHeight.length - 2;
102
- }
103
- setCodeIndex(cacheIndex);
104
- if (listview.current) {
105
- listview.current.scrollTo(0, state.current.listHeight[cacheIndex]);
106
- }
107
- };
108
- var bind = useGesture({
109
- onDragStart: function onDragStart(_ref) {
110
- var target = _ref.target,
111
- offset = _ref.offset;
112
- setScrollStart(true);
113
- var index = Number(getData(target, 'index'));
114
- touchState.current.y1 = offset[1];
115
- state.current.anchorIndex = +index;
116
- setCodeIndex(function (codeIndex) {
117
- return codeIndex + index;
118
- });
119
- scrollTo(index);
120
- },
121
- onDragEnd: function onDragEnd(_ref2) {
122
- var offset = _ref2.offset;
123
- touchState.current.y2 = offset[1];
124
- var delta = (touchState.current.y2 - touchState.current.y1) / spaceHeight || 0;
125
- // delta 是一个浮点数, 需要四舍五入一下, 否则页面会找不到最终计算后的index
126
- var cacheIndex = state.current.anchorIndex + Math.ceil(delta);
127
- setCodeIndex(cacheIndex);
128
- scrollTo(cacheIndex);
129
- resetScrollState();
130
- }
131
- });
132
- var handleClickItem = function handleClickItem(key, item) {
133
- onClickItem && onClickItem(key, item);
134
- setCurrentData(item);
135
- setCurrentKey(key);
136
- };
137
- var handleClickIndex = function handleClickIndex(key) {
138
- onClickIndex && onClickIndex(key);
139
- };
140
- var setListGroup = function setListGroup() {
141
- if (listview.current) {
142
- var els = listview.current.querySelectorAll('.nut-elevator__list__item');
143
- els.forEach(function (el) {
144
- if (el != null && !state.current.listGroup.includes(el)) {
145
- state.current.listGroup.push(el);
146
- }
147
- });
148
- }
149
- };
150
- var listViewScroll = function listViewScroll(e) {
151
- var listHeight = state.current.listHeight;
152
- if (!listHeight.length) {
153
- calculateHeight();
154
- }
155
- var target = e.target;
156
- var scrollTop = target.scrollTop;
157
- state.current.scrollY = scrollTop;
158
- setScrollY(scrollTop);
159
- for (var i = 0; i < listHeight.length - 1; i++) {
160
- var height1 = listHeight[i];
161
- var height2 = listHeight[i + 1];
162
- if (state.current.scrollY >= height1 && state.current.scrollY < height2) {
163
- setCurrentIndex(i);
164
- return;
165
- }
166
- }
167
- setCurrentIndex(listHeight.length - 2);
168
- };
169
- useEffect(function () {
170
- if (listview.current) {
171
- setListGroup();
172
- listview.current.addEventListener('scroll', listViewScroll);
173
- }
174
- }, [listview]);
175
- return React__default.createElement("div", _objectSpread({
176
- className: "".concat(b(), " ").concat(className)
177
- }, rest), isSticky && scrollY > 0 ? React__default.createElement("div", {
178
- className: b('list__fixed')
179
- }, React__default.createElement("span", {
180
- className: "fixed-title"
181
- }, indexList[currentIndex][acceptKey])) : null, React__default.createElement("div", {
182
- className: b('list'),
183
- style: {
184
- height: Number.isNaN(+height) ? height : "".concat(height, "px")
185
- }
186
- }, React__default.createElement("div", {
187
- className: b('list__inner'),
188
- ref: listview
189
- }, indexList.map(function (item, idx) {
190
- return React__default.createElement("div", {
191
- className: b('list__item'),
192
- key: idx
193
- }, React__default.createElement("div", {
194
- className: b('list__item__code')
195
- }, item[acceptKey]), React__default.createElement(React__default.Fragment, null, item.list.map(function (subitem) {
196
- return React__default.createElement("div", {
197
- className: b('list__item__name', {
198
- highcolor: currentData.id === subitem.id && currentKey === item[acceptKey]
199
- }),
200
- key: subitem.id,
201
- onClick: function onClick() {
202
- return handleClickItem(item[acceptKey], subitem);
203
- }
204
- }, children ? React__default.createElement(React__default.Fragment, null, React__default.createElement(elevatorContext.Provider, {
205
- value: subitem
206
- }, children)) : subitem.name);
207
- })));
208
- }))), indexList.length && scrollStart ? React__default.createElement("div", {
209
- className: b('code--current', {
210
- current: true
211
- })
212
- }, indexList[codeIndex][acceptKey]) : null, React__default.createElement("div", {
213
- className: b('bars')
214
- }, React__default.createElement(animated.div, _objectSpread(_objectSpread({
215
- className: b('bars__inner')
216
- }, bind()), {}, {
217
- style: {
218
- touchAction: 'pan-y'
219
- }
220
- }), indexList.map(function (item, index) {
221
- return React__default.createElement("div", {
222
- className: b('bars__inner__item', {
223
- active: item[acceptKey] === indexList[currentIndex][acceptKey]
224
- }),
225
- "data-index": index,
226
- key: index,
227
- onClick: function onClick() {
228
- return handleClickIndex(item[acceptKey]);
229
- }
230
- }, item[acceptKey]);
231
- }))));
232
- };
233
- Elevator.defaultProps = defaultProps;
234
- Elevator.displayName = 'NutElevator';
235
- Elevator.Context = elevatorContext;
7
+
8
+
9
+
236
10
  export { Elevator as default };
@@ -1,177 +1,11 @@
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, useLayoutEffect, useEffect } from 'react';
6
- import { useConfig } from './ConfigProvider.js';
7
- var defaultProps = {
8
- content: '',
9
- direction: 'end',
10
- rows: 1,
11
- expandText: '',
12
- collapseText: '',
13
- symbol: '...',
14
- lineHeight: '20'
15
- };
16
- var Ellipsis = function Ellipsis(props) {
17
- var _ellipsis$current, _ellipsis$current2;
18
- useConfig();
19
- var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),
20
- children = _defaultProps$props.children,
21
- content = _defaultProps$props.content,
22
- direction = _defaultProps$props.direction,
23
- rows = _defaultProps$props.rows,
24
- expandText = _defaultProps$props.expandText,
25
- collapseText = _defaultProps$props.collapseText,
26
- symbol = _defaultProps$props.symbol,
27
- lineHeight = _defaultProps$props.lineHeight,
28
- onClick = _defaultProps$props.onClick,
29
- onChange = _defaultProps$props.onChange;
30
- var container = null;
31
- var maxHeight = 0; // 当行的最大高度
32
- var _useState = useState(false),
33
- _useState2 = _slicedToArray(_useState, 2),
34
- exceeded = _useState2[0],
35
- setExceeded = _useState2[1];
36
- var _useState3 = useState(false),
37
- _useState4 = _slicedToArray(_useState3, 2),
38
- expanded = _useState4[0],
39
- setExpanded = _useState4[1];
40
- var ellipsis = useRef();
41
- var root = useRef(null);
42
- useLayoutEffect(function () {
43
- createContainer();
44
- }, []);
45
- useEffect(function () {
46
- if (content) {
47
- createContainer();
48
- }
49
- }, [content]);
50
- // 创建虚拟 container,内容为 contant 的内容
51
- var createContainer = function createContainer() {
52
- if (!root.current) return;
53
- var originStyle = window.getComputedStyle(root.current);
54
- container = document.createElement('div');
55
- var styleNames = Array.prototype.slice.apply(originStyle);
56
- styleNames.forEach(function (name) {
57
- container.style.setProperty(name, originStyle.getPropertyValue(name));
58
- });
59
- container.style.position = 'fixed';
60
- container.style.left = '999999px';
61
- container.style.top = '999999px';
62
- container.style.zIndex = '-1000';
63
- container.style.height = 'auto';
64
- container.style.minHeight = 'auto';
65
- container.style.maxHeight = 'auto';
66
- container.style.textOverflow = 'clip';
67
- container.style.whiteSpace = 'normal';
68
- container.style.webkitLineClamp = 'unset';
69
- container.style.display = 'block';
70
- var lineH = pxToNumber(originStyle.lineHeight === 'normal' ? lineHeight : originStyle.lineHeight);
71
- maxHeight = Math.floor(lineH * (Number(rows) + 0.5) + pxToNumber(originStyle.paddingTop) + pxToNumber(originStyle.paddingBottom));
72
- container.innerText = content;
73
- document.body.appendChild(container);
74
- calcEllipse();
75
- document.body.removeChild(container);
76
- };
77
- // 计算省略号的位置
78
- var calcEllipse = function calcEllipse() {
79
- if (container.offsetHeight <= maxHeight) {
80
- setExceeded(false);
81
- } else {
82
- setExceeded(true);
83
- var end = content.length;
84
- var middle = Math.floor((0 + end) / 2);
85
- var ellipsised = direction === 'middle' ? tailorMiddle([0, middle], [middle, end]) : tailor(0, end);
86
- ellipsis.current = ellipsised;
87
- }
88
- };
89
- // 计算 start/end 省略
90
- var tailor = function tailor(left, right) {
91
- var actionText = expanded ? collapseText : expandText;
92
- var end = content.length;
93
- if (right - left <= 1) {
94
- if (direction === 'end') {
95
- return {
96
- leading: content.slice(0, left) + symbol
97
- };
98
- }
99
- return {
100
- tailing: symbol + content.slice(right, end)
101
- };
102
- }
103
- var middle = Math.round((left + right) / 2);
104
- if (direction === 'end') {
105
- container.innerText = content.slice(0, middle) + symbol + actionText;
106
- } else {
107
- container.innerText = actionText + symbol + content.slice(middle, end);
108
- }
109
- if (container.offsetHeight <= maxHeight) {
110
- if (direction === 'end') {
111
- return tailor(middle, right);
112
- }
113
- return tailor(left, middle);
114
- }
115
- if (direction === 'end') {
116
- return tailor(left, middle);
117
- }
118
- return tailor(middle, right);
119
- };
120
- // 计算 middle 省略
121
- var tailorMiddle = function tailorMiddle(leftPart, rightPart) {
122
- var actionText = expanded ? collapseText : expandText;
123
- var end = content.length;
124
- if (leftPart[1] - leftPart[0] <= 1 && rightPart[1] - rightPart[0] <= 1) {
125
- return {
126
- leading: content.slice(0, leftPart[0]) + symbol,
127
- tailing: symbol + content.slice(rightPart[1], end)
128
- };
129
- }
130
- var leftPartMiddle = Math.floor((leftPart[0] + leftPart[1]) / 2);
131
- var rightPartMiddle = Math.ceil((rightPart[0] + rightPart[1]) / 2);
132
- container.innerText = content.slice(0, leftPartMiddle) + symbol + actionText + symbol + content.slice(rightPartMiddle, end);
133
- if (container.offsetHeight <= maxHeight) {
134
- return tailorMiddle([leftPartMiddle, leftPart[1]], [rightPart[0], rightPartMiddle]);
135
- }
136
- return tailorMiddle([leftPart[0], leftPartMiddle], [rightPartMiddle, rightPart[1]]);
137
- };
138
- var pxToNumber = function pxToNumber(value) {
139
- if (!value) return 0;
140
- var match = value.match(/^\d*(\.\d*)?/);
141
- return match ? Number(match[0]) : 0;
142
- };
143
- // 展开收起
144
- var clickHandle = function clickHandle(type) {
145
- if (type === 1) {
146
- setExpanded(true);
147
- onChange && onChange('expand');
148
- } else {
149
- setExpanded(false);
150
- onChange && onChange('collapse');
151
- }
152
- };
153
- // 文本点击
154
- var handleClick = function handleClick() {
155
- onClick && onClick();
156
- };
157
- return React__default.createElement("div", {
158
- className: "nut-ellipsis",
159
- onClick: handleClick,
160
- ref: root
161
- }, React__default.createElement("div", null, !exceeded ? content : null, exceeded && !expanded ? React__default.createElement(React__default.Fragment, null, (_ellipsis$current = ellipsis.current) === null || _ellipsis$current === void 0 ? void 0 : _ellipsis$current.leading, expandText ? React__default.createElement("span", {
162
- className: "nut-ellipsis-text",
163
- onClick: function onClick(e) {
164
- e.stopPropagation();
165
- clickHandle(1);
166
- }
167
- }, expandText) : null, (_ellipsis$current2 = ellipsis.current) === null || _ellipsis$current2 === void 0 ? void 0 : _ellipsis$current2.tailing) : null, exceeded && expanded ? React__default.createElement(React__default.Fragment, null, content, expandText ? React__default.createElement("span", {
168
- className: "nut-ellipsis-text",
169
- onClick: function onClick(e) {
170
- e.stopPropagation();
171
- clickHandle(2);
172
- }
173
- }, collapseText) : null) : null));
174
- };
175
- Ellipsis.defaultProps = defaultProps;
176
- Ellipsis.displayName = 'NutEllipsis';
1
+ import { E as Ellipsis } from './ellipsis.taro-f15f26da.js';
2
+ import 'react';
3
+ import '@tarojs/taro';
4
+ import './configprovider.taro-8d71eb49.js';
5
+ import 'lodash.kebabcase';
6
+ import './zh-CN-c779e6c1.js';
7
+ import './useClientRect-1f8ed1fe.js';
8
+
9
+
10
+
177
11
  export { Ellipsis as default };