element-plus-mobile 0.1.1 → 0.1.2

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 (652) hide show
  1. package/README.md +1 -1
  2. package/attributes.json +1 -1
  3. package/dist/index.css +1 -1
  4. package/dist/index.full.js +594 -905
  5. package/dist/index.full.min.js +8 -8
  6. package/dist/index.full.min.js.map +1 -1
  7. package/dist/index.full.min.mjs +8 -8
  8. package/dist/index.full.min.mjs.map +1 -1
  9. package/dist/index.full.mjs +593 -904
  10. package/dist/locale/af.js +1 -1
  11. package/dist/locale/af.min.js +1 -1
  12. package/dist/locale/af.min.mjs +1 -1
  13. package/dist/locale/af.mjs +1 -1
  14. package/dist/locale/ar-eg.js +1 -1
  15. package/dist/locale/ar-eg.min.js +1 -1
  16. package/dist/locale/ar-eg.min.mjs +1 -1
  17. package/dist/locale/ar-eg.mjs +1 -1
  18. package/dist/locale/ar.js +1 -1
  19. package/dist/locale/ar.min.js +1 -1
  20. package/dist/locale/ar.min.mjs +1 -1
  21. package/dist/locale/ar.mjs +1 -1
  22. package/dist/locale/az.js +1 -1
  23. package/dist/locale/az.min.js +1 -1
  24. package/dist/locale/az.min.mjs +1 -1
  25. package/dist/locale/az.mjs +1 -1
  26. package/dist/locale/bg.js +1 -1
  27. package/dist/locale/bg.min.js +1 -1
  28. package/dist/locale/bg.min.mjs +1 -1
  29. package/dist/locale/bg.mjs +1 -1
  30. package/dist/locale/bn.js +1 -1
  31. package/dist/locale/bn.min.js +1 -1
  32. package/dist/locale/bn.min.mjs +1 -1
  33. package/dist/locale/bn.mjs +1 -1
  34. package/dist/locale/ca.js +1 -1
  35. package/dist/locale/ca.min.js +1 -1
  36. package/dist/locale/ca.min.mjs +1 -1
  37. package/dist/locale/ca.mjs +1 -1
  38. package/dist/locale/ckb.js +1 -1
  39. package/dist/locale/ckb.min.js +1 -1
  40. package/dist/locale/ckb.min.mjs +1 -1
  41. package/dist/locale/ckb.mjs +1 -1
  42. package/dist/locale/cs.js +1 -1
  43. package/dist/locale/cs.min.js +1 -1
  44. package/dist/locale/cs.min.mjs +1 -1
  45. package/dist/locale/cs.mjs +1 -1
  46. package/dist/locale/da.js +1 -1
  47. package/dist/locale/da.min.js +1 -1
  48. package/dist/locale/da.min.mjs +1 -1
  49. package/dist/locale/da.mjs +1 -1
  50. package/dist/locale/de.js +1 -1
  51. package/dist/locale/de.min.js +1 -1
  52. package/dist/locale/de.min.mjs +1 -1
  53. package/dist/locale/de.mjs +1 -1
  54. package/dist/locale/el.js +1 -1
  55. package/dist/locale/el.min.js +1 -1
  56. package/dist/locale/el.min.mjs +1 -1
  57. package/dist/locale/el.mjs +1 -1
  58. package/dist/locale/en.js +1 -1
  59. package/dist/locale/en.min.js +1 -1
  60. package/dist/locale/en.min.mjs +1 -1
  61. package/dist/locale/en.mjs +1 -1
  62. package/dist/locale/eo.js +1 -1
  63. package/dist/locale/eo.min.js +1 -1
  64. package/dist/locale/eo.min.mjs +1 -1
  65. package/dist/locale/eo.mjs +1 -1
  66. package/dist/locale/es.js +1 -1
  67. package/dist/locale/es.min.js +1 -1
  68. package/dist/locale/es.min.mjs +1 -1
  69. package/dist/locale/es.mjs +1 -1
  70. package/dist/locale/et.js +1 -1
  71. package/dist/locale/et.min.js +1 -1
  72. package/dist/locale/et.min.mjs +1 -1
  73. package/dist/locale/et.mjs +1 -1
  74. package/dist/locale/eu.js +1 -1
  75. package/dist/locale/eu.min.js +1 -1
  76. package/dist/locale/eu.min.mjs +1 -1
  77. package/dist/locale/eu.mjs +1 -1
  78. package/dist/locale/fa.js +1 -1
  79. package/dist/locale/fa.min.js +1 -1
  80. package/dist/locale/fa.min.mjs +1 -1
  81. package/dist/locale/fa.mjs +1 -1
  82. package/dist/locale/fi.js +1 -1
  83. package/dist/locale/fi.min.js +1 -1
  84. package/dist/locale/fi.min.mjs +1 -1
  85. package/dist/locale/fi.mjs +1 -1
  86. package/dist/locale/fr.js +1 -1
  87. package/dist/locale/fr.min.js +1 -1
  88. package/dist/locale/fr.min.mjs +1 -1
  89. package/dist/locale/fr.mjs +1 -1
  90. package/dist/locale/he.js +1 -1
  91. package/dist/locale/he.min.js +1 -1
  92. package/dist/locale/he.min.mjs +1 -1
  93. package/dist/locale/he.mjs +1 -1
  94. package/dist/locale/hi.js +1 -1
  95. package/dist/locale/hi.min.js +1 -1
  96. package/dist/locale/hi.min.mjs +1 -1
  97. package/dist/locale/hi.mjs +1 -1
  98. package/dist/locale/hr.js +1 -1
  99. package/dist/locale/hr.min.js +1 -1
  100. package/dist/locale/hr.min.mjs +1 -1
  101. package/dist/locale/hr.mjs +1 -1
  102. package/dist/locale/hu.js +1 -1
  103. package/dist/locale/hu.min.js +1 -1
  104. package/dist/locale/hu.min.mjs +1 -1
  105. package/dist/locale/hu.mjs +1 -1
  106. package/dist/locale/hy-am.js +1 -1
  107. package/dist/locale/hy-am.min.js +1 -1
  108. package/dist/locale/hy-am.min.mjs +1 -1
  109. package/dist/locale/hy-am.mjs +1 -1
  110. package/dist/locale/id.js +1 -1
  111. package/dist/locale/id.min.js +1 -1
  112. package/dist/locale/id.min.mjs +1 -1
  113. package/dist/locale/id.mjs +1 -1
  114. package/dist/locale/it.js +1 -1
  115. package/dist/locale/it.min.js +1 -1
  116. package/dist/locale/it.min.mjs +1 -1
  117. package/dist/locale/it.mjs +1 -1
  118. package/dist/locale/ja.js +1 -1
  119. package/dist/locale/ja.min.js +1 -1
  120. package/dist/locale/ja.min.mjs +1 -1
  121. package/dist/locale/ja.mjs +1 -1
  122. package/dist/locale/kk.js +1 -1
  123. package/dist/locale/kk.min.js +1 -1
  124. package/dist/locale/kk.min.mjs +1 -1
  125. package/dist/locale/kk.mjs +1 -1
  126. package/dist/locale/km.js +1 -1
  127. package/dist/locale/km.min.js +1 -1
  128. package/dist/locale/km.min.mjs +1 -1
  129. package/dist/locale/km.mjs +1 -1
  130. package/dist/locale/ko.js +1 -1
  131. package/dist/locale/ko.min.js +1 -1
  132. package/dist/locale/ko.min.mjs +1 -1
  133. package/dist/locale/ko.mjs +1 -1
  134. package/dist/locale/ku.js +1 -1
  135. package/dist/locale/ku.min.js +1 -1
  136. package/dist/locale/ku.min.mjs +1 -1
  137. package/dist/locale/ku.mjs +1 -1
  138. package/dist/locale/ky.js +1 -1
  139. package/dist/locale/ky.min.js +1 -1
  140. package/dist/locale/ky.min.mjs +1 -1
  141. package/dist/locale/ky.mjs +1 -1
  142. package/dist/locale/lo.js +1 -1
  143. package/dist/locale/lo.min.js +1 -1
  144. package/dist/locale/lo.min.mjs +1 -1
  145. package/dist/locale/lo.mjs +1 -1
  146. package/dist/locale/lt.js +1 -1
  147. package/dist/locale/lt.min.js +1 -1
  148. package/dist/locale/lt.min.mjs +1 -1
  149. package/dist/locale/lt.mjs +1 -1
  150. package/dist/locale/lv.js +1 -1
  151. package/dist/locale/lv.min.js +1 -1
  152. package/dist/locale/lv.min.mjs +1 -1
  153. package/dist/locale/lv.mjs +1 -1
  154. package/dist/locale/mg.js +1 -1
  155. package/dist/locale/mg.min.js +1 -1
  156. package/dist/locale/mg.min.mjs +1 -1
  157. package/dist/locale/mg.mjs +1 -1
  158. package/dist/locale/mn.js +1 -1
  159. package/dist/locale/mn.min.js +1 -1
  160. package/dist/locale/mn.min.mjs +1 -1
  161. package/dist/locale/mn.mjs +1 -1
  162. package/dist/locale/ms.js +1 -1
  163. package/dist/locale/ms.min.js +1 -1
  164. package/dist/locale/ms.min.mjs +1 -1
  165. package/dist/locale/ms.mjs +1 -1
  166. package/dist/locale/my.js +1 -1
  167. package/dist/locale/my.min.js +1 -1
  168. package/dist/locale/my.min.mjs +1 -1
  169. package/dist/locale/my.mjs +1 -1
  170. package/dist/locale/nb-no.js +1 -1
  171. package/dist/locale/nb-no.min.js +1 -1
  172. package/dist/locale/nb-no.min.mjs +1 -1
  173. package/dist/locale/nb-no.mjs +1 -1
  174. package/dist/locale/nl.js +1 -1
  175. package/dist/locale/nl.min.js +1 -1
  176. package/dist/locale/nl.min.mjs +1 -1
  177. package/dist/locale/nl.mjs +1 -1
  178. package/dist/locale/no.js +1 -1
  179. package/dist/locale/no.min.js +1 -1
  180. package/dist/locale/no.min.mjs +1 -1
  181. package/dist/locale/no.mjs +1 -1
  182. package/dist/locale/pa.js +1 -1
  183. package/dist/locale/pa.min.js +1 -1
  184. package/dist/locale/pa.min.mjs +1 -1
  185. package/dist/locale/pa.mjs +1 -1
  186. package/dist/locale/pl.js +1 -1
  187. package/dist/locale/pl.min.js +1 -1
  188. package/dist/locale/pl.min.mjs +1 -1
  189. package/dist/locale/pl.mjs +1 -1
  190. package/dist/locale/pt-br.js +1 -1
  191. package/dist/locale/pt-br.min.js +1 -1
  192. package/dist/locale/pt-br.min.mjs +1 -1
  193. package/dist/locale/pt-br.mjs +1 -1
  194. package/dist/locale/pt.js +1 -1
  195. package/dist/locale/pt.min.js +1 -1
  196. package/dist/locale/pt.min.mjs +1 -1
  197. package/dist/locale/pt.mjs +1 -1
  198. package/dist/locale/ro.js +1 -1
  199. package/dist/locale/ro.min.js +1 -1
  200. package/dist/locale/ro.min.mjs +1 -1
  201. package/dist/locale/ro.mjs +1 -1
  202. package/dist/locale/ru.js +1 -1
  203. package/dist/locale/ru.min.js +1 -1
  204. package/dist/locale/ru.min.mjs +1 -1
  205. package/dist/locale/ru.mjs +1 -1
  206. package/dist/locale/sk.js +1 -1
  207. package/dist/locale/sk.min.js +1 -1
  208. package/dist/locale/sk.min.mjs +1 -1
  209. package/dist/locale/sk.mjs +1 -1
  210. package/dist/locale/sl.js +1 -1
  211. package/dist/locale/sl.min.js +1 -1
  212. package/dist/locale/sl.min.mjs +1 -1
  213. package/dist/locale/sl.mjs +1 -1
  214. package/dist/locale/sr.js +1 -1
  215. package/dist/locale/sr.min.js +1 -1
  216. package/dist/locale/sr.min.mjs +1 -1
  217. package/dist/locale/sr.mjs +1 -1
  218. package/dist/locale/sv.js +1 -1
  219. package/dist/locale/sv.min.js +1 -1
  220. package/dist/locale/sv.min.mjs +1 -1
  221. package/dist/locale/sv.mjs +1 -1
  222. package/dist/locale/sw.js +1 -1
  223. package/dist/locale/sw.min.js +1 -1
  224. package/dist/locale/sw.min.mjs +1 -1
  225. package/dist/locale/sw.mjs +1 -1
  226. package/dist/locale/ta.js +1 -1
  227. package/dist/locale/ta.min.js +1 -1
  228. package/dist/locale/ta.min.mjs +1 -1
  229. package/dist/locale/ta.mjs +1 -1
  230. package/dist/locale/te.js +1 -1
  231. package/dist/locale/te.min.js +1 -1
  232. package/dist/locale/te.min.mjs +1 -1
  233. package/dist/locale/te.mjs +1 -1
  234. package/dist/locale/th.js +1 -1
  235. package/dist/locale/th.min.js +1 -1
  236. package/dist/locale/th.min.mjs +1 -1
  237. package/dist/locale/th.mjs +1 -1
  238. package/dist/locale/tk.js +1 -1
  239. package/dist/locale/tk.min.js +1 -1
  240. package/dist/locale/tk.min.mjs +1 -1
  241. package/dist/locale/tk.mjs +1 -1
  242. package/dist/locale/tr.js +1 -1
  243. package/dist/locale/tr.min.js +1 -1
  244. package/dist/locale/tr.min.mjs +1 -1
  245. package/dist/locale/tr.mjs +1 -1
  246. package/dist/locale/ug-cn.js +1 -1
  247. package/dist/locale/ug-cn.min.js +1 -1
  248. package/dist/locale/ug-cn.min.mjs +1 -1
  249. package/dist/locale/ug-cn.mjs +1 -1
  250. package/dist/locale/uk.js +1 -1
  251. package/dist/locale/uk.min.js +1 -1
  252. package/dist/locale/uk.min.mjs +1 -1
  253. package/dist/locale/uk.mjs +1 -1
  254. package/dist/locale/uz-uz.js +1 -1
  255. package/dist/locale/uz-uz.min.js +1 -1
  256. package/dist/locale/uz-uz.min.mjs +1 -1
  257. package/dist/locale/uz-uz.mjs +1 -1
  258. package/dist/locale/vi.js +1 -1
  259. package/dist/locale/vi.min.js +1 -1
  260. package/dist/locale/vi.min.mjs +1 -1
  261. package/dist/locale/vi.mjs +1 -1
  262. package/dist/locale/zh-cn.js +1 -1
  263. package/dist/locale/zh-cn.min.js +1 -1
  264. package/dist/locale/zh-cn.min.mjs +1 -1
  265. package/dist/locale/zh-cn.mjs +1 -1
  266. package/dist/locale/zh-hk.js +1 -1
  267. package/dist/locale/zh-hk.min.js +1 -1
  268. package/dist/locale/zh-hk.min.mjs +1 -1
  269. package/dist/locale/zh-hk.mjs +1 -1
  270. package/dist/locale/zh-mo.js +1 -1
  271. package/dist/locale/zh-mo.min.js +1 -1
  272. package/dist/locale/zh-mo.min.mjs +1 -1
  273. package/dist/locale/zh-mo.mjs +1 -1
  274. package/dist/locale/zh-tw.js +1 -1
  275. package/dist/locale/zh-tw.min.js +1 -1
  276. package/dist/locale/zh-tw.min.mjs +1 -1
  277. package/dist/locale/zh-tw.mjs +1 -1
  278. package/es/component.mjs +3 -3
  279. package/es/components/button/src/button-custom.mjs +49 -1
  280. package/es/components/button/src/button-custom.mjs.map +1 -1
  281. package/es/components/button/src/button-group.mjs +1 -1
  282. package/es/components/button/src/button-group.mjs.map +1 -1
  283. package/es/components/button/src/button-group.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  284. package/es/components/button/src/button-group2.mjs.map +1 -1
  285. package/es/components/cascader/src/cascader.d.ts +3 -131
  286. package/es/components/cascader/src/cascader.mjs +15 -24
  287. package/es/components/cascader/src/cascader.mjs.map +1 -1
  288. package/es/components/cascader/src/cascader.vue.d.ts +0 -6
  289. package/es/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.mjs +12 -37
  290. package/es/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  291. package/es/components/cascader/src/cascader2.mjs.map +1 -1
  292. package/es/components/cascader-panel/src/index.mjs.map +1 -1
  293. package/es/components/cascader-panel/src/index.vue_vue_type_script_setup_true_lang.mjs +8 -0
  294. package/es/components/cascader-panel/src/index.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  295. package/es/components/color-picker/src/color-picker.d.ts +0 -16
  296. package/es/components/color-picker/src/color-picker.mjs +0 -3
  297. package/es/components/color-picker/src/color-picker.mjs.map +1 -1
  298. package/es/components/color-picker/src/color-picker.vue.d.ts +0 -1
  299. package/es/components/color-picker/src/color-picker.vue_vue_type_script_setup_true_lang.mjs +4 -14
  300. package/es/components/color-picker/src/color-picker.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  301. package/es/components/color-picker/src/color-picker2.mjs.map +1 -1
  302. package/es/components/countdown/src/countdown.vue_vue_type_script_setup_true_lang.mjs +1 -1
  303. package/es/components/date-picker/src/date-picker.d.ts +0 -3
  304. package/es/components/date-picker/src/props.d.ts +0 -1
  305. package/es/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.mjs +1 -1
  306. package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.mjs +1 -1
  307. package/es/components/date-picker-panel/src/date-picker-panel.d.ts +1 -1
  308. package/es/components/form/index.d.ts +2 -2
  309. package/es/components/form/src/form-item.d.ts +0 -15
  310. package/es/components/form/src/form-item.mjs +0 -11
  311. package/es/components/form/src/form-item.mjs.map +1 -1
  312. package/es/components/form/src/form-item.vue.d.ts +5 -6
  313. package/es/components/form/src/form-item.vue_vue_type_script_setup_true_lang.mjs +15 -46
  314. package/es/components/form/src/form-item.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  315. package/es/components/form/src/form-item2.mjs.map +1 -1
  316. package/es/components/form/src/form.d.ts +0 -20
  317. package/es/components/form/src/form.mjs +0 -15
  318. package/es/components/form/src/form.mjs.map +1 -1
  319. package/es/components/form/src/form.vue.d.ts +0 -2
  320. package/es/components/form/src/form.vue_vue_type_script_setup_true_lang.mjs +3 -19
  321. package/es/components/form/src/form.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  322. package/es/components/form/src/form2.mjs.map +1 -1
  323. package/es/components/form/src/types.d.ts +2 -5
  324. package/es/components/form/src/utils.mjs +1 -32
  325. package/es/components/form/src/utils.mjs.map +1 -1
  326. package/es/components/index.d.ts +2 -2
  327. package/es/components/index.mjs +6 -6
  328. package/es/components/input-number/src/input-number.d.ts +0 -5
  329. package/es/components/input-number/src/input-number.mjs +0 -1
  330. package/es/components/input-number/src/input-number.mjs.map +1 -1
  331. package/es/components/input-number/src/input-number.vue_vue_type_script_setup_true_lang.mjs +2 -4
  332. package/es/components/input-number/src/input-number.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  333. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  334. package/es/components/link/src/link.d.ts +2 -2
  335. package/es/components/link/src/link.mjs +3 -9
  336. package/es/components/link/src/link.mjs.map +1 -1
  337. package/es/components/link/src/link.vue.d.ts +1 -1
  338. package/es/components/link/src/link.vue_vue_type_script_setup_true_lang.mjs +2 -13
  339. package/es/components/link/src/link.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  340. package/es/components/link/src/link2.mjs.map +1 -1
  341. package/es/components/menu/src/menu.mjs +1 -1
  342. package/es/components/message-box/src/index.vue_vue_type_script_lang.mjs +1 -1
  343. package/es/components/scrollbar/src/thumb.vue_vue_type_script_setup_true_lang.mjs +26 -77
  344. package/es/components/scrollbar/src/thumb.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  345. package/es/components/scrollbar/src/thumb2.mjs.map +1 -1
  346. package/es/components/select/src/select-dropdown.mjs +7 -10
  347. package/es/components/select/src/select-dropdown.mjs.map +1 -1
  348. package/es/components/select/src/select-dropdown.vue_vue_type_script_lang.mjs +4 -22
  349. package/es/components/select/src/select-dropdown.vue_vue_type_script_lang.mjs.map +1 -1
  350. package/es/components/select/src/select.d.ts +1 -21
  351. package/es/components/select/src/select.mjs +0 -32
  352. package/es/components/select/src/select.mjs.map +1 -1
  353. package/es/components/select/src/select.vue.d.ts +0 -40
  354. package/es/components/select/src/select.vue_vue_type_script_lang.mjs +1 -1
  355. package/es/components/select/src/select.vue_vue_type_script_lang.mjs.map +1 -1
  356. package/es/components/select/src/select2.mjs +8 -44
  357. package/es/components/select/src/select2.mjs.map +1 -1
  358. package/es/components/select/src/useSelect.mjs +12 -26
  359. package/es/components/select/src/useSelect.mjs.map +1 -1
  360. package/es/components/select-v2/src/defaults.d.ts +1 -21
  361. package/es/components/select-v2/src/defaults.mjs +1 -38
  362. package/es/components/select-v2/src/defaults.mjs.map +1 -1
  363. package/es/components/select-v2/src/select.mjs +8 -44
  364. package/es/components/select-v2/src/select.mjs.map +1 -1
  365. package/es/components/select-v2/src/select.vue.d.ts +0 -38
  366. package/es/components/select-v2/src/select.vue_vue_type_script_lang.mjs +1 -1
  367. package/es/components/select-v2/src/select.vue_vue_type_script_lang.mjs.map +1 -1
  368. package/es/components/select-v2/src/useSelect.mjs +20 -60
  369. package/es/components/select-v2/src/useSelect.mjs.map +1 -1
  370. package/es/components/space/src/space.d.ts +21 -7
  371. package/es/components/space/src/space.mjs +2 -5
  372. package/es/components/space/src/space.mjs.map +1 -1
  373. package/es/components/space/src/use-space.mjs +7 -4
  374. package/es/components/space/src/use-space.mjs.map +1 -1
  375. package/es/components/splitter/src/split-bar.mjs.map +1 -1
  376. package/es/components/splitter/src/split-bar.vue_vue_type_script_setup_true_lang.mjs +51 -58
  377. package/es/components/splitter/src/split-bar.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  378. package/es/components/splitter/src/splitter.d.ts +1 -1
  379. package/es/components/splitter/src/splitter.mjs +1 -1
  380. package/es/components/splitter/src/splitter.mjs.map +1 -1
  381. package/es/components/splitter/src/splitter.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  382. package/es/components/splitter/src/splitter2.mjs.map +1 -1
  383. package/es/components/table/src/table.vue_vue_type_script_lang.mjs +1 -1
  384. package/es/components/time-picker/src/common/picker.mjs.map +1 -1
  385. package/es/components/time-picker/src/common/picker.vue.d.ts +0 -3
  386. package/es/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.mjs +4 -3
  387. package/es/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  388. package/es/components/time-picker/src/common/props.d.ts +0 -1
  389. package/es/components/time-picker/src/common/props.mjs +0 -1
  390. package/es/components/time-picker/src/common/props.mjs.map +1 -1
  391. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_setup_true_lang.mjs +1 -1
  392. package/es/components/time-picker/src/time-picker.d.ts +0 -3
  393. package/es/components/time-picker/src/time-picker.mjs +2 -3
  394. package/es/components/time-picker/src/time-picker.mjs.map +1 -1
  395. package/es/components/time-select/src/time-select.d.ts +0 -7
  396. package/es/components/time-select/src/time-select.mjs +0 -4
  397. package/es/components/time-select/src/time-select.mjs.map +1 -1
  398. package/es/components/time-select/src/time-select.vue.d.ts +0 -3
  399. package/es/components/time-select/src/time-select.vue_vue_type_script_setup_true_lang.mjs +0 -2
  400. package/es/components/time-select/src/time-select.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  401. package/es/components/time-select/src/time-select2.mjs.map +1 -1
  402. package/es/components/transfer/src/composables/index.d.ts +2 -1
  403. package/es/components/transfer/src/composables/index.mjs +2 -1
  404. package/es/components/transfer/src/composables/use-tab.d.ts +15 -0
  405. package/es/components/transfer/src/composables/use-tab.mjs +47 -0
  406. package/es/components/transfer/src/composables/use-tab.mjs.map +1 -0
  407. package/es/components/transfer/src/transfer-panel.d.ts +2 -3
  408. package/es/components/transfer/src/transfer-panel.vue.d.ts +4 -31
  409. package/es/components/transfer/src/transfer-panel.vue_vue_type_script_setup_true_lang.mjs +40 -67
  410. package/es/components/transfer/src/transfer-panel.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  411. package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
  412. package/es/components/transfer/src/transfer.vue.d.ts +359 -5
  413. package/es/components/transfer/src/transfer.vue_vue_type_script_setup_true_lang.mjs +162 -55
  414. package/es/components/transfer/src/transfer.vue_vue_type_script_setup_true_lang.mjs.map +1 -1
  415. package/es/components/transfer/src/transfer2.mjs.map +1 -1
  416. package/es/components/tree-select/src/tree-select.vue.d.ts +0 -37
  417. package/es/components/tree-select/src/tree.mjs +16 -3
  418. package/es/components/tree-select/src/tree.mjs.map +1 -1
  419. package/es/index.d.ts +2 -2
  420. package/es/index.mjs +11 -11
  421. package/es/plugin.mjs +1 -1
  422. package/es/version.mjs +1 -1
  423. package/es/version.mjs.map +1 -1
  424. package/lib/component.js +107 -107
  425. package/lib/components/button/src/button-custom.js +49 -1
  426. package/lib/components/button/src/button-custom.js.map +1 -1
  427. package/lib/components/button/src/button-group.js +1 -1
  428. package/lib/components/button/src/button-group.js.map +1 -1
  429. package/lib/components/button/src/button-group.vue_vue_type_script_setup_true_lang.js.map +1 -1
  430. package/lib/components/button/src/button-group2.js.map +1 -1
  431. package/lib/components/cascader/src/cascader.d.ts +3 -131
  432. package/lib/components/cascader/src/cascader.js +19 -29
  433. package/lib/components/cascader/src/cascader.js.map +1 -1
  434. package/lib/components/cascader/src/cascader.vue.d.ts +0 -6
  435. package/lib/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.js +36 -61
  436. package/lib/components/cascader/src/cascader.vue_vue_type_script_setup_true_lang.js.map +1 -1
  437. package/lib/components/cascader/src/cascader2.js.map +1 -1
  438. package/lib/components/cascader-panel/src/index.js.map +1 -1
  439. package/lib/components/cascader-panel/src/index.vue_vue_type_script_setup_true_lang.js +8 -0
  440. package/lib/components/cascader-panel/src/index.vue_vue_type_script_setup_true_lang.js.map +1 -1
  441. package/lib/components/color-picker/src/color-picker.d.ts +0 -16
  442. package/lib/components/color-picker/src/color-picker.js +0 -3
  443. package/lib/components/color-picker/src/color-picker.js.map +1 -1
  444. package/lib/components/color-picker/src/color-picker.vue.d.ts +0 -1
  445. package/lib/components/color-picker/src/color-picker.vue_vue_type_script_setup_true_lang.js +21 -31
  446. package/lib/components/color-picker/src/color-picker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  447. package/lib/components/color-picker/src/color-picker2.js.map +1 -1
  448. package/lib/components/countdown/src/countdown.vue_vue_type_script_setup_true_lang.js +1 -1
  449. package/lib/components/date-picker/src/date-picker.d.ts +0 -3
  450. package/lib/components/date-picker/src/props.d.ts +0 -1
  451. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.js +18 -18
  452. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue_vue_type_script_setup_true_lang.js.map +1 -1
  453. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.js +23 -23
  454. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.vue_vue_type_script_setup_true_lang.js.map +1 -1
  455. package/lib/components/date-picker-panel/src/date-picker-panel.d.ts +1 -1
  456. package/lib/components/form/index.d.ts +2 -2
  457. package/lib/components/form/src/form-item.d.ts +0 -15
  458. package/lib/components/form/src/form-item.js +0 -11
  459. package/lib/components/form/src/form-item.js.map +1 -1
  460. package/lib/components/form/src/form-item.vue.d.ts +5 -6
  461. package/lib/components/form/src/form-item.vue_vue_type_script_setup_true_lang.js +14 -45
  462. package/lib/components/form/src/form-item.vue_vue_type_script_setup_true_lang.js.map +1 -1
  463. package/lib/components/form/src/form-item2.js.map +1 -1
  464. package/lib/components/form/src/form.d.ts +0 -20
  465. package/lib/components/form/src/form.js +0 -15
  466. package/lib/components/form/src/form.js.map +1 -1
  467. package/lib/components/form/src/form.vue.d.ts +0 -2
  468. package/lib/components/form/src/form.vue_vue_type_script_setup_true_lang.js +2 -18
  469. package/lib/components/form/src/form.vue_vue_type_script_setup_true_lang.js.map +1 -1
  470. package/lib/components/form/src/form2.js.map +1 -1
  471. package/lib/components/form/src/types.d.ts +2 -5
  472. package/lib/components/form/src/utils.js +0 -32
  473. package/lib/components/form/src/utils.js.map +1 -1
  474. package/lib/components/index.d.ts +2 -2
  475. package/lib/components/index.js +123 -123
  476. package/lib/components/input-number/src/input-number.d.ts +0 -5
  477. package/lib/components/input-number/src/input-number.js +0 -1
  478. package/lib/components/input-number/src/input-number.js.map +1 -1
  479. package/lib/components/input-number/src/input-number.vue_vue_type_script_setup_true_lang.js +13 -15
  480. package/lib/components/input-number/src/input-number.vue_vue_type_script_setup_true_lang.js.map +1 -1
  481. package/lib/components/input-number/src/input-number2.js.map +1 -1
  482. package/lib/components/link/src/link.d.ts +2 -2
  483. package/lib/components/link/src/link.js +3 -9
  484. package/lib/components/link/src/link.js.map +1 -1
  485. package/lib/components/link/src/link.vue.d.ts +1 -1
  486. package/lib/components/link/src/link.vue_vue_type_script_setup_true_lang.js +6 -17
  487. package/lib/components/link/src/link.vue_vue_type_script_setup_true_lang.js.map +1 -1
  488. package/lib/components/link/src/link2.js.map +1 -1
  489. package/lib/components/menu/src/menu.js +7 -7
  490. package/lib/components/menu/src/menu.js.map +1 -1
  491. package/lib/components/message-box/src/index.vue_vue_type_script_lang.js +19 -19
  492. package/lib/components/message-box/src/index.vue_vue_type_script_lang.js.map +1 -1
  493. package/lib/components/scrollbar/src/thumb.vue_vue_type_script_setup_true_lang.js +26 -77
  494. package/lib/components/scrollbar/src/thumb.vue_vue_type_script_setup_true_lang.js.map +1 -1
  495. package/lib/components/scrollbar/src/thumb2.js.map +1 -1
  496. package/lib/components/select/src/select-dropdown.js +6 -9
  497. package/lib/components/select/src/select-dropdown.js.map +1 -1
  498. package/lib/components/select/src/select-dropdown.vue_vue_type_script_lang.js +3 -21
  499. package/lib/components/select/src/select-dropdown.vue_vue_type_script_lang.js.map +1 -1
  500. package/lib/components/select/src/select.d.ts +1 -21
  501. package/lib/components/select/src/select.js +10 -43
  502. package/lib/components/select/src/select.js.map +1 -1
  503. package/lib/components/select/src/select.vue.d.ts +0 -40
  504. package/lib/components/select/src/select.vue_vue_type_script_lang.js +12 -12
  505. package/lib/components/select/src/select.vue_vue_type_script_lang.js.map +1 -1
  506. package/lib/components/select/src/select2.js +8 -44
  507. package/lib/components/select/src/select2.js.map +1 -1
  508. package/lib/components/select/src/useSelect.js +11 -25
  509. package/lib/components/select/src/useSelect.js.map +1 -1
  510. package/lib/components/select-v2/src/defaults.d.ts +1 -21
  511. package/lib/components/select-v2/src/defaults.js +12 -50
  512. package/lib/components/select-v2/src/defaults.js.map +1 -1
  513. package/lib/components/select-v2/src/select.js +8 -44
  514. package/lib/components/select-v2/src/select.js.map +1 -1
  515. package/lib/components/select-v2/src/select.vue.d.ts +0 -38
  516. package/lib/components/select-v2/src/select.vue_vue_type_script_lang.js +12 -12
  517. package/lib/components/select-v2/src/select.vue_vue_type_script_lang.js.map +1 -1
  518. package/lib/components/select-v2/src/useSelect.js +19 -59
  519. package/lib/components/select-v2/src/useSelect.js.map +1 -1
  520. package/lib/components/space/src/space.d.ts +21 -7
  521. package/lib/components/space/src/space.js +2 -5
  522. package/lib/components/space/src/space.js.map +1 -1
  523. package/lib/components/space/src/use-space.js +7 -4
  524. package/lib/components/space/src/use-space.js.map +1 -1
  525. package/lib/components/splitter/src/split-bar.js.map +1 -1
  526. package/lib/components/splitter/src/split-bar.vue_vue_type_script_setup_true_lang.js +50 -57
  527. package/lib/components/splitter/src/split-bar.vue_vue_type_script_setup_true_lang.js.map +1 -1
  528. package/lib/components/splitter/src/splitter.d.ts +1 -1
  529. package/lib/components/splitter/src/splitter.js +1 -1
  530. package/lib/components/splitter/src/splitter.js.map +1 -1
  531. package/lib/components/splitter/src/splitter.vue_vue_type_script_setup_true_lang.js.map +1 -1
  532. package/lib/components/splitter/src/splitter2.js.map +1 -1
  533. package/lib/components/table/src/table.vue_vue_type_script_lang.js +8 -8
  534. package/lib/components/table/src/table.vue_vue_type_script_lang.js.map +1 -1
  535. package/lib/components/time-picker/src/common/picker.js.map +1 -1
  536. package/lib/components/time-picker/src/common/picker.vue.d.ts +0 -3
  537. package/lib/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.js +4 -3
  538. package/lib/components/time-picker/src/common/picker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  539. package/lib/components/time-picker/src/common/props.d.ts +0 -1
  540. package/lib/components/time-picker/src/common/props.js +0 -1
  541. package/lib/components/time-picker/src/common/props.js.map +1 -1
  542. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_setup_true_lang.js +10 -10
  543. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_setup_true_lang.js.map +1 -1
  544. package/lib/components/time-picker/src/time-picker.d.ts +0 -3
  545. package/lib/components/time-picker/src/time-picker.js +0 -1
  546. package/lib/components/time-picker/src/time-picker.js.map +1 -1
  547. package/lib/components/time-select/src/time-select.d.ts +0 -7
  548. package/lib/components/time-select/src/time-select.js +0 -4
  549. package/lib/components/time-select/src/time-select.js.map +1 -1
  550. package/lib/components/time-select/src/time-select.vue.d.ts +0 -3
  551. package/lib/components/time-select/src/time-select.vue_vue_type_script_setup_true_lang.js +0 -2
  552. package/lib/components/time-select/src/time-select.vue_vue_type_script_setup_true_lang.js.map +1 -1
  553. package/lib/components/time-select/src/time-select2.js.map +1 -1
  554. package/lib/components/transfer/src/composables/index.d.ts +2 -1
  555. package/lib/components/transfer/src/composables/index.js +3 -1
  556. package/lib/components/transfer/src/composables/use-tab.d.ts +15 -0
  557. package/lib/components/transfer/src/composables/use-tab.js +49 -0
  558. package/lib/components/transfer/src/composables/use-tab.js.map +1 -0
  559. package/lib/components/transfer/src/transfer-panel.d.ts +2 -3
  560. package/lib/components/transfer/src/transfer-panel.vue.d.ts +4 -31
  561. package/lib/components/transfer/src/transfer-panel.vue_vue_type_script_setup_true_lang.js +40 -67
  562. package/lib/components/transfer/src/transfer-panel.vue_vue_type_script_setup_true_lang.js.map +1 -1
  563. package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
  564. package/lib/components/transfer/src/transfer.vue.d.ts +359 -5
  565. package/lib/components/transfer/src/transfer.vue_vue_type_script_setup_true_lang.js +161 -54
  566. package/lib/components/transfer/src/transfer.vue_vue_type_script_setup_true_lang.js.map +1 -1
  567. package/lib/components/transfer/src/transfer2.js.map +1 -1
  568. package/lib/components/tree-select/src/tree-select.vue.d.ts +0 -37
  569. package/lib/components/tree-select/src/tree.js +15 -2
  570. package/lib/components/tree-select/src/tree.js.map +1 -1
  571. package/lib/index.d.ts +2 -2
  572. package/lib/index.js +265 -265
  573. package/lib/plugin.js +12 -12
  574. package/lib/version.js +1 -1
  575. package/lib/version.js.map +1 -1
  576. package/package.json +3 -3
  577. package/tags.json +1 -1
  578. package/theme-chalk/display.css +1 -1
  579. package/theme-chalk/el-cascader-panel.css +1 -1
  580. package/theme-chalk/el-cascader.css +1 -1
  581. package/theme-chalk/el-checkbox-group.css +1 -1
  582. package/theme-chalk/el-checkbox.css +1 -1
  583. package/theme-chalk/el-color-picker-panel.css +1 -1
  584. package/theme-chalk/el-color-picker.css +1 -1
  585. package/theme-chalk/el-date-picker-panel.css +1 -1
  586. package/theme-chalk/el-form-item.css +1 -1
  587. package/theme-chalk/el-form.css +1 -1
  588. package/theme-chalk/el-input-number.css +1 -1
  589. package/theme-chalk/el-input.css +1 -1
  590. package/theme-chalk/el-link.css +1 -1
  591. package/theme-chalk/el-option.css +1 -1
  592. package/theme-chalk/el-radio-group.css +1 -1
  593. package/theme-chalk/el-radio.css +1 -1
  594. package/theme-chalk/el-rate.css +1 -1
  595. package/theme-chalk/el-scrollbar.css +1 -1
  596. package/theme-chalk/el-segmented.css +1 -1
  597. package/theme-chalk/el-select-dropdown-v2.css +1 -1
  598. package/theme-chalk/el-select-dropdown.css +1 -1
  599. package/theme-chalk/el-select-v2.css +1 -1
  600. package/theme-chalk/el-select.css +1 -1
  601. package/theme-chalk/el-slider.css +1 -1
  602. package/theme-chalk/el-space.css +1 -1
  603. package/theme-chalk/el-splitter.css +1 -1
  604. package/theme-chalk/el-switch.css +1 -1
  605. package/theme-chalk/el-text.css +1 -1
  606. package/theme-chalk/el-time-picker.css +1 -1
  607. package/theme-chalk/el-time-select.css +1 -1
  608. package/theme-chalk/el-transfer.css +1 -1
  609. package/theme-chalk/el-upload.css +1 -1
  610. package/theme-chalk/index.css +1 -1
  611. package/theme-chalk/src/cascader-panel.scss +61 -0
  612. package/theme-chalk/src/cascader.scss +69 -0
  613. package/theme-chalk/src/checkbox-group.scss +6 -10
  614. package/theme-chalk/src/checkbox.scss +21 -23
  615. package/theme-chalk/src/color-picker-panel.scss +91 -16
  616. package/theme-chalk/src/color-picker.scss +64 -6
  617. package/theme-chalk/src/common/var.scss +10 -17
  618. package/theme-chalk/src/date-picker/date-picker.scss +75 -0
  619. package/theme-chalk/src/date-picker/date-range-picker.scss +95 -0
  620. package/theme-chalk/src/date-picker/picker-panel.scss +95 -1
  621. package/theme-chalk/src/date-picker/picker.scss +93 -0
  622. package/theme-chalk/src/date-picker/time-picker.scss +49 -0
  623. package/theme-chalk/src/date-picker/time-range-picker.scss +29 -0
  624. package/theme-chalk/src/date-picker/time-spinner.scss +35 -0
  625. package/theme-chalk/src/form-item.scss +20 -122
  626. package/theme-chalk/src/form.scss +0 -29
  627. package/theme-chalk/src/input-number.scss +24 -123
  628. package/theme-chalk/src/input.scss +18 -57
  629. package/theme-chalk/src/link.scss +0 -13
  630. package/theme-chalk/src/option.scss +11 -31
  631. package/theme-chalk/src/radio-group.scss +4 -6
  632. package/theme-chalk/src/radio.scss +21 -23
  633. package/theme-chalk/src/rate.scss +15 -17
  634. package/theme-chalk/src/scrollbar.scss +0 -2
  635. package/theme-chalk/src/segmented.scss +7 -9
  636. package/theme-chalk/src/select-dropdown.scss +35 -62
  637. package/theme-chalk/src/select.scss +37 -65
  638. package/theme-chalk/src/slider.scss +44 -45
  639. package/theme-chalk/src/space.scss +17 -8
  640. package/theme-chalk/src/splitter.scss +49 -81
  641. package/theme-chalk/src/switch.scss +36 -54
  642. package/theme-chalk/src/text.scss +0 -1
  643. package/theme-chalk/src/time-select.scss +17 -0
  644. package/theme-chalk/src/transfer.scss +223 -120
  645. package/theme-chalk/src/upload.scss +176 -2
  646. package/web-types.json +1 -1
  647. package/es/components/form/src/form-label-wrap.mjs +0 -72
  648. package/es/components/form/src/form-label-wrap.mjs.map +0 -1
  649. package/es/components/form/src/utils.d.ts +0 -13
  650. package/lib/components/form/src/form-label-wrap.js +0 -73
  651. package/lib/components/form/src/form-label-wrap.js.map +0 -1
  652. package/lib/components/form/src/utils.d.ts +0 -13
