@nutui/nutui-react-taro 1.3.1 → 1.3.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 (160) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/esm/ActionSheet.js +5 -5
  3. package/dist/esm/Address.js +11 -7
  4. package/dist/esm/Audio.js +7 -8
  5. package/dist/esm/Avatar.js +3 -3
  6. package/dist/esm/AvatarGroup.js +4 -4
  7. package/dist/esm/BackTop.js +3 -3
  8. package/dist/esm/Badge.js +3 -3
  9. package/dist/esm/Button.js +3 -3
  10. package/dist/esm/Calendar.js +8 -8
  11. package/dist/esm/CalendarItem.js +4 -4
  12. package/dist/esm/Card.js +5 -3
  13. package/dist/esm/Cascader.js +6 -7
  14. package/dist/esm/Cell.js +3 -3
  15. package/dist/esm/Checkbox.js +4 -3
  16. package/dist/esm/ConfigProvider.js +3 -3
  17. package/dist/esm/CountDown.js +4 -4
  18. package/dist/esm/DatePicker.js +9 -8
  19. package/dist/esm/Dialog.js +7 -6
  20. package/dist/esm/Elevator.js +4 -2
  21. package/dist/esm/Empty.js +4 -4
  22. package/dist/esm/FixedNav.js +6 -6
  23. package/dist/esm/Grid.js +4 -4
  24. package/dist/esm/GridItem.js +5 -5
  25. package/dist/esm/ImagePreview.js +7 -6
  26. package/dist/esm/Infiniteloading.js +5 -5
  27. package/dist/esm/Input.js +5 -5
  28. package/dist/esm/InputNumber.js +3 -3
  29. package/dist/esm/MenuItem.js +5 -5
  30. package/dist/esm/NavBar.js +3 -3
  31. package/dist/esm/NoticeBar.js +3 -3
  32. package/dist/esm/NumberKeyboard.js +7 -7
  33. package/dist/esm/Overlay.js +2 -2
  34. package/dist/esm/Pagination.js +4 -4
  35. package/dist/esm/Picker.js +8 -8
  36. package/dist/esm/Popover.js +4 -4
  37. package/dist/esm/Popup.js +4 -4
  38. package/dist/esm/Progress.js +3 -3
  39. package/dist/esm/PullToRefresh/style/index.js +2 -0
  40. package/dist/esm/PullToRefresh.js +7 -0
  41. package/dist/esm/Radio.js +4 -4
  42. package/dist/esm/RadioGroup.js +2 -2
  43. package/dist/esm/Range.js +5 -5
  44. package/dist/esm/Rate.js +3 -3
  45. package/dist/esm/SearchBar.js +5 -5
  46. package/dist/esm/ShortPassword.js +7 -7
  47. package/dist/esm/SideNavBar.js +7 -7
  48. package/dist/esm/Signature.js +6 -6
  49. package/dist/esm/Skeleton.js +4 -3
  50. package/dist/esm/Swiper.js +3 -3
  51. package/dist/esm/TabbarItem.js +3 -3
  52. package/dist/esm/Table.js +5 -5
  53. package/dist/esm/Tabs.js +3 -3
  54. package/dist/esm/Tag.js +3 -3
  55. package/dist/esm/TextArea.js +4 -4
  56. package/dist/esm/TimeDetail.js +4 -4
  57. package/dist/esm/TimePannel.js +4 -4
  58. package/dist/esm/TimeSelect.js +9 -7
  59. package/dist/esm/Toast.js +2 -3
  60. package/dist/esm/Uploader.js +4 -4
  61. package/dist/esm/VirtualList.js +4 -4
  62. package/dist/esm/{actionsheet.taro-f4d407b0.js → actionsheet.taro-1b3e7972.js} +9 -9
  63. package/dist/esm/{address.taro-4765a826.js → address.taro-f045886a.js} +48 -60
  64. package/dist/esm/{audio.taro-cd6cc93b.js → audio.taro-b34a1eb6.js} +3 -3
  65. package/dist/esm/{avatar.taro-0a0472fd.js → avatar.taro-c3a605b9.js} +1 -1
  66. package/dist/esm/{avatargroup-1ca79066.js → avatargroup-5b2584d9.js} +1 -1
  67. package/dist/esm/{backtop.taro-0e2e3946.js → backtop.taro-eb9359e8.js} +1 -1
  68. package/dist/esm/{badge.taro-eeac9de8.js → badge.taro-e6c4fe5f.js} +4 -4
  69. package/dist/esm/{button-521a516b.js → button.taro-bffc9543.js} +1 -1
  70. package/dist/esm/{calendar.taro-1abb1925.js → calendar.taro-1fc76ba0.js} +3 -3
  71. package/dist/esm/{calendaritem.taro-3c06a809.js → calendaritem.taro-11333579.js} +1 -1
  72. package/dist/esm/card.taro-2fbfbf59.js +67 -0
  73. package/dist/esm/{cascader.taro-31dbc60e.js → cascader.taro-d7e71bdf.js} +2 -2
  74. package/dist/esm/{cell.taro-3bb1b0f2.js → cell.taro-263a8927.js} +1 -1
  75. package/dist/esm/checkbox.taro-9d05ae76.js +140 -0
  76. package/dist/esm/{configprovider-9c393a29.js → configprovider-3e87d67a.js} +1 -1
  77. package/dist/esm/{configprovider.taro-1ff7f150.js → configprovider.taro-6c7b3056.js} +1 -1
  78. package/dist/esm/{countdown.taro-b00d0d46.js → countdown.taro-5d5df894.js} +1 -1
  79. package/dist/esm/{datepicker.taro-e385849d.js → datepicker.taro-318e9561.js} +22 -274
  80. package/dist/esm/{dialog.taro-c80b7b5f.js → dialog.taro-0e53ade9.js} +109 -9
  81. package/dist/esm/{elevator.taro-15b0d8c2.js → elevator.taro-8e385785.js} +39 -47
  82. package/dist/esm/{empty.taro-20b8adac.js → empty.taro-ab9c4f03.js} +1 -1
  83. package/dist/esm/{fixednav.taro-75e35339.js → fixednav.taro-6c0279ba.js} +3 -3
  84. package/dist/esm/{grid.taro-7fb43d02.js → grid.taro-5d75c0ad.js} +1 -1
  85. package/dist/esm/{griditem.taro-8020b409.js → griditem.taro-edb212e3.js} +2 -2
  86. package/dist/esm/imagepreview.taro-dae0757b.js +257 -0
  87. package/dist/esm/{infiniteloading.taro-0a86819e.js → infiniteloading.taro-067759de.js} +2 -2
  88. package/dist/esm/{input.taro-1d23861d.js → input.taro-505632ac.js} +2 -2
  89. package/dist/esm/{inputnumber.taro-75662231.js → inputnumber.taro-102203f3.js} +1 -1
  90. package/dist/esm/{menuitem.taro-56bf3205.js → menuitem.taro-0d8f50f9.js} +7 -7
  91. package/dist/esm/{navbar.taro-f2eae6a6.js → navbar.taro-2e969a0f.js} +1 -1
  92. package/dist/esm/{noticebar.taro-1890c693.js → noticebar.taro-f8bb6ae8.js} +1 -1
  93. package/dist/esm/{numberkeyboard.taro-5d685c76.js → numberkeyboard.taro-cf7d06f4.js} +2 -2
  94. package/dist/esm/nutui-react.es.js +66 -70
  95. package/dist/esm/{overlay-ed3eb37d.js → overlay.taro-be45fed5.js} +0 -0
  96. package/dist/esm/{pagination.taro-10449c4a.js → pagination.taro-62bbd23f.js} +1 -1
  97. package/dist/esm/picker.taro-62ce13e0.js +633 -0
  98. package/dist/esm/{popover.taro-9b3da0fa.js → popover.taro-0afa7cfa.js} +2 -2
  99. package/dist/esm/{popup.taro-a89dd3a1.js → popup.taro-8363fbae.js} +2 -2
  100. package/dist/esm/{progress.taro-dd93ac38.js → progress.taro-32ca3a69.js} +1 -1
  101. package/dist/esm/pulltorefresh.taro-8846f019.js +366 -0
  102. package/dist/esm/{radio.taro-32cb0172.js → radio.taro-1c63512f.js} +2 -2
  103. package/dist/esm/{radiogroup-e698d3df.js → radiogroup.taro-b5dad516.js} +0 -0
  104. package/dist/esm/{range.taro-fe08c5f4.js → range.taro-ef3b30f0.js} +2 -119
  105. package/dist/esm/{rate.taro-a0b21714.js → rate.taro-bb2e6c87.js} +1 -1
  106. package/dist/esm/{searchbar.taro-450d2f88.js → searchbar.taro-81867286.js} +2 -2
  107. package/dist/esm/{shortpassword.taro-08a05360.js → shortpassword.taro-2db97cc8.js} +3 -3
  108. package/dist/esm/{sidenavbar.taro-dd471476.js → sidenavbar.taro-e243b626.js} +2 -2
  109. package/dist/esm/{signature.taro-7cb77bab.js → signature.taro-e7369db8.js} +2 -2
  110. package/dist/esm/skeleton.taro-c19acc4e.js +109 -0
  111. package/dist/esm/{swiper.taro-7a2ef124.js → swiper.taro-448cd0ad.js} +56 -41
  112. package/dist/esm/{tabbaritem.taro-a88d3ae7.js → tabbaritem.taro-d0f2cec9.js} +1 -1
  113. package/dist/esm/{table.taro-305e0317.js → table.taro-25aeccba.js} +2 -2
  114. package/dist/esm/{tabs.taro-d1e85ea5.js → tabs.taro-d6006610.js} +1 -1
  115. package/dist/esm/{tag.taro-3bbbb557.js → tag.taro-ce9c52cd.js} +1 -1
  116. package/dist/esm/{textarea.taro-700b04c2.js → textarea.taro-388d1f90.js} +1 -1
  117. package/dist/esm/{timedetail.taro-7cc00243.js → timedetail.taro-519808cf.js} +1 -1
  118. package/dist/esm/{timepannel.taro-e24537e4.js → timepannel.taro-9904f6e6.js} +1 -1
  119. package/dist/esm/{timeselect.taro-210fd548.js → timeselect.taro-eea8d569.js} +16 -111
  120. package/dist/esm/{Notification-422905bd.js → toast.taro-d4ecd6af.js} +115 -1
  121. package/dist/esm/{uploader.taro-f7528535.js → uploader.taro-b232b2d3.js} +1 -1
  122. package/dist/esm/{virtuallist.taro-ce9619f9.js → virtuallist.taro-6858f690.js} +1 -1
  123. package/dist/esm/{zh-CN-91090ae2.js → zh-CN-14165629.js} +6 -0
  124. package/dist/locales/base.d.ts +6 -0
  125. package/dist/locales/base.js +1 -1
  126. package/dist/locales/en-US.js +7 -1
  127. package/dist/locales/id-ID.js +7 -1
  128. package/dist/locales/zh-CN.js +7 -1
  129. package/dist/locales/zh-TW.js +7 -1
  130. package/dist/nutui.react.es.js +14229 -14812
  131. package/dist/nutui.react.umd.js +14236 -14818
  132. package/dist/packages/actionsheet/actionsheet.scss +2 -0
  133. package/dist/packages/elevator/elevator.scss +1 -0
  134. package/dist/packages/pulltorefresh/pulltorefresh.scss +18 -0
  135. package/dist/style.css +1 -1
  136. package/dist/style.es.js +1 -1
  137. package/dist/styles/themes/default.scss +1 -0
  138. package/dist/types/actionsheet/actionsheet.taro.d.ts +2 -2
  139. package/dist/types/checkbox/checkbox.taro.d.ts +1 -1
  140. package/dist/types/elevator/elevator.taro.d.ts +2 -2
  141. package/dist/types/nutui.react.d.ts +3 -1
  142. package/dist/types/picker/pickerSlot.taro.d.ts +16 -0
  143. package/dist/types/popup/popup.taro.d.ts +1 -1
  144. package/dist/types/pulltorefresh/index.taro.d.ts +2 -0
  145. package/dist/types/pulltorefresh/pulltorefresh.taro.d.ts +18 -0
  146. package/dist/types/radio/radio.taro.d.ts +1 -1
  147. package/dist/types/radiogroup/index.taro.d.ts +1 -1
  148. package/dist/types/radiogroup/radiogroup.taro.d.ts +11 -0
  149. package/dist/types/timeselect/timeselect.taro.d.ts +1 -1
  150. package/package.json +2 -3
  151. package/dist/esm/button.taro-d5968f9d.js +0 -109
  152. package/dist/esm/card.taro-0861c7b3.js +0 -265
  153. package/dist/esm/checkbox.taro-6fbc4b3c.js +0 -255
  154. package/dist/esm/imagepreview.taro-a0ddd8a2.js +0 -813
  155. package/dist/esm/overlay.taro-a784329e.js +0 -94
  156. package/dist/esm/picker.taro-216cc3cb.js +0 -264
  157. package/dist/esm/pickerSlot-f8e4e542.js +0 -248
  158. package/dist/esm/popup-67173ec6.js +0 -217
  159. package/dist/esm/skeleton.taro-5934c7d7.js +0 -245
  160. package/dist/esm/toast.taro-bb181833.js +0 -122
