@element-plus/nightly 0.0.20240411 → 0.0.20240412

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 (428) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.full.js +116 -38
  3. package/dist/index.full.min.js +22 -22
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +18 -18
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +112 -39
  8. package/dist/locale/af.js +1 -1
  9. package/dist/locale/af.min.js +1 -1
  10. package/dist/locale/af.min.mjs +1 -1
  11. package/dist/locale/af.mjs +1 -1
  12. package/dist/locale/ar-eg.js +1 -1
  13. package/dist/locale/ar-eg.min.js +1 -1
  14. package/dist/locale/ar-eg.min.mjs +1 -1
  15. package/dist/locale/ar-eg.mjs +1 -1
  16. package/dist/locale/ar.js +1 -1
  17. package/dist/locale/ar.min.js +1 -1
  18. package/dist/locale/ar.min.mjs +1 -1
  19. package/dist/locale/ar.mjs +1 -1
  20. package/dist/locale/az.js +1 -1
  21. package/dist/locale/az.min.js +1 -1
  22. package/dist/locale/az.min.mjs +1 -1
  23. package/dist/locale/az.mjs +1 -1
  24. package/dist/locale/bg.js +1 -1
  25. package/dist/locale/bg.min.js +1 -1
  26. package/dist/locale/bg.min.mjs +1 -1
  27. package/dist/locale/bg.mjs +1 -1
  28. package/dist/locale/bn.js +1 -1
  29. package/dist/locale/bn.min.js +1 -1
  30. package/dist/locale/bn.min.mjs +1 -1
  31. package/dist/locale/bn.mjs +1 -1
  32. package/dist/locale/ca.js +1 -1
  33. package/dist/locale/ca.min.js +1 -1
  34. package/dist/locale/ca.min.mjs +1 -1
  35. package/dist/locale/ca.mjs +1 -1
  36. package/dist/locale/ckb.js +1 -1
  37. package/dist/locale/ckb.min.js +1 -1
  38. package/dist/locale/ckb.min.mjs +1 -1
  39. package/dist/locale/ckb.mjs +1 -1
  40. package/dist/locale/cs.js +1 -1
  41. package/dist/locale/cs.min.js +1 -1
  42. package/dist/locale/cs.min.mjs +1 -1
  43. package/dist/locale/cs.mjs +1 -1
  44. package/dist/locale/da.js +1 -1
  45. package/dist/locale/da.min.js +1 -1
  46. package/dist/locale/da.min.mjs +1 -1
  47. package/dist/locale/da.mjs +1 -1
  48. package/dist/locale/de.js +1 -1
  49. package/dist/locale/de.min.js +1 -1
  50. package/dist/locale/de.min.mjs +1 -1
  51. package/dist/locale/de.mjs +1 -1
  52. package/dist/locale/el.js +1 -1
  53. package/dist/locale/el.min.js +1 -1
  54. package/dist/locale/el.min.mjs +1 -1
  55. package/dist/locale/el.mjs +1 -1
  56. package/dist/locale/en.js +1 -1
  57. package/dist/locale/en.min.js +1 -1
  58. package/dist/locale/en.min.mjs +1 -1
  59. package/dist/locale/en.mjs +1 -1
  60. package/dist/locale/eo.js +1 -1
  61. package/dist/locale/eo.min.js +1 -1
  62. package/dist/locale/eo.min.mjs +1 -1
  63. package/dist/locale/eo.mjs +1 -1
  64. package/dist/locale/es.js +1 -1
  65. package/dist/locale/es.min.js +1 -1
  66. package/dist/locale/es.min.mjs +1 -1
  67. package/dist/locale/es.mjs +1 -1
  68. package/dist/locale/et.js +1 -1
  69. package/dist/locale/et.min.js +1 -1
  70. package/dist/locale/et.min.mjs +1 -1
  71. package/dist/locale/et.mjs +1 -1
  72. package/dist/locale/eu.js +1 -1
  73. package/dist/locale/eu.min.js +1 -1
  74. package/dist/locale/eu.min.mjs +1 -1
  75. package/dist/locale/eu.mjs +1 -1
  76. package/dist/locale/fa.js +1 -1
  77. package/dist/locale/fa.min.js +1 -1
  78. package/dist/locale/fa.min.mjs +1 -1
  79. package/dist/locale/fa.mjs +1 -1
  80. package/dist/locale/fi.js +1 -1
  81. package/dist/locale/fi.min.js +1 -1
  82. package/dist/locale/fi.min.mjs +1 -1
  83. package/dist/locale/fi.mjs +1 -1
  84. package/dist/locale/fr.js +1 -1
  85. package/dist/locale/fr.min.js +1 -1
  86. package/dist/locale/fr.min.mjs +1 -1
  87. package/dist/locale/fr.mjs +1 -1
  88. package/dist/locale/he.js +1 -1
  89. package/dist/locale/he.min.js +1 -1
  90. package/dist/locale/he.min.mjs +1 -1
  91. package/dist/locale/he.mjs +1 -1
  92. package/dist/locale/hr.js +1 -1
  93. package/dist/locale/hr.min.js +1 -1
  94. package/dist/locale/hr.min.mjs +1 -1
  95. package/dist/locale/hr.mjs +1 -1
  96. package/dist/locale/hu.js +1 -1
  97. package/dist/locale/hu.min.js +1 -1
  98. package/dist/locale/hu.min.mjs +1 -1
  99. package/dist/locale/hu.mjs +1 -1
  100. package/dist/locale/hy-am.js +1 -1
  101. package/dist/locale/hy-am.min.js +1 -1
  102. package/dist/locale/hy-am.min.mjs +1 -1
  103. package/dist/locale/hy-am.mjs +1 -1
  104. package/dist/locale/id.js +1 -1
  105. package/dist/locale/id.min.js +1 -1
  106. package/dist/locale/id.min.mjs +1 -1
  107. package/dist/locale/id.mjs +1 -1
  108. package/dist/locale/it.js +1 -1
  109. package/dist/locale/it.min.js +1 -1
  110. package/dist/locale/it.min.mjs +1 -1
  111. package/dist/locale/it.mjs +1 -1
  112. package/dist/locale/ja.js +1 -1
  113. package/dist/locale/ja.min.js +1 -1
  114. package/dist/locale/ja.min.mjs +1 -1
  115. package/dist/locale/ja.mjs +1 -1
  116. package/dist/locale/kk.js +1 -1
  117. package/dist/locale/kk.min.js +1 -1
  118. package/dist/locale/kk.min.mjs +1 -1
  119. package/dist/locale/kk.mjs +1 -1
  120. package/dist/locale/km.js +1 -1
  121. package/dist/locale/km.min.js +1 -1
  122. package/dist/locale/km.min.mjs +1 -1
  123. package/dist/locale/km.mjs +1 -1
  124. package/dist/locale/ko.js +1 -1
  125. package/dist/locale/ko.min.js +1 -1
  126. package/dist/locale/ko.min.mjs +1 -1
  127. package/dist/locale/ko.mjs +1 -1
  128. package/dist/locale/ku.js +1 -1
  129. package/dist/locale/ku.min.js +1 -1
  130. package/dist/locale/ku.min.mjs +1 -1
  131. package/dist/locale/ku.mjs +1 -1
  132. package/dist/locale/ky.js +1 -1
  133. package/dist/locale/ky.min.js +1 -1
  134. package/dist/locale/ky.min.mjs +1 -1
  135. package/dist/locale/ky.mjs +1 -1
  136. package/dist/locale/lt.js +1 -1
  137. package/dist/locale/lt.min.js +1 -1
  138. package/dist/locale/lt.min.mjs +1 -1
  139. package/dist/locale/lt.mjs +1 -1
  140. package/dist/locale/lv.js +1 -1
  141. package/dist/locale/lv.min.js +1 -1
  142. package/dist/locale/lv.min.mjs +1 -1
  143. package/dist/locale/lv.mjs +1 -1
  144. package/dist/locale/mg.js +1 -1
  145. package/dist/locale/mg.min.js +1 -1
  146. package/dist/locale/mg.min.mjs +1 -1
  147. package/dist/locale/mg.mjs +1 -1
  148. package/dist/locale/mn.js +1 -1
  149. package/dist/locale/mn.min.js +1 -1
  150. package/dist/locale/mn.min.mjs +1 -1
  151. package/dist/locale/mn.mjs +1 -1
  152. package/dist/locale/nb-no.js +1 -1
  153. package/dist/locale/nb-no.min.js +1 -1
  154. package/dist/locale/nb-no.min.mjs +1 -1
  155. package/dist/locale/nb-no.mjs +1 -1
  156. package/dist/locale/nl.js +1 -1
  157. package/dist/locale/nl.min.js +1 -1
  158. package/dist/locale/nl.min.mjs +1 -1
  159. package/dist/locale/nl.mjs +1 -1
  160. package/dist/locale/pa.js +1 -1
  161. package/dist/locale/pa.min.js +1 -1
  162. package/dist/locale/pa.min.mjs +1 -1
  163. package/dist/locale/pa.mjs +1 -1
  164. package/dist/locale/pl.js +1 -1
  165. package/dist/locale/pl.min.js +1 -1
  166. package/dist/locale/pl.min.mjs +1 -1
  167. package/dist/locale/pl.mjs +1 -1
  168. package/dist/locale/pt-br.js +1 -1
  169. package/dist/locale/pt-br.min.js +1 -1
  170. package/dist/locale/pt-br.min.mjs +1 -1
  171. package/dist/locale/pt-br.mjs +1 -1
  172. package/dist/locale/pt.js +1 -1
  173. package/dist/locale/pt.min.js +1 -1
  174. package/dist/locale/pt.min.mjs +1 -1
  175. package/dist/locale/pt.mjs +1 -1
  176. package/dist/locale/ro.js +1 -1
  177. package/dist/locale/ro.min.js +1 -1
  178. package/dist/locale/ro.min.mjs +1 -1
  179. package/dist/locale/ro.mjs +1 -1
  180. package/dist/locale/ru.js +1 -1
  181. package/dist/locale/ru.min.js +1 -1
  182. package/dist/locale/ru.min.mjs +1 -1
  183. package/dist/locale/ru.mjs +1 -1
  184. package/dist/locale/sk.js +1 -1
  185. package/dist/locale/sk.min.js +1 -1
  186. package/dist/locale/sk.min.mjs +1 -1
  187. package/dist/locale/sk.mjs +1 -1
  188. package/dist/locale/sl.js +1 -1
  189. package/dist/locale/sl.min.js +1 -1
  190. package/dist/locale/sl.min.mjs +1 -1
  191. package/dist/locale/sl.mjs +1 -1
  192. package/dist/locale/sr.js +1 -1
  193. package/dist/locale/sr.min.js +1 -1
  194. package/dist/locale/sr.min.mjs +1 -1
  195. package/dist/locale/sr.mjs +1 -1
  196. package/dist/locale/sv.js +1 -1
  197. package/dist/locale/sv.min.js +1 -1
  198. package/dist/locale/sv.min.mjs +1 -1
  199. package/dist/locale/sv.mjs +1 -1
  200. package/dist/locale/sw.js +1 -1
  201. package/dist/locale/sw.min.js +1 -1
  202. package/dist/locale/sw.min.mjs +1 -1
  203. package/dist/locale/sw.mjs +1 -1
  204. package/dist/locale/ta.js +1 -1
  205. package/dist/locale/ta.min.js +1 -1
  206. package/dist/locale/ta.min.mjs +1 -1
  207. package/dist/locale/ta.mjs +1 -1
  208. package/dist/locale/th.js +1 -1
  209. package/dist/locale/th.min.js +1 -1
  210. package/dist/locale/th.min.mjs +1 -1
  211. package/dist/locale/th.mjs +1 -1
  212. package/dist/locale/tk.js +1 -1
  213. package/dist/locale/tk.min.js +1 -1
  214. package/dist/locale/tk.min.mjs +1 -1
  215. package/dist/locale/tk.mjs +1 -1
  216. package/dist/locale/tr.js +1 -1
  217. package/dist/locale/tr.min.js +1 -1
  218. package/dist/locale/tr.min.mjs +1 -1
  219. package/dist/locale/tr.mjs +1 -1
  220. package/dist/locale/ug-cn.js +1 -1
  221. package/dist/locale/ug-cn.min.js +1 -1
  222. package/dist/locale/ug-cn.min.mjs +1 -1
  223. package/dist/locale/ug-cn.mjs +1 -1
  224. package/dist/locale/uk.js +1 -1
  225. package/dist/locale/uk.min.js +1 -1
  226. package/dist/locale/uk.min.mjs +1 -1
  227. package/dist/locale/uk.mjs +1 -1
  228. package/dist/locale/uz-uz.js +1 -1
  229. package/dist/locale/uz-uz.min.js +1 -1
  230. package/dist/locale/uz-uz.min.mjs +1 -1
  231. package/dist/locale/uz-uz.mjs +1 -1
  232. package/dist/locale/vi.js +1 -1
  233. package/dist/locale/vi.min.js +1 -1
  234. package/dist/locale/vi.min.mjs +1 -1
  235. package/dist/locale/vi.mjs +1 -1
  236. package/dist/locale/zh-cn.js +1 -1
  237. package/dist/locale/zh-cn.min.js +1 -1
  238. package/dist/locale/zh-cn.min.mjs +1 -1
  239. package/dist/locale/zh-cn.mjs +1 -1
  240. package/dist/locale/zh-tw.js +1 -1
  241. package/dist/locale/zh-tw.min.js +1 -1
  242. package/dist/locale/zh-tw.min.mjs +1 -1
  243. package/dist/locale/zh-tw.mjs +1 -1
  244. package/es/components/badge/index.d.ts +41 -0
  245. package/es/components/badge/src/badge.d.ts +14 -1
  246. package/es/components/badge/src/badge.mjs +12 -2
  247. package/es/components/badge/src/badge.mjs.map +1 -1
  248. package/es/components/badge/src/badge.vue.d.ts +42 -0
  249. package/es/components/badge/src/badge2.mjs +15 -2
  250. package/es/components/badge/src/badge2.mjs.map +1 -1
  251. package/es/components/cascader/index.d.ts +30 -14
  252. package/es/components/cascader/src/cascader.d.ts +4 -2
  253. package/es/components/cascader/src/cascader.mjs +5 -3
  254. package/es/components/cascader/src/cascader.mjs.map +1 -1
  255. package/es/components/cascader/src/cascader.vue.d.ts +15 -7
  256. package/es/components/cascader/src/cascader2.mjs +5 -2
  257. package/es/components/cascader/src/cascader2.mjs.map +1 -1
  258. package/es/components/config-provider/index.d.ts +6 -1
  259. package/es/components/config-provider/src/config-provider-props.d.ts +2 -0
  260. package/es/components/config-provider/src/config-provider-props.mjs +3 -1
  261. package/es/components/config-provider/src/config-provider-props.mjs.map +1 -1
  262. package/es/components/config-provider/src/config-provider.d.ts +6 -1
  263. package/es/components/config-provider/src/hooks/use-global-config.mjs +1 -2
  264. package/es/components/config-provider/src/hooks/use-global-config.mjs.map +1 -1
  265. package/es/components/date-picker/index.d.ts +10 -0
  266. package/es/components/date-picker/src/date-picker.d.ts +5 -0
  267. package/es/components/date-picker/src/props/date-picker.d.ts +2 -0
  268. package/es/components/icon/index.mjs +2 -2
  269. package/es/components/icon/src/icon.mjs +8 -36
  270. package/es/components/icon/src/icon.mjs.map +1 -1
  271. package/es/components/icon/src/icon2.mjs +36 -8
  272. package/es/components/icon/src/icon2.mjs.map +1 -1
  273. package/es/components/index.mjs +3 -3
  274. package/es/components/input-number/index.d.ts +1 -1
  275. package/es/components/input-number/src/input-number.vue.d.ts +1 -1
  276. package/es/components/message/index.mjs +1 -1
  277. package/es/components/message/src/message.mjs +149 -91
  278. package/es/components/message/src/message.mjs.map +1 -1
  279. package/es/components/message/src/message.vue.d.ts +41 -0
  280. package/es/components/message/src/message2.mjs +91 -149
  281. package/es/components/message/src/message2.mjs.map +1 -1
  282. package/es/components/message/src/method.mjs +2 -2
  283. package/es/components/pagination/src/components/sizes.vue.d.ts +5 -0
  284. package/es/components/select/index.d.ts +5 -0
  285. package/es/components/select/src/select.d.ts +2 -0
  286. package/es/components/select/src/select.mjs +3 -1
  287. package/es/components/select/src/select.mjs.map +1 -1
  288. package/es/components/select/src/select.vue.d.ts +5 -0
  289. package/es/components/select/src/useSelect.mjs +7 -6
  290. package/es/components/select/src/useSelect.mjs.map +1 -1
  291. package/es/components/select-v2/index.d.ts +10 -0
  292. package/es/components/select-v2/src/defaults.d.ts +2 -0
  293. package/es/components/select-v2/src/defaults.mjs +3 -1
  294. package/es/components/select-v2/src/defaults.mjs.map +1 -1
  295. package/es/components/select-v2/src/select.vue.d.ts +5 -0
  296. package/es/components/select-v2/src/useSelect.mjs +9 -8
  297. package/es/components/select-v2/src/useSelect.mjs.map +1 -1
  298. package/es/components/slider/index.d.ts +1 -1
  299. package/es/components/slider/src/slider.vue.d.ts +1 -1
  300. package/es/components/table/src/table-body/index.mjs +7 -4
  301. package/es/components/table/src/table-body/index.mjs.map +1 -1
  302. package/es/components/time-picker/index.d.ts +10 -0
  303. package/es/components/time-picker/src/common/picker.mjs +6 -4
  304. package/es/components/time-picker/src/common/picker.mjs.map +1 -1
  305. package/es/components/time-picker/src/common/picker.vue.d.ts +8 -0
  306. package/es/components/time-picker/src/common/props.d.ts +2 -30
  307. package/es/components/time-picker/src/common/props.mjs +3 -1
  308. package/es/components/time-picker/src/common/props.mjs.map +1 -1
  309. package/es/components/time-picker/src/time-picker.d.ts +5 -0
  310. package/es/components/time-select/index.d.ts +34 -0
  311. package/es/components/time-select/index.mjs +1 -1
  312. package/es/components/time-select/src/time-select.d.ts +2 -0
  313. package/es/components/time-select/src/time-select.mjs +51 -121
  314. package/es/components/time-select/src/time-select.mjs.map +1 -1
  315. package/es/components/time-select/src/time-select.vue.d.ts +17 -0
  316. package/es/components/time-select/src/time-select2.mjs +122 -48
  317. package/es/components/time-select/src/time-select2.mjs.map +1 -1
  318. package/es/components/upload/index.mjs +1 -1
  319. package/es/components/upload/src/upload-content.mjs +194 -33
  320. package/es/components/upload/src/upload-content.mjs.map +1 -1
  321. package/es/components/upload/src/upload-content2.mjs +33 -194
  322. package/es/components/upload/src/upload-content2.mjs.map +1 -1
  323. package/es/components/upload/src/upload2.mjs +1 -1
  324. package/es/hooks/index.d.ts +1 -0
  325. package/es/hooks/index.mjs +1 -0
  326. package/es/hooks/index.mjs.map +1 -1
  327. package/es/hooks/use-empty-values/index.d.ts +13 -0
  328. package/es/hooks/use-empty-values/index.mjs +50 -0
  329. package/es/hooks/use-empty-values/index.mjs.map +1 -0
  330. package/es/index.mjs +4 -3
  331. package/es/index.mjs.map +1 -1
  332. package/es/version.d.ts +1 -1
  333. package/es/version.mjs +1 -1
  334. package/es/version.mjs.map +1 -1
  335. package/lib/components/badge/index.d.ts +41 -0
  336. package/lib/components/badge/src/badge.d.ts +14 -1
  337. package/lib/components/badge/src/badge.js +11 -1
  338. package/lib/components/badge/src/badge.js.map +1 -1
  339. package/lib/components/badge/src/badge.vue.d.ts +42 -0
  340. package/lib/components/badge/src/badge2.js +15 -2
  341. package/lib/components/badge/src/badge2.js.map +1 -1
  342. package/lib/components/cascader/index.d.ts +30 -14
  343. package/lib/components/cascader/src/cascader.d.ts +4 -2
  344. package/lib/components/cascader/src/cascader.js +5 -3
  345. package/lib/components/cascader/src/cascader.js.map +1 -1
  346. package/lib/components/cascader/src/cascader.vue.d.ts +15 -7
  347. package/lib/components/cascader/src/cascader2.js +23 -20
  348. package/lib/components/cascader/src/cascader2.js.map +1 -1
  349. package/lib/components/config-provider/index.d.ts +6 -1
  350. package/lib/components/config-provider/src/config-provider-props.d.ts +2 -0
  351. package/lib/components/config-provider/src/config-provider-props.js +3 -1
  352. package/lib/components/config-provider/src/config-provider-props.js.map +1 -1
  353. package/lib/components/config-provider/src/config-provider.d.ts +6 -1
  354. package/lib/components/config-provider/src/hooks/use-global-config.js +1 -2
  355. package/lib/components/config-provider/src/hooks/use-global-config.js.map +1 -1
  356. package/lib/components/date-picker/index.d.ts +10 -0
  357. package/lib/components/date-picker/src/date-picker.d.ts +5 -0
  358. package/lib/components/date-picker/src/props/date-picker.d.ts +2 -0
  359. package/lib/components/icon/index.js +2 -2
  360. package/lib/components/icon/src/icon.js +8 -36
  361. package/lib/components/icon/src/icon.js.map +1 -1
  362. package/lib/components/icon/src/icon2.js +36 -8
  363. package/lib/components/icon/src/icon2.js.map +1 -1
  364. package/lib/components/index.js +3 -3
  365. package/lib/components/input-number/index.d.ts +1 -1
  366. package/lib/components/input-number/src/input-number.vue.d.ts +1 -1
  367. package/lib/components/message/index.js +1 -1
  368. package/lib/components/message/src/message.js +148 -93
  369. package/lib/components/message/src/message.js.map +1 -1
  370. package/lib/components/message/src/message.vue.d.ts +41 -0
  371. package/lib/components/message/src/message2.js +93 -148
  372. package/lib/components/message/src/message2.js.map +1 -1
  373. package/lib/components/message/src/method.js +2 -2
  374. package/lib/components/pagination/src/components/sizes.vue.d.ts +5 -0
  375. package/lib/components/select/index.d.ts +5 -0
  376. package/lib/components/select/src/select.d.ts +2 -0
  377. package/lib/components/select/src/select.js +3 -1
  378. package/lib/components/select/src/select.js.map +1 -1
  379. package/lib/components/select/src/select.vue.d.ts +5 -0
  380. package/lib/components/select/src/useSelect.js +6 -5
  381. package/lib/components/select/src/useSelect.js.map +1 -1
  382. package/lib/components/select-v2/index.d.ts +10 -0
  383. package/lib/components/select-v2/src/defaults.d.ts +2 -0
  384. package/lib/components/select-v2/src/defaults.js +3 -1
  385. package/lib/components/select-v2/src/defaults.js.map +1 -1
  386. package/lib/components/select-v2/src/select.vue.d.ts +5 -0
  387. package/lib/components/select-v2/src/useSelect.js +10 -9
  388. package/lib/components/select-v2/src/useSelect.js.map +1 -1
  389. package/lib/components/slider/index.d.ts +1 -1
  390. package/lib/components/slider/src/slider.vue.d.ts +1 -1
  391. package/lib/components/table/src/table-body/index.js +7 -4
  392. package/lib/components/table/src/table-body/index.js.map +1 -1
  393. package/lib/components/time-picker/index.d.ts +10 -0
  394. package/lib/components/time-picker/src/common/picker.js +15 -13
  395. package/lib/components/time-picker/src/common/picker.js.map +1 -1
  396. package/lib/components/time-picker/src/common/picker.vue.d.ts +8 -0
  397. package/lib/components/time-picker/src/common/props.d.ts +2 -30
  398. package/lib/components/time-picker/src/common/props.js +3 -1
  399. package/lib/components/time-picker/src/common/props.js.map +1 -1
  400. package/lib/components/time-picker/src/time-picker.d.ts +5 -0
  401. package/lib/components/time-select/index.d.ts +34 -0
  402. package/lib/components/time-select/index.js +1 -1
  403. package/lib/components/time-select/src/time-select.d.ts +2 -0
  404. package/lib/components/time-select/src/time-select.js +51 -126
  405. package/lib/components/time-select/src/time-select.js.map +1 -1
  406. package/lib/components/time-select/src/time-select.vue.d.ts +17 -0
  407. package/lib/components/time-select/src/time-select2.js +127 -48
  408. package/lib/components/time-select/src/time-select2.js.map +1 -1
  409. package/lib/components/upload/index.js +1 -1
  410. package/lib/components/upload/src/upload-content.js +192 -31
  411. package/lib/components/upload/src/upload-content.js.map +1 -1
  412. package/lib/components/upload/src/upload-content2.js +31 -192
  413. package/lib/components/upload/src/upload-content2.js.map +1 -1
  414. package/lib/components/upload/src/upload2.js +1 -1
  415. package/lib/hooks/index.d.ts +1 -0
  416. package/lib/hooks/index.js +6 -0
  417. package/lib/hooks/index.js.map +1 -1
  418. package/lib/hooks/use-empty-values/index.d.ts +13 -0
  419. package/lib/hooks/use-empty-values/index.js +58 -0
  420. package/lib/hooks/use-empty-values/index.js.map +1 -0
  421. package/lib/index.js +9 -3
  422. package/lib/index.js.map +1 -1
  423. package/lib/version.d.ts +1 -1
  424. package/lib/version.js +1 -1
  425. package/lib/version.js.map +1 -1
  426. package/package.json +2 -2
  427. package/tags.json +1 -1
  428. package/web-types.json +1 -1