@@ -1 +1 @@
1
- {"version":3,"file":"index.vue_vue_type_script_setup_true_lang.mjs","names":[],"sources":["../../../../../../packages/components/cascader-panel/src/index.vue"],"sourcesContent":["<template>\n <div\n :class=\"[ns.b('panel'), ns.is('bordered', border)]\"\n @keydown=\"handleKeyDown\"\n >\n <el-cascader-menu\n v-for=\"(menu, index) in menus\"\n :key=\"index\"\n :ref=\"(item) => (menuList[index] = item as CascaderMenuInstance)\"\n :index=\"index\"\n :nodes=\"[...menu]\"\n >\n <template #empty>\n <slot name=\"empty\" />\n </template>\n </el-cascader-menu>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n nextTick,\n onBeforeUpdate,\n onMounted,\n provide,\n reactive,\n ref,\n useSlots,\n watch,\n} from 'vue'\nimport { cloneDeep, flattenDeep, isEqual } from 'lodash-unified'\nimport {\n castArray,\n focusNode,\n getEventCode,\n getSibling,\n isClient,\n isEmpty,\n scrollIntoView,\n unique,\n} from '@element-plus/utils'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { useNamespace } from '@element-plus/hooks'\nimport ElCascaderMenu from './menu.vue'\nimport Store from './store'\nimport Node from './node'\nimport { cascaderPanelEmits, useCascaderConfig } from './config'\nimport { checkNode, getMenuIndex, sortByOriginalOrder } from './utils'\nimport { CASCADER_PANEL_INJECTION_KEY } from './types'\n\nimport type {\n CascaderNode,\n CascaderNodeValue,\n CascaderOption,\n CascaderValue,\n ElCascaderPanelContext,\n} from './types'\nimport type { CascaderMenuInstance } from './instance'\nimport type { CascaderPanelProps } from './config'\n\ndefineOptions({\n name: 'ElCascaderPanel',\n})\n\nconst props = withDefaults(defineProps<CascaderPanelProps>(), {\n options: () => [],\n props: () => ({}),\n border: true,\n})\nconst emit = defineEmits(cascaderPanelEmits)\n\n// for interrupt sync check status in lazy mode\nlet manualChecked = false\n\nconst ns = useNamespace('cascader')\nconst config = useCascaderConfig(props)\nconst slots = useSlots()\n\nlet store: Store\nconst initialLoaded = ref(true)\nconst initialLoadedOnce = ref(false)\nconst menuList = ref<CascaderMenuInstance[]>([])\nconst checkedValue = ref<CascaderValue>()\nconst menus = ref<CascaderNode[][]>([])\nconst expandingNode = ref<CascaderNode>()\nconst checkedNodes = ref<CascaderNode[]>([])\n\nconst isHoverMenu = computed(() => config.value.expandTrigger === 'hover')\nconst renderLabelFn = computed(() => props.renderLabel || slots.default)\n\nconst initStore = () => {\n const { options } = props\n const cfg = config.value\n\n manualChecked = false\n store = new Store(options, cfg)\n menus.value = [store.getNodes()]\n\n if (cfg.lazy && isEmpty(props.options)) {\n initialLoaded.value = false\n lazyLoad(undefined, (list) => {\n if (list) {\n store = new Store(list, cfg)\n menus.value = [store.getNodes()]\n }\n initialLoaded.value = true\n syncCheckedValue(false, true)\n })\n } else {\n syncCheckedValue(false, true)\n }\n}\n\nconst lazyLoad: ElCascaderPanelContext['lazyLoad'] = (node, cb) => {\n const cfg = config.value\n node! = node || new Node({}, cfg, undefined, true)\n node.loading = true\n\n const resolve = (dataList?: CascaderOption[]) => {\n const _node = node as Node\n const parent = _node.root ? null : _node\n _node.loading = false\n _node.loaded = true\n _node.childrenData = _node.childrenData || []\n dataList && store?.appendNodes(dataList, parent as Node)\n dataList && cb?.(dataList)\n if (node.level === 0) {\n initialLoadedOnce.value = true\n }\n }\n\n const reject = () => {\n node!.loading = false\n node!.loaded = false\n if (node!.level === 0) {\n initialLoaded.value = true\n }\n }\n\n cfg.lazyLoad(node, resolve, reject)\n}\n\nconst expandNode: ElCascaderPanelContext['expandNode'] = (node, silent) => {\n const { level } = node\n const newMenus = menus.value.slice(0, level)\n let newExpandingNode: CascaderNode\n\n if (node.isLeaf) {\n newExpandingNode = node.pathNodes[level - 2]\n } else {\n newExpandingNode = node\n newMenus.push(node.children)\n }\n\n if (expandingNode.value?.uid !== newExpandingNode?.uid) {\n expandingNode.value = node\n menus.value = newMenus\n !silent && emit('expand-change', node?.pathValues || [])\n }\n}\n\nconst handleCheckChange: ElCascaderPanelContext['handleCheckChange'] = (\n node,\n checked,\n emitClose = true\n) => {\n const { checkStrictly, multiple } = config.value\n const oldNode = checkedNodes.value[0]\n manualChecked = true\n\n !multiple && oldNode?.doCheck(false)\n node.doCheck(checked)\n calculateCheckedValue()\n emitClose && !multiple && !checkStrictly && emit('close')\n !emitClose && !multiple && expandParentNode(node)\n}\n\nconst expandParentNode = (node: Node | undefined) => {\n if (!node) return\n node = node.parent\n expandParentNode(node)\n node && expandNode(node)\n}\n\nconst getFlattedNodes = (leafOnly: boolean) => store?.getFlattedNodes(leafOnly)\n\nconst getCheckedNodes = (leafOnly: boolean) => {\n return getFlattedNodes(leafOnly)?.filter(({ checked }) => checked !== false)\n}\n\nconst clearCheckedNodes = () => {\n checkedNodes.value.forEach((node) => node.doCheck(false))\n calculateCheckedValue()\n menus.value = menus.value.slice(0, 1)\n expandingNode.value = undefined\n emit('expand-change', [])\n}\n\nconst calculateCheckedValue = () => {\n const { checkStrictly, multiple } = config.value\n const oldNodes = checkedNodes.value\n const newNodes = getCheckedNodes(!checkStrictly)!\n // ensure the original order\n const nodes = sortByOriginalOrder(oldNodes, newNodes)\n const values = nodes.map((node) => node.valueByOption)\n checkedNodes.value = nodes\n checkedValue.value = multiple ? values : (values[0] ?? null)\n}\n\nconst syncCheckedValue = (loaded = false, forced = false) => {\n const { modelValue } = props\n const { lazy, multiple, checkStrictly } = config.value\n const leafOnly = !checkStrictly\n\n if (\n !initialLoaded.value ||\n manualChecked ||\n (!forced && isEqual(modelValue, checkedValue.value))\n )\n return\n\n if (lazy && !loaded) {\n const values: CascaderNodeValue[] = unique(\n flattenDeep(castArray(modelValue as CascaderNodeValue[]))\n )\n const nodes = values\n .map((val) => store?.getNodeByValue(val))\n .filter((node) => !!node && !node.loaded && !node.loading) as Node[]\n\n if (nodes.length) {\n nodes.forEach((node) => {\n lazyLoad(node, () => syncCheckedValue(false, forced))\n })\n } else {\n syncCheckedValue(true, forced)\n }\n } else {\n const values = multiple ? castArray(modelValue) : [modelValue]\n const nodes = unique(\n values.map((val) =>\n store?.getNodeByValue(val as CascaderNodeValue, leafOnly)\n )\n ) as Node[]\n syncMenuState(nodes, forced)\n checkedValue.value = cloneDeep(modelValue ?? undefined)\n }\n}\n\nconst syncMenuState = (\n newCheckedNodes: CascaderNode[],\n reserveExpandingState = true\n) => {\n const { checkStrictly } = config.value\n const oldNodes = checkedNodes.value\n const newNodes = newCheckedNodes.filter(\n (node) => !!node && (checkStrictly || node.isLeaf)\n )\n const oldExpandingNode = store?.getSameNode(expandingNode.value!)\n const newExpandingNode =\n (reserveExpandingState && oldExpandingNode) || newNodes[0]\n\n if (newExpandingNode) {\n newExpandingNode.pathNodes.forEach((node) => expandNode(node, true))\n } else {\n expandingNode.value = undefined\n }\n\n oldNodes.forEach((node) => node.doCheck(false))\n reactive(newNodes).forEach((node) => node.doCheck(true))\n checkedNodes.value = newNodes\n nextTick(scrollToExpandingNode)\n}\n\nconst scrollToExpandingNode = () => {\n if (!isClient) return\n\n menuList.value.forEach((menu) => {\n const menuElement = menu?.$el\n if (menuElement) {\n const container = menuElement.querySelector(\n `.${ns.namespace.value}-scrollbar__wrap`\n )\n let activeNode = menuElement.querySelector(\n `.${ns.b('node')}.in-active-path`\n )\n if (!activeNode) {\n const activeElements = menuElement.querySelectorAll(\n `.${ns.b('node')}.${ns.is('active')}`\n )\n activeNode = activeElements[activeElements.length - 1]\n }\n scrollIntoView(container, activeNode)\n }\n })\n}\n\nconst handleKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n const code = getEventCode(e)\n\n switch (code) {\n case EVENT_CODE.up:\n case EVENT_CODE.down: {\n e.preventDefault()\n const distance = code === EVENT_CODE.up ? -1 : 1\n focusNode(\n getSibling(\n target,\n distance,\n `.${ns.b('node')}[tabindex=\"-1\"]`\n ) as HTMLElement\n )\n break\n }\n case EVENT_CODE.left: {\n e.preventDefault()\n const preMenu = menuList.value[getMenuIndex(target) - 1]\n const expandedNode = preMenu?.$el.querySelector(\n `.${ns.b('node')}[aria-expanded=\"true\"]`\n )\n focusNode(expandedNode)\n break\n }\n case EVENT_CODE.right: {\n e.preventDefault()\n const nextMenu = menuList.value[getMenuIndex(target) + 1]\n const firstNode = nextMenu?.$el.querySelector(\n `.${ns.b('node')}[tabindex=\"-1\"]`\n )\n focusNode(firstNode)\n break\n }\n case EVENT_CODE.enter:\n case EVENT_CODE.numpadEnter:\n checkNode(target)\n break\n }\n}\n\nprovide(\n CASCADER_PANEL_INJECTION_KEY,\n reactive({\n config,\n expandingNode,\n checkedNodes,\n isHoverMenu,\n initialLoaded,\n renderLabelFn,\n lazyLoad,\n expandNode,\n handleCheckChange,\n })\n)\n\nwatch(\n config,\n (newVal, oldVal) => {\n if (isEqual(newVal, oldVal)) return\n initStore()\n },\n {\n immediate: true,\n }\n)\n\nwatch(() => props.options, initStore, {\n deep: true,\n})\n\nwatch(\n () => props.modelValue,\n () => {\n manualChecked = false\n syncCheckedValue()\n },\n {\n deep: true,\n }\n)\n\nwatch(\n () => checkedValue.value,\n (val) => {\n if (!isEqual(val, props.modelValue)) {\n emit(UPDATE_MODEL_EVENT, val)\n emit(CHANGE_EVENT, val)\n }\n }\n)\n\nconst loadLazyRootNodes = () => {\n if (initialLoadedOnce.value) return\n initStore()\n}\n\nonBeforeUpdate(() => (menuList.value = []))\n\nonMounted(() => !isEmpty(props.modelValue) && syncCheckedValue())\n\ndefineExpose({\n menuList,\n menus,\n checkedNodes,\n handleKeyDown,\n handleCheckChange,\n getFlattedNodes,\n /**\n * @description get an array of currently selected node,(leafOnly) whether only return the leaf checked nodes, default is `false`\n */\n getCheckedNodes,\n /**\n * @description clear checked nodes\n */\n clearCheckedNodes,\n calculateCheckedValue,\n scrollToExpandingNode,\n loadLazyRootNodes,\n})\n</script>\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.vue_vue_type_script_setup_true_lang.mjs","names":[],"sources":["../../../../../../packages/components/cascader-panel/src/index.vue"],"sourcesContent":["<template>\n <div\n ref=\"panelRef\"\n :class=\"[ns.b('panel'), ns.is('bordered', border)]\"\n @keydown=\"handleKeyDown\"\n >\n <el-cascader-menu\n v-for=\"(menu, index) in menus\"\n :key=\"index\"\n :ref=\"(item) => (menuList[index] = item as CascaderMenuInstance)\"\n :index=\"index\"\n :nodes=\"[...menu]\"\n >\n <template #empty>\n <slot name=\"empty\" />\n </template>\n </el-cascader-menu>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n nextTick,\n onBeforeUpdate,\n onMounted,\n provide,\n reactive,\n ref,\n useSlots,\n watch,\n} from 'vue'\nimport { cloneDeep, flattenDeep, isEqual } from 'lodash-unified'\nimport {\n castArray,\n focusNode,\n getEventCode,\n getSibling,\n isClient,\n isEmpty,\n scrollIntoView,\n unique,\n} from '@element-plus/utils'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { useNamespace } from '@element-plus/hooks'\nimport ElCascaderMenu from './menu.vue'\nimport Store from './store'\nimport Node from './node'\nimport { cascaderPanelEmits, useCascaderConfig } from './config'\nimport { checkNode, getMenuIndex, sortByOriginalOrder } from './utils'\nimport { CASCADER_PANEL_INJECTION_KEY } from './types'\n\nimport type {\n CascaderNode,\n CascaderNodeValue,\n CascaderOption,\n CascaderValue,\n ElCascaderPanelContext,\n} from './types'\nimport type { CascaderMenuInstance } from './instance'\nimport type { CascaderPanelProps } from './config'\n\ndefineOptions({\n name: 'ElCascaderPanel',\n})\n\nconst props = withDefaults(defineProps<CascaderPanelProps>(), {\n options: () => [],\n props: () => ({}),\n border: true,\n})\nconst emit = defineEmits(cascaderPanelEmits)\n\n// for interrupt sync check status in lazy mode\nlet manualChecked = false\n\nconst ns = useNamespace('cascader')\nconst config = useCascaderConfig(props)\nconst slots = useSlots()\n\nlet store: Store\nconst initialLoaded = ref(true)\nconst initialLoadedOnce = ref(false)\nconst menuList = ref<CascaderMenuInstance[]>([])\nconst panelRef = ref<HTMLDivElement>()\nconst checkedValue = ref<CascaderValue>()\nconst menus = ref<CascaderNode[][]>([])\nconst expandingNode = ref<CascaderNode>()\nconst checkedNodes = ref<CascaderNode[]>([])\n\nconst isHoverMenu = computed(() => config.value.expandTrigger === 'hover')\nconst renderLabelFn = computed(() => props.renderLabel || slots.default)\n\nconst initStore = () => {\n const { options } = props\n const cfg = config.value\n\n manualChecked = false\n store = new Store(options, cfg)\n menus.value = [store.getNodes()]\n\n if (cfg.lazy && isEmpty(props.options)) {\n initialLoaded.value = false\n lazyLoad(undefined, (list) => {\n if (list) {\n store = new Store(list, cfg)\n menus.value = [store.getNodes()]\n }\n initialLoaded.value = true\n syncCheckedValue(false, true)\n })\n } else {\n syncCheckedValue(false, true)\n }\n}\n\nconst lazyLoad: ElCascaderPanelContext['lazyLoad'] = (node, cb) => {\n const cfg = config.value\n node! = node || new Node({}, cfg, undefined, true)\n node.loading = true\n\n const resolve = (dataList?: CascaderOption[]) => {\n const _node = node as Node\n const parent = _node.root ? null : _node\n _node.loading = false\n _node.loaded = true\n _node.childrenData = _node.childrenData || []\n dataList && store?.appendNodes(dataList, parent as Node)\n dataList && cb?.(dataList)\n if (node.level === 0) {\n initialLoadedOnce.value = true\n }\n }\n\n const reject = () => {\n node!.loading = false\n node!.loaded = false\n if (node!.level === 0) {\n initialLoaded.value = true\n }\n }\n\n cfg.lazyLoad(node, resolve, reject)\n}\n\nconst expandNode: ElCascaderPanelContext['expandNode'] = (node, silent) => {\n const { level } = node\n const newMenus = menus.value.slice(0, level)\n let newExpandingNode: CascaderNode\n\n if (node.isLeaf) {\n newExpandingNode = node.pathNodes[level - 2]\n } else {\n newExpandingNode = node\n newMenus.push(node.children)\n }\n\n if (expandingNode.value?.uid !== newExpandingNode?.uid) {\n expandingNode.value = node\n menus.value = newMenus\n !silent && emit('expand-change', node?.pathValues || [])\n }\n}\n\nconst handleCheckChange: ElCascaderPanelContext['handleCheckChange'] = (\n node,\n checked,\n emitClose = true\n) => {\n const { checkStrictly, multiple } = config.value\n const oldNode = checkedNodes.value[0]\n manualChecked = true\n\n !multiple && oldNode?.doCheck(false)\n node.doCheck(checked)\n calculateCheckedValue()\n emitClose && !multiple && !checkStrictly && emit('close')\n !emitClose && !multiple && expandParentNode(node)\n}\n\nconst expandParentNode = (node: Node | undefined) => {\n if (!node) return\n node = node.parent\n expandParentNode(node)\n node && expandNode(node)\n}\n\nconst getFlattedNodes = (leafOnly: boolean) => store?.getFlattedNodes(leafOnly)\n\nconst getCheckedNodes = (leafOnly: boolean) => {\n return getFlattedNodes(leafOnly)?.filter(({ checked }) => checked !== false)\n}\n\nconst clearCheckedNodes = () => {\n checkedNodes.value.forEach((node) => node.doCheck(false))\n calculateCheckedValue()\n menus.value = menus.value.slice(0, 1)\n expandingNode.value = undefined\n emit('expand-change', [])\n}\n\nconst calculateCheckedValue = () => {\n const { checkStrictly, multiple } = config.value\n const oldNodes = checkedNodes.value\n const newNodes = getCheckedNodes(!checkStrictly)!\n // ensure the original order\n const nodes = sortByOriginalOrder(oldNodes, newNodes)\n const values = nodes.map((node) => node.valueByOption)\n checkedNodes.value = nodes\n checkedValue.value = multiple ? values : (values[0] ?? null)\n}\n\nconst syncCheckedValue = (loaded = false, forced = false) => {\n const { modelValue } = props\n const { lazy, multiple, checkStrictly } = config.value\n const leafOnly = !checkStrictly\n\n if (\n !initialLoaded.value ||\n manualChecked ||\n (!forced && isEqual(modelValue, checkedValue.value))\n )\n return\n\n if (lazy && !loaded) {\n const values: CascaderNodeValue[] = unique(\n flattenDeep(castArray(modelValue as CascaderNodeValue[]))\n )\n const nodes = values\n .map((val) => store?.getNodeByValue(val))\n .filter((node) => !!node && !node.loaded && !node.loading) as Node[]\n\n if (nodes.length) {\n nodes.forEach((node) => {\n lazyLoad(node, () => syncCheckedValue(false, forced))\n })\n } else {\n syncCheckedValue(true, forced)\n }\n } else {\n const values = multiple ? castArray(modelValue) : [modelValue]\n const nodes = unique(\n values.map((val) =>\n store?.getNodeByValue(val as CascaderNodeValue, leafOnly)\n )\n ) as Node[]\n syncMenuState(nodes, forced)\n checkedValue.value = cloneDeep(modelValue ?? undefined)\n }\n}\n\nconst syncMenuState = (\n newCheckedNodes: CascaderNode[],\n reserveExpandingState = true\n) => {\n const { checkStrictly } = config.value\n const oldNodes = checkedNodes.value\n const newNodes = newCheckedNodes.filter(\n (node) => !!node && (checkStrictly || node.isLeaf)\n )\n const oldExpandingNode = store?.getSameNode(expandingNode.value!)\n const newExpandingNode =\n (reserveExpandingState && oldExpandingNode) || newNodes[0]\n\n if (newExpandingNode) {\n newExpandingNode.pathNodes.forEach((node) => expandNode(node, true))\n } else {\n expandingNode.value = undefined\n }\n\n oldNodes.forEach((node) => node.doCheck(false))\n reactive(newNodes).forEach((node) => node.doCheck(true))\n checkedNodes.value = newNodes\n nextTick(scrollToExpandingNode)\n}\n\nconst scrollToExpandingNode = () => {\n if (!isClient) return\n\n menuList.value.forEach((menu) => {\n const menuElement = menu?.$el\n if (menuElement) {\n const container = menuElement.querySelector(\n `.${ns.namespace.value}-scrollbar__wrap`\n )\n let activeNode = menuElement.querySelector(\n `.${ns.b('node')}.in-active-path`\n )\n if (!activeNode) {\n const activeElements = menuElement.querySelectorAll(\n `.${ns.b('node')}.${ns.is('active')}`\n )\n activeNode = activeElements[activeElements.length - 1]\n }\n scrollIntoView(container, activeNode)\n }\n })\n}\n\nwatch(\n () => menus.value.length,\n async (length, previousLength = 0) => {\n if (\n !isClient ||\n !panelRef.value ||\n length <= 1 ||\n length <= previousLength\n ) {\n return\n }\n\n await nextTick()\n panelRef.value.scrollLeft = panelRef.value.scrollWidth\n }\n)\n\nconst handleKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n const code = getEventCode(e)\n\n switch (code) {\n case EVENT_CODE.up:\n case EVENT_CODE.down: {\n e.preventDefault()\n const distance = code === EVENT_CODE.up ? -1 : 1\n focusNode(\n getSibling(\n target,\n distance,\n `.${ns.b('node')}[tabindex=\"-1\"]`\n ) as HTMLElement\n )\n break\n }\n case EVENT_CODE.left: {\n e.preventDefault()\n const preMenu = menuList.value[getMenuIndex(target) - 1]\n const expandedNode = preMenu?.$el.querySelector(\n `.${ns.b('node')}[aria-expanded=\"true\"]`\n )\n focusNode(expandedNode)\n break\n }\n case EVENT_CODE.right: {\n e.preventDefault()\n const nextMenu = menuList.value[getMenuIndex(target) + 1]\n const firstNode = nextMenu?.$el.querySelector(\n `.${ns.b('node')}[tabindex=\"-1\"]`\n )\n focusNode(firstNode)\n break\n }\n case EVENT_CODE.enter:\n case EVENT_CODE.numpadEnter:\n checkNode(target)\n break\n }\n}\n\nprovide(\n CASCADER_PANEL_INJECTION_KEY,\n reactive({\n config,\n expandingNode,\n checkedNodes,\n isHoverMenu,\n initialLoaded,\n renderLabelFn,\n lazyLoad,\n expandNode,\n handleCheckChange,\n })\n)\n\nwatch(\n config,\n (newVal, oldVal) => {\n if (isEqual(newVal, oldVal)) return\n initStore()\n },\n {\n immediate: true,\n }\n)\n\nwatch(() => props.options, initStore, {\n deep: true,\n})\n\nwatch(\n () => props.modelValue,\n () => {\n manualChecked = false\n syncCheckedValue()\n },\n {\n deep: true,\n }\n)\n\nwatch(\n () => checkedValue.value,\n (val) => {\n if (!isEqual(val, props.modelValue)) {\n emit(UPDATE_MODEL_EVENT, val)\n emit(CHANGE_EVENT, val)\n }\n }\n)\n\nconst loadLazyRootNodes = () => {\n if (initialLoadedOnce.value) return\n initStore()\n}\n\nonBeforeUpdate(() => (menuList.value = []))\n\nonMounted(() => !isEmpty(props.modelValue) && syncCheckedValue())\n\ndefineExpose({\n menuList,\n menus,\n checkedNodes,\n handleKeyDown,\n handleCheckChange,\n getFlattedNodes,\n /**\n * @description get an array of currently selected node,(leafOnly) whether only return the leaf checked nodes, default is `false`\n */\n getCheckedNodes,\n /**\n * @description clear checked nodes\n */\n clearCheckedNodes,\n calculateCheckedValue,\n scrollToExpandingNode,\n loadLazyRootNodes,\n})\n</script>\n"],"mappings":"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"}
@@ -57,14 +57,6 @@ interface ColorPickerProps extends UseEmptyValuesProps, Pick<AriaProps, 'ariaLab
57
57
  * @description ColorPicker tabindex
58
58
  */
59
59
  tabindex?: string | number;
60
- /**
61
- * @description whether color-picker popper is teleported to the body
62
- */
63
- teleported?: ElTooltipContentProps['teleported'];
64
- /**
65
- * @description which color-picker panel appends to
66
- */
67
- appendTo?: ElTooltipContentProps['appendTo'];
68
60
  /**
69
61
  * @description predefined color options
70
62
  */
@@ -208,13 +200,6 @@ declare const colorPickerProps: {
208
200
  __epPropKey: true;
209
201
  };
210
202
  readonly tabindex: EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, 0, boolean>;
211
- readonly teleported: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
212
- readonly appendTo: {
213
- readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | (((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement)) | null)[], unknown, unknown>) | (((new (...args: any[]) => string | HTMLElement) | (() => EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | (((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement)) | null)[], unknown, unknown>)) | null)[], unknown, unknown>>;
214
- readonly required: false;
215
- readonly validator: ((val: unknown) => boolean) | undefined;
216
- __epPropKey: true;
217
- };
218
203
  readonly predefine: {
219
204
  readonly type: vue.PropType<string[]>;
220
205
  readonly required: false;
@@ -247,7 +232,6 @@ declare const colorPickerPropsDefaults: {
247
232
  readonly clearable: true;
248
233
  readonly popperStyle: undefined;
249
234
  readonly tabindex: 0;
250
- readonly teleported: true;
251
235
  readonly validateEvent: true;
252
236
  readonly valueOnClear: undefined;
253
237
  };
@@ -38,8 +38,6 @@ const colorPickerProps = buildProps({
38
38
  type: [String, Number],
39
39
  default: 0
40
40
  },
41
- teleported: useTooltipContentProps.teleported,
42
- appendTo: useTooltipContentProps.appendTo,
43
41
  predefine: { type: definePropType(Array) },
44
42
  validateEvent: {
45
43
  type: Boolean,
@@ -66,7 +64,6 @@ const colorPickerPropsDefaults = {
66
64
  clearable: true,
67
65
  popperStyle: void 0,
68
66
  tabindex: 0,
69
- teleported: true,
70
67
  validateEvent: true,
71
68
  valueOnClear: void 0
72
69
  };
@@ -1 +1 @@
1
- {"version":3,"file":"color-picker.mjs","names":[],"sources":["../../../../../../packages/components/color-picker/src/color-picker.ts"],"sourcesContent":["import { isNil } from 'lodash-unified'\nimport { buildProps, definePropType, isString } from '@element-plus/utils'\nimport {\n useAriaProps,\n useEmptyValuesProps,\n useSizeProp,\n} from '@element-plus/hooks'\nimport { useTooltipContentProps } from '@element-plus/components/tooltip'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\n\nimport type { ExtractPublicPropTypes } from 'vue'\nimport type { ColorFormats } from '@ctrl/tinycolor'\nimport type ColorPicker from './color-picker.vue'\nimport type { AriaProps, UseEmptyValuesProps } from '@element-plus/hooks'\nimport type { ComponentSize } from '@element-plus/constants'\nimport type { ElTooltipContentProps } from '@element-plus/components/tooltip'\n\nexport interface ColorPickerProps\n extends UseEmptyValuesProps, Pick<AriaProps, 'ariaLabel'> {\n /**\n * @description when color-picker inactive and persistent is false, the color panel will be destroyed\n */\n persistent?: boolean\n /**\n * @description binding value\n */\n modelValue?: string | null\n /**\n * @description ColorPicker id\n */\n id?: string\n /**\n * @description whether to display the alpha slider\n */\n showAlpha?: boolean\n /**\n * @description color format of v-model\n */\n colorFormat?: ColorFormats\n /**\n * @description whether to disable the ColorPicker\n */\n disabled?: boolean\n /**\n * @description whether to show clear button\n */\n clearable?: boolean\n /**\n * @description size of ColorPicker\n */\n size?: ComponentSize\n /**\n * @description custom class name for ColorPicker's dropdown\n */\n popperClass?: ElTooltipContentProps['popperClass']\n /**\n * @description custom style for ColorPicker's dropdown\n */\n popperStyle?: ElTooltipContentProps['popperStyle']\n /**\n * @description ColorPicker tabindex\n */\n tabindex?: string | number\n /**\n * @description whether color-picker popper is teleported to the body\n */\n teleported?: ElTooltipContentProps['teleported']\n /**\n * @description which color-picker panel appends to\n */\n appendTo?: ElTooltipContentProps['appendTo']\n /**\n * @description predefined color options\n */\n predefine?: string[]\n /**\n * @description whether to trigger form validation\n */\n validateEvent?: boolean\n}\n\n/**\n * @deprecated Removed after 3.0.0, Use `ColorPickerProps` instead.\n */\nexport const colorPickerProps = buildProps({\n /**\n * @description when color-picker inactive and persistent is false, the color panel will be destroyed\n */\n persistent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description binding value\n */\n modelValue: {\n type: definePropType<string | null>(String),\n default: undefined,\n },\n /**\n * @description ColorPicker id\n */\n id: String,\n /**\n * @description whether to display the alpha slider\n */\n showAlpha: Boolean,\n /**\n * @description color format of v-model\n */\n colorFormat: {\n type: definePropType<ColorFormats>(String),\n },\n /**\n * @description whether to disable the ColorPicker\n */\n disabled: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description whether to show clear button\n */\n clearable: {\n type: Boolean,\n default: true,\n },\n /**\n * @description size of ColorPicker\n */\n size: useSizeProp,\n /**\n * @description custom class name for ColorPicker's dropdown\n */\n popperClass: useTooltipContentProps.popperClass,\n /**\n * @description custom style for ColorPicker's dropdown\n */\n popperStyle: useTooltipContentProps.popperStyle,\n /**\n * @description ColorPicker tabindex\n */\n tabindex: {\n type: [String, Number],\n default: 0,\n },\n /**\n * @description whether color-picker popper is teleported to the body\n */\n teleported: useTooltipContentProps.teleported,\n /**\n * @description which color-picker panel appends to\n */\n appendTo: useTooltipContentProps.appendTo,\n /**\n * @description predefined color options\n */\n predefine: {\n type: definePropType<string[]>(Array),\n },\n /**\n * @description whether to trigger form validation\n */\n validateEvent: {\n type: Boolean,\n default: true,\n },\n ...useEmptyValuesProps,\n ...useAriaProps(['ariaLabel']),\n} as const)\nexport const colorPickerEmits = {\n [UPDATE_MODEL_EVENT]: (val: string | null) => isString(val) || isNil(val),\n [CHANGE_EVENT]: (val: string | null) => isString(val) || isNil(val),\n activeChange: (val: string | null) => isString(val) || isNil(val),\n focus: (evt: FocusEvent) => evt instanceof FocusEvent,\n blur: (evt: FocusEvent) => evt instanceof FocusEvent,\n clear: () => true,\n}\n\n/**\n * @deprecated Removed after 3.0.0, Use `ColorPickerProps` instead.\n */\nexport type ColorPickerPropsPublic = ExtractPublicPropTypes<\n typeof colorPickerProps\n>\nexport type ColorPickerEmits = typeof colorPickerEmits\nexport type ColorPickerInstance = InstanceType<typeof ColorPicker> & unknown\n\n/**\n * @description default values for ColorPickerProps, used in components that extend ColorPickerProps\n */\nexport const colorPickerPropsDefaults = {\n persistent: true,\n modelValue: undefined,\n disabled: undefined,\n clearable: true,\n popperStyle: undefined,\n tabindex: 0,\n teleported: true,\n validateEvent: true,\n valueOnClear: undefined,\n} as const\n"],"mappings":";;;;;;;;;;;;;AAoFA,MAAa,mBAAmB,WAAW;CAIzC,YAAY;EACV,MAAM;EACN,SAAS;EACV;CAID,YAAY;EACV,MAAM,eAA8B,OAAO;EAC3C,SAAS;EACV;CAID,IAAI;CAIJ,WAAW;CAIX,aAAa,EACX,MAAM,eAA6B,OAAO,EAC3C;CAID,UAAU;EACR,MAAM;EACN,SAAS;EACV;CAID,WAAW;EACT,MAAM;EACN,SAAS;EACV;CAID,MAAM;CAIN,aAAa,uBAAuB;CAIpC,aAAa,uBAAuB;CAIpC,UAAU;EACR,MAAM,CAAC,QAAQ,OAAO;EACtB,SAAS;EACV;CAID,YAAY,uBAAuB;CAInC,UAAU,uBAAuB;CAIjC,WAAW,EACT,MAAM,eAAyB,MAAM,EACtC;CAID,eAAe;EACb,MAAM;EACN,SAAS;EACV;CACD,GAAG;CACH,GAAG,aAAa,CAAC,YAAY,CAAC;CAC/B,CAAU;AACX,MAAa,mBAAmB;EAC7B,sBAAsB,QAAuB,SAAS,IAAI,IAAI,MAAM,IAAI;EACxE,gBAAgB,QAAuB,SAAS,IAAI,IAAI,MAAM,IAAI;CACnE,eAAe,QAAuB,SAAS,IAAI,IAAI,MAAM,IAAI;CACjE,QAAQ,QAAoB,eAAe;CAC3C,OAAO,QAAoB,eAAe;CAC1C,aAAa;CACd;;;;AAcD,MAAa,2BAA2B;CACtC,YAAY;CACZ,YAAY;CACZ,UAAU;CACV,WAAW;CACX,aAAa;CACb,UAAU;CACV,YAAY;CACZ,eAAe;CACf,cAAc;CACf"}
1
+ {"version":3,"file":"color-picker.mjs","names":[],"sources":["../../../../../../packages/components/color-picker/src/color-picker.ts"],"sourcesContent":["import { isNil } from 'lodash-unified'\nimport { buildProps, definePropType, isString } from '@element-plus/utils'\nimport {\n useAriaProps,\n useEmptyValuesProps,\n useSizeProp,\n} from '@element-plus/hooks'\nimport { useTooltipContentProps } from '@element-plus/components/tooltip'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\n\nimport type { ExtractPublicPropTypes } from 'vue'\nimport type { ColorFormats } from '@ctrl/tinycolor'\nimport type ColorPicker from './color-picker.vue'\nimport type { AriaProps, UseEmptyValuesProps } from '@element-plus/hooks'\nimport type { ComponentSize } from '@element-plus/constants'\nimport type { ElTooltipContentProps } from '@element-plus/components/tooltip'\n\nexport interface ColorPickerProps\n extends UseEmptyValuesProps, Pick<AriaProps, 'ariaLabel'> {\n /**\n * @description when color-picker inactive and persistent is false, the color panel will be destroyed\n */\n persistent?: boolean\n /**\n * @description binding value\n */\n modelValue?: string | null\n /**\n * @description ColorPicker id\n */\n id?: string\n /**\n * @description whether to display the alpha slider\n */\n showAlpha?: boolean\n /**\n * @description color format of v-model\n */\n colorFormat?: ColorFormats\n /**\n * @description whether to disable the ColorPicker\n */\n disabled?: boolean\n /**\n * @description whether to show clear button\n */\n clearable?: boolean\n /**\n * @description size of ColorPicker\n */\n size?: ComponentSize\n /**\n * @description custom class name for ColorPicker's dropdown\n */\n popperClass?: ElTooltipContentProps['popperClass']\n /**\n * @description custom style for ColorPicker's dropdown\n */\n popperStyle?: ElTooltipContentProps['popperStyle']\n /**\n * @description ColorPicker tabindex\n */\n tabindex?: string | number\n /**\n * @description predefined color options\n */\n predefine?: string[]\n /**\n * @description whether to trigger form validation\n */\n validateEvent?: boolean\n}\n\n/**\n * @deprecated Removed after 3.0.0, Use `ColorPickerProps` instead.\n */\nexport const colorPickerProps = buildProps({\n /**\n * @description when color-picker inactive and persistent is false, the color panel will be destroyed\n */\n persistent: {\n type: Boolean,\n default: true,\n },\n /**\n * @description binding value\n */\n modelValue: {\n type: definePropType<string | null>(String),\n default: undefined,\n },\n /**\n * @description ColorPicker id\n */\n id: String,\n /**\n * @description whether to display the alpha slider\n */\n showAlpha: Boolean,\n /**\n * @description color format of v-model\n */\n colorFormat: {\n type: definePropType<ColorFormats>(String),\n },\n /**\n * @description whether to disable the ColorPicker\n */\n disabled: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description whether to show clear button\n */\n clearable: {\n type: Boolean,\n default: true,\n },\n /**\n * @description size of ColorPicker\n */\n size: useSizeProp,\n /**\n * @description custom class name for ColorPicker's dropdown\n */\n popperClass: useTooltipContentProps.popperClass,\n /**\n * @description custom style for ColorPicker's dropdown\n */\n popperStyle: useTooltipContentProps.popperStyle,\n /**\n * @description ColorPicker tabindex\n */\n tabindex: {\n type: [String, Number],\n default: 0,\n },\n /**\n * @description predefined color options\n */\n predefine: {\n type: definePropType<string[]>(Array),\n },\n /**\n * @description whether to trigger form validation\n */\n validateEvent: {\n type: Boolean,\n default: true,\n },\n ...useEmptyValuesProps,\n ...useAriaProps(['ariaLabel']),\n} as const)\nexport const colorPickerEmits = {\n [UPDATE_MODEL_EVENT]: (val: string | null) => isString(val) || isNil(val),\n [CHANGE_EVENT]: (val: string | null) => isString(val) || isNil(val),\n activeChange: (val: string | null) => isString(val) || isNil(val),\n focus: (evt: FocusEvent) => evt instanceof FocusEvent,\n blur: (evt: FocusEvent) => evt instanceof FocusEvent,\n clear: () => true,\n}\n\n/**\n * @deprecated Removed after 3.0.0, Use `ColorPickerProps` instead.\n */\nexport type ColorPickerPropsPublic = ExtractPublicPropTypes<\n typeof colorPickerProps\n>\nexport type ColorPickerEmits = typeof colorPickerEmits\nexport type ColorPickerInstance = InstanceType<typeof ColorPicker> & unknown\n\n/**\n * @description default values for ColorPickerProps, used in components that extend ColorPickerProps\n */\nexport const colorPickerPropsDefaults = {\n persistent: true,\n modelValue: undefined,\n disabled: undefined,\n clearable: true,\n popperStyle: undefined,\n tabindex: 0,\n validateEvent: true,\n valueOnClear: undefined,\n} as const\n"],"mappings":";;;;;;;;;;;;;AA4EA,MAAa,mBAAmB,WAAW;CAIzC,YAAY;EACV,MAAM;EACN,SAAS;EACV;CAID,YAAY;EACV,MAAM,eAA8B,OAAO;EAC3C,SAAS;EACV;CAID,IAAI;CAIJ,WAAW;CAIX,aAAa,EACX,MAAM,eAA6B,OAAO,EAC3C;CAID,UAAU;EACR,MAAM;EACN,SAAS;EACV;CAID,WAAW;EACT,MAAM;EACN,SAAS;EACV;CAID,MAAM;CAIN,aAAa,uBAAuB;CAIpC,aAAa,uBAAuB;CAIpC,UAAU;EACR,MAAM,CAAC,QAAQ,OAAO;EACtB,SAAS;EACV;CAID,WAAW,EACT,MAAM,eAAyB,MAAM,EACtC;CAID,eAAe;EACb,MAAM;EACN,SAAS;EACV;CACD,GAAG;CACH,GAAG,aAAa,CAAC,YAAY,CAAC;CAC/B,CAAU;AACX,MAAa,mBAAmB;EAC7B,sBAAsB,QAAuB,SAAS,IAAI,IAAI,MAAM,IAAI;EACxE,gBAAgB,QAAuB,SAAS,IAAI,IAAI,MAAM,IAAI;CACnE,eAAe,QAAuB,SAAS,IAAI,IAAI,MAAM,IAAI;CACjE,QAAQ,QAAoB,eAAe;CAC3C,OAAO,QAAoB,eAAe;CAC1C,aAAa;CACd;;;;AAcD,MAAa,2BAA2B;CACtC,YAAY;CACZ,YAAY;CACZ,UAAU;CACV,WAAW;CACX,aAAa;CACb,UAAU;CACV,eAAe;CACf,cAAc;CACf"}
@@ -43,7 +43,6 @@ declare const __VLS_export: vue.DefineComponent<ColorPickerProps, {
43
43
  "onUpdate:modelValue"?: ((val: string | null) => any) | undefined;
44
44
  onActiveChange?: ((val: string | null) => any) | undefined;
45
45
  }>, {
46
- teleported: boolean;
47
46
  modelValue: string | null;
48
47
  popperStyle: string | false | vue.CSSProperties | vue.StyleValue[] | null;
49
48
  disabled: boolean;
@@ -3,7 +3,6 @@ import { CHANGE_EVENT, UPDATE_MODEL_EVENT } from "../../../constants/event.mjs";
3
3
  import { getEventCode } from "../../../utils/dom/event.mjs";
4
4
  import { debugWarn } from "../../../utils/error.mjs";
5
5
  import { ArrowDown, Close } from "../../../utils/vue/builtin-icons.mjs";
6
- import ClickOutside from "../../../directives/click-outside/index.mjs";
7
6
  import { useLocale } from "../../../hooks/use-locale/index.mjs";
8
7
  import { useNamespace } from "../../../hooks/use-namespace/index.mjs";
9
8
  import { useFocusController } from "../../../hooks/use-focus-controller/index.mjs";
@@ -13,6 +12,7 @@ import { useFormDisabled, useFormSize } from "../../form/src/hooks/use-form-comm
13
12
  import { useFormItem, useFormItemInputId } from "../../form/src/hooks/use-form-item.mjs";
14
13
  import { ElTooltip } from "../../tooltip/index.mjs";
15
14
  import { ElButton } from "../../button/index.mjs";
15
+ import ClickOutside from "../../../directives/click-outside/index.mjs";
16
16
  import { ROOT_COMMON_COLOR_INJECTION_KEY, colorPickerPanelProps } from "../../color-picker-panel/src/color-picker-panel.mjs";
17
17
  import Color from "../../color-picker-panel/src/utils/color.mjs";
18
18
  import { useCommonColor } from "../../color-picker-panel/src/composables/use-common-color.mjs";
@@ -207,13 +207,6 @@ var color_picker_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ d
207
207
  ref: popper,
208
208
  visible: showPicker.value,
209
209
  "show-arrow": false,
210
- "fallback-placements": [
211
- "bottom",
212
- "top",
213
- "right",
214
- "left"
215
- ],
216
- offset: 0,
217
210
  "gpu-acceleration": false,
218
211
  "popper-class": [unref(ns).be("picker", "panel"), __props.popperClass],
219
212
  "popper-style": __props.popperStyle,
@@ -223,10 +216,9 @@ var color_picker_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ d
223
216
  role: "dialog",
224
217
  effect: "light",
225
218
  trigger: "click",
226
- teleported: __props.teleported,
227
- transition: `${unref(ns).namespace.value}-zoom-in-top`,
219
+ teleported: "",
220
+ transition: `${unref(ns).namespace.value}-fade-in-linear`,
228
221
  persistent: __props.persistent,
229
- "append-to": __props.appendTo,
230
222
  onShow: handleShowTooltip,
231
223
  onHide: _cache[2] || (_cache[2] = ($event) => setShowPicker(false))
232
224
  }, {
@@ -295,10 +287,8 @@ var color_picker_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ d
295
287
  "visible",
296
288
  "popper-class",
297
289
  "popper-style",
298
- "teleported",
299
290
  "transition",
300
- "persistent",
301
- "append-to"
291
+ "persistent"
302
292
  ]);
303
293
  };
304
294
  }
