element-plus 2.1.10 → 2.1.11

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 (709) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +404 -1684
  4. package/dist/index.full.min.js +6 -6
  5. package/dist/index.full.min.js.map +1 -1
  6. package/dist/index.full.min.mjs +10 -10
  7. package/dist/index.full.min.mjs.map +1 -1
  8. package/dist/index.full.mjs +404 -1684
  9. package/dist/locale/af.js +1 -1
  10. package/dist/locale/af.min.js +1 -1
  11. package/dist/locale/af.min.mjs +1 -1
  12. package/dist/locale/af.mjs +1 -1
  13. package/dist/locale/ar.js +1 -1
  14. package/dist/locale/ar.min.js +1 -1
  15. package/dist/locale/ar.min.mjs +1 -1
  16. package/dist/locale/ar.mjs +1 -1
  17. package/dist/locale/az.js +1 -1
  18. package/dist/locale/az.min.js +1 -1
  19. package/dist/locale/az.min.mjs +1 -1
  20. package/dist/locale/az.mjs +1 -1
  21. package/dist/locale/bg.js +1 -1
  22. package/dist/locale/bg.min.js +1 -1
  23. package/dist/locale/bg.min.mjs +1 -1
  24. package/dist/locale/bg.mjs +1 -1
  25. package/dist/locale/bn.js +1 -1
  26. package/dist/locale/bn.min.js +1 -1
  27. package/dist/locale/bn.min.mjs +1 -1
  28. package/dist/locale/bn.mjs +1 -1
  29. package/dist/locale/ca.js +1 -1
  30. package/dist/locale/ca.min.js +1 -1
  31. package/dist/locale/ca.min.mjs +1 -1
  32. package/dist/locale/ca.mjs +1 -1
  33. package/dist/locale/cs.js +1 -1
  34. package/dist/locale/cs.min.js +1 -1
  35. package/dist/locale/cs.min.mjs +1 -1
  36. package/dist/locale/cs.mjs +1 -1
  37. package/dist/locale/da.js +1 -1
  38. package/dist/locale/da.min.js +1 -1
  39. package/dist/locale/da.min.mjs +1 -1
  40. package/dist/locale/da.mjs +1 -1
  41. package/dist/locale/de.js +1 -1
  42. package/dist/locale/de.min.js +1 -1
  43. package/dist/locale/de.min.mjs +1 -1
  44. package/dist/locale/de.mjs +1 -1
  45. package/dist/locale/el.js +1 -1
  46. package/dist/locale/el.min.js +1 -1
  47. package/dist/locale/el.min.mjs +1 -1
  48. package/dist/locale/el.mjs +1 -1
  49. package/dist/locale/en.js +1 -1
  50. package/dist/locale/en.min.js +1 -1
  51. package/dist/locale/en.min.mjs +1 -1
  52. package/dist/locale/en.mjs +1 -1
  53. package/dist/locale/eo.js +1 -1
  54. package/dist/locale/eo.min.js +1 -1
  55. package/dist/locale/eo.min.mjs +1 -1
  56. package/dist/locale/eo.mjs +1 -1
  57. package/dist/locale/es.js +1 -1
  58. package/dist/locale/es.min.js +1 -1
  59. package/dist/locale/es.min.mjs +1 -1
  60. package/dist/locale/es.mjs +1 -1
  61. package/dist/locale/et.js +1 -1
  62. package/dist/locale/et.min.js +1 -1
  63. package/dist/locale/et.min.mjs +1 -1
  64. package/dist/locale/et.mjs +1 -1
  65. package/dist/locale/eu.js +1 -1
  66. package/dist/locale/eu.min.js +1 -1
  67. package/dist/locale/eu.min.mjs +1 -1
  68. package/dist/locale/eu.mjs +1 -1
  69. package/dist/locale/fa.js +1 -1
  70. package/dist/locale/fa.min.js +1 -1
  71. package/dist/locale/fa.min.mjs +1 -1
  72. package/dist/locale/fa.mjs +1 -1
  73. package/dist/locale/fi.js +1 -1
  74. package/dist/locale/fi.min.js +1 -1
  75. package/dist/locale/fi.min.mjs +1 -1
  76. package/dist/locale/fi.mjs +1 -1
  77. package/dist/locale/fr.js +1 -1
  78. package/dist/locale/fr.min.js +1 -1
  79. package/dist/locale/fr.min.mjs +1 -1
  80. package/dist/locale/fr.mjs +1 -1
  81. package/dist/locale/he.js +1 -1
  82. package/dist/locale/he.min.js +1 -1
  83. package/dist/locale/he.min.mjs +1 -1
  84. package/dist/locale/he.mjs +1 -1
  85. package/dist/locale/hr.js +1 -1
  86. package/dist/locale/hr.min.js +1 -1
  87. package/dist/locale/hr.min.mjs +1 -1
  88. package/dist/locale/hr.mjs +1 -1
  89. package/dist/locale/hu.js +1 -1
  90. package/dist/locale/hu.min.js +1 -1
  91. package/dist/locale/hu.min.mjs +1 -1
  92. package/dist/locale/hu.mjs +1 -1
  93. package/dist/locale/hy-am.js +1 -1
  94. package/dist/locale/hy-am.min.js +1 -1
  95. package/dist/locale/hy-am.min.mjs +1 -1
  96. package/dist/locale/hy-am.mjs +1 -1
  97. package/dist/locale/id.js +1 -1
  98. package/dist/locale/id.min.js +1 -1
  99. package/dist/locale/id.min.mjs +1 -1
  100. package/dist/locale/id.mjs +1 -1
  101. package/dist/locale/it.js +1 -1
  102. package/dist/locale/it.min.js +1 -1
  103. package/dist/locale/it.min.mjs +1 -1
  104. package/dist/locale/it.mjs +1 -1
  105. package/dist/locale/ja.js +1 -1
  106. package/dist/locale/ja.min.js +1 -1
  107. package/dist/locale/ja.min.mjs +1 -1
  108. package/dist/locale/ja.mjs +1 -1
  109. package/dist/locale/kk.js +1 -1
  110. package/dist/locale/kk.min.js +1 -1
  111. package/dist/locale/kk.min.mjs +1 -1
  112. package/dist/locale/kk.mjs +1 -1
  113. package/dist/locale/km.js +1 -1
  114. package/dist/locale/km.min.js +1 -1
  115. package/dist/locale/km.min.mjs +1 -1
  116. package/dist/locale/km.mjs +1 -1
  117. package/dist/locale/ko.js +1 -1
  118. package/dist/locale/ko.min.js +1 -1
  119. package/dist/locale/ko.min.mjs +1 -1
  120. package/dist/locale/ko.mjs +1 -1
  121. package/dist/locale/ku.js +1 -1
  122. package/dist/locale/ku.min.js +1 -1
  123. package/dist/locale/ku.min.mjs +1 -1
  124. package/dist/locale/ku.mjs +1 -1
  125. package/dist/locale/ky.js +1 -1
  126. package/dist/locale/ky.min.js +1 -1
  127. package/dist/locale/ky.min.mjs +1 -1
  128. package/dist/locale/ky.mjs +1 -1
  129. package/dist/locale/lt.js +1 -1
  130. package/dist/locale/lt.min.js +1 -1
  131. package/dist/locale/lt.min.mjs +1 -1
  132. package/dist/locale/lt.mjs +1 -1
  133. package/dist/locale/lv.js +1 -1
  134. package/dist/locale/lv.min.js +1 -1
  135. package/dist/locale/lv.min.mjs +1 -1
  136. package/dist/locale/lv.mjs +1 -1
  137. package/dist/locale/mg.js +1 -1
  138. package/dist/locale/mg.min.js +1 -1
  139. package/dist/locale/mg.min.mjs +1 -1
  140. package/dist/locale/mg.mjs +1 -1
  141. package/dist/locale/mn.js +1 -1
  142. package/dist/locale/mn.min.js +1 -1
  143. package/dist/locale/mn.min.mjs +1 -1
  144. package/dist/locale/mn.mjs +1 -1
  145. package/dist/locale/nb-no.js +1 -1
  146. package/dist/locale/nb-no.min.js +1 -1
  147. package/dist/locale/nb-no.min.mjs +1 -1
  148. package/dist/locale/nb-no.mjs +1 -1
  149. package/dist/locale/nl.js +1 -1
  150. package/dist/locale/nl.min.js +1 -1
  151. package/dist/locale/nl.min.mjs +1 -1
  152. package/dist/locale/nl.mjs +1 -1
  153. package/dist/locale/pa.js +1 -1
  154. package/dist/locale/pa.min.js +1 -1
  155. package/dist/locale/pa.min.mjs +1 -1
  156. package/dist/locale/pa.mjs +1 -1
  157. package/dist/locale/pl.js +1 -1
  158. package/dist/locale/pl.min.js +1 -1
  159. package/dist/locale/pl.min.mjs +1 -1
  160. package/dist/locale/pl.mjs +1 -1
  161. package/dist/locale/pt-br.js +1 -1
  162. package/dist/locale/pt-br.min.js +1 -1
  163. package/dist/locale/pt-br.min.mjs +1 -1
  164. package/dist/locale/pt-br.mjs +1 -1
  165. package/dist/locale/pt.js +1 -1
  166. package/dist/locale/pt.min.js +1 -1
  167. package/dist/locale/pt.min.mjs +1 -1
  168. package/dist/locale/pt.mjs +1 -1
  169. package/dist/locale/ro.js +1 -1
  170. package/dist/locale/ro.min.js +1 -1
  171. package/dist/locale/ro.min.mjs +1 -1
  172. package/dist/locale/ro.mjs +1 -1
  173. package/dist/locale/ru.js +1 -1
  174. package/dist/locale/ru.min.js +1 -1
  175. package/dist/locale/ru.min.mjs +1 -1
  176. package/dist/locale/ru.mjs +1 -1
  177. package/dist/locale/sk.js +1 -1
  178. package/dist/locale/sk.min.js +1 -1
  179. package/dist/locale/sk.min.mjs +1 -1
  180. package/dist/locale/sk.mjs +1 -1
  181. package/dist/locale/sl.js +1 -1
  182. package/dist/locale/sl.min.js +1 -1
  183. package/dist/locale/sl.min.mjs +1 -1
  184. package/dist/locale/sl.mjs +1 -1
  185. package/dist/locale/sr.js +1 -1
  186. package/dist/locale/sr.min.js +1 -1
  187. package/dist/locale/sr.min.mjs +1 -1
  188. package/dist/locale/sr.mjs +1 -1
  189. package/dist/locale/sv.js +1 -1
  190. package/dist/locale/sv.min.js +1 -1
  191. package/dist/locale/sv.min.mjs +1 -1
  192. package/dist/locale/sv.mjs +1 -1
  193. package/dist/locale/ta.js +1 -1
  194. package/dist/locale/ta.min.js +1 -1
  195. package/dist/locale/ta.min.mjs +1 -1
  196. package/dist/locale/ta.mjs +1 -1
  197. package/dist/locale/th.js +1 -1
  198. package/dist/locale/th.min.js +1 -1
  199. package/dist/locale/th.min.mjs +1 -1
  200. package/dist/locale/th.mjs +1 -1
  201. package/dist/locale/tk.js +1 -1
  202. package/dist/locale/tk.min.js +1 -1
  203. package/dist/locale/tk.min.mjs +1 -1
  204. package/dist/locale/tk.mjs +1 -1
  205. package/dist/locale/tr.js +1 -1
  206. package/dist/locale/tr.min.js +1 -1
  207. package/dist/locale/tr.min.mjs +1 -1
  208. package/dist/locale/tr.mjs +1 -1
  209. package/dist/locale/ug-cn.js +1 -1
  210. package/dist/locale/ug-cn.min.js +1 -1
  211. package/dist/locale/ug-cn.min.mjs +1 -1
  212. package/dist/locale/ug-cn.mjs +1 -1
  213. package/dist/locale/uk.js +1 -1
  214. package/dist/locale/uk.min.js +1 -1
  215. package/dist/locale/uk.min.mjs +1 -1
  216. package/dist/locale/uk.mjs +1 -1
  217. package/dist/locale/uz-uz.js +1 -1
  218. package/dist/locale/uz-uz.min.js +1 -1
  219. package/dist/locale/uz-uz.min.mjs +1 -1
  220. package/dist/locale/uz-uz.mjs +1 -1
  221. package/dist/locale/vi.js +1 -1
  222. package/dist/locale/vi.min.js +1 -1
  223. package/dist/locale/vi.min.mjs +1 -1
  224. package/dist/locale/vi.mjs +1 -1
  225. package/dist/locale/zh-cn.js +1 -1
  226. package/dist/locale/zh-cn.min.js +1 -1
  227. package/dist/locale/zh-cn.min.mjs +1 -1
  228. package/dist/locale/zh-cn.mjs +1 -1
  229. package/dist/locale/zh-tw.js +1 -1
  230. package/dist/locale/zh-tw.min.js +1 -1
  231. package/dist/locale/zh-tw.min.mjs +1 -1
  232. package/dist/locale/zh-tw.mjs +1 -1
  233. package/es/components/autocomplete/index.d.ts +29 -1
  234. package/es/components/autocomplete/src/autocomplete.mjs +1 -1
  235. package/es/components/autocomplete/src/autocomplete.vue.d.ts +29 -1
  236. package/es/components/avatar/src/avatar2.mjs +1 -1
  237. package/es/components/calendar/src/calendar2.mjs +1 -1
  238. package/es/components/calendar/src/calendar2.mjs.map +1 -1
  239. package/es/components/calendar/src/date-table2.mjs +3 -2
  240. package/es/components/calendar/src/date-table2.mjs.map +1 -1
  241. package/es/components/cascader/index.d.ts +38 -2
  242. package/es/components/cascader/src/index.mjs +1 -1
  243. package/es/components/cascader/src/index.vue.d.ts +19 -1
  244. package/es/components/col/src/col.d.ts +2 -0
  245. package/es/components/col/src/col.mjs.map +1 -1
  246. package/es/components/color-picker/src/index.mjs +4 -1
  247. package/es/components/color-picker/src/index.mjs.map +1 -1
  248. package/es/components/descriptions/src/descriptions-cell.mjs +1 -1
  249. package/es/components/dropdown/src/dropdown.mjs +1 -1
  250. package/es/components/dropdown/src/dropdown2.mjs +1 -1
  251. package/es/components/form/src/form-item2.mjs +1 -1
  252. package/es/components/icon/src/icon2.mjs +1 -1
  253. package/es/components/image/index.d.ts +8 -0
  254. package/es/components/image/src/image.d.ts +1 -0
  255. package/es/components/image/src/image.mjs +4 -0
  256. package/es/components/image/src/image.mjs.map +1 -1
  257. package/es/components/image/src/image.vue.d.ts +8 -0
  258. package/es/components/image/src/image2.mjs +2 -1
  259. package/es/components/image/src/image2.mjs.map +1 -1
  260. package/es/components/image-viewer/index.d.ts +4 -0
  261. package/es/components/image-viewer/src/image-viewer.d.ts +1 -0
  262. package/es/components/image-viewer/src/image-viewer.mjs +4 -0
  263. package/es/components/image-viewer/src/image-viewer.mjs.map +1 -1
  264. package/es/components/image-viewer/src/image-viewer.vue.d.ts +4 -0
  265. package/es/components/image-viewer/src/image-viewer2.mjs +1 -1
  266. package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
  267. package/es/components/index.mjs +1 -1
  268. package/es/components/input/index.d.ts +10 -0
  269. package/es/components/input/src/input.d.ts +2 -0
  270. package/es/components/input/src/input.mjs +6 -0
  271. package/es/components/input/src/input.mjs.map +1 -1
  272. package/es/components/input/src/input.vue.d.ts +10 -0
  273. package/es/components/input/src/input2.mjs +30 -17
  274. package/es/components/input/src/input2.mjs.map +1 -1
  275. package/es/components/input-number/index.d.ts +20 -0
  276. package/es/components/input-number/src/input-number.vue.d.ts +20 -0
  277. package/es/components/popconfirm/src/popconfirm.mjs +1 -1
  278. package/es/components/popover/src/popover.mjs +1 -1
  279. package/es/components/scrollbar/src/scrollbar2.mjs +1 -1
  280. package/es/components/scrollbar/src/thumb.vue.d.ts +16 -16
  281. package/es/components/scrollbar/src/util.d.ts +18 -18
  282. package/es/components/scrollbar/src/util.mjs.map +1 -1
  283. package/es/components/select/src/select.mjs +6 -12
  284. package/es/components/select/src/select.mjs.map +1 -1
  285. package/es/components/select/src/useSelect.mjs +1 -1
  286. package/es/components/select/src/useSelect.mjs.map +1 -1
  287. package/es/components/select-v2/src/defaults.mjs +1 -1
  288. package/es/components/table/src/table/style-helper.mjs +1 -4
  289. package/es/components/table/src/table/style-helper.mjs.map +1 -1
  290. package/es/components/table-v2/index.d.ts +4 -1
  291. package/es/components/table-v2/index.mjs +3 -1
  292. package/es/components/table-v2/index.mjs.map +1 -1
  293. package/es/components/table-v2/src/column.d.ts +2 -2
  294. package/es/components/table-v2/src/components/cell.d.ts +4 -0
  295. package/es/components/table-v2/src/components/cell.mjs +22 -0
  296. package/es/components/table-v2/src/components/cell.mjs.map +1 -0
  297. package/{lib/components/table-v2/src → es/components/table-v2/src/components}/expand-icon.d.ts +1 -1
  298. package/es/components/table-v2/src/components/expand-icon.mjs +26 -0
  299. package/es/components/table-v2/src/components/expand-icon.mjs.map +1 -0
  300. package/es/components/table-v2/src/components/header-cell.d.ts +4 -0
  301. package/es/components/table-v2/src/components/header-cell.mjs +15 -0
  302. package/es/components/table-v2/src/components/header-cell.mjs.map +1 -0
  303. package/es/components/table-v2/src/{table-header-row.d.ts → components/header-row.d.ts} +6 -6
  304. package/es/components/table-v2/src/components/header-row.mjs +40 -0
  305. package/es/components/table-v2/src/components/header-row.mjs.map +1 -0
  306. package/{lib/components/table-v2/src/table-header.d.ts → es/components/table-v2/src/components/header.d.ts} +3 -3
  307. package/es/components/table-v2/src/components/header.mjs +96 -0
  308. package/es/components/table-v2/src/components/header.mjs.map +1 -0
  309. package/es/components/table-v2/src/components/index.d.ts +10 -0
  310. package/es/components/table-v2/src/components/index.mjs +8 -0
  311. package/es/components/table-v2/src/components/index.mjs.map +1 -0
  312. package/es/components/table-v2/src/{table-row.d.ts → components/row.d.ts} +18 -19
  313. package/es/components/table-v2/src/components/row.mjs +204 -0
  314. package/es/components/table-v2/src/components/row.mjs.map +1 -0
  315. package/es/components/table-v2/src/{sort-icon.d.ts → components/sort-icon.d.ts} +1 -1
  316. package/es/components/table-v2/src/components/sort-icon.mjs +19 -0
  317. package/es/components/table-v2/src/components/sort-icon.mjs.map +1 -0
  318. package/es/components/table-v2/src/composables/index.d.ts +5 -0
  319. package/es/components/table-v2/src/composables/index.mjs +6 -0
  320. package/es/components/table-v2/src/composables/index.mjs.map +1 -0
  321. package/{lib/components/table-v2/src → es/components/table-v2/src/composables}/use-columns.d.ts +8 -6
  322. package/es/components/table-v2/src/{use-columns.mjs → composables/use-columns.mjs} +26 -30
  323. package/es/components/table-v2/src/composables/use-columns.mjs.map +1 -0
  324. package/es/components/table-v2/src/composables/use-data.d.ts +17 -0
  325. package/es/components/table-v2/src/composables/use-data.mjs +44 -0
  326. package/es/components/table-v2/src/composables/use-data.mjs.map +1 -0
  327. package/es/components/table-v2/src/composables/use-row.d.ts +32 -0
  328. package/es/components/table-v2/src/composables/use-row.mjs +123 -0
  329. package/es/components/table-v2/src/composables/use-row.mjs.map +1 -0
  330. package/es/components/table-v2/src/composables/use-scrollbar.d.ts +26 -0
  331. package/es/components/table-v2/src/composables/use-scrollbar.mjs +55 -0
  332. package/es/components/table-v2/src/composables/use-scrollbar.mjs.map +1 -0
  333. package/es/components/table-v2/src/composables/use-styles.d.ts +25 -0
  334. package/es/components/table-v2/src/composables/use-styles.mjs +87 -0
  335. package/es/components/table-v2/src/composables/use-styles.mjs.map +1 -0
  336. package/es/components/table-v2/src/composables/utils.d.ts +3 -0
  337. package/es/components/table-v2/src/composables/utils.mjs +26 -0
  338. package/es/components/table-v2/src/composables/utils.mjs.map +1 -0
  339. package/es/components/table-v2/src/constants.d.ts +4 -0
  340. package/es/components/table-v2/src/constants.mjs +6 -1
  341. package/es/components/table-v2/src/constants.mjs.map +1 -1
  342. package/es/components/table-v2/src/grid.d.ts +4 -1
  343. package/es/components/table-v2/src/grid.mjs +5 -0
  344. package/es/components/table-v2/src/grid.mjs.map +1 -1
  345. package/es/components/table-v2/src/renderers/cell.d.ts +1 -1
  346. package/es/components/table-v2/src/renderers/cell.mjs +91 -0
  347. package/es/components/table-v2/src/renderers/cell.mjs.map +1 -0
  348. package/es/components/table-v2/src/renderers/empty.d.ts +7 -0
  349. package/es/components/table-v2/src/renderers/empty.mjs +15 -0
  350. package/es/components/table-v2/src/renderers/empty.mjs.map +1 -0
  351. package/es/components/table-v2/src/renderers/footer.d.ts +7 -0
  352. package/es/components/table-v2/src/renderers/footer.mjs +15 -0
  353. package/es/components/table-v2/src/renderers/footer.mjs.map +1 -0
  354. package/es/components/table-v2/src/renderers/header-cell.d.ts +1 -1
  355. package/es/components/table-v2/src/renderers/header-cell.mjs +65 -0
  356. package/es/components/table-v2/src/renderers/header-cell.mjs.map +1 -0
  357. package/es/components/table-v2/src/renderers/header.d.ts +1 -1
  358. package/es/components/table-v2/src/renderers/header.mjs +39 -0
  359. package/es/components/table-v2/src/renderers/header.mjs.map +1 -0
  360. package/es/components/table-v2/src/renderers/left-table.mjs +24 -0
  361. package/es/components/table-v2/src/renderers/left-table.mjs.map +1 -0
  362. package/es/components/table-v2/src/renderers/main-table.mjs +22 -0
  363. package/es/components/table-v2/src/renderers/main-table.mjs.map +1 -0
  364. package/es/components/table-v2/src/renderers/overlay.d.ts +3 -0
  365. package/es/components/table-v2/src/renderers/overlay.mjs +15 -0
  366. package/es/components/table-v2/src/renderers/overlay.mjs.map +1 -0
  367. package/es/components/table-v2/src/renderers/right-table.mjs +24 -0
  368. package/es/components/table-v2/src/renderers/right-table.mjs.map +1 -0
  369. package/es/components/table-v2/src/renderers/row.mjs +77 -0
  370. package/es/components/table-v2/src/renderers/row.mjs.map +1 -0
  371. package/es/components/table-v2/src/row.d.ts +6 -1
  372. package/es/components/table-v2/src/row.mjs.map +1 -1
  373. package/es/components/table-v2/src/table-grid.d.ts +8 -2
  374. package/es/components/table-v2/src/table-grid.mjs +221 -0
  375. package/es/components/table-v2/src/table-grid.mjs.map +1 -0
  376. package/es/components/table-v2/src/table-v2.d.ts +3 -12
  377. package/es/components/table-v2/src/table-v2.mjs +250 -0
  378. package/es/components/table-v2/src/table-v2.mjs.map +1 -0
  379. package/es/components/table-v2/src/table.d.ts +2 -5
  380. package/es/components/table-v2/src/table.mjs.map +1 -1
  381. package/es/components/table-v2/src/types.d.ts +15 -2
  382. package/es/components/table-v2/src/use-table.d.ts +20 -29
  383. package/es/components/table-v2/src/use-table.mjs +84 -238
  384. package/es/components/table-v2/src/use-table.mjs.map +1 -1
  385. package/es/components/table-v2/src/utils.mjs +1 -1
  386. package/es/components/table-v2/src/utils.mjs.map +1 -1
  387. package/es/components/tooltip/index.mjs +2 -2
  388. package/es/components/tooltip/src/content.mjs +1 -1
  389. package/es/components/tooltip/src/tooltip.mjs +62 -174
  390. package/es/components/tooltip/src/tooltip.mjs.map +1 -1
  391. package/es/components/tooltip/src/tooltip2.mjs +174 -62
  392. package/es/components/tooltip/src/tooltip2.mjs.map +1 -1
  393. package/es/components/tooltip/src/trigger.mjs +1 -1
  394. package/es/components/upload/index.d.ts +16 -12
  395. package/es/components/upload/src/upload-content.d.ts +1 -1
  396. package/es/components/upload/src/upload-content.vue.d.ts +4 -3
  397. package/es/components/upload/src/upload-content2.mjs +3 -1
  398. package/es/components/upload/src/upload-content2.mjs.map +1 -1
  399. package/es/components/upload/src/upload-list2.mjs +5 -3
  400. package/es/components/upload/src/upload-list2.mjs.map +1 -1
  401. package/es/components/upload/src/upload.d.ts +2 -2
  402. package/es/components/upload/src/upload.mjs +1 -1
  403. package/es/components/upload/src/upload.mjs.map +1 -1
  404. package/es/components/upload/src/upload.vue.d.ts +16 -12
  405. package/es/components/virtual-list/src/builders/build-grid.d.ts +11 -2
  406. package/es/components/virtual-list/src/builders/build-grid.mjs +7 -3
  407. package/es/components/virtual-list/src/builders/build-grid.mjs.map +1 -1
  408. package/es/components/virtual-list/src/components/dynamic-size-grid.d.ts +11 -2
  409. package/es/components/virtual-list/src/components/dynamic-size-grid.mjs +4 -2
  410. package/es/components/virtual-list/src/components/dynamic-size-grid.mjs.map +1 -1
  411. package/es/components/virtual-list/src/components/fixed-size-grid.d.ts +11 -2
  412. package/es/components/virtual-list/src/components/scrollbar.d.ts +2 -2
  413. package/es/components/virtual-list/src/props.d.ts +7 -3
  414. package/es/components/virtual-list/src/props.mjs +5 -1
  415. package/es/components/virtual-list/src/props.mjs.map +1 -1
  416. package/es/components/virtual-list/src/types.d.ts +7 -0
  417. package/es/components/virtual-list/src/utils.d.ts +10 -5
  418. package/es/components/virtual-list/src/utils.mjs.map +1 -1
  419. package/es/constants/index.mjs +1 -1
  420. package/es/constants/size.d.ts +0 -1
  421. package/es/constants/size.mjs +1 -4
  422. package/es/constants/size.mjs.map +1 -1
  423. package/es/directives/mousewheel/index.mjs +1 -7
  424. package/es/directives/mousewheel/index.mjs.map +1 -1
  425. package/es/hooks/index.d.ts +1 -0
  426. package/es/hooks/index.mjs +1 -0
  427. package/es/hooks/index.mjs.map +1 -1
  428. package/es/hooks/use-cursor/index.d.ts +2 -0
  429. package/es/hooks/use-cursor/index.mjs +46 -0
  430. package/es/hooks/use-cursor/index.mjs.map +1 -0
  431. package/es/hooks/use-draggable/index.mjs +1 -1
  432. package/es/index.mjs +3 -2
  433. package/es/index.mjs.map +1 -1
  434. package/es/utils/dom/index.mjs +1 -1
  435. package/es/utils/dom/style.d.ts +1 -0
  436. package/es/utils/dom/style.mjs +15 -3
  437. package/es/utils/dom/style.mjs.map +1 -1
  438. package/es/utils/index.mjs +2 -2
  439. package/es/utils/vue/index.d.ts +1 -1
  440. package/es/utils/vue/index.mjs +1 -1
  441. package/es/utils/vue/size.d.ts +1 -0
  442. package/es/utils/vue/size.mjs +9 -0
  443. package/es/utils/vue/size.mjs.map +1 -0
  444. package/es/version.d.ts +1 -1
  445. package/es/version.mjs +1 -1
  446. package/es/version.mjs.map +1 -1
  447. package/lib/components/autocomplete/index.d.ts +29 -1
  448. package/lib/components/autocomplete/src/autocomplete.js +1 -1
  449. package/lib/components/autocomplete/src/autocomplete.vue.d.ts +29 -1
  450. package/lib/components/avatar/src/avatar2.js +1 -1
  451. package/lib/components/calendar/src/calendar2.js +1 -1
  452. package/lib/components/calendar/src/calendar2.js.map +1 -1
  453. package/lib/components/calendar/src/date-table2.js +3 -2
  454. package/lib/components/calendar/src/date-table2.js.map +1 -1
  455. package/lib/components/cascader/index.d.ts +38 -2
  456. package/lib/components/cascader/src/index.js +1 -1
  457. package/lib/components/cascader/src/index.vue.d.ts +19 -1
  458. package/lib/components/col/src/col.d.ts +2 -0
  459. package/lib/components/col/src/col.js.map +1 -1
  460. package/lib/components/color-picker/src/index.js +4 -1
  461. package/lib/components/color-picker/src/index.js.map +1 -1
  462. package/lib/components/descriptions/src/descriptions-cell.js +1 -1
  463. package/lib/components/dropdown/src/dropdown.js +1 -1
  464. package/lib/components/dropdown/src/dropdown2.js +1 -1
  465. package/lib/components/form/src/form-item2.js +1 -1
  466. package/lib/components/icon/src/icon2.js +1 -1
  467. package/lib/components/image/index.d.ts +8 -0
  468. package/lib/components/image/src/image.d.ts +1 -0
  469. package/lib/components/image/src/image.js +4 -0
  470. package/lib/components/image/src/image.js.map +1 -1
  471. package/lib/components/image/src/image.vue.d.ts +8 -0
  472. package/lib/components/image/src/image2.js +2 -1
  473. package/lib/components/image/src/image2.js.map +1 -1
  474. package/lib/components/image-viewer/index.d.ts +4 -0
  475. package/lib/components/image-viewer/src/image-viewer.d.ts +1 -0
  476. package/lib/components/image-viewer/src/image-viewer.js +4 -0
  477. package/lib/components/image-viewer/src/image-viewer.js.map +1 -1
  478. package/lib/components/image-viewer/src/image-viewer.vue.d.ts +4 -0
  479. package/lib/components/image-viewer/src/image-viewer2.js +1 -1
  480. package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
  481. package/lib/components/index.js +1 -1
  482. package/lib/components/input/index.d.ts +10 -0
  483. package/lib/components/input/src/input.d.ts +2 -0
  484. package/lib/components/input/src/input.js +6 -0
  485. package/lib/components/input/src/input.js.map +1 -1
  486. package/lib/components/input/src/input.vue.d.ts +10 -0
  487. package/lib/components/input/src/input2.js +35 -22
  488. package/lib/components/input/src/input2.js.map +1 -1
  489. package/lib/components/input-number/index.d.ts +20 -0
  490. package/lib/components/input-number/src/input-number.vue.d.ts +20 -0
  491. package/lib/components/popconfirm/src/popconfirm.js +1 -1
  492. package/lib/components/popover/src/popover.js +1 -1
  493. package/lib/components/scrollbar/src/scrollbar2.js +1 -1
  494. package/lib/components/scrollbar/src/thumb.vue.d.ts +16 -16
  495. package/lib/components/scrollbar/src/util.d.ts +18 -18
  496. package/lib/components/scrollbar/src/util.js.map +1 -1
  497. package/lib/components/select/src/select.js +6 -12
  498. package/lib/components/select/src/select.js.map +1 -1
  499. package/lib/components/select/src/useSelect.js +1 -1
  500. package/lib/components/select/src/useSelect.js.map +1 -1
  501. package/lib/components/select-v2/src/defaults.js +1 -1
  502. package/lib/components/table/src/table/style-helper.js +1 -4
  503. package/lib/components/table/src/table/style-helper.js.map +1 -1
  504. package/lib/components/table-v2/index.d.ts +4 -1
  505. package/lib/components/table-v2/index.js +13 -0
  506. package/lib/components/table-v2/index.js.map +1 -1
  507. package/lib/components/table-v2/src/column.d.ts +2 -2
  508. package/lib/components/table-v2/src/components/cell.d.ts +4 -0
  509. package/lib/components/table-v2/src/components/cell.js +26 -0
  510. package/lib/components/table-v2/src/components/cell.js.map +1 -0
  511. package/{es/components/table-v2/src → lib/components/table-v2/src/components}/expand-icon.d.ts +1 -1
  512. package/lib/components/table-v2/src/components/expand-icon.js +30 -0
  513. package/lib/components/table-v2/src/components/expand-icon.js.map +1 -0
  514. package/lib/components/table-v2/src/components/header-cell.d.ts +4 -0
  515. package/lib/components/table-v2/src/components/header-cell.js +19 -0
  516. package/lib/components/table-v2/src/components/header-cell.js.map +1 -0
  517. package/lib/components/table-v2/src/{table-header-row.d.ts → components/header-row.d.ts} +6 -6
  518. package/lib/components/table-v2/src/components/header-row.js +44 -0
  519. package/lib/components/table-v2/src/components/header-row.js.map +1 -0
  520. package/{es/components/table-v2/src/table-header.d.ts → lib/components/table-v2/src/components/header.d.ts} +3 -3
  521. package/lib/components/table-v2/src/components/header.js +100 -0
  522. package/lib/components/table-v2/src/components/header.js.map +1 -0
  523. package/lib/components/table-v2/src/components/index.d.ts +10 -0
  524. package/lib/components/table-v2/src/components/index.js +22 -0
  525. package/lib/components/table-v2/src/components/index.js.map +1 -0
  526. package/lib/components/table-v2/src/{table-row.d.ts → components/row.d.ts} +18 -19
  527. package/lib/components/table-v2/src/components/row.js +208 -0
  528. package/lib/components/table-v2/src/components/row.js.map +1 -0
  529. package/lib/components/table-v2/src/{sort-icon.d.ts → components/sort-icon.d.ts} +1 -1
  530. package/lib/components/table-v2/src/components/sort-icon.js +23 -0
  531. package/lib/components/table-v2/src/components/sort-icon.js.map +1 -0
  532. package/lib/components/table-v2/src/composables/index.d.ts +5 -0
  533. package/lib/components/table-v2/src/composables/index.js +18 -0
  534. package/lib/components/table-v2/src/composables/index.js.map +1 -0
  535. package/{es/components/table-v2/src → lib/components/table-v2/src/composables}/use-columns.d.ts +8 -6
  536. package/lib/components/table-v2/src/{use-columns.js → composables/use-columns.js} +27 -31
  537. package/lib/components/table-v2/src/composables/use-columns.js.map +1 -0
  538. package/lib/components/table-v2/src/composables/use-data.d.ts +17 -0
  539. package/lib/components/table-v2/src/composables/use-data.js +48 -0
  540. package/lib/components/table-v2/src/composables/use-data.js.map +1 -0
  541. package/lib/components/table-v2/src/composables/use-row.d.ts +32 -0
  542. package/lib/components/table-v2/src/composables/use-row.js +127 -0
  543. package/lib/components/table-v2/src/composables/use-row.js.map +1 -0
  544. package/lib/components/table-v2/src/composables/use-scrollbar.d.ts +26 -0
  545. package/lib/components/table-v2/src/composables/use-scrollbar.js +59 -0
  546. package/lib/components/table-v2/src/composables/use-scrollbar.js.map +1 -0
  547. package/lib/components/table-v2/src/composables/use-styles.d.ts +25 -0
  548. package/lib/components/table-v2/src/composables/use-styles.js +91 -0
  549. package/lib/components/table-v2/src/composables/use-styles.js.map +1 -0
  550. package/lib/components/table-v2/src/composables/utils.d.ts +3 -0
  551. package/lib/components/table-v2/src/composables/utils.js +30 -0
  552. package/lib/components/table-v2/src/composables/utils.js.map +1 -0
  553. package/lib/components/table-v2/src/constants.d.ts +4 -0
  554. package/lib/components/table-v2/src/constants.js +6 -0
  555. package/lib/components/table-v2/src/constants.js.map +1 -1
  556. package/lib/components/table-v2/src/grid.d.ts +4 -1
  557. package/lib/components/table-v2/src/grid.js +5 -0
  558. package/lib/components/table-v2/src/grid.js.map +1 -1
  559. package/lib/components/table-v2/src/renderers/cell.d.ts +1 -1
  560. package/lib/components/table-v2/src/renderers/cell.js +95 -0
  561. package/lib/components/table-v2/src/renderers/cell.js.map +1 -0
  562. package/lib/components/table-v2/src/renderers/empty.d.ts +7 -0
  563. package/lib/components/table-v2/src/renderers/empty.js +19 -0
  564. package/lib/components/table-v2/src/renderers/empty.js.map +1 -0
  565. package/lib/components/table-v2/src/renderers/footer.d.ts +7 -0
  566. package/lib/components/table-v2/src/renderers/footer.js +19 -0
  567. package/lib/components/table-v2/src/renderers/footer.js.map +1 -0
  568. package/lib/components/table-v2/src/renderers/header-cell.d.ts +1 -1
  569. package/lib/components/table-v2/src/renderers/header-cell.js +69 -0
  570. package/lib/components/table-v2/src/renderers/header-cell.js.map +1 -0
  571. package/lib/components/table-v2/src/renderers/header.d.ts +1 -1
  572. package/lib/components/table-v2/src/renderers/header.js +43 -0
  573. package/lib/components/table-v2/src/renderers/header.js.map +1 -0
  574. package/lib/components/table-v2/src/renderers/left-table.js +28 -0
  575. package/lib/components/table-v2/src/renderers/left-table.js.map +1 -0
  576. package/lib/components/table-v2/src/renderers/main-table.js +26 -0
  577. package/lib/components/table-v2/src/renderers/main-table.js.map +1 -0
  578. package/lib/components/table-v2/src/renderers/overlay.d.ts +3 -0
  579. package/lib/components/table-v2/src/renderers/overlay.js +19 -0
  580. package/lib/components/table-v2/src/renderers/overlay.js.map +1 -0
  581. package/lib/components/table-v2/src/renderers/right-table.js +28 -0
  582. package/lib/components/table-v2/src/renderers/right-table.js.map +1 -0
  583. package/lib/components/table-v2/src/renderers/row.js +81 -0
  584. package/lib/components/table-v2/src/renderers/row.js.map +1 -0
  585. package/lib/components/table-v2/src/row.d.ts +6 -1
  586. package/lib/components/table-v2/src/row.js.map +1 -1
  587. package/lib/components/table-v2/src/table-grid.d.ts +8 -2
  588. package/lib/components/table-v2/src/table-grid.js +225 -0
  589. package/lib/components/table-v2/src/table-grid.js.map +1 -0
  590. package/lib/components/table-v2/src/table-v2.d.ts +3 -12
  591. package/lib/components/table-v2/src/table-v2.js +254 -0
  592. package/lib/components/table-v2/src/table-v2.js.map +1 -0
  593. package/lib/components/table-v2/src/table.d.ts +2 -5
  594. package/lib/components/table-v2/src/table.js.map +1 -1
  595. package/lib/components/table-v2/src/types.d.ts +15 -2
  596. package/lib/components/table-v2/src/use-table.d.ts +20 -29
  597. package/lib/components/table-v2/src/use-table.js +82 -236
  598. package/lib/components/table-v2/src/use-table.js.map +1 -1
  599. package/lib/components/table-v2/src/utils.js +1 -1
  600. package/lib/components/table-v2/src/utils.js.map +1 -1
  601. package/lib/components/tooltip/index.js +2 -2
  602. package/lib/components/tooltip/src/content.js +1 -1
  603. package/lib/components/tooltip/src/tooltip.js +64 -174
  604. package/lib/components/tooltip/src/tooltip.js.map +1 -1
  605. package/lib/components/tooltip/src/tooltip2.js +174 -64
  606. package/lib/components/tooltip/src/tooltip2.js.map +1 -1
  607. package/lib/components/tooltip/src/trigger.js +1 -1
  608. package/lib/components/upload/index.d.ts +16 -12
  609. package/lib/components/upload/src/upload-content.d.ts +1 -1
  610. package/lib/components/upload/src/upload-content.vue.d.ts +4 -3
  611. package/lib/components/upload/src/upload-content2.js +3 -1
  612. package/lib/components/upload/src/upload-content2.js.map +1 -1
  613. package/lib/components/upload/src/upload-list2.js +4 -2
  614. package/lib/components/upload/src/upload-list2.js.map +1 -1
  615. package/lib/components/upload/src/upload.d.ts +2 -2
  616. package/lib/components/upload/src/upload.js +1 -1
  617. package/lib/components/upload/src/upload.js.map +1 -1
  618. package/lib/components/upload/src/upload.vue.d.ts +16 -12
  619. package/lib/components/virtual-list/src/builders/build-grid.d.ts +11 -2
  620. package/lib/components/virtual-list/src/builders/build-grid.js +7 -3
  621. package/lib/components/virtual-list/src/builders/build-grid.js.map +1 -1
  622. package/lib/components/virtual-list/src/components/dynamic-size-grid.d.ts +11 -2
  623. package/lib/components/virtual-list/src/components/dynamic-size-grid.js +4 -2
  624. package/lib/components/virtual-list/src/components/dynamic-size-grid.js.map +1 -1
  625. package/lib/components/virtual-list/src/components/fixed-size-grid.d.ts +11 -2
  626. package/lib/components/virtual-list/src/components/scrollbar.d.ts +2 -2
  627. package/lib/components/virtual-list/src/props.d.ts +7 -3
  628. package/lib/components/virtual-list/src/props.js +5 -1
  629. package/lib/components/virtual-list/src/props.js.map +1 -1
  630. package/lib/components/virtual-list/src/types.d.ts +7 -0
  631. package/lib/components/virtual-list/src/utils.d.ts +10 -5
  632. package/lib/components/virtual-list/src/utils.js.map +1 -1
  633. package/lib/constants/index.js +0 -1
  634. package/lib/constants/index.js.map +1 -1
  635. package/lib/constants/size.d.ts +0 -1
  636. package/lib/constants/size.js +0 -4
  637. package/lib/constants/size.js.map +1 -1
  638. package/lib/directives/mousewheel/index.js +1 -7
  639. package/lib/directives/mousewheel/index.js.map +1 -1
  640. package/lib/hooks/index.d.ts +1 -0
  641. package/lib/hooks/index.js +2 -0
  642. package/lib/hooks/index.js.map +1 -1
  643. package/lib/hooks/use-cursor/index.d.ts +2 -0
  644. package/lib/hooks/use-cursor/index.js +50 -0
  645. package/lib/hooks/use-cursor/index.js.map +1 -0
  646. package/lib/hooks/use-draggable/index.js +1 -1
  647. package/lib/index.js +3 -2
  648. package/lib/index.js.map +1 -1
  649. package/lib/utils/dom/index.js +1 -0
  650. package/lib/utils/dom/index.js.map +1 -1
  651. package/lib/utils/dom/style.d.ts +1 -0
  652. package/lib/utils/dom/style.js +13 -0
  653. package/lib/utils/dom/style.js.map +1 -1
  654. package/lib/utils/index.js +3 -2
  655. package/lib/utils/index.js.map +1 -1
  656. package/lib/utils/vue/index.d.ts +1 -1
  657. package/lib/utils/vue/index.js +2 -2
  658. package/lib/utils/vue/size.d.ts +1 -0
  659. package/lib/utils/vue/size.js +13 -0
  660. package/lib/utils/vue/size.js.map +1 -0
  661. package/lib/version.d.ts +1 -1
  662. package/lib/version.js +1 -1
  663. package/lib/version.js.map +1 -1
  664. package/package.json +7 -7
  665. package/tags.json +1 -1
  666. package/theme-chalk/el-autocomplete.css +1 -1
  667. package/theme-chalk/el-date-picker.css +1 -1
  668. package/theme-chalk/el-input-number.css +1 -1
  669. package/theme-chalk/el-input.css +1 -1
  670. package/theme-chalk/el-pagination.css +1 -1
  671. package/theme-chalk/el-step.css +1 -1
  672. package/theme-chalk/el-table-v2.css +1 -1
  673. package/theme-chalk/el-tabs.css +1 -1
  674. package/theme-chalk/el-time-picker.css +1 -1
  675. package/theme-chalk/el-upload.css +1 -1
  676. package/theme-chalk/index.css +1 -1
  677. package/theme-chalk/src/autocomplete.scss +9 -9
  678. package/theme-chalk/src/check-tag.scss +5 -5
  679. package/theme-chalk/src/dark/var.scss +7 -7
  680. package/theme-chalk/src/date-picker/time-picker.scss +2 -2
  681. package/theme-chalk/src/date-picker/year-table.scss +2 -2
  682. package/theme-chalk/src/input-number.scss +0 -1
  683. package/theme-chalk/src/input.scss +12 -5
  684. package/theme-chalk/src/pagination.scss +6 -0
  685. package/theme-chalk/src/step.scss +1 -1
  686. package/theme-chalk/src/table-v2.scss +30 -6
  687. package/theme-chalk/src/tabs.scss +1 -1
  688. package/theme-chalk/src/upload.scss +7 -4
  689. package/web-types.json +1 -1
  690. package/es/components/table-v2/src/column-resizer.d.ts +0 -14
  691. package/es/components/table-v2/src/column-resizer.mjs +0 -24
  692. package/es/components/table-v2/src/column-resizer.mjs.map +0 -1
  693. package/es/components/table-v2/src/table-cell.d.ts +0 -9
  694. package/es/components/table-v2/src/table-column-resizer.d.ts +0 -31
  695. package/es/components/table-v2/src/table-header-cell.d.ts +0 -8
  696. package/es/components/table-v2/src/use-columns.mjs.map +0 -1
  697. package/es/utils/vue/style.d.ts +0 -1
  698. package/es/utils/vue/style.mjs +0 -19
  699. package/es/utils/vue/style.mjs.map +0 -1
  700. package/lib/components/table-v2/src/column-resizer.d.ts +0 -14
  701. package/lib/components/table-v2/src/column-resizer.js +0 -28
  702. package/lib/components/table-v2/src/column-resizer.js.map +0 -1
  703. package/lib/components/table-v2/src/table-cell.d.ts +0 -9
  704. package/lib/components/table-v2/src/table-column-resizer.d.ts +0 -31
  705. package/lib/components/table-v2/src/table-header-cell.d.ts +0 -8
  706. package/lib/components/table-v2/src/use-columns.js.map +0 -1
  707. package/lib/utils/vue/style.d.ts +0 -1
  708. package/lib/utils/vue/style.js +0 -23
  709. package/lib/utils/vue/style.js.map +0 -1