@@ -2,159 +2,104 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- var core = require('@vueuse/core');
7
5
  require('../../../utils/index.js');
8
- require('../../../constants/index.js');
9
- var index = require('../../badge/index.js');
10
- require('../../config-provider/index.js');
11
- var index$1 = require('../../icon/index.js');
12
- var message = require('./message.js');
13
- var instance = require('./instance.js');
14
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
6
+ var typescript = require('../../../utils/typescript.js');
7
+ var core = require('@vueuse/core');
8
+ var runtime = require('../../../utils/vue/props/runtime.js');
15
9
  var icon = require('../../../utils/vue/icon.js');
16
- var useGlobalConfig = require('../../config-provider/src/hooks/use-global-config.js');
17
- var aria = require('../../../constants/aria.js');
18
10
 
19
- const _hoisted_1 = ["id"];
20
- const _hoisted_2 = ["innerHTML"];
21
- const __default__ = vue.defineComponent({
22
- name: "ElMessage"
11
+ const messageTypes = ["success", "info", "warning", "error"];
12
+ const messageDefaults = typescript.mutable({
13
+ customClass: "",
14
+ center: false,
15
+ dangerouslyUseHTMLString: false,
16
+ duration: 3e3,
17
+ icon: void 0,
18
+ id: "",
19
+ message: "",
20
+ onClose: void 0,
21
+ showClose: false,
22
+ type: "info",
23
+ plain: false,
24
+ offset: 16,
25
+ zIndex: 0,
26
+ grouping: false,
27
+ repeatNum: 1,
28
+ appendTo: core.isClient ? document.body : void 0
23
29
  });
24
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
25
- ...__default__,
26
- props: message.messageProps,
27
- emits: message.messageEmits,
28
- setup(__props, { expose }) {
29
- const props = __props;
30
- const { Close } = icon.TypeComponents;
31
- const { ns, zIndex } = useGlobalConfig.useGlobalComponentSettings("message");
32
- const { currentZIndex, nextZIndex } = zIndex;
33
- const messageRef = vue.ref();
34
- const visible = vue.ref(false);
35
- const height = vue.ref(0);
36
- let stopTimer = void 0;
37
- const badgeType = vue.computed(() => props.type ? props.type === "error" ? "danger" : props.type : "info");
38
- const typeClass = vue.computed(() => {
39
- const type = props.type;
40
- return { [ns.bm("icon", type)]: type && icon.TypeComponentsMap[type] };
41
- });
42
- const iconComponent = vue.computed(() => props.icon || icon.TypeComponentsMap[props.type] || "");
43
- const lastOffset = vue.computed(() => instance.getLastOffset(props.id));
44
- const offset = vue.computed(() => instance.getOffsetOrSpace(props.id, props.offset) + lastOffset.value);
45
- const bottom = vue.computed(() => height.value + offset.value);
46
- const customStyle = vue.computed(() => ({
47
- top: `${offset.value}px`,
48
- zIndex: currentZIndex.value
49
- }));
50
- function startTimer() {
51
- if (props.duration === 0)
52
- return;
53
- ({ stop: stopTimer } = core.useTimeoutFn(() => {
54
- close();
55
- }, props.duration));
56
- }
57
- function clearTimer() {
58
- stopTimer == null ? void 0 : stopTimer();
59
- }
60
- function close() {
61
- visible.value = false;
62
- }
63
- function keydown({ code }) {
64
- if (code === aria.EVENT_CODE.esc) {
65
- close();
66
- }
67
- }
68
- vue.onMounted(() => {
69
- startTimer();
70
- nextZIndex();
71
- visible.value = true;
72
- });
73
- vue.watch(() => props.repeatNum, () => {
74
- clearTimer();
75
- startTimer();
76
- });
77
- core.useEventListener(document, "keydown", keydown);
78
- core.useResizeObserver(messageRef, () => {
79
- height.value = messageRef.value.getBoundingClientRect().height;
80
- });
81
- expose({
82
- visible,
83
- bottom,
84
- close
85
- });
86
- return (_ctx, _cache) => {
87
- return vue.openBlock(), vue.createBlock(vue.Transition, {
88
- name: vue.unref(ns).b("fade"),
89
- onBeforeLeave: _ctx.onClose,
90
- onAfterLeave: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("destroy")),
91
- persisted: ""
92
- }, {
93
- default: vue.withCtx(() => [
94
- vue.withDirectives(vue.createElementVNode("div", {
95
- id: _ctx.id,
96
- ref_key: "messageRef",
97
- ref: messageRef,
98
- class: vue.normalizeClass([
99
- vue.unref(ns).b(),
100
- { [vue.unref(ns).m(_ctx.type)]: _ctx.type },
101
- vue.unref(ns).is("center", _ctx.center),
102
- vue.unref(ns).is("closable", _ctx.showClose),
103
- vue.unref(ns).is("plain", _ctx.plain),
104
- _ctx.customClass
105
- ]),
106
- style: vue.normalizeStyle(vue.unref(customStyle)),
107
- role: "alert",
108
- onMouseenter: clearTimer,
109
- onMouseleave: startTimer
110
- }, [
111
- _ctx.repeatNum > 1 ? (vue.openBlock(), vue.createBlock(vue.unref(index.ElBadge), {
112
- key: 0,
113
- value: _ctx.repeatNum,
114
- type: vue.unref(badgeType),
115
- class: vue.normalizeClass(vue.unref(ns).e("badge"))
116
- }, null, 8, ["value", "type", "class"])) : vue.createCommentVNode("v-if", true),
117
- vue.unref(iconComponent) ? (vue.openBlock(), vue.createBlock(vue.unref(index$1.ElIcon), {
118
- key: 1,
119
- class: vue.normalizeClass([vue.unref(ns).e("icon"), vue.unref(typeClass)])
120
- }, {
121
- default: vue.withCtx(() => [
122
- (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(vue.unref(iconComponent))))
123
- ]),
124
- _: 1
125
- }, 8, ["class"])) : vue.createCommentVNode("v-if", true),
126
- vue.renderSlot(_ctx.$slots, "default", {}, () => [
127
- !_ctx.dangerouslyUseHTMLString ? (vue.openBlock(), vue.createElementBlock("p", {
128
- key: 0,
129
- class: vue.normalizeClass(vue.unref(ns).e("content"))
130
- }, vue.toDisplayString(_ctx.message), 3)) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
131
- vue.createCommentVNode(" Caution here, message could've been compromised, never use user's input as message "),
132
- vue.createElementVNode("p", {
133
- class: vue.normalizeClass(vue.unref(ns).e("content")),
134
- innerHTML: _ctx.message
135
- }, null, 10, _hoisted_2)
136
- ], 2112))
137
- ]),
138
- _ctx.showClose ? (vue.openBlock(), vue.createBlock(vue.unref(index$1.ElIcon), {
139
- key: 2,
140
- class: vue.normalizeClass(vue.unref(ns).e("closeBtn")),
141
- onClick: vue.withModifiers(close, ["stop"])
142
- }, {
143
- default: vue.withCtx(() => [
144
- vue.createVNode(vue.unref(Close))
145
- ]),
146
- _: 1
147
- }, 8, ["class", "onClick"])) : vue.createCommentVNode("v-if", true)
148
- ], 46, _hoisted_1), [
149
- [vue.vShow, visible.value]
150
- ])
151
- ]),
152
- _: 3
153
- }, 8, ["name", "onBeforeLeave"]);
154
- };
30
+ const messageProps = runtime.buildProps({
31
+ customClass: {
32
+ type: String,
33
+ default: messageDefaults.customClass
34
+ },
35
+ center: {
36
+ type: Boolean,
37
+ default: messageDefaults.center
38
+ },
39
+ dangerouslyUseHTMLString: {
40
+ type: Boolean,
41
+ default: messageDefaults.dangerouslyUseHTMLString
42
+ },
43
+ duration: {
44
+ type: Number,
45
+ default: messageDefaults.duration
46
+ },
47
+ icon: {
48
+ type: icon.iconPropType,
49
+ default: messageDefaults.icon
50
+ },
51
+ id: {
52
+ type: String,
53
+ default: messageDefaults.id
54
+ },
55
+ message: {
56
+ type: runtime.definePropType([
57
+ String,
58
+ Object,
59
+ Function
60
+ ]),
61
+ default: messageDefaults.message
62
+ },
63
+ onClose: {
64
+ type: runtime.definePropType(Function),
65
+ default: messageDefaults.onClose
66
+ },
67
+ showClose: {
68
+ type: Boolean,
69
+ default: messageDefaults.showClose
70
+ },
71
+ type: {
72
+ type: String,
73
+ values: messageTypes,
74
+ default: messageDefaults.type
75
+ },
76
+ plain: {
77
+ type: Boolean,
78
+ default: messageDefaults.plain
79
+ },
80
+ offset: {
81
+ type: Number,
82
+ default: messageDefaults.offset
83
+ },
84
+ zIndex: {
85
+ type: Number,
86
+ default: messageDefaults.zIndex
87
+ },
88
+ grouping: {
89
+ type: Boolean,
90
+ default: messageDefaults.grouping
91
+ },
92
+ repeatNum: {
93
+ type: Number,
94
+ default: messageDefaults.repeatNum
155
95
  }
156
96
  });
