@nutui/nutui 3.1.19-beta.1 → 3.1.19-beta.4

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 (236) hide show
  1. package/README.md +9 -8
  2. package/dist/nutui.es.js +3044 -3533
  3. package/dist/nutui.umd.js +3135 -3536
  4. package/dist/packages/_es/ActionSheet.js +64 -42
  5. package/dist/packages/_es/Address.js +69 -78
  6. package/dist/packages/_es/Audio.js +12 -12
  7. package/dist/packages/_es/AudioOperate.js +1 -1
  8. package/dist/packages/_es/Avatar.js +3 -3
  9. package/dist/packages/_es/BackTop.js +110 -68
  10. package/dist/packages/_es/Badge.js +3 -3
  11. package/dist/packages/_es/Barrage.js +55 -62
  12. package/dist/packages/_es/Button.js +2 -2
  13. package/dist/packages/_es/Calendar.js +27 -32
  14. package/dist/packages/_es/CalendarItem.js +3 -3
  15. package/dist/packages/_es/Card.js +5 -6
  16. package/dist/packages/_es/Cascader.js +9 -9
  17. package/dist/packages/_es/Cell.js +11 -4
  18. package/dist/packages/_es/CellGroup.js +1 -1
  19. package/dist/packages/_es/Checkbox.js +13 -3
  20. package/dist/packages/_es/CheckboxGroup.js +2 -2
  21. package/dist/packages/_es/CircleProgress.js +40 -149
  22. package/dist/packages/_es/Col.js +1 -1
  23. package/dist/packages/_es/Collapse.js +8 -34
  24. package/dist/packages/_es/CollapseItem.js +59 -90
  25. package/dist/packages/_es/CountDown.js +11 -10
  26. package/dist/packages/_es/CountUp.js +51 -43
  27. package/dist/packages/_es/DatePicker.js +22 -23
  28. package/dist/packages/_es/Dialog.js +91 -12
  29. package/dist/packages/_es/Divider.js +4 -4
  30. package/dist/packages/_es/Drag.js +54 -92
  31. package/dist/packages/_es/Ecard.js +153 -0
  32. package/dist/packages/_es/Elevator.js +50 -75
  33. package/dist/packages/_es/Empty.js +8 -7
  34. package/dist/packages/_es/FixedNav.js +10 -11
  35. package/dist/packages/_es/Form.js +5 -9
  36. package/dist/packages/_es/FormItem.js +1 -1
  37. package/dist/packages/_es/Grid.js +1 -1
  38. package/dist/packages/_es/GridItem.js +26 -8
  39. package/dist/packages/_es/Icon.js +1 -1
  40. package/dist/packages/_es/ImagePreview.js +83 -14
  41. package/dist/packages/_es/Indicator.js +3 -3
  42. package/dist/packages/_es/InfiniteLoading.js +107 -93
  43. package/dist/packages/_es/Input.js +21 -20
  44. package/dist/packages/_es/InputNumber.js +16 -23
  45. package/dist/packages/_es/Layout.js +1 -1
  46. package/dist/packages/_es/List.js +34 -41
  47. package/dist/packages/_es/Menu.js +12 -15
  48. package/dist/packages/_es/MenuItem.js +7 -7
  49. package/dist/packages/_es/Navbar.js +5 -4
  50. package/dist/packages/_es/NoticeBar.js +40 -47
  51. package/dist/packages/_es/Notify.js +166 -27
  52. package/dist/packages/_es/NumberKeyboard.js +22 -11
  53. package/dist/packages/_es/OldPicker.js +120 -122
  54. package/dist/packages/_es/OverLay.js +25 -5
  55. package/dist/packages/_es/Pagination.js +14 -13
  56. package/dist/packages/_es/Picker.js +23 -45
  57. package/dist/packages/_es/Popover.js +29 -154
  58. package/dist/packages/_es/Popup.js +69 -6
  59. package/dist/packages/_es/Price.js +5 -17
  60. package/dist/packages/_es/Progress.js +23 -19
  61. package/dist/packages/_es/PullRefresh.js +1 -1
  62. package/dist/packages/_es/Radio.js +14 -4
  63. package/dist/packages/_es/RadioGroup.js +1 -1
  64. package/dist/packages/_es/Range.js +33 -46
  65. package/dist/packages/_es/Rate.js +19 -16
  66. package/dist/packages/_es/Row.js +1 -1
  67. package/dist/packages/_es/SearchBar.js +11 -12
  68. package/dist/packages/_es/ShortPassword.js +75 -96
  69. package/dist/packages/_es/SideNavBar.js +16 -5
  70. package/dist/packages/_es/SideNavBarItem.js +1 -1
  71. package/dist/packages/_es/Signature.js +88 -69
  72. package/dist/packages/_es/Skeleton.js +11 -8
  73. package/dist/packages/_es/Sku.js +57 -49
  74. package/dist/packages/_es/Step.js +1 -1
  75. package/dist/packages/_es/Steps.js +1 -1
  76. package/dist/packages/_es/Sticky.js +23 -28
  77. package/dist/packages/_es/SubSideNavBar.js +1 -1
  78. package/dist/packages/_es/Swipe.js +26 -39
  79. package/dist/packages/_es/Swiper.js +14 -32
  80. package/dist/packages/_es/SwiperItem.js +2 -2
  81. package/dist/packages/_es/Switch.js +3 -3
  82. package/dist/packages/_es/TabPane.js +1 -1
  83. package/dist/packages/_es/Tabbar.js +3 -3
  84. package/dist/packages/_es/TabbarItem.js +21 -11
  85. package/dist/packages/_es/Table.js +18 -17
  86. package/dist/packages/_es/Tabs.js +20 -21
  87. package/dist/packages/_es/Tag.js +4 -4
  88. package/dist/packages/_es/TextArea.js +47 -48
  89. package/dist/packages/_es/TimeDetail.js +3 -4
  90. package/dist/packages/_es/TimePannel.js +3 -3
  91. package/dist/packages/_es/TimeSelect.js +7 -8
  92. package/dist/packages/_es/Toast.js +170 -41
  93. package/dist/packages/_es/Uploader.js +145 -116
  94. package/dist/packages/_es/Video.js +9 -8
  95. package/dist/packages/_es/common.js +1 -1
  96. package/dist/packages/_es/component.js +165 -3
  97. package/dist/packages/_es/index.js +6 -44
  98. package/dist/packages/_es/index2.js +31 -8
  99. package/dist/packages/_es/index3.js +7 -58
  100. package/dist/packages/_es/index4.js +56 -413
  101. package/dist/packages/_es/{index.taro.js → index5.js} +113 -140
  102. package/dist/packages/_es/plugin-vue_export-helper.js +1 -1
  103. package/dist/packages/_es/pxCheck.js +1 -1
  104. package/dist/packages/_es/raf.js +19 -0
  105. package/dist/packages/actionsheet/index.scss +8 -0
  106. package/dist/packages/ecard/index.scss +83 -0
  107. package/dist/style.css +1 -1
  108. package/dist/styles/themes/default.scss +48 -47
  109. package/dist/styles/themes/jdt.scss +48 -47
  110. package/dist/styles/variables-jdt.scss +3 -0
  111. package/dist/styles/variables.scss +3 -0
  112. package/dist/types/__VUE/actionsheet/index.d.ts +280 -0
  113. package/dist/types/__VUE/address/index.d.ts +386 -0
  114. package/dist/types/__VUE/audio/index.d.ts +92 -0
  115. package/dist/types/__VUE/audiooperate/index.d.ts +68 -0
  116. package/dist/types/__VUE/avatar/index.d.ts +66 -0
  117. package/dist/types/__VUE/backtop/index.d.ts +105 -0
  118. package/dist/types/__VUE/badge/index.d.ts +94 -0
  119. package/dist/types/__VUE/barrage/index.d.ts +80 -0
  120. package/dist/types/__VUE/button/index.d.ts +116 -0
  121. package/dist/types/__VUE/calendar/index.d.ts +155 -0
  122. package/dist/types/__VUE/calendaritem/index.d.ts +195 -0
  123. package/dist/types/__VUE/card/index.d.ts +81 -0
  124. package/dist/types/__VUE/cascader/cascader-item.d.ts +76 -0
  125. package/dist/types/__VUE/cascader/helper.d.ts +8 -0
  126. package/dist/types/__VUE/cascader/index.d.ts +76 -0
  127. package/dist/types/__VUE/cascader/tree.d.ts +17 -0
  128. package/dist/types/__VUE/cascader/types.d.ts +30 -0
  129. package/dist/types/__VUE/cell/index.d.ts +109 -0
  130. package/dist/types/__VUE/cellgroup/index.d.ts +38 -0
  131. package/dist/types/__VUE/checkbox/index.d.ts +102 -0
  132. package/dist/types/__VUE/checkboxgroup/index.d.ts +39 -0
  133. package/dist/types/__VUE/circleprogress/index.d.ts +66 -0
  134. package/dist/types/__VUE/col/index.d.ts +42 -0
  135. package/dist/types/__VUE/collapse/index.d.ts +104 -0
  136. package/dist/types/__VUE/collapseitem/index.d.ts +83 -0
  137. package/dist/types/__VUE/countdown/index.d.ts +91 -0
  138. package/dist/types/__VUE/countup/index.d.ts +216 -0
  139. package/dist/types/__VUE/datepicker/index.d.ts +347 -0
  140. package/dist/types/__VUE/datepicker/utils.d.ts +5 -0
  141. package/dist/types/__VUE/dialog/index.d.ts +306 -0
  142. package/dist/types/__VUE/divider/index.d.ts +47 -0
  143. package/dist/types/__VUE/drag/index.d.ts +61 -0
  144. package/dist/types/__VUE/ecard/index.d.ts +123 -0
  145. package/dist/types/__VUE/elevator/index.d.ts +71 -0
  146. package/dist/types/__VUE/empty/index.d.ts +47 -0
  147. package/dist/types/__VUE/fixednav/index.d.ts +96 -0
  148. package/dist/types/__VUE/form/common.d.ts +20 -0
  149. package/dist/types/__VUE/form/index.d.ts +32 -0
  150. package/dist/types/__VUE/form/types.d.ts +13 -0
  151. package/dist/types/__VUE/formitem/index.d.ts +120 -0
  152. package/dist/types/__VUE/formitem/types.d.ts +10 -0
  153. package/dist/types/__VUE/grid/common.d.ts +91 -0
  154. package/dist/types/__VUE/grid/index.d.ts +100 -0
  155. package/dist/types/__VUE/griditem/index.d.ts +80 -0
  156. package/dist/types/__VUE/icon/index.d.ts +74 -0
  157. package/dist/types/__VUE/imagepreview/index.d.ts +125 -0
  158. package/dist/types/__VUE/indicator/index.d.ts +70 -0
  159. package/dist/types/__VUE/infiniteloading/index.d.ts +140 -0
  160. package/dist/types/__VUE/input/index.d.ts +337 -0
  161. package/dist/types/__VUE/input/util.d.ts +5 -0
  162. package/dist/types/__VUE/inputnumber/index.d.ts +117 -0
  163. package/dist/types/__VUE/layout/index.d.ts +13 -0
  164. package/dist/types/__VUE/list/index.d.ts +48 -0
  165. package/dist/types/__VUE/menu/index.d.ts +51 -0
  166. package/dist/types/__VUE/menuitem/index.d.ts +77 -0
  167. package/dist/types/__VUE/navbar/index.d.ts +83 -0
  168. package/dist/types/__VUE/noticebar/index.d.ts +209 -0
  169. package/dist/types/__VUE/notify/index.d.ts +103 -0
  170. package/dist/types/__VUE/numberkeyboard/index.d.ts +124 -0
  171. package/dist/types/__VUE/oldpicker/Column.d.ts +96 -0
  172. package/dist/types/__VUE/oldpicker/commonProps.d.ts +22 -0
  173. package/dist/types/__VUE/oldpicker/index.d.ts +360 -0
  174. package/dist/types/__VUE/oldpicker/types.d.ts +24 -0
  175. package/dist/types/__VUE/overlay/index.d.ts +1614 -0
  176. package/dist/types/__VUE/pagination/index.d.ts +112 -0
  177. package/dist/types/__VUE/picker/Column.d.ts +90 -0
  178. package/dist/types/__VUE/picker/index.d.ts +343 -0
  179. package/dist/types/__VUE/picker/types.d.ts +26 -0
  180. package/dist/types/__VUE/popover/index.d.ts +233 -0
  181. package/dist/types/__VUE/popup/index.d.ts +1734 -0
  182. package/dist/types/__VUE/popup/use-lock-scroll.d.ts +5 -0
  183. package/dist/types/__VUE/price/index.d.ts +87 -0
  184. package/dist/types/__VUE/progress/index.d.ts +138 -0
  185. package/dist/types/__VUE/pullrefresh/index.d.ts +128 -0
  186. package/dist/types/__VUE/pullrefresh/use-touch.d.ts +20 -0
  187. package/dist/types/__VUE/pullrefresh/util.d.ts +6 -0
  188. package/dist/types/__VUE/radio/index.d.ts +90 -0
  189. package/dist/types/__VUE/radiogroup/index.d.ts +48 -0
  190. package/dist/types/__VUE/range/index.d.ts +156 -0
  191. package/dist/types/__VUE/rate/index.d.ts +142 -0
  192. package/dist/types/__VUE/row/index.d.ts +63 -0
  193. package/dist/types/__VUE/searchbar/index.d.ts +100 -0
  194. package/dist/types/__VUE/shortpassword/index.d.ts +137 -0
  195. package/dist/types/__VUE/sidenavbar/index.d.ts +36 -0
  196. package/dist/types/__VUE/sidenavbaritem/index.d.ts +41 -0
  197. package/dist/types/__VUE/signature/index.d.ts +73 -0
  198. package/dist/types/__VUE/skeleton/common.d.ts +63 -0
  199. package/dist/types/__VUE/skeleton/index.d.ts +117 -0
  200. package/dist/types/__VUE/sku/components/SkuHeader.d.ts +27 -0
  201. package/dist/types/__VUE/sku/components/SkuOperate.d.ts +70 -0
  202. package/dist/types/__VUE/sku/components/SkuSelect.d.ts +30 -0
  203. package/dist/types/__VUE/sku/components/SkuStepper.d.ts +67 -0
  204. package/dist/types/__VUE/sku/index.d.ts +300 -0
  205. package/dist/types/__VUE/step/index.d.ts +70 -0
  206. package/dist/types/__VUE/steps/index.d.ts +47 -0
  207. package/dist/types/__VUE/sticky/index.d.ts +63 -0
  208. package/dist/types/__VUE/subsidenavbar/index.d.ts +54 -0
  209. package/dist/types/__VUE/swipe/index.d.ts +69 -0
  210. package/dist/types/__VUE/swiper/index.d.ts +163 -0
  211. package/dist/types/__VUE/swiper/use-touch.d.ts +20 -0
  212. package/dist/types/__VUE/swiperitem/index.d.ts +24 -0
  213. package/dist/types/__VUE/switch/index.d.ts +136 -0
  214. package/dist/types/__VUE/tabbar/index.d.ts +84 -0
  215. package/dist/types/__VUE/tabbaritem/index.d.ts +108 -0
  216. package/dist/types/__VUE/table/common.d.ts +55 -0
  217. package/dist/types/__VUE/table/index.d.ts +76 -0
  218. package/dist/types/__VUE/table/renderColumn.d.ts +20 -0
  219. package/dist/types/__VUE/table/types.d.ts +19 -0
  220. package/dist/types/__VUE/tabpane/index.d.ts +47 -0
  221. package/dist/types/__VUE/tabs/index.d.ts +128 -0
  222. package/dist/types/__VUE/tag/index.d.ts +89 -0
  223. package/dist/types/__VUE/textarea/index.d.ts +121 -0
  224. package/dist/types/__VUE/timedetail/index.d.ts +48 -0
  225. package/dist/types/__VUE/timepannel/index.d.ts +43 -0
  226. package/dist/types/__VUE/timeselect/index.d.ts +82 -0
  227. package/dist/types/__VUE/toast/index.d.ts +149 -0
  228. package/dist/types/__VUE/uploader/index.d.ts +258 -0
  229. package/dist/types/__VUE/uploader/uploader.d.ts +25 -0
  230. package/dist/types/__VUE/video/index.d.ts +123 -0
  231. package/dist/{index.d.ts → types/index.d.ts} +0 -0
  232. package/dist/types/nutui.d.ts +93 -0
  233. package/package.json +14 -5
  234. package/dist/nutui.d.ts +0 -104
  235. package/dist/packages/_es/use-lock-scroll.js +0 -23
  236. package/dist/packages/_es/util.js +0 -47