@@ -1 +1 @@
1
- {"version":3,"file":"color-picker.vue_vue_type_script_setup_true_lang.mjs","names":["$attrs"],"sources":["../../../../../../packages/components/color-picker/src/color-picker.vue"],"sourcesContent":["<template>\n <el-tooltip\n ref=\"popper\"\n :visible=\"showPicker\"\n :show-arrow=\"false\"\n :fallback-placements=\"['bottom', 'top', 'right', 'left']\"\n :offset=\"0\"\n :gpu-acceleration=\"false\"\n :popper-class=\"[ns.be('picker', 'panel'), popperClass!]\"\n :popper-style=\"popperStyle\"\n :stop-popper-mouse-event=\"false\"\n pure\n loop\n role=\"dialog\"\n effect=\"light\"\n trigger=\"click\"\n :teleported=\"teleported\"\n :transition=\"`${ns.namespace.value}-zoom-in-top`\"\n :persistent=\"persistent\"\n :append-to=\"appendTo\"\n @show=\"handleShowTooltip\"\n @hide=\"setShowPicker(false)\"\n >\n <template #content>\n <el-color-picker-panel\n ref=\"pickerPanelRef\"\n v-bind=\"panelProps\"\n v-click-outside:[triggerRef]=\"handleClickOutside\"\n :border=\"false\"\n :validate-event=\"false\"\n @keydown.esc=\"handleEsc\"\n >\n <template #footer>\n <div>\n <el-button\n v-if=\"clearable\"\n :class=\"ns.be('footer', 'link-btn')\"\n text\n size=\"small\"\n @click=\"clear\"\n >\n {{ t('el.colorpicker.clear') }}\n </el-button>\n <el-button\n plain\n size=\"small\"\n :class=\"ns.be('footer', 'btn')\"\n @click=\"confirmValue\"\n >\n {{ t('el.colorpicker.confirm') }}\n </el-button>\n </div>\n </template>\n </el-color-picker-panel>\n </template>\n <template #default>\n <div\n :id=\"buttonId\"\n ref=\"triggerRef\"\n v-bind=\"$attrs\"\n :class=\"btnKls\"\n role=\"button\"\n :aria-label=\"buttonAriaLabel\"\n :aria-labelledby=\"buttonAriaLabelledby\"\n :aria-description=\"\n t('el.colorpicker.description', { color: modelValue || '' })\n \"\n :aria-disabled=\"colorDisabled\"\n :tabindex=\"colorDisabled ? undefined : tabindex\"\n @keydown=\"handleKeyDown\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n >\n <div :class=\"ns.be('picker', 'trigger')\" @click=\"handleTrigger\">\n <span :class=\"[ns.be('picker', 'color'), ns.is('alpha', showAlpha)]\">\n <span\n :class=\"ns.be('picker', 'color-inner')\"\n :style=\"{\n backgroundColor: displayedColor,\n }\"\n >\n <el-icon\n v-show=\"modelValue || showPanelColor\"\n :class=\"[ns.be('picker', 'icon'), ns.is('icon-arrow-down')]\"\n >\n <arrow-down />\n </el-icon>\n <el-icon\n v-show=\"!modelValue && !showPanelColor\"\n :class=\"[ns.be('picker', 'empty'), ns.is('icon-close')]\"\n >\n <close />\n </el-icon>\n </span>\n </span>\n </div>\n </div>\n </template>\n </el-tooltip>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, provide, ref, watch } from 'vue'\nimport { debounce, pick } from 'lodash-unified'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { reactiveComputed } from '@vueuse/core'\nimport { ClickOutside as vClickOutside } from '@element-plus/directives'\nimport { ElTooltip } from '@element-plus/components/tooltip'\nimport { ElButton } from '@element-plus/components/button'\nimport {\n useFormDisabled,\n useFormItem,\n useFormItemInputId,\n useFormSize,\n} from '@element-plus/components/form'\nimport {\n useEmptyValues,\n useFocusController,\n useLocale,\n useNamespace,\n} from '@element-plus/hooks'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { ArrowDown, Close, debugWarn, getEventCode } from '@element-plus/utils'\nimport { colorPickerEmits, colorPickerPropsDefaults } from './color-picker'\nimport {\n ElColorPickerPanel,\n ROOT_COMMON_COLOR_INJECTION_KEY,\n colorPickerPanelProps,\n} from '@element-plus/components/color-picker-panel'\nimport Color from '@element-plus/components/color-picker-panel/src/utils/color'\nimport { useCommonColor } from '@element-plus/components/color-picker-panel/src/composables/use-common-color'\n\nimport type { ColorPickerPanelInstance } from '@element-plus/components/color-picker-panel'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\nimport type { ColorPickerProps } from './color-picker'\n\ndefineOptions({\n name: 'ElColorPicker',\n})\nconst props = withDefaults(\n defineProps<ColorPickerProps>(),\n colorPickerPropsDefaults\n)\n\nconst emit = defineEmits(colorPickerEmits)\n\nconst { t } = useLocale()\nconst ns = useNamespace('color')\nconst { formItem } = useFormItem()\nconst colorSize = useFormSize()\nconst colorDisabled = useFormDisabled()\nconst { valueOnClear, isEmptyValue } = useEmptyValues(props, null)\nconst commonColor = useCommonColor(props, emit)\nconst { inputId: buttonId, isLabeledByFormItem } = useFormItemInputId(props, {\n formItemContext: formItem,\n})\n\nconst popper = ref<TooltipInstance>()\nconst triggerRef = ref()\nconst pickerPanelRef = ref<ColorPickerPanelInstance>()\nconst showPicker = ref(false)\nconst showPanelColor = ref(false)\n\n// active-change is used to prevent modelValue changes from triggering.\nlet shouldActiveChange = true\n\nconst { isFocused, handleFocus, handleBlur } = useFocusController(triggerRef, {\n disabled: colorDisabled,\n beforeBlur(event) {\n return popper.value?.isFocusInsideContent(event)\n },\n afterBlur() {\n setShowPicker(false)\n resetColor()\n if (props.validateEvent) {\n formItem?.validate?.('blur').catch((err) => debugWarn(err))\n }\n },\n})\n\nconst color = reactiveComputed(\n () => pickerPanelRef.value?.color ?? commonColor.color\n) as Color\n\nconst panelProps = computed(() =>\n pick(props, Object.keys(colorPickerPanelProps))\n)\n\nconst displayedColor = computed(() => {\n if (!props.modelValue && !showPanelColor.value) {\n return 'transparent'\n }\n return displayedRgb(color, props.showAlpha)\n})\n\nconst currentColor = computed(() => {\n return !props.modelValue && !showPanelColor.value ? '' : color.value\n})\n\nconst buttonAriaLabel = computed<string | undefined>(() => {\n return !isLabeledByFormItem.value\n ? props.ariaLabel || t('el.colorpicker.defaultLabel')\n : undefined\n})\n\nconst buttonAriaLabelledby = computed<string | undefined>(() => {\n return isLabeledByFormItem.value ? formItem?.labelId : undefined\n})\n\nconst btnKls = computed(() => {\n return [\n ns.b('picker'),\n ns.is('disabled', colorDisabled.value),\n ns.bm('picker', colorSize.value),\n ns.is('focused', isFocused.value),\n ]\n})\n\nfunction displayedRgb(color: Color, showAlpha: boolean) {\n const { r, g, b, a } = color.toRgb()\n return showAlpha ? `rgba(${r}, ${g}, ${b}, ${a})` : `rgb(${r}, ${g}, ${b})`\n}\n\nfunction setShowPicker(value: boolean) {\n showPicker.value = value\n}\n\nconst debounceSetShowPicker = debounce(setShowPicker, 100, { leading: true })\nfunction show() {\n if (colorDisabled.value) return\n setShowPicker(true)\n}\n\nfunction hide() {\n debounceSetShowPicker(false)\n resetColor()\n}\n\nfunction resetColor() {\n nextTick(() => {\n if (props.modelValue) {\n color.fromString(props.modelValue)\n } else {\n color.value = ''\n nextTick(() => {\n showPanelColor.value = false\n })\n }\n })\n}\n\nfunction handleTrigger() {\n if (colorDisabled.value) return\n if (showPicker.value) {\n resetColor()\n }\n debounceSetShowPicker(!showPicker.value)\n}\n\nfunction confirmValue() {\n const value = isEmptyValue(color.value) ? valueOnClear.value : color.value\n emit(UPDATE_MODEL_EVENT, value)\n emit(CHANGE_EVENT, value)\n if (props.validateEvent) {\n formItem?.validate('change').catch((err) => debugWarn(err))\n }\n debounceSetShowPicker(false)\n // check if modelValue change, if not change, then reset color.\n nextTick(() => {\n const newColor = new Color({\n enableAlpha: props.showAlpha,\n format: props.colorFormat || '',\n value: props.modelValue,\n })\n if (!color.compare(newColor)) {\n resetColor()\n }\n })\n}\n\nfunction clear() {\n debounceSetShowPicker(false)\n emit(UPDATE_MODEL_EVENT, valueOnClear.value)\n emit(CHANGE_EVENT, valueOnClear.value)\n if (props.modelValue !== valueOnClear.value && props.validateEvent) {\n formItem?.validate('change').catch((err) => debugWarn(err))\n }\n resetColor()\n emit('clear')\n}\n\nfunction handleShowTooltip() {\n pickerPanelRef?.value?.inputRef?.focus()\n}\n\nfunction handleClickOutside() {\n if (!showPicker.value) return\n hide()\n isFocused.value && focus()\n}\n\nfunction handleEsc(event: KeyboardEvent) {\n event.preventDefault()\n event.stopPropagation()\n setShowPicker(false)\n resetColor()\n}\n\nfunction handleKeyDown(event: KeyboardEvent) {\n const code = getEventCode(event)\n\n switch (code) {\n case EVENT_CODE.enter:\n case EVENT_CODE.numpadEnter:\n case EVENT_CODE.space:\n event.preventDefault()\n event.stopPropagation()\n show()\n break\n case EVENT_CODE.esc:\n handleEsc(event)\n break\n }\n}\n\nfunction focus() {\n triggerRef.value.focus()\n}\n\nfunction blur() {\n triggerRef.value.blur()\n}\n\nwatch(\n () => currentColor.value,\n (val) => {\n shouldActiveChange && emit('activeChange', val)\n shouldActiveChange = true\n }\n)\n\nwatch(\n () => color.value,\n () => {\n if (!props.modelValue && !showPanelColor.value) {\n showPanelColor.value = true\n }\n }\n)\n\nwatch(\n () => props.modelValue,\n (newVal) => {\n if (!newVal) {\n showPanelColor.value = false\n } else if (newVal && newVal !== color.value) {\n shouldActiveChange = false\n color.fromString(newVal)\n }\n }\n)\n\nwatch(\n () => showPicker.value,\n () => {\n pickerPanelRef.value && nextTick(pickerPanelRef.value.update)\n }\n)\n\nprovide(ROOT_COMMON_COLOR_INJECTION_KEY, commonColor)\n\ndefineExpose({\n /**\n * @description current color object\n */\n color,\n /**\n * @description manually show ColorPicker\n */\n show,\n /**\n * @description manually hide ColorPicker\n */\n hide,\n /**\n * @description focus the input element\n */\n focus,\n /**\n * @description blur the input element\n */\n blur,\n})\n</script>\n"],"mappings":"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"}
1
+ {"version":3,"file":"color-picker.vue_vue_type_script_setup_true_lang.mjs","names":["$attrs"],"sources":["../../../../../../packages/components/color-picker/src/color-picker.vue"],"sourcesContent":["<template>\n <el-tooltip\n ref=\"popper\"\n :visible=\"showPicker\"\n :show-arrow=\"false\"\n :gpu-acceleration=\"false\"\n :popper-class=\"[ns.be('picker', 'panel'), popperClass!]\"\n :popper-style=\"popperStyle\"\n :stop-popper-mouse-event=\"false\"\n pure\n loop\n role=\"dialog\"\n effect=\"light\"\n trigger=\"click\"\n teleported\n :transition=\"`${ns.namespace.value}-fade-in-linear`\"\n :persistent=\"persistent\"\n @show=\"handleShowTooltip\"\n @hide=\"setShowPicker(false)\"\n >\n <template #content>\n <el-color-picker-panel\n ref=\"pickerPanelRef\"\n v-bind=\"panelProps\"\n v-click-outside:[triggerRef]=\"handleClickOutside\"\n :border=\"false\"\n :validate-event=\"false\"\n @keydown.esc=\"handleEsc\"\n >\n <template #footer>\n <div>\n <el-button\n v-if=\"clearable\"\n :class=\"ns.be('footer', 'link-btn')\"\n text\n size=\"small\"\n @click=\"clear\"\n >\n {{ t('el.colorpicker.clear') }}\n </el-button>\n <el-button\n plain\n size=\"small\"\n :class=\"ns.be('footer', 'btn')\"\n @click=\"confirmValue\"\n >\n {{ t('el.colorpicker.confirm') }}\n </el-button>\n </div>\n </template>\n </el-color-picker-panel>\n </template>\n <template #default>\n <div\n :id=\"buttonId\"\n ref=\"triggerRef\"\n v-bind=\"$attrs\"\n :class=\"btnKls\"\n role=\"button\"\n :aria-label=\"buttonAriaLabel\"\n :aria-labelledby=\"buttonAriaLabelledby\"\n :aria-description=\"\n t('el.colorpicker.description', { color: modelValue || '' })\n \"\n :aria-disabled=\"colorDisabled\"\n :tabindex=\"colorDisabled ? undefined : tabindex\"\n @keydown=\"handleKeyDown\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n >\n <div :class=\"ns.be('picker', 'trigger')\" @click=\"handleTrigger\">\n <span :class=\"[ns.be('picker', 'color'), ns.is('alpha', showAlpha)]\">\n <span\n :class=\"ns.be('picker', 'color-inner')\"\n :style=\"{\n backgroundColor: displayedColor,\n }\"\n >\n <el-icon\n v-show=\"modelValue || showPanelColor\"\n :class=\"[ns.be('picker', 'icon'), ns.is('icon-arrow-down')]\"\n >\n <arrow-down />\n </el-icon>\n <el-icon\n v-show=\"!modelValue && !showPanelColor\"\n :class=\"[ns.be('picker', 'empty'), ns.is('icon-close')]\"\n >\n <close />\n </el-icon>\n </span>\n </span>\n </div>\n </div>\n </template>\n </el-tooltip>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, provide, ref, watch } from 'vue'\nimport { debounce, pick } from 'lodash-unified'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { reactiveComputed } from '@vueuse/core'\nimport { ClickOutside as vClickOutside } from '@element-plus/directives'\nimport { ElTooltip } from '@element-plus/components/tooltip'\nimport { ElButton } from '@element-plus/components/button'\nimport {\n useFormDisabled,\n useFormItem,\n useFormItemInputId,\n useFormSize,\n} from '@element-plus/components/form'\nimport {\n useEmptyValues,\n useFocusController,\n useLocale,\n useNamespace,\n} from '@element-plus/hooks'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { ArrowDown, Close, debugWarn, getEventCode } from '@element-plus/utils'\nimport { colorPickerEmits, colorPickerPropsDefaults } from './color-picker'\nimport {\n ElColorPickerPanel,\n ROOT_COMMON_COLOR_INJECTION_KEY,\n colorPickerPanelProps,\n} from '@element-plus/components/color-picker-panel'\nimport Color from '@element-plus/components/color-picker-panel/src/utils/color'\nimport { useCommonColor } from '@element-plus/components/color-picker-panel/src/composables/use-common-color'\n\nimport type { ColorPickerPanelInstance } from '@element-plus/components/color-picker-panel'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\nimport type { ColorPickerProps } from './color-picker'\n\ndefineOptions({\n name: 'ElColorPicker',\n})\nconst props = withDefaults(\n defineProps<ColorPickerProps>(),\n colorPickerPropsDefaults\n)\n\nconst emit = defineEmits(colorPickerEmits)\n\nconst { t } = useLocale()\nconst ns = useNamespace('color')\nconst { formItem } = useFormItem()\nconst colorSize = useFormSize()\nconst colorDisabled = useFormDisabled()\nconst { valueOnClear, isEmptyValue } = useEmptyValues(props, null)\nconst commonColor = useCommonColor(props, emit)\nconst { inputId: buttonId, isLabeledByFormItem } = useFormItemInputId(props, {\n formItemContext: formItem,\n})\n\nconst popper = ref<TooltipInstance>()\nconst triggerRef = ref()\nconst pickerPanelRef = ref<ColorPickerPanelInstance>()\nconst showPicker = ref(false)\nconst showPanelColor = ref(false)\n\n// active-change is used to prevent modelValue changes from triggering.\nlet shouldActiveChange = true\n\nconst { isFocused, handleFocus, handleBlur } = useFocusController(triggerRef, {\n disabled: colorDisabled,\n beforeBlur(event) {\n return popper.value?.isFocusInsideContent(event)\n },\n afterBlur() {\n setShowPicker(false)\n resetColor()\n if (props.validateEvent) {\n formItem?.validate?.('blur').catch((err) => debugWarn(err))\n }\n },\n})\n\nconst color = reactiveComputed(\n () => pickerPanelRef.value?.color ?? commonColor.color\n) as Color\n\nconst panelProps = computed(() =>\n pick(props, Object.keys(colorPickerPanelProps))\n)\n\nconst displayedColor = computed(() => {\n if (!props.modelValue && !showPanelColor.value) {\n return 'transparent'\n }\n return displayedRgb(color, props.showAlpha)\n})\n\nconst currentColor = computed(() => {\n return !props.modelValue && !showPanelColor.value ? '' : color.value\n})\n\nconst buttonAriaLabel = computed<string | undefined>(() => {\n return !isLabeledByFormItem.value\n ? props.ariaLabel || t('el.colorpicker.defaultLabel')\n : undefined\n})\n\nconst buttonAriaLabelledby = computed<string | undefined>(() => {\n return isLabeledByFormItem.value ? formItem?.labelId : undefined\n})\n\nconst btnKls = computed(() => {\n return [\n ns.b('picker'),\n ns.is('disabled', colorDisabled.value),\n ns.bm('picker', colorSize.value),\n ns.is('focused', isFocused.value),\n ]\n})\n\nfunction displayedRgb(color: Color, showAlpha: boolean) {\n const { r, g, b, a } = color.toRgb()\n return showAlpha ? `rgba(${r}, ${g}, ${b}, ${a})` : `rgb(${r}, ${g}, ${b})`\n}\n\nfunction setShowPicker(value: boolean) {\n showPicker.value = value\n}\n\nconst debounceSetShowPicker = debounce(setShowPicker, 100, { leading: true })\nfunction show() {\n if (colorDisabled.value) return\n setShowPicker(true)\n}\n\nfunction hide() {\n debounceSetShowPicker(false)\n resetColor()\n}\n\nfunction resetColor() {\n nextTick(() => {\n if (props.modelValue) {\n color.fromString(props.modelValue)\n } else {\n color.value = ''\n nextTick(() => {\n showPanelColor.value = false\n })\n }\n })\n}\n\nfunction handleTrigger() {\n if (colorDisabled.value) return\n if (showPicker.value) {\n resetColor()\n }\n debounceSetShowPicker(!showPicker.value)\n}\n\nfunction confirmValue() {\n const value = isEmptyValue(color.value) ? valueOnClear.value : color.value\n emit(UPDATE_MODEL_EVENT, value)\n emit(CHANGE_EVENT, value)\n if (props.validateEvent) {\n formItem?.validate('change').catch((err) => debugWarn(err))\n }\n debounceSetShowPicker(false)\n // check if modelValue change, if not change, then reset color.\n nextTick(() => {\n const newColor = new Color({\n enableAlpha: props.showAlpha,\n format: props.colorFormat || '',\n value: props.modelValue,\n })\n if (!color.compare(newColor)) {\n resetColor()\n }\n })\n}\n\nfunction clear() {\n debounceSetShowPicker(false)\n emit(UPDATE_MODEL_EVENT, valueOnClear.value)\n emit(CHANGE_EVENT, valueOnClear.value)\n if (props.modelValue !== valueOnClear.value && props.validateEvent) {\n formItem?.validate('change').catch((err) => debugWarn(err))\n }\n resetColor()\n emit('clear')\n}\n\nfunction handleShowTooltip() {\n pickerPanelRef?.value?.inputRef?.focus()\n}\n\nfunction handleClickOutside() {\n if (!showPicker.value) return\n hide()\n isFocused.value && focus()\n}\n\nfunction handleEsc(event: KeyboardEvent) {\n event.preventDefault()\n event.stopPropagation()\n setShowPicker(false)\n resetColor()\n}\n\nfunction handleKeyDown(event: KeyboardEvent) {\n const code = getEventCode(event)\n\n switch (code) {\n case EVENT_CODE.enter:\n case EVENT_CODE.numpadEnter:\n case EVENT_CODE.space:\n event.preventDefault()\n event.stopPropagation()\n show()\n break\n case EVENT_CODE.esc:\n handleEsc(event)\n break\n }\n}\n\nfunction focus() {\n triggerRef.value.focus()\n}\n\nfunction blur() {\n triggerRef.value.blur()\n}\n\nwatch(\n () => currentColor.value,\n (val) => {\n shouldActiveChange && emit('activeChange', val)\n shouldActiveChange = true\n }\n)\n\nwatch(\n () => color.value,\n () => {\n if (!props.modelValue && !showPanelColor.value) {\n showPanelColor.value = true\n }\n }\n)\n\nwatch(\n () => props.modelValue,\n (newVal) => {\n if (!newVal) {\n showPanelColor.value = false\n } else if (newVal && newVal !== color.value) {\n shouldActiveChange = false\n color.fromString(newVal)\n }\n }\n)\n\nwatch(\n () => showPicker.value,\n () => {\n pickerPanelRef.value && nextTick(pickerPanelRef.value.update)\n }\n)\n\nprovide(ROOT_COMMON_COLOR_INJECTION_KEY, commonColor)\n\ndefineExpose({\n /**\n * @description current color object\n */\n color,\n /**\n * @description manually show ColorPicker\n */\n show,\n /**\n * @description manually hide ColorPicker\n */\n hide,\n /**\n * @description focus the input element\n */\n focus,\n /**\n * @description blur the input element\n */\n blur,\n})\n</script>\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"color-picker2.mjs","names":[],"sources":["../../../../../../packages/components/color-picker/src/color-picker.vue"],"sourcesContent":["<template>\n <el-tooltip\n ref=\"popper\"\n :visible=\"showPicker\"\n :show-arrow=\"false\"\n :fallback-placements=\"['bottom', 'top', 'right', 'left']\"\n :offset=\"0\"\n :gpu-acceleration=\"false\"\n :popper-class=\"[ns.be('picker', 'panel'), popperClass!]\"\n :popper-style=\"popperStyle\"\n :stop-popper-mouse-event=\"false\"\n pure\n loop\n role=\"dialog\"\n effect=\"light\"\n trigger=\"click\"\n :teleported=\"teleported\"\n :transition=\"`${ns.namespace.value}-zoom-in-top`\"\n :persistent=\"persistent\"\n :append-to=\"appendTo\"\n @show=\"handleShowTooltip\"\n @hide=\"setShowPicker(false)\"\n >\n <template #content>\n <el-color-picker-panel\n ref=\"pickerPanelRef\"\n v-bind=\"panelProps\"\n v-click-outside:[triggerRef]=\"handleClickOutside\"\n :border=\"false\"\n :validate-event=\"false\"\n @keydown.esc=\"handleEsc\"\n >\n <template #footer>\n <div>\n <el-button\n v-if=\"clearable\"\n :class=\"ns.be('footer', 'link-btn')\"\n text\n size=\"small\"\n @click=\"clear\"\n >\n {{ t('el.colorpicker.clear') }}\n </el-button>\n <el-button\n plain\n size=\"small\"\n :class=\"ns.be('footer', 'btn')\"\n @click=\"confirmValue\"\n >\n {{ t('el.colorpicker.confirm') }}\n </el-button>\n </div>\n </template>\n </el-color-picker-panel>\n </template>\n <template #default>\n <div\n :id=\"buttonId\"\n ref=\"triggerRef\"\n v-bind=\"$attrs\"\n :class=\"btnKls\"\n role=\"button\"\n :aria-label=\"buttonAriaLabel\"\n :aria-labelledby=\"buttonAriaLabelledby\"\n :aria-description=\"\n t('el.colorpicker.description', { color: modelValue || '' })\n \"\n :aria-disabled=\"colorDisabled\"\n :tabindex=\"colorDisabled ? undefined : tabindex\"\n @keydown=\"handleKeyDown\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n >\n <div :class=\"ns.be('picker', 'trigger')\" @click=\"handleTrigger\">\n <span :class=\"[ns.be('picker', 'color'), ns.is('alpha', showAlpha)]\">\n <span\n :class=\"ns.be('picker', 'color-inner')\"\n :style=\"{\n backgroundColor: displayedColor,\n }\"\n >\n <el-icon\n v-show=\"modelValue || showPanelColor\"\n :class=\"[ns.be('picker', 'icon'), ns.is('icon-arrow-down')]\"\n >\n <arrow-down />\n </el-icon>\n <el-icon\n v-show=\"!modelValue && !showPanelColor\"\n :class=\"[ns.be('picker', 'empty'), ns.is('icon-close')]\"\n >\n <close />\n </el-icon>\n </span>\n </span>\n </div>\n </div>\n </template>\n </el-tooltip>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, provide, ref, watch } from 'vue'\nimport { debounce, pick } from 'lodash-unified'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { reactiveComputed } from '@vueuse/core'\nimport { ClickOutside as vClickOutside } from '@element-plus/directives'\nimport { ElTooltip } from '@element-plus/components/tooltip'\nimport { ElButton } from '@element-plus/components/button'\nimport {\n useFormDisabled,\n useFormItem,\n useFormItemInputId,\n useFormSize,\n} from '@element-plus/components/form'\nimport {\n useEmptyValues,\n useFocusController,\n useLocale,\n useNamespace,\n} from '@element-plus/hooks'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { ArrowDown, Close, debugWarn, getEventCode } from '@element-plus/utils'\nimport { colorPickerEmits, colorPickerPropsDefaults } from './color-picker'\nimport {\n ElColorPickerPanel,\n ROOT_COMMON_COLOR_INJECTION_KEY,\n colorPickerPanelProps,\n} from '@element-plus/components/color-picker-panel'\nimport Color from '@element-plus/components/color-picker-panel/src/utils/color'\nimport { useCommonColor } from '@element-plus/components/color-picker-panel/src/composables/use-common-color'\n\nimport type { ColorPickerPanelInstance } from '@element-plus/components/color-picker-panel'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\nimport type { ColorPickerProps } from './color-picker'\n\ndefineOptions({\n name: 'ElColorPicker',\n})\nconst props = withDefaults(\n defineProps<ColorPickerProps>(),\n colorPickerPropsDefaults\n)\n\nconst emit = defineEmits(colorPickerEmits)\n\nconst { t } = useLocale()\nconst ns = useNamespace('color')\nconst { formItem } = useFormItem()\nconst colorSize = useFormSize()\nconst colorDisabled = useFormDisabled()\nconst { valueOnClear, isEmptyValue } = useEmptyValues(props, null)\nconst commonColor = useCommonColor(props, emit)\nconst { inputId: buttonId, isLabeledByFormItem } = useFormItemInputId(props, {\n formItemContext: formItem,\n})\n\nconst popper = ref<TooltipInstance>()\nconst triggerRef = ref()\nconst pickerPanelRef = ref<ColorPickerPanelInstance>()\nconst showPicker = ref(false)\nconst showPanelColor = ref(false)\n\n// active-change is used to prevent modelValue changes from triggering.\nlet shouldActiveChange = true\n\nconst { isFocused, handleFocus, handleBlur } = useFocusController(triggerRef, {\n disabled: colorDisabled,\n beforeBlur(event) {\n return popper.value?.isFocusInsideContent(event)\n },\n afterBlur() {\n setShowPicker(false)\n resetColor()\n if (props.validateEvent) {\n formItem?.validate?.('blur').catch((err) => debugWarn(err))\n }\n },\n})\n\nconst color = reactiveComputed(\n () => pickerPanelRef.value?.color ?? commonColor.color\n) as Color\n\nconst panelProps = computed(() =>\n pick(props, Object.keys(colorPickerPanelProps))\n)\n\nconst displayedColor = computed(() => {\n if (!props.modelValue && !showPanelColor.value) {\n return 'transparent'\n }\n return displayedRgb(color, props.showAlpha)\n})\n\nconst currentColor = computed(() => {\n return !props.modelValue && !showPanelColor.value ? '' : color.value\n})\n\nconst buttonAriaLabel = computed<string | undefined>(() => {\n return !isLabeledByFormItem.value\n ? props.ariaLabel || t('el.colorpicker.defaultLabel')\n : undefined\n})\n\nconst buttonAriaLabelledby = computed<string | undefined>(() => {\n return isLabeledByFormItem.value ? formItem?.labelId : undefined\n})\n\nconst btnKls = computed(() => {\n return [\n ns.b('picker'),\n ns.is('disabled', colorDisabled.value),\n ns.bm('picker', colorSize.value),\n ns.is('focused', isFocused.value),\n ]\n})\n\nfunction displayedRgb(color: Color, showAlpha: boolean) {\n const { r, g, b, a } = color.toRgb()\n return showAlpha ? `rgba(${r}, ${g}, ${b}, ${a})` : `rgb(${r}, ${g}, ${b})`\n}\n\nfunction setShowPicker(value: boolean) {\n showPicker.value = value\n}\n\nconst debounceSetShowPicker = debounce(setShowPicker, 100, { leading: true })\nfunction show() {\n if (colorDisabled.value) return\n setShowPicker(true)\n}\n\nfunction hide() {\n debounceSetShowPicker(false)\n resetColor()\n}\n\nfunction resetColor() {\n nextTick(() => {\n if (props.modelValue) {\n color.fromString(props.modelValue)\n } else {\n color.value = ''\n nextTick(() => {\n showPanelColor.value = false\n })\n }\n })\n}\n\nfunction handleTrigger() {\n if (colorDisabled.value) return\n if (showPicker.value) {\n resetColor()\n }\n debounceSetShowPicker(!showPicker.value)\n}\n\nfunction confirmValue() {\n const value = isEmptyValue(color.value) ? valueOnClear.value : color.value\n emit(UPDATE_MODEL_EVENT, value)\n emit(CHANGE_EVENT, value)\n if (props.validateEvent) {\n formItem?.validate('change').catch((err) => debugWarn(err))\n }\n debounceSetShowPicker(false)\n // check if modelValue change, if not change, then reset color.\n nextTick(() => {\n const newColor = new Color({\n enableAlpha: props.showAlpha,\n format: props.colorFormat || '',\n value: props.modelValue,\n })\n if (!color.compare(newColor)) {\n resetColor()\n }\n })\n}\n\nfunction clear() {\n debounceSetShowPicker(false)\n emit(UPDATE_MODEL_EVENT, valueOnClear.value)\n emit(CHANGE_EVENT, valueOnClear.value)\n if (props.modelValue !== valueOnClear.value && props.validateEvent) {\n formItem?.validate('change').catch((err) => debugWarn(err))\n }\n resetColor()\n emit('clear')\n}\n\nfunction handleShowTooltip() {\n pickerPanelRef?.value?.inputRef?.focus()\n}\n\nfunction handleClickOutside() {\n if (!showPicker.value) return\n hide()\n isFocused.value && focus()\n}\n\nfunction handleEsc(event: KeyboardEvent) {\n event.preventDefault()\n event.stopPropagation()\n setShowPicker(false)\n resetColor()\n}\n\nfunction handleKeyDown(event: KeyboardEvent) {\n const code = getEventCode(event)\n\n switch (code) {\n case EVENT_CODE.enter:\n case EVENT_CODE.numpadEnter:\n case EVENT_CODE.space:\n event.preventDefault()\n event.stopPropagation()\n show()\n break\n case EVENT_CODE.esc:\n handleEsc(event)\n break\n }\n}\n\nfunction focus() {\n triggerRef.value.focus()\n}\n\nfunction blur() {\n triggerRef.value.blur()\n}\n\nwatch(\n () => currentColor.value,\n (val) => {\n shouldActiveChange && emit('activeChange', val)\n shouldActiveChange = true\n }\n)\n\nwatch(\n () => color.value,\n () => {\n if (!props.modelValue && !showPanelColor.value) {\n showPanelColor.value = true\n }\n }\n)\n\nwatch(\n () => props.modelValue,\n (newVal) => {\n if (!newVal) {\n showPanelColor.value = false\n } else if (newVal && newVal !== color.value) {\n shouldActiveChange = false\n color.fromString(newVal)\n }\n }\n)\n\nwatch(\n () => showPicker.value,\n () => {\n pickerPanelRef.value && nextTick(pickerPanelRef.value.update)\n }\n)\n\nprovide(ROOT_COMMON_COLOR_INJECTION_KEY, commonColor)\n\ndefineExpose({\n /**\n * @description current color object\n */\n color,\n /**\n * @description manually show ColorPicker\n */\n show,\n /**\n * @description manually hide ColorPicker\n */\n hide,\n /**\n * @description focus the input element\n */\n focus,\n /**\n * @description blur the input element\n */\n blur,\n})\n</script>\n"],"mappings":""}
1
+ {"version":3,"file":"color-picker2.mjs","names":[],"sources":["../../../../../../packages/components/color-picker/src/color-picker.vue"],"sourcesContent":["<template>\n <el-tooltip\n ref=\"popper\"\n :visible=\"showPicker\"\n :show-arrow=\"false\"\n :gpu-acceleration=\"false\"\n :popper-class=\"[ns.be('picker', 'panel'), popperClass!]\"\n :popper-style=\"popperStyle\"\n :stop-popper-mouse-event=\"false\"\n pure\n loop\n role=\"dialog\"\n effect=\"light\"\n trigger=\"click\"\n teleported\n :transition=\"`${ns.namespace.value}-fade-in-linear`\"\n :persistent=\"persistent\"\n @show=\"handleShowTooltip\"\n @hide=\"setShowPicker(false)\"\n >\n <template #content>\n <el-color-picker-panel\n ref=\"pickerPanelRef\"\n v-bind=\"panelProps\"\n v-click-outside:[triggerRef]=\"handleClickOutside\"\n :border=\"false\"\n :validate-event=\"false\"\n @keydown.esc=\"handleEsc\"\n >\n <template #footer>\n <div>\n <el-button\n v-if=\"clearable\"\n :class=\"ns.be('footer', 'link-btn')\"\n text\n size=\"small\"\n @click=\"clear\"\n >\n {{ t('el.colorpicker.clear') }}\n </el-button>\n <el-button\n plain\n size=\"small\"\n :class=\"ns.be('footer', 'btn')\"\n @click=\"confirmValue\"\n >\n {{ t('el.colorpicker.confirm') }}\n </el-button>\n </div>\n </template>\n </el-color-picker-panel>\n </template>\n <template #default>\n <div\n :id=\"buttonId\"\n ref=\"triggerRef\"\n v-bind=\"$attrs\"\n :class=\"btnKls\"\n role=\"button\"\n :aria-label=\"buttonAriaLabel\"\n :aria-labelledby=\"buttonAriaLabelledby\"\n :aria-description=\"\n t('el.colorpicker.description', { color: modelValue || '' })\n \"\n :aria-disabled=\"colorDisabled\"\n :tabindex=\"colorDisabled ? undefined : tabindex\"\n @keydown=\"handleKeyDown\"\n @focus=\"handleFocus\"\n @blur=\"handleBlur\"\n >\n <div :class=\"ns.be('picker', 'trigger')\" @click=\"handleTrigger\">\n <span :class=\"[ns.be('picker', 'color'), ns.is('alpha', showAlpha)]\">\n <span\n :class=\"ns.be('picker', 'color-inner')\"\n :style=\"{\n backgroundColor: displayedColor,\n }\"\n >\n <el-icon\n v-show=\"modelValue || showPanelColor\"\n :class=\"[ns.be('picker', 'icon'), ns.is('icon-arrow-down')]\"\n >\n <arrow-down />\n </el-icon>\n <el-icon\n v-show=\"!modelValue && !showPanelColor\"\n :class=\"[ns.be('picker', 'empty'), ns.is('icon-close')]\"\n >\n <close />\n </el-icon>\n </span>\n </span>\n </div>\n </div>\n </template>\n </el-tooltip>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, nextTick, provide, ref, watch } from 'vue'\nimport { debounce, pick } from 'lodash-unified'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { reactiveComputed } from '@vueuse/core'\nimport { ClickOutside as vClickOutside } from '@element-plus/directives'\nimport { ElTooltip } from '@element-plus/components/tooltip'\nimport { ElButton } from '@element-plus/components/button'\nimport {\n useFormDisabled,\n useFormItem,\n useFormItemInputId,\n useFormSize,\n} from '@element-plus/components/form'\nimport {\n useEmptyValues,\n useFocusController,\n useLocale,\n useNamespace,\n} from '@element-plus/hooks'\nimport {\n CHANGE_EVENT,\n EVENT_CODE,\n UPDATE_MODEL_EVENT,\n} from '@element-plus/constants'\nimport { ArrowDown, Close, debugWarn, getEventCode } from '@element-plus/utils'\nimport { colorPickerEmits, colorPickerPropsDefaults } from './color-picker'\nimport {\n ElColorPickerPanel,\n ROOT_COMMON_COLOR_INJECTION_KEY,\n colorPickerPanelProps,\n} from '@element-plus/components/color-picker-panel'\nimport Color from '@element-plus/components/color-picker-panel/src/utils/color'\nimport { useCommonColor } from '@element-plus/components/color-picker-panel/src/composables/use-common-color'\n\nimport type { ColorPickerPanelInstance } from '@element-plus/components/color-picker-panel'\nimport type { TooltipInstance } from '@element-plus/components/tooltip'\nimport type { ColorPickerProps } from './color-picker'\n\ndefineOptions({\n name: 'ElColorPicker',\n})\nconst props = withDefaults(\n defineProps<ColorPickerProps>(),\n colorPickerPropsDefaults\n)\n\nconst emit = defineEmits(colorPickerEmits)\n\nconst { t } = useLocale()\nconst ns = useNamespace('color')\nconst { formItem } = useFormItem()\nconst colorSize = useFormSize()\nconst colorDisabled = useFormDisabled()\nconst { valueOnClear, isEmptyValue } = useEmptyValues(props, null)\nconst commonColor = useCommonColor(props, emit)\nconst { inputId: buttonId, isLabeledByFormItem } = useFormItemInputId(props, {\n formItemContext: formItem,\n})\n\nconst popper = ref<TooltipInstance>()\nconst triggerRef = ref()\nconst pickerPanelRef = ref<ColorPickerPanelInstance>()\nconst showPicker = ref(false)\nconst showPanelColor = ref(false)\n\n// active-change is used to prevent modelValue changes from triggering.\nlet shouldActiveChange = true\n\nconst { isFocused, handleFocus, handleBlur } = useFocusController(triggerRef, {\n disabled: colorDisabled,\n beforeBlur(event) {\n return popper.value?.isFocusInsideContent(event)\n },\n afterBlur() {\n setShowPicker(false)\n resetColor()\n if (props.validateEvent) {\n formItem?.validate?.('blur').catch((err) => debugWarn(err))\n }\n },\n})\n\nconst color = reactiveComputed(\n () => pickerPanelRef.value?.color ?? commonColor.color\n) as Color\n\nconst panelProps = computed(() =>\n pick(props, Object.keys(colorPickerPanelProps))\n)\n\nconst displayedColor = computed(() => {\n if (!props.modelValue && !showPanelColor.value) {\n return 'transparent'\n }\n return displayedRgb(color, props.showAlpha)\n})\n\nconst currentColor = computed(() => {\n return !props.modelValue && !showPanelColor.value ? '' : color.value\n})\n\nconst buttonAriaLabel = computed<string | undefined>(() => {\n return !isLabeledByFormItem.value\n ? props.ariaLabel || t('el.colorpicker.defaultLabel')\n : undefined\n})\n\nconst buttonAriaLabelledby = computed<string | undefined>(() => {\n return isLabeledByFormItem.value ? formItem?.labelId : undefined\n})\n\nconst btnKls = computed(() => {\n return [\n ns.b('picker'),\n ns.is('disabled', colorDisabled.value),\n ns.bm('picker', colorSize.value),\n ns.is('focused', isFocused.value),\n ]\n})\n\nfunction displayedRgb(color: Color, showAlpha: boolean) {\n const { r, g, b, a } = color.toRgb()\n return showAlpha ? `rgba(${r}, ${g}, ${b}, ${a})` : `rgb(${r}, ${g}, ${b})`\n}\n\nfunction setShowPicker(value: boolean) {\n showPicker.value = value\n}\n\nconst debounceSetShowPicker = debounce(setShowPicker, 100, { leading: true })\nfunction show() {\n if (colorDisabled.value) return\n setShowPicker(true)\n}\n\nfunction hide() {\n debounceSetShowPicker(false)\n resetColor()\n}\n\nfunction resetColor() {\n nextTick(() => {\n if (props.modelValue) {\n color.fromString(props.modelValue)\n } else {\n color.value = ''\n nextTick(() => {\n showPanelColor.value = false\n })\n }\n })\n}\n\nfunction handleTrigger() {\n if (colorDisabled.value) return\n if (showPicker.value) {\n resetColor()\n }\n debounceSetShowPicker(!showPicker.value)\n}\n\nfunction confirmValue() {\n const value = isEmptyValue(color.value) ? valueOnClear.value : color.value\n emit(UPDATE_MODEL_EVENT, value)\n emit(CHANGE_EVENT, value)\n if (props.validateEvent) {\n formItem?.validate('change').catch((err) => debugWarn(err))\n }\n debounceSetShowPicker(false)\n // check if modelValue change, if not change, then reset color.\n nextTick(() => {\n const newColor = new Color({\n enableAlpha: props.showAlpha,\n format: props.colorFormat || '',\n value: props.modelValue,\n })\n if (!color.compare(newColor)) {\n resetColor()\n }\n })\n}\n\nfunction clear() {\n debounceSetShowPicker(false)\n emit(UPDATE_MODEL_EVENT, valueOnClear.value)\n emit(CHANGE_EVENT, valueOnClear.value)\n if (props.modelValue !== valueOnClear.value && props.validateEvent) {\n formItem?.validate('change').catch((err) => debugWarn(err))\n }\n resetColor()\n emit('clear')\n}\n\nfunction handleShowTooltip() {\n pickerPanelRef?.value?.inputRef?.focus()\n}\n\nfunction handleClickOutside() {\n if (!showPicker.value) return\n hide()\n isFocused.value && focus()\n}\n\nfunction handleEsc(event: KeyboardEvent) {\n event.preventDefault()\n event.stopPropagation()\n setShowPicker(false)\n resetColor()\n}\n\nfunction handleKeyDown(event: KeyboardEvent) {\n const code = getEventCode(event)\n\n switch (code) {\n case EVENT_CODE.enter:\n case EVENT_CODE.numpadEnter:\n case EVENT_CODE.space:\n event.preventDefault()\n event.stopPropagation()\n show()\n break\n case EVENT_CODE.esc:\n handleEsc(event)\n break\n }\n}\n\nfunction focus() {\n triggerRef.value.focus()\n}\n\nfunction blur() {\n triggerRef.value.blur()\n}\n\nwatch(\n () => currentColor.value,\n (val) => {\n shouldActiveChange && emit('activeChange', val)\n shouldActiveChange = true\n }\n)\n\nwatch(\n () => color.value,\n () => {\n if (!props.modelValue && !showPanelColor.value) {\n showPanelColor.value = true\n }\n }\n)\n\nwatch(\n () => props.modelValue,\n (newVal) => {\n if (!newVal) {\n showPanelColor.value = false\n } else if (newVal && newVal !== color.value) {\n shouldActiveChange = false\n color.fromString(newVal)\n }\n }\n)\n\nwatch(\n () => showPicker.value,\n () => {\n pickerPanelRef.value && nextTick(pickerPanelRef.value.update)\n }\n)\n\nprovide(ROOT_COMMON_COLOR_INJECTION_KEY, commonColor)\n\ndefineExpose({\n /**\n * @description current color object\n */\n color,\n /**\n * @description manually show ColorPicker\n */\n show,\n /**\n * @description manually hide ColorPicker\n */\n hide,\n /**\n * @description focus the input element\n */\n focus,\n /**\n * @description blur the input element\n */\n blur,\n})\n</script>\n"],"mappings":""}
@@ -1,7 +1,7 @@
1
1
  import { CHANGE_EVENT } from "../../../constants/event.mjs";