157
- var MessageConstructor = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "message.vue"]]);
97
+ const messageEmits = {
98
+ destroy: () => true
99
+ };
158
100
 
159
- exports["default"] = MessageConstructor;
101
+ exports.messageDefaults = messageDefaults;
102
+ exports.messageEmits = messageEmits;
103
+ exports.messageProps = messageProps;
104
+ exports.messageTypes = messageTypes;
160
105
  //# sourceMappingURL=message2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"message2.js","sources":["../../../../../../packages/components/message/src/message.vue"],"sourcesContent":["<template>\n <transition\n :name=\"ns.b('fade')\"\n @before-leave=\"onClose\"\n @after-leave=\"$emit('destroy')\"\n >\n <div\n v-show=\"visible\"\n :id=\"id\"\n ref=\"messageRef\"\n :class=\"[\n ns.b(),\n { [ns.m(type)]: type },\n ns.is('center', center),\n ns.is('closable', showClose),\n ns.is('plain', plain),\n customClass,\n ]\"\n :style=\"customStyle\"\n role=\"alert\"\n @mouseenter=\"clearTimer\"\n @mouseleave=\"startTimer\"\n >\n <el-badge\n v-if=\"repeatNum > 1\"\n :value=\"repeatNum\"\n :type=\"badgeType\"\n :class=\"ns.e('badge')\"\n />\n <el-icon v-if=\"iconComponent\" :class=\"[ns.e('icon'), typeClass]\">\n <component :is=\"iconComponent\" />\n </el-icon>\n <slot>\n <p v-if=\"!dangerouslyUseHTMLString\" :class=\"ns.e('content')\">\n {{ message }}\n </p>\n <!-- Caution here, message could've been compromised, never use user's input as message -->\n <p v-else :class=\"ns.e('content')\" v-html=\"message\" />\n </slot>\n <el-icon v-if=\"showClose\" :class=\"ns.e('closeBtn')\" @click.stop=\"close\">\n <Close />\n </el-icon>\n </div>\n </transition>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, onMounted, ref, watch } from 'vue'\nimport { useEventListener, useResizeObserver, useTimeoutFn } from '@vueuse/core'\nimport { TypeComponents, TypeComponentsMap } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport ElBadge from '@element-plus/components/badge'\nimport { useGlobalComponentSettings } from '@element-plus/components/config-provider'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { messageEmits, messageProps } from './message'\nimport { getLastOffset, getOffsetOrSpace } from './instance'\nimport type { BadgeProps } from '@element-plus/components/badge'\nimport type { CSSProperties } from 'vue'\n\nconst { Close } = TypeComponents\n\ndefineOptions({\n name: 'ElMessage',\n})\n\nconst props = defineProps(messageProps)\ndefineEmits(messageEmits)\n\nconst { ns, zIndex } = useGlobalComponentSettings('message')\nconst { currentZIndex, nextZIndex } = zIndex\n\nconst messageRef = ref<HTMLDivElement>()\nconst visible = ref(false)\nconst height = ref(0)\n\nlet stopTimer: (() => void) | undefined = undefined\n\nconst badgeType = computed<BadgeProps['type']>(() =>\n props.type ? (props.type === 'error' ? 'danger' : props.type) : 'info'\n)\nconst typeClass = computed(() => {\n const type = props.type\n return { [ns.bm('icon', type)]: type && TypeComponentsMap[type] }\n})\nconst iconComponent = computed(\n () => props.icon || TypeComponentsMap[props.type] || ''\n)\n\nconst lastOffset = computed(() => getLastOffset(props.id))\nconst offset = computed(\n () => getOffsetOrSpace(props.id, props.offset) + lastOffset.value\n)\nconst bottom = computed((): number => height.value + offset.value)\nconst customStyle = computed<CSSProperties>(() => ({\n top: `${offset.value}px`,\n zIndex: currentZIndex.value,\n}))\n\nfunction startTimer() {\n if (props.duration === 0) return\n ;({ stop: stopTimer } = useTimeoutFn(() => {\n close()\n }, props.duration))\n}\n\nfunction clearTimer() {\n stopTimer?.()\n}\n\nfunction close() {\n visible.value = false\n}\n\nfunction keydown({ code }: KeyboardEvent) {\n if (code === EVENT_CODE.esc) {\n // press esc to close the message\n close()\n }\n}\n\nonMounted(() => {\n startTimer()\n nextZIndex()\n visible.value = true\n})\n\nwatch(\n () => props.repeatNum,\n () => {\n clearTimer()\n startTimer()\n }\n)\n\nuseEventListener(document, 'keydown', keydown)\n\nuseResizeObserver(messageRef, () => {\n height.value = messageRef.value!.getBoundingClientRect().height\n})\n\ndefineExpose({\n visible,\n bottom,\n close,\n})\n</script>\n"],"names":["TypeComponents","useGlobalComponentSettings","ref","computed","TypeComponentsMap","getLastOffset","getOffsetOrSpace","useTimeoutFn","EVENT_CODE","onMounted","watch","useEventListener","useResizeObserver"],"mappings":"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"}
