@element-plus/nightly 0.0.20220718 → 0.0.20220721

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 (360) hide show
  1. package/dist/index.full.js +322 -322
  2. package/dist/index.full.min.js +14 -14
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +15 -15
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +321 -322
  7. package/dist/locale/af.js +1 -1
  8. package/dist/locale/af.min.js +1 -1
  9. package/dist/locale/af.min.mjs +1 -1
  10. package/dist/locale/af.mjs +1 -1
  11. package/dist/locale/ar.js +1 -1
  12. package/dist/locale/ar.min.js +1 -1
  13. package/dist/locale/ar.min.mjs +1 -1
  14. package/dist/locale/ar.mjs +1 -1
  15. package/dist/locale/az.js +1 -1
  16. package/dist/locale/az.min.js +1 -1
  17. package/dist/locale/az.min.mjs +1 -1
  18. package/dist/locale/az.mjs +1 -1
  19. package/dist/locale/bg.js +1 -1
  20. package/dist/locale/bg.min.js +1 -1
  21. package/dist/locale/bg.min.mjs +1 -1
  22. package/dist/locale/bg.mjs +1 -1
  23. package/dist/locale/bn.js +1 -1
  24. package/dist/locale/bn.min.js +1 -1
  25. package/dist/locale/bn.min.mjs +1 -1
  26. package/dist/locale/bn.mjs +1 -1
  27. package/dist/locale/ca.js +1 -1
  28. package/dist/locale/ca.min.js +1 -1
  29. package/dist/locale/ca.min.mjs +1 -1
  30. package/dist/locale/ca.mjs +1 -1
  31. package/dist/locale/cs.js +1 -1
  32. package/dist/locale/cs.min.js +1 -1
  33. package/dist/locale/cs.min.mjs +1 -1
  34. package/dist/locale/cs.mjs +1 -1
  35. package/dist/locale/da.js +1 -1
  36. package/dist/locale/da.min.js +1 -1
  37. package/dist/locale/da.min.mjs +1 -1
  38. package/dist/locale/da.mjs +1 -1
  39. package/dist/locale/de.js +1 -1
  40. package/dist/locale/de.min.js +1 -1
  41. package/dist/locale/de.min.mjs +1 -1
  42. package/dist/locale/de.mjs +1 -1
  43. package/dist/locale/el.js +1 -1
  44. package/dist/locale/el.min.js +1 -1
  45. package/dist/locale/el.min.mjs +1 -1
  46. package/dist/locale/el.mjs +1 -1
  47. package/dist/locale/en.js +1 -1
  48. package/dist/locale/en.min.js +1 -1
  49. package/dist/locale/en.min.mjs +1 -1
  50. package/dist/locale/en.mjs +1 -1
  51. package/dist/locale/eo.js +1 -1
  52. package/dist/locale/eo.min.js +1 -1
  53. package/dist/locale/eo.min.mjs +1 -1
  54. package/dist/locale/eo.mjs +1 -1
  55. package/dist/locale/es.js +1 -1
  56. package/dist/locale/es.min.js +1 -1
  57. package/dist/locale/es.min.mjs +1 -1
  58. package/dist/locale/es.mjs +1 -1
  59. package/dist/locale/et.js +1 -1
  60. package/dist/locale/et.min.js +1 -1
  61. package/dist/locale/et.min.mjs +1 -1
  62. package/dist/locale/et.mjs +1 -1
  63. package/dist/locale/eu.js +1 -1
  64. package/dist/locale/eu.min.js +1 -1
  65. package/dist/locale/eu.min.mjs +1 -1
  66. package/dist/locale/eu.mjs +1 -1
  67. package/dist/locale/fa.js +1 -1
  68. package/dist/locale/fa.min.js +1 -1
  69. package/dist/locale/fa.min.mjs +1 -1
  70. package/dist/locale/fa.mjs +1 -1
  71. package/dist/locale/fi.js +1 -1
  72. package/dist/locale/fi.min.js +1 -1
  73. package/dist/locale/fi.min.mjs +1 -1
  74. package/dist/locale/fi.mjs +1 -1
  75. package/dist/locale/fr.js +1 -1
  76. package/dist/locale/fr.min.js +1 -1
  77. package/dist/locale/fr.min.mjs +1 -1
  78. package/dist/locale/fr.mjs +1 -1
  79. package/dist/locale/he.js +1 -1
  80. package/dist/locale/he.min.js +1 -1
  81. package/dist/locale/he.min.mjs +1 -1
  82. package/dist/locale/he.mjs +1 -1
  83. package/dist/locale/hr.js +1 -1
  84. package/dist/locale/hr.min.js +1 -1
  85. package/dist/locale/hr.min.mjs +1 -1
  86. package/dist/locale/hr.mjs +1 -1
  87. package/dist/locale/hu.js +1 -1
  88. package/dist/locale/hu.min.js +1 -1
  89. package/dist/locale/hu.min.mjs +1 -1
  90. package/dist/locale/hu.mjs +1 -1
  91. package/dist/locale/hy-am.js +1 -1
  92. package/dist/locale/hy-am.min.js +1 -1
  93. package/dist/locale/hy-am.min.mjs +1 -1
  94. package/dist/locale/hy-am.mjs +1 -1
  95. package/dist/locale/id.js +1 -1
  96. package/dist/locale/id.min.js +1 -1
  97. package/dist/locale/id.min.mjs +1 -1
  98. package/dist/locale/id.mjs +1 -1
  99. package/dist/locale/it.js +1 -1
  100. package/dist/locale/it.min.js +1 -1
  101. package/dist/locale/it.min.mjs +1 -1
  102. package/dist/locale/it.mjs +1 -1
  103. package/dist/locale/ja.js +1 -1
  104. package/dist/locale/ja.min.js +1 -1
  105. package/dist/locale/ja.min.mjs +1 -1
  106. package/dist/locale/ja.mjs +1 -1
  107. package/dist/locale/kk.js +1 -1
  108. package/dist/locale/kk.min.js +1 -1
  109. package/dist/locale/kk.min.mjs +1 -1
  110. package/dist/locale/kk.mjs +1 -1
  111. package/dist/locale/km.js +1 -1
  112. package/dist/locale/km.min.js +1 -1
  113. package/dist/locale/km.min.mjs +1 -1
  114. package/dist/locale/km.mjs +1 -1
  115. package/dist/locale/ko.js +1 -1
  116. package/dist/locale/ko.min.js +1 -1
  117. package/dist/locale/ko.min.mjs +1 -1
  118. package/dist/locale/ko.mjs +1 -1
  119. package/dist/locale/ku.js +1 -1
  120. package/dist/locale/ku.min.js +1 -1
  121. package/dist/locale/ku.min.mjs +1 -1
  122. package/dist/locale/ku.mjs +1 -1
  123. package/dist/locale/ky.js +1 -1
  124. package/dist/locale/ky.min.js +1 -1
  125. package/dist/locale/ky.min.mjs +1 -1
  126. package/dist/locale/ky.mjs +1 -1
  127. package/dist/locale/lt.js +1 -1
  128. package/dist/locale/lt.min.js +1 -1
  129. package/dist/locale/lt.min.mjs +1 -1
  130. package/dist/locale/lt.mjs +1 -1
  131. package/dist/locale/lv.js +1 -1
  132. package/dist/locale/lv.min.js +1 -1
  133. package/dist/locale/lv.min.mjs +1 -1
  134. package/dist/locale/lv.mjs +1 -1
  135. package/dist/locale/mg.js +1 -1
  136. package/dist/locale/mg.min.js +1 -1
  137. package/dist/locale/mg.min.mjs +1 -1
  138. package/dist/locale/mg.mjs +1 -1
  139. package/dist/locale/mn.js +1 -1
  140. package/dist/locale/mn.min.js +1 -1
  141. package/dist/locale/mn.min.mjs +1 -1
  142. package/dist/locale/mn.mjs +1 -1
  143. package/dist/locale/nb-no.js +1 -1
  144. package/dist/locale/nb-no.min.js +1 -1
  145. package/dist/locale/nb-no.min.mjs +1 -1
  146. package/dist/locale/nb-no.mjs +1 -1
  147. package/dist/locale/nl.js +1 -1
  148. package/dist/locale/nl.min.js +1 -1
  149. package/dist/locale/nl.min.mjs +1 -1
  150. package/dist/locale/nl.mjs +1 -1
  151. package/dist/locale/pa.js +1 -1
  152. package/dist/locale/pa.min.js +1 -1
  153. package/dist/locale/pa.min.mjs +1 -1
  154. package/dist/locale/pa.mjs +1 -1
  155. package/dist/locale/pl.js +1 -1
  156. package/dist/locale/pl.min.js +1 -1
  157. package/dist/locale/pl.min.mjs +1 -1
  158. package/dist/locale/pl.mjs +1 -1
  159. package/dist/locale/pt-br.js +1 -1
  160. package/dist/locale/pt-br.min.js +1 -1
  161. package/dist/locale/pt-br.min.mjs +1 -1
  162. package/dist/locale/pt-br.mjs +1 -1
  163. package/dist/locale/pt.js +1 -1
  164. package/dist/locale/pt.min.js +1 -1
  165. package/dist/locale/pt.min.mjs +1 -1
  166. package/dist/locale/pt.mjs +1 -1
  167. package/dist/locale/ro.js +1 -1
  168. package/dist/locale/ro.min.js +1 -1
  169. package/dist/locale/ro.min.mjs +1 -1
  170. package/dist/locale/ro.mjs +1 -1
  171. package/dist/locale/ru.js +1 -1
  172. package/dist/locale/ru.min.js +1 -1
  173. package/dist/locale/ru.min.mjs +1 -1
  174. package/dist/locale/ru.mjs +1 -1
  175. package/dist/locale/sk.js +1 -1
  176. package/dist/locale/sk.min.js +1 -1
  177. package/dist/locale/sk.min.mjs +1 -1
  178. package/dist/locale/sk.mjs +1 -1
  179. package/dist/locale/sl.js +1 -1
  180. package/dist/locale/sl.min.js +1 -1
  181. package/dist/locale/sl.min.mjs +1 -1
  182. package/dist/locale/sl.mjs +1 -1
  183. package/dist/locale/sr.js +1 -1
  184. package/dist/locale/sr.min.js +1 -1
  185. package/dist/locale/sr.min.mjs +1 -1
  186. package/dist/locale/sr.mjs +1 -1
  187. package/dist/locale/sv.js +1 -1
  188. package/dist/locale/sv.min.js +1 -1
  189. package/dist/locale/sv.min.mjs +1 -1
  190. package/dist/locale/sv.mjs +1 -1
  191. package/dist/locale/ta.js +1 -1
  192. package/dist/locale/ta.min.js +1 -1
  193. package/dist/locale/ta.min.mjs +1 -1
  194. package/dist/locale/ta.mjs +1 -1
  195. package/dist/locale/th.js +1 -1
  196. package/dist/locale/th.min.js +1 -1
  197. package/dist/locale/th.min.mjs +1 -1
  198. package/dist/locale/th.mjs +1 -1
  199. package/dist/locale/tk.js +1 -1
  200. package/dist/locale/tk.min.js +1 -1
  201. package/dist/locale/tk.min.mjs +1 -1
  202. package/dist/locale/tk.mjs +1 -1
  203. package/dist/locale/tr.js +1 -1
  204. package/dist/locale/tr.min.js +1 -1
  205. package/dist/locale/tr.min.mjs +1 -1
  206. package/dist/locale/tr.mjs +1 -1
  207. package/dist/locale/ug-cn.js +1 -1
  208. package/dist/locale/ug-cn.min.js +1 -1
  209. package/dist/locale/ug-cn.min.mjs +1 -1
  210. package/dist/locale/ug-cn.mjs +1 -1
  211. package/dist/locale/uk.js +1 -1
  212. package/dist/locale/uk.min.js +1 -1
  213. package/dist/locale/uk.min.mjs +1 -1
  214. package/dist/locale/uk.mjs +1 -1
  215. package/dist/locale/uz-uz.js +1 -1
  216. package/dist/locale/uz-uz.min.js +1 -1
  217. package/dist/locale/uz-uz.min.mjs +1 -1
  218. package/dist/locale/uz-uz.mjs +1 -1
  219. package/dist/locale/vi.js +1 -1
  220. package/dist/locale/vi.min.js +1 -1
  221. package/dist/locale/vi.min.mjs +1 -1
  222. package/dist/locale/vi.mjs +1 -1
  223. package/dist/locale/zh-cn.js +1 -1
  224. package/dist/locale/zh-cn.min.js +1 -1
  225. package/dist/locale/zh-cn.min.mjs +1 -1
  226. package/dist/locale/zh-cn.mjs +1 -1
  227. package/dist/locale/zh-tw.js +1 -1
  228. package/dist/locale/zh-tw.min.js +1 -1
  229. package/dist/locale/zh-tw.min.mjs +1 -1
  230. package/dist/locale/zh-tw.mjs +1 -1
  231. package/es/components/avatar/index.mjs +2 -2
  232. package/es/components/avatar/src/avatar.mjs +67 -32
  233. package/es/components/avatar/src/avatar.mjs.map +1 -1
  234. package/es/components/avatar/src/avatar2.mjs +32 -67
  235. package/es/components/avatar/src/avatar2.mjs.map +1 -1
  236. package/es/components/date-picker/src/date-picker-com/basic-date-table.mjs +21 -8
  237. package/es/components/date-picker/src/date-picker-com/basic-date-table.mjs.map +1 -1
  238. package/es/components/date-picker/src/date-picker-com/basic-date-table.vue.d.ts +5 -2
  239. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +5 -2
  240. package/es/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +5 -2
  241. package/es/components/date-picker/src/panel-utils.d.ts +10 -4
  242. package/es/components/descriptions/index.d.ts +82 -54
  243. package/es/components/descriptions/index.mjs +2 -1
  244. package/es/components/descriptions/index.mjs.map +1 -1
  245. package/es/components/descriptions/src/description.d.ts +15 -0
  246. package/es/components/descriptions/src/description.mjs +32 -0
  247. package/es/components/descriptions/src/description.mjs.map +1 -0
  248. package/es/components/descriptions/src/description.vue.d.ts +106 -0
  249. package/es/components/descriptions/src/description2.mjs +127 -0
  250. package/es/components/descriptions/src/description2.mjs.map +1 -0
  251. package/es/components/descriptions/src/descriptions-cell.mjs +4 -4
  252. package/es/components/descriptions/src/descriptions-cell.mjs.map +1 -1
  253. package/es/components/descriptions/src/descriptions-row.d.ts +3 -0
  254. package/es/components/descriptions/src/descriptions-row.mjs +7 -71
  255. package/es/components/descriptions/src/descriptions-row.mjs.map +1 -1
  256. package/es/components/descriptions/src/descriptions-row.vue.d.ts +28 -7
  257. package/es/components/descriptions/src/descriptions-row2.mjs +69 -0
  258. package/es/components/descriptions/src/descriptions-row2.mjs.map +1 -0
  259. package/es/components/descriptions/src/token.d.ts +1 -1
  260. package/es/components/descriptions/src/token.mjs +2 -2
  261. package/es/components/descriptions/src/token.mjs.map +1 -1
  262. package/es/components/dialog/src/use-dialog.mjs.map +1 -1
  263. package/es/components/index.mjs +3 -2
  264. package/es/components/index.mjs.map +1 -1
  265. package/es/components/input-number/src/input-number2.mjs +3 -3
  266. package/es/components/menu/src/menu.mjs +16 -8
  267. package/es/components/menu/src/menu.mjs.map +1 -1
  268. package/es/components/rate/src/rate2.mjs +2 -1
  269. package/es/components/rate/src/rate2.mjs.map +1 -1
  270. package/es/components/select/src/option.mjs +4 -4
  271. package/es/components/select/src/option.mjs.map +1 -1
  272. package/es/components/table/src/table-header/event-helper.mjs +5 -9
  273. package/es/components/table/src/table-header/event-helper.mjs.map +1 -1
  274. package/es/components/table/src/util.d.ts +1 -1
  275. package/es/components/table/src/util.mjs +2 -8
  276. package/es/components/table/src/util.mjs.map +1 -1
  277. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.mjs +3 -3
  278. package/es/components/timeline/index.mjs +2 -2
  279. package/es/components/timeline/src/timeline-item.mjs +43 -70
  280. package/es/components/timeline/src/timeline-item.mjs.map +1 -1
  281. package/es/components/timeline/src/timeline-item2.mjs +70 -43
  282. package/es/components/timeline/src/timeline-item2.mjs.map +1 -1
  283. package/es/components/upload/src/use-handlers.mjs +1 -1
  284. package/es/components/upload/src/use-handlers.mjs.map +1 -1
  285. package/es/directives/repeat-click/index.d.ts +2 -2
  286. package/es/directives/repeat-click/index.mjs +13 -13
  287. package/es/directives/repeat-click/index.mjs.map +1 -1
  288. package/es/index.mjs +3 -2
  289. package/es/index.mjs.map +1 -1
  290. package/es/version.d.ts +1 -1
  291. package/es/version.mjs +1 -1
  292. package/es/version.mjs.map +1 -1
  293. package/lib/components/avatar/index.js +2 -2
  294. package/lib/components/avatar/src/avatar.js +67 -33
  295. package/lib/components/avatar/src/avatar.js.map +1 -1
  296. package/lib/components/avatar/src/avatar2.js +33 -67
  297. package/lib/components/avatar/src/avatar2.js.map +1 -1
  298. package/lib/components/date-picker/src/date-picker-com/basic-date-table.js +21 -8
  299. package/lib/components/date-picker/src/date-picker-com/basic-date-table.js.map +1 -1
  300. package/lib/components/date-picker/src/date-picker-com/basic-date-table.vue.d.ts +5 -2
  301. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +5 -2
  302. package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +5 -2
  303. package/lib/components/date-picker/src/panel-utils.d.ts +10 -4
  304. package/lib/components/descriptions/index.d.ts +82 -54
  305. package/lib/components/descriptions/index.js +4 -2
  306. package/lib/components/descriptions/index.js.map +1 -1
  307. package/lib/components/descriptions/src/description.d.ts +15 -0
  308. package/lib/components/descriptions/src/description.js +36 -0
  309. package/lib/components/descriptions/src/description.js.map +1 -0
  310. package/lib/components/descriptions/src/description.vue.d.ts +106 -0
  311. package/lib/components/descriptions/src/description2.js +131 -0
  312. package/lib/components/descriptions/src/description2.js.map +1 -0
  313. package/lib/components/descriptions/src/descriptions-cell.js +3 -3
  314. package/lib/components/descriptions/src/descriptions-cell.js.map +1 -1
  315. package/lib/components/descriptions/src/descriptions-row.d.ts +3 -0
  316. package/lib/components/descriptions/src/descriptions-row.js +7 -71
  317. package/lib/components/descriptions/src/descriptions-row.js.map +1 -1
  318. package/lib/components/descriptions/src/descriptions-row.vue.d.ts +28 -7
  319. package/lib/components/descriptions/src/descriptions-row2.js +73 -0
  320. package/lib/components/descriptions/src/descriptions-row2.js.map +1 -0
  321. package/lib/components/descriptions/src/token.d.ts +1 -1
  322. package/lib/components/descriptions/src/token.js +2 -2
  323. package/lib/components/descriptions/src/token.js.map +1 -1
  324. package/lib/components/dialog/src/use-dialog.js.map +1 -1
  325. package/lib/components/index.js +4 -2
  326. package/lib/components/index.js.map +1 -1
  327. package/lib/components/menu/src/menu.js +17 -9
  328. package/lib/components/menu/src/menu.js.map +1 -1
  329. package/lib/components/rate/src/rate2.js +2 -1
  330. package/lib/components/rate/src/rate2.js.map +1 -1
  331. package/lib/components/select/src/option.js +4 -4
  332. package/lib/components/select/src/option.js.map +1 -1
  333. package/lib/components/table/src/table-header/event-helper.js +5 -9
  334. package/lib/components/table/src/table-header/event-helper.js.map +1 -1
  335. package/lib/components/table/src/util.d.ts +1 -1
  336. package/lib/components/table/src/util.js +2 -8
  337. package/lib/components/table/src/util.js.map +1 -1
  338. package/lib/components/timeline/index.js +2 -2
  339. package/lib/components/timeline/src/timeline-item.js +43 -70
  340. package/lib/components/timeline/src/timeline-item.js.map +1 -1
  341. package/lib/components/timeline/src/timeline-item2.js +70 -43
  342. package/lib/components/timeline/src/timeline-item2.js.map +1 -1
  343. package/lib/components/upload/src/use-handlers.js +1 -1
  344. package/lib/components/upload/src/use-handlers.js.map +1 -1
  345. package/lib/directives/repeat-click/index.d.ts +2 -2
  346. package/lib/directives/repeat-click/index.js +13 -13
  347. package/lib/directives/repeat-click/index.js.map +1 -1
  348. package/lib/index.js +4 -2
  349. package/lib/index.js.map +1 -1
  350. package/lib/version.d.ts +1 -1
  351. package/lib/version.js +1 -1
  352. package/lib/version.js.map +1 -1
  353. package/package.json +2 -2
  354. package/web-types.json +1 -1
  355. package/es/components/descriptions/src/index.mjs +0 -160
  356. package/es/components/descriptions/src/index.mjs.map +0 -1
  357. package/es/components/descriptions/src/index.vue.d.ts +0 -80
  358. package/lib/components/descriptions/src/index.js +0 -164
  359. package/lib/components/descriptions/src/index.js.map +0 -1
  360. package/lib/components/descriptions/src/index.vue.d.ts +0 -80