@@ -19,13 +19,12 @@ var __publicField = (obj, key, value) => {
19
19
  return value;
20
20
  };
21
21
  /*!
22
- * @nutui/nutui v3.1.19-beta.1 Sat Apr 02 2022 16:26:37 GMT+0800 (中国标准时间)
22
+ * @nutui/nutui v3.1.19-beta.4 Tue Apr 12 2022 17:39:20 GMT+0800 (中国标准时间)
23
23
  * (c) 2022 @jdf2e.
24
24
  * Released under the MIT License.
25
25
  */
26
- import { reactive, computed, resolveComponent, openBlock, createElementBlock, normalizeClass, renderSlot, createBlock, createCommentVNode, Fragment, renderList, createElementVNode, toDisplayString, createVNode, createTextVNode } from "vue";
26
+ import { reactive, computed, resolveComponent, openBlock, createElementBlock, normalizeClass, renderSlot, Fragment, createCommentVNode, renderList, createElementVNode, toDisplayString, createVNode, createBlock, createTextVNode } from "vue";
27
27
  import { c as createComponent } from "./component.js";
28
- import Taro from "@tarojs/taro";
29
28
  import { _ as _export_sfc } from "./plugin-vue_export-helper.js";
30
29
  class UploadOptions {
31
30
  constructor() {
@@ -111,32 +110,23 @@ class Uploader {
111
110
  });
112
111
  }