1
+ {"version":3,"file":"message2.js","sources":["../../../../../../packages/components/message/src/message.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n iconPropType,\n isClient,\n mutable,\n} from '@element-plus/utils'\nimport type { AppContext, ExtractPropTypes, VNode } from 'vue'\nimport type { Mutable } from '@element-plus/utils'\nimport type MessageConstructor from './message.vue'\n\nexport const messageTypes = ['success', 'info', 'warning', 'error'] as const\n\nexport type messageType = typeof messageTypes[number]\n\nexport interface MessageConfigContext {\n max?: number\n}\n\nexport const messageDefaults = mutable({\n customClass: '',\n center: false,\n dangerouslyUseHTMLString: false,\n duration: 3000,\n icon: undefined,\n id: '',\n message: '',\n onClose: undefined,\n showClose: false,\n type: 'info',\n plain: false,\n offset: 16,\n zIndex: 0,\n grouping: false,\n repeatNum: 1,\n appendTo: isClient ? document.body : (undefined as never),\n} as const)\n\nexport const messageProps = buildProps({\n /**\n * @description custom class name for Message\n */\n customClass: {\n type: String,\n default: messageDefaults.customClass,\n },\n /**\n * @description whether to center the text\n */\n center: {\n type: Boolean,\n default: messageDefaults.center,\n },\n /**\n * @description whether `message` is treated as HTML string\n */\n dangerouslyUseHTMLString: {\n type: Boolean,\n default: messageDefaults.dangerouslyUseHTMLString,\n },\n /**\n * @description display duration, millisecond. If set to 0, it will not turn off automatically\n */\n duration: {\n type: Number,\n default: messageDefaults.duration,\n },\n /**\n * @description custom icon component, overrides `type`\n */\n icon: {\n type: iconPropType,\n default: messageDefaults.icon,\n },\n /**\n * @description message dom id\n */\n id: {\n type: String,\n default: messageDefaults.id,\n },\n /**\n * @description message text\n */\n message: {\n type: definePropType<string | VNode | (() => VNode)>([\n String,\n Object,\n Function,\n ]),\n default: messageDefaults.message,\n },\n /**\n * @description callback function when closed with the message instance as the parameter\n */\n onClose: {\n type: definePropType<() => void>(Function),\n default: messageDefaults.onClose,\n },\n /**\n * @description whether to show a close button\n */\n showClose: {\n type: Boolean,\n default: messageDefaults.showClose,\n },\n /**\n * @description message type\n */\n type: {\n type: String,\n values: messageTypes,\n default: messageDefaults.type,\n },\n /**\n * @description whether message is plain\n */\n plain: {\n type: Boolean,\n default: messageDefaults.plain,\n },\n /**\n * @description set the distance to the top of viewport\n */\n offset: {\n type: Number,\n default: messageDefaults.offset,\n },\n /**\n * @description input box size\n */\n zIndex: {\n type: Number,\n default: messageDefaults.zIndex,\n },\n /**\n * @description merge messages with the same content, type of VNode message is not supported\n */\n grouping: {\n type: Boolean,\n default: messageDefaults.grouping,\n },\n /**\n * @description The number of repetitions, similar to badge, is used as the initial number when used with `grouping`\n */\n repeatNum: {\n type: Number,\n default: messageDefaults.repeatNum,\n },\n} as const)\nexport type MessageProps = ExtractPropTypes<typeof messageProps>\n\nexport const messageEmits = {\n destroy: () => true,\n}\nexport type MessageEmits = typeof messageEmits\n\nexport type MessageInstance = InstanceType<typeof MessageConstructor>\n\nexport type MessageOptions = Partial<\n Mutable<\n Omit<MessageProps, 'id'> & {\n appendTo?: HTMLElement | string\n }\n >\n>\nexport type MessageParams = MessageOptions | MessageOptions['message']\nexport type MessageParamsNormalized = Omit<MessageProps, 'id'> & {\n /**\n * @description set the root element for the message, default to `document.body`\n */\n appendTo: HTMLElement\n}\nexport type MessageOptionsWithType = Omit<MessageOptions, 'type'>\nexport type MessageParamsWithType =\n | MessageOptionsWithType\n | MessageOptions['message']\n\nexport interface MessageHandler {\n /**\n * @description close the Message\n */\n close: () => void\n}\n\nexport type MessageFn = {\n (options?: MessageParams, appContext?: null | AppContext): MessageHandler\n closeAll(type?: messageType): void\n}\nexport type MessageTypedFn = (\n options?: MessageParamsWithType,\n appContext?: null | AppContext\n) => MessageHandler\n\nexport interface Message extends MessageFn {\n success: MessageTypedFn\n warning: MessageTypedFn\n info: MessageTypedFn\n error: MessageTypedFn\n}\n"],"names":["mutable","isClient","buildProps","iconPropType","definePropType"],"mappings":"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"}
@@ -5,8 +5,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var vue = require('vue');
6
6
  require('../../../utils/index.js');