@@ -46,6 +46,10 @@ const imageProps = buildProps({
46
46
  infinite: {
47
47
  type: Boolean,
48
48
  default: true
49
+ },
50
+ closeOnPressEscape: {
51
+ type: Boolean,
52
+ default: true
49
53
  }
50
54
  });
51
55
  const imageEmits = {
@@ -1 +1 @@
1
- {"version":3,"file":"image.mjs","sources":["../../../../../../packages/components/image/src/image.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n isNumber,\n mutable,\n} from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\n\nexport const imageProps = buildProps({\n appendToBody: {\n type: Boolean,\n default: undefined,\n },\n hideOnClickModal: {\n type: Boolean,\n default: false,\n },\n src: {\n type: String,\n default: '',\n },\n fit: {\n type: String,\n values: ['', 'contain', 'cover', 'fill', 'none', 'scale-down'],\n default: '',\n },\n lazy: {\n type: Boolean,\n default: false,\n },\n scrollContainer: {\n type: definePropType<string | HTMLElement | undefined>([String, Object]),\n },\n previewSrcList: {\n type: definePropType<string[]>(Array),\n default: () => mutable([] as const),\n },\n previewTeleported: {\n type: Boolean,\n default: false,\n },\n zIndex: {\n type: Number,\n },\n initialIndex: {\n type: Number,\n default: 0,\n },\n infinite: {\n type: Boolean,\n default: true,\n },\n} as const)\nexport type ImageProps = ExtractPropTypes<typeof imageProps>\n\nexport const imageEmits = {\n error: (evt: Event) => evt instanceof Event,\n switch: (val: number) => isNumber(val),\n close: () => true,\n}\nexport type ImageEmits = typeof imageEmits\n"],"names":[],"mappings":";;;;;AAMY,MAAC,UAAU,GAAG,UAAU,CAAC;AACrC,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,gBAAgB,EAAE;AACpB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC;AAClE,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,GAAG;AACH,EAAE,cAAc,EAAE;AAClB,IAAI,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,OAAO,CAAC,EAAE,CAAC;AAC9B,GAAG;AACH,EAAE,iBAAiB,EAAE;AACrB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,UAAU,GAAG;AAC1B,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,KAAK;AACtC,EAAE,MAAM,EAAE,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC;AAChC,EAAE,KAAK,EAAE,MAAM,IAAI;AACnB;;;;"}
1
+ {"version":3,"file":"image.mjs","sources":["../../../../../../packages/components/image/src/image.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n isNumber,\n mutable,\n} from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\n\nexport const imageProps = buildProps({\n appendToBody: {\n type: Boolean,\n default: undefined,\n },\n hideOnClickModal: {\n type: Boolean,\n default: false,\n },\n src: {\n type: String,\n default: '',\n },\n fit: {\n type: String,\n values: ['', 'contain', 'cover', 'fill', 'none', 'scale-down'],\n default: '',\n },\n lazy: {\n type: Boolean,\n default: false,\n },\n scrollContainer: {\n type: definePropType<string | HTMLElement | undefined>([String, Object]),\n },\n previewSrcList: {\n type: definePropType<string[]>(Array),\n default: () => mutable([] as const),\n },\n previewTeleported: {\n type: Boolean,\n default: false,\n },\n zIndex: {\n type: Number,\n },\n initialIndex: {\n type: Number,\n default: 0,\n },\n infinite: {\n type: Boolean,\n default: true,\n },\n closeOnPressEscape: {\n type: Boolean,\n default: true,\n },\n} as const)\nexport type ImageProps = ExtractPropTypes<typeof imageProps>\n\nexport const imageEmits = {\n error: (evt: Event) => evt instanceof Event,\n switch: (val: number) => isNumber(val),\n close: () => true,\n}\nexport type ImageEmits = typeof imageEmits\n"],"names":[],"mappings":";;;;;AAMY,MAAC,UAAU,GAAG,UAAU,CAAC;AACrC,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK,CAAC;AACnB,GAAG;AACH,EAAE,gBAAgB,EAAE;AACpB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,MAAM,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC;AAClE,IAAI,OAAO,EAAE,EAAE;AACf,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,GAAG;AACH,EAAE,cAAc,EAAE;AAClB,IAAI,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,OAAO,CAAC,EAAE,CAAC;AAC9B,GAAG;AACH,EAAE,iBAAiB,EAAE;AACrB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,kBAAkB,EAAE;AACtB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,UAAU,GAAG;AAC1B,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,KAAK;AACtC,EAAE,MAAM,EAAE,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC;AAChC,EAAE,KAAK,EAAE,MAAM,IAAI;AACnB;;;;"}
@@ -11,6 +11,7 @@ declare const _default: import("vue").DefineComponent<{
11
11
  readonly zIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, unknown, unknown, unknown, unknown>;
12
12
  readonly initialIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, 0, unknown, unknown, unknown>;
13
13
  readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
14
+ readonly closeOnPressEscape: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
14
15
  }, {
15
16
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
16
17
  readonly appendToBody: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, undefined, unknown, unknown, unknown>;
@@ -24,6 +25,7 @@ declare const _default: import("vue").DefineComponent<{
24
25
  readonly zIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, unknown, unknown, unknown, unknown>;
25
26
  readonly initialIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, 0, unknown, unknown, unknown>;
26
27
  readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
28
+ readonly closeOnPressEscape: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
27
29
  }>> & {
28
30
  onClose?: (() => any) | undefined;
29
31
  onError?: ((evt: Event) => any) | undefined;
@@ -79,6 +81,7 @@ declare const _default: import("vue").DefineComponent<{
79
81
  readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
80
82
  readonly hideOnClickModal: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
81
83
  readonly teleported: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
84
+ readonly closeOnPressEscape: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
82
85
  }, {
83
86
  Mode: {
84
87
  CONTAIN: {
@@ -98,6 +101,7 @@ declare const _default: import("vue").DefineComponent<{
98
101
  readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
99
102
  readonly hideOnClickModal: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
100
103
  readonly teleported: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
104
+ readonly closeOnPressEscape: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
101
105
  }>> & {
102
106
  onClose?: (() => any) | undefined;
103
107
  onSwitch?: ((index: number) => any) | undefined;
@@ -201,6 +205,7 @@ declare const _default: import("vue").DefineComponent<{
201
205
  readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
202
206
  readonly hideOnClickModal: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
203
207
  readonly teleported: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
208
+ readonly closeOnPressEscape: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
204
209
  }>> & {
205
210
  onClose?: (() => any) | undefined;
206
211
  onSwitch?: ((index: number) => any) | undefined;
@@ -209,6 +214,7 @@ declare const _default: import("vue").DefineComponent<{
209
214
  teleported: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
210
215
  infinite: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
211
216
  initialIndex: number;
217
+ closeOnPressEscape: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
212
218
  hideOnClickModal: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
213
219
  urlList: string[];
214
220
  }>> & Record<string, any>;
@@ -228,6 +234,7 @@ declare const _default: import("vue").DefineComponent<{
228
234
  readonly zIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, unknown, unknown, unknown, unknown>;
229
235
  readonly initialIndex: import("element-plus/es/utils").BuildPropReturn<NumberConstructor, 0, unknown, unknown, unknown>;
230
236
  readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
237
+ readonly closeOnPressEscape: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
231
238
  }>> & {
232
239
  onClose?: (() => any) | undefined;
233
240
  onError?: ((evt: Event) => any) | undefined;
@@ -240,6 +247,7 @@ declare const _default: import("vue").DefineComponent<{
240
247
  fit: import("element-plus/es/utils").BuildPropType<StringConstructor, "" | "fill" | "none" | "contain" | "cover" | "scale-down", unknown>;
241
248
  initialIndex: number;
242
249
  appendToBody: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
250
+ closeOnPressEscape: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
243
251
  hideOnClickModal: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
244
252
  scrollContainer: import("element-plus/es/utils").BuildPropType<import("element-plus/es/utils").PropWrapper<string | HTMLElement | undefined>, unknown, unknown>;
245
253
  previewSrcList: string[];
@@ -213,6 +213,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
213
213
  "url-list": _ctx.previewSrcList,
214
214
  "hide-on-click-modal": _ctx.hideOnClickModal,
215
215
  teleported: unref(teleported),
216
+ "close-on-press-escape": _ctx.closeOnPressEscape,
216
217
  onClose: closeViewer,
217
218
  onSwitch: switchViewer
218
219
  }, {
@@ -222,7 +223,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
222
223
  ])) : createCommentVNode("v-if", true)
223
224
  ]),
224
225
  _: 3
225
- }, 8, ["z-index", "initial-index", "infinite", "url-list", "hide-on-click-modal", "teleported"])) : createCommentVNode("v-if", true)
226
+ }, 8, ["z-index", "initial-index", "infinite", "url-list", "hide-on-click-modal", "teleported", "close-on-press-escape"])) : createCommentVNode("v-if", true)
226
227
  ], 2112)) : createCommentVNode("v-if", true)
