@qynpm/ui 1.0.44 → 1.0.46

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 (264) hide show
  1. package/README.md +9 -2
  2. package/dist/index.cjs +20 -13
  3. package/dist/index.mjs +268 -102
  4. package/dist/qy-action-bar/index.cjs +3 -1
  5. package/dist/qy-action-bar/index.mjs +7 -2
  6. package/dist/qy-autocomplete/index.cjs +1 -1
  7. package/dist/qy-autocomplete/index.mjs +1 -1
  8. package/dist/qy-button/index.cjs +1 -1
  9. package/dist/qy-button/index.mjs +1 -1
  10. package/dist/qy-cascader/index.cjs +1 -1
  11. package/dist/qy-cascader/index.mjs +1 -1
  12. package/dist/qy-checkbox/index.cjs +1 -1
  13. package/dist/qy-checkbox/index.mjs +1 -1
  14. package/dist/qy-checkbox-group/index.cjs +1 -1
  15. package/dist/qy-checkbox-group/index.mjs +1 -1
  16. package/dist/qy-collapse/index.cjs +1 -1
  17. package/dist/qy-collapse/index.mjs +1 -1
  18. package/dist/qy-color-picker/index.cjs +1 -1
  19. package/dist/qy-color-picker/index.mjs +1 -1
  20. package/dist/qy-date-picker/index.cjs +1 -1
  21. package/dist/qy-date-picker/index.mjs +1 -1
  22. package/dist/qy-dialog/index.cjs +3 -2
  23. package/dist/qy-dialog/index.mjs +7 -5
  24. package/dist/qy-drawer/index.cjs +1 -1
  25. package/dist/qy-drawer/index.mjs +1 -1
  26. package/dist/qy-dropdown/index.cjs +2 -2
  27. package/dist/qy-dropdown/index.mjs +2 -2
  28. package/dist/qy-file-picker/index.cjs +1 -1
  29. package/dist/qy-file-picker/index.mjs +1 -1
  30. package/dist/qy-form-section/index.cjs +3 -1
  31. package/dist/qy-form-section/index.mjs +7 -2
  32. package/dist/qy-fullscreen/index.cjs +1 -1
  33. package/dist/qy-fullscreen/index.mjs +1 -1
  34. package/dist/qy-icon/index.cjs +1 -1
  35. package/dist/qy-icon/index.mjs +2 -2
  36. package/dist/qy-icon-picker/index.cjs +1 -1
  37. package/dist/qy-icon-picker/index.mjs +1 -1
  38. package/dist/qy-iframe/index.cjs +1 -1
  39. package/dist/qy-iframe/index.mjs +1 -1
  40. package/dist/qy-image/index.cjs +1 -1
  41. package/dist/qy-image/index.mjs +1 -1
  42. package/dist/qy-image-preview/index.cjs +1 -1
  43. package/dist/qy-image-preview/index.mjs +2 -2
  44. package/dist/qy-image-upload/index.cjs +3 -1
  45. package/dist/qy-image-upload/index.mjs +7 -2
  46. package/dist/qy-input/index.cjs +1 -1
  47. package/dist/qy-input/index.mjs +1 -1
  48. package/dist/qy-input-number/index.cjs +1 -1
  49. package/dist/qy-input-number/index.mjs +1 -1
  50. package/dist/qy-input-tag/index.cjs +1 -1
  51. package/dist/qy-input-tag/index.mjs +151 -5
  52. package/dist/qy-legacy-selection-dialog/index.cjs +8 -1
  53. package/dist/qy-legacy-selection-dialog/index.mjs +12 -2
  54. package/dist/qy-menu-actions/index.cjs +1 -1
  55. package/dist/qy-menu-actions/index.mjs +1 -1
  56. package/dist/qy-money-input/index.cjs +1 -1
  57. package/dist/qy-money-input/index.mjs +1 -1
  58. package/dist/qy-pagination/index.cjs +1 -1
  59. package/dist/qy-pagination/index.mjs +1 -1
  60. package/dist/qy-popconfirm/index.cjs +1 -1
  61. package/dist/qy-popconfirm/index.mjs +1 -1
  62. package/dist/qy-popover/index.cjs +1 -1
  63. package/dist/qy-popover/index.mjs +1 -1
  64. package/dist/qy-radio/index.cjs +1 -1
  65. package/dist/qy-radio/index.mjs +1 -1
  66. package/dist/qy-radio-group/index.cjs +1 -1
  67. package/dist/qy-radio-group/index.mjs +1 -1
  68. package/dist/qy-record-quote-search/index.cjs +4 -1
  69. package/dist/qy-record-quote-search/index.mjs +8 -2
  70. package/dist/qy-remark-image/index.cjs +3 -1
  71. package/dist/qy-remark-image/index.mjs +11 -2
  72. package/dist/qy-remote-select/index.cjs +3 -1
  73. package/dist/qy-remote-select/index.mjs +7 -2
  74. package/dist/qy-result/index.cjs +1 -1
  75. package/dist/qy-result/index.mjs +1 -1
  76. package/dist/qy-scrollbar/index.cjs +1 -1
  77. package/dist/qy-scrollbar/index.mjs +1 -1
  78. package/dist/qy-search-input/index.cjs +3 -1
  79. package/dist/qy-search-input/index.mjs +7 -2
  80. package/dist/qy-select/index.cjs +1 -1
  81. package/dist/qy-select/index.mjs +1 -1
  82. package/dist/qy-selection-dialog/index.cjs +7 -1
  83. package/dist/qy-selection-dialog/index.mjs +11 -2
  84. package/dist/qy-switch/index.cjs +1 -1
  85. package/dist/qy-switch/index.mjs +1 -1
  86. package/dist/qy-table-column-settings/index.cjs +1 -1
  87. package/dist/qy-table-column-settings/index.mjs +1 -1
  88. package/dist/qy-tabs/index.cjs +1 -1
  89. package/dist/qy-tabs/index.mjs +1 -1
  90. package/dist/qy-tag/index.cjs +1 -1
  91. package/dist/qy-tag/index.mjs +1 -1
  92. package/dist/qy-tooltip/index.cjs +1 -1
  93. package/dist/qy-tooltip/index.mjs +1 -1
  94. package/dist/qy-tree/index.cjs +1 -1
  95. package/dist/qy-tree/index.mjs +1 -1
  96. package/dist/qy-tree-select/index.cjs +1 -1
  97. package/dist/qy-tree-select/index.mjs +1 -1
  98. package/dist/qy-upload/index.cjs +1 -1
  99. package/dist/qy-upload/index.mjs +1 -1
  100. package/dist/shared/index-AvNvmJe5.cjs +1 -0
  101. package/dist/shared/{index-DvFMgAcu.mjs → index-B0CTzdRW.mjs} +1 -1
  102. package/dist/shared/index-B1J7PQMl.mjs +79 -0
  103. package/dist/shared/{index-DRIoLeFE.mjs → index-B1gnVI8Y.mjs} +44 -45
  104. package/dist/shared/{index-Co84fsS5.mjs → index-B7j9BtSm.mjs} +88 -80
  105. package/dist/shared/{index-CiE6qJCJ.mjs → index-BAOV5iYx.mjs} +151 -143
  106. package/dist/shared/index-BN4A-O6P.mjs +727 -0
  107. package/dist/shared/index-BR7tIt2k.mjs +211 -0
  108. package/dist/shared/index-BaRw7pWi.mjs +156 -0
  109. package/dist/shared/index-BgAP_K2E.cjs +1 -0
  110. package/dist/shared/index-Blgz8PJc.cjs +1 -0
  111. package/dist/shared/index-BqzKToOL.cjs +1 -0
  112. package/dist/shared/{index-BNssRW4d.mjs → index-BuVrLl5B.mjs} +13 -13
  113. package/dist/shared/index-Bv1DrJ32.mjs +71 -0
  114. package/dist/shared/index-Bz9WjKdL.cjs +1 -0
  115. package/dist/shared/{index-BjqJCq-6.mjs → index-Bzr2RHi5.mjs} +3 -3
  116. package/dist/shared/index-C50jpQ11.mjs +295 -0
  117. package/dist/shared/index-C6G9eVku.cjs +1 -0
  118. package/dist/shared/index-CB0v25oB.cjs +1 -0
  119. package/dist/shared/{index-gMrQlV5n.cjs → index-CIXJwYI-.cjs} +1 -1
  120. package/dist/shared/index-CKkanVur.cjs +1 -0
  121. package/dist/shared/index-CLvL8LAM.cjs +1 -0
  122. package/dist/shared/index-CN2mgT5V.cjs +1 -0
  123. package/dist/shared/{index-DNnWRAFl.mjs → index-CW4s627w.mjs} +1 -1
  124. package/dist/shared/{index-8Iwma3ls.mjs → index-CXOCZlps.mjs} +2 -2
  125. package/dist/shared/{index-CUlhX6fW.cjs → index-CXnL-0Kp.cjs} +1 -1
  126. package/dist/shared/index-CZs0V4ze.cjs +1 -0
  127. package/dist/shared/index-Cqr-L0yd.mjs +285 -0
  128. package/dist/shared/index-Cu6yAwdj.mjs +124 -0
  129. package/dist/shared/index-CxTyKMEH.cjs +1 -0
  130. package/dist/shared/index-D5HS8M1P.cjs +1 -0
  131. package/dist/shared/index-D6QwZtYV.mjs +56 -0
  132. package/dist/shared/index-DCsun70c.cjs +1 -0
  133. package/dist/shared/{index-BweLwi2_.cjs → index-DEzFHeJL.cjs} +1 -1
  134. package/dist/shared/{index-2D5AFexl.mjs → index-DNMRIYkm.mjs} +1 -1
  135. package/dist/shared/index-DY2IXvwl.cjs +1 -0
  136. package/dist/shared/{index-C4F8hXzQ.mjs → index-DdGlwebp.mjs} +90 -81
  137. package/dist/shared/index-DiN5vXXD.cjs +1 -0
  138. package/dist/shared/{index-Mj7JZt7y.cjs → index-Duq5XZ5w.cjs} +1 -1
  139. package/dist/shared/index-DwHM9eYc.cjs +1 -0
  140. package/dist/shared/index-FZ5gl2au.cjs +1 -0
  141. package/dist/shared/index-PM5yNugz.mjs +573 -0
  142. package/dist/shared/index-VtM0GmfU.mjs +361 -0
  143. package/dist/shared/index-ykI9hKtc.mjs +88 -0
  144. package/dist/shared/index.vue_vue_type_script_setup_true_lang-4CNzVpgF.mjs +40 -0
  145. package/dist/shared/index.vue_vue_type_script_setup_true_lang-B38X3tvf.cjs +1 -0
  146. package/dist/shared/{index.vue_vue_type_script_setup_true_lang-DIWWHODS.mjs → index.vue_vue_type_script_setup_true_lang-BtMkNw_I.mjs} +49 -47
  147. package/dist/shared/index.vue_vue_type_script_setup_true_lang-CeVvm5Ph.cjs +1 -0
  148. package/dist/shared/index.vue_vue_type_script_setup_true_lang-Cn0JqB5r.cjs +1 -0
  149. package/dist/shared/index.vue_vue_type_script_setup_true_lang-D3MxDFk1.cjs +1 -0
  150. package/dist/shared/{index.vue_vue_type_script_setup_true_lang-Dn29lZTs.mjs → index.vue_vue_type_script_setup_true_lang-DECgTYqI.mjs} +20 -18
  151. package/dist/shared/index.vue_vue_type_script_setup_true_lang-DMHhx9lY.mjs +133 -0
  152. package/dist/shared/index.vue_vue_type_script_setup_true_lang-DW2JKXjA.cjs +1 -0
  153. package/dist/shared/index.vue_vue_type_script_setup_true_lang-DeFEEJk8.cjs +1 -0
  154. package/dist/shared/index.vue_vue_type_script_setup_true_lang-GUuWAB0o.mjs +238 -0
  155. package/dist/shared/index.vue_vue_type_script_setup_true_lang-mWNAIcqc.mjs +63 -0
  156. package/dist/shared/index.vue_vue_type_style_index_0_lang-B4fDeQox.cjs +1 -0
  157. package/dist/shared/index.vue_vue_type_style_index_0_lang-BLRxKB-e.mjs +413 -0
  158. package/dist/shared/index.vue_vue_type_style_index_0_lang-Ba6d5zw4.mjs +142 -0
  159. package/dist/shared/index.vue_vue_type_style_index_0_lang-BzJsAWKD.cjs +1 -0
  160. package/dist/shared/{index.vue_vue_type_style_index_0_lang-OHPkiKBo.cjs → index.vue_vue_type_style_index_0_lang-C4yXFBV_.cjs} +1 -1
  161. package/dist/shared/index.vue_vue_type_style_index_0_lang-CFp5MK6j.cjs +1 -0
  162. package/dist/shared/index.vue_vue_type_style_index_0_lang-CVAm3ApY.cjs +1 -0
  163. package/dist/shared/{index.vue_vue_type_style_index_0_lang-DbQkbvgb.mjs → index.vue_vue_type_style_index_0_lang-CuTyK1Ey.mjs} +3 -3
  164. package/dist/shared/index.vue_vue_type_style_index_0_lang-CvVl_Y56.mjs +219 -0
  165. package/dist/shared/index.vue_vue_type_style_index_0_lang-D-p1u8y8.cjs +1 -0
  166. package/dist/shared/index.vue_vue_type_style_index_0_lang-D9T_xdbu.mjs +176 -0
  167. package/dist/shared/index.vue_vue_type_style_index_0_lang-DGV7FQlw.cjs +1 -0
  168. package/dist/shared/{index.vue_vue_type_style_index_0_lang-CcVf5MXE.mjs → index.vue_vue_type_style_index_0_lang-DZOPXZov.mjs} +59 -57
  169. package/dist/shared/{index.vue_vue_type_style_index_0_lang-DSur831A.mjs → index.vue_vue_type_style_index_0_lang-KXiTSh4t.mjs} +24 -18
  170. package/dist/shared/js.cookie-BA-dL3zT.mjs +74 -0
  171. package/dist/shared/js.cookie-BmJmHEx1.cjs +1 -0
  172. package/dist/shared/overlay-stack-DeKq7jZu.cjs +1 -0
  173. package/dist/shared/overlay-stack-eI-yzYU6.mjs +34 -0
  174. package/dist/shared/{utils-DoyI5oM8.mjs → utils-DpZkMLkb.mjs} +63 -49
  175. package/dist/shared/utils-DpkN3Zat.cjs +1 -0
  176. package/index.d.ts +44 -15
  177. package/package.json +1 -1
  178. package/qy-action-bar/index.d.ts +16 -4
  179. package/qy-autocomplete/index.d.ts +43 -2
  180. package/qy-checkbox/index.d.ts +1 -0
  181. package/qy-checkbox-group/index.d.ts +1 -0
  182. package/qy-date-picker/index.d.ts +1 -0
  183. package/qy-dialog/index.d.ts +4 -0
  184. package/qy-form-section/index.d.ts +22 -4
  185. package/qy-image/index.d.ts +1 -0
  186. package/qy-image-preview/index.d.ts +8 -4
  187. package/qy-menu-actions/index.d.ts +21 -2
  188. package/qy-money-input/index.d.ts +1 -0
  189. package/qy-pagination/index.d.ts +4 -0
  190. package/qy-popover/index.d.ts +4 -0
  191. package/qy-radio-group/index.d.ts +1 -0
  192. package/qy-record-quote-search/index.d.ts +53 -4
  193. package/qy-remark-image/index.d.ts +48 -4
  194. package/qy-remote-select/index.d.ts +53 -2
  195. package/qy-search-input/index.d.ts +66 -4
  196. package/qy-select/index.d.ts +4 -0
  197. package/qy-selection-dialog/index.d.ts +63 -2
  198. package/qy-switch/index.d.ts +1 -0
  199. package/qy-table-column-settings/index.d.ts +19 -2
  200. package/qy-tooltip/index.d.ts +5 -0
  201. package/qy-tree-select/index.d.ts +1 -0
  202. package/dist/shared/index-5dxbpQb_.cjs +0 -1
  203. package/dist/shared/index-BEcS8y8g.mjs +0 -68
  204. package/dist/shared/index-BSTMCPDj.mjs +0 -72
  205. package/dist/shared/index-Bh9hxVFh.mjs +0 -766
  206. package/dist/shared/index-CGq7Q_hV.mjs +0 -119
  207. package/dist/shared/index-CVYNG8Fc.cjs +0 -1
  208. package/dist/shared/index-CmgTSaFS.cjs +0 -1
  209. package/dist/shared/index-CnVhquq5.cjs +0 -1
  210. package/dist/shared/index-D27mwR57.cjs +0 -1
  211. package/dist/shared/index-DKw-seoh.cjs +0 -1
  212. package/dist/shared/index-DRugp8x0.cjs +0 -1
  213. package/dist/shared/index-DTbGlDqr.cjs +0 -1
  214. package/dist/shared/index-MyDDX-zj.cjs +0 -1
  215. package/dist/shared/index-afOuq3YX.cjs +0 -1
  216. package/dist/shared/index-rSrDnOpu.cjs +0 -1
  217. package/dist/shared/index-rjciSHaR.mjs +0 -2362
  218. package/dist/shared/index.vue_vue_type_script_setup_true_lang-BiIgNax-.cjs +0 -1
  219. package/dist/shared/index.vue_vue_type_script_setup_true_lang-CKp87br2.cjs +0 -1
  220. package/dist/shared/index.vue_vue_type_script_setup_true_lang-CqSJ_8hG.cjs +0 -1
  221. package/dist/shared/index.vue_vue_type_script_setup_true_lang-DbLp1kvW.cjs +0 -1
  222. package/dist/shared/index.vue_vue_type_script_setup_true_lang-DwFGEW4B.mjs +0 -143
  223. package/dist/shared/index.vue_vue_type_script_setup_true_lang-EiHoQBXt.mjs +0 -94
  224. package/dist/shared/index.vue_vue_type_script_setup_true_lang-IyZesuKm.mjs +0 -48
  225. package/dist/shared/index.vue_vue_type_script_setup_true_lang-UBQQ6Z03.cjs +0 -1
  226. package/dist/shared/index.vue_vue_type_script_setup_true_lang-ccFLNRry.cjs +0 -1
  227. package/dist/shared/index.vue_vue_type_script_setup_true_lang-r7iyZzDS.mjs +0 -61
  228. package/dist/shared/index.vue_vue_type_style_index_0_lang-1cTut9Ql.cjs +0 -1
  229. package/dist/shared/index.vue_vue_type_style_index_0_lang-B2thgQml.cjs +0 -1
  230. package/dist/shared/index.vue_vue_type_style_index_0_lang-BMZqMPZb.mjs +0 -215
  231. package/dist/shared/index.vue_vue_type_style_index_0_lang-Bb3L64L8.mjs +0 -406
  232. package/dist/shared/index.vue_vue_type_style_index_0_lang-BoaO6MKl.cjs +0 -1
  233. package/dist/shared/index.vue_vue_type_style_index_0_lang-C4Yk-UdJ.mjs +0 -172
  234. package/dist/shared/index.vue_vue_type_style_index_0_lang-D9-2GN18.cjs +0 -1
  235. package/dist/shared/index.vue_vue_type_style_index_0_lang-DHK86rdP.cjs +0 -1
  236. package/dist/shared/index.vue_vue_type_style_index_0_lang-DsOg_Rum.mjs +0 -128
  237. package/dist/shared/index.vue_vue_type_style_index_0_lang-RiwA2WPO.cjs +0 -1
  238. package/dist/shared/utils-BjEXwY3L.cjs +0 -1
  239. /package/dist/shared/{index-DiEag4sK.cjs → index-5UAiwqdT.cjs} +0 -0
  240. /package/dist/shared/{index-B3GsIwhf.mjs → index-BKdw4jD_.mjs} +0 -0
  241. /package/dist/shared/{index-B25yA5j-.mjs → index-BVaIvVMi.mjs} +0 -0
  242. /package/dist/shared/{index-HNFq7v-A.cjs → index-Bdlzmh8A.cjs} +0 -0
  243. /package/dist/shared/{index-Bq9quq2D.cjs → index-BsNtvE6i.cjs} +0 -0
  244. /package/dist/shared/{index-B3YHS3Aa.mjs → index-CGH2ROZV.mjs} +0 -0
  245. /package/dist/shared/{index-ByQyMTPg.mjs → index-DvXzDAmi.mjs} +0 -0
  246. /package/dist/shared/{index-EIFVul2W.cjs → index-O6K0DO_k.cjs} +0 -0
  247. /package/dist/shared/{index-B3XwO-Lc.mjs → index-QN7-6GpS.mjs} +0 -0
  248. /package/dist/shared/{index-CVWru9T3.cjs → index-_Bagw0Pj.cjs} +0 -0
  249. /package/dist/shared/{index.vue_vue_type_script_setup_true_lang-BnIolx5s.cjs → index.vue_vue_type_script_setup_true_lang-2ZOn9XPM.cjs} +0 -0
  250. /package/dist/shared/{index.vue_vue_type_script_setup_true_lang-wG7OTsWa.mjs → index.vue_vue_type_script_setup_true_lang-DM0MGPZh.mjs} +0 -0
  251. /package/dist/shared/{index.vue_vue_type_style_index_0_lang-CVdFZeHK.mjs → index.vue_vue_type_style_index_0_lang-90f2jQr7.mjs} +0 -0
  252. /package/dist/shared/{index.vue_vue_type_style_index_0_lang-hbNK_h45.cjs → index.vue_vue_type_style_index_0_lang-BNL5vyrU.cjs} +0 -0
  253. /package/dist/shared/{index.vue_vue_type_style_index_0_lang-gs0YJI91.mjs → index.vue_vue_type_style_index_0_lang-BvBAR8A1.mjs} +0 -0
  254. /package/dist/shared/{index.vue_vue_type_style_index_0_lang-C1n-zAZh.mjs → index.vue_vue_type_style_index_0_lang-C7L66EnO.mjs} +0 -0
  255. /package/dist/shared/{index.vue_vue_type_style_index_0_lang-Tzo8o6M8.mjs → index.vue_vue_type_style_index_0_lang-CN3dJjUV.mjs} +0 -0
  256. /package/dist/shared/{index.vue_vue_type_style_index_0_lang-CPxbKjvY.mjs → index.vue_vue_type_style_index_0_lang-CNdV3Mnk.mjs} +0 -0
  257. /package/dist/shared/{index.vue_vue_type_style_index_0_lang-B1FgJZbw.mjs → index.vue_vue_type_style_index_0_lang-CgScSrRJ.mjs} +0 -0
  258. /package/dist/shared/{index.vue_vue_type_style_index_0_lang-DFAaBzkW.cjs → index.vue_vue_type_style_index_0_lang-Clt7QDAK.cjs} +0 -0
  259. /package/dist/shared/{index.vue_vue_type_style_index_0_lang-WGzoSatU.cjs → index.vue_vue_type_style_index_0_lang-CvlRVqcl.cjs} +0 -0
  260. /package/dist/shared/{index.vue_vue_type_style_index_0_lang-KHk9wRYT.mjs → index.vue_vue_type_style_index_0_lang-DGt78p3G.mjs} +0 -0
  261. /package/dist/shared/{index.vue_vue_type_style_index_0_lang-BXTkWo5P.cjs → index.vue_vue_type_style_index_0_lang-J7wvS2CR.cjs} +0 -0
  262. /package/dist/shared/{index.vue_vue_type_style_index_0_lang-DVXf-yUs.cjs → index.vue_vue_type_style_index_0_lang-YEjVWWsy.cjs} +0 -0
  263. /package/dist/shared/{index.vue_vue_type_style_index_0_lang-D9DraThL.cjs → index.vue_vue_type_style_index_0_lang-nS-EDK4t.cjs} +0 -0
  264. /package/dist/shared/{index.vue_vue_type_style_index_0_lang-BnPRHCwR.cjs → index.vue_vue_type_style_index_0_lang-yci929so.cjs} +0 -0