@@ -1,19 +1,22 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
1
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
2
3
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
- var _excluded = ["visible", "footer", "noFooter", "noOkBtn", "noCancelBtn", "lockScroll", "okBtnDisabled", "cancelAutoClose", "okText", "cancelText", "onClosed", "onCancel", "onOk"],
4
- _excluded2 = ["visible", "footer", "noOkBtn", "noCancelBtn", "lockScroll", "okBtnDisabled", "cancelAutoClose", "okText", "cancelText", "onClosed", "onCancel", "onOk"];
4
+ var _excluded = ["color", "shape", "plain", "loading", "disabled", "type", "size", "block", "icon", "children", "onClick", "className", "style"],
5
+ _excluded2 = ["visible", "footer", "noFooter", "noOkBtn", "noCancelBtn", "lockScroll", "okBtnDisabled", "cancelAutoClose", "okText", "cancelText", "onClosed", "onCancel", "onOk"],
6
+ _excluded3 = ["visible", "footer", "noOkBtn", "noCancelBtn", "lockScroll", "okBtnDisabled", "cancelAutoClose", "okText", "cancelText", "onClosed", "onCancel", "onOk"];
5
7
 
6
8
  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; }
7
9
 
8
10
  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; }
9
11
 
10
12
  import * as React from 'react';