@@ -1 +1 @@
1
- {"version":3,"file":"use-handlers.mjs","sources":["../../../../../../packages/components/upload/src/use-handlers.ts"],"sourcesContent":["import { watch } from 'vue'\nimport { useVModel } from '@vueuse/core'\nimport { debugWarn, throwError } from '@element-plus/utils'\nimport { genFileId } from './upload'\nimport type { ShallowRef } from 'vue'\nimport type {\n UploadContentInstance,\n UploadContentProps,\n} from './upload-content'\nimport type {\n UploadFile,\n UploadFiles,\n UploadProps,\n UploadRawFile,\n UploadStatus,\n} from './upload'\n\nconst SCOPE = 'ElUpload'\n\nconst revokeObjectURL = (file: UploadFile) => {\n if (file.url?.startsWith('blob:')) {\n URL.revokeObjectURL(file.url)\n }\n}\n\nexport const useHandlers = (\n props: UploadProps,\n uploadRef: ShallowRef<UploadContentInstance | undefined>\n) => {\n const uploadFiles = useVModel(\n props as Omit<UploadProps, 'fileList'> & { fileList: UploadFiles },\n 'fileList',\n undefined,\n { passive: true }\n )\n\n const getFile = (rawFile: UploadRawFile) =>\n uploadFiles.value.find((file) => file.uid === rawFile.uid)\n\n function abort(file: UploadFile) {\n uploadRef.value?.abort(file)\n }\n\n function clearFiles(\n /** @default ['ready', 'uploading', 'success', 'fail'] */\n states: UploadStatus[] = ['ready', 'uploading', 'success', 'fail']\n ) {\n uploadFiles.value = uploadFiles.value.filter(\n (row) => !states.includes(row.status)\n )\n }\n\n const handleError: UploadContentProps['onError'] = (err, rawFile) => {\n const file = getFile(rawFile)\n if (!file) return\n\n console.error(err)\n file.status = 'fail'\n uploadFiles.value.splice(uploadFiles.value.indexOf(file), 1)\n props.onError(err, file, uploadFiles.value)\n props.onChange(file, uploadFiles.value)\n }\n\n const handleProgress: UploadContentProps['onProgress'] = (evt, rawFile) => {\n const file = getFile(rawFile)\n if (!file) return\n\n props.onProgress(evt, file, uploadFiles.value)\n file.status = 'uploading'\n file.percentage = Math.round(evt.percent)\n }\n\n const handleSuccess: UploadContentProps['onSuccess'] = (\n response,\n rawFile\n ) => {\n const file = getFile(rawFile)\n if (!file) return\n\n file.status = 'success'\n file.response = response\n props.onSuccess(response, file, uploadFiles.value)\n props.onChange(file, uploadFiles.value)\n }\n\n const handleStart: UploadContentProps['onStart'] = (file) => {\n const uploadFile: UploadFile = {\n name: file.name,\n percentage: 0,\n status: 'ready',\n size: file.size,\n raw: file,\n uid: file.uid,\n }\n if (props.listType === 'picture-card' || props.listType === 'picture') {\n try {\n uploadFile.url = URL.createObjectURL(file)\n } catch (err: unknown) {\n debugWarn(SCOPE, (err as Error).message)\n props.onError(err as Error, uploadFile, uploadFiles.value)\n }\n }\n uploadFiles.value.push(uploadFile)\n props.onChange(uploadFile, uploadFiles.value)\n }\n\n const handleRemove: UploadContentProps['onRemove'] = async (\n file\n ): Promise<void> => {\n const uploadFile = file instanceof File ? getFile(file) : file\n if (!uploadFile) throwError(SCOPE, 'file to be removed not found')\n\n const doRemove = (file: UploadFile) => {\n abort(file)\n const fileList = uploadFiles.value\n fileList.splice(fileList.indexOf(file), 1)\n props.onRemove(file, fileList)\n revokeObjectURL(file)\n }\n\n if (props.beforeRemove) {\n const before = await props.beforeRemove(uploadFile, uploadFiles.value)\n if (before !== false) doRemove(uploadFile)\n } else {\n doRemove(uploadFile)\n }\n }\n\n function submit() {\n uploadFiles.value\n .filter(({ status }) => status === 'ready')\n .forEach(({ raw }) => raw && uploadRef.value?.upload(raw))\n }\n\n watch(\n () => props.listType,\n (val) => {\n if (val !== 'picture-card' && val !== 'picture') {\n return\n }\n\n uploadFiles.value = uploadFiles.value.map((file) => {\n const { raw, url } = file\n if (!url && raw) {\n try {\n file.url = URL.createObjectURL(raw)\n } catch (err: unknown) {\n props.onError(err as Error, file, uploadFiles.value)\n }\n }\n return file\n })\n }\n )\n\n watch(\n uploadFiles,\n (files) => {\n for (const file of files) {\n file.uid ||= genFileId()\n file.status ||= 'success'\n }\n },\n { immediate: true, deep: true }\n )\n\n return {\n /** @description two-way binding ref from props `fileList` */\n uploadFiles,\n abort,\n clearFiles,\n handleError,\n handleProgress,\n handleStart,\n handleSuccess,\n handleRemove,\n submit,\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-handlers.mjs","sources":["../../../../../../packages/components/upload/src/use-handlers.ts"],"sourcesContent":["import { watch } from 'vue'\nimport { useVModel } from '@vueuse/core'\nimport { debugWarn, throwError } from '@element-plus/utils'\nimport { genFileId } from './upload'\nimport type { ShallowRef } from 'vue'\nimport type {\n UploadContentInstance,\n UploadContentProps,\n} from './upload-content'\nimport type {\n UploadFile,\n UploadFiles,\n UploadProps,\n UploadRawFile,\n UploadStatus,\n} from './upload'\n\nconst SCOPE = 'ElUpload'\n\nconst revokeObjectURL = (file: UploadFile) => {\n if (file.url?.startsWith('blob:')) {\n URL.revokeObjectURL(file.url)\n }\n}\n\nexport const useHandlers = (\n props: UploadProps,\n uploadRef: ShallowRef<UploadContentInstance | undefined>\n) => {\n const uploadFiles = useVModel(\n props as Omit<UploadProps, 'fileList'> & { fileList: UploadFiles },\n 'fileList',\n undefined,\n { passive: true }\n )\n\n const getFile = (rawFile: UploadRawFile) =>\n uploadFiles.value.find((file) => file.uid === rawFile.uid)\n\n function abort(file: UploadFile) {\n uploadRef.value?.abort(file)\n }\n\n function clearFiles(\n /** @default ['ready', 'uploading', 'success', 'fail'] */\n states: UploadStatus[] = ['ready', 'uploading', 'success', 'fail']\n ) {\n uploadFiles.value = uploadFiles.value.filter(\n (row) => !states.includes(row.status)\n )\n }\n\n const handleError: UploadContentProps['onError'] = (err, rawFile) => {\n const file = getFile(rawFile)\n if (!file) return\n\n console.error(err)\n file.status = 'fail'\n uploadFiles.value.splice(uploadFiles.value.indexOf(file), 1)\n props.onError(err, file, uploadFiles.value)\n props.onChange(file, uploadFiles.value)\n }\n\n const handleProgress: UploadContentProps['onProgress'] = (evt, rawFile) => {\n const file = getFile(rawFile)\n if (!file) return\n\n props.onProgress(evt, file, uploadFiles.value)\n file.status = 'uploading'\n file.percentage = Math.round(evt.percent)\n }\n\n const handleSuccess: UploadContentProps['onSuccess'] = (\n response,\n rawFile\n ) => {\n const file = getFile(rawFile)\n if (!file) return\n\n file.status = 'success'\n file.response = response\n props.onSuccess(response, file, uploadFiles.value)\n props.onChange(file, uploadFiles.value)\n }\n\n const handleStart: UploadContentProps['onStart'] = (file) => {\n const uploadFile: UploadFile = {\n name: file.name,\n percentage: 0,\n status: 'ready',\n size: file.size,\n raw: file,\n uid: file.uid,\n }\n if (props.listType === 'picture-card' || props.listType === 'picture') {\n try {\n uploadFile.url = URL.createObjectURL(file)\n } catch (err: unknown) {\n debugWarn(SCOPE, (err as Error).message)\n props.onError(err as Error, uploadFile, uploadFiles.value)\n }\n }\n uploadFiles.value = [...uploadFiles.value, uploadFile]\n props.onChange(uploadFile, uploadFiles.value)\n }\n\n const handleRemove: UploadContentProps['onRemove'] = async (\n file\n ): Promise<void> => {\n const uploadFile = file instanceof File ? getFile(file) : file\n if (!uploadFile) throwError(SCOPE, 'file to be removed not found')\n\n const doRemove = (file: UploadFile) => {\n abort(file)\n const fileList = uploadFiles.value\n fileList.splice(fileList.indexOf(file), 1)\n props.onRemove(file, fileList)\n revokeObjectURL(file)\n }\n\n if (props.beforeRemove) {\n const before = await props.beforeRemove(uploadFile, uploadFiles.value)\n if (before !== false) doRemove(uploadFile)\n } else {\n doRemove(uploadFile)\n }\n }\n\n function submit() {\n uploadFiles.value\n .filter(({ status }) => status === 'ready')\n .forEach(({ raw }) => raw && uploadRef.value?.upload(raw))\n }\n\n watch(\n () => props.listType,\n (val) => {\n if (val !== 'picture-card' && val !== 'picture') {\n return\n }\n\n uploadFiles.value = uploadFiles.value.map((file) => {\n const { raw, url } = file\n if (!url && raw) {\n try {\n file.url = URL.createObjectURL(raw)\n } catch (err: unknown) {\n props.onError(err as Error, file, uploadFiles.value)\n }\n }\n return file\n })\n }\n )\n\n watch(\n uploadFiles,\n (files) => {\n for (const file of files) {\n file.uid ||= genFileId()\n file.status ||= 'success'\n }\n },\n { immediate: true, deep: true }\n )\n\n return {\n /** @description two-way binding ref from props `fileList` */\n uploadFiles,\n abort,\n clearFiles,\n handleError,\n handleProgress,\n handleStart,\n handleSuccess,\n handleRemove,\n submit,\n }\n}\n"],"names":[],"mappings":";;;;;;AAIA,MAAM,KAAK,GAAG,UAAU,CAAC;AACzB,MAAM,eAAe,GAAG,CAAC,IAAI,KAAK;AAClC,EAAE,IAAI,EAAE,CAAC;AACT,EAAE,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;AACjE,IAAI,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClC,GAAG;AACH,CAAC,CAAC;AACU,MAAC,WAAW,GAAG,CAAC,KAAK,EAAE,SAAS,KAAK;AACjD,EAAE,MAAM,WAAW,GAAG,SAAS,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9E,EAAE,MAAM,OAAO,GAAG,CAAC,OAAO,KAAK,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;AAC1F,EAAE,SAAS,KAAK,CAAC,IAAI,EAAE;AACvB,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,CAAC,EAAE,GAAG,SAAS,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC7D,GAAG;AACH,EAAE,SAAS,UAAU,CAAC,MAAM,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE;AAC1E,IAAI,WAAW,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AACxF,GAAG;AACH,EAAE,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,OAAO,KAAK;AACxC,IAAI,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAClC,IAAI,IAAI,CAAC,IAAI;AACb,MAAM,OAAO;AACb,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACvB,IAAI,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;AACzB,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;AACjE,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;AAChD,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;AAC5C,GAAG,CAAC;AACJ,EAAE,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,OAAO,KAAK;AAC3C,IAAI,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAClC,IAAI,IAAI,CAAC,IAAI;AACb,MAAM,OAAO;AACb,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;AACnD,IAAI,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC;AAC9B,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAC9C,GAAG,CAAC;AACJ,EAAE,MAAM,aAAa,GAAG,CAAC,QAAQ,EAAE,OAAO,KAAK;AAC/C,IAAI,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAClC,IAAI,IAAI,CAAC,IAAI;AACb,MAAM,OAAO;AACb,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;AAC5B,IAAI,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;AAC7B,IAAI,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;AACvD,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;AAC5C,GAAG,CAAC;AACJ,EAAE,MAAM,WAAW,GAAG,CAAC,IAAI,KAAK;AAChC,IAAI,MAAM,UAAU,GAAG;AACvB,MAAM,IAAI,EAAE,IAAI,CAAC,IAAI;AACrB,MAAM,UAAU,EAAE,CAAC;AACnB,MAAM,MAAM,EAAE,OAAO;AACrB,MAAM,IAAI,EAAE,IAAI,CAAC,IAAI;AACrB,MAAM,GAAG,EAAE,IAAI;AACf,MAAM,GAAG,EAAE,IAAI,CAAC,GAAG;AACnB,KAAK,CAAC;AACN,IAAI,IAAI,KAAK,CAAC,QAAQ,KAAK,cAAc,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE;AAC3E,MAAM,IAAI;AACV,QAAQ,UAAU,CAAC,GAAG,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;AACnD,OAAO,CAAC,OAAO,GAAG,EAAE;AACpB,QAAQ,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;AACtC,QAAQ,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;AAC1D,OAAO;AACP,KAAK;AACL,IAAI,WAAW,CAAC,KAAK,GAAG,CAAC,GAAG,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;AAC3D,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;AAClD,GAAG,CAAC;AACJ,EAAE,MAAM,YAAY,GAAG,OAAO,IAAI,KAAK;AACvC,IAAI,MAAM,UAAU,GAAG,IAAI,YAAY,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AACnE,IAAI,IAAI,CAAC,UAAU;AACnB,MAAM,UAAU,CAAC,KAAK,EAAE,8BAA8B,CAAC,CAAC;AACxD,IAAI,MAAM,QAAQ,GAAG,CAAC,KAAK,KAAK;AAChC,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;AACnB,MAAM,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC;AACzC,MAAM,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;AAClD,MAAM,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AACtC,MAAM,eAAe,CAAC,KAAK,CAAC,CAAC;AAC7B,KAAK,CAAC;AACN,IAAI,IAAI,KAAK,CAAC,YAAY,EAAE;AAC5B,MAAM,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;AAC7E,MAAM,IAAI,MAAM,KAAK,KAAK;AAC1B,QAAQ,QAAQ,CAAC,UAAU,CAAC,CAAC;AAC7B,KAAK,MAAM;AACX,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAC;AAC3B,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,SAAS,MAAM,GAAG;AACpB,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,MAAM,KAAK,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK;AACtF,MAAM,IAAI,EAAE,CAAC;AACb,MAAM,OAAO,GAAG,KAAK,CAAC,EAAE,GAAG,SAAS,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/E,KAAK,CAAC,CAAC;AACP,GAAG;AACH,EAAE,KAAK,CAAC,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAC,GAAG,KAAK;AACvC,IAAI,IAAI,GAAG,KAAK,cAAc,IAAI,GAAG,KAAK,SAAS,EAAE;AACrD,MAAM,OAAO;AACb,KAAK;AACL,IAAI,WAAW,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK;AACxD,MAAM,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAChC,MAAM,IAAI,CAAC,GAAG,IAAI,GAAG,EAAE;AACvB,QAAQ,IAAI;AACZ,UAAU,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;AAC9C,SAAS,CAAC,OAAO,GAAG,EAAE;AACtB,UAAU,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;AACtD,SAAS;AACT,OAAO;AACP,MAAM,OAAO,IAAI,CAAC;AAClB,KAAK,CAAC,CAAC;AACP,GAAG,CAAC,CAAC;AACL,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,KAAK,KAAK;AAChC,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;AAC9B,MAAM,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG,GAAG,SAAS,EAAE,CAAC,CAAC;AAC3C,MAAM,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;AAC/C,KAAK;AACL,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;AACtC,EAAE,OAAO;AACT,IAAI,WAAW;AACf,IAAI,KAAK;AACT,IAAI,UAAU;AACd,IAAI,WAAW;AACf,IAAI,cAAc;AAClB,IAAI,WAAW;AACf,IAAI,aAAa;AACjB,IAAI,YAAY;AAChB,IAAI,MAAM;AACV,GAAG,CAAC;AACJ;;;;"}
@@ -1,3 +1,3 @@
1
1
  import type { ObjectDirective } from 'vue';
2
- declare const _default: ObjectDirective<any, any>;
3
- export default _default;
2
+ declare const RepeatClick: ObjectDirective;
3
+ export default RepeatClick;
@@ -1,28 +1,28 @@
1
- import '../../utils/index.mjs';
2
- import { on, once } from '../../utils/dom/event.mjs';
3
-
4
- var vRepeatClick = {
1
+ const RepeatClick = {
5
2
  beforeMount(el, binding) {
6
3
  let interval = null;
7
- let startTime;
4
+ let isHandlerCalled = false;
8
5
  const handler = () => binding.value && binding.value();
9
6
  const clear = () => {
10
- if (Date.now() - startTime < 100) {
11
- handler();
12
- }
13
7
  clearInterval(interval);
14
8
  interval = null;
9
+ if (!isHandlerCalled) {
10
+ handler();
11
+ }
12
+ isHandlerCalled = false;
15
13
  };
16
- on(el, "mousedown", (e) => {
14
+ el.addEventListener("mousedown", (e) => {
17
15
  if (e.button !== 0)
18
16
  return;
19
- startTime = Date.now();
20
- once(document, "mouseup", clear);
17
+ document.addEventListener("mouseup", clear, { once: true });
21
18
  clearInterval(interval);
22
- interval = setInterval(handler, 100);
19
+ interval = setInterval(() => {
20
+ isHandlerCalled = true;
21
+ handler();
22
+ }, 100);
23
23
  });
24
24
  }
25
25
  };
26
26
 
27
- export { vRepeatClick as default };
27
+ export { RepeatClick as default };
28
28
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/directives/repeat-click/index.ts"],"sourcesContent":["// @ts-nocheck\nimport { on, once } from '@element-plus/utils'\n\nimport type { DirectiveBinding, ObjectDirective } from 'vue'\n\nexport default {\n beforeMount(el: HTMLElement, binding: DirectiveBinding) {\n let interval = null\n let startTime: number\n const handler = () => binding.value && binding.value()\n const clear = () => {\n if (Date.now() - startTime < 100) {\n handler()\n }\n clearInterval(interval)\n interval = null\n }\n\n on(el, 'mousedown', (e: MouseEvent) => {\n if ((e as any).button !== 0) return\n startTime = Date.now()\n once(document as any, 'mouseup', clear)\n clearInterval(interval)\n interval = setInterval(handler, 100)\n })\n },\n} as ObjectDirective\n"],"names":[],"mappings":";;;AACA,mBAAe;AACf,EAAE,WAAW,CAAC,EAAE,EAAE,OAAO,EAAE;AAC3B,IAAI,IAAI,QAAQ,GAAG,IAAI,CAAC;AACxB,IAAI,IAAI,SAAS,CAAC;AAClB,IAAI,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;AAC3D,IAAI,MAAM,KAAK,GAAG,MAAM;AACxB,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,GAAG,EAAE;AACxC,QAAQ,OAAO,EAAE,CAAC;AAClB,OAAO;AACP,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;AAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC;AACtB,KAAK,CAAC;AACN,IAAI,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,KAAK;AAC/B,MAAM,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;AACxB,QAAQ,OAAO;AACf,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;AAC7B,MAAM,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;AACvC,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;AAC9B,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AAC3C,KAAK,CAAC,CAAC;AACP,GAAG;AACH,CAAC;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/directives/repeat-click/index.ts"],"sourcesContent":["import type { DirectiveBinding, ObjectDirective } from 'vue'\n\nconst RepeatClick: ObjectDirective = {\n beforeMount(el: HTMLElement, binding: DirectiveBinding) {\n let interval: ReturnType<typeof setInterval> | null = null\n let isHandlerCalled = false\n\n const handler = () => binding.value && binding.value()\n\n const clear = () => {\n clearInterval(interval!)\n interval = null\n\n if (!isHandlerCalled) {\n handler()\n }\n isHandlerCalled = false\n }\n\n el.addEventListener('mousedown', (e: MouseEvent) => {\n if (e.button !== 0) return\n\n document.addEventListener('mouseup', clear, { once: true })\n\n clearInterval(interval!)\n interval = setInterval(() => {\n isHandlerCalled = true\n handler()\n }, 100)\n })\n },\n}\n\nexport default RepeatClick\n"],"names":[],"mappings":"AAAK,MAAC,WAAW,GAAG;AACpB,EAAE,WAAW,CAAC,EAAE,EAAE,OAAO,EAAE;AAC3B,IAAI,IAAI,QAAQ,GAAG,IAAI,CAAC;AACxB,IAAI,IAAI,eAAe,GAAG,KAAK,CAAC;AAChC,IAAI,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;AAC3D,IAAI,MAAM,KAAK,GAAG,MAAM;AACxB,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;AAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC;AACtB,MAAM,IAAI,CAAC,eAAe,EAAE;AAC5B,QAAQ,OAAO,EAAE,CAAC;AAClB,OAAO;AACP,MAAM,eAAe,GAAG,KAAK,CAAC;AAC9B,KAAK,CAAC;AACN,IAAI,EAAE,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,CAAC,KAAK;AAC5C,MAAM,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;AACxB,QAAQ,OAAO;AACf,MAAM,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;AAClE,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;AAC9B,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM;AACnC,QAAQ,eAAe,GAAG,IAAI,CAAC;AAC/B,QAAQ,OAAO,EAAE,CAAC;AAClB,OAAO,EAAE,GAAG,CAAC,CAAC;AACd,KAAK,CAAC,CAAC;AACP,GAAG;AACH;;;;"}
package/es/index.mjs CHANGED
@@ -13,7 +13,7 @@ export { alertEffects, alertEmits, alertProps } from './components/alert/src/ale
13
13
  export { ElAlert } from './components/alert/index.mjs';
14
14
  export { autocompleteEmits, autocompleteProps } from './components/autocomplete/src/autocomplete.mjs';
15
15
  export { ElAutocomplete } from './components/autocomplete/index.mjs';
16
- export { avatarEmits, avatarProps } from './components/avatar/src/avatar.mjs';
16
+ export { avatarEmits, avatarProps } from './components/avatar/src/avatar2.mjs';
17
17
  export { ElAvatar } from './components/avatar/index.mjs';
18
18
  export { backtopEmits, backtopProps } from './components/backtop/src/backtop.mjs';
19
19
  export { ElBacktop } from './components/backtop/index.mjs';
@@ -50,6 +50,7 @@ export { configProviderProps, messageConfig } from './components/config-provider
50
50
  export { ElConfigProvider } from './components/config-provider/index.mjs';
51
51
  export { ElAside, ElContainer, ElFooter, ElHeader, ElMain } from './components/container/index.mjs';
52
52
  export { ElDatePicker } from './components/date-picker/index.mjs';
53
+ export { descriptionProps } from './components/descriptions/src/description.mjs';
53
54
  export { ElDescriptions, ElDescriptionsItem } from './components/descriptions/index.mjs';
54
55
  export { useDialog } from './components/dialog/src/use-dialog.mjs';
55
56
  export { dialogEmits, dialogProps } from './components/dialog/src/dialog.mjs';
@@ -154,7 +155,7 @@ export { default as CommonPicker } from './components/time-picker/src/common/pic
154
155
  export { default as TimePickPanel } from './components/time-picker/src/time-picker-com/panel-time-pick.mjs';
155
156
  export { ElTimePicker } from './components/time-picker/index.mjs';
156
157
  export { ElTimeSelect } from './components/time-select/index.mjs';
157
- export { timelineItemProps } from './components/timeline/src/timeline-item2.mjs';
158
+ export { timelineItemProps } from './components/timeline/src/timeline-item.mjs';
158
159
  export { ElTimeline, ElTimelineItem } from './components/timeline/index.mjs';
159
160
  export { useTooltipContentProps, useTooltipProps, useTooltipTriggerProps } from './components/tooltip/src/tooltip.mjs';
160
161
  export { TOOLTIP_INJECTION_KEY } from './components/tooltip/src/tokens.mjs';
package/es/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../packages/element-plus/index.ts"],"sourcesContent":["import installer from './defaults'\nexport * from '@element-plus/components'\nexport * from '@element-plus/constants'\nexport * from '@element-plus/directives'\nexport * from '@element-plus/hooks'\nexport * from '@element-plus/tokens'\nexport * from './make-installer'\n\nexport const install = installer.install\nexport const version = installer.version\nexport default installer\n\nexport { default as dayjs } from 'dayjs'\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOY,MAAC,OAAO,GAAG,SAAS,CAAC,QAAQ;AAC7B,MAAC,OAAO,GAAG,SAAS,CAAC;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../packages/element-plus/index.ts"],"sourcesContent":["import installer from './defaults'\nexport * from '@element-plus/components'\nexport * from '@element-plus/constants'\nexport * from '@element-plus/directives'\nexport * from '@element-plus/hooks'\nexport * from '@element-plus/tokens'\nexport * from './make-installer'\n\nexport const install = installer.install\nexport const version = installer.version\nexport default installer\n\nexport { default as dayjs } from 'dayjs'\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOY,MAAC,OAAO,GAAG,SAAS,CAAC,QAAQ;AAC7B,MAAC,OAAO,GAAG,SAAS,CAAC;;;;"}
package/es/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "0.0.20220718";
1
+ export declare const version = "0.0.20220721";
package/es/version.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const version = "0.0.20220718";
1
+ const version = "0.0.20220721";
2
2
 
3
3
  export { version };
4
4
  //# sourceMappingURL=version.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20220718'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
1
+ {"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20220721'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
@@ -3,8 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  require('../../utils/index.js');
6
- var avatar$1 = require('./src/avatar2.js');
7
- var avatar = require('./src/avatar.js');
6
+ var avatar$1 = require('./src/avatar.js');
7
+ var avatar = require('./src/avatar2.js');
8
8
  var install = require('../../utils/vue/install.js');
9
9
 
10
10
  const ElAvatar = install.withInstall(avatar$1["default"]);
@@ -2,43 +2,77 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ var vue = require('vue');
6
+ var index$1 = require('../../icon/index.js');
7
+ require('../../../hooks/index.js');
5
8
  require('../../../utils/index.js');
6
- require('../../../constants/index.js');
7
- var runtime = require('../../../utils/vue/props/runtime.js');
8
- var size = require('../../../constants/size.js');
9
+ var avatar = require('./avatar2.js');
10
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
11
+ var index = require('../../../hooks/use-namespace/index.js');
12
+ var shared = require('@vue/shared');
9
13
  var core = require('@vueuse/core');
10
- var icon = require('../../../utils/vue/icon.js');
14
+ var style = require('../../../utils/dom/style.js');
11
15
 
12
- const avatarProps = runtime.buildProps({
13
- size: {
14
- type: [Number, String],
15
- values: size.componentSizes,
16
- default: "",
17
- validator: (val) => core.isNumber(val)
18
- },
19
- shape: {
20
- type: String,
21
- values: ["circle", "square"],
22
- default: "circle"
23
- },
24
- icon: {
25
- type: icon.iconPropType
26
- },
27
- src: {
28
- type: String,
29
- default: ""
30
- },
31
- alt: String,
32
- srcSet: String,
33
- fit: {
34
- type: runtime.definePropType(String),
35
- default: "cover"
16
+ const _hoisted_1 = ["src", "alt", "srcset"];
17
+ const __default__ = {
18
+ name: "ElAvatar"
19
+ };
20
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
21
+ ...__default__,
22
+ props: avatar.avatarProps,
23
+ emits: avatar.avatarEmits,
24
+ setup(__props, { emit }) {
25
+ const props = __props;
26
+ const ns = index.useNamespace("avatar");
27
+ const hasLoadError = vue.ref(false);
28
+ const avatarClass = vue.computed(() => {
29
+ const { size, icon, shape } = props;
30
+ const classList = [ns.b()];
31
+ if (shared.isString(size))
32
+ classList.push(ns.m(size));
33
+ if (icon)
34
+ classList.push(ns.m("icon"));
35
+ if (shape)
36
+ classList.push(ns.m(shape));
37
+ return classList;
38
+ });
39
+ const sizeStyle = vue.computed(() => {
40
+ const { size } = props;
41
+ return core.isNumber(size) ? ns.cssVarBlock({
42
+ size: style.addUnit(size) || ""
43
+ }) : void 0;
44
+ });
45
+ const fitStyle = vue.computed(() => ({
46
+ objectFit: props.fit
47
+ }));
48
+ vue.watch(() => props.src, () => hasLoadError.value = false);
49
+ function handleError(e) {
50
+ hasLoadError.value = true;
51
+ emit("error", e);
52
+ }
53
+ return (_ctx, _cache) => {
54
+ return vue.openBlock(), vue.createElementBlock("span", {
55
+ class: vue.normalizeClass(vue.unref(avatarClass)),
56
+ style: vue.normalizeStyle(vue.unref(sizeStyle))
57
+ }, [
58
+ (_ctx.src || _ctx.srcSet) && !hasLoadError.value ? (vue.openBlock(), vue.createElementBlock("img", {
59
+ key: 0,
60
+ src: _ctx.src,
61
+ alt: _ctx.alt,
62
+ srcset: _ctx.srcSet,
63
+ style: vue.normalizeStyle(vue.unref(fitStyle)),
64
+ onError: handleError
65
+ }, null, 44, _hoisted_1)) : _ctx.icon ? (vue.openBlock(), vue.createBlock(vue.unref(index$1.ElIcon), { key: 1 }, {
66
+ default: vue.withCtx(() => [
67
+ (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.icon)))
68
+ ]),
69
+ _: 1
70
+ })) : vue.renderSlot(_ctx.$slots, "default", { key: 2 })
71
+ ], 6);
72
+ };
36
73
  }
37
74
  });
38
- const avatarEmits = {
39
- error: (evt) => evt instanceof Event
40
- };
75
+ var Avatar = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "/home/runner/work/element-plus/element-plus/packages/components/avatar/src/avatar.vue"]]);
41
76
 
42
- exports.avatarEmits = avatarEmits;
43
- exports.avatarProps = avatarProps;
77
+ exports["default"] = Avatar;
44
78
  //# sourceMappingURL=avatar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"avatar.js","sources":["../../../../../../packages/components/avatar/src/avatar.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n iconPropType,\n isNumber,\n} from '@element-plus/utils'\nimport { componentSizes } from '@element-plus/constants'\nimport type { ExtractPropTypes } from 'vue'\nimport type { ObjectFitProperty } from 'csstype'\nimport type Avatar from './avatar.vue'\n\nexport const avatarProps = buildProps({\n size: {\n type: [Number, String],\n values: componentSizes,\n default: '',\n validator: (val: unknown): val is number => isNumber(val),\n },\n shape: {\n type: String,\n values: ['circle', 'square'],\n default: 'circle',\n },\n icon: {\n type: iconPropType,\n },\n src: {\n type: String,\n default: '',\n },\n alt: String,\n srcSet: String,\n fit: {\n type: definePropType<ObjectFitProperty>(String),\n default: 'cover',\n },\n} as const)\nexport type AvatarProps = ExtractPropTypes<typeof avatarProps>\n\nexport const avatarEmits = {\n error: (evt: Event) => evt instanceof Event,\n}\nexport type AvatarEmits = typeof avatarEmits\n\nexport type AvatarInstance = InstanceType<typeof Avatar>\n"],"names":["buildProps","componentSizes","isNumber","iconPropType","definePropType"],"mappings":";;;;;;;;;;;AAOY,MAAC,WAAW,GAAGA,kBAAU,CAAC;AACtC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,MAAM,EAAEC,mBAAc;AAC1B,IAAI,OAAO,EAAE,EAAE;AACf,IAAI,SAAS,EAAE,CAAC,GAAG,KAAKC,aAAQ,CAAC,GAAG,CAAC;AACrC,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;AAChC,IAAI,OAAO,EAAE,QAAQ;AACrB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAEC,iBAAY;AACtB,GAAG;AACH,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,GAAG,EAAE,MAAM;AACb,EAAE,MAAM,EAAE,MAAM;AAChB,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAEC,sBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,WAAW,GAAG;AAC3B,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,KAAK;AACtC;;;;;"}
1
+ {"version":3,"file":"avatar.js","sources":["../../../../../../packages/components/avatar/src/avatar.vue"],"sourcesContent":["<template>\n <span :class=\"avatarClass\" :style=\"sizeStyle\">\n <img\n v-if=\"(src || srcSet) && !hasLoadError\"\n :src=\"src\"\n :alt=\"alt\"\n :srcset=\"srcSet\"\n :style=\"fitStyle\"\n @error=\"handleError\"\n />\n <el-icon v-else-if=\"icon\">\n <component :is=\"icon\" />\n </el-icon>\n <slot v-else />\n </span>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, ref, watch } from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { useNamespace } from '@element-plus/hooks'\nimport { addUnit, isNumber, isString } from '@element-plus/utils'\nimport { avatarEmits, avatarProps } from './avatar'\n\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'ElAvatar',\n})\n\nconst props = defineProps(avatarProps)\nconst emit = defineEmits(avatarEmits)\n\nconst ns = useNamespace('avatar')\n\nconst hasLoadError = ref(false)\n\nconst avatarClass = computed(() => {\n const { size, icon, shape } = props\n const classList = [ns.b()]\n if (isString(size)) classList.push(ns.m(size))\n if (icon) classList.push(ns.m('icon'))\n if (shape) classList.push(ns.m(shape))\n return classList\n})\n\nconst sizeStyle = computed(() => {\n const { size } = props\n return isNumber(size)\n ? (ns.cssVarBlock({\n size: addUnit(size) || '',\n }) as CSSProperties)\n : undefined\n})\n\nconst fitStyle = computed<CSSProperties>(() => ({\n objectFit: props.fit,\n}))\n\n// need reset hasLoadError to false if src changed\nwatch(\n () => props.src,\n () => (hasLoadError.value = false)\n)\n\nfunction handleError(e: Event) {\n hasLoadError.value = true\n emit('error', e)\n}\n</script>\n"],"names":["useNamespace","ref","computed","isString","isNumber","addUnit","watch"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAiCA,IAAA,MAAA,EAAA,GAAAA,mBAAA,QAAA,CAAA,CAAA;AAEA,IAAA,MAAA,YAAA,GAAAC,QAAA,KAAA,CAAA,CAAA;AAEA,IAAA,MAAA,WAAA,GAAAC,aAAA,MAAA;AACA,MAAA,MAAA,EAAA,IAAA,EAAA,IAAA,EAAA,KAAA,EAAA,GAAA,KAAA,CAAA;AACA,MAAA,MAAA,SAAA,GAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA;AACA,MAAA,IAAAC,gBAAA,IAAA,CAAA;AAAA,QAAA,SAAA,CAAA,IAAA,CAAA,EAAA,CAAA,CAAA,CAAA,IAAA,CAAA,CAAA,CAAA;AACA,MAAA,IAAA,IAAA;AAAA,QAAA,SAAA,CAAA,IAAA,CAAA,EAAA,CAAA,CAAA,CAAA,MAAA,CAAA,CAAA,CAAA;AACA,MAAA,IAAA,KAAA;AAAA,QAAA,SAAA,CAAA,IAAA,CAAA,EAAA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAA,CAAA;AACA,MAAA,OAAA,SAAA,CAAA;AAAA,KACA,CAAA,CAAA;AAEA,IAAA,MAAA,SAAA,GAAAD,aAAA,MAAA;AACA,MAAA,MAAA,EAAA,IAAA,EAAA,GAAA,KAAA,CAAA;AACA,MAAA,OAAAE,aAAA,CAAA,IAAA,CACA,GAAA,EAAA,CAAA,WAAA,CAAA;AAAA,QACA,IAAA,EAAAC,aAAA,CAAA,IAAA,CAAA,IAAA,EAAA;AAAA,OACA,CACA,GAAA,KAAA,CAAA,CAAA;AAAA,KACA,CAAA,CAAA;AAEA,IAAA,MAAA,QAAA,GAAAH,aAAA,OAAA;AAAA,MACA,WAAA,KAAA,CAAA,GAAA;AAAA,KACA,CAAA,CAAA,CAAA;AAGA,IAAAI,SAAA,CACA,MAAA,KAAA,CAAA,GAAA,EACA,MAAA,YAAA,CAAA,QAAA,KACA,CAAA,CAAA;AAEA,IAAA,SAAA,WAAA,CAAA,CAAA,EAAA;AACA,MAAA,YAAA,CAAA,KAAA,GAAA,IAAA,CAAA;AACA,MAAA,IAAA,CAAA,SAAA,CAAA,CAAA,CAAA;AAAA,KACA;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -2,77 +2,43 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- var index$1 = require('../../icon/index.js');
7
- require('../../../hooks/index.js');
8
5
  require('../../../utils/index.js');
9
- var avatar = require('./avatar.js');
10
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
11
- var index = require('../../../hooks/use-namespace/index.js');
12
- var shared = require('@vue/shared');
6
+ require('../../../constants/index.js');
7
+ var runtime = require('../../../utils/vue/props/runtime.js');
8
+ var size = require('../../../constants/size.js');
13
9
  var core = require('@vueuse/core');
14
- var style = require('../../../utils/dom/style.js');
10
+ var icon = require('../../../utils/vue/icon.js');
15
11
 
16
- const _hoisted_1 = ["src", "alt", "srcset"];
17
- const __default__ = {
18
- name: "ElAvatar"
19
- };
20
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
21
- ...__default__,
22
- props: avatar.avatarProps,
23
- emits: avatar.avatarEmits,
24
- setup(__props, { emit }) {
25
- const props = __props;
26
- const ns = index.useNamespace("avatar");
27
- const hasLoadError = vue.ref(false);
28
- const avatarClass = vue.computed(() => {
29
- const { size, icon, shape } = props;
30
- const classList = [ns.b()];
31
- if (shared.isString(size))
32
- classList.push(ns.m(size));
33
- if (icon)
34
- classList.push(ns.m("icon"));
35
- if (shape)
36
- classList.push(ns.m(shape));
37
- return classList;
38
- });
39
- const sizeStyle = vue.computed(() => {
40
- const { size } = props;
41
- return core.isNumber(size) ? ns.cssVarBlock({
42
- size: style.addUnit(size) || ""
43
- }) : void 0;
44
- });
45
- const fitStyle = vue.computed(() => ({
46
- objectFit: props.fit
47
- }));
48
- vue.watch(() => props.src, () => hasLoadError.value = false);
49
- function handleError(e) {
50
- hasLoadError.value = true;
51
- emit("error", e);
52
- }
53
- return (_ctx, _cache) => {
54
- return vue.openBlock(), vue.createElementBlock("span", {
55
- class: vue.normalizeClass(vue.unref(avatarClass)),
56
- style: vue.normalizeStyle(vue.unref(sizeStyle))
57
- }, [
58
- (_ctx.src || _ctx.srcSet) && !hasLoadError.value ? (vue.openBlock(), vue.createElementBlock("img", {
59
- key: 0,
60
- src: _ctx.src,
61
- alt: _ctx.alt,
62
- srcset: _ctx.srcSet,
63
- style: vue.normalizeStyle(vue.unref(fitStyle)),
64
- onError: handleError
65
- }, null, 44, _hoisted_1)) : _ctx.icon ? (vue.openBlock(), vue.createBlock(vue.unref(index$1.ElIcon), { key: 1 }, {
66
- default: vue.withCtx(() => [
67
- (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.icon)))
68
- ]),
69
- _: 1
70
- })) : vue.renderSlot(_ctx.$slots, "default", { key: 2 })
71
- ], 6);
72
- };
12
+ const avatarProps = runtime.buildProps({
13
+ size: {
14
+ type: [Number, String],
15
+ values: size.componentSizes,
16
+ default: "",
17
+ validator: (val) => core.isNumber(val)
18
+ },
19
+ shape: {
20
+ type: String,
21
+ values: ["circle", "square"],
22
+ default: "circle"
23
+ },
24
+ icon: {
25
+ type: icon.iconPropType
26
+ },
27
+ src: {
28
+ type: String,
29
+ default: ""
30
+ },
31
+ alt: String,
32
+ srcSet: String,
33
+ fit: {
34
+ type: runtime.definePropType(String),
35
+ default: "cover"
73
36
  }
74
37
  });
75
- var Avatar = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "/home/runner/work/element-plus/element-plus/packages/components/avatar/src/avatar.vue"]]);
38
+ const avatarEmits = {
39
+ error: (evt) => evt instanceof Event
40
+ };
76
41
 