2
2
  import { cAF, rAF } from "../../../utils/raf.mjs";
3
- import { ElStatistic } from "../../statistic/index.mjs";
4
3
  import { countdownEmits, countdownProps } from "./countdown.mjs";
4
+ import { ElStatistic } from "../../statistic/index.mjs";
5
5
  import { formatTime, getTime } from "./utils.mjs";
6
6
  import { computed, createBlock, createSlots, defineComponent, onBeforeUnmount, onMounted, openBlock, ref, renderList, renderSlot, unref, watch, withCtx } from "vue";
7
7
 
@@ -33,7 +33,6 @@ declare const _default: vue.DefineComponent<vue.ExtractPropTypes<{
33
33
  __epPropKey: true;
34
34
  };
35
35
  readonly shortcuts: EpPropFinalized<ArrayConstructor, unknown, unknown, () => never[], boolean>;
36
- readonly arrowControl: BooleanConstructor;
37
36
  readonly tabindex: EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | (((new (...args: any[]) => string | number) | (() => string | number)) | null)[], unknown, unknown, 0, boolean>;
38
37
  readonly validateEvent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
39
38
  readonly unlinkPanels: BooleanConstructor;
@@ -238,7 +237,6 @@ declare const _default: vue.DefineComponent<vue.ExtractPropTypes<{
238
237
  __epPropKey: true;
239
238
  };