7
7
  require('../../config-provider/index.js');
8
- var message$2 = require('./message2.js');
9
- var message$1 = require('./message.js');
8
+ var message$2 = require('./message.js');
9
+ var message$1 = require('./message2.js');
10
10
  var instance = require('./instance.js');
11
11
  var shared = require('@vue/shared');
12
12
  var types = require('../../../utils/types.js');
@@ -127,6 +127,8 @@ declare const _default: import("vue").DefineComponent<{
127
127
  created: boolean;
128
128
  }>>;
129
129
  ElSelect: import("../../../../utils").SFCWithInstall<import("vue").DefineComponent<{
130
+ emptyValues: ArrayConstructor;
131
+ valueOnClear: import("../../../../utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor, BooleanConstructor, FunctionConstructor], unknown, unknown, undefined, boolean>;
130
132
  name: StringConstructor;
131
133
  id: StringConstructor;
132
134
  modelValue: import("../../../../utils").EpPropFinalized<(ArrayConstructor | ObjectConstructor | NumberConstructor | BooleanConstructor | StringConstructor)[], unknown, unknown, undefined, boolean>;
@@ -12779,6 +12781,8 @@ declare const _default: import("vue").DefineComponent<{
12779
12781
  tagMenuRef: import("vue").Ref<HTMLElement>;
12780
12782
  collapseItemRef: import("vue").Ref<HTMLElement>;
12781
12783
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change" | "focus" | "clear" | "visible-change" | "remove-tag" | "blur")[], "update:modelValue" | "change" | "focus" | "blur" | "clear" | "visible-change" | "remove-tag", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
12784
+ emptyValues: ArrayConstructor;
12785
+ valueOnClear: import("../../../../utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor, BooleanConstructor, FunctionConstructor], unknown, unknown, undefined, boolean>;
12782
12786
  name: StringConstructor;
12783
12787
  id: StringConstructor;
12784
12788
  modelValue: import("../../../../utils").EpPropFinalized<(ArrayConstructor | ObjectConstructor | NumberConstructor | BooleanConstructor | StringConstructor)[], unknown, unknown, undefined, boolean>;
@@ -12876,6 +12880,7 @@ declare const _default: import("vue").DefineComponent<{
12876
12880
  maxCollapseTags: number;
12877
12881
  collapseTagsTooltip: boolean;
12878
12882
  tagType: import("../../../../utils").EpPropMergeType<StringConstructor, "success" | "warning" | "info" | "primary" | "danger", unknown>;
12883
+ valueOnClear: import("../../../../utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor, BooleanConstructor, FunctionConstructor], unknown, unknown>;
12879
12884
  automaticDropdown: boolean;
12880
12885
  allowCreate: boolean;
12881
12886
  remote: boolean;
@@ -1,4 +1,6 @@
1
1
  export declare const ElSelect: import("@element-plus/nightly/es/utils").SFCWithInstall<import("vue").DefineComponent<{
2
+ emptyValues: ArrayConstructor;
3
+ valueOnClear: import("@element-plus/nightly/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor, BooleanConstructor, FunctionConstructor], unknown, unknown, undefined, boolean>;
2
4
  name: StringConstructor;
3
5
  id: StringConstructor;
4
6
  modelValue: import("@element-plus/nightly/es/utils").EpPropFinalized<(ArrayConstructor | ObjectConstructor | NumberConstructor | BooleanConstructor | StringConstructor)[], unknown, unknown, undefined, boolean>;
@@ -12651,6 +12653,8 @@ export declare const ElSelect: import("@element-plus/nightly/es/utils").SFCWithI
12651
12653
  tagMenuRef: import("vue").Ref<HTMLElement>;
12652
12654
  collapseItemRef: import("vue").Ref<HTMLElement>;
12653
12655
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change" | "focus" | "clear" | "visible-change" | "remove-tag" | "blur")[], "update:modelValue" | "change" | "focus" | "blur" | "clear" | "visible-change" | "remove-tag", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
12656
+ emptyValues: ArrayConstructor;
12657
+ valueOnClear: import("@element-plus/nightly/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor, BooleanConstructor, FunctionConstructor], unknown, unknown, undefined, boolean>;
12654
12658
  name: StringConstructor;
12655
12659
  id: StringConstructor;
12656
12660
  modelValue: import("@element-plus/nightly/es/utils").EpPropFinalized<(ArrayConstructor | ObjectConstructor | NumberConstructor | BooleanConstructor | StringConstructor)[], unknown, unknown, undefined, boolean>;
@@ -12748,6 +12752,7 @@ export declare const ElSelect: import("@element-plus/nightly/es/utils").SFCWithI
12748
12752
  maxCollapseTags: number;
12749
12753
  collapseTagsTooltip: boolean;
12750
12754
  tagType: import("@element-plus/nightly/es/utils").EpPropMergeType<StringConstructor, "success" | "warning" | "info" | "primary" | "danger", unknown>;
12755
+ valueOnClear: import("@element-plus/nightly/es/utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor, BooleanConstructor, FunctionConstructor], unknown, unknown>;
12751
12756
  automaticDropdown: boolean;
12752
12757
  allowCreate: boolean;
12753
12758
  remote: boolean;
@@ -1,5 +1,7 @@
1
1
  import type { Options, Placement } from '@element-plus/nightly/es/components/popper';
2
2
  export declare const SelectProps: {
3
+ emptyValues: ArrayConstructor;
4
+ valueOnClear: import("@element-plus/nightly/es/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor, BooleanConstructor, FunctionConstructor], unknown, unknown, undefined, boolean>;
3
5
  name: StringConstructor;
4
6
  id: StringConstructor;
5
7
  modelValue: import("@element-plus/nightly/es/utils").EpPropFinalized<(ArrayConstructor | ObjectConstructor | NumberConstructor | BooleanConstructor | StringConstructor)[], unknown, unknown, undefined, boolean>;
@@ -13,6 +13,7 @@ var index = require('../../../hooks/use-size/index.js');
13
13
  var content = require('../../tooltip/src/content.js');
14
14
  var icon = require('../../../utils/vue/icon.js');
15
15
  var tag = require('../../tag/src/tag.js');
16
+ var index$1 = require('../../../hooks/use-empty-values/index.js');
16
17
 
17
18
  const SelectProps = runtime.buildProps({
18
19
  name: String,
@@ -105,7 +106,8 @@ const SelectProps = runtime.buildProps({
105
106
  ariaLabel: {
106
107
  type: String,
107
108
  default: void 0
108
- }
109
+ },
110
+ ...index$1.useEmptyValuesProps
109
111
  });
110
112
 
111
113
  exports.SelectProps = SelectProps;
@@ -1 +1 @@
1
- {"version":3,"file":"select.js","sources":["../../../../../../packages/components/select/src/select.ts"],"sourcesContent":["import { placements } from '@popperjs/core'\nimport { useSizeProp } from '@element-plus/hooks'\nimport { buildProps, definePropType, iconPropType } from '@element-plus/utils'\nimport { useTooltipContentProps } from '@element-plus/components/tooltip'\nimport { ArrowDown, CircleClose } from '@element-plus/icons-vue'\nimport { tagProps } from '@element-plus/components/tag'\nimport type { Options, Placement } from '@element-plus/components/popper'\n\nexport const SelectProps = buildProps({\n /**\n * @description the name attribute of select input\n */\n name: String,\n /**\n * @description native input id\n */\n id: String,\n /**\n * @description binding value\n */\n modelValue: {\n type: [Array, String, Number, Boolean, Object],\n default: undefined,\n },\n /**\n * @description the autocomplete attribute of select input\n */\n autocomplete: {\n type: String,\n default: 'off',\n },\n /**\n * @description for non-filterable Select, this prop decides if the option menu pops up when the input is focused\n */\n automaticDropdown: Boolean,\n /**\n * @description size of Input\n */\n size: useSizeProp,\n /**\n * @description tooltip theme, built-in theme: `dark` / `light`\n */\n effect: {\n type: definePropType<'light' | 'dark' | string>(String),\n default: 'light',\n },\n /**\n * @description whether Select is disabled\n */\n disabled: Boolean,\n /**\n * @description whether select can be cleared\n */\n clearable: Boolean,\n /**\n * @description whether Select is filterable\n */\n filterable: Boolean,\n /**\n * @description whether creating new items is allowed. To use this, `filterable` must be true\n */\n allowCreate: Boolean,\n /**\n * @description whether Select is loading data from server\n */\n loading: Boolean,\n /**\n * @description custom class name for Select's dropdown\n */\n popperClass: {\n type: String,\n default: '',\n },\n /**\n * @description [popper.js](https://popper.js.org/docs/v2/) parameters\n */\n popperOptions: {\n type: definePropType<Partial<Options>>(Object),\n default: () => ({} as Partial<Options>),\n },\n /**\n * @description whether options are loaded from server\n */\n remote: Boolean,\n /**\n * @description displayed text while loading data from server, default is 'Loading'\n */\n loadingText: String,\n /**\n * @description displayed text when no data matches the filtering query, you can also use slot `empty`, default is 'No matching data'\n */\n noMatchText: String,\n /**\n * @description displayed text when there is no options, you can also use slot `empty`, default is 'No data'\n */\n noDataText: String,\n /**\n * @description custom remote search method\n */\n remoteMethod: Function,\n /**\n * @description custom filter method\n */\n filterMethod: Function,\n /**\n * @description whether multiple-select is activated\n */\n multiple: Boolean,\n /**\n * @description maximum number of options user can select when `multiple` is `true`. No limit when set to 0\n */\n multipleLimit: {\n type: Number,\n default: 0,\n },\n /**\n * @description placeholder, default is 'Select'\n */\n placeholder: {\n type: String,\n },\n /**\n * @description select first matching option on enter key. Use with `filterable` or `remote`\n */\n defaultFirstOption: Boolean,\n /**\n * @description when `multiple` and `filter` is true, whether to reserve current keyword after selecting an option\n */\n reserveKeyword: {\n type: Boolean,\n default: true,\n },\n /**\n * @description unique identity key name for value, required when value is an object\n */\n valueKey: {\n type: String,\n default: 'value',\n },\n /**\n * @description whether to collapse tags to a text when multiple selecting\n */\n collapseTags: Boolean,\n /**\n * @description whether show all selected tags when mouse hover text of collapse-tags. To use this, `collapse-tags` must be true\n */\n collapseTagsTooltip: Boolean,\n /**\n * @description the max tags number to be shown. To use this, `collapse-tags` must be true\n */\n maxCollapseTags: {\n type: Number,\n default: 1,\n },\n /**\n * @description whether select dropdown is teleported to the body\n */\n teleported: useTooltipContentProps.teleported,\n /**\n * @description when select dropdown is inactive and `persistent` is `false`, select dropdown will be destroyed\n */\n persistent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description custom clear icon component\n */\n clearIcon: {\n type: iconPropType,\n default: CircleClose,\n },\n /**\n * @description whether the width of the dropdown is the same as the input\n */\n fitInputWidth: Boolean,\n /**\n * @description custom suffix icon component\n */\n suffixIcon: {\n type: iconPropType,\n default: ArrowDown,\n },\n /**\n * @description tag type\n */\n // eslint-disable-next-line vue/require-prop-types\n tagType: { ...tagProps.type, default: 'info' },\n /**\n * @description whether to trigger form validation\n */\n validateEvent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description in remote search method show suffix icon\n */\n remoteShowSuffix: Boolean,\n /**\n * @description position of dropdown\n */\n placement: {\n type: definePropType<Placement>(String),\n values: placements,\n default: 'bottom-start',\n },\n /**\n * @description list of possible positions for dropdown\n */\n fallbackPlacements: {\n type: definePropType<Placement[]>(Array),\n default: ['bottom-start', 'top-start', 'right', 'left'],\n },\n /**\n * @description native input aria-label\n */\n ariaLabel: {\n type: String,\n default: undefined,\n },\n})\n"],"names":["buildProps","useSizeProp","definePropType","useTooltipContentProps","iconPropType","CircleClose","ArrowDown","tagProps","placements"],"mappings":"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"}
1
+ {"version":3,"file":"select.js","sources":["../../../../../../packages/components/select/src/select.ts"],"sourcesContent":["import { placements } from '@popperjs/core'\nimport { useEmptyValuesProps, useSizeProp } from '@element-plus/hooks'\nimport { buildProps, definePropType, iconPropType } from '@element-plus/utils'\nimport { useTooltipContentProps } from '@element-plus/components/tooltip'\nimport { ArrowDown, CircleClose } from '@element-plus/icons-vue'\nimport { tagProps } from '@element-plus/components/tag'\nimport type { Options, Placement } from '@element-plus/components/popper'\n\nexport const SelectProps = buildProps({\n /**\n * @description the name attribute of select input\n */\n name: String,\n /**\n * @description native input id\n */\n id: String,\n /**\n * @description binding value\n */\n modelValue: {\n type: [Array, String, Number, Boolean, Object],\n default: undefined,\n },\n /**\n * @description the autocomplete attribute of select input\n */\n autocomplete: {\n type: String,\n default: 'off',\n },\n /**\n * @description for non-filterable Select, this prop decides if the option menu pops up when the input is focused\n */\n automaticDropdown: Boolean,\n /**\n * @description size of Input\n */\n size: useSizeProp,\n /**\n * @description tooltip theme, built-in theme: `dark` / `light`\n */\n effect: {\n type: definePropType<'light' | 'dark' | string>(String),\n default: 'light',\n },\n /**\n * @description whether Select is disabled\n */\n disabled: Boolean,\n /**\n * @description whether select can be cleared\n */\n clearable: Boolean,\n /**\n * @description whether Select is filterable\n */\n filterable: Boolean,\n /**\n * @description whether creating new items is allowed. To use this, `filterable` must be true\n */\n allowCreate: Boolean,\n /**\n * @description whether Select is loading data from server\n */\n loading: Boolean,\n /**\n * @description custom class name for Select's dropdown\n */\n popperClass: {\n type: String,\n default: '',\n },\n /**\n * @description [popper.js](https://popper.js.org/docs/v2/) parameters\n */\n popperOptions: {\n type: definePropType<Partial<Options>>(Object),\n default: () => ({} as Partial<Options>),\n },\n /**\n * @description whether options are loaded from server\n */\n remote: Boolean,\n /**\n * @description displayed text while loading data from server, default is 'Loading'\n */\n loadingText: String,\n /**\n * @description displayed text when no data matches the filtering query, you can also use slot `empty`, default is 'No matching data'\n */\n noMatchText: String,\n /**\n * @description displayed text when there is no options, you can also use slot `empty`, default is 'No data'\n */\n noDataText: String,\n /**\n * @description custom remote search method\n */\n remoteMethod: Function,\n /**\n * @description custom filter method\n */\n filterMethod: Function,\n /**\n * @description whether multiple-select is activated\n */\n multiple: Boolean,\n /**\n * @description maximum number of options user can select when `multiple` is `true`. No limit when set to 0\n */\n multipleLimit: {\n type: Number,\n default: 0,\n },\n /**\n * @description placeholder, default is 'Select'\n */\n placeholder: {\n type: String,\n },\n /**\n * @description select first matching option on enter key. Use with `filterable` or `remote`\n */\n defaultFirstOption: Boolean,\n /**\n * @description when `multiple` and `filter` is true, whether to reserve current keyword after selecting an option\n */\n reserveKeyword: {\n type: Boolean,\n default: true,\n },\n /**\n * @description unique identity key name for value, required when value is an object\n */\n valueKey: {\n type: String,\n default: 'value',\n },\n /**\n * @description whether to collapse tags to a text when multiple selecting\n */\n collapseTags: Boolean,\n /**\n * @description whether show all selected tags when mouse hover text of collapse-tags. To use this, `collapse-tags` must be true\n */\n collapseTagsTooltip: Boolean,\n /**\n * @description the max tags number to be shown. To use this, `collapse-tags` must be true\n */\n maxCollapseTags: {\n type: Number,\n default: 1,\n },\n /**\n * @description whether select dropdown is teleported to the body\n */\n teleported: useTooltipContentProps.teleported,\n /**\n * @description when select dropdown is inactive and `persistent` is `false`, select dropdown will be destroyed\n */\n persistent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description custom clear icon component\n */\n clearIcon: {\n type: iconPropType,\n default: CircleClose,\n },\n /**\n * @description whether the width of the dropdown is the same as the input\n */\n fitInputWidth: Boolean,\n /**\n * @description custom suffix icon component\n */\n suffixIcon: {\n type: iconPropType,\n default: ArrowDown,\n },\n /**\n * @description tag type\n */\n // eslint-disable-next-line vue/require-prop-types\n tagType: { ...tagProps.type, default: 'info' },\n /**\n * @description whether to trigger form validation\n */\n validateEvent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description in remote search method show suffix icon\n */\n remoteShowSuffix: Boolean,\n /**\n * @description position of dropdown\n */\n placement: {\n type: definePropType<Placement>(String),\n values: placements,\n default: 'bottom-start',\n },\n /**\n * @description list of possible positions for dropdown\n */\n fallbackPlacements: {\n type: definePropType<Placement[]>(Array),\n default: ['bottom-start', 'top-start', 'right', 'left'],\n },\n /**\n * @description native input aria-label\n */\n ariaLabel: {\n type: String,\n default: undefined,\n },\n ...useEmptyValuesProps,\n})\n"],"names":["buildProps","useSizeProp","definePropType","useTooltipContentProps","iconPropType","CircleClose","ArrowDown","tagProps","placements","useEmptyValuesProps"],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  declare const _default: import("vue").DefineComponent<{
2
+ emptyValues: ArrayConstructor;
3
+ valueOnClear: import("../../../utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor, BooleanConstructor, FunctionConstructor], unknown, unknown, undefined, boolean>;
2
4
  name: StringConstructor;
3
5
  id: StringConstructor;
4
6
  modelValue: import("../../../utils").EpPropFinalized<(ArrayConstructor | ObjectConstructor | NumberConstructor | BooleanConstructor | StringConstructor)[], unknown, unknown, undefined, boolean>;
@@ -12651,6 +12653,8 @@ declare const _default: import("vue").DefineComponent<{
12651
12653
  tagMenuRef: import("vue").Ref<HTMLElement>;
12652
12654
  collapseItemRef: import("vue").Ref<HTMLElement>;
12653
12655
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change" | "focus" | "clear" | "visible-change" | "remove-tag" | "blur")[], "update:modelValue" | "change" | "focus" | "blur" | "clear" | "visible-change" | "remove-tag", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
12656
+ emptyValues: ArrayConstructor;
12657
+ valueOnClear: import("../../../utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor, BooleanConstructor, FunctionConstructor], unknown, unknown, undefined, boolean>;
12654
12658
  name: StringConstructor;
12655
12659
  id: StringConstructor;
12656
12660
  modelValue: import("../../../utils").EpPropFinalized<(ArrayConstructor | ObjectConstructor | NumberConstructor | BooleanConstructor | StringConstructor)[], unknown, unknown, undefined, boolean>;
@@ -12748,6 +12752,7 @@ declare const _default: import("vue").DefineComponent<{
12748
12752
  maxCollapseTags: number;
12749
12753
  collapseTagsTooltip: boolean;
12750
12754
  tagType: import("../../../utils").EpPropMergeType<StringConstructor, "success" | "warning" | "info" | "primary" | "danger", unknown>;
12755
+ valueOnClear: import("../../../utils").EpPropMergeType<readonly [StringConstructor, NumberConstructor, BooleanConstructor, FunctionConstructor], unknown, unknown>;
12751
12756
  automaticDropdown: boolean;
12752
12757
  allowCreate: boolean;
12753
12758
  remote: boolean;
@@ -16,6 +16,7 @@ var index$1 = require('../../../hooks/use-id/index.js');
16
16
  var index$2 = require('../../../hooks/use-namespace/index.js');
17
17
  var index$3 = require('../../../hooks/use-focus-controller/index.js');
18
18
  var useFormItem = require('../../form/src/hooks/use-form-item.js');
19
+ var index$4 = require('../../../hooks/use-empty-values/index.js');
19
20
  var icon = require('../../../utils/vue/icon.js');
20
21
  var useFormCommonProps = require('../../form/src/hooks/use-form-common-props.js');
21
22
  var error = require('../../../utils/error.js');
@@ -81,14 +82,13 @@ const useSelect = (props, emit) => {
81
82
  const { inputId } = useFormItem.useFormItemInputId(props, {
82
83
  formItemContext: formItem
83
84
  });
85
+ const { valueOnClear, isEmptyValue } = index$4.useEmptyValues(props);
84
86
  const selectDisabled = vue.computed(() => props.disabled || (form == null ? void 0 : form.disabled));
85
- const hasEmptyStringOption = vue.computed(() => optionsArray.value.some((option) => option.value === ""));
86
87
  const hasModelValue = vue.computed(() => {
87
- return props.multiple ? shared.isArray(props.modelValue) && props.modelValue.length > 0 : !lodashUnified.isNil(props.modelValue) && (props.modelValue !== "" || hasEmptyStringOption.value);
88
+ return props.multiple ? shared.isArray(props.modelValue) && props.modelValue.length > 0 : !isEmptyValue(props.modelValue);
88
89
  });
89
90
  const showClose = vue.computed(() => {
90
- const criteria = props.clearable && !selectDisabled.value && states.inputHovering && hasModelValue.value;
91
- return criteria;
91
+ return props.clearable && !selectDisabled.value && states.inputHovering && hasModelValue.value;
92
92
  });
93
93
  const iconComponent = vue.computed(() => props.remote && props.filterable && !props.remoteShowSuffix ? "" : props.suffixIcon);
94
94
  const iconReverse = vue.computed(() => nsSelect.is("reverse", iconComponent.value && expanded.value));
@@ -359,7 +359,7 @@ const useSelect = (props, emit) => {
359
359
  };
360
360
  const deleteSelected = (event$1) => {
361
361
  event$1.stopPropagation();
362
- const value = props.multiple ? [] : void 0;
362
+ const value = props.multiple ? [] : valueOnClear.value;
363
363
  if (props.multiple) {
364
364
  for (const item of states.selected) {
365
365
  if (item.isDisabled)
@@ -454,6 +454,7 @@ const useSelect = (props, emit) => {
454
454
  return (_b = (_a = tooltipRef.value) == null ? void 0 : _a.popperRef) == null ? void 0 : _b.contentRef;
455
455
  });
456
456
  const handleMenuEnter = () => {
457
+ states.isBeforeHide = false;
457
458
  vue.nextTick(() => scrollToOption(states.selected));
458
459
  };
459
460
  const focus = () => {