yc-design-vue 2.0.5 → 2.0.7

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 (371) hide show
  1. package/dist/index.umd.js +1 -1
  2. package/dist/style.css +1 -1
  3. package/es/Alert/index.d.ts +3 -3
  4. package/es/Alert/index.vue.d.ts +1 -1
  5. package/es/Alert/type.d.ts +2 -2
  6. package/es/Anchor/Anchor.vue.d.ts +1 -1
  7. package/es/Anchor/hooks/useContext.d.ts +1 -1
  8. package/es/Anchor/index.d.ts +3 -3
  9. package/es/Anchor/type.d.ts +3 -2
  10. package/es/AutoComplete/index.d.ts +18 -9
  11. package/es/AutoComplete/index.vue.d.ts +36 -18
  12. package/es/Avatar/Avatar.vue.d.ts +1 -1
  13. package/es/Avatar/index.d.ts +3 -3
  14. package/es/Avatar/type.d.ts +3 -2
  15. package/es/Badge/index.d.ts +3 -3
  16. package/es/Badge/index.vue.d.ts +1 -1
  17. package/es/Badge/type.d.ts +2 -2
  18. package/es/Button/Button.vue.d.ts +2 -2
  19. package/es/Button/ButtonGroup.vue.d.ts +1 -1
  20. package/es/Button/hooks/useContext.d.ts +3 -3
  21. package/es/Button/index.d.ts +9 -9
  22. package/es/Button/type.d.ts +6 -6
  23. package/es/Card/Card.vue.d.ts +1 -1
  24. package/es/Card/index.d.ts +3 -3
  25. package/es/Card/type.d.ts +1 -2
  26. package/es/Carousel/Carousel.vue.d.ts +2 -2
  27. package/es/Carousel/hooks/useContext.d.ts +3 -3
  28. package/es/Carousel/index.d.ts +6 -6
  29. package/es/Carousel/type.d.ts +6 -6
  30. package/es/Cascader/Cascader.vue.d.ts +7 -7
  31. package/es/Cascader/index.d.ts +6 -6
  32. package/es/Collapse/hooks/useContext.d.ts +2 -13
  33. package/es/Collapse/hooks/useContext.js +0 -1
  34. package/es/Collapse/type.d.ts +2 -1
  35. package/es/Descriptions/Descriptions.vue.d.ts +3 -3
  36. package/es/Descriptions/hooks/useContext.d.ts +1 -1
  37. package/es/Descriptions/index.d.ts +9 -9
  38. package/es/Descriptions/type.d.ts +7 -6
  39. package/es/Divider/index.d.ts +6 -6
  40. package/es/Divider/index.vue.d.ts +2 -2
  41. package/es/Divider/type.d.ts +4 -3
  42. package/es/Drawer/Drawer.vue.d.ts +1 -1
  43. package/es/Drawer/DrawerService.vue.d.ts +1 -1
  44. package/es/Drawer/index.d.ts +5 -9
  45. package/es/Drawer/type.d.ts +8 -4
  46. package/es/Dropdown/Dropdown.vue.d.ts +1 -1
  47. package/es/Dropdown/DropdownButton.vue.d.ts +1 -1
  48. package/es/Dropdown/Dsubmenu.vue.d.ts +1 -1
  49. package/es/Dropdown/index.d.ts +9 -9
  50. package/es/Dropdown/type.d.ts +4 -6
  51. package/es/Grid/hooks/useContext.d.ts +0 -11
  52. package/es/Grid/hooks/useContext.js +0 -1
  53. package/es/Image/Image.vue.d.ts +2 -2
  54. package/es/Image/ImagePreview.vue.js +1 -1
  55. package/es/Image/index.d.ts +6 -6
  56. package/es/Image/type.d.ts +3 -2
  57. package/es/Input/Input.vue.d.ts +1 -1
  58. package/es/Input/index.d.ts +3 -3
  59. package/es/InputNumber/InputNumber.vue.d.ts +8 -8
  60. package/es/InputNumber/InputOperaBtn.vue.d.ts +2 -2
  61. package/es/InputNumber/index.d.ts +9 -9
  62. package/es/InputNumber/type.d.ts +5 -4
  63. package/es/InputTag/index.d.ts +15 -6
  64. package/es/InputTag/index.vue.d.ts +5 -2
  65. package/es/InputTag/type.d.ts +2 -1
  66. package/es/Layout/LayoutSider.vue.d.ts +3 -3
  67. package/es/Layout/index.d.ts +8 -8
  68. package/es/Layout/type.d.ts +3 -4
  69. package/es/Link/index.d.ts +3 -3
  70. package/es/Link/index.vue.d.ts +1 -1
  71. package/es/Link/type.d.ts +2 -2
  72. package/es/List/List.vue.d.ts +7 -7
  73. package/es/List/index.d.ts +6 -6
  74. package/es/List/type.d.ts +2 -3
  75. package/es/Mention/index.d.ts +21 -12
  76. package/es/Mention/index.vue.d.ts +37 -19
  77. package/es/Mention/type.d.ts +3 -2
  78. package/es/Menu/Menu.vue.d.ts +2 -2
  79. package/es/Menu/index.d.ts +5 -5
  80. package/es/Menu/type.d.ts +2 -2
  81. package/es/Message/type.d.ts +3 -3
  82. package/es/Modal/Modal.vue.d.ts +1 -1
  83. package/es/Modal/ModalService.vue.d.ts +1 -1
  84. package/es/Modal/index.d.ts +13 -13
  85. package/es/Modal/index.js +1 -4
  86. package/es/Modal/type.d.ts +6 -9
  87. package/es/Notification/Notification.vue.d.ts +1 -1
  88. package/es/Notification/index.d.ts +4 -4
  89. package/es/Notification/type.d.ts +3 -4
  90. package/es/OverflowList/index.d.ts +3 -3
  91. package/es/OverflowList/index.vue.d.ts +1 -1
  92. package/es/OverflowList/type.d.ts +3 -2
  93. package/es/Popconfirm/index.d.ts +3 -3
  94. package/es/Popconfirm/index.vue.d.ts +1 -1
  95. package/es/Popconfirm/type.d.ts +2 -3
  96. package/es/Progress/Progress.vue.d.ts +1 -1
  97. package/es/Progress/ProgressCircle.vue.d.ts +3 -3
  98. package/es/Progress/ProgressLine.vue.d.ts +3 -3
  99. package/es/Progress/index.d.ts +3 -3
  100. package/es/Progress/type.d.ts +2 -3
  101. package/es/Radio/type.d.ts +1 -1
  102. package/es/ResizeBox/index.d.ts +3 -3
  103. package/es/ResizeBox/index.vue.d.ts +2 -2
  104. package/es/ResizeBox/type.d.ts +4 -4
  105. package/es/Result/index.d.ts +3 -3
  106. package/es/Result/index.vue.d.ts +1 -1
  107. package/es/Result/type.d.ts +3 -2
  108. package/es/Scrollbar/Scrollbar.vue.d.ts +1 -1
  109. package/es/Scrollbar/index.d.ts +3 -3
  110. package/es/Scrollbar/type.d.ts +2 -1
  111. package/es/Select/Select.vue.d.ts +31 -13
  112. package/es/Select/hooks/useContext.d.ts +2 -2
  113. package/es/Select/hooks/useSelectOptions.d.ts +2 -2
  114. package/es/Select/index.d.ts +18 -9
  115. package/es/Skeleton/SkeletonShape.vue.d.ts +2 -2
  116. package/es/Skeleton/index.d.ts +2 -2
  117. package/es/Skeleton/type.d.ts +2 -4
  118. package/es/Space/index.d.ts +6 -6
  119. package/es/Space/index.vue.d.ts +2 -2
  120. package/es/Space/type.d.ts +5 -4
  121. package/es/Switch/index.d.ts +9 -9
  122. package/es/Switch/index.vue.d.ts +3 -3
  123. package/es/Switch/type.d.ts +4 -4
  124. package/es/Tabs/Tabs.vue.d.ts +1 -1
  125. package/es/Tabs/hooks/useContext.d.ts +4 -4
  126. package/es/Tabs/index.d.ts +3 -3
  127. package/es/Tabs/type.d.ts +2 -3
  128. package/es/Tag/index.d.ts +3 -3
  129. package/es/Tag/index.vue.d.ts +1 -1
  130. package/es/Tag/type.d.ts +1 -2
  131. package/es/Textarea/type.d.ts +2 -2
  132. package/es/TimePicker/TimePicker.vue.d.ts +1 -1
  133. package/es/TimePicker/index.d.ts +3 -3
  134. package/es/Timeline/TimelineItem.vue.d.ts +1 -1
  135. package/es/Timeline/index.d.ts +3 -3
  136. package/es/Timeline/type.d.ts +3 -4
  137. package/es/Typography/TypographyBase.vue.d.ts +7 -7
  138. package/es/Typography/TypographyBase.vue.js +2 -2
  139. package/es/Typography/TypographyParagraph.vue.d.ts +1 -1
  140. package/es/Typography/TypographyTitle.vue.d.ts +1 -1
  141. package/es/Typography/type.d.ts +5 -4
  142. package/es/Upload/Upload.vue.d.ts +55 -0
  143. package/es/Upload/Upload.vue.js +120 -0
  144. package/es/Upload/Upload.vue3.js +5 -0
  145. package/es/Upload/UploadButton.vue.d.ts +2 -0
  146. package/es/Upload/UploadButton.vue.js +39 -0
  147. package/es/Upload/UploadButton.vue3.js +5 -0
  148. package/es/Upload/UploadDrag.vue.d.ts +2 -0
  149. package/es/Upload/UploadDrag.vue.js +37 -0
  150. package/es/Upload/UploadDrag.vue3.js +5 -0
  151. package/es/Upload/UploadFileList.vue.d.ts +24 -0
  152. package/es/Upload/UploadFileList.vue.js +7 -0
  153. package/es/Upload/UploadFileList.vue2.js +122 -0
  154. package/es/Upload/UploadPictureCard.vue.d.ts +4 -0
  155. package/es/Upload/UploadPictureCard.vue.js +7 -0
  156. package/es/Upload/UploadPictureCard.vue2.js +128 -0
  157. package/es/Upload/hooks/useContext.d.ts +53 -0
  158. package/es/Upload/hooks/useContext.js +109 -0
  159. package/es/Upload/hooks/useUpload.d.ts +51 -0
  160. package/es/Upload/hooks/useUpload.js +85 -0
  161. package/es/Upload/index.css +1 -0
  162. package/es/Upload/index.d.ts +129 -0
  163. package/es/Upload/index.js +10 -0
  164. package/es/Upload/type.d.ts +76 -0
  165. package/es/VerificationCode/index.d.ts +3 -3
  166. package/es/VerificationCode/index.vue.d.ts +1 -1
  167. package/es/VerificationCode/type.d.ts +5 -4
  168. package/es/_shared/icons/IconCopy.vue.js +1 -19
  169. package/es/_shared/icons/IconCopy.vue2.js +19 -1
  170. package/es/_shared/icons/IconEdit.vue.js +1 -19
  171. package/es/_shared/icons/IconEdit.vue2.js +19 -1
  172. package/es/_shared/icons/IconFile.vue.d.ts +2 -0
  173. package/es/_shared/icons/IconFile.vue.js +4 -0
  174. package/es/_shared/icons/IconFile.vue2.js +22 -0
  175. package/es/_shared/icons/IconUpload.vue.d.ts +2 -0
  176. package/es/_shared/icons/IconUpload.vue.js +4 -0
  177. package/es/_shared/icons/IconUpload.vue2.js +22 -0
  178. package/es/_shared/icons/index.d.ts +2 -0
  179. package/es/_shared/type/index.d.ts +3 -1
  180. package/es/_shared/utils/vue-utils.d.ts +1 -1
  181. package/es/_virtual/_plugin-vue_export-helper.js +10 -0
  182. package/es/index.d.ts +33 -31
  183. package/es/index.js +6 -3
  184. package/es/node_modules/@vueuse/core/index.js +171 -9
  185. package/es/node_modules/@vueuse/shared/index.js +29 -0
  186. package/es/style.css +1 -1
  187. package/lib/Alert/index.d.ts +3 -3
  188. package/lib/Alert/index.vue.d.ts +1 -1
  189. package/lib/Alert/type.d.ts +2 -2
  190. package/lib/Anchor/Anchor.vue.d.ts +1 -1
  191. package/lib/Anchor/hooks/useContext.d.ts +1 -1
  192. package/lib/Anchor/index.d.ts +3 -3
  193. package/lib/Anchor/type.d.ts +3 -2
  194. package/lib/AutoComplete/index.d.ts +18 -9
  195. package/lib/AutoComplete/index.vue.d.ts +36 -18
  196. package/lib/Avatar/Avatar.vue.d.ts +1 -1
  197. package/lib/Avatar/index.d.ts +3 -3
  198. package/lib/Avatar/type.d.ts +3 -2
  199. package/lib/Badge/index.d.ts +3 -3
  200. package/lib/Badge/index.vue.d.ts +1 -1
  201. package/lib/Badge/type.d.ts +2 -2
  202. package/lib/Button/Button.vue.d.ts +2 -2
  203. package/lib/Button/ButtonGroup.vue.d.ts +1 -1
  204. package/lib/Button/hooks/useContext.d.ts +3 -3
  205. package/lib/Button/index.d.ts +9 -9
  206. package/lib/Button/type.d.ts +6 -6
  207. package/lib/Card/Card.vue.d.ts +1 -1
  208. package/lib/Card/index.d.ts +3 -3
  209. package/lib/Card/type.d.ts +1 -2
  210. package/lib/Carousel/Carousel.vue.d.ts +2 -2
  211. package/lib/Carousel/hooks/useContext.d.ts +3 -3
  212. package/lib/Carousel/index.d.ts +6 -6
  213. package/lib/Carousel/type.d.ts +6 -6
  214. package/lib/Cascader/Cascader.vue.d.ts +7 -7
  215. package/lib/Cascader/index.d.ts +6 -6
  216. package/lib/Collapse/hooks/useContext.d.ts +2 -13
  217. package/lib/Collapse/hooks/useContext.js +1 -1
  218. package/lib/Collapse/type.d.ts +2 -1
  219. package/lib/Descriptions/Descriptions.vue.d.ts +3 -3
  220. package/lib/Descriptions/hooks/useContext.d.ts +1 -1
  221. package/lib/Descriptions/index.d.ts +9 -9
  222. package/lib/Descriptions/type.d.ts +7 -6
  223. package/lib/Divider/index.d.ts +6 -6
  224. package/lib/Divider/index.vue.d.ts +2 -2
  225. package/lib/Divider/type.d.ts +4 -3
  226. package/lib/Drawer/Drawer.vue.d.ts +1 -1
  227. package/lib/Drawer/DrawerService.vue.d.ts +1 -1
  228. package/lib/Drawer/index.d.ts +5 -9
  229. package/lib/Drawer/type.d.ts +8 -4
  230. package/lib/Dropdown/Dropdown.vue.d.ts +1 -1
  231. package/lib/Dropdown/DropdownButton.vue.d.ts +1 -1
  232. package/lib/Dropdown/Dsubmenu.vue.d.ts +1 -1
  233. package/lib/Dropdown/index.d.ts +9 -9
  234. package/lib/Dropdown/type.d.ts +4 -6
  235. package/lib/Grid/hooks/useContext.d.ts +0 -11
  236. package/lib/Grid/hooks/useContext.js +1 -1
  237. package/lib/Image/Image.vue.d.ts +2 -2
  238. package/lib/Image/ImagePreview.vue.js +1 -1
  239. package/lib/Image/index.d.ts +6 -6
  240. package/lib/Image/type.d.ts +3 -2
  241. package/lib/Input/Input.vue.d.ts +1 -1
  242. package/lib/Input/index.d.ts +3 -3
  243. package/lib/InputNumber/InputNumber.vue.d.ts +8 -8
  244. package/lib/InputNumber/InputOperaBtn.vue.d.ts +2 -2
  245. package/lib/InputNumber/index.d.ts +9 -9
  246. package/lib/InputNumber/type.d.ts +5 -4
  247. package/lib/InputTag/index.d.ts +15 -6
  248. package/lib/InputTag/index.vue.d.ts +5 -2
  249. package/lib/InputTag/type.d.ts +2 -1
  250. package/lib/Layout/LayoutSider.vue.d.ts +3 -3
  251. package/lib/Layout/index.d.ts +8 -8
  252. package/lib/Layout/type.d.ts +3 -4
  253. package/lib/Link/index.d.ts +3 -3
  254. package/lib/Link/index.vue.d.ts +1 -1
  255. package/lib/Link/type.d.ts +2 -2
  256. package/lib/List/List.vue.d.ts +7 -7
  257. package/lib/List/index.d.ts +6 -6
  258. package/lib/List/type.d.ts +2 -3
  259. package/lib/Mention/index.d.ts +21 -12
  260. package/lib/Mention/index.vue.d.ts +37 -19
  261. package/lib/Mention/type.d.ts +3 -2
  262. package/lib/Menu/Menu.vue.d.ts +2 -2
  263. package/lib/Menu/index.d.ts +5 -5
  264. package/lib/Menu/type.d.ts +2 -2
  265. package/lib/Message/type.d.ts +3 -3
  266. package/lib/Modal/Modal.vue.d.ts +1 -1
  267. package/lib/Modal/ModalService.vue.d.ts +1 -1
  268. package/lib/Modal/index.d.ts +13 -13
  269. package/lib/Modal/index.js +1 -1
  270. package/lib/Modal/type.d.ts +6 -9
  271. package/lib/Notification/Notification.vue.d.ts +1 -1
  272. package/lib/Notification/index.d.ts +4 -4
  273. package/lib/Notification/type.d.ts +3 -4
  274. package/lib/OverflowList/index.d.ts +3 -3
  275. package/lib/OverflowList/index.vue.d.ts +1 -1
  276. package/lib/OverflowList/type.d.ts +3 -2
  277. package/lib/Popconfirm/index.d.ts +3 -3
  278. package/lib/Popconfirm/index.vue.d.ts +1 -1
  279. package/lib/Popconfirm/type.d.ts +2 -3
  280. package/lib/Progress/Progress.vue.d.ts +1 -1
  281. package/lib/Progress/ProgressCircle.vue.d.ts +3 -3
  282. package/lib/Progress/ProgressLine.vue.d.ts +3 -3
  283. package/lib/Progress/index.d.ts +3 -3
  284. package/lib/Progress/type.d.ts +2 -3
  285. package/lib/Radio/type.d.ts +1 -1
  286. package/lib/ResizeBox/index.d.ts +3 -3
  287. package/lib/ResizeBox/index.vue.d.ts +2 -2
  288. package/lib/ResizeBox/type.d.ts +4 -4
  289. package/lib/Result/index.d.ts +3 -3
  290. package/lib/Result/index.vue.d.ts +1 -1
  291. package/lib/Result/type.d.ts +3 -2
  292. package/lib/Scrollbar/Scrollbar.vue.d.ts +1 -1
  293. package/lib/Scrollbar/index.d.ts +3 -3
  294. package/lib/Scrollbar/type.d.ts +2 -1
  295. package/lib/Select/Select.vue.d.ts +31 -13
  296. package/lib/Select/hooks/useContext.d.ts +2 -2
  297. package/lib/Select/hooks/useSelectOptions.d.ts +2 -2
  298. package/lib/Select/index.d.ts +18 -9
  299. package/lib/Skeleton/SkeletonShape.vue.d.ts +2 -2
  300. package/lib/Skeleton/index.d.ts +2 -2
  301. package/lib/Skeleton/type.d.ts +2 -4
  302. package/lib/Space/index.d.ts +6 -6
  303. package/lib/Space/index.vue.d.ts +2 -2
  304. package/lib/Space/type.d.ts +5 -4
  305. package/lib/Switch/index.d.ts +9 -9
  306. package/lib/Switch/index.vue.d.ts +3 -3
  307. package/lib/Switch/type.d.ts +4 -4
  308. package/lib/Tabs/Tabs.vue.d.ts +1 -1
  309. package/lib/Tabs/hooks/useContext.d.ts +4 -4
  310. package/lib/Tabs/index.d.ts +3 -3
  311. package/lib/Tabs/type.d.ts +2 -3
  312. package/lib/Tag/index.d.ts +3 -3
  313. package/lib/Tag/index.vue.d.ts +1 -1
  314. package/lib/Tag/type.d.ts +1 -2
  315. package/lib/Textarea/type.d.ts +2 -2
  316. package/lib/TimePicker/TimePicker.vue.d.ts +1 -1
  317. package/lib/TimePicker/index.d.ts +3 -3
  318. package/lib/Timeline/TimelineItem.vue.d.ts +1 -1
  319. package/lib/Timeline/index.d.ts +3 -3
  320. package/lib/Timeline/type.d.ts +3 -4
  321. package/lib/Typography/TypographyBase.vue.d.ts +7 -7
  322. package/lib/Typography/TypographyBase.vue.js +1 -1
  323. package/lib/Typography/TypographyParagraph.vue.d.ts +1 -1
  324. package/lib/Typography/TypographyTitle.vue.d.ts +1 -1
  325. package/lib/Typography/type.d.ts +5 -4
  326. package/lib/Upload/Upload.vue.d.ts +55 -0
  327. package/lib/Upload/Upload.vue.js +1 -0
  328. package/lib/Upload/Upload.vue3.js +1 -0
  329. package/lib/Upload/UploadButton.vue.d.ts +2 -0
  330. package/lib/Upload/UploadButton.vue.js +1 -0
  331. package/lib/Upload/UploadButton.vue3.js +1 -0
  332. package/lib/Upload/UploadDrag.vue.d.ts +2 -0
  333. package/lib/Upload/UploadDrag.vue.js +1 -0
  334. package/lib/Upload/UploadDrag.vue3.js +1 -0
  335. package/lib/Upload/UploadFileList.vue.d.ts +24 -0
  336. package/lib/Upload/UploadFileList.vue.js +1 -0
  337. package/lib/Upload/UploadFileList.vue2.js +1 -0
  338. package/lib/Upload/UploadPictureCard.vue.d.ts +4 -0
  339. package/lib/Upload/UploadPictureCard.vue.js +1 -0
  340. package/lib/Upload/UploadPictureCard.vue2.js +1 -0
  341. package/lib/Upload/hooks/useContext.d.ts +53 -0
  342. package/lib/Upload/hooks/useContext.js +1 -0
  343. package/lib/Upload/hooks/useUpload.d.ts +51 -0
  344. package/lib/Upload/hooks/useUpload.js +1 -0
  345. package/lib/Upload/index.css +1 -0
  346. package/lib/Upload/index.d.ts +129 -0
  347. package/lib/Upload/index.js +1 -0
  348. package/lib/Upload/type.d.ts +76 -0
  349. package/lib/VerificationCode/index.d.ts +3 -3
  350. package/lib/VerificationCode/index.vue.d.ts +1 -1
  351. package/lib/VerificationCode/type.d.ts +5 -4
  352. package/lib/_shared/icons/IconCopy.vue.js +1 -1
  353. package/lib/_shared/icons/IconCopy.vue2.js +1 -1
  354. package/lib/_shared/icons/IconEdit.vue.js +1 -1
  355. package/lib/_shared/icons/IconEdit.vue2.js +1 -1
  356. package/lib/_shared/icons/IconFile.vue.d.ts +2 -0
  357. package/lib/_shared/icons/IconFile.vue.js +1 -0
  358. package/lib/_shared/icons/IconFile.vue2.js +1 -0
  359. package/lib/_shared/icons/IconUpload.vue.d.ts +2 -0
  360. package/lib/_shared/icons/IconUpload.vue.js +1 -0
  361. package/lib/_shared/icons/IconUpload.vue2.js +1 -0
  362. package/lib/_shared/icons/index.d.ts +2 -0
  363. package/lib/_shared/type/index.d.ts +3 -1
  364. package/lib/_shared/utils/vue-utils.d.ts +1 -1
  365. package/lib/_virtual/_plugin-vue_export-helper.js +1 -0
  366. package/lib/index.d.ts +33 -31
  367. package/lib/index.js +1 -1
  368. package/lib/node_modules/@vueuse/core/index.js +1 -1
  369. package/lib/node_modules/@vueuse/shared/index.js +1 -1
  370. package/lib/style.css +1 -1
  371. package/package.json +1 -1