240
239
  readonly shortcuts: EpPropFinalized<ArrayConstructor, unknown, unknown, () => never[], boolean>;
241
- readonly arrowControl: BooleanConstructor;
242
240
  readonly tabindex: EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | (((new (...args: any[]) => string | number) | (() => string | number)) | null)[], unknown, unknown, 0, boolean>;
243
241
  readonly validateEvent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
244
242
  readonly unlinkPanels: BooleanConstructor;
@@ -447,7 +445,6 @@ declare const _default: vue.DefineComponent<vue.ExtractPropTypes<{
447
445
  readonly showConfirm: EpPropMergeType<BooleanConstructor, unknown, unknown>;
448
446
  readonly showFooter: EpPropMergeType<BooleanConstructor, unknown, unknown>;
449
447
  readonly showWeekNumber: boolean;
450
- readonly arrowControl: boolean;
451
448
  readonly unlinkPanels: boolean;
452
449
  readonly isRange: boolean;
453
450
  }, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
@@ -32,7 +32,6 @@ declare const datePickerProps: {
32
32
  __epPropKey: true;
33
33
  };
34
34
  readonly shortcuts: EpPropFinalized<ArrayConstructor, unknown, unknown, () => never[], boolean>;
35
- readonly arrowControl: BooleanConstructor;
36
35
  readonly tabindex: EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | (((new (...args: any[]) => string | number) | (() => string | number)) | null)[], unknown, unknown, 0, boolean>;