11
- import React__default, { forwardRef } from 'react';
13
+ import React__default, { useCallback, useState, useEffect, forwardRef } from 'react';
12
14
  import classNames from 'classnames';
13
- import { B as Button } from './button-521a516b.js';
15
+ import { B as Button$1 } from './button.taro-bffc9543.js';
14
16
  import { CSSTransition } from 'react-transition-group';
15
17
  import ReactDOM__default from 'react-dom';
16
- import { u as useConfig } from './configprovider-9c393a29.js';
18
+ import { I as Icon } from './icon-8dc4de10.js';
19
+ import { u as useConfig } from './configprovider.taro-6c7b3056.js';
17
20
 
18
21
  var Content = function Content(props) {
19
22
  var visible = props.visible,
@@ -126,6 +129,103 @@ var DialogWrapper = function DialogWrapper(props) {
126
129
  };
127
130
 
128
131
  DialogWrapper.displayName = 'NutDialogWrapper';
132
+ var defaultProps$2 = {
133
+ className: '',
134
+ color: '',
135
+ shape: 'round',
136
+ plain: false,
137
+ loading: false,
138
+ disabled: false,
139
+ type: 'default',
140
+ size: 'normal',
141
+ block: false,
142
+ icon: '',
143
+ style: {},
144
+ children: undefined,
145
+ onClick: function onClick(e) {}
146
+ };
147
+
148
+ var Button = function Button(props) {
149
+ var _defaultProps$2$props = _objectSpread(_objectSpread({}, defaultProps$2), props),
150
+ color = _defaultProps$2$props.color,
151
+ shape = _defaultProps$2$props.shape,
152
+ plain = _defaultProps$2$props.plain,
153
+ loading = _defaultProps$2$props.loading,
154
+ disabled = _defaultProps$2$props.disabled,
155
+ type = _defaultProps$2$props.type,
156
+ size = _defaultProps$2$props.size,
157
+ block = _defaultProps$2$props.block,
158
+ icon = _defaultProps$2$props.icon,
159
+ children = _defaultProps$2$props.children,
160
+ onClick = _defaultProps$2$props.onClick,
161
+ className = _defaultProps$2$props.className,
162
+ style = _defaultProps$2$props.style,
163
+ rest = _objectWithoutProperties(_defaultProps$2$props, _excluded);
164
+
165
+ var getStyle = useCallback(function () {
166
+ var style = {};
167
+
168
+ if (color) {
169
+ if (plain) {
170
+ style.color = color;
171
+ style.background = '#fff';
172
+
173
+ if (!(color !== null && color !== void 0 && color.includes('gradient'))) {
174
+ style.borderColor = color;
175
+ }
176
+ } else {
177
+ style.color = '#fff';
178
+ style.background = color;
179
+ }
180
+ }
181
+
182
+ return style;
183
+ }, [color, plain]);
184
+ var classes = useCallback(function () {
185
+ var prefixCls = 'nut-button';
186
+ return [prefixCls, "".concat(type ? "".concat(prefixCls, "--").concat(type) : ''), "".concat(size ? "".concat(prefixCls, "--").concat(size) : ''), "".concat(shape ? "".concat(prefixCls, "--").concat(shape) : ''), "".concat(plain ? "".concat(prefixCls, "--plain") : ''), "".concat(block ? "".concat(prefixCls, "--block") : ''), "".concat(disabled ? "".concat(prefixCls, "--disabled") : ''), "".concat(loading ? "".concat(prefixCls, "--loading") : '')].filter(Boolean).join(' ');
187
+ }, [block, disabled, loading, plain, shape, size, type]);
188
+
189
+ var _useState = useState(classes()),
190
+ _useState2 = _slicedToArray(_useState, 2),
191
+ btnName = _useState2[0],
192
+ setBtnName = _useState2[1];
193
+
194
+ var _useState3 = useState(getStyle()),
195
+ _useState4 = _slicedToArray(_useState3, 2),
196
+ btnStyle = _useState4[0],
197
+ setBtnStyle = _useState4[1];
198
+
199
+ useEffect(function () {
200
+ setBtnName(classes());
201
+ setBtnStyle(getStyle());
202
+ }, [className, color, shape, plain, loading, disabled, style, type, size, block, icon, children, onClick, classes, getStyle]);
203
+
204
+ var handleClick = function handleClick(e) {
205
+ if (!loading && !disabled && onClick) {
206
+ onClick(e);
207
+ }
208
+ };
209
+
210
+ return React__default.createElement("div", _objectSpread(_objectSpread({
211
+ className: "".concat(btnName, " ").concat(className),
212
+ style: _objectSpread(_objectSpread({}, btnStyle), style)
213
+ }, rest), {}, {
214
+ onClick: function onClick(e) {
215
+ return handleClick(e);
216
+ }
217
+ }), React__default.createElement("div", {
218
+ className: "nut-button__warp",
219
+ style: getStyle()
220
+ }, loading && React__default.createElement(Icon, {
221
+ name: "loading"
222
+ }), !loading && icon ? React__default.createElement(Icon, {
223
+ name: icon
224
+ }) : '', children));
225
+ };
226
+
227
+ Button.defaultProps = defaultProps$2;
228
+ Button.displayName = 'NutButton';
129
229
  var defaultProps$1 = {
130
230
  okText: '确认',
131
231
  cancelText: '取消',
@@ -155,7 +255,7 @@ var BaseDialog$1 = function BaseDialog$1(props, ref) {
155
255
  onClosed = props.onClosed,
156
256
  onCancel = props.onCancel,
157
257
  onOk = props.onOk,
158
- restProps = _objectWithoutProperties(props, _excluded);
258
+ restProps = _objectWithoutProperties(props, _excluded2);
159
259
 
160
260
  var renderFooter = function renderFooter() {
161
261
  if (footer === null || noFooter) return '';
@@ -370,7 +470,7 @@ var BaseDialog = function BaseDialog(props, ref) {
370
470
  onClosed = props.onClosed,
371
471
  onCancel = props.onCancel,
372
472
  onOk = props.onOk,
373
- restProps = _objectWithoutProperties(props, _excluded2);
473
+ restProps = _objectWithoutProperties(props, _excluded3);
374
474
 
375
475
  var renderFooter = function renderFooter() {
376
476
  if (footer === null) return '';
@@ -396,7 +496,7 @@ var BaseDialog = function BaseDialog(props, ref) {
396
496
  }
397
497
  };
398
498
 
399
- var footerContent = footer || React__default.createElement(React__default.Fragment, null, !noCancelBtn && React__default.createElement(Button, {
499
+ var footerContent = footer || React__default.createElement(React__default.Fragment, null, !noCancelBtn && React__default.createElement(Button$1, {
400
500
  size: "small",
401
501
  plain: true,
402
502
  type: "primary",
@@ -404,7 +504,7 @@ var BaseDialog = function BaseDialog(props, ref) {
404
504
  onClick: function onClick(e) {
405
505
  return handleCancel(e);
406
506
  }
407
- }, cancelText || locale.cancel), !noOkBtn && React__default.createElement(Button, {
507
+ }, cancelText || locale.cancel), !noOkBtn && React__default.createElement(Button$1, {
408
508
  size: "small",
409
509
  type: "primary",
410
510
  className: classNames('nut-dialog__footer-ok', {
@@ -1,13 +1,15 @@
1
1
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
2
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
- var _excluded = ["height", "acceptKey", "indexList", "isSticky", "spaceHeight", "titleHeight", "className", "clickItem", "clickIndex", "children"];
4
+ var _excluded = ["height", "acceptKey", "indexList", "isSticky", "spaceHeight", "titleHeight", "className", "onClickItem", "onClickIndex", "children"];
5
5
 
6
6
  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; }
7
7
 
8
8
  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; }
9
9
 
10
10
  import React__default, { createContext, useRef, useState, useEffect } from 'react';
11
+ import { useGesture } from '@use-gesture/react';
12
+ import { animated } from '@react-spring/web';
11
13
  import Taro from '@tarojs/taro';
12
14
  import { c as cn } from './bem-893ad28d.js';
13
15
  var elevatorContext = createContext({});
@@ -30,8 +32,8 @@ var Elevator = function Elevator(props) {
30
32
  spaceHeight = _defaultProps$props.spaceHeight,
31
33
  titleHeight = _defaultProps$props.titleHeight,
32
34
  className = _defaultProps$props.className,
33
- clickItem = _defaultProps$props.clickItem,
34
- clickIndex = _defaultProps$props.clickIndex,
35
+ onClickItem = _defaultProps$props.onClickItem,
36
+ onClickIndex = _defaultProps$props.onClickIndex,
35
37
  children = _defaultProps$props.children,
36
38
  rest = _objectWithoutProperties(_defaultProps$props, _excluded);
37
39
 
@@ -132,42 +134,39 @@ var Elevator = function Elevator(props) {
132
134
  }
133
135
  };
134
136
 
135
- var touchMove = function touchMove(e) {
136
- var firstTouch = e.touches[0];
137
- touchState.current.y2 = firstTouch.pageY;
138
- var delta = (touchState.current.y2 - touchState.current.y1) / spaceHeight || 0;
139
- var cacheIndex = state.current.anchorIndex + delta;
140
- setCodeIndex(cacheIndex);
141
- scrollTo(cacheIndex);
142
- };
143
-
144
- var touchEnd = function touchEnd() {
145
- resetScrollState();
146
- };
147
-
148
- var touchStart = function touchStart(e) {
149
- setScrollStart(true);
150
- var index = Number(getData(e.target, 'index'));
151
- var firstTouch = e.touches[0];
152
- touchState.current.y1 = firstTouch.pageY;
153
- state.current.anchorIndex = +index;
154
- setCodeIndex(function (codeIndex) {
155
- return codeIndex + index;
156
- });
157
- scrollTo(index);
158
- var target = e.currentTarget;
159
- target.removeEventListener('touchend', touchEnd, false);
160
- target.addEventListener('touchend', touchEnd, false);
161
- };
137
+ var bind = useGesture({
138
+ onDragStart: function onDragStart(_ref) {
139
+ var target = _ref.target,
140
+ offset = _ref.offset;
141
+ setScrollStart(true);
142
+ var index = Number(getData(target, 'index'));
143
+ touchState.current.y1 = offset[1];
144
+ state.current.anchorIndex = +index;
145
+ setCodeIndex(function (codeIndex) {
146
+ return codeIndex + index;
147
+ });
148
+ scrollTo(index);
149
+ },
150
+ onDragEnd: function onDragEnd(_ref2) {
151
+ var offset = _ref2.offset;
152
+ touchState.current.y2 = offset[1];
153
+ var delta = (touchState.current.y2 - touchState.current.y1) / spaceHeight || 0; // delta 是一个浮点数, 需要四舍五入一下, 否则页面会找不到最终计算后的index
154
+
155
+ var cacheIndex = state.current.anchorIndex + Math.ceil(delta);
156
+ setCodeIndex(cacheIndex);
157
+ scrollTo(cacheIndex);
158
+ resetScrollState();
159
+ }
160
+ });
162
161
 
163
162
  var handleClickItem = function handleClickItem(key, item) {
164
- clickItem && clickItem(key, item);
163
+ onClickItem && onClickItem(key, item);
165
164
  setCurrentData(item);
166
165
  setCurrentKey(key);
167
166
  };
168
167
 
169
168
  var handleClickIndex = function handleClickIndex(key) {
170
- clickIndex && clickIndex(key);
169
+ onClickIndex && onClickIndex(key);
171
170
  };
172
171
 
173
172
  var setListGroup = function setListGroup() {
@@ -178,12 +177,7 @@ var Elevator = function Elevator(props) {
178
177
  if (el != null && !state.current.listGroup.includes(el)) {
179
178
  state.current.listGroup.push(el);
180
179
  }
181
- }); // const els = listview.current.querySelectorAll('.nut-elevator__list__item')
182
- // els.forEach((el: Element) => {
183
- // if (el != null && !state.current.listGroup.includes(el)) {
184
- // state.current.listGroup.push(el)
185
- // }
186
- // })
180
+ });
187
181
  }
188
182
  };
189
183
 
@@ -273,16 +267,14 @@ var Elevator = function Elevator(props) {
273
267
  current: true
274
268
  })
275
269
  }, indexList[codeIndex][acceptKey]) : null, React__default.createElement("div", {
276
- className: b('bars'),
277
- onTouchStart: function onTouchStart(event) {
278
- return touchStart(event);
279
- },
280
- onTouchMove: function onTouchMove(event) {
281
- return touchMove(event);
282
- }
283
- }, React__default.createElement("div", {
270
+ className: b('bars')
271
+ }, React__default.createElement(animated.div, _objectSpread(_objectSpread({
284
272
  className: b('bars__inner')
285
- }, indexList.map(function (item, index) {
273
+ }, bind()), {}, {
274
+ style: {
275
+ touchAction: 'pan-y'
276
+ }
277
+ }), indexList.map(function (item, index) {
286
278
  return React__default.createElement("div", {
287
279
  className: b('bars__inner__item', {
288
280
  active: item[acceptKey] === indexList[currentIndex][acceptKey]
@@ -9,7 +9,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
9
9
 
10
10
  import React__default, { useState, useEffect } from 'react';
11
11
  import { c as cn } from './bem-893ad28d.js';
12
- import { u as useConfig } from './configprovider-9c393a29.js';
12
+ import { u as useConfig } from './configprovider.taro-6c7b3056.js';
13
13
  /**
14
14
  * 内置图片地址
15
15
  */
@@ -8,10 +8,10 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
8
8
 
9
9
  import React__default from 'react';
10
10
  import classNames from 'classnames';
11
- import { I as Icon } from './icon-8dc4de10.js';
12
- import { O as Overlay } from './overlay-ed3eb37d.js';
11
+ import { I as Icon } from './icon.taro-1d0d4fb7.js';
12
+ import { O as Overlay } from './overlay.taro-be45fed5.js';
13
13
  import { c as cn } from './bem-893ad28d.js';
14
- import { u as useConfig } from './configprovider-9c393a29.js';
14
+ import { u as useConfig } from './configprovider.taro-6c7b3056.js';
15
15
  var defaultProps = {
16
16
  fixednavClass: 'nut-fixednav',
17
17
  activeText: '',
@@ -7,7 +7,7 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
7
7
  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; }
8
8
 
9
9
  import React__default from 'react';
10
- import { u as useConfig } from './configprovider-9c393a29.js';
10
+ import { u as useConfig } from './configprovider.taro-6c7b3056.js';
11
11
  import { c as cn } from './bem-893ad28d.js';
12
12
  var defaultProps = {
13
13
  columnNum: 4,
@@ -7,9 +7,9 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
7
7
  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; }
8
8
 
9
9
  import React__default from 'react';
10
- import { u as useConfig } from './configprovider-9c393a29.js';
10
+ import { u as useConfig } from './configprovider.taro-6c7b3056.js';
11
11
  import { c as cn } from './bem-893ad28d.js';
12
- import { I as Icon } from './icon-8dc4de10.js';
12
+ import { I as Icon } from './icon.taro-1d0d4fb7.js';
13
13
  var defaultProps = {
14
14
  text: '',
15
15
  icon: '',
@@ -0,0 +1,257 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
+
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
+
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
+
8
+ import React__default, { useRef, useState, useEffect } from 'react';
9
+ import { P as Popup } from './popup.taro-8363fbae.js';
10
+ import { V as Video } from './video-c1090c92.js';
11
+ import { S as Swiper } from './swiper.taro-448cd0ad.js';
12
+ import { S as SwiperItem } from './swiperitem-d00e7513.js';
13
+ var defaultProps = {
14
+ images: [],
15
+ videos: [],
16
+ show: false,
17
+ autoplay: 3000,
18
+ initNo: 1,
19
+ contentClose: false,
20
+ paginationVisible: false,
21
+ paginationColor: '#fff',
22
+ onClose: function onClose() {}
23
+ };
24
+
25
+ var ImagePreview = function ImagePreview(props) {
26
+ var images = props.images,
27
+ videos = props.videos,
28
+ show = props.show,
29
+ initNo = props.initNo,
30
+ paginationColor = props.paginationColor,
31
+ paginationVisible = props.paginationVisible,
32
+ autoplay = props.autoplay,
33
+ contentClose = props.contentClose,
34
+ onClose = props.onClose;
35
+ var nutImagePreview = useRef(null);
36
+
37
+ var _useState = useState(false),
38
+ _useState2 = _slicedToArray(_useState, 2),
39
+ showPop = _useState2[0],
40
+ setShowPop = _useState2[1];
41
+
42
+ var _useState3 = useState(1),
43
+ _useState4 = _slicedToArray(_useState3, 2),
44
+ active = _useState4[0],
45
+ setActive = _useState4[1];
46
+
47
+ var _useState5 = useState(1),
48
+ _useState6 = _slicedToArray(_useState5, 2),
49
+ maxNo = _useState6[0],
50
+ setMaxNo = _useState6[1];
51
+
52
+ var _useState7 = useState({
53
+ scale: 1,
54
+ moveable: false
55
+ }),
56
+ _useState8 = _slicedToArray(_useState7, 2),
57
+ store = _useState8[0],
58
+ setStore = _useState8[1];
59
+
60
+ var _useState9 = useState(0),
61
+ _useState10 = _slicedToArray(_useState9, 2),
62
+ lastTouchEndTime = _useState10[0],
63
+ setLastTouchEndTime = _useState10[1]; // 用来辅助监听双击
64
+
65
+
66
+ var onTouchStart = function onTouchStart(event) {
67
+ var touches = event.touches;
68
+ var events = touches[0];
69
+ var events2 = touches[1]; // 如果已经放大,双击应变回原尺寸;如果是原尺寸,双击应放大
70
+
71
+ var curTouchTime = new Date().getTime();
72
+
73
+ if (curTouchTime - lastTouchEndTime < 300) {
74
+ var _store = store;
75
+
76
+ if (_store.scale > 1) {
77
+ _store.scale = 1;
78
+ } else if (_store.scale === 1) {
79
+ _store.scale = 2;
80
+ }
81
+
82
+ scaleNow();
83
+ }
84
+
85
+ var store1 = store;
86
+ store1.moveable = true;
87
+
88
+ if (events2) {
89
+ // 如果开始两指操作,记录初始时刻两指间的距离
90
+ store1.oriDistance = getDistance({
91
+ x: events.pageX,
92
+ y: events.pageY
93
+ }, {
94
+ x: events2.pageX,
95
+ y: events2.pageY
96
+ });
97
+ } // 取到开始两指操作时的放大(缩小比例),store.scale 存储的是当前的放缩比(相对于标准大小 scale 为 1 的情况的放大缩小比)
98
+
99
+
100
+ store1.originScale = store1.scale || 1;
101
+ };
102
+
103
+ var onTouchMove = function onTouchMove(event) {
104
+ var touches = event.touches;
105
+ var events = touches[0];
106
+ var events2 = touches[1];
107
+
108
+ if (!store.moveable) {
109
+ return;
110
+ }
111
+
112
+ var store1 = store; // 双指移动
113
+
114
+ if (events2) {
115
+ // 获得当前两点间的距离
116
+ var curDistance = getDistance({
117
+ x: events.pageX,
118
+ y: events.pageY
119
+ }, {
120
+ x: events2.pageX,
121
+ y: events2.pageY
122
+ });
123
+ /** 此处计算倍数,距离放大(缩小) k 倍则 scale 也 扩大(缩小) k 倍。距离放大(缩小)倍数 = 结束时两点距离 除以 开始时两点距离
124
+ * 注意此处的 scale 变化是基于 store.scale 的。
125
+ * store.scale 是一个暂存值,比如第一次放大 2 倍,则 store.scale 为 2。
126
+ * 再次两指触碰的时候,store.originScale 就为 store.scale 的值,基于此时的 store.scale 继续放大缩小。 * */
127
+
128
+ var curScale = curDistance / store1.oriDistance;
129
+ store1.scale = store1.originScale * curScale; // 最大放大 3 倍,缩小后松手要弹回原比例
130
+
131
+ if (store1.scale > 3) {
132
+ store1.scale = 3;
133
+ }
134
+
135
+ scaleNow();
136
+ }
137
+ };
138
+
139
+ var onTouchEnd = function onTouchEnd() {
140
+ setLastTouchEndTime(new Date().getTime());
141
+ var store1 = store;
142
+ store1.moveable = false;
143
+
144
+ if (store1.scale < 1.1 && store1.scale > 1 || store1.scale < 1) {
145
+ store1.scale = 1;
146
+ scaleNow();
147
+ }
148
+ };
149
+
150
+ var init = function init() {
151
+ document.addEventListener('touchmove', onTouchMove);
152
+ document.addEventListener('touchend', onTouchEnd);
153
+ document.addEventListener('touchcancel', onTouchEnd);
154
+ };
155
+
156
+ useEffect(function () {
157
+ if (show !== undefined) {
158
+ setShowPop(show);
159
+ init();
160
+ }
161
+ }, [show]);
162
+ useEffect(function () {
163
+ if (initNo !== undefined) {
164
+ setActive(initNo);
165
+ }
166
+
167
+ if (show !== undefined) {
168
+ setShowPop(show);
169
+ }
170
+
171
+ if (images && videos) {
172
+ setMaxNo(images.length + videos.length);
173
+ }
174
+ }, []);
175
+
176
+ var scaleNow = function scaleNow() {
177
+ if (nutImagePreview.current) {
178
+ nutImagePreview.current.style.transform = "scale(".concat(store.scale, ")");
179
+ }
180
+ };
181
+
182
+ var onCloseInner = function onCloseInner() {
183
+ setShowPop(false);
184
+ setActive(1);
185
+ scaleNow();
186
+ onClose && onClose();
187
+ setStore(_objectSpread(_objectSpread({}, store), {}, {
188
+ scale: 1
189
+ }));
190
+ }; // 计算两个点的距离
191
+
192
+
193
+ var getDistance = function getDistance(first, second) {
194
+ // 计算两个点起始时刻的距离和终止时刻的距离,终止时刻距离变大了则放大,变小了则缩小
195
+ // 放大 k 倍则 scale 也 扩大 k 倍
196
+ return Math.hypot(Math.abs(second.x - first.x), Math.abs(second.y - first.y));
197
+ };
198
+
199
+ var slideChangeEnd = function slideChangeEnd(page) {
200
+ setActive(page + 1);
201
+ };
202
+
203
+ var closeOnImg = function closeOnImg() {
204
+ // 点击内容区域的图片是否可以关闭弹层(视频区域由于nut-video做了限制,无法关闭弹层)
205
+ if (contentClose) {
206
+ onCloseInner();
207
+ }
208
+ };
209
+
210
+ return React__default.createElement(Popup, {
211
+ visible: showPop,
212
+ popClass: "custom-pop",
213
+ style: {
214
+ width: '100%'
215
+ },
216
+ onClick: onCloseInner
217
+ }, React__default.createElement("div", {
218
+ className: "nut-imagepreview",
219
+ ref: nutImagePreview,
220
+ onClick: closeOnImg,
221
+ onTouchStart: onTouchStart
222
+ }, React__default.createElement(Swiper, {
223
+ autoPlay: autoplay,
224
+ className: "nut-imagepreview-swiper",
225
+ loop: true,
226
+ isPreventDefault: false,
227
+ style: {
228
+ display: showPop ? 'block' : 'none'
229
+ },
230
+ direction: "horizontal",
231
+ onChange: slideChangeEnd,
232
+ initPage: initNo && (initNo > maxNo ? maxNo - 1 : initNo - 1),
233
+ paginationColor: paginationColor,
234
+ paginationVisible: paginationVisible
235
+ }, videos && videos.length > 0 && videos.map(function (item, index) {
236
+ return React__default.createElement(SwiperItem, {
237
+ key: index
238
+ }, React__default.createElement(Video, {
239
+ source: item.source,
240
+ options: item.options
241
+ }));
242
+ }), images && images.length > 0 && images.map(function (item, index) {
243
+ return React__default.createElement(SwiperItem, {
244
+ key: index
245
+ }, React__default.createElement("img", {
246
+ src: item.src,
247
+ alt: "",
248
+ className: "nut-imagepreview-img"
249
+ }));
250
+ }))), React__default.createElement("div", {
251
+ className: "nut-imagepreview-index"
252
+ }, active, "/", (images ? images.length : 0) + (videos ? videos.length : 0)));
253
+ };
254
+
255
+ ImagePreview.defaultProps = defaultProps;
256
+ ImagePreview.displayName = 'NutImagePreview';
257
+ export { ImagePreview as I };
@@ -10,8 +10,8 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
10
10
  import React__default, { useState, useRef, useEffect } from 'react';
11
11
  import classNames from 'classnames';
12
12
  import { c as cn } from './bem-893ad28d.js';
13
- import { I as Icon } from './icon-8dc4de10.js';
14
- import { u as useConfig } from './configprovider-9c393a29.js';
13
+ import { I as Icon } from './icon.taro-1d0d4fb7.js';
14
+ import { u as useConfig } from './configprovider.taro-6c7b3056.js';
15
15
  var defaultProps = {
16
16
  hasMore: true,
17
17
  threshold: 200,
@@ -8,8 +8,8 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
8
8
  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; }
9
9
 
10
10
  import React__default, { useState, useRef, useLayoutEffect, useEffect, useCallback } from 'react';
11
- import { I as Icon } from './icon-8dc4de10.js';
12
- import { u as useConfig } from './configprovider-9c393a29.js';
11
+ import { I as Icon } from './icon.taro-1d0d4fb7.js';
12
+ import { u as useConfig } from './configprovider.taro-6c7b3056.js';
13
13
 
14
14
  function trimExtraChar(value, _char, regExp) {
15
15
  var index = value.indexOf(_char);
@@ -9,7 +9,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
9
9
 
10
10
  import React__default, { useState, useEffect } from 'react';
11
11
  import classNames from 'classnames';
12
- import { I as Icon } from './icon-8dc4de10.js';
12
+ import { I as Icon } from './icon.taro-1d0d4fb7.js';
13
13
  import { c as cn } from './bem-893ad28d.js';
14
14
  var defaultProps = {
15
15
  disabled: false,