77
- exports["default"] = Avatar;
42
+ exports.avatarEmits = avatarEmits;
43
+ exports.avatarProps = avatarProps;
78
44
  //# sourceMappingURL=avatar2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"avatar2.js","sources":["../../../../../../packages/components/avatar/src/avatar.vue"],"sourcesContent":["<template>\n <span :class=\"avatarClass\" :style=\"sizeStyle\">\n <img\n v-if=\"(src || srcSet) && !hasLoadError\"\n :src=\"src\"\n :alt=\"alt\"\n :srcset=\"srcSet\"\n :style=\"fitStyle\"\n @error=\"handleError\"\n />\n <el-icon v-else-if=\"icon\">\n <component :is=\"icon\" />\n </el-icon>\n <slot v-else />\n </span>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, ref, watch } from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { useNamespace } from '@element-plus/hooks'\nimport { addUnit, isNumber, isString } from '@element-plus/utils'\nimport { avatarEmits, avatarProps } from './avatar'\n\nimport type { CSSProperties } from 'vue'\n\ndefineOptions({\n name: 'ElAvatar',\n})\n\nconst props = defineProps(avatarProps)\nconst emit = defineEmits(avatarEmits)\n\nconst ns = useNamespace('avatar')\n\nconst hasLoadError = ref(false)\n\nconst avatarClass = computed(() => {\n const { size, icon, shape } = props\n const classList = [ns.b()]\n if (isString(size)) classList.push(ns.m(size))\n if (icon) classList.push(ns.m('icon'))\n if (shape) classList.push(ns.m(shape))\n return classList\n})\n\nconst sizeStyle = computed(() => {\n const { size } = props\n return isNumber(size)\n ? (ns.cssVarBlock({\n size: addUnit(size) || '',\n }) as CSSProperties)\n : undefined\n})\n\nconst fitStyle = computed<CSSProperties>(() => ({\n objectFit: props.fit,\n}))\n\n// need reset hasLoadError to false if src changed\nwatch(\n () => props.src,\n () => (hasLoadError.value = false)\n)\n\nfunction handleError(e: Event) {\n hasLoadError.value = true\n emit('error', e)\n}\n</script>\n"],"names":["useNamespace","ref","computed","isString","isNumber","addUnit","watch"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAiCA,IAAA,MAAA,EAAA,GAAAA,mBAAA,QAAA,CAAA,CAAA;AAEA,IAAA,MAAA,YAAA,GAAAC,QAAA,KAAA,CAAA,CAAA;AAEA,IAAA,MAAA,WAAA,GAAAC,aAAA,MAAA;AACA,MAAA,MAAA,EAAA,IAAA,EAAA,IAAA,EAAA,KAAA,EAAA,GAAA,KAAA,CAAA;AACA,MAAA,MAAA,SAAA,GAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA;AACA,MAAA,IAAAC,gBAAA,IAAA,CAAA;AAAA,QAAA,SAAA,CAAA,IAAA,CAAA,EAAA,CAAA,CAAA,CAAA,IAAA,CAAA,CAAA,CAAA;AACA,MAAA,IAAA,IAAA;AAAA,QAAA,SAAA,CAAA,IAAA,CAAA,EAAA,CAAA,CAAA,CAAA,MAAA,CAAA,CAAA,CAAA;AACA,MAAA,IAAA,KAAA;AAAA,QAAA,SAAA,CAAA,IAAA,CAAA,EAAA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAA,CAAA;AACA,MAAA,OAAA,SAAA,CAAA;AAAA,KACA,CAAA,CAAA;AAEA,IAAA,MAAA,SAAA,GAAAD,aAAA,MAAA;AACA,MAAA,MAAA,EAAA,IAAA,EAAA,GAAA,KAAA,CAAA;AACA,MAAA,OAAAE,aAAA,CAAA,IAAA,CACA,GAAA,EAAA,CAAA,WAAA,CAAA;AAAA,QACA,IAAA,EAAAC,aAAA,CAAA,IAAA,CAAA,IAAA,EAAA;AAAA,OACA,CACA,GAAA,KAAA,CAAA,CAAA;AAAA,KACA,CAAA,CAAA;AAEA,IAAA,MAAA,QAAA,GAAAH,aAAA,OAAA;AAAA,MACA,WAAA,KAAA,CAAA,GAAA;AAAA,KACA,CAAA,CAAA,CAAA;AAGA,IAAAI,SAAA,CACA,MAAA,KAAA,CAAA,GAAA,EACA,MAAA,YAAA,CAAA,QAAA,KACA,CAAA,CAAA;AAEA,IAAA,SAAA,WAAA,CAAA,CAAA,EAAA;AACA,MAAA,YAAA,CAAA,KAAA,GAAA,IAAA,CAAA;AACA,MAAA,IAAA,CAAA,SAAA,CAAA,CAAA,CAAA;AAAA,KACA;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"avatar2.js","sources":["../../../../../../packages/components/avatar/src/avatar.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n iconPropType,\n isNumber,\n} from '@element-plus/utils'\nimport { componentSizes } from '@element-plus/constants'\nimport type { ExtractPropTypes } from 'vue'\nimport type { ObjectFitProperty } from 'csstype'\nimport type Avatar from './avatar.vue'\n\nexport const avatarProps = buildProps({\n size: {\n type: [Number, String],\n values: componentSizes,\n default: '',\n validator: (val: unknown): val is number => isNumber(val),\n },\n shape: {\n type: String,\n values: ['circle', 'square'],\n default: 'circle',\n },\n icon: {\n type: iconPropType,\n },\n src: {\n type: String,\n default: '',\n },\n alt: String,\n srcSet: String,\n fit: {\n type: definePropType<ObjectFitProperty>(String),\n default: 'cover',\n },\n} as const)\nexport type AvatarProps = ExtractPropTypes<typeof avatarProps>\n\nexport const avatarEmits = {\n error: (evt: Event) => evt instanceof Event,\n}\nexport type AvatarEmits = typeof avatarEmits\n\nexport type AvatarInstance = InstanceType<typeof Avatar>\n"],"names":["buildProps","componentSizes","isNumber","iconPropType","definePropType"],"mappings":";;;;;;;;;;;AAOY,MAAC,WAAW,GAAGA,kBAAU,CAAC;AACtC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,MAAM,EAAEC,mBAAc;AAC1B,IAAI,OAAO,EAAE,EAAE;AACf,IAAI,SAAS,EAAE,CAAC,GAAG,KAAKC,aAAQ,CAAC,GAAG,CAAC;AACrC,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;AAChC,IAAI,OAAO,EAAE,QAAQ;AACrB,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAEC,iBAAY;AACtB,GAAG;AACH,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,GAAG,EAAE,MAAM;AACb,EAAE,MAAM,EAAE,MAAM;AAChB,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAEC,sBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,WAAW,GAAG;AAC3B,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,KAAK;AACtC;;;;;"}