37
36
  readonly validateEvent: EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
38
37
  readonly unlinkPanels: BooleanConstructor;
@@ -3,7 +3,6 @@ import { getEventCode } from "../../../../utils/dom/event.mjs";
3
3
  import { isArray, isFunction } from "../../../../utils/types.mjs";
4
4
  import { ArrowLeft, ArrowRight, DArrowLeft, DArrowRight } from "../../../../utils/vue/builtin-icons.mjs";
5
5
  import { extractFirst } from "../../../../utils/arrays.mjs";
6
- import ClickOutside from "../../../../directives/click-outside/index.mjs";
7
6
  import { useLocale } from "../../../../hooks/use-locale/index.mjs";
8
7
  import { useNamespace } from "../../../../hooks/use-namespace/index.mjs";
9
8
  import { ElIcon } from "../../../icon/index.mjs";
@@ -12,6 +11,7 @@ import { ElInput } from "../../../input/index.mjs";
12
11
  import { ElButton } from "../../../button/index.mjs";
13
12
  import { DEFAULT_FORMATS_DATE, DEFAULT_FORMATS_TIME, PICKER_BASE_INJECTION_KEY } from "../../../time-picker/src/constants.mjs";
14
13
  import { extractDateFormat, extractTimeFormat } from "../../../time-picker/src/utils.mjs";