227
228
  ], 6);
228
229
  };
@@ -1 +1 @@
1
- {"version":3,"file":"image2.mjs","sources":["../../../../../../packages/components/image/src/image.vue"],"sourcesContent":["<template>\n <div ref=\"container\" :class=\"[ns.b(), $attrs.class]\" :style=\"containerStyle\">\n <slot v-if=\"loading\" name=\"placeholder\">\n <div :class=\"ns.e('placeholder')\" />\n </slot>\n <slot v-else-if=\"hasLoadError\" name=\"error\">\n <div :class=\"ns.e('error')\">{{ t('el.image.error') }}</div>\n </slot>\n <img\n v-else\n v-bind=\"attrs\"\n :src=\"src\"\n :style=\"imageStyle\"\n :class=\"[ns.e('inner'), preview ? ns.e('preview') : '']\"\n @click=\"clickHandler\"\n />\n <template v-if=\"preview\">\n <image-viewer\n v-if=\"showViewer\"\n :z-index=\"zIndex\"\n :initial-index=\"imageIndex\"\n :infinite=\"infinite\"\n :url-list=\"previewSrcList\"\n :hide-on-click-modal=\"hideOnClickModal\"\n :teleported=\"teleported\"\n @close=\"closeViewer\"\n @switch=\"switchViewer\"\n >\n <div v-if=\"$slots.viewer\">\n <slot name=\"viewer\" />\n </div>\n </image-viewer>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, onMounted, ref, watch } from 'vue'\nimport {\n isBoolean,\n isClient,\n useEventListener,\n useThrottleFn,\n} from '@vueuse/core'\nimport {\n useAttrs,\n useDeprecated,\n useLocale,\n useNamespace,\n} from '@element-plus/hooks'\nimport ImageViewer from '@element-plus/components/image-viewer'\nimport {\n getScrollContainer,\n isElement,\n isInContainer,\n isString,\n} from '@element-plus/utils'\nimport { imageEmits, imageProps } from './image'\n\nimport type { CSSProperties, StyleValue } from 'vue'\n\ndefineOptions({\n name: 'ElImage',\n})\n\nconst props = defineProps(imageProps)\nconst emit = defineEmits(imageEmits)\n\nlet prevOverflow = ''\n\nuseDeprecated(\n {\n scope: 'el-image',\n from: 'append-to-body',\n replacement: 'preview-teleported',\n version: '2.2.0',\n ref: 'https://element-plus.org/en-US/component/image.html#image-attributess',\n },\n computed(() => isBoolean(props.appendToBody))\n)\n\nconst { t } = useLocale()\nconst ns = useNamespace('image')\n\nconst attrs = useAttrs()\nconst hasLoadError = ref(false)\nconst loading = ref(true)\nconst imgWidth = ref(0)\nconst imgHeight = ref(0)\nconst showViewer = ref(false)\nconst container = ref<HTMLElement>()\n\nconst _scrollContainer = ref<HTMLElement | Window>()\nlet stopScrollListener: () => void\nlet stopWheelListener: () => void\n\nconst containerStyle = computed(() => attrs.value.style as StyleValue)\n\nconst imageStyle = computed<CSSProperties>(() => {\n const { fit } = props\n if (isClient && fit) {\n return { objectFit: fit }\n }\n return {}\n})\n\nconst preview = computed(() => {\n const { previewSrcList } = props\n return Array.isArray(previewSrcList) && previewSrcList.length > 0\n})\n\nconst teleported = computed(() => {\n return props.appendToBody || props.previewTeleported\n})\n\nconst imageIndex = computed(() => {\n const { previewSrcList, initialIndex } = props\n let previewIndex = initialIndex\n if (initialIndex > previewSrcList.length - 1) {\n previewIndex = 0\n }\n return previewIndex\n})\n\nconst loadImage = () => {\n if (!isClient) return\n\n // reset status\n loading.value = true\n hasLoadError.value = false\n\n const img = new Image()\n const currentImageSrc = props.src\n\n // load & error callbacks are only responsible for currentImageSrc\n img.addEventListener('load', (e) => {\n if (currentImageSrc !== props.src) {\n return\n }\n handleLoad(e, img)\n })\n img.addEventListener('error', (e) => {\n if (currentImageSrc !== props.src) {\n return\n }\n handleError(e)\n })\n\n // bind html attrs\n // so it can behave consistently\n Object.entries(attrs.value).forEach(([key, value]) => {\n // avoid onload to be overwritten\n if (key.toLowerCase() === 'onload') return\n img.setAttribute(key, value as string)\n })\n img.src = currentImageSrc\n}\n\nfunction handleLoad(e: Event, img: HTMLImageElement) {\n imgWidth.value = img.width\n imgHeight.value = img.height\n loading.value = false\n hasLoadError.value = false\n}\n\nfunction handleError(event: Event) {\n loading.value = false\n hasLoadError.value = true\n emit('error', event)\n}\n\nfunction handleLazyLoad() {\n if (isInContainer(container.value, _scrollContainer.value)) {\n loadImage()\n removeLazyLoadListener()\n }\n}\n\nconst lazyLoadHandler = useThrottleFn(handleLazyLoad, 200)\n\nasync function addLazyLoadListener() {\n if (!isClient) return\n\n await nextTick()\n\n const { scrollContainer } = props\n if (isElement(scrollContainer)) {\n _scrollContainer.value = scrollContainer\n } else if (isString(scrollContainer) && scrollContainer !== '') {\n _scrollContainer.value =\n document.querySelector<HTMLElement>(scrollContainer) ?? undefined\n } else if (container.value) {\n _scrollContainer.value = getScrollContainer(container.value)\n }\n\n if (_scrollContainer.value) {\n stopScrollListener = useEventListener(\n _scrollContainer,\n 'scroll',\n lazyLoadHandler\n )\n setTimeout(() => handleLazyLoad(), 100)\n }\n}\n\nfunction removeLazyLoadListener() {\n if (!isClient || !_scrollContainer.value || !lazyLoadHandler) return\n\n stopScrollListener()\n _scrollContainer.value = undefined\n}\n\nfunction wheelHandler(e: WheelEvent) {\n if (!e.ctrlKey) return\n\n if (e.deltaY < 0) {\n e.preventDefault()\n return false\n } else if (e.deltaY > 0) {\n e.preventDefault()\n return false\n }\n}\n\nfunction clickHandler() {\n // don't show viewer when preview is false\n if (!preview.value) return\n\n stopWheelListener = useEventListener('wheel', wheelHandler, {\n passive: false,\n })\n\n // prevent body scroll\n prevOverflow = document.body.style.overflow\n document.body.style.overflow = 'hidden'\n showViewer.value = true\n}\n\nfunction closeViewer() {\n stopWheelListener?.()\n document.body.style.overflow = prevOverflow\n showViewer.value = false\n emit('close')\n}\n\nfunction switchViewer(val: number) {\n emit('switch', val)\n}\n\nwatch(\n () => props.src,\n () => {\n if (props.lazy) {\n // reset status\n loading.value = true\n hasLoadError.value = false\n removeLazyLoadListener()\n addLazyLoadListener()\n } else {\n loadImage()\n }\n }\n)\n\nonMounted(() => {\n if (props.lazy) {\n addLazyLoadListener()\n } else {\n loadImage()\n }\n})\n</script>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"image2.mjs","sources":["../../../../../../packages/components/image/src/image.vue"],"sourcesContent":["<template>\n <div ref=\"container\" :class=\"[ns.b(), $attrs.class]\" :style=\"containerStyle\">\n <slot v-if=\"loading\" name=\"placeholder\">\n <div :class=\"ns.e('placeholder')\" />\n </slot>\n <slot v-else-if=\"hasLoadError\" name=\"error\">\n <div :class=\"ns.e('error')\">{{ t('el.image.error') }}</div>\n </slot>\n <img\n v-else\n v-bind=\"attrs\"\n :src=\"src\"\n :style=\"imageStyle\"\n :class=\"[ns.e('inner'), preview ? ns.e('preview') : '']\"\n @click=\"clickHandler\"\n />\n <template v-if=\"preview\">\n <image-viewer\n v-if=\"showViewer\"\n :z-index=\"zIndex\"\n :initial-index=\"imageIndex\"\n :infinite=\"infinite\"\n :url-list=\"previewSrcList\"\n :hide-on-click-modal=\"hideOnClickModal\"\n :teleported=\"teleported\"\n :close-on-press-escape=\"closeOnPressEscape\"\n @close=\"closeViewer\"\n @switch=\"switchViewer\"\n >\n <div v-if=\"$slots.viewer\">\n <slot name=\"viewer\" />\n </div>\n </image-viewer>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, onMounted, ref, watch } from 'vue'\nimport {\n isBoolean,\n isClient,\n useEventListener,\n useThrottleFn,\n} from '@vueuse/core'\nimport {\n useAttrs,\n useDeprecated,\n useLocale,\n useNamespace,\n} from '@element-plus/hooks'\nimport ImageViewer from '@element-plus/components/image-viewer'\nimport {\n getScrollContainer,\n isElement,\n isInContainer,\n isString,\n} from '@element-plus/utils'\nimport { imageEmits, imageProps } from './image'\n\nimport type { CSSProperties, StyleValue } from 'vue'\n\ndefineOptions({\n name: 'ElImage',\n})\n\nconst props = defineProps(imageProps)\nconst emit = defineEmits(imageEmits)\n\nlet prevOverflow = ''\n\nuseDeprecated(\n {\n scope: 'el-image',\n from: 'append-to-body',\n replacement: 'preview-teleported',\n version: '2.2.0',\n ref: 'https://element-plus.org/en-US/component/image.html#image-attributess',\n },\n computed(() => isBoolean(props.appendToBody))\n)\n\nconst { t } = useLocale()\nconst ns = useNamespace('image')\n\nconst attrs = useAttrs()\nconst hasLoadError = ref(false)\nconst loading = ref(true)\nconst imgWidth = ref(0)\nconst imgHeight = ref(0)\nconst showViewer = ref(false)\nconst container = ref<HTMLElement>()\n\nconst _scrollContainer = ref<HTMLElement | Window>()\nlet stopScrollListener: () => void\nlet stopWheelListener: () => void\n\nconst containerStyle = computed(() => attrs.value.style as StyleValue)\n\nconst imageStyle = computed<CSSProperties>(() => {\n const { fit } = props\n if (isClient && fit) {\n return { objectFit: fit }\n }\n return {}\n})\n\nconst preview = computed(() => {\n const { previewSrcList } = props\n return Array.isArray(previewSrcList) && previewSrcList.length > 0\n})\n\nconst teleported = computed(() => {\n return props.appendToBody || props.previewTeleported\n})\n\nconst imageIndex = computed(() => {\n const { previewSrcList, initialIndex } = props\n let previewIndex = initialIndex\n if (initialIndex > previewSrcList.length - 1) {\n previewIndex = 0\n }\n return previewIndex\n})\n\nconst loadImage = () => {\n if (!isClient) return\n\n // reset status\n loading.value = true\n hasLoadError.value = false\n\n const img = new Image()\n const currentImageSrc = props.src\n\n // load & error callbacks are only responsible for currentImageSrc\n img.addEventListener('load', (e) => {\n if (currentImageSrc !== props.src) {\n return\n }\n handleLoad(e, img)\n })\n img.addEventListener('error', (e) => {\n if (currentImageSrc !== props.src) {\n return\n }\n handleError(e)\n })\n\n // bind html attrs\n // so it can behave consistently\n Object.entries(attrs.value).forEach(([key, value]) => {\n // avoid onload to be overwritten\n if (key.toLowerCase() === 'onload') return\n img.setAttribute(key, value as string)\n })\n img.src = currentImageSrc\n}\n\nfunction handleLoad(e: Event, img: HTMLImageElement) {\n imgWidth.value = img.width\n imgHeight.value = img.height\n loading.value = false\n hasLoadError.value = false\n}\n\nfunction handleError(event: Event) {\n loading.value = false\n hasLoadError.value = true\n emit('error', event)\n}\n\nfunction handleLazyLoad() {\n if (isInContainer(container.value, _scrollContainer.value)) {\n loadImage()\n removeLazyLoadListener()\n }\n}\n\nconst lazyLoadHandler = useThrottleFn(handleLazyLoad, 200)\n\nasync function addLazyLoadListener() {\n if (!isClient) return\n\n await nextTick()\n\n const { scrollContainer } = props\n if (isElement(scrollContainer)) {\n _scrollContainer.value = scrollContainer\n } else if (isString(scrollContainer) && scrollContainer !== '') {\n _scrollContainer.value =\n document.querySelector<HTMLElement>(scrollContainer) ?? undefined\n } else if (container.value) {\n _scrollContainer.value = getScrollContainer(container.value)\n }\n\n if (_scrollContainer.value) {\n stopScrollListener = useEventListener(\n _scrollContainer,\n 'scroll',\n lazyLoadHandler\n )\n setTimeout(() => handleLazyLoad(), 100)\n }\n}\n\nfunction removeLazyLoadListener() {\n if (!isClient || !_scrollContainer.value || !lazyLoadHandler) return\n\n stopScrollListener()\n _scrollContainer.value = undefined\n}\n\nfunction wheelHandler(e: WheelEvent) {\n if (!e.ctrlKey) return\n\n if (e.deltaY < 0) {\n e.preventDefault()\n return false\n } else if (e.deltaY > 0) {\n e.preventDefault()\n return false\n }\n}\n\nfunction clickHandler() {\n // don't show viewer when preview is false\n if (!preview.value) return\n\n stopWheelListener = useEventListener('wheel', wheelHandler, {\n passive: false,\n })\n\n // prevent body scroll\n prevOverflow = document.body.style.overflow\n document.body.style.overflow = 'hidden'\n showViewer.value = true\n}\n\nfunction closeViewer() {\n stopWheelListener?.()\n document.body.style.overflow = prevOverflow\n showViewer.value = false\n emit('close')\n}\n\nfunction switchViewer(val: number) {\n emit('switch', val)\n}\n\nwatch(\n () => props.src,\n () => {\n if (props.lazy) {\n // reset status\n loading.value = true\n hasLoadError.value = false\n removeLazyLoadListener()\n addLazyLoadListener()\n } else {\n loadImage()\n }\n }\n)\n\nonMounted(() => {\n if (props.lazy) {\n addLazyLoadListener()\n } else {\n loadImage()\n }\n})\n</script>\n"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ export declare const ElImageViewer: import("element-plus/es/utils").SFCWithInsta
5
5
  readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
6
6
  readonly hideOnClickModal: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
7
7
  readonly teleported: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
8
+ readonly closeOnPressEscape: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
8
9
  }, {
9
10
  Mode: {
10
11
  CONTAIN: {
@@ -24,6 +25,7 @@ export declare const ElImageViewer: import("element-plus/es/utils").SFCWithInsta
24
25
  readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
25
26
  readonly hideOnClickModal: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
26
27
  readonly teleported: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
28
+ readonly closeOnPressEscape: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
27
29
  }>> & {
28
30
  onClose?: (() => any) | undefined;
29
31
  onSwitch?: ((index: number) => any) | undefined;
@@ -127,6 +129,7 @@ export declare const ElImageViewer: import("element-plus/es/utils").SFCWithInsta
127
129
  readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
128
130
  readonly hideOnClickModal: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
129
131
  readonly teleported: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
132
+ readonly closeOnPressEscape: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
130
133
  }>> & {
131
134
  onClose?: (() => any) | undefined;
132
135
  onSwitch?: ((index: number) => any) | undefined;
@@ -135,6 +138,7 @@ export declare const ElImageViewer: import("element-plus/es/utils").SFCWithInsta
135
138
  teleported: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
136
139
  infinite: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
137
140
  initialIndex: number;
141
+ closeOnPressEscape: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
138
142
  hideOnClickModal: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
139
143
  urlList: string[];
140
144
  }>> & Record<string, any>;
@@ -7,6 +7,7 @@ export declare const imageViewerProps: {
7
7
  readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
8
8
  readonly hideOnClickModal: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
9
9
  readonly teleported: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
10
+ readonly closeOnPressEscape: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
10
11
  };
11
12
  export declare type ImageViewerProps = ExtractPropTypes<typeof imageViewerProps>;
12
13
  export declare const imageViewerEmits: {
@@ -25,6 +25,10 @@ const imageViewerProps = buildProps({
25
25
  teleported: {
26
26
  type: Boolean,
27
27
  default: false
28
+ },
29
+ closeOnPressEscape: {
30
+ type: Boolean,
31
+ default: true
28
32
  }
29
33
  });
30
34
  const imageViewerEmits = {
@@ -1 +1 @@
1
- {"version":3,"file":"image-viewer.mjs","sources":["../../../../../../packages/components/image-viewer/src/image-viewer.ts"],"sourcesContent":["import { buildProps, definePropType, mutable } from '@element-plus/utils'\nimport type { ExtractPropTypes } from 'vue'\n\nexport type ImageViewerAction =\n | 'zoomIn'\n | 'zoomOut'\n | 'clockwise'\n | 'anticlockwise'\n\nexport const imageViewerProps = buildProps({\n urlList: {\n type: definePropType<string[]>(Array),\n default: () => mutable([] as const),\n },\n zIndex: {\n type: Number,\n },\n initialIndex: {\n type: Number,\n default: 0,\n },\n infinite: {\n type: Boolean,\n default: true,\n },\n hideOnClickModal: {\n type: Boolean,\n default: false,\n },\n teleported: {\n type: Boolean,\n default: false,\n },\n} as const)\nexport type ImageViewerProps = ExtractPropTypes<typeof imageViewerProps>\n\nexport const imageViewerEmits = {\n close: () => true,\n switch: (index: number) => typeof index === 'number',\n}\nexport type ImageViewerEmits = typeof imageViewerEmits\n"],"names":[],"mappings":";;;;AACY,MAAC,gBAAgB,GAAG,UAAU,CAAC;AAC3C,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,OAAO,CAAC,EAAE,CAAC;AAC9B,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,gBAAgB,EAAE;AACpB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,gBAAgB,GAAG;AAChC,EAAE,KAAK,EAAE,MAAM,IAAI;AACnB,EAAE,MAAM,EAAE,CAAC,KAAK,KAAK,OAAO,KAAK,KAAK,QAAQ;AAC9C;;;;"}
1
+ {"version":3,"file":"image-viewer.mjs","sources":["../../../../../../packages/components/image-viewer/src/image-viewer.ts"],"sourcesContent":["import { buildProps, definePropType, mutable } from '@element-plus/utils'\nimport type { ExtractPropTypes } from 'vue'\n\nexport type ImageViewerAction =\n | 'zoomIn'\n | 'zoomOut'\n | 'clockwise'\n | 'anticlockwise'\n\nexport const imageViewerProps = buildProps({\n urlList: {\n type: definePropType<string[]>(Array),\n default: () => mutable([] as const),\n },\n zIndex: {\n type: Number,\n },\n initialIndex: {\n type: Number,\n default: 0,\n },\n infinite: {\n type: Boolean,\n default: true,\n },\n hideOnClickModal: {\n type: Boolean,\n default: false,\n },\n teleported: {\n type: Boolean,\n default: false,\n },\n closeOnPressEscape: {\n type: Boolean,\n default: true,\n },\n} as const)\nexport type ImageViewerProps = ExtractPropTypes<typeof imageViewerProps>\n\nexport const imageViewerEmits = {\n close: () => true,\n switch: (index: number) => typeof index === 'number',\n}\nexport type ImageViewerEmits = typeof imageViewerEmits\n"],"names":[],"mappings":";;;;AACY,MAAC,gBAAgB,GAAG,UAAU,CAAC;AAC3C,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,OAAO,CAAC,EAAE,CAAC;AAC9B,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,gBAAgB,EAAE;AACpB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,kBAAkB,EAAE;AACtB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,gBAAgB,GAAG;AAChC,EAAE,KAAK,EAAE,MAAM,IAAI;AACnB,EAAE,MAAM,EAAE,CAAC,KAAK,KAAK,OAAO,KAAK,KAAK,QAAQ;AAC9C;;;;"}
@@ -7,6 +7,7 @@ declare const _default: import("vue").DefineComponent<{
7
7
  readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
8
8
  readonly hideOnClickModal: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
9
9
  readonly teleported: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
10
+ readonly closeOnPressEscape: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
10
11
  }, {
11
12
  Mode: {
12
13
  CONTAIN: {
@@ -26,6 +27,7 @@ declare const _default: import("vue").DefineComponent<{
26
27
  readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
27
28
  readonly hideOnClickModal: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
28
29
  readonly teleported: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
30
+ readonly closeOnPressEscape: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
29
31
  }>> & {
30
32
  onClose?: (() => any) | undefined;
31
33
  onSwitch?: ((index: number) => any) | undefined;
@@ -129,6 +131,7 @@ declare const _default: import("vue").DefineComponent<{
129
131
  readonly infinite: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
130
132
  readonly hideOnClickModal: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
131
133
  readonly teleported: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
134
+ readonly closeOnPressEscape: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, true, unknown, unknown, unknown>;
132
135
  }>> & {
133
136
  onClose?: (() => any) | undefined;
134
137
  onSwitch?: ((index: number) => any) | undefined;
@@ -137,6 +140,7 @@ declare const _default: import("vue").DefineComponent<{
137
140
  teleported: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
138
141
  infinite: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
139
142
  initialIndex: number;
143
+ closeOnPressEscape: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
140
144
  hideOnClickModal: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
141
145
  urlList: string[];
142
146
  }>;
@@ -105,7 +105,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
105
105
  const keydownHandler = throttle((e) => {
106
106
  switch (e.code) {
107
107
  case EVENT_CODE.esc:
108
- hide();
108
+ props.closeOnPressEscape && hide();
109
109
  break;
110
110
  case EVENT_CODE.space:
111
111
  toggleMode();
@@ -1 +1 @@
1
- {"version":3,"file":"image-viewer2.mjs","sources":["../../../../../../packages/components/image-viewer/src/image-viewer.vue"],"sourcesContent":["<template>\n <teleport to=\"body\" :disabled=\"!teleported\">\n <transition name=\"viewer-fade\" appear>\n <div\n ref=\"wrapper\"\n :tabindex=\"-1\"\n :class=\"ns.e('wrapper')\"\n :style=\"{ zIndex: computedZIndex }\"\n >\n <div :class=\"ns.e('mask')\" @click.self=\"hideOnClickModal && hide()\" />\n\n <!-- CLOSE -->\n <span :class=\"[ns.e('btn'), ns.e('close')]\" @click=\"hide\">\n <el-icon><Close /></el-icon>\n </span>\n\n <!-- ARROW -->\n <template v-if=\"!isSingle\">\n <span\n :class=\"[\n ns.e('btn'),\n ns.e('prev'),\n ns.is('disabled', !infinite && isFirst),\n ]\"\n @click=\"prev\"\n >\n <el-icon><ArrowLeft /></el-icon>\n </span>\n <span\n :class=\"[\n ns.e('btn'),\n ns.e('next'),\n ns.is('disabled', !infinite && isLast),\n ]\"\n @click=\"next\"\n >\n <el-icon><ArrowRight /></el-icon>\n </span>\n </template>\n <!-- ACTIONS -->\n <div :class=\"[ns.e('btn'), ns.e('actions')]\">\n <div :class=\"ns.e('actions__inner')\">\n <el-icon @click=\"handleActions('zoomOut')\">\n <ZoomOut />\n </el-icon>\n <el-icon @click=\"handleActions('zoomIn')\">\n <ZoomIn />\n </el-icon>\n <i :class=\"ns.e('actions__divider')\" />\n <el-icon @click=\"toggleMode\">\n <component :is=\"mode.icon\" />\n </el-icon>\n <i :class=\"ns.e('actions__divider')\" />\n <el-icon @click=\"handleActions('anticlockwise')\">\n <RefreshLeft />\n </el-icon>\n <el-icon @click=\"handleActions('clockwise')\">\n <RefreshRight />\n </el-icon>\n </div>\n </div>\n <!-- CANVAS -->\n <div :class=\"ns.e('canvas')\">\n <img\n v-for=\"(url, i) in urlList\"\n v-show=\"i === index\"\n :ref=\"(el) => (imgRefs[i] = el)\"\n :key=\"url\"\n :src=\"url\"\n :style=\"imgStyle\"\n :class=\"ns.e('img')\"\n @load=\"handleImgLoad\"\n @error=\"handleImgError\"\n @mousedown=\"handleMouseDown\"\n />\n </div>\n <slot />\n </div>\n </transition>\n </teleport>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n effectScope,\n markRaw,\n nextTick,\n onMounted,\n ref,\n watch,\n} from 'vue'\nimport { isNumber, useEventListener } from '@vueuse/core'\nimport { throttle } from 'lodash-unified'\nimport { useLocale, useNamespace, useZIndex } from '@element-plus/hooks'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { isFirefox } from '@element-plus/utils'\nimport ElIcon from '@element-plus/components/icon'\nimport {\n ArrowLeft,\n ArrowRight,\n Close,\n FullScreen,\n RefreshLeft,\n RefreshRight,\n ScaleToOriginal,\n ZoomIn,\n ZoomOut,\n} from '@element-plus/icons-vue'\nimport { imageViewerEmits, imageViewerProps } from './image-viewer'\n\nimport type { CSSProperties } from 'vue'\nimport type { ImageViewerAction } from './image-viewer'\n\nconst Mode = {\n CONTAIN: {\n name: 'contain',\n icon: markRaw(FullScreen),\n },\n ORIGINAL: {\n name: 'original',\n icon: markRaw(ScaleToOriginal),\n },\n}\n\nconst mousewheelEventName = isFirefox() ? 'DOMMouseScroll' : 'mousewheel'\n\ndefineOptions({\n name: 'ElImageViewer',\n})\n\nconst props = defineProps(imageViewerProps)\nconst emit = defineEmits(imageViewerEmits)\n\nconst { t } = useLocale()\nconst ns = useNamespace('image-viewer')\nconst { nextZIndex } = useZIndex()\nconst wrapper = ref<HTMLDivElement>()\nconst imgRefs = ref<any[]>([])\n\nconst scopeEventListener = effectScope()\n\nconst loading = ref(true)\nconst index = ref(props.initialIndex)\nconst mode = ref(Mode.CONTAIN)\nconst transform = ref({\n scale: 1,\n deg: 0,\n offsetX: 0,\n offsetY: 0,\n enableTransition: false,\n})\n\nconst isSingle = computed(() => {\n const { urlList } = props\n return urlList.length <= 1\n})\n\nconst isFirst = computed(() => {\n return index.value === 0\n})\n\nconst isLast = computed(() => {\n return index.value === props.urlList.length - 1\n})\n\nconst currentImg = computed(() => {\n return props.urlList[index.value]\n})\n\nconst imgStyle = computed(() => {\n const { scale, deg, offsetX, offsetY, enableTransition } = transform.value\n let translateX = offsetX / scale\n let translateY = offsetY / scale\n\n switch (deg % 360) {\n case 90:\n case -270:\n ;[translateX, translateY] = [translateY, -translateX]\n break\n case 180:\n case -180:\n ;[translateX, translateY] = [-translateX, -translateY]\n break\n case 270:\n case -90:\n ;[translateX, translateY] = [-translateY, translateX]\n break\n }\n\n const style: CSSProperties = {\n transform: `scale(${scale}) rotate(${deg}deg) translate(${translateX}px, ${translateY}px)`,\n transition: enableTransition ? 'transform .3s' : '',\n }\n if (mode.value.name === Mode.CONTAIN.name) {\n style.maxWidth = style.maxHeight = '100%'\n }\n return style\n})\n\nconst computedZIndex = computed(() => {\n return isNumber(props.zIndex) ? props.zIndex : nextZIndex()\n})\n\nfunction hide() {\n unregisterEventListener()\n emit('close')\n}\n\nfunction registerEventListener() {\n const keydownHandler = throttle((e: KeyboardEvent) => {\n switch (e.code) {\n // ESC\n case EVENT_CODE.esc:\n hide()\n break\n // SPACE\n case EVENT_CODE.space:\n toggleMode()\n break\n // LEFT_ARROW\n case EVENT_CODE.left:\n prev()\n break\n // UP_ARROW\n case EVENT_CODE.up:\n handleActions('zoomIn')\n break\n // RIGHT_ARROW\n case EVENT_CODE.right:\n next()\n break\n // DOWN_ARROW\n case EVENT_CODE.down:\n handleActions('zoomOut')\n break\n }\n })\n const mousewheelHandler = throttle(\n (e: WheelEvent | any /* TODO: wheelDelta is deprecated */) => {\n const delta = e.wheelDelta ? e.wheelDelta : -e.detail\n if (delta > 0) {\n handleActions('zoomIn', {\n zoomRate: 1.2,\n enableTransition: false,\n })\n } else {\n handleActions('zoomOut', {\n zoomRate: 1.2,\n enableTransition: false,\n })\n }\n }\n )\n\n scopeEventListener.run(() => {\n useEventListener(document, 'keydown', keydownHandler)\n useEventListener(document, mousewheelEventName, mousewheelHandler)\n })\n}\n\nfunction unregisterEventListener() {\n scopeEventListener.stop()\n}\n\nfunction handleImgLoad() {\n loading.value = false\n}\n\nfunction handleImgError(e: Event) {\n loading.value = false\n ;(e.target as HTMLImageElement).alt = t('el.image.error')\n}\n\nfunction handleMouseDown(e: MouseEvent) {\n if (loading.value || e.button !== 0 || !wrapper.value) return\n transform.value.enableTransition = false\n\n const { offsetX, offsetY } = transform.value\n const startX = e.pageX\n const startY = e.pageY\n\n const dragHandler = throttle((ev: MouseEvent) => {\n transform.value = {\n ...transform.value,\n offsetX: offsetX + ev.pageX - startX,\n offsetY: offsetY + ev.pageY - startY,\n }\n })\n const removeMousemove = useEventListener(document, 'mousemove', dragHandler)\n useEventListener(document, 'mouseup', () => {\n removeMousemove()\n })\n\n e.preventDefault()\n}\n\nfunction reset() {\n transform.value = {\n scale: 1,\n deg: 0,\n offsetX: 0,\n offsetY: 0,\n enableTransition: false,\n }\n}\n\nfunction toggleMode() {\n if (loading.value) return\n\n const modeNames = Object.keys(Mode)\n const modeValues = Object.values(Mode)\n const currentMode = mode.value.name\n const index = modeValues.findIndex((i) => i.name === currentMode)\n const nextIndex = (index + 1) % modeNames.length\n mode.value = Mode[modeNames[nextIndex]]\n reset()\n}\n\nfunction prev() {\n if (isFirst.value && !props.infinite) return\n const len = props.urlList.length\n index.value = (index.value - 1 + len) % len\n}\n\nfunction next() {\n if (isLast.value && !props.infinite) return\n const len = props.urlList.length\n index.value = (index.value + 1) % len\n}\n\nfunction handleActions(action: ImageViewerAction, options = {}) {\n if (loading.value) return\n const { zoomRate, rotateDeg, enableTransition } = {\n zoomRate: 1.4,\n rotateDeg: 90,\n enableTransition: true,\n ...options,\n }\n switch (action) {\n case 'zoomOut':\n if (transform.value.scale > 0.2) {\n transform.value.scale = Number.parseFloat(\n (transform.value.scale / zoomRate).toFixed(3)\n )\n }\n break\n case 'zoomIn':\n if (transform.value.scale < 7) {\n transform.value.scale = Number.parseFloat(\n (transform.value.scale * zoomRate).toFixed(3)\n )\n }\n break\n case 'clockwise':\n transform.value.deg += rotateDeg\n break\n case 'anticlockwise':\n transform.value.deg -= rotateDeg\n break\n }\n transform.value.enableTransition = enableTransition\n}\n\nwatch(currentImg, () => {\n nextTick(() => {\n const $img = imgRefs.value[0]\n if (!$img?.complete) {\n loading.value = true\n }\n })\n})\n\nwatch(index, (val) => {\n reset()\n emit('switch', val)\n})\n\nonMounted(() => {\n registerEventListener()\n // add tabindex then wrapper can be focusable via Javascript\n // focus wrapper so arrow key can't cause inner scroll behavior underneath\n wrapper.value?.focus?.()\n})\n</script>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"image-viewer2.mjs","sources":["../../../../../../packages/components/image-viewer/src/image-viewer.vue"],"sourcesContent":["<template>\n <teleport to=\"body\" :disabled=\"!teleported\">\n <transition name=\"viewer-fade\" appear>\n <div\n ref=\"wrapper\"\n :tabindex=\"-1\"\n :class=\"ns.e('wrapper')\"\n :style=\"{ zIndex: computedZIndex }\"\n >\n <div :class=\"ns.e('mask')\" @click.self=\"hideOnClickModal && hide()\" />\n\n <!-- CLOSE -->\n <span :class=\"[ns.e('btn'), ns.e('close')]\" @click=\"hide\">\n <el-icon><Close /></el-icon>\n </span>\n\n <!-- ARROW -->\n <template v-if=\"!isSingle\">\n <span\n :class=\"[\n ns.e('btn'),\n ns.e('prev'),\n ns.is('disabled', !infinite && isFirst),\n ]\"\n @click=\"prev\"\n >\n <el-icon><ArrowLeft /></el-icon>\n </span>\n <span\n :class=\"[\n ns.e('btn'),\n ns.e('next'),\n ns.is('disabled', !infinite && isLast),\n ]\"\n @click=\"next\"\n >\n <el-icon><ArrowRight /></el-icon>\n </span>\n </template>\n <!-- ACTIONS -->\n <div :class=\"[ns.e('btn'), ns.e('actions')]\">\n <div :class=\"ns.e('actions__inner')\">\n <el-icon @click=\"handleActions('zoomOut')\">\n <ZoomOut />\n </el-icon>\n <el-icon @click=\"handleActions('zoomIn')\">\n <ZoomIn />\n </el-icon>\n <i :class=\"ns.e('actions__divider')\" />\n <el-icon @click=\"toggleMode\">\n <component :is=\"mode.icon\" />\n </el-icon>\n <i :class=\"ns.e('actions__divider')\" />\n <el-icon @click=\"handleActions('anticlockwise')\">\n <RefreshLeft />\n </el-icon>\n <el-icon @click=\"handleActions('clockwise')\">\n <RefreshRight />\n </el-icon>\n </div>\n </div>\n <!-- CANVAS -->\n <div :class=\"ns.e('canvas')\">\n <img\n v-for=\"(url, i) in urlList\"\n v-show=\"i === index\"\n :ref=\"(el) => (imgRefs[i] = el)\"\n :key=\"url\"\n :src=\"url\"\n :style=\"imgStyle\"\n :class=\"ns.e('img')\"\n @load=\"handleImgLoad\"\n @error=\"handleImgError\"\n @mousedown=\"handleMouseDown\"\n />\n </div>\n <slot />\n </div>\n </transition>\n </teleport>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n effectScope,\n markRaw,\n nextTick,\n onMounted,\n ref,\n watch,\n} from 'vue'\nimport { isNumber, useEventListener } from '@vueuse/core'\nimport { throttle } from 'lodash-unified'\nimport { useLocale, useNamespace, useZIndex } from '@element-plus/hooks'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { isFirefox } from '@element-plus/utils'\nimport ElIcon from '@element-plus/components/icon'\nimport {\n ArrowLeft,\n ArrowRight,\n Close,\n FullScreen,\n RefreshLeft,\n RefreshRight,\n ScaleToOriginal,\n ZoomIn,\n ZoomOut,\n} from '@element-plus/icons-vue'\nimport { imageViewerEmits, imageViewerProps } from './image-viewer'\n\nimport type { CSSProperties } from 'vue'\nimport type { ImageViewerAction } from './image-viewer'\n\nconst Mode = {\n CONTAIN: {\n name: 'contain',\n icon: markRaw(FullScreen),\n },\n ORIGINAL: {\n name: 'original',\n icon: markRaw(ScaleToOriginal),\n },\n}\n\nconst mousewheelEventName = isFirefox() ? 'DOMMouseScroll' : 'mousewheel'\n\ndefineOptions({\n name: 'ElImageViewer',\n})\n\nconst props = defineProps(imageViewerProps)\nconst emit = defineEmits(imageViewerEmits)\n\nconst { t } = useLocale()\nconst ns = useNamespace('image-viewer')\nconst { nextZIndex } = useZIndex()\nconst wrapper = ref<HTMLDivElement>()\nconst imgRefs = ref<any[]>([])\n\nconst scopeEventListener = effectScope()\n\nconst loading = ref(true)\nconst index = ref(props.initialIndex)\nconst mode = ref(Mode.CONTAIN)\nconst transform = ref({\n scale: 1,\n deg: 0,\n offsetX: 0,\n offsetY: 0,\n enableTransition: false,\n})\n\nconst isSingle = computed(() => {\n const { urlList } = props\n return urlList.length <= 1\n})\n\nconst isFirst = computed(() => {\n return index.value === 0\n})\n\nconst isLast = computed(() => {\n return index.value === props.urlList.length - 1\n})\n\nconst currentImg = computed(() => {\n return props.urlList[index.value]\n})\n\nconst imgStyle = computed(() => {\n const { scale, deg, offsetX, offsetY, enableTransition } = transform.value\n let translateX = offsetX / scale\n let translateY = offsetY / scale\n\n switch (deg % 360) {\n case 90:\n case -270:\n ;[translateX, translateY] = [translateY, -translateX]\n break\n case 180:\n case -180:\n ;[translateX, translateY] = [-translateX, -translateY]\n break\n case 270:\n case -90:\n ;[translateX, translateY] = [-translateY, translateX]\n break\n }\n\n const style: CSSProperties = {\n transform: `scale(${scale}) rotate(${deg}deg) translate(${translateX}px, ${translateY}px)`,\n transition: enableTransition ? 'transform .3s' : '',\n }\n if (mode.value.name === Mode.CONTAIN.name) {\n style.maxWidth = style.maxHeight = '100%'\n }\n return style\n})\n\nconst computedZIndex = computed(() => {\n return isNumber(props.zIndex) ? props.zIndex : nextZIndex()\n})\n\nfunction hide() {\n unregisterEventListener()\n emit('close')\n}\n\nfunction registerEventListener() {\n const keydownHandler = throttle((e: KeyboardEvent) => {\n switch (e.code) {\n // ESC\n case EVENT_CODE.esc:\n props.closeOnPressEscape && hide()\n break\n // SPACE\n case EVENT_CODE.space:\n toggleMode()\n break\n // LEFT_ARROW\n case EVENT_CODE.left:\n prev()\n break\n // UP_ARROW\n case EVENT_CODE.up:\n handleActions('zoomIn')\n break\n // RIGHT_ARROW\n case EVENT_CODE.right:\n next()\n break\n // DOWN_ARROW\n case EVENT_CODE.down:\n handleActions('zoomOut')\n break\n }\n })\n const mousewheelHandler = throttle(\n (e: WheelEvent | any /* TODO: wheelDelta is deprecated */) => {\n const delta = e.wheelDelta ? e.wheelDelta : -e.detail\n if (delta > 0) {\n handleActions('zoomIn', {\n zoomRate: 1.2,\n enableTransition: false,\n })\n } else {\n handleActions('zoomOut', {\n zoomRate: 1.2,\n enableTransition: false,\n })\n }\n }\n )\n\n scopeEventListener.run(() => {\n useEventListener(document, 'keydown', keydownHandler)\n useEventListener(document, mousewheelEventName, mousewheelHandler)\n })\n}\n\nfunction unregisterEventListener() {\n scopeEventListener.stop()\n}\n\nfunction handleImgLoad() {\n loading.value = false\n}\n\nfunction handleImgError(e: Event) {\n loading.value = false\n ;(e.target as HTMLImageElement).alt = t('el.image.error')\n}\n\nfunction handleMouseDown(e: MouseEvent) {\n if (loading.value || e.button !== 0 || !wrapper.value) return\n transform.value.enableTransition = false\n\n const { offsetX, offsetY } = transform.value\n const startX = e.pageX\n const startY = e.pageY\n\n const dragHandler = throttle((ev: MouseEvent) => {\n transform.value = {\n ...transform.value,\n offsetX: offsetX + ev.pageX - startX,\n offsetY: offsetY + ev.pageY - startY,\n }\n })\n const removeMousemove = useEventListener(document, 'mousemove', dragHandler)\n useEventListener(document, 'mouseup', () => {\n removeMousemove()\n })\n\n e.preventDefault()\n}\n\nfunction reset() {\n transform.value = {\n scale: 1,\n deg: 0,\n offsetX: 0,\n offsetY: 0,\n enableTransition: false,\n }\n}\n\nfunction toggleMode() {\n if (loading.value) return\n\n const modeNames = Object.keys(Mode)\n const modeValues = Object.values(Mode)\n const currentMode = mode.value.name\n const index = modeValues.findIndex((i) => i.name === currentMode)\n const nextIndex = (index + 1) % modeNames.length\n mode.value = Mode[modeNames[nextIndex]]\n reset()\n}\n\nfunction prev() {\n if (isFirst.value && !props.infinite) return\n const len = props.urlList.length\n index.value = (index.value - 1 + len) % len\n}\n\nfunction next() {\n if (isLast.value && !props.infinite) return\n const len = props.urlList.length\n index.value = (index.value + 1) % len\n}\n\nfunction handleActions(action: ImageViewerAction, options = {}) {\n if (loading.value) return\n const { zoomRate, rotateDeg, enableTransition } = {\n zoomRate: 1.4,\n rotateDeg: 90,\n enableTransition: true,\n ...options,\n }\n switch (action) {\n case 'zoomOut':\n if (transform.value.scale > 0.2) {\n transform.value.scale = Number.parseFloat(\n (transform.value.scale / zoomRate).toFixed(3)\n )\n }\n break\n case 'zoomIn':\n if (transform.value.scale < 7) {\n transform.value.scale = Number.parseFloat(\n (transform.value.scale * zoomRate).toFixed(3)\n )\n }\n break\n case 'clockwise':\n transform.value.deg += rotateDeg\n break\n case 'anticlockwise':\n transform.value.deg -= rotateDeg\n break\n }\n transform.value.enableTransition = enableTransition\n}\n\nwatch(currentImg, () => {\n nextTick(() => {\n const $img = imgRefs.value[0]\n if (!$img?.complete) {\n loading.value = true\n }\n })\n})\n\nwatch(index, (val) => {\n reset()\n emit('switch', val)\n})\n\nonMounted(() => {\n registerEventListener()\n // add tabindex then wrapper can be focusable via Javascript\n // focus wrapper so arrow key can't cause inner scroll behavior underneath\n wrapper.value?.focus?.()\n})\n</script>\n"],"names":[],"mappings":"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"}
@@ -150,7 +150,7 @@ export { timePickerDefaultProps } from './time-picker/src/common/props.mjs';
150
150
  export { default as CommonPicker } from './time-picker/src/common/picker.mjs';
151
151
  export { default as TimePickPanel } from './time-picker/src/time-picker-com/panel-time-pick.mjs';
152
152
  export { timelineItemProps } from './timeline/src/timeline-item.mjs';
153
- export { useTooltipContentProps, useTooltipProps, useTooltipTriggerProps } from './tooltip/src/tooltip2.mjs';
153
+ export { useTooltipContentProps, useTooltipProps, useTooltipTriggerProps } from './tooltip/src/tooltip.mjs';
154
154
  export { TOOLTIP_INJECTION_KEY } from './tooltip/src/tokens.mjs';
155
155
  export { CHANGE_EVENT } from '../constants/event.mjs';
156
156
  export { genFileId, uploadBaseProps, uploadListTypes, uploadProps } from './upload/src/upload.mjs';
@@ -6,6 +6,8 @@ export declare const ElInput: import("element-plus/es/utils").SFCWithInstall<imp
6
6
  readonly resize: import("element-plus/es/utils").BuildPropReturn<StringConstructor, unknown, unknown, "none" | "both" | "horizontal" | "vertical", unknown>;
7
7
  readonly autosize: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("./src/input").InputAutoSize>, false, unknown, unknown, unknown>;
8
8
  readonly autocomplete: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "off", unknown, unknown, unknown>;
9
+ readonly formatter: import("element-plus/es/utils").BuildPropReturn<FunctionConstructor, unknown, unknown, unknown, unknown>;
10
+ readonly parser: import("element-plus/es/utils").BuildPropReturn<FunctionConstructor, unknown, unknown, unknown, unknown>;
9
11
  readonly placeholder: import("element-plus/es/utils").BuildPropReturn<StringConstructor, unknown, unknown, unknown, unknown>;
10
12
  readonly form: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "", unknown, unknown, unknown>;
11
13
  readonly readonly: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
@@ -31,6 +33,8 @@ export declare const ElInput: import("element-plus/es/utils").SFCWithInstall<imp
31
33
  readonly resize: import("element-plus/es/utils").BuildPropReturn<StringConstructor, unknown, unknown, "none" | "both" | "horizontal" | "vertical", unknown>;
32
34
  readonly autosize: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("./src/input").InputAutoSize>, false, unknown, unknown, unknown>;
33
35
  readonly autocomplete: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "off", unknown, unknown, unknown>;
36
+ readonly formatter: import("element-plus/es/utils").BuildPropReturn<FunctionConstructor, unknown, unknown, unknown, unknown>;
37
+ readonly parser: import("element-plus/es/utils").BuildPropReturn<FunctionConstructor, unknown, unknown, unknown, unknown>;
34
38
  readonly placeholder: import("element-plus/es/utils").BuildPropReturn<StringConstructor, unknown, unknown, unknown, unknown>;
35
39
  readonly form: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "", unknown, unknown, unknown>;
36
40
  readonly readonly: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
@@ -119,6 +123,8 @@ export declare const ElInput: import("element-plus/es/utils").SFCWithInstall<imp
119
123
  textLength: import("vue").ComputedRef<number>;
120
124
  inputExceed: import("vue").ComputedRef<boolean>;
121
125
  suffixVisible: import("vue").ComputedRef<boolean>;
126
+ recordCursor: () => void;
127
+ setCursor: () => void;
122
128
  resizeTextarea: () => void;
123
129
  setNativeInputValue: () => void;
124
130
  calcIconOffset: (place: "prefix" | "suffix") => void;
@@ -192,6 +198,8 @@ export declare const ElInput: import("element-plus/es/utils").SFCWithInstall<imp
192
198
  readonly resize: import("element-plus/es/utils").BuildPropReturn<StringConstructor, unknown, unknown, "none" | "both" | "horizontal" | "vertical", unknown>;
193
199
  readonly autosize: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("./src/input").InputAutoSize>, false, unknown, unknown, unknown>;
194
200
  readonly autocomplete: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "off", unknown, unknown, unknown>;
201
+ readonly formatter: import("element-plus/es/utils").BuildPropReturn<FunctionConstructor, unknown, unknown, unknown, unknown>;
202
+ readonly parser: import("element-plus/es/utils").BuildPropReturn<FunctionConstructor, unknown, unknown, unknown, unknown>;
195
203
  readonly placeholder: import("element-plus/es/utils").BuildPropReturn<StringConstructor, unknown, unknown, unknown, unknown>;
196
204
  readonly form: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "", unknown, unknown, unknown>;
197
205
  readonly readonly: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
@@ -226,6 +234,8 @@ export declare const ElInput: import("element-plus/es/utils").SFCWithInstall<imp
226
234
  resize: import("element-plus/es/utils").BuildPropType<StringConstructor, "none" | "both" | "horizontal" | "vertical", unknown>;
227
235
  autosize: import("./src/input").InputAutoSize;
228
236
  autocomplete: string;
237
+ formatter: Function;
238
+ parser: Function;
229
239
  placeholder: string;
230
240
  form: string;
231
241
  readonly: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;
@@ -12,6 +12,8 @@ export declare const inputProps: {
12
12
  readonly resize: import("element-plus/es/utils").BuildPropReturn<StringConstructor, unknown, unknown, "none" | "both" | "horizontal" | "vertical", unknown>;
13
13
  readonly autosize: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<InputAutoSize>, false, unknown, unknown, unknown>;
14
14
  readonly autocomplete: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "off", unknown, unknown, unknown>;
15
+ readonly formatter: import("element-plus/es/utils").BuildPropReturn<FunctionConstructor, unknown, unknown, unknown, unknown>;
16
+ readonly parser: import("element-plus/es/utils").BuildPropReturn<FunctionConstructor, unknown, unknown, unknown, unknown>;
15
17
  readonly placeholder: import("element-plus/es/utils").BuildPropReturn<StringConstructor, unknown, unknown, unknown, unknown>;
16
18
  readonly form: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "", unknown, unknown, unknown>;
17
19
  readonly readonly: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
@@ -35,6 +35,12 @@ const inputProps = buildProps({
35
35
  type: String,
36
36
  default: "off"
37
37
  },
38
+ formatter: {
39
+ type: Function
40
+ },
41
+ parser: {
42
+ type: Function
43
+ },
38
44
  placeholder: {
39
45
  type: String
40
46
  },
@@ -1 +1 @@
1
- {"version":3,"file":"input.mjs","sources":["../../../../../../packages/components/input/src/input.ts"],"sourcesContent":["import { isString } from '@vue/shared'\nimport {\n buildProps,\n definePropType,\n iconPropType,\n mutable,\n} from '@element-plus/utils'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { useSizeProp } from '@element-plus/hooks'\nimport type Input from './input.vue'\nimport type { ExtractPropTypes, StyleValue } from 'vue'\n\nexport type InputAutoSize = { minRows?: number; maxRows?: number } | boolean\n\nexport const inputProps = buildProps({\n size: useSizeProp,\n disabled: Boolean,\n modelValue: {\n type: definePropType<string | number | null | undefined>([\n String,\n Number,\n Object,\n ]),\n default: '',\n },\n type: {\n type: String,\n default: 'text',\n },\n resize: {\n type: String,\n values: ['none', 'both', 'horizontal', 'vertical'],\n },\n autosize: {\n type: definePropType<InputAutoSize>([Boolean, Object]),\n default: false,\n },\n autocomplete: {\n type: String,\n default: 'off',\n },\n placeholder: {\n type: String,\n },\n form: {\n type: String,\n default: '',\n },\n readonly: {\n type: Boolean,\n default: false,\n },\n clearable: {\n type: Boolean,\n default: false,\n },\n showPassword: {\n type: Boolean,\n default: false,\n },\n showWordLimit: {\n type: Boolean,\n default: false,\n },\n suffixIcon: {\n type: iconPropType,\n default: '',\n },\n prefixIcon: {\n type: iconPropType,\n default: '',\n },\n label: {\n type: String,\n },\n tabindex: {\n type: [Number, String],\n },\n validateEvent: {\n type: Boolean,\n default: true,\n },\n inputStyle: {\n type: definePropType<StyleValue>([Object, Array, String]),\n default: () => mutable({} as const),\n },\n} as const)\nexport type InputProps = ExtractPropTypes<typeof inputProps>\n\nexport const inputEmits = {\n [UPDATE_MODEL_EVENT]: (value: string) => isString(value),\n input: (value: string) => isString(value),\n change: (value: string) => isString(value),\n focus: (evt: FocusEvent) => evt instanceof FocusEvent,\n blur: (evt: FocusEvent) => evt instanceof FocusEvent,\n clear: () => true,\n mouseleave: (evt: MouseEvent) => evt instanceof MouseEvent,\n mouseenter: (evt: MouseEvent) => evt instanceof MouseEvent,\n // NOTE: when autofill by browser, the keydown event is instanceof Event, not KeyboardEvent\n // relative bug report https://github.com/element-plus/element-plus/issues/6665\n keydown: (evt: KeyboardEvent | Event) => evt instanceof Event,\n compositionstart: (evt: CompositionEvent) => evt instanceof CompositionEvent,\n compositionupdate: (evt: CompositionEvent) => evt instanceof CompositionEvent,\n compositionend: (evt: CompositionEvent) => evt instanceof CompositionEvent,\n}\nexport type InputEmits = typeof inputEmits\n\nexport type InputInstance = InstanceType<typeof Input>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"input.mjs","sources":["../../../../../../packages/components/input/src/input.ts"],"sourcesContent":["import { isString } from '@vue/shared'\nimport {\n buildProps,\n definePropType,\n iconPropType,\n mutable,\n} from '@element-plus/utils'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { useSizeProp } from '@element-plus/hooks'\nimport type Input from './input.vue'\nimport type { ExtractPropTypes, StyleValue } from 'vue'\n\nexport type InputAutoSize = { minRows?: number; maxRows?: number } | boolean\n\nexport const inputProps = buildProps({\n size: useSizeProp,\n disabled: Boolean,\n modelValue: {\n type: definePropType<string | number | null | undefined>([\n String,\n Number,\n Object,\n ]),\n default: '',\n },\n type: {\n type: String,\n default: 'text',\n },\n resize: {\n type: String,\n values: ['none', 'both', 'horizontal', 'vertical'],\n },\n autosize: {\n type: definePropType<InputAutoSize>([Boolean, Object]),\n default: false,\n },\n autocomplete: {\n type: String,\n default: 'off',\n },\n formatter: {\n type: Function,\n },\n parser: {\n type: Function,\n },\n placeholder: {\n type: String,\n },\n form: {\n type: String,\n default: '',\n },\n readonly: {\n type: Boolean,\n default: false,\n },\n clearable: {\n type: Boolean,\n default: false,\n },\n showPassword: {\n type: Boolean,\n default: false,\n },\n showWordLimit: {\n type: Boolean,\n default: false,\n },\n suffixIcon: {\n type: iconPropType,\n default: '',\n },\n prefixIcon: {\n type: iconPropType,\n default: '',\n },\n label: {\n type: String,\n },\n tabindex: {\n type: [Number, String],\n },\n validateEvent: {\n type: Boolean,\n default: true,\n },\n inputStyle: {\n type: definePropType<StyleValue>([Object, Array, String]),\n default: () => mutable({} as const),\n },\n} as const)\nexport type InputProps = ExtractPropTypes<typeof inputProps>\n\nexport const inputEmits = {\n [UPDATE_MODEL_EVENT]: (value: string) => isString(value),\n input: (value: string) => isString(value),\n change: (value: string) => isString(value),\n focus: (evt: FocusEvent) => evt instanceof FocusEvent,\n blur: (evt: FocusEvent) => evt instanceof FocusEvent,\n clear: () => true,\n mouseleave: (evt: MouseEvent) => evt instanceof MouseEvent,\n mouseenter: (evt: MouseEvent) => evt instanceof MouseEvent,\n // NOTE: when autofill by browser, the keydown event is instanceof Event, not KeyboardEvent\n // relative bug report https://github.com/element-plus/element-plus/issues/6665\n keydown: (evt: KeyboardEvent | Event) => evt instanceof Event,\n compositionstart: (evt: CompositionEvent) => evt instanceof CompositionEvent,\n compositionupdate: (evt: CompositionEvent) => evt instanceof CompositionEvent,\n compositionend: (evt: CompositionEvent) => evt instanceof CompositionEvent,\n}\nexport type InputEmits = typeof inputEmits\n\nexport type InputInstance = InstanceType<typeof Input>\n"],"names":[],"mappings":"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"}
@@ -7,6 +7,8 @@ declare const _default: import("vue").DefineComponent<{
7
7
  readonly resize: import("element-plus/es/utils").BuildPropReturn<StringConstructor, unknown, unknown, "none" | "both" | "horizontal" | "vertical", unknown>;
8
8
  readonly autosize: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("./input").InputAutoSize>, false, unknown, unknown, unknown>;
9
9
  readonly autocomplete: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "off", unknown, unknown, unknown>;
10
+ readonly formatter: import("element-plus/es/utils").BuildPropReturn<FunctionConstructor, unknown, unknown, unknown, unknown>;
11
+ readonly parser: import("element-plus/es/utils").BuildPropReturn<FunctionConstructor, unknown, unknown, unknown, unknown>;
10
12
  readonly placeholder: import("element-plus/es/utils").BuildPropReturn<StringConstructor, unknown, unknown, unknown, unknown>;
11
13
  readonly form: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "", unknown, unknown, unknown>;
12
14
  readonly readonly: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
@@ -32,6 +34,8 @@ declare const _default: import("vue").DefineComponent<{
32
34
  readonly resize: import("element-plus/es/utils").BuildPropReturn<StringConstructor, unknown, unknown, "none" | "both" | "horizontal" | "vertical", unknown>;
33
35
  readonly autosize: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("./input").InputAutoSize>, false, unknown, unknown, unknown>;
34
36
  readonly autocomplete: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "off", unknown, unknown, unknown>;
37
+ readonly formatter: import("element-plus/es/utils").BuildPropReturn<FunctionConstructor, unknown, unknown, unknown, unknown>;
38
+ readonly parser: import("element-plus/es/utils").BuildPropReturn<FunctionConstructor, unknown, unknown, unknown, unknown>;
35
39
  readonly placeholder: import("element-plus/es/utils").BuildPropReturn<StringConstructor, unknown, unknown, unknown, unknown>;
36
40
  readonly form: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "", unknown, unknown, unknown>;
37
41
  readonly readonly: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
@@ -120,6 +124,8 @@ declare const _default: import("vue").DefineComponent<{
120
124
  textLength: import("vue").ComputedRef<number>;
121
125
  inputExceed: import("vue").ComputedRef<boolean>;
122
126
  suffixVisible: import("vue").ComputedRef<boolean>;
127
+ recordCursor: () => void;
128
+ setCursor: () => void;
123
129
  resizeTextarea: () => void;
124
130
  setNativeInputValue: () => void;
125
131
  calcIconOffset: (place: 'prefix' | 'suffix') => void;
@@ -193,6 +199,8 @@ declare const _default: import("vue").DefineComponent<{
193
199
  readonly resize: import("element-plus/es/utils").BuildPropReturn<StringConstructor, unknown, unknown, "none" | "both" | "horizontal" | "vertical", unknown>;
194
200
  readonly autosize: import("element-plus/es/utils").BuildPropReturn<import("element-plus/es/utils").PropWrapper<import("./input").InputAutoSize>, false, unknown, unknown, unknown>;
195
201
  readonly autocomplete: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "off", unknown, unknown, unknown>;
202
+ readonly formatter: import("element-plus/es/utils").BuildPropReturn<FunctionConstructor, unknown, unknown, unknown, unknown>;
203
+ readonly parser: import("element-plus/es/utils").BuildPropReturn<FunctionConstructor, unknown, unknown, unknown, unknown>;
196
204
  readonly placeholder: import("element-plus/es/utils").BuildPropReturn<StringConstructor, unknown, unknown, unknown, unknown>;
197
205
  readonly form: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "", unknown, unknown, unknown>;
198
206
  readonly readonly: import("element-plus/es/utils").BuildPropReturn<BooleanConstructor, false, unknown, unknown, unknown>;
@@ -227,6 +235,8 @@ declare const _default: import("vue").DefineComponent<{
227
235
  resize: import("element-plus/es/utils").BuildPropType<StringConstructor, "none" | "both" | "horizontal" | "vertical", unknown>;
228
236
  autosize: import("./input").InputAutoSize;
229
237
  autocomplete: string;
238
+ formatter: Function;
239
+ parser: Function;
230
240
  placeholder: string;
231
241
  form: string;
232
242
  readonly: import("element-plus/es/utils").BuildPropType<BooleanConstructor, unknown, unknown>;