@@ -0,0 +1,122 @@
1
+ import { defineComponent, createElementBlock, openBlock, normalizeClass, unref, Fragment, renderList, renderSlot, createCommentVNode, createElementVNode, createBlock, resolveDynamicComponent, createVNode, withCtx } from "vue";
2
+ import useUploadContext from "./hooks/useContext.js";
3
+ import _sfc_main$1 from "../_shared/components/IconButton/index.vue.js";
4
+ /* empty css */
5
+ import "../_shared/utils/dom.js";
6
+ /* empty css */
7
+ /* empty css */
8
+ import _sfc_main$3 from "../_shared/icons/IconDelete.vue2.js";
9
+ import _sfc_main$2 from "../_shared/icons/IconFile.vue2.js";
10
+ const _hoisted_1 = { class: "yc-upload-list-item-content" };
11
+ const _hoisted_2 = {
12
+ key: 0,
13
+ class: "yc-upload-list-item-thumbnail"
14
+ };
15
+ const _hoisted_3 = ["src", "alt", "loading"];
16
+ const _hoisted_4 = { class: "yc-upload-list-item-name" };
17
+ const _hoisted_5 = {
18
+ key: 0,
19
+ class: "yc-upload-list-item-file-icon"
20
+ };
21
+ const _hoisted_6 = { class: "yc-upload-list-item-name-text text-ellipsis" };
22
+ const _hoisted_7 = ["href", "download"];
23
+ const _hoisted_8 = {
24
+ key: 0,
25
+ class: "yc-upload-list-item-operation"
26
+ };
27
+ const _sfc_main = /* @__PURE__ */ defineComponent({
28
+ __name: "UploadFileList",
29
+ setup(__props) {
30
+ const {
31
+ computedFileList,
32
+ showRemoveButton,
33
+ listType,
34
+ imageLoading,
35
+ showLink,
36
+ download,
37
+ customIcon,
38
+ slots,
39
+ handleDelFile
40
+ } = useUploadContext().inject();
41
+ const renderFileIcon = (fileItem) => {
42
+ var _a, _b;
43
+ if (slots["file-icon"]) {
44
+ return slots["file-icon"]({
45
+ fileItem
46
+ });
47
+ }
48
+ return ((_b = (_a = customIcon.value).fileIcon) == null ? void 0 : _b.call(_a, fileItem)) || _sfc_main$2;
49
+ };
50
+ const renderName = (fileItem) => {
51
+ if (slots["file-name"]) {
52
+ return slots["file-name"]({
53
+ fileItem
54
+ });
55
+ }
56
+ return () => {
57
+ var _a, _b;
58
+ return ((_b = (_a = customIcon.value).fileName) == null ? void 0 : _b.call(_a, fileItem)) || fileItem.name;
59
+ };
60
+ };
61
+ const renderDelIcon = () => {
62
+ return slots["remove-icon"] ?? (customIcon.value.removeIcon || _sfc_main$3);
63
+ };
64
+ return (_ctx, _cache) => {
65
+ return openBlock(), createElementBlock("div", {
66
+ class: normalizeClass(["yc-upload-list", `yc-upload-list-type-${unref(listType)}`])
67
+ }, [
68
+ (openBlock(true), createElementBlock(Fragment, null, renderList(unref(computedFileList), (item, i) => {
69
+ return openBlock(), createElementBlock("div", {
70
+ key: item.uid,
71
+ class: "yc-upload-list-item"
72
+ }, [
73
+ renderSlot(_ctx.$slots, "upload-item", {
74
+ fileItem: item,
75
+ index: i
76
+ }, () => [
77
+ createElementVNode("div", _hoisted_1, [
78
+ unref(listType) == "picture" ? (openBlock(), createElementBlock("span", _hoisted_2, [
79
+ createElementVNode("img", {
80
+ src: item.url,
81
+ alt: item.name,
82
+ loading: unref(imageLoading)
83
+ }, null, 8, _hoisted_3)
84
+ ])) : createCommentVNode("", true),
85
+ createElementVNode("div", _hoisted_4, [
86
+ unref(listType) == "text" ? (openBlock(), createElementBlock("span", _hoisted_5, [
87
+ (openBlock(), createBlock(resolveDynamicComponent(renderFileIcon(item))))
88
+ ])) : createCommentVNode("", true),
89
+ createElementVNode("span", _hoisted_6, [
90
+ unref(showLink) ? (openBlock(), createElementBlock("a", {
91
+ key: 0,
92
+ href: item.url,
93
+ download: unref(download) ? item.name : void 0,
94
+ class: "yc-upload-list-item-name-link",
95
+ target: "_blank"
96
+ }, [
97
+ (openBlock(), createBlock(resolveDynamicComponent(renderName(item))))
98
+ ], 8, _hoisted_7)) : (openBlock(), createBlock(resolveDynamicComponent(renderName(item)), { key: 1 }))
99
+ ])
100
+ ])
101
+ ])
102
+ ], true),
103
+ _ctx.$slots["extra-button"] || unref(showRemoveButton) ? (openBlock(), createElementBlock("span", _hoisted_8, [
104
+ createVNode(unref(_sfc_main$1), {
105
+ onClick: ($event) => unref(handleDelFile)(item)
106
+ }, {
107
+ default: withCtx(() => [
108
+ (openBlock(), createBlock(resolveDynamicComponent(renderDelIcon())))
109
+ ]),
110
+ _: 1
111
+ }, 8, ["onClick"]),
112
+ renderSlot(_ctx.$slots, "extra-button", { fileItem: item }, void 0, true)
113
+ ])) : createCommentVNode("", true)
114
+ ]);
115
+ }), 128))
116
+ ], 2);
117
+ };
118
+ }
119
+ });
120
+ export {
121
+ _sfc_main as default
122
+ };
@@ -0,0 +1,4 @@
1
+ declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {
2
+ uploadRef: HTMLSpanElement;
3
+ }, HTMLDivElement>;
4
+ export default _default;
@@ -0,0 +1,7 @@
1
+ import _sfc_main from "./UploadPictureCard.vue2.js";
2
+ /* empty css */
3
+ import _export_sfc from "../_virtual/_plugin-vue_export-helper.js";
4
+ const UploadPictureCard = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-2914d73a"]]);
5
+ export {
6
+ UploadPictureCard as default
7
+ };
@@ -0,0 +1,128 @@
1
+ import { defineComponent, ref, createElementBlock, openBlock, normalizeClass, unref, createVNode, createCommentVNode, Fragment, renderList, createElementVNode, createBlock, resolveDynamicComponent, toDisplayString } from "vue";
2
+ import useUpload from "./hooks/useUpload.js";
3
+ import "../_shared/utils/dom.js";
4
+ /* empty css */
5
+ /* empty css */
6
+ /* empty css */
7
+ import _sfc_main$3 from "../_shared/icons/IconDelete.vue2.js";
8
+ import _sfc_main$4 from "../_shared/icons/IconEyeClose.vue2.js";
9
+ import _sfc_main$2 from "../_shared/icons/IconPlus.vue.js";
10
+ import "../Image/index.js";
11
+ import _sfc_main$1 from "../Image/ImagePreview.vue.js";
12
+ /* empty css */
13
+ const _hoisted_1 = ["src", "alt"];
14
+ const _hoisted_2 = { class: "yc-upload-list-picture-mask" };
15
+ const _hoisted_3 = { class: "yc-upload-list-picture-operation" };
16
+ const _hoisted_4 = ["onClick"];
17
+ const _hoisted_5 = ["onClick"];
18
+ const _hoisted_6 = { class: "yc-upload-picture-card-text" };
19
+ const _hoisted_7 = {
20
+ key: 0,
21
+ class: "yc-upload-tip"
22
+ };
23
+ const _sfc_main = /* @__PURE__ */ defineComponent({
24
+ __name: "UploadPictureCard",
25
+ setup(__props) {
26
+ const uploadRef = ref();
27
+ const visible = ref(false);
28
+ const url = ref("");
29
+ const {
30
+ computedFileList,
31
+ limit,
32
+ tip,
33
+ slots,
34
+ customIcon,
35
+ disabled,
36
+ imagePreview,
37
+ showPreviewButton,
38
+ showRemoveButton,
39
+ listType,
40
+ handleUpload,
41
+ handleDelFile,
42
+ emits
43
+ } = useUpload(uploadRef);
44
+ const renderDelIcon = () => {
45
+ return slots["remove-icon"] ?? (customIcon.value.removeIcon || _sfc_main$3);
46
+ };
47
+ const renderPreviewIcon = () => {
48
+ return slots["preview-icon"] ?? (customIcon.value.previewIcon || _sfc_main$4);
49
+ };
50
+ const handlePreview = (fileItem) => {
51
+ url.value = fileItem.url;
52
+ emits("preview", fileItem);
53
+ if (!imagePreview.value) return;
54
+ visible.value = true;
55
+ };
56
+ return (_ctx, _cache) => {
57
+ return openBlock(), createElementBlock("div", {
58
+ class: normalizeClass([
59
+ "yc-upload-list",
60
+ `yc-upload-list-type-${unref(listType)}`,
61
+ {
62
+ "yc-upload-list-disabled": unref(disabled)
63
+ }
64
+ ])
65
+ }, [
66
+ createVNode(unref(_sfc_main$1), {
67
+ visible: visible.value,
68
+ "onUpdate:visible": _cache[0] || (_cache[0] = ($event) => visible.value = $event),
69
+ src: url.value
70
+ }, null, 8, ["visible", "src"]),
71
+ (openBlock(true), createElementBlock(Fragment, null, renderList(unref(computedFileList), (item) => {
72
+ return openBlock(), createElementBlock("div", {
73
+ key: item.uid,
74
+ class: "yc-upload-list-picture"
75
+ }, [
76
+ createElementVNode("img", {
77
+ src: item.url,
78
+ alt: item.name
79
+ }, null, 8, _hoisted_1),
80
+ createElementVNode("div", _hoisted_2, [
81
+ createElementVNode("div", _hoisted_3, [
82
+ unref(showPreviewButton) ? (openBlock(), createElementBlock("span", {
83
+ key: 0,
84
+ class: normalizeClass(["yc-upload-icon", "yc-upload-icon-preview"]),
85
+ onClick: ($event) => handlePreview(item)
86
+ }, [
87
+ (openBlock(), createBlock(resolveDynamicComponent(renderPreviewIcon())))
88
+ ], 8, _hoisted_4)) : createCommentVNode("", true),
89
+ unref(showRemoveButton) ? (openBlock(), createElementBlock("span", {
90
+ key: 1,
91
+ class: normalizeClass(["yc-upload-icon", "yc-upload-icon-remove"]),
92
+ onClick: ($event) => unref(handleDelFile)(item)
93
+ }, [
94
+ (openBlock(), createBlock(resolveDynamicComponent(renderDelIcon())))
95
+ ], 8, _hoisted_5)) : createCommentVNode("", true)
96
+ ])
97
+ ])
98
+ ]);
99
+ }), 128)),
100
+ unref(limit) <= 0 || unref(computedFileList).length < unref(limit) ? (openBlock(), createElementBlock("span", {
101
+ key: 0,
102
+ class: "yc-upload",
103
+ ref_key: "uploadRef",
104
+ ref: uploadRef,
105
+ onClick: _cache[1] || (_cache[1] = //@ts-ignore
106
+ (...args) => unref(handleUpload) && unref(handleUpload)(...args))
107
+ }, [
108
+ createElementVNode("div", {
109
+ class: normalizeClass([
110
+ "yc-upload-picture-card",
111
+ {
112
+ "yc-upload-picture-card-disabled": unref(disabled)
113
+ }
114
+ ])
115
+ }, [
116
+ createElementVNode("div", _hoisted_6, [
117
+ createVNode(unref(_sfc_main$2))
118
+ ]),
119
+ unref(tip) ? (openBlock(), createElementBlock("div", _hoisted_7, toDisplayString(unref(tip)), 1)) : createCommentVNode("", true)
120
+ ], 2)
121
+ ], 512)) : createCommentVNode("", true)
122
+ ], 2);
123
+ };
124
+ }
125
+ });
126
+ export {
127
+ _sfc_main as default
128
+ };
@@ -0,0 +1,53 @@
1
+ import { Ref } from 'vue';
2
+ import { UploadEmits, FileItem, FileListType, ImageLoading, UploadSlots, CustomIcon, FileName, OnBeforeUpload } from '../type';
3
+ import { RecordType } from '../../_shared/type';
4
+ type UploadContext = {
5
+ computedFileList: Ref<FileItem[]>;
6
+ disabled: Ref<boolean>;
7
+ tip: Ref<string>;
8
+ listType: Ref<FileListType>;
9
+ imageLoading: Ref<ImageLoading>;
10
+ showRemoveButton: Ref<boolean>;
11
+ showLink: Ref<boolean>;
12
+ download: Ref<boolean>;
13
+ customIcon: Ref<CustomIcon>;
14
+ limit: Ref<number>;
15
+ accept: Ref<string>;
16
+ name: FileName;
17
+ multiple: Ref<boolean>;
18
+ draggable: Ref<boolean>;
19
+ directory: Ref<boolean>;
20
+ showPreviewButton: Ref<boolean>;
21
+ imagePreview: Ref<boolean>;
22
+ slots: UploadSlots;
23
+ onBeforeUpload: OnBeforeUpload;
24
+ handleDelFile: (fileItem: FileItem) => Promise<void>;
25
+ emits: UploadEmits;
26
+ };
27
+ export default function useUploadContext(): {
28
+ provide: (props: RecordType, emits: UploadEmits) => {
29
+ computedFileList: import('vue').WritableComputedRef<FileItem[], FileItem[]>;
30
+ accept: import('vue').ComputedRef<string>;
31
+ disabled: Ref<boolean, boolean>;
32
+ directory: Ref<boolean, boolean>;
33
+ multiple: Ref<boolean, boolean>;
34
+ draggable: Ref<boolean, boolean>;
35
+ limit: Ref<number, number>;
36
+ tip: Ref<string, string>;
37
+ listType: Ref<FileListType, FileListType>;
38
+ imageLoading: Ref<ImageLoading, ImageLoading>;
39
+ showLink: Ref<boolean, boolean>;
40
+ download: Ref<boolean, boolean>;
41
+ customIcon: Ref<CustomIcon, CustomIcon>;
42
+ imagePreview: Ref<boolean, boolean>;
43
+ showRemoveButton: Ref<boolean, boolean>;
44
+ showPreviewButton: Ref<boolean, boolean>;
45
+ name: any;
46
+ slots: UploadSlots;
47
+ onBeforeUpload: any;
48
+ handleDelFile: (fileItem: FileItem) => Promise<void>;
49
+ emits: UploadEmits;
50
+ };
51
+ inject: () => UploadContext;
52
+ };
53
+ export {};
@@ -0,0 +1,109 @@
1
+ import { toRefs, useSlots, computed, provide, inject, ref } from "vue";
2
+ import { useControlValue } from "../../_shared/utils/control.js";
3
+ const UPLOAD_CONTEXT_KEY = "upload-context";
4
+ function useUploadContext() {
5
+ const provide$1 = (props, emits) => {
6
+ const {
7
+ fileList,
8
+ defaultFileList,
9
+ disabled,
10
+ multiple,
11
+ draggable,
12
+ directory,
13
+ limit,
14
+ tip,
15
+ listType,
16
+ imageLoading,
17
+ download,
18
+ showLink,
19
+ customIcon,
20
+ imagePreview,
21
+ showRemoveButton,
22
+ showPreviewButton,
23
+ accept: _accept
24
+ } = toRefs(props);
25
+ const { name, onBeforeUpload, onBeforeRemove } = props;
26
+ const slots = useSlots();
27
+ const computedFileList = useControlValue(
28
+ fileList,
29
+ defaultFileList.value,
30
+ (val) => {
31
+ emits("update:fileList", val);
32
+ }
33
+ );
34
+ const accept = computed(() => {
35
+ return listType.value != "text" ? "image/*" : _accept.value;
36
+ });
37
+ const handleDelFile = async (fileItem) => {
38
+ let isDel = true;
39
+ try {
40
+ isDel = await (onBeforeRemove == null ? void 0 : onBeforeRemove(fileItem));
41
+ } catch {
42
+ isDel = false;
43
+ }
44
+ if (!isDel) return;
45
+ computedFileList.value = computedFileList.value.filter(
46
+ (v) => v.uid != fileItem.uid
47
+ );
48
+ emits("change", computedFileList.value, []);
49
+ };
50
+ const context = {
51
+ computedFileList,
52
+ accept,
53
+ disabled,
54
+ directory,
55
+ multiple,
56
+ draggable,
57
+ limit,
58
+ tip,
59
+ listType,
60
+ imageLoading,
61
+ showLink,
62
+ download,
63
+ customIcon,
64
+ imagePreview,
65
+ showRemoveButton,
66
+ showPreviewButton,
67
+ name,
68
+ slots,
69
+ onBeforeUpload,
70
+ handleDelFile,
71
+ emits
72
+ };
73
+ provide(UPLOAD_CONTEXT_KEY, context);
74
+ return context;
75
+ };
76
+ const inject$1 = () => {
77
+ return inject(UPLOAD_CONTEXT_KEY, {
78
+ computedFileList: ref([]),
79
+ accept: ref(""),
80
+ disabled: ref(false),
81
+ directory: ref(false),
82
+ multiple: ref(false),
83
+ draggable: ref(false),
84
+ limit: ref(0),
85
+ tip: ref(""),
86
+ listType: ref("text"),
87
+ imageLoading: ref("lazy"),
88
+ showLink: ref(true),
89
+ download: ref(false),
90
+ customIcon: ref({}),
91
+ imagePreview: ref(true),
92
+ showRemoveButton: ref(true),
93
+ showPreviewButton: ref(true),
94
+ name: "",
95
+ slots: {},
96
+ handleDelFile: () => Promise.resolve(),
97
+ onBeforeUpload: () => true,
98
+ emits: () => {
99
+ }
100
+ });
101
+ };
102
+ return {
103
+ provide: provide$1,
104
+ inject: inject$1
105
+ };
106
+ }
107
+ export {
108
+ useUploadContext as default
109
+ };
@@ -0,0 +1,51 @@
1
+ import { FileItem, UploadEmits, UploadProps } from '../type';
2
+ import { Ref } from 'vue';
3
+ export default function useUpload(uploadRef: Ref<HTMLDivElement | undefined>, _props?: UploadProps, _emits?: UploadEmits): {
4
+ handleUpload: () => void;
5
+ handleFiles: (fileData: File[] | FileList | null) => void;
6
+ computedFileList: Ref<FileItem[]>;
7
+ disabled: Ref<boolean>;
8
+ tip: Ref<string>;
9
+ listType: Ref<import('..').FileListType>;
10
+ imageLoading: Ref<import('..').ImageLoading>;
11
+ showRemoveButton: Ref<boolean>;
12
+ showLink: Ref<boolean>;
13
+ download: Ref<boolean>;
14
+ customIcon: Ref<import('..').CustomIcon>;
15
+ limit: Ref<number>;
16
+ accept: Ref<string>;
17
+ name: import('..').FileName;
18
+ multiple: Ref<boolean>;
19
+ draggable: Ref<boolean>;
20
+ directory: Ref<boolean>;
21
+ showPreviewButton: Ref<boolean>;
22
+ imagePreview: Ref<boolean>;
23
+ slots: import('..').UploadSlots;
24
+ onBeforeUpload: import('..').OnBeforeUpload;
25
+ handleDelFile: (fileItem: FileItem) => Promise<void>;
26
+ emits: UploadEmits;
27
+ } | {
28
+ handleUpload: () => void;
29
+ handleFiles: (fileData: File[] | FileList | null) => void;
30
+ computedFileList: import('vue').WritableComputedRef<FileItem[], FileItem[]>;
31
+ accept: import('vue').ComputedRef<string>;
32
+ disabled: Ref<boolean, boolean>;
33
+ directory: Ref<boolean, boolean>;
34
+ multiple: Ref<boolean, boolean>;
35
+ draggable: Ref<boolean, boolean>;
36
+ limit: Ref<number, number>;
37
+ tip: Ref<string, string>;
38
+ listType: Ref<import('..').FileListType, import('..').FileListType>;
39
+ imageLoading: Ref<import('..').ImageLoading, import('..').ImageLoading>;
40
+ showLink: Ref<boolean, boolean>;
41
+ download: Ref<boolean, boolean>;
42
+ customIcon: Ref<import('..').CustomIcon, import('..').CustomIcon>;
43
+ imagePreview: Ref<boolean, boolean>;
44
+ showRemoveButton: Ref<boolean, boolean>;
45
+ showPreviewButton: Ref<boolean, boolean>;
46
+ name: any;
47
+ slots: import('..').UploadSlots;
48
+ onBeforeUpload: any;
49
+ handleDelFile: (fileItem: FileItem) => Promise<void>;
50
+ emits: UploadEmits;
51
+ };
@@ -0,0 +1,85 @@
1
+ import { nanoid } from "../../node_modules/nanoid/index.browser.js";
2
+ import "vue";
3
+ import { isString } from "../../_shared/utils/is.js";
4
+ import { useFileDialog, useDropZone } from "../../node_modules/@vueuse/core/index.js";
5
+ import useUploadContext from "./useContext.js";
6
+ function useUpload(uploadRef, _props, _emits) {
7
+ let context;
8
+ if (_props && _emits) {
9
+ context = useUploadContext().provide(_props, _emits);
10
+ } else {
11
+ context = useUploadContext().inject();
12
+ }
13
+ const {
14
+ computedFileList,
15
+ disabled,
16
+ limit,
17
+ accept,
18
+ directory,
19
+ multiple,
20
+ name,
21
+ onBeforeUpload,
22
+ emits
23
+ } = context;
24
+ const { onChange, open } = useFileDialog({
25
+ directory: directory.value,
26
+ multiple: multiple.value,
27
+ accept: accept.value,
28
+ reset: true
29
+ });
30
+ onChange((files) => handleFiles(files));
31
+ useDropZone(uploadRef, {
32
+ dataTypes: accept.value ? accept.value.split(",") : void 0,
33
+ multiple: multiple.value,
34
+ preventDefaultForUnhandled: true,
35
+ onDrop: (files) => handleFiles(files)
36
+ });
37
+ const isOutOfLimit = (length = 0) => {
38
+ return limit.value > 0 && length + computedFileList.value.length > limit.value;
39
+ };
40
+ const getFileName = (fileItem) => {
41
+ if (name) {
42
+ return isString(name) ? name : name(fileItem);
43
+ }
44
+ return fileItem.name;
45
+ };
46
+ const handleFiles = (fileData) => {
47
+ const files = [...fileData || []].filter((file) => onBeforeUpload(file));
48
+ console.log(files);
49
+ if (!files.length || disabled.value || isOutOfLimit(files.length)) {
50
+ if (!isOutOfLimit(files == null ? void 0 : files.length)) return;
51
+ emits("exceed-limit", computedFileList.value, files);
52
+ return;
53
+ }
54
+ computedFileList.value = [
55
+ ...computedFileList.value,
56
+ ...files.map((v) => {
57
+ const fileItem = {
58
+ name: v.name,
59
+ uid: nanoid(),
60
+ file: v,
61
+ status: "init",
62
+ percent: 0,
63
+ url: URL.createObjectURL(v)
64
+ };
65
+ return {
66
+ ...fileItem,
67
+ name: getFileName(fileItem)
68
+ };
69
+ })
70
+ ];
71
+ emits("change", computedFileList.value, [...files]);
72
+ };
73
+ const handleUpload = () => {
74
+ if (disabled.value) return;
75
+ open();
76
+ };
77
+ return {
78
+ ...context,
79
+ handleUpload,
80
+ handleFiles
81
+ };
82
+ }
83
+ export {
84
+ useUpload as default
85
+ };
@@ -0,0 +1 @@
1
+ .yc-upload-wrapper{width:100%;display:flex;flex-direction:column}.yc-upload-wrapper .yc-upload{cursor:pointer;max-width:100%}.yc-upload-wrapper .yc-upload .yc-upload-tip{max-width:100%;color:var(--color-text-3);font-size:12px;line-height:1.5}.yc-upload-wrapper .yc-upload .yc-upload-button{display:flex;flex-direction:column;gap:4px}.yc-upload-wrapper .yc-upload .yc-upload-button .yc-button{width:fit-content;max-width:100%}.yc-upload-wrapper .yc-upload .yc-upload-drag{width:100%;padding:50px 0;background-color:var(--color-fill-1);border:1px dashed var(--color-neutral-3);border-radius:var(--border-radius-small);color:var(--color-text-1);transition:all .2s ease;display:flex;flex-direction:column;align-items:center}.yc-upload-wrapper .yc-upload .yc-upload-drag:not(.yc-upload-drag-disabled):hover{background-color:var(--color-fill-3);border-color:var(--color-neutral-4)}.yc-upload-wrapper .yc-upload .yc-upload-drag .yc-upload-drag-icon{color:var(--color-text-2)}.yc-upload-wrapper .yc-upload .yc-upload-drag .yc-upload-drag-icon .yc-icon{margin-bottom:24px;font-size:14px}.yc-upload-wrapper .yc-upload .yc-upload-drag .yc-upload-drag-text{color:var(--color-text-1);font-size:14px;line-height:1.5}.yc-upload-list-type-text,.yc-upload-list-type-picture{width:100%;margin-top:24px;display:flex;flex-direction:column;gap:12px}.yc-upload-list-type-text .yc-upload-list-item,.yc-upload-list-type-picture .yc-upload-list-item{overflow:hidden;display:flex;align-items:center;gap:12px}.yc-upload-list-type-text .yc-upload-list-item .yc-upload-list-item-content,.yc-upload-list-type-picture .yc-upload-list-item .yc-upload-list-item-content{overflow:hidden;flex:1;width:100%;padding:8px 10px 8px 12px;background-color:var(--color-fill-1);transition:background-color .1s cubic-bezier(0, 0, 1, 1);font-size:14px;display:flex;align-items:center}.yc-upload-list-type-text .yc-upload-list-item .yc-upload-list-item-content .yc-upload-list-item-thumbnail,.yc-upload-list-type-picture .yc-upload-list-item .yc-upload-list-item-content .yc-upload-list-item-thumbnail{flex-shrink:0;width:40px;height:40px;margin-right:12px}.yc-upload-list-type-text .yc-upload-list-item .yc-upload-list-item-content .yc-upload-list-item-thumbnail img,.yc-upload-list-type-picture .yc-upload-list-item .yc-upload-list-item-content .yc-upload-list-item-thumbnail img{width:100%;height:100%}.yc-upload-list-type-text .yc-upload-list-item .yc-upload-list-item-content .yc-upload-list-item-name,.yc-upload-list-type-picture .yc-upload-list-item .yc-upload-list-item-content .yc-upload-list-item-name{flex:1;overflow:hidden;color:var(--color-text-1);font-size:14px;line-height:1.4286;display:flex;align-items:center;gap:12px}.yc-upload-list-type-text .yc-upload-list-item .yc-upload-list-item-content .yc-upload-list-item-name .yc-upload-list-item-file-icon,.yc-upload-list-type-picture .yc-upload-list-item .yc-upload-list-item-content .yc-upload-list-item-name .yc-upload-list-item-file-icon{color:rgb(var(--primary-6));font-size:16px;display:flex;justify-content:center;align-items:center}.yc-upload-list-type-text .yc-upload-list-item .yc-upload-list-item-content .yc-upload-list-item-name .yc-upload-list-item-name-link,.yc-upload-list-type-picture .yc-upload-list-item .yc-upload-list-item-content .yc-upload-list-item-name .yc-upload-list-item-name-link{cursor:pointer;color:rgb(var(--link-6))}.yc-upload-list-type-text .yc-upload-list-item .yc-upload-list-item-operation,.yc-upload-list-type-picture .yc-upload-list-item .yc-upload-list-item-operation{color:var(--color-text-2);font-size:12px}.yc-upload-list-type-picture-card{display:flex;flex-wrap:wrap;gap:8px}.yc-upload-list-type-picture-card .yc-upload-list-picture{position:relative;width:80px;height:80px;overflow:hidden;line-height:80px;text-align:center;border-radius:var(--border-radius-small);transition:all .2s cubic-bezier(.34, .69, .1, 1)}.yc-upload-list-type-picture-card .yc-upload-list-picture:hover .yc-upload-list-picture-mask{opacity:1}.yc-upload-list-type-picture-card .yc-upload-list-picture img{width:100%;height:100%}.yc-upload-list-type-picture-card .yc-upload-list-picture .yc-upload-list-picture-mask{position:absolute;left:0;top:0;width:100%;height:100%;background:rgba(0,0,0,0.5);color:var(--color-white);font-size:16px;line-height:80px;cursor:pointer;opacity:0;transition:opacity .1s cubic-bezier(0, 0, 1, 1)}.yc-upload-list-type-picture-card .yc-upload-list-picture .yc-upload-list-picture-mask .yc-upload-list-picture-operation{width:100%;display:flex;justify-content:space-evenly;align-items:center}.yc-upload-list-type-picture-card .yc-upload-list-picture .yc-upload-list-picture-mask .yc-upload-list-picture-operation .yc-upload-icon{cursor:pointer}.yc-upload-list-type-picture-card .yc-upload-picture-card{min-width:80px;height:80px;background:var(--color-fill-2);border:1px dashed var(--color-neutral-3);border-radius:var(--border-radius-small);color:var(--color-text-2);transition:all .1s cubic-bezier(0, 0, 1, 1);display:flex;flex-direction:column;justify-content:center;align-items:center}.yc-upload-list-type-picture-card .yc-upload-picture-card:not(.yc-upload-picture-card-disabled):hover{color:var(--color-text-2);background-color:var(--color-fill-3);border-color:var(--color-neutral-4)}.yc-upload-disabled .yc-upload{cursor:not-allowed}.yc-upload-disabled .yc-upload .yc-upload-drag,.yc-upload-disabled .yc-upload .yc-upload-picture-card{border-color:var(--color-text-4)}.yc-upload-disabled .yc-upload .yc-upload-drag .yc-upload-drag-text,.yc-upload-disabled .yc-upload .yc-upload-picture-card .yc-upload-drag-text,.yc-upload-disabled .yc-upload .yc-upload-drag .yc-upload-tip,.yc-upload-disabled .yc-upload .yc-upload-picture-card .yc-upload-tip,.yc-upload-disabled .yc-upload .yc-upload-drag .yc-upload-drag-icon,.yc-upload-disabled .yc-upload .yc-upload-picture-card .yc-upload-drag-icon,.yc-upload-disabled .yc-upload .yc-upload-drag .yc-upload-picture-card-text,.yc-upload-disabled .yc-upload .yc-upload-picture-card .yc-upload-picture-card-text{color:var(--color-text-4)}