14
+ import ClickOutside from "../../../../directives/click-outside/index.mjs";
15
15
  import panel_time_pick_default from "../../../time-picker/src/time-picker-com/panel-time-pick.mjs";
16
16
  import { ROOT_PICKER_IS_DEFAULT_FORMAT_INJECTION_KEY } from "../constants.mjs";
17
17
  import { panelDatePickProps } from "../props/panel-date-pick.mjs";
@@ -1,5 +1,4 @@
1
1
  import { ArrowLeft, ArrowRight, DArrowLeft, DArrowRight } from "../../../../utils/vue/builtin-icons.mjs";
2
- import ClickOutside from "../../../../directives/click-outside/index.mjs";
3
2
  import { useLocale } from "../../../../hooks/use-locale/index.mjs";
4
3
  import { ElIcon } from "../../../icon/index.mjs";
5
4
  import { useFormDisabled } from "../../../form/src/hooks/use-form-common-props.mjs";
@@ -7,6 +6,7 @@ import { ElInput } from "../../../input/index.mjs";
7
6
  import { ElButton } from "../../../button/index.mjs";
8
7
  import { DEFAULT_FORMATS_DATE, DEFAULT_FORMATS_TIME, PICKER_BASE_INJECTION_KEY } from "../../../time-picker/src/constants.mjs";