113
112
  }
114
- const { componentName, create } = createComponent("uploader");
113
+ const { componentName, create, translate } = createComponent("uploader");
115
114
  class FileItem {
116
115
  constructor() {
117
116
  __publicField(this, "status", "ready");
118
- __publicField(this, "message", "\u51C6\u5907\u5B8C\u6210");
117
+ __publicField(this, "message", translate("ready"));
119
118
  __publicField(this, "uid", new Date().getTime().toString());
120
- __publicField(this, "url");
121
- __publicField(this, "path");
122
119
  __publicField(this, "name");
120
+ __publicField(this, "url");
123
121
  __publicField(this, "type");
124
122
  __publicField(this, "percentage", 0);
125
- __publicField(this, "formData", {});
123
+ __publicField(this, "formData", new FormData());
126
124
  }
127
125
  }
128
126
  const _sfc_main = create({
129
127
  props: {
130
128
  name: { type: String, default: "file" },
131
129
  url: { type: String, default: "" },
132
- sizeType: {
133
- type: Array,
134
- default: () => ["original", "compressed"]
135
- },
136
- sourceType: {
137
- type: Array,
138
- default: () => ["album", "camera"]
139
- },
140
130
  timeout: { type: [Number, String], default: 1e3 * 30 },
141
131
  fileList: { type: Array, default: () => [] },
142
132
  isPreview: { type: Boolean, default: true },
@@ -145,7 +135,7 @@ const _sfc_main = create({
145
135
  method: { type: String, default: "post" },
146
136
  capture: { type: Boolean, default: false },
147
137
  maximize: { type: [Number, String], default: Number.MAX_VALUE },
148
- maximum: { type: [Number, String], default: 9 },
138
+ maximum: { type: [Number, String], default: 1 },
149
139
  clearInput: { type: Boolean, default: true },
150
140
  accept: { type: String, default: "*" },
151
141
  headers: { type: Object, default: {} },
@@ -153,6 +143,8 @@ const _sfc_main = create({
153
143
  uploadIcon: { type: String, default: "photograph" },
154
144
  uploadIconSize: { type: [String, Number], default: "" },
155
145
  xhrState: { type: [Number, String], default: 200 },
146
+ withCredentials: { type: Boolean, default: false },
147
+ multiple: { type: Boolean, default: false },
156
148
  disabled: { type: Boolean, default: false },
157
149
  autoUpload: { type: Boolean, default: true },
158
150
  beforeUpload: {
@@ -187,101 +179,97 @@ const _sfc_main = create({
187
179
  [prefixCls]: true
188
180
  };
189
181
  });
190
- const chooseImage = () => {
191
- if (props.disabled) {
192
- return;
193
- }
194
- Taro.chooseImage({
195
- count: props.maximum * 1 - props.fileList.length,
196
- sizeType: props.sizeType,
197
- sourceType: props.sourceType,
198
- success: onChange
199
- });
182
+ const clearInput = (el) => {
183
+ el.value = "";
200
184
  };
201
185
  const fileItemClick = (fileItem) => {
202
186
  emit("file-item-click", { fileItem });
203
187
  };
204
- const executeUpload = (fileItem, index) => {
188
+ const executeUpload = (fileItem, index2) => {
205
189
  const uploadOption = new UploadOptions();
206
- uploadOption.name = props.name;
207
190
  uploadOption.url = props.url;
208
- for (const [key, value] of Object.entries(props.data)) {
209
- fileItem.formData[key] = value;
210
- }
211
191
  uploadOption.formData = fileItem.formData;
192
+ uploadOption.timeout = props.timeout * 1;
212
193
  uploadOption.method = props.method;
194
+ uploadOption.xhrState = props.xhrState;
213
195
  uploadOption.headers = props.headers;
214
- uploadOption.taroFilePath = fileItem.path;
196
+ uploadOption.withCredentials = props.withCredentials;
215
197
  uploadOption.onStart = (option) => {
216
198
  fileItem.status = "ready";
217
- fileItem.message = "\u51C6\u5907\u4E0A\u4F20";
218
- clearUploadQueue(index);
199
+ fileItem.message = translate("readyUpload");
200
+ clearUploadQueue(index2);
219
201
  emit("start", option);
220
202
  };
221
203
  uploadOption.onProgress = (event, option) => {
222
204
  fileItem.status = "uploading";
223
- fileItem.message = "\u4E0A\u4F20\u4E2D";
224
- fileItem.percentage = event.progress;
205
+ fileItem.message = translate("uploading");
206
+ fileItem.percentage = (event.loaded / event.total * 100).toFixed(0);
225
207
  emit("progress", { event, option, percentage: fileItem.percentage });
226
208
  };
227
- uploadOption.onSuccess = (data, option) => {
209
+ uploadOption.onSuccess = (responseText, option) => {
228
210
  fileItem.status = "success";
229
- fileItem.message = "\u4E0A\u4F20\u6210\u529F";
211
+ fileItem.message = translate("success");
230
212
  emit("success", {
231
- data,
213
+ responseText,
232
214
  option,
233
215
  fileItem
234
216
  });
235
217
  emit("update:fileList", fileList);
236
218
  };
237
- uploadOption.onFailure = (data, option) => {
219
+ uploadOption.onFailure = (responseText, option) => {
238
220
  fileItem.status = "error";
239
- fileItem.message = "\u4E0A\u4F20\u5931\u8D25";
221
+ fileItem.message = translate("error");
240
222
  emit("failure", {
241
- data,
223
+ responseText,
242
224
  option,
243
225
  fileItem
244
226
  });
245
227
  };
246
228
  let task = new Uploader(uploadOption);
247
229
  if (props.autoUpload) {
248
- task.uploadTaro(Taro.uploadFile);
230
+ task.upload();
249
231
  } else {
250
232
  uploadQueue.push(new Promise((resolve, reject) => {
251
233
  resolve(task);
252
234
  }));
253
235
  }
254
236
  };
255
- const clearUploadQueue = (index = -1) => {
256
- if (index > -1) {
257
- uploadQueue.splice(index, 1);
237
+ const clearUploadQueue = (index2 = -1) => {
238
+ if (index2 > -1) {
239
+ uploadQueue.splice(index2, 1);
258
240
  } else {
259
241
  uploadQueue = [];
260
242
  }
261
243
  };
262
244
  const submit = () => {
263
245
  Promise.all(uploadQueue).then((res) => {
264
- res.forEach((i) => i.uploadTaro(Taro.uploadFile));
246
+ res.forEach((i) => i.upload());
265
247
  });
266
248
  };
267
249
  const readFile = (files) => {
268
- const imgReg = /\.(png|jpeg|jpg|webp|gif)$/i;
269
- files.forEach((file, index) => {
270
- let fileType = file.type;
271
- const fileItem = reactive(new FileItem());
272
- if (!fileType && imgReg.test(file.path)) {
273
- fileType = "image";
250
+ files.forEach((file, index2) => {
251
+ const formData = new FormData();
252
+ for (const [key, value] of Object.entries(props.data)) {
253
+ formData.append(key, value);
274
254
  }
275
- fileItem.path = file.path;
276
- fileItem.name = file.path;
255
+ formData.append(props.name, file);
256
+ const fileItem = reactive(new FileItem());
257
+ fileItem.name = file.name;
277
258
  fileItem.status = "ready";
278
- fileItem.message = "\u7B49\u5F85\u4E0A\u4F20";
279
- fileItem.type = fileType;
280
- if (props.isPreview) {
281
- fileItem.url = file.path;
259
+ fileItem.type = file.type;
260
+ fileItem.formData = formData;
261
+ fileItem.message = translate("waitingUpload");
262
+ executeUpload(fileItem, index2);
263
+ if (props.isPreview && file.type.includes("image")) {
264
+ const reader = new FileReader();
265
+ reader.onload = (event) => {
266
+ fileItem.url = event.target.result;
267
+ fileList.push(fileItem);
268
+ };
269
+ reader.readAsDataURL(file);
270
+ } else {
271
+ fileList.push(fileItem);
282
272
  }
283
- fileList.push(fileItem);
284
- executeUpload(fileItem, index);
285
273
  });
286
274
  };
287
275
  const filterFiles = (files) => {
@@ -305,39 +293,45 @@ const _sfc_main = create({
305
293
  }
306
294
  return files;
307
295
  };
308
- const onDelete = (file, index) => {
309
- clearUploadQueue(index);
296
+ const onDelete = (file, index2) => {
297
+ clearUploadQueue(index2);
310
298
  if (props.beforeDelete(file, fileList)) {
311
- fileList.splice(index, 1);
299
+ fileList.splice(index2, 1);
312
300
  emit("delete", {
313
301
  file,
314
302
  fileList,
315
- index
303
+ index: index2
316
304
  });
317
- } else {
318
- console.log("\u7528\u6237\u963B\u6B62\u4E86\u5220\u9664\uFF01");
319
305
  }
320
306
  };
321
- const onChange = (res) => {
322
- const { tempFilePaths, tempFiles } = res;
307
+ const onChange = (event) => {
308
+ if (props.disabled) {
309
+ return;
310
+ }
311
+ const $el = event.target;
312
+ let { files } = $el;
323
313
  if (props.beforeUpload) {
324
- props.beforeUpload(tempFiles).then((f) => {
325
- const _files = filterFiles(f);
314
+ props.beforeUpload(files).then((f) => {
315
+ const _files = filterFiles(new Array().slice.call(f));
326
316
  readFile(_files);
327
317
  });
328
318
  } else {
329
- const _files = filterFiles(tempFiles);
319
+ const _files = filterFiles(new Array().slice.call(files));
330
320
  readFile(_files);
331
321
  }
332
322
  emit("change", {
333
- fileList
323
+ fileList,
324
+ event
334
325
  });
326
+ if (props.clearInput) {
327
+ clearInput($el);
328
+ }
335
329
  };
336
330
  return {
331
+ onChange,
337
332
  onDelete,
338
333
  fileList,
339
334
  classes,
340
- chooseImage,
341
335
  fileItemClick,
342
336
  clearUploadQueue,
343
337
  submit
@@ -348,34 +342,37 @@ const _hoisted_1 = {
348
342
  key: 0,
349
343
  class: "nut-uploader__slot"
350
344
  };
351
- const _hoisted_2 = {
345
+ const _hoisted_2 = ["accept", "multiple", "name", "disabled"];
346
+ const _hoisted_3 = ["accept", "multiple", "name", "disabled"];
347
+ const _hoisted_4 = {
352
348
  key: 0,
353
349
  class: "nut-uploader__preview-img"
354
350
  };
355
- const _hoisted_3 = {
351
+ const _hoisted_5 = {
356
352
  key: 0,
357
353
  class: "nut-uploader__preview__progress"
358
354
  };
359
- const _hoisted_4 = { class: "nut-uploader__preview__progress__msg" };
360
- const _hoisted_5 = {
355
+ const _hoisted_6 = { class: "nut-uploader__preview__progress__msg" };
356
+ const _hoisted_7 = {
361
357
  key: 1,
362
358
  class: "nut-uploader__preview__progress"
363
359
  };
364
- const _hoisted_6 = { class: "nut-uploader__preview__progress__msg" };
365
- const _hoisted_7 = ["onClick", "src"];
366
- const _hoisted_8 = {
360
+ const _hoisted_8 = { class: "nut-uploader__preview__progress__msg" };
361
+ const _hoisted_9 = ["onClick", "src"];
362
+ const _hoisted_10 = {
367
363
  key: 4,
368
364
  class: "nut-uploader__preview-img__file"
369
365
  };
370
- const _hoisted_9 = ["onClick"];
371
- const _hoisted_10 = { class: "tips" };
372
- const _hoisted_11 = {
366
+ const _hoisted_11 = ["onClick"];
367
+ const _hoisted_12 = { class: "tips" };
368
+ const _hoisted_13 = {
373
369
  key: 1,
374
370
  class: "nut-uploader__preview-list"
375
371
  };
376
- const _hoisted_12 = ["onClick"];
372
+ const _hoisted_14 = ["onClick"];
373
+ const _hoisted_15 = ["accept", "multiple", "name", "disabled"];
374
+ const _hoisted_16 = ["accept", "multiple", "name", "disabled"];
377
375
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
378
- const _component_nut_button = resolveComponent("nut-button");
379
376
  const _component_nut_icon = resolveComponent("nut-icon");
380
377
  const _component_nut_progress = resolveComponent("nut-progress");
381
378
  return openBlock(), createElementBlock("view", {
@@ -383,64 +380,80 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
383
380
  }, [
384
381
  _ctx.$slots.default ? (openBlock(), createElementBlock("view", _hoisted_1, [
385
382
  renderSlot(_ctx.$slots, "default"),
386
- _ctx.maximum - _ctx.fileList.length ? (openBlock(), createBlock(_component_nut_button, {
387
- key: 0,
388
- class: "nut-uploader__input",
389
- onClick: _ctx.chooseImage
390
- }, null, 8, ["onClick"])) : createCommentVNode("", true)
383
+ _ctx.maximum - _ctx.fileList.length ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
384
+ _ctx.capture ? (openBlock(), createElementBlock("input", {
385
+ key: 0,
386
+ class: "nut-uploader__input",
387
+ type: "file",
388
+ capture: "camera",
389
+ accept: _ctx.accept,
390
+ multiple: _ctx.multiple,
391
+ name: _ctx.name,
392
+ disabled: _ctx.disabled,
393
+ onChange: _cache[0] || (_cache[0] = (...args) => _ctx.onChange && _ctx.onChange(...args))
394
+ }, null, 40, _hoisted_2)) : (openBlock(), createElementBlock("input", {
395
+ key: 1,
396
+ class: "nut-uploader__input",
397
+ type: "file",
398
+ accept: _ctx.accept,
399
+ multiple: _ctx.multiple,
400
+ name: _ctx.name,
401
+ disabled: _ctx.disabled,
402
+ onChange: _cache[1] || (_cache[1] = (...args) => _ctx.onChange && _ctx.onChange(...args))
403
+ }, null, 40, _hoisted_3))
404
+ ], 64)) : createCommentVNode("", true)
391
405
  ])) : createCommentVNode("", true),
392
- (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.fileList, (item, index) => {
393
- var _a;
406
+ (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.fileList, (item, index2) => {
394
407
  return openBlock(), createElementBlock("view", {
395
408
  class: normalizeClass(["nut-uploader__preview", [_ctx.listType]]),
396
409
  key: item.uid
397
410
  }, [
398
- _ctx.listType == "picture" && !_ctx.$slots.default ? (openBlock(), createElementBlock("view", _hoisted_2, [
399
- item.status == "ready" ? (openBlock(), createElementBlock("view", _hoisted_3, [
400
- createElementVNode("view", _hoisted_4, toDisplayString(item.message), 1)
401
- ])) : item.status != "success" ? (openBlock(), createElementBlock("view", _hoisted_5, [
411
+ _ctx.listType == "picture" && !_ctx.$slots.default ? (openBlock(), createElementBlock("view", _hoisted_4, [
412
+ item.status == "ready" ? (openBlock(), createElementBlock("view", _hoisted_5, [
413
+ createElementVNode("view", _hoisted_6, toDisplayString(item.message), 1)
414
+ ])) : item.status != "success" ? (openBlock(), createElementBlock("view", _hoisted_7, [
402
415
  createVNode(_component_nut_icon, {
403
416
  color: "#fff",
404
417
  name: item.status == "error" ? "failure" : "loading"
405
418
  }, null, 8, ["name"]),
406
- createElementVNode("view", _hoisted_6, toDisplayString(item.message), 1)
419
+ createElementVNode("view", _hoisted_8, toDisplayString(item.message), 1)
407
420
  ])) : createCommentVNode("", true),
408
421
  _ctx.isDeletable ? (openBlock(), createBlock(_component_nut_icon, {
409
422
  key: 2,
410
423
  color: "rgba(0,0,0,0.6)",
411
- onClick: ($event) => _ctx.onDelete(item, index),
424
+ onClick: ($event) => _ctx.onDelete(item, index2),
412
425
  class: "close",
413
426
  name: "failure"
414
427
  }, null, 8, ["onClick"])) : createCommentVNode("", true),
415
- ((_a = item.type) == null ? void 0 : _a.includes("image")) && item.url ? (openBlock(), createElementBlock("img", {
428
+ item.type.includes("image") && item.url ? (openBlock(), createElementBlock("img", {
416
429
  key: 3,
417
430
  class: "nut-uploader__preview-img__c",
418
431
  onClick: ($event) => _ctx.fileItemClick(item),
419
432
  src: item.url
420
- }, null, 8, _hoisted_7)) : (openBlock(), createElementBlock("view", _hoisted_8, [
433
+ }, null, 8, _hoisted_9)) : (openBlock(), createElementBlock("view", _hoisted_10, [
421
434
  createElementVNode("view", {
422
- class: "nut-uploader__preview-img__file__name",
423
- onClick: ($event) => _ctx.fileItemClick(item)
435
+ onClick: ($event) => _ctx.fileItemClick(item),
436
+ class: "nut-uploader__preview-img__file__name"
424
437
  }, [
425
438
  createVNode(_component_nut_icon, {
426
439
  color: "#808080",
427
440
  name: "link"
428
441
  }),
429
442
  createTextVNode("\xA0" + toDisplayString(item.name), 1)
430
- ], 8, _hoisted_9)
443
+ ], 8, _hoisted_11)
431
444
  ])),
432
- createElementVNode("view", _hoisted_10, toDisplayString(item.name), 1)
433
- ])) : _ctx.listType == "list" ? (openBlock(), createElementBlock("view", _hoisted_11, [
445
+ createElementVNode("view", _hoisted_12, toDisplayString(item.name), 1)
446
+ ])) : _ctx.listType == "list" ? (openBlock(), createElementBlock("view", _hoisted_13, [
434
447
  createElementVNode("view", {
435
- class: normalizeClass(["nut-uploader__preview-img__file__name", [item.status]]),
436
- onClick: ($event) => _ctx.fileItemClick(item)
448
+ onClick: ($event) => _ctx.fileItemClick(item),
449
+ class: normalizeClass(["nut-uploader__preview-img__file__name", [item.status]])
437
450
  }, [
438
451
  createVNode(_component_nut_icon, { name: "link" }),
439
452
  createTextVNode("\xA0" + toDisplayString(item.name), 1)
440
- ], 10, _hoisted_12),
453
+ ], 10, _hoisted_14),
441
454
  createVNode(_component_nut_icon, {
442
455
  class: "nut-uploader__preview-img__file__del",
443
- onClick: ($event) => _ctx.onDelete(item, index),
456
+ onClick: ($event) => _ctx.onDelete(item, index2),
444
457
  color: "#808080",
445
458
  name: "del"
446
459
  }, null, 8, ["onClick"]),
@@ -463,12 +476,28 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
463
476
  color: "#808080",
464
477
  name: _ctx.uploadIcon
465
478
  }, null, 8, ["size", "name"]),
466
- createVNode(_component_nut_button, {
479
+ _ctx.capture ? (openBlock(), createElementBlock("input", {
480
+ key: 0,
481
+ class: "nut-uploader__input",
482
+ type: "file",
483
+ capture: "camera",
484
+ accept: _ctx.accept,
485
+ multiple: _ctx.multiple,
486
+ name: _ctx.name,
487
+ disabled: _ctx.disabled,
488
+ onChange: _cache[2] || (_cache[2] = (...args) => _ctx.onChange && _ctx.onChange(...args))
489
+ }, null, 40, _hoisted_15)) : (openBlock(), createElementBlock("input", {
490
+ key: 1,
467
491
  class: "nut-uploader__input",
468
- onClick: _ctx.chooseImage
469
- }, null, 8, ["onClick"])
492
+ type: "file",
493
+ accept: _ctx.accept,
494
+ multiple: _ctx.multiple,
495
+ name: _ctx.name,
496
+ disabled: _ctx.disabled,
497
+ onChange: _cache[3] || (_cache[3] = (...args) => _ctx.onChange && _ctx.onChange(...args))
498
+ }, null, 40, _hoisted_16))
470
499
  ], 2)) : createCommentVNode("", true)
471
500
  ], 2);
472
501
  }
473
- var index_taro = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
474
- export { FileItem, index_taro as default };
502
+ var index = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
503
+ export { FileItem, index as default };
@@ -18,14 +18,14 @@ var __spreadValues = (a, b) => {
18
18
  };
19
19
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
20
  /*!
21
- * @nutui/nutui v3.1.19-beta.1 Sat Apr 02 2022 16:26:37 GMT+0800 (中国标准时间)
21
+ * @nutui/nutui v3.1.19-beta.4 Tue Apr 12 2022 17:39:20 GMT+0800 (中国标准时间)
22
22
  * (c) 2022 @jdf2e.
23
23
  * Released under the MIT License.
24
24
  */
25
25
  import { reactive, ref, computed, watch, nextTick, onMounted, toRefs, openBlock, createElementBlock, createElementVNode, createCommentVNode, withDirectives, vShow, normalizeClass, toDisplayString, normalizeStyle, withModifiers } from "vue";
26
26
  import { c as createComponent } from "./component.js";
27
27
  import { _ as _export_sfc } from "./plugin-vue_export-helper.js";
28
- const { create } = createComponent("video");
28
+ const { create, translate } = createComponent("video");
29
29
  const _sfc_main = create({
30
30
  props: {
31
31
  source: {
@@ -243,7 +243,8 @@ const _sfc_main = create({
243
243
  touchSlidMove,
244
244
  touchSlidEnd,
245
245
  retry,
246
- fullScreen
246
+ fullScreen,
247
+ translate
247
248
  });
248
249
  }
249
250
  });
@@ -269,7 +270,7 @@ const _hoisted_9 = {
269
270
  };
270
271
  const _hoisted_10 = { class: "duration-time" };
271
272
  const _hoisted_11 = { class: "nut-video-error" };
272
- const _hoisted_12 = /* @__PURE__ */ createElementVNode("p", { class: "lose" }, "\u89C6\u9891\u52A0\u8F7D\u5931\u8D25", -1);
273
+ const _hoisted_12 = { class: "lose" };
273
274
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
274
275
  return openBlock(), createElementBlock("div", _hoisted_1, [
275
276
  createElementVNode("video", {
@@ -341,15 +342,15 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
341
342
  [vShow, _ctx.showToolbox && !_ctx.isDisabled]
342
343
  ]),
343
344
  withDirectives(createElementVNode("div", _hoisted_11, [
344
- _hoisted_12,
345
+ createElementVNode("p", _hoisted_12, toDisplayString(_ctx.translate("errorTip")), 1),
345
346
  createElementVNode("p", {
346
347
  class: "retry",
347
348
  onClick: _cache[9] || (_cache[9] = (...args) => _ctx.retry && _ctx.retry(...args))
348
- }, "\u70B9\u51FB\u91CD\u8BD5")
349
+ }, toDisplayString(_ctx.translate("clickRetry")), 1)
349
350
  ], 512), [
350
351
  [vShow, _ctx.state.isError]
351
352
  ])
352
353
  ], 512);
353
354
  }
354
- var index = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
355
- export { index as default };
355
+ var Video = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
356
+ export { Video as default };
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.1.19-beta.1 Sat Apr 02 2022 16:26:37 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.1.19-beta.4 Tue Apr 12 2022 17:39:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */