@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
@@ -1,152 +0,0 @@
1
- import React__default, { useRef, useState, useEffect } from 'react';
2
- import { getEnv } from '@tarojs/taro';
3
- import { c as cn } from './bem-350c1702.js';
4
- import { u as useConfig } from './configprovider.taro-8d71eb49.js';
5
- import { I as Icon } from './icon.taro-296a1bec.js';
6
- import { C as ComponentDefaults } from './typings-b9828dba.js';
7
-
8
- const defaultProps = {
9
- ...ComponentDefaults,
10
- placeholder: '',
11
- shape: 'square',
12
- disabled: false,
13
- maxLength: 9999,
14
- clearable: true,
15
- clearIconSize: '12px',
16
- align: 'left',
17
- readonly: true,
18
- autoFocus: false,
19
- label: '',
20
- leftinIcon: React__default.createElement(Icon, { name: "search", size: "12" }),
21
- };
22
- const SearchBar = (props) => {
23
- const searchbarBem = cn('searchbar');
24
- const { locale } = useConfig();
25
- const searchRef = useRef(null);
26
- const [value, setValue] = useState(() => props.value);
27
- const { placeholder, shape, className, disabled, maxLength, clearable, clearIconSize, align, readOnly, autoFocus, label, actionText, leftinIcon, rightinIcon, leftoutIcon, rightoutIcon, onChange, onFocus, onBlur, onClear, onCancel, onSearch, onClickInput, onClickLeftinIcon, onClickLeftoutIcon, onClickRightinIcon, onClickRightoutIcon, iconClassPrefix, iconFontClassName, } = {
28
- ...defaultProps,
29
- ...props,
30
- };
31
- const alignClass = `${align}`;
32
- const forceFocus = () => {
33
- const searchSelf = searchRef.current;
34
- searchSelf && searchSelf.focus();
35
- };
36
- const change = (event) => {
37
- const { value } = event.target;
38
- onChange && onChange?.(value, event);
39
- setValue(value);
40
- value === '' && forceFocus();
41
- };
42
- const focus = (event) => {
43
- const { value } = event.target;
44
- onFocus && onFocus?.(value, event);
45
- };
46
- const blur = (event) => {
47
- const searchSelf = searchRef.current;
48
- searchSelf && searchSelf.blur();
49
- const { value } = event.target;
50
- onBlur && onBlur?.(value, event);
51
- };
52
- useEffect(() => {
53
- setValue(props.value);
54
- }, [props.value]);
55
- useEffect(() => {
56
- autoFocus && forceFocus();
57
- }, [autoFocus]);
58
- const renderField = () => {
59
- return (React__default.createElement("input", { className: `${searchbarBem('input')} ${searchbarBem(alignClass)} ${shape === 'round' ? searchbarBem('round') : ''} ${clearable ? searchbarBem('input-clear') : ''}`, ref: searchRef, style: { ...props.style }, value: value || '', placeholder: placeholder || locale.placeholder, disabled: disabled, readOnly: readOnly, maxLength: maxLength, onKeyPress: onKeypress, onChange: (e) => change(e), onFocus: (e) => focus(e), onBlur: (e) => blur(e), onClick: (e) => clickInput(e) }));
60
- };
61
- const clickInput = (e) => {
62
- onClickInput && onClickInput(e);
63
- };
64
- const renderLeftinIcon = () => {
65
- if (!leftinIcon)
66
- return null;
67
- return (React__default.createElement("div", { className: `${searchbarBem('leftin-icon')} ${searchbarBem('icon')}`, onClick: (e) => clickLeftIcon('in-left', e) }, leftinIcon));
68
- };
69
- const renderLeftoutIcon = () => {
70
- if (!leftoutIcon)
71
- return null;
72
- return (React__default.createElement("div", { className: `${searchbarBem('leftout-icon')}`, onClick: (e) => clickLeftIcon('out-left', e) }, leftoutIcon));
73
- };
74
- const clickLeftIcon = (flag, event) => {
75
- if (flag === 'in-left') {
76
- onClickLeftinIcon && onClickLeftinIcon(value, event);
77
- }
78
- else {
79
- onClickLeftoutIcon && onClickLeftoutIcon(value, event);
80
- }
81
- };
82
- const renderRightinIcon = () => {
83
- if (!rightinIcon)
84
- return null;
85
- return (React__default.createElement("div", { className: `${searchbarBem('rightin-icon')} ${searchbarBem('icon')}`, onClick: (e) => clickRightIcon('in-right', e) }, rightinIcon));
86
- };
87
- const renderRightoutIcon = () => {
88
- if (!rightoutIcon)
89
- return null;
90
- return (React__default.createElement("div", { className: `${searchbarBem('rightout-icon')}`, onClick: (e) => clickRightIcon('out-right', e) }, rightoutIcon));
91
- };
92
- const clickRightIcon = (flag, event) => {
93
- if (flag === 'in-left') {
94
- onClickRightinIcon && onClickRightinIcon(value, event);
95
- }
96
- else {
97
- onClickRightoutIcon && onClickRightoutIcon(value, event);
98
- }
99
- };
100
- const handleClear = () => {
101
- return (React__default.createElement("div", { className: `${searchbarBem('clear')} ${rightinIcon ? 'pos-right' : ''}`, onClick: (e) => clearaVal(e) },
102
- React__default.createElement(Icon, { classPrefix: iconClassPrefix, fontClassName: iconFontClassName, name: "circle-close", size: clearIconSize, color: "#555" })));
103
- };
104
- const clearaVal = (event) => {
105
- if (disabled || readOnly) {
106
- return;
107
- }
108
- setValue('');
109
- onClear && onClear(event);
110
- forceFocus();
111
- };
112
- const renderRightLabel = () => {
113
- if (actionText) {
114
- return (React__default.createElement("div", { className: searchbarBem('action-text'), onClick: search }, actionText));
115
- }
116
- return null;
117
- };
118
- const onKeypress = (e) => {
119
- if (e.keyCode === 13) {
120
- if (typeof e.cancelable !== 'boolean' || e.cancelable) {
121
- e.preventDefault();
122
- }
123
- onSearch && onSearch(value);
124
- }
125
- };
126
- const search = () => {
127
- onSearch && onSearch(value);
128
- };
129
- const renderLabel = () => {
130
- if (label) {
131
- return React__default.createElement("div", { className: searchbarBem('label') }, label);
132
- }
133
- return null;
134
- };
135
- const envClass = () => {
136
- return getEnv() === 'WEB' ? 'nut-searchbar-taro' : '';
137
- };
138
- return (React__default.createElement("div", { className: `${searchbarBem()} ${envClass()} ${disabled ? searchbarBem('disabled') : ''} ${className || ''}`, style: { ...props.style, background: props.background } },
139
- renderLeftoutIcon(),
140
- renderLabel(),
141
- React__default.createElement("div", { className: `${searchbarBem('content')}`, style: { background: props.inputBackground } },
142
- renderLeftinIcon(),
143
- React__default.createElement("div", { className: "nut-searchbar__input-box" }, renderField()),
144
- renderRightinIcon(),
145
- clearable && value && handleClear()),
146
- renderRightoutIcon(),
147
- renderRightLabel()));
148
- };
149
- SearchBar.defaultProps = defaultProps;
150
- SearchBar.displayName = 'NutSearchBar';
151
-
152
- export { SearchBar as S };
@@ -1,111 +0,0 @@
1
- import React__default, { useRef, useState, useEffect } from 'react';
2
- import { c as cn } from './bem-350c1702.js';
3
- import { P as Popup } from './popup.taro-01676bff.js';
4
- import { I as Icon } from './icon.taro-296a1bec.js';
5
- import { u as useConfig } from './configprovider.taro-8d71eb49.js';
6
- import { C as ComponentDefaults } from './typings-b9828dba.js';
7
-
8
- const defaultProps = {
9
- ...ComponentDefaults,
10
- title: '',
11
- desc: '',
12
- tips: '',
13
- visible: false,
14
- modelValue: '',
15
- errorMsg: '',
16
- noButton: true,
17
- closeOnClickOverlay: true,
18
- length: 6,
19
- className: '',
20
- autoFocus: false,
21
- onChange: (value) => { },
22
- onOk: (value) => { },
23
- onCancel: () => { },
24
- onClose: () => { },
25
- onTips: () => { },
26
- onComplete: (value) => { },
27
- };
28
- const ShortPassword = (props) => {
29
- const { locale } = useConfig();
30
- const { title, desc, tips, visible, modelValue, errorMsg, noButton, closeOnClickOverlay, length, style, className, onChange, onOk, onTips, onCancel, onClose, onComplete, iconClassPrefix, iconFontClassName, autoFocus, ...reset } = props;
31
- const b = cn('shortpassword');
32
- const textInput = useRef(null);
33
- const range = (val) => {
34
- return Math.min(Math.max(4, val), 6);
35
- };
36
- const [innerVisible, setInnerVisible] = useState(visible);
37
- const [comLen, setComLen] = useState(range(Number(length)));
38
- const [inputValue, setInputValue] = useState('');
39
- useEffect(() => {
40
- setInnerVisible(visible);
41
- }, [visible]);
42
- useEffect(() => {
43
- if (typeof modelValue !== 'undefined') {
44
- setInputValue(modelValue);
45
- }
46
- }, [modelValue]);
47
- const changeValue = (e) => {
48
- let inputValue = e.target.value;
49
- if (String(inputValue).length > comLen) {
50
- inputValue = inputValue.slice(0, comLen);
51
- }
52
- setInputValue(inputValue);
53
- if (String(inputValue).length === comLen) {
54
- onComplete && onComplete(inputValue);
55
- }
56
- onChange && onChange(inputValue);
57
- };
58
- const systemStyle = () => {
59
- const u = navigator.userAgent;
60
- const isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > -1; // g
61
- const isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); // ios终端
62
- let style = {};
63
- if (isIOS) {
64
- style = {
65
- paddingRight: '1200px',
66
- };
67
- }
68
- if (isAndroid) {
69
- style = {
70
- opacity: 0,
71
- zIndex: 10,
72
- };
73
- }
74
- return style;
75
- };
76
- const focus = () => {
77
- if (textInput.current) {
78
- textInput.current.focus();
79
- }
80
- };
81
- const sure = () => {
82
- onOk && onOk(inputValue);
83
- };
84
- return (React__default.createElement("div", null,
85
- React__default.createElement(Popup, { style: {
86
- padding: '32px 24px 28px 24px',
87
- borderRadius: '12px',
88
- textAlign: 'center',
89
- }, visible: innerVisible, closeable: true, "close-on-click-overlay": closeOnClickOverlay, onClickOverlay: onClose, onClickCloseIcon: onClose },
90
- React__default.createElement("div", { className: `${b()} ${className}`, style: { ...style }, ...reset },
91
- React__default.createElement("div", { className: b('title') }, title || locale.shortpassword.title),
92
- React__default.createElement("div", { className: b('subtitle') }, desc || locale.shortpassword.desc),
93
- React__default.createElement("div", { className: b('input') },
94
- React__default.createElement("input", { ref: textInput, className: b('input-real'), type: "number", style: systemStyle(), maxLength: 6, value: inputValue, autoFocus: autoFocus, onChange: (e) => changeValue(e) }),
95
- React__default.createElement("div", { className: b('input-site') }),
96
- React__default.createElement("div", { className: b('input-fake'), onClick: () => focus() }, [...new Array(comLen).keys()].map((item, index) => {
97
- return (React__default.createElement("div", { className: b('input-fake__li'), key: index }, String(inputValue).length > index ? (React__default.createElement("div", { className: b('input-fake__li__icon') })) : null));
98
- }))),
99
- React__default.createElement("div", { className: b('message') },
100
- React__default.createElement("div", { className: b('message__error') }, errorMsg),
101
- tips || locale.shortpassword.tips ? (React__default.createElement("div", { className: b('message__forget') },
102
- React__default.createElement(Icon, { classPrefix: iconClassPrefix, fontClassName: iconFontClassName, className: "icon", size: "11px", name: "tips" }),
103
- React__default.createElement("div", { onClick: onTips }, tips || locale.shortpassword.tips))) : null),
104
- !noButton ? (React__default.createElement("div", { className: b('footer') },
105
- React__default.createElement("div", { className: b('footer__cancel'), onClick: onCancel }, locale.cancel),
106
- React__default.createElement("div", { className: b('footer__sure'), onClick: () => sure() }, locale.confirm))) : null))));
107
- };
108
- ShortPassword.defaultProps = defaultProps;
109
- ShortPassword.displayName = 'NutShortPassword';
110
-
111
- export { ShortPassword as S };
@@ -1,35 +0,0 @@
1
- import React__default, { useState } from 'react';
2
- import { u as useConfig } from './configprovider.taro-8d71eb49.js';
3
- import { P as Popup } from './popup.taro-01676bff.js';
4
- import { O as OffsetContext } from './offsetContext-c2a746fa.js';
5
-
6
- const defaultProps = {
7
- showhead: false,
8
- position: 'left',
9
- width: '80%',
10
- };
11
- const SideNavBar = (props) => {
12
- useConfig();
13
- const { title, visible, width, position, children, className, showhead, onClose, ...rest } = {
14
- ...defaultProps,
15
- ...props,
16
- };
17
- const offset = props.offset ? Number(props.offset) : 20;
18
- const [sidenavbarShow, setSidenavbarShow] = useState(true);
19
- const handleClick = () => {
20
- setSidenavbarShow(!sidenavbarShow);
21
- };
22
- return (React__default.createElement(Popup, { visible: visible, style: { width, height: '100%' }, position: position, onClose: onClose },
23
- React__default.createElement("div", { className: className ? `${className} nut-sidenavbar` : 'nut-sidenavbar', ...rest },
24
- React__default.createElement("div", { className: "nut-sidenavbar__content" },
25
- React__default.createElement("div", { className: `nut-sidenavbar__list ${sidenavbarShow ? 'nutShow' : 'nutHide'}`, onClick: handleClick },
26
- React__default.createElement("div", { className: "nut-sidenavbar__title border-bt ", style: { paddingLeft: `${offset}px` } },
27
- title,
28
- React__default.createElement("i", { className: `arrow-icon ${sidenavbarShow ? 'arrow-up' : 'arrow-down'}` })),
29
- React__default.createElement(OffsetContext.Provider, { value: offset },
30
- React__default.createElement("div", { className: "nut-sidenavbar__content" }, children)))))));
31
- };
32
- SideNavBar.defaultProps = defaultProps;
33
- SideNavBar.displayName = 'NutSideNavBar';
34
-
35
- export { SideNavBar as S };
@@ -1,12 +0,0 @@
1
- import React__default from 'react';
2
-
3
- const SideNavBarItem = (props) => {
4
- const { title, ikey, children, onClick, ...rest } = props;
5
- const clickFn = (e) => {
6
- e.stopPropagation();
7
- onClick && onClick({ title, ikey });
8
- };
9
- return (React__default.createElement("div", { className: "nut-subsidenavbar__item border-bt", onClick: clickFn, ...rest }, title));
10
- };
11
-
12
- export { SideNavBarItem as S };
@@ -1,143 +0,0 @@
1
- import React__default, { useRef, useState, useEffect } from 'react';
2
- import { getEnv, nextTick, createSelectorQuery, canvasToTempFilePath } from '@tarojs/taro';
3
- import { B as Button } from './button.taro-9244d065.js';
4
- import { c as cn } from './bem-350c1702.js';
5
- import { u as useConfig } from './configprovider.taro-8d71eb49.js';
6
-
7
- /* eslint-disable react/no-unknown-property */
8
- const defaultProps = {
9
- canvasId: 'spcanvas',
10
- type: 'png',
11
- lineWidth: 2,
12
- strokeStyle: '#000',
13
- className: '',
14
- };
15
- const Signature = (props) => {
16
- const { locale } = useConfig();
17
- const { canvasId, type, lineWidth, strokeStyle, unSupportTpl, className, confirm, clear, onConfirm, onClear, ...rest } = {
18
- ...defaultProps,
19
- ...props,
20
- };
21
- const b = cn('signature');
22
- const canvasRef = useRef(null);
23
- const wrapRef = useRef(null);
24
- const [canvasHeight, setCanvasHeight] = useState(0);
25
- const [canvasWidth, setCanvasWidth] = useState(0);
26
- const ctx = useRef(null);
27
- const [disalbeScroll] = useState('true');
28
- const startEventHandler = (event) => {
29
- if (ctx.current) {
30
- ctx.current.beginPath();
31
- ctx.current.lineWidth = lineWidth;
32
- ctx.current.strokeStyle = strokeStyle;
33
- }
34
- };
35
- const moveEventHandler = (event) => {
36
- if (ctx.current) {
37
- const evt = event.changedTouches[0];
38
- let mouseX = evt.x || evt.clientX;
39
- let mouseY = evt.y || evt.clientY;
40
- if (getEnv() === 'WEB' && canvasRef.current) {
41
- const coverPos = canvasRef.current.getBoundingClientRect();
42
- mouseX = evt.clientX - coverPos.left;
43
- mouseY = evt.clientY - coverPos.top;
44
- }
45
- nextTick(() => {
46
- // ctx.current.lineCap = 'round'
47
- // ctx.current.lineJoin = 'round'
48
- ctx.current?.lineTo(mouseX, mouseY);
49
- ctx.current?.stroke();
50
- });
51
- }
52
- };
53
- const endEventHandler = (event) => { };
54
- const handleClearBtn = () => {
55
- if (ctx.current) {
56
- ctx.current.clearRect(0, 0, canvasWidth, canvasHeight);
57
- ctx.current.closePath();
58
- }
59
- clear && clear();
60
- onClear && onClear();
61
- };
62
- const handleConfirmBtn = () => {
63
- onSave();
64
- };
65
- const onSave = () => {
66
- createSelectorQuery()
67
- .select(`#${canvasId}`)
68
- .fields({
69
- node: true,
70
- size: true,
71
- })
72
- .exec((res) => {
73
- canvasToTempFilePath({
74
- canvas: res[0].node,
75
- fileType: props.type,
76
- canvasId: `${canvasId}`,
77
- success: (res) => {
78
- handleClearBtn();
79
- confirm && confirm(res.tempFilePath);
80
- onConfirm && onConfirm(res.tempFilePath);
81
- },
82
- fail: (res) => {
83
- console.log('保存失败');
84
- },
85
- });
86
- });
87
- };
88
- const canvasSetting = (canvasDom, width, height) => {
89
- const canvas = canvasDom;
90
- canvas.current = canvas;
91
- ctx.current = canvas.getContext('2d');
92
- setCanvasWidth(width);
93
- setCanvasHeight(height);
94
- canvas.width = width;
95
- canvas.height = height;
96
- if (ctx.current) {
97
- ctx.current.clearRect(0, 0, width, height);
98
- ctx.current.beginPath();
99
- ctx.current.lineWidth = lineWidth;
100
- ctx.current.strokeStyle = strokeStyle;
101
- }
102
- };
103
- const initCanvas = () => {
104
- nextTick(() => {
105
- setTimeout(() => {
106
- if (getEnv() === 'WEAPP' || getEnv() === 'JD') {
107
- createSelectorQuery()
108
- .select(`#${canvasId}`)
109
- .fields({
110
- node: true,
111
- size: true,
112
- }, (res) => {
113
- const { node, width, height } = res;
114
- canvasSetting(node, width, height);
115
- })
116
- .exec();
117
- }
118
- else {
119
- const canvasDom = document.getElementById(`${canvasId}`);
120
- let canvas = canvasDom;
121
- if (canvasDom?.tagName !== 'CANVAS') {
122
- canvas = canvasDom?.getElementsByTagName('canvas')[0];
123
- }
124
- canvasSetting(canvas, canvasDom?.offsetWidth, canvasDom?.offsetHeight);
125
- }
126
- }, 1000);
127
- });
128
- };
129
- useEffect(() => {
130
- initCanvas();
131
- }, []);
132
- return (React__default.createElement("div", { className: `${b()} ${className}`, ...rest },
133
- React__default.createElement("div", { className: `${b('inner')} spcanvas_WEAPP`, ref: wrapRef }, getEnv() === 'WEAPP' || getEnv() === 'JD' ? (React__default.createElement("canvas", { id: canvasId, ref: canvasRef,
134
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
135
- // @ts-ignore
136
- canvasId: canvasId, disalbeScroll: true, type: "2d", onTouchStart: startEventHandler, onTouchMove: moveEventHandler, onTouchEnd: endEventHandler })) : (React__default.createElement("canvas", { id: canvasId, ref: canvasRef, "canvas-id": canvasId, "disalbe-scroll": disalbeScroll, onTouchStart: startEventHandler, onTouchMove: moveEventHandler, onTouchEnd: endEventHandler, onTouchCancel: endEventHandler }))),
137
- React__default.createElement(Button, { className: `${b('btn')}`, type: "default", onClick: () => handleClearBtn() }, locale.signature.reSign),
138
- React__default.createElement(Button, { className: `${b('btn')}`, type: "primary", onClick: () => handleConfirmBtn() }, locale.confirm)));
139
- };
140
- Signature.defaultProps = defaultProps;
141
- Signature.displayName = 'NutSignature';
142
-
143
- export { Signature as S };
@@ -1,62 +0,0 @@
1
- import React__default from 'react';
2
- import classNames from 'classnames';
3
- import { A as Avatar } from './avatar.taro-3676f38f.js';
4
- import { c as cn } from './bem-350c1702.js';
5
-
6
- const defaultProps = {
7
- width: '100px',
8
- height: '100px',
9
- row: 1,
10
- animated: false,
11
- title: false,
12
- avatar: false,
13
- round: false,
14
- avatarSize: '50px',
15
- loading: false,
16
- avatarShape: 'round',
17
- };
18
- const Skeleton = (props) => {
19
- const { className, width, height, animated, row, title, avatar, avatarSize, round, loading, children, avatarShape, ...restProps } = {
20
- ...defaultProps,
21
- ...props,
22
- };
23
- const b = cn('skeleton');
24
- const classes = classNames(className, b());
25
- const blockClass = classNames({
26
- blockClass: true,
27
- 'blockClass--round': round,
28
- });
29
- const avatarClass = classNames({
30
- avatarClass: true,
31
- [`avatarClass--${avatarShape}`]: avatarShape,
32
- });
33
- const repeatLines = (num) => {
34
- return Array.from({ length: num }, (v, i) => i);
35
- };
36
- const getStyle = () => {
37
- if (avatarSize) {
38
- return {
39
- width: avatarSize,
40
- height: avatarSize,
41
- };
42
- }
43
- return {
44
- width: '50px',
45
- height: '50px',
46
- };
47
- };
48
- return (React__default.createElement(React__default.Fragment, null, loading ? (React__default.createElement("div", null, children)) : (React__default.createElement("div", { className: classes, ...restProps },
49
- animated && React__default.createElement("div", { className: "skeleton-animation" }),
50
- React__default.createElement("div", { className: "nut-skeleton-content" },
51
- avatar && (React__default.createElement(Avatar, { className: avatarClass, bgColor: "rgb(239, 239, 239)", shape: avatarShape, style: getStyle() })),
52
- row === 1 && (React__default.createElement("div", { className: blockClass, style: { width, height } })),
53
- React__default.createElement("div", { className: "skeleton-content-line" },
54
- title && React__default.createElement("div", { className: "skeleton-title" }),
55
- repeatLines(row).map((item, index) => {
56
- return (React__default.createElement("div", { className: blockClass, key: index, style: { width, height } }));
57
- })))))));
58
- };
59
- Skeleton.defaultProps = defaultProps;
60
- Skeleton.displayName = 'NutSkeleton';
61
-
62
- export { Skeleton as S };
@@ -1,59 +0,0 @@
1
- import React__default, { useContext } from 'react';
2
- import classNames from 'classnames';
3
- import { D as DataContext } from './UserContext-e402e1a6.js';
4
- import { c as cn } from './bem-350c1702.js';
5
- import { I as Icon } from './icon.taro-296a1bec.js';
6
- import { C as ComponentDefaults } from './typings-b9828dba.js';
7
-
8
- const defaultProps = {
9
- ...ComponentDefaults,
10
- title: '',
11
- content: '',
12
- activeIndex: 0,
13
- icon: '',
14
- iconColor: '',
15
- size: '12px',
16
- };
17
- const Step = (props) => {
18
- const { children, title, content, activeIndex, icon, iconColor, size, className, renderContent, iconClassPrefix, iconFontClassName, ...restProps } = {
19
- ...defaultProps,
20
- ...props,
21
- };
22
- const parent = useContext(DataContext);
23
- const dot = parent.propSteps.progressDot;
24
- const getCurrentStatus = () => {
25
- const index = activeIndex;
26
- if (index < +parent.propSteps.current)
27
- return 'finish';
28
- return index === +parent.propSteps.current ? 'process' : 'wait';
29
- };
30
- const handleClickStep = () => {
31
- parent.propSteps?.onClickStep && parent.propSteps?.onClickStep(activeIndex);
32
- parent.propSteps?.clickStep && parent.propSteps?.clickStep(activeIndex);
33
- };
34
- const b = cn('step');
35
- const classes = classNames({
36
- [`${b('')}-${getCurrentStatus()}`]: true,
37
- }, className, b(''));
38
- const renderIconClass = () => {
39
- if (!dot && icon) {
40
- return 'nut-step-icon is-icon';
41
- }
42
- if (!dot && !icon) {
43
- return 'nut-step-icon is-text';
44
- }
45
- return 'nut-step-icon';
46
- };
47
- return (React__default.createElement("div", { className: classes, ...restProps, onClick: handleClickStep },
48
- React__default.createElement("div", { className: "nut-step-head" },
49
- React__default.createElement("div", { className: "nut-step-line" }),
50
- React__default.createElement("div", { className: renderIconClass() }, icon ? (React__default.createElement(Icon, { classPrefix: iconClassPrefix, fontClassName: iconFontClassName, className: "nut-step-icon-inner", color: iconColor, name: icon, size: size })) : (!dot && React__default.createElement("span", { className: "nut-step-inner" }, activeIndex)))),
51
- React__default.createElement("div", { className: "nut-step-main" },
52
- React__default.createElement("span", { className: "nut-step-title" }, title),
53
- content && React__default.createElement("span", { className: "nut-step-content" }, content),
54
- renderContent && (React__default.createElement("span", { className: "nut-step-content" }, renderContent())))));
55
- };
56
- Step.defaultProps = defaultProps;
57
- Step.displayName = 'NutStep';
58
-
59
- export { Step as S };
@@ -1,30 +0,0 @@
1
- import React__default from 'react';
2
- import classNames from 'classnames';
3
- import { D as DataContext } from './UserContext-e402e1a6.js';
4
- import { c as cn } from './bem-350c1702.js';
5
-
6
- const defaultProps = {
7
- current: 0,
8
- direction: 'horizontal',
9
- progressDot: false,
10
- };
11
- const Steps = (props) => {
12
- const propSteps = { ...defaultProps, ...props };
13
- const { children, current, direction, className, progressDot, clickStep, onClickStep, ...restProps } = propSteps;
14
- const parentSteps = {
15
- propSteps,
16
- };
17
- const b = cn('steps');
18
- const classes = classNames({
19
- [`${b('')}-${direction}`]: true,
20
- [`${b('')}-dot`]: !!props.progressDot,
21
- }, className, b(''));
22
- return (React__default.createElement(DataContext.Provider, { value: parentSteps }, React__default.createElement('div', {
23
- className: classes,
24
- ...restProps,
25
- }, children)));
26
- };
27
- Steps.defaultProps = defaultProps;
28
- Steps.displayName = 'NutSteps';
29
-
30
- export { Steps as S };