9
8
  import { extractDateFormat, extractTimeFormat } from "../../../time-picker/src/utils.mjs";
9
+ import ClickOutside from "../../../../directives/click-outside/index.mjs";
10
10
  import panel_time_pick_default from "../../../time-picker/src/time-picker-com/panel-time-pick.mjs";
11
11
  import { ROOT_PICKER_IS_DEFAULT_FORMAT_INJECTION_KEY } from "../constants.mjs";
12
12
  import { correctlyParseUserInput, getDefaultValue, isValidRange } from "../utils.mjs";
@@ -146,9 +146,9 @@ declare const _default: vue.DefineComponent<vue.ExtractPropTypes<{
146
146
  readonly showConfirm: boolean;
147
147
  readonly showFooter: boolean;
148
148
  readonly showWeekNumber: boolean;
149
- readonly arrowControl: boolean;
150
149
  readonly unlinkPanels: boolean;
151
150
  readonly isRange: boolean;
151
+ readonly arrowControl: boolean;
152
152
  }, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
153
153
  //#endregion
154
154
  export { _default };
@@ -1,7 +1,7 @@
1
1
  import { SFCWithInstall } from "../../utils/vue/typescript.js";
2
2
  import "../../utils/index.js";
3
3
  import { FormItemProp, FormItemProps, FormItemPropsPublic, FormItemValidateState, formItemProps, formItemValidateStates } from "./src/form-item.js";
4
- import { FormContext, FormItemContext, FormItemRule, FormLabelWidthContext, FormRules, FormValidateCallback, FormValidateFailure, FormValidationResult } from "./src/types.js";
4
+ import { FormContext, FormItemContext, FormItemRule, FormRules, FormValidateCallback, FormValidateFailure, FormValidationResult } from "./src/types.js";
5
5
  import { FormEmits, FormMetaProps, FormMetaPropsPublic, FormProps, FormPropsPublic, formEmits, formMetaProps, formProps } from "./src/form.js";
6
6
  import { _default } from "./src/form.vue.js";
7
7
  import { _default as _default$1 } from "./src/form-item.vue.js";
@@ -18,4 +18,4 @@ declare const ElFormItem: SFCWithInstall<typeof _default$1>;
18
18
  type FormInstance = InstanceType<typeof _default> & unknown;
19
19
  type FormItemInstance = InstanceType<typeof _default$1> & unknown;
20
20
  //#endregion
21
- export { ElForm, ElForm as default, ElFormItem, FormContext, FormEmits, FormInstance, FormItemContext, FormItemInstance, FormItemProp, FormItemProps, FormItemPropsPublic, FormItemRule, FormItemValidateState, FormLabelWidthContext, FormMetaProps, FormMetaPropsPublic, FormProps, FormPropsPublic, FormRules, FormValidateCallback, FormValidateFailure, FormValidationResult, IUseFormItemInputCommonProps, formContextKey, formEmits, formItemContextKey, formItemProps, formItemValidateStates, formMetaProps, formProps, useDisabled, useFormDisabled, useFormItem, useFormItemInputId, useFormSize, useSize };
21
+ export { ElForm, ElForm as default, ElFormItem, FormContext, FormEmits, FormInstance, FormItemContext, FormItemInstance, FormItemProp, FormItemProps, FormItemPropsPublic, FormItemRule, FormItemValidateState, FormMetaProps, FormMetaPropsPublic, FormProps, FormPropsPublic, FormRules, FormValidateCallback, FormValidateFailure, FormValidationResult, IUseFormItemInputCommonProps, formContextKey, formEmits, formItemContextKey, formItemProps, formItemValidateStates, formMetaProps, formProps, useDisabled, useFormDisabled, useFormItem, useFormItemInputId, useFormSize, useSize };
@@ -15,14 +15,6 @@ interface FormItemProps {
15
15
  * @description Label text.
16
16
  */
17
17
  label?: string;
18
- /**
19
- * @description Width of label, e.g. `'50px'`. `'auto'` is supported.
20
- */
21
- labelWidth?: string | number;
22
- /**
23
- * @description Position of label. If set to `'left'` or `'right'`, `label-width` prop is also required. The default is extend from `form label-position`.
24
- */
25
- labelPosition?: 'left' | 'right' | 'top' | '';
26
18
  /**
27
19
  * @description A key of `model`. It could be an array of property paths (e.g `['a', 'b', '0']`). In the use of `validate` and `resetFields` method, the attribute is required.
28
20
  */
@@ -65,13 +57,6 @@ interface FormItemProps {
65
57
  */
66
58
  declare const formItemProps: {
67
59
  readonly label: StringConstructor;
68
- readonly labelWidth: {
69
- readonly type: vue.PropType<EpPropMergeType<readonly [StringConstructor, NumberConstructor], unknown, unknown>>;
70
- readonly required: false;
71
- readonly validator: ((val: unknown) => boolean) | undefined;
72
- __epPropKey: true;
73
- };
74
- readonly labelPosition: EpPropFinalized<StringConstructor, "" | "top" | "left" | "right", unknown, "", boolean>;
75
60
  readonly prop: {
76
61
  readonly type: vue.PropType<EpPropMergeType<(new (...args: any[]) => string | string[]) | (() => FormItemProp) | (((new (...args: any[]) => string | string[]) | (() => FormItemProp)) | null)[], unknown, unknown>>;
77
62
  readonly required: false;
@@ -13,17 +13,6 @@ const formItemValidateStates = [
13
13
  */
14
14
  const formItemProps = buildProps({
15
15
  label: String,
16
- labelWidth: { type: [String, Number] },
17
- labelPosition: {
18
- type: String,
19
- values: [
20
- "left",
21
- "right",
22
- "top",
23
- ""
24
- ],
25
- default: ""
26
- },
27
16
  prop: { type: definePropType([String, Array]) },
28
17
  required: {
29
18
  type: Boolean,
@@ -1 +1 @@
1
- {"version":3,"file":"form-item.mjs","names":[],"sources":["../../../../../../packages/components/form/src/form-item.ts"],"sourcesContent":["import { componentSizes } from '@element-plus/constants'\nimport { buildProps, definePropType } from '@element-plus/utils'\n\nimport type { ExtractPublicPropTypes } from 'vue'\nimport type { ComponentSize } from '@element-plus/constants'\nimport type { Arrayable } from '@element-plus/utils'\nimport type { FormItemRule } from './types'\n\nexport const formItemValidateStates = [\n '',\n 'error',\n 'validating',\n 'success',\n] as const\nexport type FormItemValidateState = (typeof formItemValidateStates)[number]\n\nexport type FormItemProp = Arrayable<string>\n\nexport interface FormItemProps {\n /**\n * @description Label text.\n */\n label?: string\n /**\n * @description Width of label, e.g. `'50px'`. `'auto'` is supported.\n */\n labelWidth?: string | number\n /**\n * @description Position of label. If set to `'left'` or `'right'`, `label-width` prop is also required. The default is extend from `form label-position`.\n */\n labelPosition?: 'left' | 'right' | 'top' | ''\n /**\n * @description A key of `model`. It could be an array of property paths (e.g `['a', 'b', '0']`). In the use of `validate` and `resetFields` method, the attribute is required.\n */\n prop?: FormItemProp\n /**\n * @description Whether the field is required or not, will be determined by validation rules if omitted.\n */\n required?: boolean\n /**\n * @description Validation rules of form, see the [following table](#formitemrule), more advanced usage at [async-validator](https://github.com/yiminghe/async-validator).\n */\n rules?: Arrayable<FormItemRule>\n /**\n * @description Field error message, set its value and the field will validate error and show this message immediately.\n */\n error?: string\n /**\n * @description Validation state of formItem.\n */\n validateStatus?: FormItemValidateState\n /**\n * @description Same as for in native label.\n */\n for?: string\n /**\n * @description Inline style validate message.\n */\n inlineMessage?: boolean\n /**\n * @description Whether to show the error message.\n */\n showMessage?: boolean\n /**\n * @description Control the size of components in this form-item.\n */\n size?: ComponentSize\n}\n\n/**\n * @deprecated Removed after 3.0.0, Use `FormItemProps` instead.\n */\nexport const formItemProps = buildProps({\n /**\n * @description Label text.\n */\n label: String,\n /**\n * @description Width of label, e.g. `'50px'`. `'auto'` is supported.\n */\n labelWidth: {\n type: [String, Number],\n },\n /**\n * @description Position of label. If set to `'left'` or `'right'`, `label-width` prop is also required. The default is extend from `form label-position`.\n */\n labelPosition: {\n type: String,\n values: ['left', 'right', 'top', ''],\n default: '',\n },\n /**\n * @description A key of `model`. It could be an array of property paths (e.g `['a', 'b', '0']`). In the use of `validate` and `resetFields` method, the attribute is required.\n */\n prop: {\n type: definePropType<FormItemProp>([String, Array]),\n },\n /**\n * @description Whether the field is required or not, will be determined by validation rules if omitted.\n */\n required: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description Validation rules of form, see the [following table](#formitemrule), more advanced usage at [async-validator](https://github.com/yiminghe/async-validator).\n */\n rules: {\n type: definePropType<Arrayable<FormItemRule>>([Object, Array]),\n },\n /**\n * @description Field error message, set its value and the field will validate error and show this message immediately.\n */\n error: String,\n /**\n * @description Validation state of formItem.\n */\n validateStatus: {\n type: String,\n values: formItemValidateStates,\n },\n /**\n * @description Same as for in native label.\n */\n for: String,\n /**\n * @description Inline style validate message.\n */\n inlineMessage: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description Whether to show the error message.\n */\n showMessage: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Control the size of components in this form-item.\n */\n size: {\n type: String,\n values: componentSizes,\n },\n} as const)\n\n/**\n * @deprecated Removed after 3.0.0, Use `FormItemProps` instead.\n */\nexport type FormItemPropsPublic = ExtractPublicPropTypes<typeof formItemProps>\n"],"mappings":";;;;AAQA,MAAa,yBAAyB;CACpC;CACA;CACA;CACA;CACD;;;;AA2DD,MAAa,gBAAgB,WAAW;CAItC,OAAO;CAIP,YAAY,EACV,MAAM,CAAC,QAAQ,OAAO,EACvB;CAID,eAAe;EACb,MAAM;EACN,QAAQ;GAAC;GAAQ;GAAS;GAAO;GAAG;EACpC,SAAS;EACV;CAID,MAAM,EACJ,MAAM,eAA6B,CAAC,QAAQ,MAAM,CAAC,EACpD;CAID,UAAU;EACR,MAAM;EACN,SAAS;EACV;CAID,OAAO,EACL,MAAM,eAAwC,CAAC,QAAQ,MAAM,CAAC,EAC/D;CAID,OAAO;CAIP,gBAAgB;EACd,MAAM;EACN,QAAQ;EACT;CAID,KAAK;CAIL,eAAe;EACb,MAAM;EACN,SAAS;EACV;CAID,aAAa;EACX,MAAM;EACN,SAAS;EACV;CAID,MAAM;EACJ,MAAM;EACN,QAAQ;EACT;CACF,CAAU"}
1
+ {"version":3,"file":"form-item.mjs","names":[],"sources":["../../../../../../packages/components/form/src/form-item.ts"],"sourcesContent":["import { componentSizes } from '@element-plus/constants'\nimport { buildProps, definePropType } from '@element-plus/utils'\n\nimport type { ExtractPublicPropTypes } from 'vue'\nimport type { ComponentSize } from '@element-plus/constants'\nimport type { Arrayable } from '@element-plus/utils'\nimport type { FormItemRule } from './types'\n\nexport const formItemValidateStates = [\n '',\n 'error',\n 'validating',\n 'success',\n] as const\nexport type FormItemValidateState = (typeof formItemValidateStates)[number]\n\nexport type FormItemProp = Arrayable<string>\n\nexport interface FormItemProps {\n /**\n * @description Label text.\n */\n label?: string\n /**\n * @description A key of `model`. It could be an array of property paths (e.g `['a', 'b', '0']`). In the use of `validate` and `resetFields` method, the attribute is required.\n */\n prop?: FormItemProp\n /**\n * @description Whether the field is required or not, will be determined by validation rules if omitted.\n */\n required?: boolean\n /**\n * @description Validation rules of form, see the [following table](#formitemrule), more advanced usage at [async-validator](https://github.com/yiminghe/async-validator).\n */\n rules?: Arrayable<FormItemRule>\n /**\n * @description Field error message, set its value and the field will validate error and show this message immediately.\n */\n error?: string\n /**\n * @description Validation state of formItem.\n */\n validateStatus?: FormItemValidateState\n /**\n * @description Same as for in native label.\n */\n for?: string\n /**\n * @description Inline style validate message.\n */\n inlineMessage?: boolean\n /**\n * @description Whether to show the error message.\n */\n showMessage?: boolean\n /**\n * @description Control the size of components in this form-item.\n */\n size?: ComponentSize\n}\n\n/**\n * @deprecated Removed after 3.0.0, Use `FormItemProps` instead.\n */\nexport const formItemProps = buildProps({\n /**\n * @description Label text.\n */\n label: String,\n /**\n * @description A key of `model`. It could be an array of property paths (e.g `['a', 'b', '0']`). In the use of `validate` and `resetFields` method, the attribute is required.\n */\n prop: {\n type: definePropType<FormItemProp>([String, Array]),\n },\n /**\n * @description Whether the field is required or not, will be determined by validation rules if omitted.\n */\n required: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description Validation rules of form, see the [following table](#formitemrule), more advanced usage at [async-validator](https://github.com/yiminghe/async-validator).\n */\n rules: {\n type: definePropType<Arrayable<FormItemRule>>([Object, Array]),\n },\n /**\n * @description Field error message, set its value and the field will validate error and show this message immediately.\n */\n error: String,\n /**\n * @description Validation state of formItem.\n */\n validateStatus: {\n type: String,\n values: formItemValidateStates,\n },\n /**\n * @description Same as for in native label.\n */\n for: String,\n /**\n * @description Inline style validate message.\n */\n inlineMessage: {\n type: Boolean,\n default: undefined,\n },\n /**\n * @description Whether to show the error message.\n */\n showMessage: {\n type: Boolean,\n default: true,\n },\n /**\n * @description Control the size of components in this form-item.\n */\n size: {\n type: String,\n values: componentSizes,\n },\n} as const)\n\n/**\n * @deprecated Removed after 3.0.0, Use `FormItemProps` instead.\n */\nexport type FormItemPropsPublic = ExtractPublicPropTypes<typeof formItemProps>\n"],"mappings":";;;;AAQA,MAAa,yBAAyB;CACpC;CACA;CACA;CACA;CACD;;;;AAmDD,MAAa,gBAAgB,WAAW;CAItC,OAAO;CAIP,MAAM,EACJ,MAAM,eAA6B,CAAC,QAAQ,MAAM,CAAC,EACpD;CAID,UAAU;EACR,MAAM;EACN,SAAS;EACV;CAID,OAAO,EACL,MAAM,eAAwC,CAAC,QAAQ,MAAM,CAAC,EAC/D;CAID,OAAO;CAIP,gBAAgB;EACd,MAAM;EACN,QAAQ;EACT;CAID,KAAK;CAIL,eAAe;EACb,MAAM;EACN,SAAS;EACV;CAID,aAAa;EACX,MAAM;EACN,SAAS;EACV;CAID,MAAM;EACJ,MAAM;EACN,QAAQ;EACT;CACF,CAAU"}
@@ -3,17 +3,17 @@ import { FormValidateCallback, FormValidationResult } from "./types.js";
3
3
  import * as vue from "vue";
4
4
 
5
5
  //#region ../../packages/components/form/src/form-item.vue.d.ts
6
- declare var __VLS_13: {
6
+ declare var __VLS_7: {
7
7
  label: string;
8
- }, __VLS_15: {}, __VLS_23: {
8
+ }, __VLS_9: {}, __VLS_17: {
9
9
  error: string;
10
10
  };
11
11
  type __VLS_Slots = {} & {
12
- label?: (props: typeof __VLS_13) => any;
12
+ label?: (props: typeof __VLS_7) => any;
13
13
  } & {
14
- default?: (props: typeof __VLS_15) => any;
14
+ default?: (props: typeof __VLS_9) => any;
15
15
  } & {
16
- error?: (props: typeof __VLS_23) => any;
16
+ error?: (props: typeof __VLS_17) => any;
17
17
  };
18
18
  declare const __VLS_base: vue.DefineComponent<FormItemProps, {
19
19
  /**
@@ -46,7 +46,6 @@ declare const __VLS_base: vue.DefineComponent<FormItemProps, {
46
46
  setInitialValue: (value: any) => void;
47
47
  }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<FormItemProps> & Readonly<{}>, {
48
48
  required: boolean;
49
- labelPosition: "left" | "right" | "top" | "";
50
49
  inlineMessage: boolean;
51
50
  showMessage: boolean;
52
51
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;