@@ -0,0 +1,727 @@
1
+ import { ElUpload as at, ElIcon as it, ElPopover as st, ElInput as ot, ElImageViewer as ut, ElDialog as rt } from "element-plus/es";
2
+ import { ref as v, onMounted as dt, computed as k, watch as E, toRaw as Se, nextTick as pt, onBeforeUnmount as ct, openBlock as w, createElementBlock as V, normalizeStyle as ft, normalizeClass as ee, createElementVNode as h, unref as R, createVNode as S, createSlots as mt, withCtx as q, withModifiers as g, Fragment as te, toDisplayString as L, createCommentVNode as C, renderSlot as vt, createBlock as gt, createTextVNode as N } from "vue";
3
+ import { Plus as yt, InfoFilled as xt } from "@element-plus/icons-vue";
4
+ import { useFormDisabled as wt, genFileId as Ce, ElMessage as b, ElLoading as ht } from "element-plus";
5
+ import { a as bt } from "./js.cookie-BA-dL3zT.mjs";
6
+ import { _ as Ut } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
7
+ const kt = "Admin-Token";
8
+ function Vt(d = kt) {
9
+ return bt.get(d);
10
+ }
11
+ const Ft = ["accept", "multiple", "disabled"], Rt = ["disabled"], St = { class: "qy-upload__hint" }, Ct = ["placeholder", "disabled"], qt = ["src"], Bt = {
12
+ key: 1,
13
+ class: "qy-upload__tip"
14
+ }, Tt = { class: "error" }, jt = { class: "error" }, Dt = /* @__PURE__ */ Object.assign({
15
+ name: "QyUpload"
16
+ }, {
17
+ __name: "index",
18
+ props: {
19
+ /**
20
+ * 受控值。valueFormat 为 object 时结构为 { files, text },
21
+ * array 时为 string[],string 时为逗号分隔 URL。
22
+ */
23
+ modelValue: { type: [Object, Array, String], default: void 0 },
24
+ /** 已选择的浏览器本地文件,不与上传完成后的远程值混用。 */
25
+ selectedFiles: { type: Array, default: () => [] },
26
+ /** 是否在选择后立即上传;false 时只维护 selectedFiles。 */
27
+ autoUpload: { type: Boolean, default: !0 },
28
+ /** Qy 展示模式:media-card | file-list。 */
29
+ variant: { type: String, default: "media-card" },
30
+ /**
31
+ * 初始值,结构为 { files: '逗号分隔的URL', text: '文字内容' }
32
+ * 非受控模式,仅初始化时读取一次
33
+ */
34
+ defaultValue: { type: Object, default: () => ({ files: "", text: "" }) },
35
+ /** v-model 输出格式:object | array | string */
36
+ valueFormat: { type: String, default: "object" },
37
+ /** 是否显示底部文字备注区 */
38
+ showText: { type: Boolean, default: !0 },
39
+ /** 是否显示纯粘贴输入条,不保存文字,仅用于承接 Ctrl+V 图片 */
40
+ showPasteInput: { type: Boolean, default: !1 },
41
+ /** 文字区占位文案,也用于凭证上传的粘贴提示 */
42
+ pastePlaceholder: { type: String, default: "输入文字" },
43
+ /** 是否多选 */
44
+ multiple: { type: Boolean, default: !0 },
45
+ /** 是否禁用 */
46
+ disabled: { type: Boolean, default: void 0 },
47
+ /** 允许的文件类型后缀(如 ['jpg', 'mp4']) */
48
+ fileType: { type: Array, default: () => [] },
49
+ /** 单个文件大小限制(MB) */
50
+ fileSize: { type: Number, default: 10 },
51
+ /** 文件数量限制 */
52
+ limit: { type: Number, default: 9 },
53
+ /** 是否显示格式/大小提示 */
54
+ isShowTip: { type: Boolean, default: !1 },
55
+ /** 接口路径 */
56
+ api: { type: String, default: "/permission-api/common/uploads" },
57
+ /** FormData 中文件字段名 */
58
+ name: { type: String, default: "file" },
59
+ /** token 读取 key,对应 utils/auth 中的存储字段 */
60
+ tokenKey: { type: String, default: "Admin-Token" },
61
+ /** 是否支持视频模式(强制 limit=1) */
62
+ supportVideo: { type: Boolean, default: !1 },
63
+ /**
64
+ * 卡片尺寸
65
+ * 预设:'large'(160px) | 'default'(140px) | 'small'(80px)
66
+ * 自定义:任意 CSS 单位,如 '60px'、'8vw'
67
+ */
68
+ size: { type: String, default: "default" },
69
+ /** 禁用拖拽(默认在触发区开启) */
70
+ disableDrag: { type: Boolean, default: !1 },
71
+ /** 成功回调(用于复杂业务联动) */
72
+ callBack: { type: Function, default: null },
73
+ /** 上传时附加的额外 FormData 字段 */
74
+ extraData: { type: Object, default: () => ({}) },
75
+ /** 自定义上传请求,用于接入宿主项目 request / 鉴权 / baseURL。 */
76
+ uploadRequest: { type: Function, default: null }
77
+ },
78
+ emits: [
79
+ "update:modelValue",
80
+ "update:selectedFiles",
81
+ "selectedFilesChange",
82
+ "change",
83
+ "success",
84
+ "error",
85
+ "remove",
86
+ "invalid"
87
+ ],
88
+ setup(d, { expose: qe, emit: Be }) {
89
+ const a = d, p = Be, Te = v(null), le = v(null), ne = v(null), s = v([]), ae = v(null), je = v(null), P = /* @__PURE__ */ new Map(), ie = /* @__PURE__ */ new WeakMap();
90
+ let K = Date.now(), W = !1;
91
+ const X = v(!1), H = v([]), se = v(0), B = v(!1), oe = v(""), ue = v(""), A = /* @__PURE__ */ new Set(), T = /* @__PURE__ */ new Map();
92
+ function _(e) {
93
+ A.delete(e) && URL.revokeObjectURL(e);
94
+ }
95
+ function re() {
96
+ for (const e of A) _(e);
97
+ }
98
+ function I(e) {
99
+ const t = T.get(e);
100
+ t && (T.delete(e), t.close());
101
+ }
102
+ function de() {
103
+ for (const e of T.keys()) I(e);
104
+ }
105
+ function pe(e) {
106
+ var t;
107
+ (t = P.get(e)) == null || t();
108
+ }
109
+ function ce() {
110
+ for (const e of P.values()) e();
111
+ }
112
+ const M = v(!1), x = v(""), J = v(!1);
113
+ dt(() => {
114
+ a.modelValue !== void 0 || !a.autoUpload || ge(a.defaultValue);
115
+ });
116
+ const De = k(() => ({ large: "160px", default: "140px", small: "80px" })[a.size] ?? a.size), y = wt(), ze = k(
117
+ () => s.value.some((e) => e.status === "uploading")
118
+ ), Le = k(
119
+ () => a.variant === "file-list" || a.supportVideo ? "text" : "picture-card"
120
+ ), fe = k(() => a.supportVideo ? 1 : !a.autoUpload && !a.multiple ? 2 : a.limit), Pe = k(
121
+ () => {
122
+ var e;
123
+ return a.isShowTip && (a.fileSize || ((e = U.value) == null ? void 0 : e.length));
124
+ }
125
+ ), U = k(() => {
126
+ var e;
127
+ return (e = a.fileType) != null && e.length ? a.fileType.map((t) => String(t).trim().replace(/^\./, "").toLowerCase()).filter(Boolean) : a.variant === "file-list" ? [] : a.supportVideo ? ["mp4", "mov", "avi"] : ["jpg", "jpeg", "png", "gif", "webp"];
128
+ }), O = k(() => {
129
+ if (!a.autoUpload && !a.multiple) return !1;
130
+ const e = a.supportVideo ? 1 : a.limit;
131
+ return s.value.length >= e;
132
+ }), me = k(
133
+ () => U.value.map((e) => `.${e}`).join(",")
134
+ ), Ae = k(() => ({
135
+ "qy-upload--reached-limit": O.value,
136
+ "qy-upload--disabled": y.value,
137
+ "qy-upload--video": a.supportVideo,
138
+ "qy-upload--without-text": !a.showText && !a.showPasteInput
139
+ }));
140
+ E(x, () => {
141
+ W || D();
142
+ }), E(
143
+ () => a.modelValue,
144
+ (e) => {
145
+ a.autoUpload && e !== void 0 && ge(e);
146
+ },
147
+ { immediate: !0, deep: !0 }
148
+ ), E(
149
+ () => [a.autoUpload, a.selectedFiles],
150
+ ([e, t]) => {
151
+ e || (s.value = j(t));
152
+ },
153
+ { immediate: !0, deep: !0 }
154
+ );
155
+ function ve(e) {
156
+ return Array.isArray(e) ? e.filter(Boolean) : e ? String(e).split(",").filter(Boolean) : [];
157
+ }
158
+ function _e(e) {
159
+ return Array.isArray(e) ? { files: e, text: "" } : typeof e == "string" ? { files: ve(e), text: "" } : e && typeof e == "object" ? {
160
+ files: ve(e.files),
161
+ text: e.text ?? ""
162
+ } : { files: [], text: "" };
163
+ }
164
+ function Ie(e = []) {
165
+ return e.map((t, l) => ({
166
+ name: String(t).split("/").pop() || `file-${l}`,
167
+ url: t,
168
+ status: "success",
169
+ uid: Ce()
170
+ }));
171
+ }
172
+ function j(e = []) {
173
+ return e.filter(Boolean).map((t, l) => {
174
+ const n = Se(t);
175
+ return {
176
+ name: n.name,
177
+ raw: n,
178
+ status: "ready",
179
+ uid: Me(n, l)
180
+ };
181
+ });
182
+ }
183
+ function Me(e, t) {
184
+ if (e.uid != null) return e.uid;
185
+ const l = ie.get(e);
186
+ return l ?? (K += t + 1, ie.set(e, K), K);
187
+ }
188
+ function Q(e = s.value) {
189
+ return e.map((t) => {
190
+ const l = t.raw ?? (t instanceof File ? t : null);
191
+ return l ? Se(l) : null;
192
+ }).filter(Boolean);
193
+ }
194
+ function $(e) {
195
+ p("update:selectedFiles", e), p("selectedFilesChange", e);
196
+ }
197
+ function Oe(e, t) {
198
+ if (a.autoUpload) return;
199
+ const l = e == null ? void 0 : e.raw;
200
+ if (l && !G(l)) {
201
+ s.value = j(a.selectedFiles);
202
+ return;
203
+ }
204
+ const n = Q(t);
205
+ l && !n.includes(l) && n.push(l);
206
+ const i = a.multiple ? n : n.slice(-1);
207
+ s.value = j(i), $(i);
208
+ }
209
+ function $e(e) {
210
+ const t = new Set(e.map((n) => n.url)), l = s.value.filter(
211
+ (n) => (n.status === "ready" || n.status === "uploading") && !t.has(n.url)
212
+ );
213
+ return [...e, ...l];
214
+ }
215
+ function ge(e) {
216
+ const t = _e(e);
217
+ W = !0, x.value = t.text, s.value = $e(Ie(t.files)), pt(() => {
218
+ W = !1;
219
+ });
220
+ }
221
+ function ye(e) {
222
+ return a.valueFormat === "array" ? e.files : a.valueFormat === "string" ? e.files.join(",") : e;
223
+ }
224
+ function Ne() {
225
+ var e;
226
+ (e = ae.value) == null || e.focus();
227
+ }
228
+ function Ke(e) {
229
+ e.target.value = "";
230
+ }
231
+ function D(e) {
232
+ const n = { files: (e ?? s.value).filter((i) => i.status === "success" && i.url).map((i) => i.url), text: x.value };
233
+ p("update:modelValue", ye(n)), p("change", n), a.callBack && a.callBack(n);
234
+ }
235
+ function We(e, t) {
236
+ if (I(e.uid), pe(e.uid), _(e.url), !a.autoUpload) {
237
+ const l = Q(t);
238
+ s.value = j(l), $(l), p("remove", e, t);
239
+ return;
240
+ }
241
+ D(t), p("remove", e, t);
242
+ }
243
+ function xe(e) {
244
+ var l;
245
+ const t = (e == null ? void 0 : e.name) || "";
246
+ return t.includes(".") && ((l = t.split(".").pop()) == null ? void 0 : l.toLowerCase()) || "";
247
+ }
248
+ function we(e) {
249
+ var i, u, o;
250
+ const t = ((u = (i = e == null ? void 0 : e.type) == null ? void 0 : i.toLowerCase) == null ? void 0 : u.call(i)) || "", l = {
251
+ "image/jpeg": ["jpg", "jpeg"],
252
+ "image/png": ["png"],
253
+ "image/gif": ["gif"],
254
+ "image/bmp": ["bmp"],
255
+ "image/webp": ["webp"],
256
+ "video/mp4": ["mp4"],
257
+ "video/quicktime": ["mov"],
258
+ "video/x-msvideo": ["avi"],
259
+ "video/webm": ["webm"]
260
+ };
261
+ if (l[t]) return l[t];
262
+ const n = (o = t.split("/")[1]) == null ? void 0 : o.split("+")[0];
263
+ return n ? [n] : [];
264
+ }
265
+ function Xe(e) {
266
+ if (!U.value.length) return !0;
267
+ const t = xe(e), l = we(e);
268
+ return [t, ...l].some(
269
+ (n) => U.value.includes(n)
270
+ );
271
+ }
272
+ function G(e) {
273
+ if (a.fileSize > 0 && e.size > a.fileSize * 1024 * 1024) {
274
+ const l = {
275
+ code: "size",
276
+ file: e,
277
+ message: `文件大小不能超过${a.fileSize}M`
278
+ };
279
+ return b.warning(l.message), p("invalid", l), !1;
280
+ }
281
+ if (!Xe(e)) {
282
+ const l = {
283
+ code: "extension",
284
+ file: e,
285
+ message: `格式不支持,仅允许: ${U.value.join("/")}`
286
+ };
287
+ return b.warning(l.message), p("invalid", l), !1;
288
+ }
289
+ return !0;
290
+ }
291
+ async function He(e, t, l, n, i) {
292
+ const u = he(e), o = { close: () => n.close() };
293
+ T.set(i, o);
294
+ const c = () => T.get(i) === o;
295
+ try {
296
+ const r = await a.uploadRequest({
297
+ file: e,
298
+ formData: u,
299
+ api: a.api,
300
+ name: a.name,
301
+ tokenKey: a.tokenKey,
302
+ extraData: a.extraData
303
+ });
304
+ if (!c()) return;
305
+ const f = Je(r);
306
+ if (!f) {
307
+ const F = new Error("上传失败,未返回文件地址");
308
+ b.error(F.message), p("error", F), l == null || l(F);
309
+ return;
310
+ }
311
+ b.success("上传成功"), t == null || t({ ...typeof r == "object" && r ? r : {}, url: f });
312
+ } catch (r) {
313
+ if (!c()) return;
314
+ b.error("上传失败"), p("error", r), l == null || l(r);
315
+ } finally {
316
+ c() && I(i);
317
+ }
318
+ }
319
+ function he(e) {
320
+ const t = new FormData();
321
+ return t.append(a.name, e), a.extraData && Object.entries(a.extraData).forEach(([l, n]) => t.append(l, n)), t;
322
+ }
323
+ function Je(e) {
324
+ var n, i;
325
+ if (typeof e == "string") return e;
326
+ const t = e || {}, l = t.urls ?? t.url ?? ((n = t.data) == null ? void 0 : n.urls) ?? ((i = t.data) == null ? void 0 : i.url) ?? "";
327
+ return Array.isArray(l) ? l[0] || "" : l || "";
328
+ }
329
+ function be(e, t, l, n, i = e.uid) {
330
+ const u = ht.service({
331
+ target: le.value,
332
+ text: "上传中",
333
+ background: "rgba(255,255,255,0.7)"
334
+ });
335
+ if (a.uploadRequest) {
336
+ He(e, l, n, u, i);
337
+ return;
338
+ }
339
+ const o = a.api.startsWith("http") ? a.api : window.location.origin + a.api.replace(/^([^/])/, "/$1"), c = he(e), r = new XMLHttpRequest();
340
+ let f = !1;
341
+ const F = () => f ? !1 : (f = !0, P.delete(i), u.close(), !0);
342
+ P.set(i, () => {
343
+ F() && r.abort();
344
+ }), r.onabort = F, r.open("POST", o);
345
+ const Re = Vt(a.tokenKey);
346
+ Re && r.setRequestHeader("Authorization", `Bearer ${Re}`), r.upload.onprogress = (m) => {
347
+ !f && m.total > 0 && (t == null || t({ percent: m.loaded / m.total * 100 }));
348
+ }, r.onload = () => {
349
+ if (F()) {
350
+ if (r.status < 200 || r.status >= 300) {
351
+ const m = `上传失败 (HTTP ${r.status})`;
352
+ b.error(m), p("error", { msg: m, status: r.status }), n == null || n(new Error(m));
353
+ return;
354
+ }
355
+ try {
356
+ const m = JSON.parse(r.responseText);
357
+ m.code === 200 && m.urls ? (b.success("上传成功"), l == null || l({ ...m, url: m.urls })) : (b.error(m.msg || "上传失败"), p("error", m), n == null || n(m));
358
+ } catch {
359
+ b.error("上传失败,响应格式错误"), p("error", new Error("Response parse error")), n == null || n(new Error("Response parse error"));
360
+ }
361
+ }
362
+ }, r.onerror = () => {
363
+ F() && (b.error("上传失败,网络异常"), p("error", new Error("Network error")), n == null || n(new Error("Network error")));
364
+ }, r.send(c);
365
+ }
366
+ function Ue(e) {
367
+ return y.value ? !1 : G(e);
368
+ }
369
+ function Qe(e, t) {
370
+ const l = s.value.find(
371
+ (n) => {
372
+ var i;
373
+ return n.uid === (e == null ? void 0 : e.uid) || ((i = n.raw) == null ? void 0 : i.uid) === (e == null ? void 0 : e.uid);
374
+ }
375
+ );
376
+ l && (l.url = t, l.status = "success");
377
+ }
378
+ function Ge(e) {
379
+ be(
380
+ e.file,
381
+ e.onProgress,
382
+ (t) => {
383
+ Qe(e.file, t.url), e.onSuccess(t), D(), p("success", t);
384
+ },
385
+ (t) => e.onError(t)
386
+ );
387
+ }
388
+ function Ye(e) {
389
+ var n;
390
+ if (!e.url) return;
391
+ const t = ((n = e.url.split(".").pop()) == null ? void 0 : n.toLowerCase()) || "";
392
+ if (["mp4", "mov", "avi", "webm"].includes(t)) {
393
+ oe.value = e.url, ue.value = e.name || "视频预览", B.value = !0;
394
+ return;
395
+ }
396
+ const l = s.value.filter(
397
+ (i) => {
398
+ var u;
399
+ return i.status === "success" && i.url && !["mp4", "mov", "avi", "webm"].includes(
400
+ (u = i.url.split(".").pop()) == null ? void 0 : u.toLowerCase()
401
+ );
402
+ }
403
+ );
404
+ H.value = l.map((i) => i.url), se.value = l.findIndex((i) => i.uid === e.uid) || 0, X.value = !0;
405
+ }
406
+ function Ze() {
407
+ X.value = !1, H.value = [];
408
+ }
409
+ function Ee(e, t) {
410
+ if (e.name && xe(e)) return e;
411
+ const l = we(e).find(
412
+ (n) => U.value.includes(n)
413
+ );
414
+ return l ? new File([e], `paste-${Date.now() + t}.${l}`, {
415
+ type: e.type,
416
+ lastModified: e.lastModified
417
+ }) : e;
418
+ }
419
+ function Y(e) {
420
+ if (!a.autoUpload) {
421
+ const t = Q(), l = e.filter((i) => G(i));
422
+ if (!l.length) return;
423
+ const n = a.multiple ? [...t, ...l].slice(0, a.limit) : l.slice(-1);
424
+ s.value = j(n), $(n);
425
+ return;
426
+ }
427
+ for (let t = 0; t < e.length && !(s.value.length >= fe.value); t++) {
428
+ const l = Ee(e[t], t);
429
+ if (!Ue(l)) continue;
430
+ const n = Ce(), i = URL.createObjectURL(l);
431
+ A.add(i), s.value.push({
432
+ uid: n,
433
+ name: l.name || `file-${n}`,
434
+ status: "uploading",
435
+ percentage: 0,
436
+ url: i
437
+ }), be(
438
+ l,
439
+ (u) => {
440
+ const o = s.value.find((c) => c.uid === n);
441
+ o && (o.percentage = u.percent);
442
+ },
443
+ (u) => {
444
+ const o = s.value.find((c) => c.uid === n);
445
+ o && (o.url !== u.url && _(o.url), o.status = "success", o.url = u.url, D(), p("success", u));
446
+ },
447
+ () => lt(n),
448
+ n
449
+ );
450
+ }
451
+ }
452
+ function et(e) {
453
+ const t = e.target, l = Array.from(t.files || []);
454
+ if (t.value = "", y.value || !l.length) return;
455
+ const n = a.supportVideo || !a.multiple ? l.slice(0, 1) : l;
456
+ Y(n);
457
+ }
458
+ function tt(e) {
459
+ const t = Array.from((e == null ? void 0 : e.files) || []).filter(
460
+ (u) => {
461
+ var o;
462
+ return (o = u.type) == null ? void 0 : o.startsWith("image/");
463
+ }
464
+ );
465
+ if (t.length) return t;
466
+ const l = e == null ? void 0 : e.items;
467
+ if (!l) return [];
468
+ const n = [], i = /* @__PURE__ */ new Set();
469
+ for (let u = 0; u < l.length; u++) {
470
+ const o = l[u];
471
+ if (o.kind === "file" && o.type.startsWith("image/")) {
472
+ const c = o.getAsFile();
473
+ c && !i.has(c) && (i.add(c), n.push(c));
474
+ }
475
+ }
476
+ return n;
477
+ }
478
+ function z(e) {
479
+ if (y.value) return;
480
+ const t = tt(e.clipboardData);
481
+ t.length && (e.preventDefault(), Y(t));
482
+ }
483
+ function ke() {
484
+ y.value || a.disableDrag || (M.value = !0);
485
+ }
486
+ function Ve() {
487
+ M.value = !1;
488
+ }
489
+ function Fe(e) {
490
+ var l;
491
+ if (M.value = !1, y.value || a.disableDrag || O.value) return;
492
+ const t = Array.from(((l = e.dataTransfer) == null ? void 0 : l.files) || []);
493
+ t.length && Y(t);
494
+ }
495
+ function lt(e) {
496
+ I(e), pe(e);
497
+ const t = s.value.findIndex((l) => l.uid === e);
498
+ t !== -1 && (_(s.value[t].url), s.value.splice(t, 1));
499
+ }
500
+ ct(() => {
501
+ de(), ce(), re();
502
+ });
503
+ function Z() {
504
+ var e;
505
+ y.value || O.value || (e = ne.value) == null || e.click();
506
+ }
507
+ function nt() {
508
+ var e;
509
+ de(), ce();
510
+ for (const t of s.value)
511
+ (e = t.url) != null && e.startsWith("blob:") && A.add(t.url);
512
+ re(), s.value = [], x.value = "", $([]), a.autoUpload && D();
513
+ }
514
+ return qe({
515
+ /** 主动打开文件选择框,供表单或快捷操作调用 */
516
+ openFileDialog: Z,
517
+ /** 获取已上传成功的文件 URL 列表 */
518
+ getPathList: () => s.value.filter((e) => e.status === "success").map((e) => e.url),
519
+ /** 清空文件和文字,并同步 change 事件 */
520
+ clearFiles: nt,
521
+ /** 获取完整值,结构与 change 事件保持一致 */
522
+ getValue: () => ({
523
+ files: s.value.filter((e) => e.status === "success" && e.url).map((e) => e.url),
524
+ text: x.value
525
+ }),
526
+ /** 获取按 valueFormat 输出的值,便于外部不走 v-model 时读取 */
527
+ getModelValue: () => ye({
528
+ files: s.value.filter((e) => e.status === "success" && e.url).map((e) => e.url),
529
+ text: x.value
530
+ })
531
+ }), (e, t) => {
532
+ var r;
533
+ const l = it, n = ot, i = st, u = at, o = ut, c = rt;
534
+ return w(), V("div", {
535
+ ref_key: "rootRef",
536
+ ref: le,
537
+ class: ee(["qy-upload", Ae.value]),
538
+ style: ft({ "--qy-upload-size": De.value })
539
+ }, [
540
+ h("input", {
541
+ ref_key: "nativeInputRef",
542
+ ref: ne,
543
+ class: "qy-upload__native-input",
544
+ type: "file",
545
+ accept: me.value,
546
+ multiple: d.supportVideo ? !1 : d.multiple,
547
+ disabled: R(y),
548
+ onChange: et
549
+ }, null, 40, Ft),
550
+ S(u, {
551
+ ref_key: "uploadRef",
552
+ ref: Te,
553
+ "file-list": s.value,
554
+ "onUpdate:fileList": t[7] || (t[7] = (f) => s.value = f),
555
+ action: "#",
556
+ multiple: d.supportVideo ? !1 : d.multiple,
557
+ limit: fe.value,
558
+ "auto-upload": d.autoUpload,
559
+ "list-type": Le.value,
560
+ accept: me.value,
561
+ disabled: R(y),
562
+ "http-request": Ge,
563
+ "before-upload": Ue,
564
+ "on-change": Oe,
565
+ "on-preview": Ye,
566
+ "on-remove": We
567
+ }, mt({
568
+ default: q(() => [
569
+ d.variant !== "file-list" && !O.value ? (w(), V("div", {
570
+ key: 0,
571
+ class: ee(["qy-upload__trigger", { "is-dragover": M.value }]),
572
+ onPaste: z,
573
+ onDragover: g(ke, ["prevent"]),
574
+ onDragleave: g(Ve, ["prevent"]),
575
+ onDrop: g(Fe, ["prevent"])
576
+ }, [
577
+ S(l, { class: "qy-upload__icon" }, {
578
+ default: q(() => [
579
+ S(R(yt))
580
+ ]),
581
+ _: 1
582
+ }),
583
+ d.supportVideo ? (w(), V(te, { key: 0 }, [
584
+ t[10] || (t[10] = h("span", { class: "qy-upload__label" }, "点击上传视频", -1)),
585
+ h("span", St, "支持 " + L(U.value.join(" / ")) + ",不超过 " + L(d.fileSize) + "MB", 1)
586
+ ], 64)) : C("", !0),
587
+ d.showText ? (w(), V("div", {
588
+ key: 1,
589
+ class: "qy-upload__text",
590
+ onClick: t[4] || (t[4] = g(() => {
591
+ }, ["stop"])),
592
+ onPaste: g(z, ["stop"])
593
+ }, [
594
+ S(i, {
595
+ visible: J.value,
596
+ "onUpdate:visible": t[3] || (t[3] = (f) => J.value = f),
597
+ placement: "bottom-start",
598
+ width: 220,
599
+ trigger: "click",
600
+ "popper-class": "qy-upload__text-popover",
601
+ onAfterEnter: Ne
602
+ }, {
603
+ reference: q(() => [
604
+ h("div", {
605
+ class: ee(["qy-upload__text-preview", { "is-placeholder": !x.value }])
606
+ }, L(x.value || d.pastePlaceholder), 3)
607
+ ]),
608
+ default: q(() => [
609
+ S(n, {
610
+ ref_key: "inputRef",
611
+ ref: ae,
612
+ modelValue: x.value,
613
+ "onUpdate:modelValue": t[1] || (t[1] = (f) => x.value = f),
614
+ type: "textarea",
615
+ autosize: { minRows: 2, maxRows: 5 },
616
+ placeholder: d.pastePlaceholder,
617
+ disabled: R(y),
618
+ onBlur: t[2] || (t[2] = (f) => J.value = !1),
619
+ onPaste: g(z, ["stop"])
620
+ }, null, 8, ["modelValue", "placeholder", "disabled"])
621
+ ]),
622
+ _: 1
623
+ }, 8, ["visible"])
624
+ ], 32)) : d.showPasteInput ? (w(), V("div", {
625
+ key: 2,
626
+ class: "qy-upload__text",
627
+ onClick: t[6] || (t[6] = g(() => {
628
+ }, ["stop"])),
629
+ onPaste: g(z, ["stop"])
630
+ }, [
631
+ h("input", {
632
+ ref_key: "pasteInputRef",
633
+ ref: je,
634
+ class: "qy-upload__paste-input",
635
+ placeholder: d.pastePlaceholder,
636
+ disabled: R(y),
637
+ onPaste: g(z, ["stop"]),
638
+ onInput: Ke,
639
+ onClick: t[5] || (t[5] = g(() => {
640
+ }, ["stop"]))
641
+ }, null, 40, Ct)
642
+ ], 32)) : C("", !0)
643
+ ], 34)) : C("", !0)
644
+ ]),
645
+ _: 2
646
+ }, [
647
+ d.variant === "file-list" ? {
648
+ name: "trigger",
649
+ fn: q(() => [
650
+ h("div", {
651
+ class: "qy-upload__file-trigger",
652
+ onClick: t[0] || (t[0] = g(() => {
653
+ }, ["stop"])),
654
+ onDragover: g(ke, ["prevent"]),
655
+ onDragleave: g(Ve, ["prevent"]),
656
+ onDrop: g(Fe, ["prevent"])
657
+ }, [
658
+ vt(e.$slots, "trigger", {
659
+ open: Z,
660
+ disabled: R(y),
661
+ uploading: ze.value
662
+ }, () => [
663
+ h("button", {
664
+ class: "qy-upload__file-button",
665
+ type: "button",
666
+ disabled: R(y),
667
+ onClick: Z
668
+ }, " 选择文件 ", 8, Rt)
669
+ ], !0)
670
+ ], 32)
671
+ ]),
672
+ key: "0"
673
+ } : void 0
674
+ ]), 1032, ["file-list", "multiple", "limit", "auto-upload", "list-type", "accept", "disabled"]),
675
+ X.value ? (w(), gt(o, {
676
+ key: 0,
677
+ "url-list": H.value,
678
+ "initial-index": se.value,
679
+ onClose: Ze
680
+ }, null, 8, ["url-list", "initial-index"])) : C("", !0),
681
+ S(c, {
682
+ modelValue: B.value,
683
+ "onUpdate:modelValue": t[8] || (t[8] = (f) => B.value = f),
684
+ title: ue.value,
685
+ width: "640px",
686
+ "append-to-body": "",
687
+ "destroy-on-close": "",
688
+ onClose: t[9] || (t[9] = (f) => B.value = !1)
689
+ }, {
690
+ default: q(() => [
691
+ B.value ? (w(), V("video", {
692
+ key: 0,
693
+ src: oe.value,
694
+ controls: "",
695
+ autoplay: "",
696
+ style: { width: "100%", "max-height": "400px", "border-radius": "4px" }
697
+ }, null, 8, qt)) : C("", !0)
698
+ ]),
699
+ _: 1
700
+ }, 8, ["modelValue", "title"]),
701
+ Pe.value ? (w(), V("div", Bt, [
702
+ S(l, null, {
703
+ default: q(() => [
704
+ S(R(xt))
705
+ ]),
706
+ _: 1
707
+ }),
708
+ h("span", null, [
709
+ t[13] || (t[13] = N(" 请上传 ", -1)),
710
+ d.fileSize ? (w(), V(te, { key: 0 }, [
711
+ t[11] || (t[11] = N("大小不超过 ", -1)),
712
+ h("b", Tt, L(d.fileSize) + "MB", 1)
713
+ ], 64)) : C("", !0),
714
+ (r = U.value) != null && r.length ? (w(), V(te, { key: 1 }, [
715
+ t[12] || (t[12] = N(",格式为 ", -1)),
716
+ h("b", jt, L(U.value.join("/")), 1)
717
+ ], 64)) : C("", !0),
718
+ t[14] || (t[14] = N(" 的文件。 ", -1))
719
+ ])
720
+ ])) : C("", !0)
721
+ ], 6);
722
+ };
723
+ }
724
+ }), Mt = /* @__PURE__ */ Ut(Dt, [["__scopeId", "data-v-b2517f27"]]);
725
+ export {
726
+ Mt as U
727
+ };