@@ -38,6 +38,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
38
38
  const lastRow = vue.ref();
39
39
  const lastColumn = vue.ref();
40
40
  const tableRows = vue.ref([[], [], [], [], [], []]);
41
+ let focusWithClick = false;
41
42
  const firstDayOfWeek = props.date.$locale().weekStart || 7;
42
43
  const WEEKS_CONSTANT = props.date.locale("en").localeData().weekdaysShort().map((_) => _.toLowerCase());
43
44
  const offsetDay = vue.computed(() => {
@@ -242,13 +243,25 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
242
243
  return !hasCurrent.value && (cell == null ? void 0 : cell.text) === 1 && cell.type === "normal" || cell.isCurrent;
243
244
  };
244
245
  const handleFocus = (event) => {
245
- if (!hasCurrent.value && props.selectionMode === "date") {
246
- handlePickDate(event, true);
247
- }
246
+ if (focusWithClick || hasCurrent.value || props.selectionMode !== "date")
247
+ return;
248
+ handlePickDate(event, true);
249
+ };
250
+ const handleMouseDown = (event) => {
251
+ const target = event.target.closest("td");
252
+ if (!target)
253
+ return;
254
+ focusWithClick = true;
255
+ };
256
+ const handleMouseUp = (event) => {
257
+ const target = event.target.closest("td");
258
+ if (!target)
259
+ return;
260
+ focusWithClick = false;
248
261
  };
249
262
  const handlePickDate = (event, isKeyboardMovement = false) => {
250
263
  const target = event.target.closest("td");
251
- if (!target || target.tagName !== "TD")
264
+ if (!target)
252
265
  return;
253
266
  const row = target.parentNode.rowIndex - 1;
254
267
  const column = target.cellIndex;
@@ -313,7 +326,9 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
313
326
  cellpadding: "0",
314
327
  class: vue.normalizeClass([vue.unref(ns).b(), { "is-week-mode": _ctx.selectionMode === "week" }]),
315
328
  onClick: handlePickDate,
316
- onMousemove: handleMouseMove
329
+ onMousemove: handleMouseMove,
330
+ onMousedown: handleMouseDown,
331
+ onMouseup: handleMouseUp
317
332
  }, [
318
333
  vue.createElementVNode("tbody", {
319
334
  ref_key: "tbodyRef",
@@ -338,9 +353,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
338
353
  return vue.openBlock(), vue.createElementBlock("td", {
339
354
  key: `${rowKey}.${columnKey}`,
340
355
  ref_for: true,
341
- ref: (el) => {
342
- isSelectedCell(cell) && (currentCellRef.value = el);
343
- },
356
+ ref: (el) => isSelectedCell(cell) && (currentCellRef.value = el),
344
357
  class: vue.normalizeClass(getCellClasses(cell)),
345
358
  "aria-current": cell.isCurrent ? "date" : void 0,
346
359
  "aria-selected": cell.isCurrent,