@element-plus/nightly 0.0.20250823 → 0.0.20250825

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 (567) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.full.js +29 -26
  3. package/dist/index.full.min.js +6 -6
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +4 -4
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +29 -26
  8. package/dist/locale/af.js +1 -1
  9. package/dist/locale/af.min.js +1 -1
  10. package/dist/locale/af.min.mjs +1 -1
  11. package/dist/locale/af.mjs +1 -1
  12. package/dist/locale/ar-eg.js +1 -1
  13. package/dist/locale/ar-eg.min.js +1 -1
  14. package/dist/locale/ar-eg.min.mjs +1 -1
  15. package/dist/locale/ar-eg.mjs +1 -1
  16. package/dist/locale/ar.js +1 -1
  17. package/dist/locale/ar.min.js +1 -1
  18. package/dist/locale/ar.min.mjs +1 -1
  19. package/dist/locale/ar.mjs +1 -1
  20. package/dist/locale/az.js +1 -1
  21. package/dist/locale/az.min.js +1 -1
  22. package/dist/locale/az.min.mjs +1 -1
  23. package/dist/locale/az.mjs +1 -1
  24. package/dist/locale/bg.js +1 -1
  25. package/dist/locale/bg.min.js +1 -1
  26. package/dist/locale/bg.min.mjs +1 -1
  27. package/dist/locale/bg.mjs +1 -1
  28. package/dist/locale/bn.js +1 -1
  29. package/dist/locale/bn.min.js +1 -1
  30. package/dist/locale/bn.min.mjs +1 -1
  31. package/dist/locale/bn.mjs +1 -1
  32. package/dist/locale/ca.js +1 -1
  33. package/dist/locale/ca.min.js +1 -1
  34. package/dist/locale/ca.min.mjs +1 -1
  35. package/dist/locale/ca.mjs +1 -1
  36. package/dist/locale/ckb.js +1 -1
  37. package/dist/locale/ckb.min.js +1 -1
  38. package/dist/locale/ckb.min.mjs +1 -1
  39. package/dist/locale/ckb.mjs +1 -1
  40. package/dist/locale/cs.js +1 -1
  41. package/dist/locale/cs.min.js +1 -1
  42. package/dist/locale/cs.min.mjs +1 -1
  43. package/dist/locale/cs.mjs +1 -1
  44. package/dist/locale/da.js +1 -1
  45. package/dist/locale/da.min.js +1 -1
  46. package/dist/locale/da.min.mjs +1 -1
  47. package/dist/locale/da.mjs +1 -1
  48. package/dist/locale/de.js +1 -1
  49. package/dist/locale/de.min.js +1 -1
  50. package/dist/locale/de.min.mjs +1 -1
  51. package/dist/locale/de.mjs +1 -1
  52. package/dist/locale/el.js +1 -1
  53. package/dist/locale/el.min.js +1 -1
  54. package/dist/locale/el.min.mjs +1 -1
  55. package/dist/locale/el.mjs +1 -1
  56. package/dist/locale/en.js +1 -1
  57. package/dist/locale/en.min.js +1 -1
  58. package/dist/locale/en.min.mjs +1 -1
  59. package/dist/locale/en.mjs +1 -1
  60. package/dist/locale/eo.js +1 -1
  61. package/dist/locale/eo.min.js +1 -1
  62. package/dist/locale/eo.min.mjs +1 -1
  63. package/dist/locale/eo.mjs +1 -1
  64. package/dist/locale/es.js +1 -1
  65. package/dist/locale/es.min.js +1 -1
  66. package/dist/locale/es.min.mjs +1 -1
  67. package/dist/locale/es.mjs +1 -1
  68. package/dist/locale/et.js +1 -1
  69. package/dist/locale/et.min.js +1 -1
  70. package/dist/locale/et.min.mjs +1 -1
  71. package/dist/locale/et.mjs +1 -1
  72. package/dist/locale/eu.js +1 -1
  73. package/dist/locale/eu.min.js +1 -1
  74. package/dist/locale/eu.min.mjs +1 -1
  75. package/dist/locale/eu.mjs +1 -1
  76. package/dist/locale/fa.js +1 -1
  77. package/dist/locale/fa.min.js +1 -1
  78. package/dist/locale/fa.min.mjs +1 -1
  79. package/dist/locale/fa.mjs +1 -1
  80. package/dist/locale/fi.js +1 -1
  81. package/dist/locale/fi.min.js +1 -1
  82. package/dist/locale/fi.min.mjs +1 -1
  83. package/dist/locale/fi.mjs +1 -1
  84. package/dist/locale/fr.js +1 -1
  85. package/dist/locale/fr.min.js +1 -1
  86. package/dist/locale/fr.min.mjs +1 -1
  87. package/dist/locale/fr.mjs +1 -1
  88. package/dist/locale/he.js +1 -1
  89. package/dist/locale/he.min.js +1 -1
  90. package/dist/locale/he.min.mjs +1 -1
  91. package/dist/locale/he.mjs +1 -1
  92. package/dist/locale/hi.js +1 -1
  93. package/dist/locale/hi.min.js +1 -1
  94. package/dist/locale/hi.min.mjs +1 -1
  95. package/dist/locale/hi.mjs +1 -1
  96. package/dist/locale/hr.js +1 -1
  97. package/dist/locale/hr.min.js +1 -1
  98. package/dist/locale/hr.min.mjs +1 -1
  99. package/dist/locale/hr.mjs +1 -1
  100. package/dist/locale/hu.js +1 -1
  101. package/dist/locale/hu.min.js +1 -1
  102. package/dist/locale/hu.min.mjs +1 -1
  103. package/dist/locale/hu.mjs +1 -1
  104. package/dist/locale/hy-am.js +1 -1
  105. package/dist/locale/hy-am.min.js +1 -1
  106. package/dist/locale/hy-am.min.mjs +1 -1
  107. package/dist/locale/hy-am.mjs +1 -1
  108. package/dist/locale/id.js +1 -1
  109. package/dist/locale/id.min.js +1 -1
  110. package/dist/locale/id.min.mjs +1 -1
  111. package/dist/locale/id.mjs +1 -1
  112. package/dist/locale/it.js +1 -1
  113. package/dist/locale/it.min.js +1 -1
  114. package/dist/locale/it.min.mjs +1 -1
  115. package/dist/locale/it.mjs +1 -1
  116. package/dist/locale/ja.js +1 -1
  117. package/dist/locale/ja.min.js +1 -1
  118. package/dist/locale/ja.min.mjs +1 -1
  119. package/dist/locale/ja.mjs +1 -1
  120. package/dist/locale/kk.js +1 -1
  121. package/dist/locale/kk.min.js +1 -1
  122. package/dist/locale/kk.min.mjs +1 -1
  123. package/dist/locale/kk.mjs +1 -1
  124. package/dist/locale/km.js +1 -1
  125. package/dist/locale/km.min.js +1 -1
  126. package/dist/locale/km.min.mjs +1 -1
  127. package/dist/locale/km.mjs +1 -1
  128. package/dist/locale/ko.js +1 -1
  129. package/dist/locale/ko.min.js +1 -1
  130. package/dist/locale/ko.min.mjs +1 -1
  131. package/dist/locale/ko.mjs +1 -1
  132. package/dist/locale/ku.js +1 -1
  133. package/dist/locale/ku.min.js +1 -1
  134. package/dist/locale/ku.min.mjs +1 -1
  135. package/dist/locale/ku.mjs +1 -1
  136. package/dist/locale/ky.js +1 -1
  137. package/dist/locale/ky.min.js +1 -1
  138. package/dist/locale/ky.min.mjs +1 -1
  139. package/dist/locale/ky.mjs +1 -1
  140. package/dist/locale/lo.js +1 -1
  141. package/dist/locale/lo.min.js +1 -1
  142. package/dist/locale/lo.min.mjs +1 -1
  143. package/dist/locale/lo.mjs +1 -1
  144. package/dist/locale/lt.js +1 -1
  145. package/dist/locale/lt.min.js +1 -1
  146. package/dist/locale/lt.min.mjs +1 -1
  147. package/dist/locale/lt.mjs +1 -1
  148. package/dist/locale/lv.js +1 -1
  149. package/dist/locale/lv.min.js +1 -1
  150. package/dist/locale/lv.min.mjs +1 -1
  151. package/dist/locale/lv.mjs +1 -1
  152. package/dist/locale/mg.js +1 -1
  153. package/dist/locale/mg.min.js +1 -1
  154. package/dist/locale/mg.min.mjs +1 -1
  155. package/dist/locale/mg.mjs +1 -1
  156. package/dist/locale/mn.js +1 -1
  157. package/dist/locale/mn.min.js +1 -1
  158. package/dist/locale/mn.min.mjs +1 -1
  159. package/dist/locale/mn.mjs +1 -1
  160. package/dist/locale/ms.js +1 -1
  161. package/dist/locale/ms.min.js +1 -1
  162. package/dist/locale/ms.min.mjs +1 -1
  163. package/dist/locale/ms.mjs +1 -1
  164. package/dist/locale/my.js +1 -1
  165. package/dist/locale/my.min.js +1 -1
  166. package/dist/locale/my.min.mjs +1 -1
  167. package/dist/locale/my.mjs +1 -1
  168. package/dist/locale/nb-no.js +1 -1
  169. package/dist/locale/nb-no.min.js +1 -1
  170. package/dist/locale/nb-no.min.mjs +1 -1
  171. package/dist/locale/nb-no.mjs +1 -1
  172. package/dist/locale/nl.js +1 -1
  173. package/dist/locale/nl.min.js +1 -1
  174. package/dist/locale/nl.min.mjs +1 -1
  175. package/dist/locale/nl.mjs +1 -1
  176. package/dist/locale/no.js +1 -1
  177. package/dist/locale/no.min.js +1 -1
  178. package/dist/locale/no.min.mjs +1 -1
  179. package/dist/locale/no.mjs +1 -1
  180. package/dist/locale/pa.js +1 -1
  181. package/dist/locale/pa.min.js +1 -1
  182. package/dist/locale/pa.min.mjs +1 -1
  183. package/dist/locale/pa.mjs +1 -1
  184. package/dist/locale/pl.js +1 -1
  185. package/dist/locale/pl.min.js +1 -1
  186. package/dist/locale/pl.min.mjs +1 -1
  187. package/dist/locale/pl.mjs +1 -1
  188. package/dist/locale/pt-br.js +1 -1
  189. package/dist/locale/pt-br.min.js +1 -1
  190. package/dist/locale/pt-br.min.mjs +1 -1
  191. package/dist/locale/pt-br.mjs +1 -1
  192. package/dist/locale/pt.js +1 -1
  193. package/dist/locale/pt.min.js +1 -1
  194. package/dist/locale/pt.min.mjs +1 -1
  195. package/dist/locale/pt.mjs +1 -1
  196. package/dist/locale/ro.js +1 -1
  197. package/dist/locale/ro.min.js +1 -1
  198. package/dist/locale/ro.min.mjs +1 -1
  199. package/dist/locale/ro.mjs +1 -1
  200. package/dist/locale/ru.js +1 -1
  201. package/dist/locale/ru.min.js +1 -1
  202. package/dist/locale/ru.min.mjs +1 -1
  203. package/dist/locale/ru.mjs +1 -1
  204. package/dist/locale/sk.js +1 -1
  205. package/dist/locale/sk.min.js +1 -1
  206. package/dist/locale/sk.min.mjs +1 -1
  207. package/dist/locale/sk.mjs +1 -1
  208. package/dist/locale/sl.js +1 -1
  209. package/dist/locale/sl.min.js +1 -1
  210. package/dist/locale/sl.min.mjs +1 -1
  211. package/dist/locale/sl.mjs +1 -1
  212. package/dist/locale/sr.js +1 -1
  213. package/dist/locale/sr.min.js +1 -1
  214. package/dist/locale/sr.min.mjs +1 -1
  215. package/dist/locale/sr.mjs +1 -1
  216. package/dist/locale/sv.js +1 -1
  217. package/dist/locale/sv.min.js +1 -1
  218. package/dist/locale/sv.min.mjs +1 -1
  219. package/dist/locale/sv.mjs +1 -1
  220. package/dist/locale/sw.js +1 -1
  221. package/dist/locale/sw.min.js +1 -1
  222. package/dist/locale/sw.min.mjs +1 -1
  223. package/dist/locale/sw.mjs +1 -1
  224. package/dist/locale/ta.js +1 -1
  225. package/dist/locale/ta.min.js +1 -1
  226. package/dist/locale/ta.min.mjs +1 -1
  227. package/dist/locale/ta.mjs +1 -1
  228. package/dist/locale/te.js +1 -1
  229. package/dist/locale/te.min.js +1 -1
  230. package/dist/locale/te.min.mjs +1 -1
  231. package/dist/locale/te.mjs +1 -1
  232. package/dist/locale/th.js +1 -1
  233. package/dist/locale/th.min.js +1 -1
  234. package/dist/locale/th.min.mjs +1 -1
  235. package/dist/locale/th.mjs +1 -1
  236. package/dist/locale/tk.js +1 -1
  237. package/dist/locale/tk.min.js +1 -1
  238. package/dist/locale/tk.min.mjs +1 -1
  239. package/dist/locale/tk.mjs +1 -1
  240. package/dist/locale/tr.js +1 -1
  241. package/dist/locale/tr.min.js +1 -1
  242. package/dist/locale/tr.min.mjs +1 -1
  243. package/dist/locale/tr.mjs +1 -1
  244. package/dist/locale/ug-cn.js +1 -1
  245. package/dist/locale/ug-cn.min.js +1 -1
  246. package/dist/locale/ug-cn.min.mjs +1 -1
  247. package/dist/locale/ug-cn.mjs +1 -1
  248. package/dist/locale/uk.js +1 -1
  249. package/dist/locale/uk.min.js +1 -1
  250. package/dist/locale/uk.min.mjs +1 -1
  251. package/dist/locale/uk.mjs +1 -1
  252. package/dist/locale/uz-uz.js +1 -1
  253. package/dist/locale/uz-uz.min.js +1 -1
  254. package/dist/locale/uz-uz.min.mjs +1 -1
  255. package/dist/locale/uz-uz.mjs +1 -1
  256. package/dist/locale/vi.js +1 -1
  257. package/dist/locale/vi.min.js +1 -1
  258. package/dist/locale/vi.min.mjs +1 -1
  259. package/dist/locale/vi.mjs +1 -1
  260. package/dist/locale/zh-cn.js +1 -1
  261. package/dist/locale/zh-cn.min.js +1 -1
  262. package/dist/locale/zh-cn.min.mjs +1 -1
  263. package/dist/locale/zh-cn.mjs +1 -1
  264. package/dist/locale/zh-hk.js +1 -1
  265. package/dist/locale/zh-hk.min.js +1 -1
  266. package/dist/locale/zh-hk.min.mjs +1 -1
  267. package/dist/locale/zh-hk.mjs +1 -1
  268. package/dist/locale/zh-mo.js +1 -1
  269. package/dist/locale/zh-mo.min.js +1 -1
  270. package/dist/locale/zh-mo.min.mjs +1 -1
  271. package/dist/locale/zh-mo.mjs +1 -1
  272. package/dist/locale/zh-tw.js +1 -1
  273. package/dist/locale/zh-tw.min.js +1 -1
  274. package/dist/locale/zh-tw.min.mjs +1 -1
  275. package/dist/locale/zh-tw.mjs +1 -1
  276. package/es/components/breadcrumb/src/breadcrumb-item.vue.d.ts +1 -1
  277. package/es/components/calendar/src/calendar2.mjs +1 -1
  278. package/es/components/calendar/src/date-table.mjs +89 -31
  279. package/es/components/calendar/src/date-table.mjs.map +1 -1
  280. package/es/components/calendar/src/date-table2.mjs +31 -89
  281. package/es/components/calendar/src/date-table2.mjs.map +1 -1
  282. package/es/components/calendar/src/use-date-table.mjs +1 -1
  283. package/es/components/cascader/src/cascader.d.ts +1 -1
  284. package/es/components/cascader/src/cascader.vue.d.ts +2 -2
  285. package/es/components/cascader-panel/src/config.d.ts +2 -2
  286. package/es/components/cascader-panel/src/config.mjs +1 -1
  287. package/es/components/cascader-panel/src/config.mjs.map +1 -1
  288. package/es/components/cascader-panel/src/index.vue.d.ts +2 -2
  289. package/es/components/cascader-panel/src/node.d.ts +1 -1
  290. package/es/components/cascader-panel/src/node.mjs.map +1 -1
  291. package/es/components/cascader-panel/src/node2.mjs +2 -4
  292. package/es/components/cascader-panel/src/node2.mjs.map +1 -1
  293. package/es/components/cascader-panel/src/types.d.ts +1 -1
  294. package/es/components/cascader-panel/src/types.mjs.map +1 -1
  295. package/es/components/collapse/index.mjs +2 -2
  296. package/es/components/collapse/src/collapse.mjs +28 -23
  297. package/es/components/collapse/src/collapse.mjs.map +1 -1
  298. package/es/components/collapse/src/collapse2.mjs +23 -28
  299. package/es/components/collapse/src/collapse2.mjs.map +1 -1
  300. package/es/components/countdown/index.mjs +2 -2
  301. package/es/components/countdown/src/countdown.mjs +79 -21
  302. package/es/components/countdown/src/countdown.mjs.map +1 -1
  303. package/es/components/countdown/src/countdown2.mjs +21 -79
  304. package/es/components/countdown/src/countdown2.mjs.map +1 -1
  305. package/es/components/date-picker-panel/src/composables/use-range-picker.d.ts +3 -3
  306. package/es/components/date-picker-panel/src/composables/use-range-picker.mjs +6 -6
  307. package/es/components/date-picker-panel/src/composables/use-range-picker.mjs.map +1 -1
  308. package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.mjs +6 -5
  309. package/es/components/date-picker-panel/src/date-picker-com/panel-date-range.mjs.map +1 -1
  310. package/es/components/date-picker-panel/src/date-picker-com/panel-month-range.mjs +4 -4
  311. package/es/components/date-picker-panel/src/date-picker-com/panel-month-range.mjs.map +1 -1
  312. package/es/components/date-picker-panel/src/date-picker-com/panel-year-range.mjs +4 -4
  313. package/es/components/date-picker-panel/src/date-picker-com/panel-year-range.mjs.map +1 -1
  314. package/es/components/descriptions/index.mjs +2 -2
  315. package/es/components/descriptions/src/description.mjs +26 -127
  316. package/es/components/descriptions/src/description.mjs.map +1 -1
  317. package/es/components/descriptions/src/description2.mjs +127 -26
  318. package/es/components/descriptions/src/description2.mjs.map +1 -1
  319. package/es/components/drawer/index.mjs +2 -2
  320. package/es/components/drawer/src/drawer.mjs +27 -202
  321. package/es/components/drawer/src/drawer.mjs.map +1 -1
  322. package/es/components/drawer/src/drawer2.mjs +202 -27
  323. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  324. package/es/components/dropdown/src/dropdown.mjs +1 -1
  325. package/es/components/empty/index.mjs +2 -2
  326. package/es/components/empty/src/empty.mjs +52 -11
  327. package/es/components/empty/src/empty.mjs.map +1 -1
  328. package/es/components/empty/src/empty2.mjs +11 -52
  329. package/es/components/empty/src/empty2.mjs.map +1 -1
  330. package/es/components/form/src/types.d.ts +1 -62
  331. package/es/components/image/index.mjs +2 -2
  332. package/es/components/image/src/image.mjs +227 -65
  333. package/es/components/image/src/image.mjs.map +1 -1
  334. package/es/components/image/src/image2.mjs +65 -227
  335. package/es/components/image/src/image2.mjs.map +1 -1
  336. package/es/components/index.mjs +16 -16
  337. package/es/components/input-tag/style/css.d.ts +1 -0
  338. package/es/components/input-tag/style/css.mjs +1 -0
  339. package/es/components/input-tag/style/css.mjs.map +1 -1
  340. package/es/components/input-tag/style/index.d.ts +2 -1
  341. package/es/components/input-tag/style/index.mjs +1 -0
  342. package/es/components/input-tag/style/index.mjs.map +1 -1
  343. package/es/components/menu/index.mjs +2 -2
  344. package/es/components/menu/src/menu-item.mjs +100 -15
  345. package/es/components/menu/src/menu-item.mjs.map +1 -1
  346. package/es/components/menu/src/menu-item2.mjs +15 -100
  347. package/es/components/menu/src/menu-item2.mjs.map +1 -1
  348. package/es/components/notification/index.mjs +1 -1
  349. package/es/components/notification/src/notification.mjs +73 -140
  350. package/es/components/notification/src/notification.mjs.map +1 -1
  351. package/es/components/notification/src/notification2.mjs +140 -73
  352. package/es/components/notification/src/notification2.mjs.map +1 -1
  353. package/es/components/notification/src/notify.mjs +2 -2
  354. package/es/components/page-header/index.mjs +2 -2
  355. package/es/components/page-header/src/page-header.mjs +97 -16
  356. package/es/components/page-header/src/page-header.mjs.map +1 -1
  357. package/es/components/page-header/src/page-header2.mjs +16 -97
  358. package/es/components/page-header/src/page-header2.mjs.map +1 -1
  359. package/es/components/popover/src/popover.mjs +1 -1
  360. package/es/components/progress/index.mjs +2 -2
  361. package/es/components/progress/src/progress.mjs +207 -53
  362. package/es/components/progress/src/progress.mjs.map +1 -1
  363. package/es/components/progress/src/progress2.mjs +53 -207
  364. package/es/components/progress/src/progress2.mjs.map +1 -1
  365. package/es/components/scrollbar/src/bar.mjs +64 -10
  366. package/es/components/scrollbar/src/bar.mjs.map +1 -1
  367. package/es/components/scrollbar/src/bar2.mjs +10 -64
  368. package/es/components/scrollbar/src/bar2.mjs.map +1 -1
  369. package/es/components/scrollbar/src/scrollbar2.mjs +1 -1
  370. package/es/components/splitter/index.mjs +2 -2
  371. package/es/components/splitter/src/split-panel2.mjs +4 -0
  372. package/es/components/splitter/src/split-panel2.mjs.map +1 -1
  373. package/es/components/splitter/src/splitter.mjs +99 -9
  374. package/es/components/splitter/src/splitter.mjs.map +1 -1
  375. package/es/components/splitter/src/splitter2.mjs +9 -99
  376. package/es/components/splitter/src/splitter2.mjs.map +1 -1
  377. package/es/components/steps/index.mjs +2 -2
  378. package/es/components/steps/src/item.mjs +193 -19
  379. package/es/components/steps/src/item.mjs.map +1 -1
  380. package/es/components/steps/src/item2.mjs +19 -193
  381. package/es/components/steps/src/item2.mjs.map +1 -1
  382. package/es/components/tabs/index.mjs +1 -1
  383. package/es/components/tabs/src/tab-bar.mjs +87 -11
  384. package/es/components/tabs/src/tab-bar.mjs.map +1 -1
  385. package/es/components/tabs/src/tab-bar2.mjs +11 -87
  386. package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
  387. package/es/components/tabs/src/tab-nav.mjs +1 -1
  388. package/es/components/tooltip/index.mjs +1 -1
  389. package/es/components/tooltip/src/tooltip.mjs +1 -1
  390. package/es/components/tooltip/src/tooltip2.mjs +1 -1
  391. package/es/components/tooltip/src/trigger.mjs +14 -72
  392. package/es/components/tooltip/src/trigger.mjs.map +1 -1
  393. package/es/components/tooltip/src/trigger2.mjs +72 -14
  394. package/es/components/tooltip/src/trigger2.mjs.map +1 -1
  395. package/es/components/tour/index.mjs +2 -2
  396. package/es/components/tour/src/mask.mjs +74 -18
  397. package/es/components/tour/src/mask.mjs.map +1 -1
  398. package/es/components/tour/src/mask2.mjs +18 -74
  399. package/es/components/tour/src/mask2.mjs.map +1 -1
  400. package/es/components/tour/src/step.mjs +189 -44
  401. package/es/components/tour/src/step.mjs.map +1 -1
  402. package/es/components/tour/src/step2.mjs +44 -189
  403. package/es/components/tour/src/step2.mjs.map +1 -1
  404. package/es/components/tour/src/tour2.mjs +1 -1
  405. package/es/components/transfer/index.mjs +2 -2
  406. package/es/components/transfer/src/composables/use-checked-change.mjs +1 -1
  407. package/es/components/transfer/src/transfer-panel.mjs +1 -1
  408. package/es/components/transfer/src/transfer.mjs +68 -164
  409. package/es/components/transfer/src/transfer.mjs.map +1 -1
  410. package/es/components/transfer/src/transfer2.mjs +164 -68
  411. package/es/components/transfer/src/transfer2.mjs.map +1 -1
  412. package/es/hooks/use-locale/index.d.ts +5 -2
  413. package/es/hooks/use-locale/index.mjs.map +1 -1
  414. package/es/index.d.ts +445 -265
  415. package/es/index.mjs +16 -16
  416. package/es/utils/typescript.d.ts +61 -0
  417. package/es/utils/typescript.mjs.map +1 -1
  418. package/es/version.d.ts +1 -1
  419. package/es/version.mjs +1 -1
  420. package/es/version.mjs.map +1 -1
  421. package/lib/components/breadcrumb/src/breadcrumb-item.vue.d.ts +1 -1
  422. package/lib/components/calendar/src/calendar2.js +1 -1
  423. package/lib/components/calendar/src/date-table.js +89 -35
  424. package/lib/components/calendar/src/date-table.js.map +1 -1
  425. package/lib/components/calendar/src/date-table2.js +35 -89
  426. package/lib/components/calendar/src/date-table2.js.map +1 -1
  427. package/lib/components/calendar/src/use-date-table.js +1 -1
  428. package/lib/components/cascader/src/cascader.d.ts +1 -1
  429. package/lib/components/cascader/src/cascader.vue.d.ts +2 -2
  430. package/lib/components/cascader-panel/src/config.d.ts +2 -2
  431. package/lib/components/cascader-panel/src/config.js +1 -1
  432. package/lib/components/cascader-panel/src/config.js.map +1 -1
  433. package/lib/components/cascader-panel/src/index.vue.d.ts +2 -2
  434. package/lib/components/cascader-panel/src/node.d.ts +1 -1
  435. package/lib/components/cascader-panel/src/node.js.map +1 -1
  436. package/lib/components/cascader-panel/src/node2.js +2 -4
  437. package/lib/components/cascader-panel/src/node2.js.map +1 -1
  438. package/lib/components/cascader-panel/src/types.d.ts +1 -1
  439. package/lib/components/cascader-panel/src/types.js.map +1 -1
  440. package/lib/components/collapse/index.js +2 -2
  441. package/lib/components/collapse/src/collapse.js +28 -25
  442. package/lib/components/collapse/src/collapse.js.map +1 -1
  443. package/lib/components/collapse/src/collapse2.js +25 -28
  444. package/lib/components/collapse/src/collapse2.js.map +1 -1
  445. package/lib/components/countdown/index.js +2 -2
  446. package/lib/components/countdown/src/countdown.js +79 -22
  447. package/lib/components/countdown/src/countdown.js.map +1 -1
  448. package/lib/components/countdown/src/countdown2.js +22 -79
  449. package/lib/components/countdown/src/countdown2.js.map +1 -1
  450. package/lib/components/date-picker-panel/src/composables/use-range-picker.d.ts +3 -3
  451. package/lib/components/date-picker-panel/src/composables/use-range-picker.js +6 -6
  452. package/lib/components/date-picker-panel/src/composables/use-range-picker.js.map +1 -1
  453. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.js +6 -5
  454. package/lib/components/date-picker-panel/src/date-picker-com/panel-date-range.js.map +1 -1
  455. package/lib/components/date-picker-panel/src/date-picker-com/panel-month-range.js +4 -4
  456. package/lib/components/date-picker-panel/src/date-picker-com/panel-month-range.js.map +1 -1
  457. package/lib/components/date-picker-panel/src/date-picker-com/panel-year-range.js +4 -4
  458. package/lib/components/date-picker-panel/src/date-picker-com/panel-year-range.js.map +1 -1
  459. package/lib/components/descriptions/index.js +2 -2
  460. package/lib/components/descriptions/src/description.js +26 -127
  461. package/lib/components/descriptions/src/description.js.map +1 -1
  462. package/lib/components/descriptions/src/description2.js +127 -26
  463. package/lib/components/descriptions/src/description2.js.map +1 -1
  464. package/lib/components/drawer/index.js +2 -2
  465. package/lib/components/drawer/src/drawer.js +28 -202
  466. package/lib/components/drawer/src/drawer.js.map +1 -1
  467. package/lib/components/drawer/src/drawer2.js +202 -28
  468. package/lib/components/drawer/src/drawer2.js.map +1 -1
  469. package/lib/components/dropdown/src/dropdown.js +1 -1
  470. package/lib/components/empty/index.js +2 -2
  471. package/lib/components/empty/src/empty.js +52 -11
  472. package/lib/components/empty/src/empty.js.map +1 -1
  473. package/lib/components/empty/src/empty2.js +11 -52
  474. package/lib/components/empty/src/empty2.js.map +1 -1
  475. package/lib/components/form/src/types.d.ts +1 -62
  476. package/lib/components/image/index.js +2 -2
  477. package/lib/components/image/src/image.js +226 -65
  478. package/lib/components/image/src/image.js.map +1 -1
  479. package/lib/components/image/src/image2.js +65 -226
  480. package/lib/components/image/src/image2.js.map +1 -1
  481. package/lib/components/index.js +16 -16
  482. package/lib/components/input-tag/style/css.d.ts +1 -0
  483. package/lib/components/input-tag/style/css.js +1 -0
  484. package/lib/components/input-tag/style/css.js.map +1 -1
  485. package/lib/components/input-tag/style/index.d.ts +2 -1
  486. package/lib/components/input-tag/style/index.js +1 -0
  487. package/lib/components/input-tag/style/index.js.map +1 -1
  488. package/lib/components/menu/index.js +2 -2
  489. package/lib/components/menu/src/menu-item.js +100 -16
  490. package/lib/components/menu/src/menu-item.js.map +1 -1
  491. package/lib/components/menu/src/menu-item2.js +16 -100
  492. package/lib/components/menu/src/menu-item2.js.map +1 -1
  493. package/lib/components/notification/index.js +1 -1
  494. package/lib/components/notification/src/notification.js +74 -139
  495. package/lib/components/notification/src/notification.js.map +1 -1
  496. package/lib/components/notification/src/notification2.js +139 -74
  497. package/lib/components/notification/src/notification2.js.map +1 -1
  498. package/lib/components/notification/src/notify.js +2 -2
  499. package/lib/components/page-header/index.js +2 -2
  500. package/lib/components/page-header/src/page-header.js +97 -17
  501. package/lib/components/page-header/src/page-header.js.map +1 -1
  502. package/lib/components/page-header/src/page-header2.js +17 -97
  503. package/lib/components/page-header/src/page-header2.js.map +1 -1
  504. package/lib/components/popover/src/popover.js +1 -1
  505. package/lib/components/progress/index.js +2 -2
  506. package/lib/components/progress/src/progress.js +207 -53
  507. package/lib/components/progress/src/progress.js.map +1 -1
  508. package/lib/components/progress/src/progress2.js +53 -207
  509. package/lib/components/progress/src/progress2.js.map +1 -1
  510. package/lib/components/scrollbar/src/bar.js +64 -10
  511. package/lib/components/scrollbar/src/bar.js.map +1 -1
  512. package/lib/components/scrollbar/src/bar2.js +10 -64
  513. package/lib/components/scrollbar/src/bar2.js.map +1 -1
  514. package/lib/components/scrollbar/src/scrollbar2.js +1 -1
  515. package/lib/components/splitter/index.js +2 -2
  516. package/lib/components/splitter/src/split-panel2.js +4 -0
  517. package/lib/components/splitter/src/split-panel2.js.map +1 -1
  518. package/lib/components/splitter/src/splitter.js +99 -9
  519. package/lib/components/splitter/src/splitter.js.map +1 -1
  520. package/lib/components/splitter/src/splitter2.js +9 -99
  521. package/lib/components/splitter/src/splitter2.js.map +1 -1
  522. package/lib/components/steps/index.js +2 -2
  523. package/lib/components/steps/src/item.js +193 -19
  524. package/lib/components/steps/src/item.js.map +1 -1
  525. package/lib/components/steps/src/item2.js +19 -193
  526. package/lib/components/steps/src/item2.js.map +1 -1
  527. package/lib/components/tabs/index.js +1 -1
  528. package/lib/components/tabs/src/tab-bar.js +87 -11
  529. package/lib/components/tabs/src/tab-bar.js.map +1 -1
  530. package/lib/components/tabs/src/tab-bar2.js +11 -87
  531. package/lib/components/tabs/src/tab-bar2.js.map +1 -1
  532. package/lib/components/tabs/src/tab-nav.js +1 -1
  533. package/lib/components/tooltip/index.js +1 -1
  534. package/lib/components/tooltip/src/tooltip.js +1 -1
  535. package/lib/components/tooltip/src/tooltip2.js +1 -1
  536. package/lib/components/tooltip/src/trigger.js +14 -72
  537. package/lib/components/tooltip/src/trigger.js.map +1 -1
  538. package/lib/components/tooltip/src/trigger2.js +72 -14
  539. package/lib/components/tooltip/src/trigger2.js.map +1 -1
  540. package/lib/components/tour/index.js +2 -2
  541. package/lib/components/tour/src/mask.js +74 -18
  542. package/lib/components/tour/src/mask.js.map +1 -1
  543. package/lib/components/tour/src/mask2.js +18 -74
  544. package/lib/components/tour/src/mask2.js.map +1 -1
  545. package/lib/components/tour/src/step.js +188 -44
  546. package/lib/components/tour/src/step.js.map +1 -1
  547. package/lib/components/tour/src/step2.js +44 -188
  548. package/lib/components/tour/src/step2.js.map +1 -1
  549. package/lib/components/tour/src/tour2.js +1 -1
  550. package/lib/components/transfer/index.js +2 -2
  551. package/lib/components/transfer/src/composables/use-checked-change.js +1 -1
  552. package/lib/components/transfer/src/transfer-panel.js +1 -1
  553. package/lib/components/transfer/src/transfer.js +72 -164
  554. package/lib/components/transfer/src/transfer.js.map +1 -1
  555. package/lib/components/transfer/src/transfer2.js +164 -72
  556. package/lib/components/transfer/src/transfer2.js.map +1 -1
  557. package/lib/hooks/use-locale/index.d.ts +5 -2
  558. package/lib/hooks/use-locale/index.js.map +1 -1
  559. package/lib/index.d.ts +445 -265
  560. package/lib/index.js +16 -16
  561. package/lib/utils/typescript.d.ts +61 -0
  562. package/lib/utils/typescript.js.map +1 -1
  563. package/lib/version.d.ts +1 -1
  564. package/lib/version.js +1 -1
  565. package/lib/version.js.map +1 -1
  566. package/package.json +2 -2
  567. package/web-types.json +1 -1
@@ -195,7 +195,7 @@ declare const __VLS_component: import("vue").DefineComponent<{
195
195
  checkOnClickNode: BooleanConstructor;
196
196
  showPrefix: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, boolean, boolean>;
197
197
  modelValue: {
198
- readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | import("../../cascader-panel/src/node").CascaderNodePathValue | (import("../../cascader-panel/src/node").CascaderNodeValue | import("../../cascader-panel/src/node").CascaderNodePathValue)[]) | (() => import("../../cascader-panel/src/node").CascaderValue | null) | ((new (...args: any[]) => string | number | import("../../cascader-panel/src/node").CascaderNodePathValue | (import("../../cascader-panel/src/node").CascaderNodeValue | import("../../cascader-panel/src/node").CascaderNodePathValue)[]) | (() => import("../../cascader-panel/src/node").CascaderValue | null))[], unknown, unknown>>;
198
+ readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | Record<string, any> | import("../../cascader-panel/src/node").CascaderNodePathValue | (import("../../cascader-panel/src/node").CascaderNodeValue | import("../../cascader-panel/src/node").CascaderNodePathValue)[]) | (() => import("../../cascader-panel/src/node").CascaderValue | null) | ((new (...args: any[]) => string | number | Record<string, any> | import("../../cascader-panel/src/node").CascaderNodePathValue | (import("../../cascader-panel/src/node").CascaderNodeValue | import("../../cascader-panel/src/node").CascaderNodePathValue)[]) | (() => import("../../cascader-panel/src/node").CascaderValue | null))[], unknown, unknown>>;
199
199
  readonly required: false;
200
200
  readonly validator: ((val: unknown) => boolean) | undefined;
201
201
  __epPropKey: true;
@@ -413,7 +413,7 @@ declare const __VLS_component: import("vue").DefineComponent<{
413
413
  checkOnClickNode: BooleanConstructor;
414
414
  showPrefix: import("@element-plus/nightly/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, boolean, boolean>;
415
415
  modelValue: {
416
- readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | import("../../cascader-panel/src/node").CascaderNodePathValue | (import("../../cascader-panel/src/node").CascaderNodeValue | import("../../cascader-panel/src/node").CascaderNodePathValue)[]) | (() => import("../../cascader-panel/src/node").CascaderValue | null) | ((new (...args: any[]) => string | number | import("../../cascader-panel/src/node").CascaderNodePathValue | (import("../../cascader-panel/src/node").CascaderNodeValue | import("../../cascader-panel/src/node").CascaderNodePathValue)[]) | (() => import("../../cascader-panel/src/node").CascaderValue | null))[], unknown, unknown>>;
416
+ readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | Record<string, any> | import("../../cascader-panel/src/node").CascaderNodePathValue | (import("../../cascader-panel/src/node").CascaderNodeValue | import("../../cascader-panel/src/node").CascaderNodePathValue)[]) | (() => import("../../cascader-panel/src/node").CascaderValue | null) | ((new (...args: any[]) => string | number | Record<string, any> | import("../../cascader-panel/src/node").CascaderNodePathValue | (import("../../cascader-panel/src/node").CascaderNodeValue | import("../../cascader-panel/src/node").CascaderNodePathValue)[]) | (() => import("../../cascader-panel/src/node").CascaderValue | null))[], unknown, unknown>>;
417
417
  readonly required: false;
418
418
  readonly validator: ((val: unknown) => boolean) | undefined;
419
419
  __epPropKey: true;
@@ -2,7 +2,7 @@ import type { PropType } from 'vue';
2
2
  import type { CascaderConfig, CascaderNodePathValue, CascaderOption, CascaderProps, CascaderValue, RenderLabel } from './node';
3
3
  export declare const CommonProps: {
4
4
  readonly modelValue: {
5
- readonly type: PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | CascaderNodePathValue | (import("./node").CascaderNodeValue | CascaderNodePathValue)[]) | (() => CascaderValue | null) | ((new (...args: any[]) => string | number | CascaderNodePathValue | (import("./node").CascaderNodeValue | CascaderNodePathValue)[]) | (() => CascaderValue | null))[], unknown, unknown>>;
5
+ readonly type: PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | Record<string, any> | CascaderNodePathValue | (import("./node").CascaderNodeValue | CascaderNodePathValue)[]) | (() => CascaderValue | null) | ((new (...args: any[]) => string | number | Record<string, any> | CascaderNodePathValue | (import("./node").CascaderNodeValue | CascaderNodePathValue)[]) | (() => CascaderValue | null))[], unknown, unknown>>;
6
6
  readonly required: false;
7
7
  readonly validator: ((val: unknown) => boolean) | undefined;
8
8
  __epPropKey: true;
@@ -20,7 +20,7 @@ export declare const cascaderPanelProps: {
20
20
  __epPropKey: true;
21
21
  };
22
22
  modelValue: {
23
- readonly type: PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | CascaderNodePathValue | (import("./node").CascaderNodeValue | CascaderNodePathValue)[]) | (() => CascaderValue | null) | ((new (...args: any[]) => string | number | CascaderNodePathValue | (import("./node").CascaderNodeValue | CascaderNodePathValue)[]) | (() => CascaderValue | null))[], unknown, unknown>>;
23
+ readonly type: PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | Record<string, any> | CascaderNodePathValue | (import("./node").CascaderNodeValue | CascaderNodePathValue)[]) | (() => CascaderValue | null) | ((new (...args: any[]) => string | number | Record<string, any> | CascaderNodePathValue | (import("./node").CascaderNodeValue | CascaderNodePathValue)[]) | (() => CascaderValue | null))[], unknown, unknown>>;
24
24
  readonly required: false;
25
25
  readonly validator: ((val: unknown) => boolean) | undefined;
26
26
  __epPropKey: true;
@@ -9,7 +9,7 @@ var event = require('../../../constants/event.js');
9
9
 
10
10
  const CommonProps = runtime.buildProps({
11
11
  modelValue: {
12
- type: runtime.definePropType([Number, String, Array])
12
+ type: runtime.definePropType([Number, String, Array, Object])
13
13
  },
14
14
  options: {
15
15
  type: runtime.definePropType(Array),
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sources":["../../../../../../packages/components/cascader-panel/src/config.ts"],"sourcesContent":["import { computed } from 'vue'\nimport { NOOP, buildProps, definePropType } from '@element-plus/utils'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\n\nimport type { PropType } from 'vue'\nimport type {\n CascaderConfig,\n CascaderNodePathValue,\n CascaderOption,\n CascaderProps,\n CascaderValue,\n RenderLabel,\n} from './node'\n\nexport const CommonProps = buildProps({\n /**\n * @description specify which key of node object is used as the node's value\n */\n modelValue: {\n type: definePropType<CascaderValue | null>([Number, String, Array]),\n },\n /**\n * @description data of the options, the key of `value` and `label` can be customize by `CascaderProps`.\n */\n options: {\n type: definePropType<CascaderOption[]>(Array),\n default: () => [] as CascaderOption[],\n },\n /**\n * @description configuration options, see the following `CascaderProps` table.\n */\n props: {\n type: definePropType<CascaderProps>(Object),\n default: () => ({} as CascaderProps),\n },\n} as const)\n\nexport const DefaultProps: CascaderConfig = {\n /**\n * @description trigger mode of expanding options\n */\n expandTrigger: 'click',\n /**\n * @description whether multiple selection is enabled\n */\n multiple: false,\n /**\n * @description whether checked state of a node not affects its parent and child nodes\n */\n checkStrictly: false, // whether all nodes can be selected\n /**\n * @description when checked nodes change, whether to emit an array of node's path, if false, only emit the value of node.\n */\n emitPath: true, // wether to emit an array of all levels value in which node is located\n /**\n * @description whether to dynamic load child nodes, use with `lazyload` attribute\n */\n lazy: false,\n /**\n * @description method for loading child nodes data, only works when `lazy` is true\n */\n lazyLoad: NOOP,\n /**\n * @description specify which key of node object is used as the node's value\n */\n value: 'value',\n /**\n * @description specify which key of node object is used as the node's label\n */\n label: 'label',\n /**\n * @description specify which key of node object is used as the node's children\n */\n children: 'children',\n /**\n * @description specify which key of node object is used as the node's leaf\n */\n leaf: 'leaf',\n /**\n * @description specify which key of node object is used as the node's disabled\n */\n disabled: 'disabled',\n /**\n * @description hover threshold of expanding options\n */\n hoverThreshold: 500,\n /**\n * @description whether to check or uncheck node when clicking on the node\n */\n checkOnClickNode: false,\n /**\n * @description whether to check or uncheck node when clicking on leaf node (last children).\n */\n checkOnClickLeaf: true,\n /**\n * @description whether to show the radio or checkbox prefix\n */\n showPrefix: true,\n}\n\nexport const cascaderPanelProps = buildProps({\n ...CommonProps,\n border: {\n type: Boolean,\n default: true,\n },\n renderLabel: {\n type: Function as PropType<RenderLabel>,\n },\n})\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst emitChangeFn = (value: CascaderValue | undefined | null) => true\n\nexport const cascaderPanelEmits = {\n [UPDATE_MODEL_EVENT]: emitChangeFn,\n [CHANGE_EVENT]: emitChangeFn,\n close: () => true,\n 'expand-change': (value: CascaderNodePathValue) => value,\n}\n\nexport const useCascaderConfig = (props: { props: CascaderProps }) => {\n return computed(() => ({\n ...DefaultProps,\n ...props.props,\n }))\n}\n"],"names":["buildProps","definePropType","NOOP","UPDATE_MODEL_EVENT","CHANGE_EVENT","computed"],"mappings":";;;;;;;;;AAGY,MAAC,WAAW,GAAGA,kBAAU,CAAC;AACtC,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAEC,sBAAc,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AACjD,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAEA,sBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,EAAE;AACrB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAEA,sBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;AACvB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,YAAY,GAAG;AAC5B,EAAE,aAAa,EAAE,OAAO;AACxB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,aAAa,EAAE,KAAK;AACtB,EAAE,QAAQ,EAAE,IAAI;AAChB,EAAE,IAAI,EAAE,KAAK;AACb,EAAE,QAAQ,EAAEC,WAAI;AAChB,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,QAAQ,EAAE,UAAU;AACtB,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,QAAQ,EAAE,UAAU;AACtB,EAAE,cAAc,EAAE,GAAG;AACrB,EAAE,gBAAgB,EAAE,KAAK;AACzB,EAAE,gBAAgB,EAAE,IAAI;AACxB,EAAE,UAAU,EAAE,IAAI;AAClB,EAAE;AACU,MAAC,kBAAkB,GAAGF,kBAAU,CAAC;AAC7C,EAAE,GAAG,WAAW;AAChB,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,QAAQ;AAClB,GAAG;AACH,CAAC,EAAE;AACH,MAAM,YAAY,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC;AACzB,MAAC,kBAAkB,GAAG;AAClC,EAAE,CAACG,wBAAkB,GAAG,YAAY;AACpC,EAAE,CAACC,kBAAY,GAAG,YAAY;AAC9B,EAAE,KAAK,EAAE,MAAM,IAAI;AACnB,EAAE,eAAe,EAAE,CAAC,KAAK,KAAK,KAAK;AACnC,EAAE;AACU,MAAC,iBAAiB,GAAG,CAAC,KAAK,KAAK;AAC5C,EAAE,OAAOC,YAAQ,CAAC,OAAO;AACzB,IAAI,GAAG,YAAY;AACnB,IAAI,GAAG,KAAK,CAAC,KAAK;AAClB,GAAG,CAAC,CAAC,CAAC;AACN;;;;;;;;"}
1
+ {"version":3,"file":"config.js","sources":["../../../../../../packages/components/cascader-panel/src/config.ts"],"sourcesContent":["import { computed } from 'vue'\nimport { NOOP, buildProps, definePropType } from '@element-plus/utils'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\n\nimport type { PropType } from 'vue'\nimport type {\n CascaderConfig,\n CascaderNodePathValue,\n CascaderOption,\n CascaderProps,\n CascaderValue,\n RenderLabel,\n} from './node'\n\nexport const CommonProps = buildProps({\n /**\n * @description specify which key of node object is used as the node's value\n */\n modelValue: {\n type: definePropType<CascaderValue | null>([Number, String, Array, Object]),\n },\n /**\n * @description data of the options, the key of `value` and `label` can be customize by `CascaderProps`.\n */\n options: {\n type: definePropType<CascaderOption[]>(Array),\n default: () => [] as CascaderOption[],\n },\n /**\n * @description configuration options, see the following `CascaderProps` table.\n */\n props: {\n type: definePropType<CascaderProps>(Object),\n default: () => ({} as CascaderProps),\n },\n} as const)\n\nexport const DefaultProps: CascaderConfig = {\n /**\n * @description trigger mode of expanding options\n */\n expandTrigger: 'click',\n /**\n * @description whether multiple selection is enabled\n */\n multiple: false,\n /**\n * @description whether checked state of a node not affects its parent and child nodes\n */\n checkStrictly: false, // whether all nodes can be selected\n /**\n * @description when checked nodes change, whether to emit an array of node's path, if false, only emit the value of node.\n */\n emitPath: true, // wether to emit an array of all levels value in which node is located\n /**\n * @description whether to dynamic load child nodes, use with `lazyload` attribute\n */\n lazy: false,\n /**\n * @description method for loading child nodes data, only works when `lazy` is true\n */\n lazyLoad: NOOP,\n /**\n * @description specify which key of node object is used as the node's value\n */\n value: 'value',\n /**\n * @description specify which key of node object is used as the node's label\n */\n label: 'label',\n /**\n * @description specify which key of node object is used as the node's children\n */\n children: 'children',\n /**\n * @description specify which key of node object is used as the node's leaf\n */\n leaf: 'leaf',\n /**\n * @description specify which key of node object is used as the node's disabled\n */\n disabled: 'disabled',\n /**\n * @description hover threshold of expanding options\n */\n hoverThreshold: 500,\n /**\n * @description whether to check or uncheck node when clicking on the node\n */\n checkOnClickNode: false,\n /**\n * @description whether to check or uncheck node when clicking on leaf node (last children).\n */\n checkOnClickLeaf: true,\n /**\n * @description whether to show the radio or checkbox prefix\n */\n showPrefix: true,\n}\n\nexport const cascaderPanelProps = buildProps({\n ...CommonProps,\n border: {\n type: Boolean,\n default: true,\n },\n renderLabel: {\n type: Function as PropType<RenderLabel>,\n },\n})\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst emitChangeFn = (value: CascaderValue | undefined | null) => true\n\nexport const cascaderPanelEmits = {\n [UPDATE_MODEL_EVENT]: emitChangeFn,\n [CHANGE_EVENT]: emitChangeFn,\n close: () => true,\n 'expand-change': (value: CascaderNodePathValue) => value,\n}\n\nexport const useCascaderConfig = (props: { props: CascaderProps }) => {\n return computed(() => ({\n ...DefaultProps,\n ...props.props,\n }))\n}\n"],"names":["buildProps","definePropType","NOOP","UPDATE_MODEL_EVENT","CHANGE_EVENT","computed"],"mappings":";;;;;;;;;AAGY,MAAC,WAAW,GAAGA,kBAAU,CAAC;AACtC,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAEC,sBAAc,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACzD,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAEA,sBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,EAAE;AACrB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAEA,sBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;AACvB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,YAAY,GAAG;AAC5B,EAAE,aAAa,EAAE,OAAO;AACxB,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,aAAa,EAAE,KAAK;AACtB,EAAE,QAAQ,EAAE,IAAI;AAChB,EAAE,IAAI,EAAE,KAAK;AACb,EAAE,QAAQ,EAAEC,WAAI;AAChB,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,QAAQ,EAAE,UAAU;AACtB,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,QAAQ,EAAE,UAAU;AACtB,EAAE,cAAc,EAAE,GAAG;AACrB,EAAE,gBAAgB,EAAE,KAAK;AACzB,EAAE,gBAAgB,EAAE,IAAI;AACxB,EAAE,UAAU,EAAE,IAAI;AAClB,EAAE;AACU,MAAC,kBAAkB,GAAGF,kBAAU,CAAC;AAC7C,EAAE,GAAG,WAAW;AAChB,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,QAAQ;AAClB,GAAG;AACH,CAAC,EAAE;AACH,MAAM,YAAY,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC;AACzB,MAAC,kBAAkB,GAAG;AAClC,EAAE,CAACG,wBAAkB,GAAG,YAAY;AACpC,EAAE,CAACC,kBAAY,GAAG,YAAY;AAC9B,EAAE,KAAK,EAAE,MAAM,IAAI;AACnB,EAAE,eAAe,EAAE,CAAC,KAAK,KAAK,KAAK;AACnC,EAAE;AACU,MAAC,iBAAiB,GAAG,CAAC,KAAK,KAAK;AAC5C,EAAE,OAAOC,YAAQ,CAAC,OAAO;AACzB,IAAI,GAAG,YAAY;AACnB,IAAI,GAAG,KAAK,CAAC,KAAK;AAClB,GAAG,CAAC,CAAC,CAAC;AACN;;;;;;;;"}
@@ -13,7 +13,7 @@ declare const __VLS_component: import("vue").DefineComponent<{
13
13
  __epPropKey: true;
14
14
  };
15
15
  modelValue: {
16
- readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | import("./node").CascaderNodePathValue | (CascaderNodeValue | import("./node").CascaderNodePathValue)[]) | (() => CascaderValue | null) | ((new (...args: any[]) => string | number | import("./node").CascaderNodePathValue | (CascaderNodeValue | import("./node").CascaderNodePathValue)[]) | (() => CascaderValue | null))[], unknown, unknown>>;
16
+ readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | Record<string, any> | import("./node").CascaderNodePathValue | (CascaderNodeValue | import("./node").CascaderNodePathValue)[]) | (() => CascaderValue | null) | ((new (...args: any[]) => string | number | Record<string, any> | import("./node").CascaderNodePathValue | (CascaderNodeValue | import("./node").CascaderNodePathValue)[]) | (() => CascaderValue | null))[], unknown, unknown>>;
17
17
  readonly required: false;
18
18
  readonly validator: ((val: unknown) => boolean) | undefined;
19
19
  __epPropKey: true;
@@ -171,7 +171,7 @@ declare const __VLS_component: import("vue").DefineComponent<{
171
171
  __epPropKey: true;
172
172
  };
173
173
  modelValue: {
174
- readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | import("./node").CascaderNodePathValue | (CascaderNodeValue | import("./node").CascaderNodePathValue)[]) | (() => CascaderValue | null) | ((new (...args: any[]) => string | number | import("./node").CascaderNodePathValue | (CascaderNodeValue | import("./node").CascaderNodePathValue)[]) | (() => CascaderValue | null))[], unknown, unknown>>;
174
+ readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => string | number | Record<string, any> | import("./node").CascaderNodePathValue | (CascaderNodeValue | import("./node").CascaderNodePathValue)[]) | (() => CascaderValue | null) | ((new (...args: any[]) => string | number | Record<string, any> | import("./node").CascaderNodePathValue | (CascaderNodeValue | import("./node").CascaderNodePathValue)[]) | (() => CascaderValue | null))[], unknown, unknown>>;
175
175
  readonly required: false;
176
176
  readonly validator: ((val: unknown) => boolean) | undefined;
177
177
  __epPropKey: true;
@@ -1,5 +1,5 @@
1
1
  import type { VNode } from 'vue';
2
- export type CascaderNodeValue = string | number;
2
+ export type CascaderNodeValue = string | number | Record<string, any>;
3
3
  export type CascaderNodePathValue = CascaderNodeValue[];
4
4
  export type CascaderValue = CascaderNodeValue | CascaderNodePathValue | (CascaderNodeValue | CascaderNodePathValue)[];
5
5
  export type CascaderConfig = Required<CascaderProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sources":["../../../../../../packages/components/cascader-panel/src/node.ts"],"sourcesContent":["import { isArray, isEmpty, isFunction, isUndefined } from '@element-plus/utils'\n\nimport type { VNode } from 'vue'\n\nexport type CascaderNodeValue = string | number\nexport type CascaderNodePathValue = CascaderNodeValue[]\nexport type CascaderValue =\n | CascaderNodeValue\n | CascaderNodePathValue\n | (CascaderNodeValue | CascaderNodePathValue)[]\nexport type CascaderConfig = Required<CascaderProps>\nexport type ExpandTrigger = 'click' | 'hover'\nexport type isDisabled = (data: CascaderOption, node: Node) => boolean\nexport type isLeaf = (data: CascaderOption, node: Node) => boolean\nexport type Resolve = (dataList?: CascaderOption[]) => void\nexport type LazyLoad = (node: Node, resolve: Resolve) => void\nexport interface RenderLabelProps {\n node: Node\n data: CascaderOption\n}\nexport type RenderLabel = (props: RenderLabelProps) => VNode | VNode[]\nexport interface CascaderOption extends Record<string, unknown> {\n label?: string\n value?: CascaderNodeValue\n children?: CascaderOption[]\n disabled?: boolean\n leaf?: boolean\n}\n\nexport interface CascaderProps {\n expandTrigger?: ExpandTrigger\n multiple?: boolean\n checkStrictly?: boolean\n emitPath?: boolean\n lazy?: boolean\n lazyLoad?: LazyLoad\n value?: string\n label?: string\n children?: string\n disabled?: string | isDisabled\n leaf?: string | isLeaf\n hoverThreshold?: number\n checkOnClickNode?: boolean\n checkOnClickLeaf?: boolean\n showPrefix?: boolean\n}\n\nexport type Nullable<T> = null | T\n\ntype ChildrenData = CascaderOption[] | undefined\n\nlet uid = 0\n\nconst calculatePathNodes = (node: Node) => {\n const nodes = [node]\n let { parent } = node\n\n while (parent) {\n nodes.unshift(parent)\n parent = parent.parent\n }\n\n return nodes\n}\n\nclass Node {\n readonly uid: number = uid++\n readonly level: number\n readonly value: CascaderNodeValue\n readonly label: string\n readonly pathNodes: Node[]\n readonly pathValues: CascaderNodePathValue\n readonly pathLabels: string[]\n\n childrenData: ChildrenData\n children: Node[]\n text: string\n loaded: boolean\n /**\n * Is it checked\n *\n * @default false\n */\n checked = false\n /**\n * Used to indicate the intermediate state of unchecked and fully checked child nodes\n *\n * @default false\n */\n indeterminate = false\n /**\n * Loading Status\n *\n * @default false\n */\n loading = false\n\n constructor(\n readonly data: CascaderOption,\n readonly config: CascaderConfig,\n readonly parent?: Node,\n readonly root = false\n ) {\n const { value: valueKey, label: labelKey, children: childrenKey } = config\n\n const childrenData = data[childrenKey] as ChildrenData\n const pathNodes = calculatePathNodes(this)\n\n this.level = root ? 0 : parent ? parent.level + 1 : 1\n this.value = data[valueKey] as CascaderNodeValue\n this.label = data[labelKey] as string\n this.pathNodes = pathNodes\n this.pathValues = pathNodes.map((node) => node.value)\n this.pathLabels = pathNodes.map((node) => node.label)\n this.childrenData = childrenData\n this.children = (childrenData || []).map(\n (child) => new Node(child, config, this)\n )\n this.loaded = !config.lazy || this.isLeaf || !isEmpty(childrenData)\n this.text = ''\n }\n\n get isDisabled(): boolean {\n const { data, parent, config } = this\n const { disabled, checkStrictly } = config\n const isDisabled = isFunction(disabled)\n ? disabled(data, this)\n : !!data[disabled]\n return isDisabled || (!checkStrictly && !!parent?.isDisabled)\n }\n\n get isLeaf(): boolean {\n const { data, config, childrenData, loaded } = this\n const { lazy, leaf } = config\n const isLeaf = isFunction(leaf) ? leaf(data, this) : data[leaf]\n\n return isUndefined(isLeaf)\n ? lazy && !loaded\n ? false\n : !(isArray(childrenData) && childrenData.length)\n : !!isLeaf\n }\n\n get valueByOption() {\n return this.config.emitPath ? this.pathValues : this.value\n }\n\n appendChild(childData: CascaderOption) {\n const { childrenData, children } = this\n const node = new Node(childData, this.config, this)\n\n if (isArray(childrenData)) {\n childrenData.push(childData)\n } else {\n this.childrenData = [childData]\n }\n\n children.push(node)\n\n return node\n }\n\n calcText(allLevels: boolean, separator: string) {\n const text = allLevels ? this.pathLabels.join(separator) : this.label\n this.text = text\n return text\n }\n\n broadcast(checked: boolean) {\n this.children.forEach((child) => {\n if (child) {\n // bottom up\n child.broadcast(checked)\n child.onParentCheck?.(checked)\n }\n })\n }\n\n emit() {\n const { parent } = this\n if (parent) {\n parent.onChildCheck?.()\n parent.emit()\n }\n }\n\n onParentCheck(checked: boolean) {\n if (!this.isDisabled) {\n this.setCheckState(checked)\n }\n }\n\n onChildCheck() {\n const { children } = this\n const validChildren = children.filter((child) => !child.isDisabled)\n const checked = validChildren.length\n ? validChildren.every((child) => child.checked)\n : false\n\n this.setCheckState(checked)\n }\n\n setCheckState(checked: boolean) {\n const totalNum = this.children.length\n const checkedNum = this.children.reduce((c, p) => {\n const num = p.checked ? 1 : p.indeterminate ? 0.5 : 0\n return c + num\n }, 0)\n\n this.checked =\n this.loaded &&\n this.children\n .filter((child) => !child.isDisabled)\n .every((child) => child.loaded && child.checked) &&\n checked\n this.indeterminate =\n this.loaded && checkedNum !== totalNum && checkedNum > 0\n }\n\n doCheck(checked: boolean) {\n if (this.checked === checked) return\n\n const { checkStrictly, multiple } = this.config\n\n if (checkStrictly || !multiple) {\n this.checked = checked\n } else {\n // bottom up to unify the calculation of the indeterminate state\n this.broadcast(checked)\n this.setCheckState(checked)\n this.emit()\n }\n }\n}\n\nexport default Node\n"],"names":["isEmpty","isFunction","isUndefined","isArray"],"mappings":";;;;;;;AACA,IAAI,GAAG,GAAG,CAAC,CAAC;AACZ,MAAM,kBAAkB,GAAG,CAAC,IAAI,KAAK;AACrC,EAAE,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC;AACvB,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;AACxB,EAAE,OAAO,MAAM,EAAE;AACjB,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AAC1B,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AAC3B,GAAG;AACH,EAAE,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AACF,MAAM,IAAI,CAAC;AACX,EAAE,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,GAAG,KAAK,EAAE;AAClD,IAAI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;AACrB,IAAI,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;AACzB,IAAI,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;AACzB,IAAI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;AACrB,IAAI,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC;AACrB,IAAI,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;AACzB,IAAI,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;AAC/B,IAAI,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;AACzB,IAAI,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;AAC/E,IAAI,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;AAC3C,IAAI,MAAM,SAAS,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;AAC/C,IAAI,IAAI,CAAC,KAAK,GAAG,IAAI,GAAG,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;AAC1D,IAAI,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;AAChC,IAAI,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;AAChC,IAAI,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;AAC/B,IAAI,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC;AAC1D,IAAI,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC;AAC1D,IAAI,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;AACrC,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC,YAAY,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;AACvF,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,CAACA,aAAO,CAAC,YAAY,CAAC,CAAC;AACxE,IAAI,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;AACnB,GAAG;AACH,EAAE,IAAI,UAAU,GAAG;AACnB,IAAI,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;AAC1C,IAAI,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;AAC/C,IAAI,MAAM,UAAU,GAAGC,iBAAU,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACtF,IAAI,OAAO,UAAU,IAAI,CAAC,aAAa,IAAI,CAAC,EAAE,MAAM,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AAC3F,GAAG;AACH,EAAE,IAAI,MAAM,GAAG;AACf,IAAI,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;AACxD,IAAI,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;AAClC,IAAI,MAAM,MAAM,GAAGA,iBAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;AACpE,IAAI,OAAOC,iBAAW,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,GAAG,KAAK,GAAG,EAAEC,cAAO,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;AACtH,GAAG;AACH,EAAE,IAAI,aAAa,GAAG;AACtB,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;AAC/D,GAAG;AACH,EAAE,WAAW,CAAC,SAAS,EAAE;AACzB,IAAI,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;AAC5C,IAAI,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AACxD,IAAI,IAAIA,cAAO,CAAC,YAAY,CAAC,EAAE;AAC/B,MAAM,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AACnC,KAAK,MAAM;AACX,MAAM,IAAI,CAAC,YAAY,GAAG,CAAC,SAAS,CAAC,CAAC;AACtC,KAAK;AACL,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACxB,IAAI,OAAO,IAAI,CAAC;AAChB,GAAG;AACH,EAAE,QAAQ,CAAC,SAAS,EAAE,SAAS,EAAE;AACjC,IAAI,MAAM,IAAI,GAAG,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;AAC1E,IAAI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;AACrB,IAAI,OAAO,IAAI,CAAC;AAChB,GAAG;AACH,EAAE,SAAS,CAAC,OAAO,EAAE;AACrB,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK;AACrC,MAAM,IAAI,EAAE,CAAC;AACb,MAAM,IAAI,KAAK,EAAE;AACjB,QAAQ,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AACjC,QAAQ,CAAC,EAAE,GAAG,KAAK,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAC9E,OAAO;AACP,KAAK,CAAC,CAAC;AACP,GAAG;AACH,EAAE,IAAI,GAAG;AACT,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;AAC5B,IAAI,IAAI,MAAM,EAAE;AAChB,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,YAAY,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACpE,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;AACpB,KAAK;AACL,GAAG;AACH,EAAE,aAAa,CAAC,OAAO,EAAE;AACzB,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AAC1B,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AAClC,KAAK;AACL,GAAG;AACH,EAAE,YAAY,GAAG;AACjB,IAAI,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;AAC9B,IAAI,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;AACxE,IAAI,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC;AACjG,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AAChC,GAAG;AACH,EAAE,aAAa,CAAC,OAAO,EAAE;AACzB,IAAI,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;AAC1C,IAAI,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK;AACtD,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,aAAa,GAAG,GAAG,GAAG,CAAC,CAAC;AAC5D,MAAM,OAAO,CAAC,GAAG,GAAG,CAAC;AACrB,KAAK,EAAE,CAAC,CAAC,CAAC;AACV,IAAI,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC;AAChJ,IAAI,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,IAAI,UAAU,KAAK,QAAQ,IAAI,UAAU,GAAG,CAAC,CAAC;AAClF,GAAG;AACH,EAAE,OAAO,CAAC,OAAO,EAAE;AACnB,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO;AAChC,MAAM,OAAO;AACb,IAAI,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;AACpD,IAAI,IAAI,aAAa,IAAI,CAAC,QAAQ,EAAE;AACpC,MAAM,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;AAC7B,KAAK,MAAM;AACX,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AAC9B,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AAClC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;AAClB,KAAK;AACL,GAAG;AACH;;;;"}
1
+ {"version":3,"file":"node.js","sources":["../../../../../../packages/components/cascader-panel/src/node.ts"],"sourcesContent":["import { isArray, isEmpty, isFunction, isUndefined } from '@element-plus/utils'\n\nimport type { VNode } from 'vue'\n\nexport type CascaderNodeValue = string | number | Record<string, any>\nexport type CascaderNodePathValue = CascaderNodeValue[]\nexport type CascaderValue =\n | CascaderNodeValue\n | CascaderNodePathValue\n | (CascaderNodeValue | CascaderNodePathValue)[]\nexport type CascaderConfig = Required<CascaderProps>\nexport type ExpandTrigger = 'click' | 'hover'\nexport type isDisabled = (data: CascaderOption, node: Node) => boolean\nexport type isLeaf = (data: CascaderOption, node: Node) => boolean\nexport type Resolve = (dataList?: CascaderOption[]) => void\nexport type LazyLoad = (node: Node, resolve: Resolve) => void\nexport interface RenderLabelProps {\n node: Node\n data: CascaderOption\n}\nexport type RenderLabel = (props: RenderLabelProps) => VNode | VNode[]\nexport interface CascaderOption extends Record<string, unknown> {\n label?: string\n value?: CascaderNodeValue\n children?: CascaderOption[]\n disabled?: boolean\n leaf?: boolean\n}\n\nexport interface CascaderProps {\n expandTrigger?: ExpandTrigger\n multiple?: boolean\n checkStrictly?: boolean\n emitPath?: boolean\n lazy?: boolean\n lazyLoad?: LazyLoad\n value?: string\n label?: string\n children?: string\n disabled?: string | isDisabled\n leaf?: string | isLeaf\n hoverThreshold?: number\n checkOnClickNode?: boolean\n checkOnClickLeaf?: boolean\n showPrefix?: boolean\n}\n\nexport type Nullable<T> = null | T\n\ntype ChildrenData = CascaderOption[] | undefined\n\nlet uid = 0\n\nconst calculatePathNodes = (node: Node) => {\n const nodes = [node]\n let { parent } = node\n\n while (parent) {\n nodes.unshift(parent)\n parent = parent.parent\n }\n\n return nodes\n}\n\nclass Node {\n readonly uid: number = uid++\n readonly level: number\n readonly value: CascaderNodeValue\n readonly label: string\n readonly pathNodes: Node[]\n readonly pathValues: CascaderNodePathValue\n readonly pathLabels: string[]\n\n childrenData: ChildrenData\n children: Node[]\n text: string\n loaded: boolean\n /**\n * Is it checked\n *\n * @default false\n */\n checked = false\n /**\n * Used to indicate the intermediate state of unchecked and fully checked child nodes\n *\n * @default false\n */\n indeterminate = false\n /**\n * Loading Status\n *\n * @default false\n */\n loading = false\n\n constructor(\n readonly data: CascaderOption,\n readonly config: CascaderConfig,\n readonly parent?: Node,\n readonly root = false\n ) {\n const { value: valueKey, label: labelKey, children: childrenKey } = config\n\n const childrenData = data[childrenKey] as ChildrenData\n const pathNodes = calculatePathNodes(this)\n\n this.level = root ? 0 : parent ? parent.level + 1 : 1\n this.value = data[valueKey] as CascaderNodeValue\n this.label = data[labelKey] as string\n this.pathNodes = pathNodes\n this.pathValues = pathNodes.map((node) => node.value)\n this.pathLabels = pathNodes.map((node) => node.label)\n this.childrenData = childrenData\n this.children = (childrenData || []).map(\n (child) => new Node(child, config, this)\n )\n this.loaded = !config.lazy || this.isLeaf || !isEmpty(childrenData)\n this.text = ''\n }\n\n get isDisabled(): boolean {\n const { data, parent, config } = this\n const { disabled, checkStrictly } = config\n const isDisabled = isFunction(disabled)\n ? disabled(data, this)\n : !!data[disabled]\n return isDisabled || (!checkStrictly && !!parent?.isDisabled)\n }\n\n get isLeaf(): boolean {\n const { data, config, childrenData, loaded } = this\n const { lazy, leaf } = config\n const isLeaf = isFunction(leaf) ? leaf(data, this) : data[leaf]\n\n return isUndefined(isLeaf)\n ? lazy && !loaded\n ? false\n : !(isArray(childrenData) && childrenData.length)\n : !!isLeaf\n }\n\n get valueByOption() {\n return this.config.emitPath ? this.pathValues : this.value\n }\n\n appendChild(childData: CascaderOption) {\n const { childrenData, children } = this\n const node = new Node(childData, this.config, this)\n\n if (isArray(childrenData)) {\n childrenData.push(childData)\n } else {\n this.childrenData = [childData]\n }\n\n children.push(node)\n\n return node\n }\n\n calcText(allLevels: boolean, separator: string) {\n const text = allLevels ? this.pathLabels.join(separator) : this.label\n this.text = text\n return text\n }\n\n broadcast(checked: boolean) {\n this.children.forEach((child) => {\n if (child) {\n // bottom up\n child.broadcast(checked)\n child.onParentCheck?.(checked)\n }\n })\n }\n\n emit() {\n const { parent } = this\n if (parent) {\n parent.onChildCheck?.()\n parent.emit()\n }\n }\n\n onParentCheck(checked: boolean) {\n if (!this.isDisabled) {\n this.setCheckState(checked)\n }\n }\n\n onChildCheck() {\n const { children } = this\n const validChildren = children.filter((child) => !child.isDisabled)\n const checked = validChildren.length\n ? validChildren.every((child) => child.checked)\n : false\n\n this.setCheckState(checked)\n }\n\n setCheckState(checked: boolean) {\n const totalNum = this.children.length\n const checkedNum = this.children.reduce((c, p) => {\n const num = p.checked ? 1 : p.indeterminate ? 0.5 : 0\n return c + num\n }, 0)\n\n this.checked =\n this.loaded &&\n this.children\n .filter((child) => !child.isDisabled)\n .every((child) => child.loaded && child.checked) &&\n checked\n this.indeterminate =\n this.loaded && checkedNum !== totalNum && checkedNum > 0\n }\n\n doCheck(checked: boolean) {\n if (this.checked === checked) return\n\n const { checkStrictly, multiple } = this.config\n\n if (checkStrictly || !multiple) {\n this.checked = checked\n } else {\n // bottom up to unify the calculation of the indeterminate state\n this.broadcast(checked)\n this.setCheckState(checked)\n this.emit()\n }\n }\n}\n\nexport default Node\n"],"names":["isEmpty","isFunction","isUndefined","isArray"],"mappings":"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"}
@@ -77,13 +77,11 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
77
77
  node.loaded ? doExpand() : doLoad();
78
78
  };
79
79
  const handleClick = () => {
80
- if (isHoverMenu.value)
81
- return;
82
80
  if (isLeaf.value && !isDisabled.value && !checkStrictly.value && !multiple.value) {
83
81
  handleCheck(true);
84
- } else if ((panel.config.checkOnClickNode || isLeaf.value && panel.config.checkOnClickLeaf) && !isDisabled.value) {
82
+ } else if ((panel.config.checkOnClickNode && (multiple.value || checkStrictly.value) || isLeaf.value && panel.config.checkOnClickLeaf) && !isDisabled.value) {
85
83
  handleSelectCheck(!props.node.checked);
86
- } else {
84
+ } else if (!isHoverMenu.value) {
87
85
  handleExpand();
88
86
  }
89
87
  };
@@ -1 +1 @@
1
- {"version":3,"file":"node2.js","sources":["../../../../../../packages/components/cascader-panel/src/node.vue"],"sourcesContent":["<template>\n <li\n :id=\"`${menuId}-${node.uid}`\"\n role=\"menuitem\"\n :aria-haspopup=\"!isLeaf\"\n :aria-owns=\"isLeaf ? undefined : menuId\"\n :aria-expanded=\"inExpandingPath\"\n :tabindex=\"expandable ? -1 : undefined\"\n :class=\"[\n ns.b(),\n ns.is('selectable', checkStrictly),\n ns.is('active', node.checked),\n ns.is('disabled', !expandable),\n inExpandingPath && 'in-active-path',\n inCheckedPath && 'in-checked-path',\n ]\"\n @mouseenter=\"handleHoverExpand\"\n @focus=\"handleHoverExpand\"\n @click=\"handleClick\"\n >\n <!-- prefix -->\n <el-checkbox\n v-if=\"multiple && showPrefix\"\n :model-value=\"node.checked\"\n :indeterminate=\"node.indeterminate\"\n :disabled=\"isDisabled\"\n @click.stop\n @update:model-value=\"handleSelectCheck\"\n />\n <el-radio\n v-else-if=\"checkStrictly && showPrefix\"\n :model-value=\"checkedNodeId\"\n :label=\"node.uid\"\n :disabled=\"isDisabled\"\n @update:model-value=\"handleSelectCheck\"\n @click.stop\n >\n <!--\n Add an empty element to avoid render label,\n do not use empty fragment here for https://github.com/vuejs/vue-next/pull/2485\n -->\n <span />\n </el-radio>\n <el-icon v-else-if=\"isLeaf && node.checked\" :class=\"ns.e('prefix')\">\n <check />\n </el-icon>\n\n <!-- content -->\n <node-content :node=\"node\" />\n <!-- postfix -->\n <template v-if=\"!isLeaf\">\n <el-icon v-if=\"node.loading\" :class=\"[ns.is('loading'), ns.e('postfix')]\">\n <loading />\n </el-icon>\n <el-icon v-else :class=\"['arrow-right', ns.e('postfix')]\">\n <arrow-right />\n </el-icon>\n </template>\n </li>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject } from 'vue'\nimport ElCheckbox from '@element-plus/components/checkbox'\nimport ElRadio from '@element-plus/components/radio'\nimport ElIcon from '@element-plus/components/icon'\nimport { useNamespace } from '@element-plus/hooks'\nimport { ArrowRight, Check, Loading } from '@element-plus/icons-vue'\nimport NodeContent from './node-content'\nimport { CASCADER_PANEL_INJECTION_KEY } from './types'\n\nimport type { default as CascaderNode } from './node'\nimport type { PropType } from 'vue'\nimport type { CheckboxValueType } from '@element-plus/components/checkbox'\n\ndefineOptions({\n name: 'ElCascaderNode',\n})\n\nconst props = defineProps({\n node: {\n type: Object as PropType<CascaderNode>,\n required: true,\n },\n menuId: String,\n})\nconst emit = defineEmits(['expand'])\n\nconst panel = inject(CASCADER_PANEL_INJECTION_KEY)!\n\nconst ns = useNamespace('cascader-node')\nconst isHoverMenu = computed(() => panel.isHoverMenu)\nconst multiple = computed(() => panel.config.multiple)\nconst checkStrictly = computed(() => panel.config.checkStrictly)\nconst showPrefix = computed(() => panel.config.showPrefix)\nconst checkedNodeId = computed(() => panel.checkedNodes[0]?.uid)\nconst isDisabled = computed(() => props.node.isDisabled)\nconst isLeaf = computed(() => props.node.isLeaf)\nconst expandable = computed(\n () => (checkStrictly.value && !isLeaf.value) || !isDisabled.value\n)\nconst inExpandingPath = computed(() => isInPath(panel.expandingNode!))\n\n// only useful in check-strictly mode\nconst inCheckedPath = computed(\n () => checkStrictly.value && panel.checkedNodes.some(isInPath)\n)\n\nconst isInPath = (node: CascaderNode) => {\n const { level, uid } = props.node\n return node?.pathNodes[level - 1]?.uid === uid\n}\n\nconst doExpand = () => {\n if (inExpandingPath.value) return\n panel.expandNode(props.node)\n}\n\nconst doCheck = (checked: boolean) => {\n const { node } = props\n if (checked === node.checked) return\n panel.handleCheckChange(node, checked)\n}\n\nconst doLoad = () => {\n panel.lazyLoad(props.node, () => {\n if (!isLeaf.value) doExpand()\n })\n}\n\nconst handleHoverExpand = (e: Event) => {\n if (!isHoverMenu.value) return\n handleExpand()\n !isLeaf.value && emit('expand', e)\n}\n\nconst handleExpand = () => {\n const { node } = props\n // do not exclude leaf node because the menus expanded might have to reset\n if (!expandable.value || node.loading) return\n node.loaded ? doExpand() : doLoad()\n}\n\nconst handleClick = () => {\n if (isHoverMenu.value) return\n\n if (\n isLeaf.value &&\n !isDisabled.value &&\n !checkStrictly.value &&\n !multiple.value\n ) {\n handleCheck(true)\n } else if (\n (panel.config.checkOnClickNode ||\n (isLeaf.value && panel.config.checkOnClickLeaf)) &&\n !isDisabled.value\n ) {\n handleSelectCheck(!props.node.checked)\n } else {\n handleExpand()\n }\n}\n\nconst handleSelectCheck = (checked: CheckboxValueType | undefined) => {\n if (checkStrictly.value) {\n doCheck(checked as boolean)\n if (props.node.loaded) {\n doExpand()\n }\n } else {\n handleCheck(checked as boolean)\n }\n}\n\nconst handleCheck = (checked: boolean) => {\n if (!props.node.loaded) {\n doLoad()\n } else {\n doCheck(checked)\n !checkStrictly.value && doExpand()\n }\n}\n</script>\n"],"names":["inject","CASCADER_PANEL_INJECTION_KEY","useNamespace","computed"],"mappings":";;;;;;;;;;;;;;uCA2Ec,CAAA;AAAA,EACZ,IAAM,EAAA,gBAAA;AACR,CAAA,CAAA,CAAA;;;;;;;;;;;;;AAWA,IAAM,MAAA,KAAA,GAAQA,WAAOC,kCAA4B,CAAA,CAAA;AAEjD,IAAM,MAAA,EAAA,GAAKC,mBAAa,eAAe,CAAA,CAAA;AACvC,IAAA,MAAM,WAAc,GAAAC,YAAA,CAAS,MAAM,KAAA,CAAM,WAAW,CAAA,CAAA;AACpD,IAAA,MAAM,QAAW,GAAAA,YAAA,CAAS,MAAM,KAAA,CAAM,OAAO,QAAQ,CAAA,CAAA;AACrD,IAAA,MAAM,aAAgB,GAAAA,YAAA,CAAS,MAAM,KAAA,CAAM,OAAO,aAAa,CAAA,CAAA;AAC/D,IAAA,MAAM,UAAa,GAAAA,YAAA,CAAS,MAAM,KAAA,CAAM,OAAO,UAAU,CAAA,CAAA;AACzD,IAAA,MAAM,gBAAgBA,YAAS,CAAA,MAAM;AACrC,MAAA,IAAM,EAAa,CAAA;AACnB,MAAA,OAAe,CAAA,EAAA,GAAA,KAAA,CAAA,YAAe,CAAA,CAAA,CAAM,KAAK,IAAM,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,GAAA,CAAA;AAC/C,KAAA,CAAA,CAAA;AAAmB,IAAA,gBACI,GAAAA,YAAA,CAAA,MAAiB,KAAA,CAAA,IAAA,CAAA,UAAsB,CAAA,CAAA;AAAA,IAC9D,MAAA,MAAA,GAAAA,YAAA,CAAA,MAAA,KAAA,CAAA,IAAA,CAAA,MAAA,CAAA,CAAA;AACA,IAAA,MAAM,yBAA2B,CAAA,MAAA,aAAe,CAAA,KAAA,iBAAqB,IAAA,CAAA,UAAA,CAAA,KAAA,CAAA,CAAA;AAGrE,IAAA,MAAM,eAAgB,GAAAA,YAAA,CAAA,MAAA,QAAA,CAAA,KAAA,CAAA,aAAA,CAAA,CAAA,CAAA;AAAA,IAAA,mBACA,GAAAA,YAAA,CAAS,MAAM,aAAa,MAAa,IAAA,KAAA,CAAA,YAAA,CAAA,IAAA,CAAA,QAAA,CAAA,CAAA,CAAA;AAAA,IAC/D,MAAA,QAAA,GAAA,CAAA,IAAA,KAAA;AAEA,MAAM,IAAA,EAAA,CAAA;AACJ,MAAA,MAAM,EAAE,KAAA,EAAO,GAAI,EAAA,GAAI,KAAM,CAAA,IAAA,CAAA;AAC7B,MAAA,OAAO,CAAM,CAAA,EAAA,GAAA,IAAA,IAAA,IAAkB,GAAA,MAAI,GAAQ,IAAA,CAAA,SAAA,CAAA,KAAA,GAAA,CAAA,CAAA,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,GAAA,MAAA,GAAA,CAAA;AAAA,KAC7C,CAAA;AAEA,IAAA,MAAM,WAAW,MAAM;AACrB,MAAA,IAAI,gBAAgB,KAAO;AAC3B,QAAM,OAAA;AAAqB,MAC7B,KAAA,CAAA,UAAA,CAAA,KAAA,CAAA,IAAA,CAAA,CAAA;AAEA,KAAM,CAAA;AACJ,IAAM,MAAA,UAAW,CAAA,OAAA,KAAA;AACjB,MAAI,MAAA,EAAA,IAAA,EAAA,QAA0B,CAAA;AAC9B,MAAM,IAAA,OAAA,KAAA,IAAA,CAAA;AAA+B,QACvC,OAAA;AAEA,MAAA,uBAAqB,CAAA,IAAA,EAAA,OAAA,CAAA,CAAA;AACnB,KAAM,CAAA;AACJ,IAAI,MAAA,MAAQ,GAAA,MAAA;AAAgB,MAC9B,KAAC,CAAA,QAAA,CAAA,KAAA,CAAA,IAAA,EAAA,MAAA;AAAA,QACH,IAAA,CAAA,MAAA,CAAA,KAAA;AAEA,UAAM,QAAA,EAAA,CAAA;AACJ,OAAI,CAAA,CAAA;AACJ,KAAa,CAAA;AACb,IAAA,MAAQ,iBAAc,GAAA,CAAA,CAAA,KAAA;AAAW,MACnC,IAAA,CAAA,WAAA,CAAA,KAAA;AAEA,QAAA;AACE,MAAM,cAAW,CAAA;AAEjB,MAAA,CAAA,MAAK,CAAA,KAAA,IAAoB,IAAA,CAAA,QAAK,EAAS,CAAA,CAAA,CAAA;AACvC,KAAK,CAAA;AAA6B,IACpC,MAAA,YAAA,GAAA,MAAA;AAEA,MAAA,sBAA0B,CAAA;AACxB,MAAA,IAAI,YAAY,KAAO,IAAA,IAAA,CAAA,OAAA;AAEvB,QACE,OAAA;AAKA,MAAA,IAAA,CAAA,MAAA,GAAY,QAAI,EAAA,GAAA,MAAA,EAAA,CAAA;AAAA,KAClB,CAAA;AAKE,IAAkB,MAAA,WAAA,GAAA,MAAO;AAAY,MACvC,IAAO,WAAA,CAAA,KAAA;AACL,QAAa,OAAA;AAAA,MACf,IAAA,MAAA,CAAA,KAAA,IAAA,CAAA,UAAA,CAAA,KAAA,IAAA,CAAA,aAAA,CAAA,KAAA,IAAA,CAAA,QAAA,CAAA,KAAA,EAAA;AAAA,QACF,WAAA,CAAA,IAAA,CAAA,CAAA;AAEA,OAAM,MAAA,IAAA,CAAA,KAAA,CAAA,MAAoB,CAAC,gBAA2C,IAAA,MAAA,CAAA,KAAA,IAAA,KAAA,CAAA,MAAA,CAAA,gBAAA,KAAA,CAAA,UAAA,CAAA,KAAA,EAAA;AACpE,QAAA,iBAAyB,CAAA,CAAA,KAAA,CAAA,IAAA,CAAA,OAAA,CAAA,CAAA;AACvB,OAAA,MAAA;AACA,QAAI,eAAW;AACb,OAAS;AAAA,KACX,CAAA;AAAA,IAAA,MACK,iBAAA,GAAA,CAAA,OAAA,KAAA;AACL,MAAA,IAAA,aAA8B,CAAA,KAAA,EAAA;AAAA,QAChC,OAAA,CAAA,OAAA,CAAA,CAAA;AAAA,QACF,IAAA,KAAA,CAAA,IAAA,CAAA,MAAA,EAAA;AAEA,UAAM,QAAA,EAAA,CAAA;AACJ,SAAI;AACF,OAAO,MAAA;AAAA,QACF,WAAA,CAAA,OAAA,CAAA,CAAA;AACL,OAAA;AACA,KAAC,CAAA;AAAgC,IACnC,MAAA,WAAA,GAAA,CAAA,OAAA,KAAA;AAAA,MACF,IAAA,CAAA,KAAA,CAAA,IAAA,CAAA,MAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"node2.js","sources":["../../../../../../packages/components/cascader-panel/src/node.vue"],"sourcesContent":["<template>\n <li\n :id=\"`${menuId}-${node.uid}`\"\n role=\"menuitem\"\n :aria-haspopup=\"!isLeaf\"\n :aria-owns=\"isLeaf ? undefined : menuId\"\n :aria-expanded=\"inExpandingPath\"\n :tabindex=\"expandable ? -1 : undefined\"\n :class=\"[\n ns.b(),\n ns.is('selectable', checkStrictly),\n ns.is('active', node.checked),\n ns.is('disabled', !expandable),\n inExpandingPath && 'in-active-path',\n inCheckedPath && 'in-checked-path',\n ]\"\n @mouseenter=\"handleHoverExpand\"\n @focus=\"handleHoverExpand\"\n @click=\"handleClick\"\n >\n <!-- prefix -->\n <el-checkbox\n v-if=\"multiple && showPrefix\"\n :model-value=\"node.checked\"\n :indeterminate=\"node.indeterminate\"\n :disabled=\"isDisabled\"\n @click.stop\n @update:model-value=\"handleSelectCheck\"\n />\n <el-radio\n v-else-if=\"checkStrictly && showPrefix\"\n :model-value=\"checkedNodeId\"\n :label=\"node.uid\"\n :disabled=\"isDisabled\"\n @update:model-value=\"handleSelectCheck\"\n @click.stop\n >\n <!--\n Add an empty element to avoid render label,\n do not use empty fragment here for https://github.com/vuejs/vue-next/pull/2485\n -->\n <span />\n </el-radio>\n <el-icon v-else-if=\"isLeaf && node.checked\" :class=\"ns.e('prefix')\">\n <check />\n </el-icon>\n\n <!-- content -->\n <node-content :node=\"node\" />\n <!-- postfix -->\n <template v-if=\"!isLeaf\">\n <el-icon v-if=\"node.loading\" :class=\"[ns.is('loading'), ns.e('postfix')]\">\n <loading />\n </el-icon>\n <el-icon v-else :class=\"['arrow-right', ns.e('postfix')]\">\n <arrow-right />\n </el-icon>\n </template>\n </li>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject } from 'vue'\nimport ElCheckbox from '@element-plus/components/checkbox'\nimport ElRadio from '@element-plus/components/radio'\nimport ElIcon from '@element-plus/components/icon'\nimport { useNamespace } from '@element-plus/hooks'\nimport { ArrowRight, Check, Loading } from '@element-plus/icons-vue'\nimport NodeContent from './node-content'\nimport { CASCADER_PANEL_INJECTION_KEY } from './types'\n\nimport type { default as CascaderNode } from './node'\nimport type { PropType } from 'vue'\nimport type { CheckboxValueType } from '@element-plus/components/checkbox'\n\ndefineOptions({\n name: 'ElCascaderNode',\n})\n\nconst props = defineProps({\n node: {\n type: Object as PropType<CascaderNode>,\n required: true,\n },\n menuId: String,\n})\nconst emit = defineEmits(['expand'])\n\nconst panel = inject(CASCADER_PANEL_INJECTION_KEY)!\n\nconst ns = useNamespace('cascader-node')\nconst isHoverMenu = computed(() => panel.isHoverMenu)\nconst multiple = computed(() => panel.config.multiple)\nconst checkStrictly = computed(() => panel.config.checkStrictly)\nconst showPrefix = computed(() => panel.config.showPrefix)\nconst checkedNodeId = computed(() => panel.checkedNodes[0]?.uid)\nconst isDisabled = computed(() => props.node.isDisabled)\nconst isLeaf = computed(() => props.node.isLeaf)\nconst expandable = computed(\n () => (checkStrictly.value && !isLeaf.value) || !isDisabled.value\n)\nconst inExpandingPath = computed(() => isInPath(panel.expandingNode!))\n\n// only useful in check-strictly mode\nconst inCheckedPath = computed(\n () => checkStrictly.value && panel.checkedNodes.some(isInPath)\n)\n\nconst isInPath = (node: CascaderNode) => {\n const { level, uid } = props.node\n return node?.pathNodes[level - 1]?.uid === uid\n}\n\nconst doExpand = () => {\n if (inExpandingPath.value) return\n panel.expandNode(props.node)\n}\n\nconst doCheck = (checked: boolean) => {\n const { node } = props\n if (checked === node.checked) return\n panel.handleCheckChange(node, checked)\n}\n\nconst doLoad = () => {\n panel.lazyLoad(props.node, () => {\n if (!isLeaf.value) doExpand()\n })\n}\n\nconst handleHoverExpand = (e: Event) => {\n if (!isHoverMenu.value) return\n handleExpand()\n !isLeaf.value && emit('expand', e)\n}\n\nconst handleExpand = () => {\n const { node } = props\n // do not exclude leaf node because the menus expanded might have to reset\n if (!expandable.value || node.loading) return\n node.loaded ? doExpand() : doLoad()\n}\n\nconst handleClick = () => {\n if (\n isLeaf.value &&\n !isDisabled.value &&\n !checkStrictly.value &&\n !multiple.value\n ) {\n handleCheck(true)\n } else if (\n ((panel.config.checkOnClickNode &&\n (multiple.value || checkStrictly.value)) ||\n (isLeaf.value && panel.config.checkOnClickLeaf)) &&\n !isDisabled.value\n ) {\n handleSelectCheck(!props.node.checked)\n } else if (!isHoverMenu.value) {\n handleExpand()\n }\n}\n\nconst handleSelectCheck = (checked: CheckboxValueType | undefined) => {\n if (checkStrictly.value) {\n doCheck(checked as boolean)\n if (props.node.loaded) {\n doExpand()\n }\n } else {\n handleCheck(checked as boolean)\n }\n}\n\nconst handleCheck = (checked: boolean) => {\n if (!props.node.loaded) {\n doLoad()\n } else {\n doCheck(checked)\n !checkStrictly.value && doExpand()\n }\n}\n</script>\n"],"names":["inject","CASCADER_PANEL_INJECTION_KEY","useNamespace","computed"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { InjectionKey, VNode } from 'vue';
2
2
  import type { default as CascaderNode, CascaderOption, CascaderProps, ExpandTrigger } from './node';
3
3
  export type { CascaderNode, CascaderOption, CascaderProps, ExpandTrigger };
4
- export type CascaderNodeValue = string | number;
4
+ export type CascaderNodeValue = string | number | Record<string, any>;
5
5
  export type CascaderNodePathValue = CascaderNodeValue[];
6
6
  export type CascaderValue = CascaderNodeValue | CascaderNodePathValue | (CascaderNodeValue | CascaderNodePathValue)[];
7
7
  export type CascaderConfig = Required<CascaderProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sources":["../../../../../../packages/components/cascader-panel/src/types.ts"],"sourcesContent":["import type { InjectionKey, VNode } from 'vue'\nimport type {\n default as CascaderNode,\n CascaderOption,\n CascaderProps,\n ExpandTrigger,\n} from './node'\n\nexport type { CascaderNode, CascaderOption, CascaderProps, ExpandTrigger }\n\nexport type CascaderNodeValue = string | number\nexport type CascaderNodePathValue = CascaderNodeValue[]\nexport type CascaderValue =\n | CascaderNodeValue\n | CascaderNodePathValue\n | (CascaderNodeValue | CascaderNodePathValue)[]\nexport type CascaderConfig = Required<CascaderProps>\nexport type isDisabled = (data: CascaderOption, node: CascaderNode) => boolean\nexport type isLeaf = (data: CascaderOption, node: CascaderNode) => boolean\nexport type Resolve = (dataList?: CascaderOption[]) => void\nexport type LazyLoad = (node: CascaderNode, resolve: Resolve) => void\nexport interface RenderLabelProps {\n node: CascaderNode\n data: CascaderOption\n}\nexport type RenderLabel = (props: RenderLabelProps) => VNode | VNode[]\n\nexport interface Tag {\n node?: CascaderNode\n key: number\n text: string\n hitState?: boolean\n closable: boolean\n isCollapseTag: boolean\n}\n\nexport interface ElCascaderPanelContext {\n config: CascaderConfig\n expandingNode: CascaderNode | undefined\n checkedNodes: CascaderNode[]\n isHoverMenu: boolean\n initialLoaded: boolean\n renderLabelFn: RenderLabel\n lazyLoad: (\n node?: CascaderNode,\n cb?: (dataList: CascaderOption[]) => void\n ) => void\n expandNode: (node: CascaderNode, silent?: boolean) => void\n handleCheckChange: (\n node: CascaderNode,\n checked: boolean,\n emitClose?: boolean\n ) => void\n}\n\nexport const CASCADER_PANEL_INJECTION_KEY: InjectionKey<ElCascaderPanelContext> =\n Symbol()\n"],"names":[],"mappings":";;;;AAAY,MAAC,4BAA4B,GAAG,MAAM;;;;"}
1
+ {"version":3,"file":"types.js","sources":["../../../../../../packages/components/cascader-panel/src/types.ts"],"sourcesContent":["import type { InjectionKey, VNode } from 'vue'\nimport type {\n default as CascaderNode,\n CascaderOption,\n CascaderProps,\n ExpandTrigger,\n} from './node'\n\nexport type { CascaderNode, CascaderOption, CascaderProps, ExpandTrigger }\n\nexport type CascaderNodeValue = string | number | Record<string, any>\nexport type CascaderNodePathValue = CascaderNodeValue[]\nexport type CascaderValue =\n | CascaderNodeValue\n | CascaderNodePathValue\n | (CascaderNodeValue | CascaderNodePathValue)[]\nexport type CascaderConfig = Required<CascaderProps>\nexport type isDisabled = (data: CascaderOption, node: CascaderNode) => boolean\nexport type isLeaf = (data: CascaderOption, node: CascaderNode) => boolean\nexport type Resolve = (dataList?: CascaderOption[]) => void\nexport type LazyLoad = (node: CascaderNode, resolve: Resolve) => void\nexport interface RenderLabelProps {\n node: CascaderNode\n data: CascaderOption\n}\nexport type RenderLabel = (props: RenderLabelProps) => VNode | VNode[]\n\nexport interface Tag {\n node?: CascaderNode\n key: number\n text: string\n hitState?: boolean\n closable: boolean\n isCollapseTag: boolean\n}\n\nexport interface ElCascaderPanelContext {\n config: CascaderConfig\n expandingNode: CascaderNode | undefined\n checkedNodes: CascaderNode[]\n isHoverMenu: boolean\n initialLoaded: boolean\n renderLabelFn: RenderLabel\n lazyLoad: (\n node?: CascaderNode,\n cb?: (dataList: CascaderOption[]) => void\n ) => void\n expandNode: (node: CascaderNode, silent?: boolean) => void\n handleCheckChange: (\n node: CascaderNode,\n checked: boolean,\n emitClose?: boolean\n ) => void\n}\n\nexport const CASCADER_PANEL_INJECTION_KEY: InjectionKey<ElCascaderPanelContext> =\n Symbol()\n"],"names":[],"mappings":";;;;AAAY,MAAC,4BAA4B,GAAG,MAAM;;;;"}
@@ -2,9 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var collapse$1 = require('./src/collapse2.js');
5
+ var collapse$1 = require('./src/collapse.js');
6
6
  var collapseItem$1 = require('./src/collapse-item2.js');
7
- var collapse = require('./src/collapse.js');
7
+ var collapse = require('./src/collapse2.js');
8
8
  var collapseItem = require('./src/collapse-item.js');
9
9
  var constants = require('./src/constants.js');
10
10
  var install = require('../../utils/vue/install.js');
@@ -2,33 +2,36 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var runtime = require('../../../utils/vue/props/runtime.js');
6
- var typescript = require('../../../utils/typescript.js');
7
- var types = require('../../../utils/types.js');
8
- var shared = require('@vue/shared');
9
- var event = require('../../../constants/event.js');
5
+ var vue = require('vue');
6
+ var collapse = require('./collapse2.js');
7
+ var useCollapse = require('./use-collapse.js');
8
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
10
9
 
11
- const emitChangeFn = (value) => types.isNumber(value) || shared.isString(value) || shared.isArray(value);
12
- const collapseProps = runtime.buildProps({
13
- accordion: Boolean,
14
- modelValue: {
15
- type: runtime.definePropType([Array, String, Number]),
16
- default: () => typescript.mutable([])
17
- },
18
- expandIconPosition: {
19
- type: runtime.definePropType([String]),
20
- default: "right"
21
- },
22
- beforeCollapse: {
23
- type: runtime.definePropType(Function)
10
+ const __default__ = vue.defineComponent({
11
+ name: "ElCollapse"
12
+ });
13
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
14
+ ...__default__,
15
+ props: collapse.collapseProps,
16
+ emits: collapse.collapseEmits,
17
+ setup(__props, { expose, emit }) {
18
+ const props = __props;
19
+ const { activeNames, setActiveNames } = useCollapse.useCollapse(props, emit);
20
+ const { rootKls } = useCollapse.useCollapseDOM(props);
21
+ expose({
22
+ activeNames,
23
+ setActiveNames
24
+ });
25
+ return (_ctx, _cache) => {
26
+ return vue.openBlock(), vue.createElementBlock("div", {
27
+ class: vue.normalizeClass(vue.unref(rootKls))
28
+ }, [
29
+ vue.renderSlot(_ctx.$slots, "default")
30
+ ], 2);
31
+ };
24
32
  }
25
33
  });
26
- const collapseEmits = {
27
- [event.UPDATE_MODEL_EVENT]: emitChangeFn,
28
- [event.CHANGE_EVENT]: emitChangeFn
29
- };
34
+ var Collapse = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "collapse.vue"]]);
30
35
 
31
- exports.collapseEmits = collapseEmits;
32
- exports.collapseProps = collapseProps;
33
- exports.emitChangeFn = emitChangeFn;
36
+ exports["default"] = Collapse;
34
37
  //# sourceMappingURL=collapse.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"collapse.js","sources":["../../../../../../packages/components/collapse/src/collapse.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n isArray,\n isNumber,\n isString,\n mutable,\n} from '@element-plus/utils'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\n\nimport type { ExtractPropTypes, __ExtractPublicPropTypes } from 'vue'\nimport type { Arrayable, Awaitable } from '@element-plus/utils'\n\nexport type CollapseActiveName = string | number\nexport type CollapseModelValue = Arrayable<CollapseActiveName>\n\nexport type CollapseIconPositionType = 'left' | 'right'\n\nexport const emitChangeFn = (value: CollapseModelValue) =>\n isNumber(value) || isString(value) || isArray(value)\n\nexport const collapseProps = buildProps({\n /**\n * @description whether to activate accordion mode\n */\n accordion: Boolean,\n /**\n * @description currently active panel, the type is `string` in accordion mode, otherwise it is `array`\n */\n modelValue: {\n type: definePropType<CollapseModelValue>([Array, String, Number]),\n default: () => mutable([] as const),\n },\n /**\n * @description set expand icon position\n */\n expandIconPosition: {\n type: definePropType<CollapseIconPositionType>([String]),\n default: 'right',\n },\n /**\n * @description before-collapse hook before the collapse state changes. If `false` is returned or a `Promise` is returned and then is rejected, will stop collapsing\n */\n beforeCollapse: {\n type: definePropType<(name: CollapseActiveName) => Awaitable<boolean>>(\n Function\n ),\n },\n} as const)\nexport type CollapseProps = ExtractPropTypes<typeof collapseProps>\nexport type CollapsePropsPublic = __ExtractPublicPropTypes<typeof collapseProps>\n\nexport const collapseEmits = {\n [UPDATE_MODEL_EVENT]: emitChangeFn,\n [CHANGE_EVENT]: emitChangeFn,\n}\nexport type CollapseEmits = typeof collapseEmits\n"],"names":["isNumber","isString","isArray","buildProps","definePropType","mutable","UPDATE_MODEL_EVENT","CHANGE_EVENT"],"mappings":";;;;;;;;;;AASY,MAAC,YAAY,GAAG,CAAC,KAAK,KAAKA,cAAQ,CAAC,KAAK,CAAC,IAAIC,eAAQ,CAAC,KAAK,CAAC,IAAIC,cAAO,CAAC,KAAK,EAAE;AAChF,MAAC,aAAa,GAAGC,kBAAU,CAAC;AACxC,EAAE,SAAS,EAAE,OAAO;AACpB,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAEC,sBAAc,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACjD,IAAI,OAAO,EAAE,MAAMC,kBAAO,CAAC,EAAE,CAAC;AAC9B,GAAG;AACH,EAAE,kBAAkB,EAAE;AACtB,IAAI,IAAI,EAAED,sBAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAClC,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,cAAc,EAAE;AAClB,IAAI,IAAI,EAAEA,sBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,CAAC,EAAE;AACS,MAAC,aAAa,GAAG;AAC7B,EAAE,CAACE,wBAAkB,GAAG,YAAY;AACpC,EAAE,CAACC,kBAAY,GAAG,YAAY;AAC9B;;;;;;"}
1
+ {"version":3,"file":"collapse.js","sources":["../../../../../../packages/components/collapse/src/collapse.vue"],"sourcesContent":["<template>\n <div :class=\"rootKls\">\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { collapseEmits, collapseProps } from './collapse'\nimport { useCollapse, useCollapseDOM } from './use-collapse'\n\ndefineOptions({\n name: 'ElCollapse',\n})\nconst props = defineProps(collapseProps)\nconst emit = defineEmits(collapseEmits)\n\nconst { activeNames, setActiveNames } = useCollapse(props, emit)\n\nconst { rootKls } = useCollapseDOM(props)\n\ndefineExpose({\n /** @description active names */\n activeNames,\n /** @description set active names */\n setActiveNames,\n})\n</script>\n"],"names":["useCollapse","useCollapseDOM","_openBlock","_createElementBlock"],"mappings":";;;;;;;;;uCAUc,CAAA;AAAA,EACZ,IAAM,EAAA,YAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAIA,IAAA,MAAM,EAAE,WAAa,EAAA,cAAA,EAAmB,GAAAA,uBAAA,CAAY,OAAO,IAAI,CAAA,CAAA;AAE/D,IAAA,MAAM,EAAE,OAAA,EAAY,GAAAC,0BAAA,CAAe,KAAK,CAAA,CAAA;AAExC,IAAa,MAAA,CAAA;AAAA,MAAA,WAAA;AAAA,MAEX,cAAA;AAAA,KAAA,CAAA,CAAA;AAAA,IAEA,OAAA,CAAA,IAAA,EAAA,MAAA,KAAA;AAAA,MACD,OAAAC,aAAA,EAAA,EAAAC,sBAAA,CAAA,KAAA,EAAA;;;;;;;;;;;;"}
@@ -2,36 +2,33 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- var collapse = require('./collapse.js');
7
- var useCollapse = require('./use-collapse.js');
8
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
5
+ var runtime = require('../../../utils/vue/props/runtime.js');
6
+ var typescript = require('../../../utils/typescript.js');
7
+ var types = require('../../../utils/types.js');
8
+ var shared = require('@vue/shared');
9
+ var event = require('../../../constants/event.js');
9
10
 
10
- const __default__ = vue.defineComponent({
11
- name: "ElCollapse"
12
- });
13
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
14
- ...__default__,
15
- props: collapse.collapseProps,
16
- emits: collapse.collapseEmits,
17
- setup(__props, { expose, emit }) {
18
- const props = __props;
19
- const { activeNames, setActiveNames } = useCollapse.useCollapse(props, emit);
20
- const { rootKls } = useCollapse.useCollapseDOM(props);
21
- expose({
22
- activeNames,
23
- setActiveNames
24
- });
25
- return (_ctx, _cache) => {
26
- return vue.openBlock(), vue.createElementBlock("div", {
27
- class: vue.normalizeClass(vue.unref(rootKls))
28
- }, [
29
- vue.renderSlot(_ctx.$slots, "default")
30
- ], 2);
31
- };
11
+ const emitChangeFn = (value) => types.isNumber(value) || shared.isString(value) || shared.isArray(value);
12
+ const collapseProps = runtime.buildProps({
13
+ accordion: Boolean,
14
+ modelValue: {
15
+ type: runtime.definePropType([Array, String, Number]),
16
+ default: () => typescript.mutable([])
17
+ },
18
+ expandIconPosition: {
19
+ type: runtime.definePropType([String]),
20
+ default: "right"
21
+ },
22
+ beforeCollapse: {
23
+ type: runtime.definePropType(Function)
32
24
  }
33
25
  });
34
- var Collapse = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "collapse.vue"]]);
26
+ const collapseEmits = {
27
+ [event.UPDATE_MODEL_EVENT]: emitChangeFn,
28
+ [event.CHANGE_EVENT]: emitChangeFn
29
+ };
35
30
 
36
- exports["default"] = Collapse;
31
+ exports.collapseEmits = collapseEmits;
32
+ exports.collapseProps = collapseProps;
33
+ exports.emitChangeFn = emitChangeFn;
37
34
  //# sourceMappingURL=collapse2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"collapse2.js","sources":["../../../../../../packages/components/collapse/src/collapse.vue"],"sourcesContent":["<template>\n <div :class=\"rootKls\">\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { collapseEmits, collapseProps } from './collapse'\nimport { useCollapse, useCollapseDOM } from './use-collapse'\n\ndefineOptions({\n name: 'ElCollapse',\n})\nconst props = defineProps(collapseProps)\nconst emit = defineEmits(collapseEmits)\n\nconst { activeNames, setActiveNames } = useCollapse(props, emit)\n\nconst { rootKls } = useCollapseDOM(props)\n\ndefineExpose({\n /** @description active names */\n activeNames,\n /** @description set active names */\n setActiveNames,\n})\n</script>\n"],"names":["useCollapse","useCollapseDOM","_openBlock","_createElementBlock"],"mappings":";;;;;;;;;uCAUc,CAAA;AAAA,EACZ,IAAM,EAAA,YAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAIA,IAAA,MAAM,EAAE,WAAa,EAAA,cAAA,EAAmB,GAAAA,uBAAA,CAAY,OAAO,IAAI,CAAA,CAAA;AAE/D,IAAA,MAAM,EAAE,OAAA,EAAY,GAAAC,0BAAA,CAAe,KAAK,CAAA,CAAA;AAExC,IAAa,MAAA,CAAA;AAAA,MAAA,WAAA;AAAA,MAEX,cAAA;AAAA,KAAA,CAAA,CAAA;AAAA,IAEA,OAAA,CAAA,IAAA,EAAA,MAAA,KAAA;AAAA,MACD,OAAAC,aAAA,EAAA,EAAAC,sBAAA,CAAA,KAAA,EAAA;;;;;;;;;;;;"}
1
+ {"version":3,"file":"collapse2.js","sources":["../../../../../../packages/components/collapse/src/collapse.ts"],"sourcesContent":["import {\n buildProps,\n definePropType,\n isArray,\n isNumber,\n isString,\n mutable,\n} from '@element-plus/utils'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\n\nimport type { ExtractPropTypes, __ExtractPublicPropTypes } from 'vue'\nimport type { Arrayable, Awaitable } from '@element-plus/utils'\n\nexport type CollapseActiveName = string | number\nexport type CollapseModelValue = Arrayable<CollapseActiveName>\n\nexport type CollapseIconPositionType = 'left' | 'right'\n\nexport const emitChangeFn = (value: CollapseModelValue) =>\n isNumber(value) || isString(value) || isArray(value)\n\nexport const collapseProps = buildProps({\n /**\n * @description whether to activate accordion mode\n */\n accordion: Boolean,\n /**\n * @description currently active panel, the type is `string` in accordion mode, otherwise it is `array`\n */\n modelValue: {\n type: definePropType<CollapseModelValue>([Array, String, Number]),\n default: () => mutable([] as const),\n },\n /**\n * @description set expand icon position\n */\n expandIconPosition: {\n type: definePropType<CollapseIconPositionType>([String]),\n default: 'right',\n },\n /**\n * @description before-collapse hook before the collapse state changes. If `false` is returned or a `Promise` is returned and then is rejected, will stop collapsing\n */\n beforeCollapse: {\n type: definePropType<(name: CollapseActiveName) => Awaitable<boolean>>(\n Function\n ),\n },\n} as const)\nexport type CollapseProps = ExtractPropTypes<typeof collapseProps>\nexport type CollapsePropsPublic = __ExtractPublicPropTypes<typeof collapseProps>\n\nexport const collapseEmits = {\n [UPDATE_MODEL_EVENT]: emitChangeFn,\n [CHANGE_EVENT]: emitChangeFn,\n}\nexport type CollapseEmits = typeof collapseEmits\n"],"names":["isNumber","isString","isArray","buildProps","definePropType","mutable","UPDATE_MODEL_EVENT","CHANGE_EVENT"],"mappings":";;;;;;;;;;AASY,MAAC,YAAY,GAAG,CAAC,KAAK,KAAKA,cAAQ,CAAC,KAAK,CAAC,IAAIC,eAAQ,CAAC,KAAK,CAAC,IAAIC,cAAO,CAAC,KAAK,EAAE;AAChF,MAAC,aAAa,GAAGC,kBAAU,CAAC;AACxC,EAAE,SAAS,EAAE,OAAO;AACpB,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAEC,sBAAc,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACjD,IAAI,OAAO,EAAE,MAAMC,kBAAO,CAAC,EAAE,CAAC;AAC9B,GAAG;AACH,EAAE,kBAAkB,EAAE;AACtB,IAAI,IAAI,EAAED,sBAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAClC,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,cAAc,EAAE;AAClB,IAAI,IAAI,EAAEA,sBAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,CAAC,EAAE;AACS,MAAC,aAAa,GAAG;AAC7B,EAAE,CAACE,wBAAkB,GAAG,YAAY;AACpC,EAAE,CAACC,kBAAY,GAAG,YAAY;AAC9B;;;;;;"}
@@ -2,8 +2,8 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var countdown$1 = require('./src/countdown2.js');
6
- var countdown = require('./src/countdown.js');
5
+ var countdown$1 = require('./src/countdown.js');
6
+ var countdown = require('./src/countdown2.js');
7
7
  var install = require('../../utils/vue/install.js');
8
8
 
9
9
  const ElCountdown = install.withInstall(countdown$1["default"]);
@@ -2,31 +2,88 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var runtime = require('../../../utils/vue/props/runtime.js');
5
+ var vue = require('vue');
6
+ var index = require('../../statistic/index.js');
7
+ var countdown = require('./countdown2.js');
8
+ var utils = require('./utils.js');
9
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
10
+ var raf = require('../../../utils/raf.js');
6
11
  var event = require('../../../constants/event.js');
7
- var types = require('../../../utils/types.js');
8
12
 
9
- const countdownProps = runtime.buildProps({
10
- format: {
11
- type: String,
12
- default: "HH:mm:ss"
13
- },
14
- prefix: String,
15
- suffix: String,
16
- title: String,
17
- value: {
18
- type: runtime.definePropType([Number, Object]),
19
- default: 0
20
- },
21
- valueStyle: {
22
- type: runtime.definePropType([String, Object, Array])
13
+ const __default__ = vue.defineComponent({
14
+ name: "ElCountdown"
15
+ });
16
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
17
+ ...__default__,
18
+ props: countdown.countdownProps,
19
+ emits: countdown.countdownEmits,
20
+ setup(__props, { expose, emit }) {
21
+ const props = __props;
22
+ let timer;
23
+ const rawValue = vue.ref(0);
24
+ const displayValue = vue.computed(() => utils.formatTime(rawValue.value, props.format));
25
+ const formatter = (val) => utils.formatTime(val, props.format);
26
+ const stopTimer = () => {
27
+ if (timer) {
28
+ raf.cAF(timer);
29
+ timer = void 0;
30
+ }
31
+ };
32
+ const startTimer = () => {
33
+ const timestamp = utils.getTime(props.value);
34
+ const frameFunc = () => {
35
+ let diff = timestamp - Date.now();
36
+ emit(event.CHANGE_EVENT, diff);
37
+ if (diff <= 0) {
38
+ diff = 0;
39
+ stopTimer();
40
+ emit("finish");
41
+ } else {
42
+ timer = raf.rAF(frameFunc);
43
+ }
44
+ rawValue.value = diff;
45
+ };
46
+ timer = raf.rAF(frameFunc);
47
+ };
48
+ vue.onMounted(() => {
49
+ rawValue.value = utils.getTime(props.value) - Date.now();
50
+ vue.watch(() => [props.value, props.format], () => {
51
+ stopTimer();
52
+ startTimer();
53
+ }, {
54
+ immediate: true
55
+ });
56
+ });
57
+ vue.onBeforeUnmount(() => {
58
+ stopTimer();
59
+ });
60
+ expose({
61
+ displayValue
62
+ });
63
+ return (_ctx, _cache) => {
64
+ return vue.openBlock(), vue.createBlock(vue.unref(index.ElStatistic), {
65
+ value: rawValue.value,
66
+ title: _ctx.title,
67
+ prefix: _ctx.prefix,
68
+ suffix: _ctx.suffix,
69
+ "value-style": _ctx.valueStyle,
70
+ formatter
71
+ }, vue.createSlots({
72
+ _: 2
73
+ }, [
74
+ vue.renderList(_ctx.$slots, (_, name) => {
75
+ return {
76
+ name,
77
+ fn: vue.withCtx(() => [
78
+ vue.renderSlot(_ctx.$slots, name)
79
+ ])
80
+ };
81
+ })
82
+ ]), 1032, ["value", "title", "prefix", "suffix", "value-style"]);
83
+ };
23
84
  }
24
85
  });
25
- const countdownEmits = {
26
- finish: () => true,
27
- [event.CHANGE_EVENT]: (value) => types.isNumber(value)
28
- };
86
+ var Countdown = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "countdown.vue"]]);
29
87
 
30
- exports.countdownEmits = countdownEmits;
31
- exports.countdownProps = countdownProps;
88
+ exports["default"] = Countdown;
32
89
  //# sourceMappingURL=countdown.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"countdown.js","sources":["../../../../../../packages/components/countdown/src/countdown.ts"],"sourcesContent":["import { buildProps, definePropType, isNumber } from '@element-plus/utils'\nimport { CHANGE_EVENT } from '@element-plus/constants'\n\nimport type {\n ExtractPropTypes,\n StyleValue,\n __ExtractPublicPropTypes,\n} from 'vue'\nimport type { Dayjs } from 'dayjs'\nimport type Countdown from './countdown.vue'\n\nexport const countdownProps = buildProps({\n /**\n * @description Formatting the countdown display\n */\n format: {\n type: String,\n default: 'HH:mm:ss',\n },\n /**\n * @description Sets the prefix of a countdown\n */\n prefix: String,\n /**\n * @description Sets the suffix of a countdown\n */\n suffix: String,\n /**\n * @description countdown titles\n */\n title: String,\n /**\n * @description target time\n */\n value: {\n type: definePropType<number | Dayjs>([Number, Object]),\n default: 0,\n },\n /**\n * @description Styles countdown values\n */\n valueStyle: {\n type: definePropType<StyleValue>([String, Object, Array]),\n },\n} as const)\nexport type CountdownProps = ExtractPropTypes<typeof countdownProps>\nexport type CountdownPropsPublic = __ExtractPublicPropTypes<\n typeof countdownProps\n>\n\nexport const countdownEmits = {\n finish: () => true,\n [CHANGE_EVENT]: (value: number) => isNumber(value),\n}\nexport type CountdownEmits = typeof countdownEmits\n\nexport type CountdownInstance = InstanceType<typeof Countdown> & unknown\n"],"names":["buildProps","definePropType","CHANGE_EVENT","isNumber"],"mappings":";;;;;;;;AAEY,MAAC,cAAc,GAAGA,kBAAU,CAAC;AACzC,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,UAAU;AACvB,GAAG;AACH,EAAE,MAAM,EAAE,MAAM;AAChB,EAAE,MAAM,EAAE,MAAM;AAChB,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAEC,sBAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAEA,sBAAc,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AACjD,GAAG;AACH,CAAC,EAAE;AACS,MAAC,cAAc,GAAG;AAC9B,EAAE,MAAM,EAAE,MAAM,IAAI;AACpB,EAAE,CAACC,kBAAY,GAAG,CAAC,KAAK,KAAKC,cAAQ,CAAC,KAAK,CAAC;AAC5C;;;;;"}
1
+ {"version":3,"file":"countdown.js","sources":["../../../../../../packages/components/countdown/src/countdown.vue"],"sourcesContent":["<template>\n <el-statistic\n :value=\"rawValue\"\n :title=\"title\"\n :prefix=\"prefix\"\n :suffix=\"suffix\"\n :value-style=\"valueStyle\"\n :formatter=\"formatter\"\n >\n <template v-for=\"(_, name) in $slots\" #[name]>\n <slot :name=\"name\" />\n </template>\n </el-statistic>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, onBeforeUnmount, onMounted, ref, watch } from 'vue'\nimport { ElStatistic } from '@element-plus/components/statistic'\nimport { cAF, rAF } from '@element-plus/utils'\nimport { CHANGE_EVENT } from '@element-plus/constants'\nimport { countdownEmits, countdownProps } from './countdown'\nimport { formatTime, getTime } from './utils'\n\ndefineOptions({\n name: 'ElCountdown',\n})\n\nconst props = defineProps(countdownProps)\nconst emit = defineEmits(countdownEmits)\n\nlet timer: ReturnType<typeof rAF> | undefined\nconst rawValue = ref<number>(0)\nconst displayValue = computed(() => formatTime(rawValue.value, props.format))\n\nconst formatter = (val: number) => formatTime(val, props.format)\n\nconst stopTimer = () => {\n if (timer) {\n cAF(timer)\n timer = undefined\n }\n}\n\nconst startTimer = () => {\n const timestamp = getTime(props.value)\n const frameFunc = () => {\n let diff = timestamp - Date.now()\n emit(CHANGE_EVENT, diff)\n if (diff <= 0) {\n diff = 0\n stopTimer()\n emit('finish')\n } else {\n timer = rAF(frameFunc)\n }\n rawValue.value = diff\n }\n timer = rAF(frameFunc)\n}\n\nonMounted(() => {\n rawValue.value = getTime(props.value) - Date.now()\n\n watch(\n () => [props.value, props.format],\n () => {\n stopTimer()\n startTimer()\n },\n {\n immediate: true,\n }\n )\n})\n\nonBeforeUnmount(() => {\n stopTimer()\n})\n\ndefineExpose({\n /**\n * @description current display value\n */\n displayValue,\n})\n</script>\n"],"names":["ref","computed","formatTime","cAF","getTime","CHANGE_EVENT","rAF","onMounted","watch","onBeforeUnmount","_openBlock","_createBlock","_unref","ElStatistic"],"mappings":";;;;;;;;;;;;uCAuBc,CAAA;AAAA,EACZ,IAAM,EAAA,aAAA;AACR,CAAA,CAAA,CAAA;;;;;;;AAKA,IAAI,IAAA,KAAA,CAAA;AACJ,IAAM,MAAA,QAAA,GAAWA,QAAY,CAAC,CAAA,CAAA;AAC9B,IAAM,MAAA,YAAA,GAAeC,aAAS,MAAMC,gBAAA,CAAW,SAAS,KAAO,EAAA,KAAA,CAAM,MAAM,CAAC,CAAA,CAAA;AAE5E,IAAA,MAAM,YAAY,CAAC,GAAA,KAAgBA,gBAAW,CAAA,GAAA,EAAK,MAAM,MAAM,CAAA,CAAA;AAE/D,IAAA,MAAM,YAAY,MAAM;AACtB,MAAA,IAAI,KAAO,EAAA;AACT,QAAAC,OAAA,CAAI,KAAK,CAAA,CAAA;AACT,QAAQ,KAAA,GAAA,KAAA,CAAA,CAAA;AAAA,OACV;AAAA,KACF,CAAA;AAEA,IAAA,MAAM,aAAa,MAAM;AACvB,MAAM,MAAA,SAAA,GAAYC,aAAQ,CAAA,KAAA,CAAM,KAAK,CAAA,CAAA;AACrC,MAAA,MAAM,YAAY,MAAM;AACtB,QAAI,IAAA,IAAA,GAAO,SAAY,GAAA,IAAA,CAAK,GAAI,EAAA,CAAA;AAChC,QAAA,IAAA,CAAKC,oBAAc,IAAI,CAAA,CAAA;AACvB,QAAA,IAAI,QAAQ,CAAG,EAAA;AACb,UAAO,IAAA,GAAA,CAAA,CAAA;AACP,UAAU,SAAA,EAAA,CAAA;AACV,UAAA,IAAA,CAAK,QAAQ,CAAA,CAAA;AAAA,SACR,MAAA;AACL,UAAA,KAAA,GAAQC,QAAI,SAAS,CAAA,CAAA;AAAA,SACvB;AACA,QAAA,QAAA,CAAS,KAAQ,GAAA,IAAA,CAAA;AAAA,OACnB,CAAA;AACA,MAAA,KAAA,GAAQA,QAAI,SAAS,CAAA,CAAA;AAAA,KACvB,CAAA;AAEA,IAAAC,aAAA,CAAU,MAAM;AACd,MAAA,QAAA,CAAS,QAAQH,aAAQ,CAAA,KAAA,CAAM,KAAK,CAAA,GAAI,KAAK,GAAI,EAAA,CAAA;AAEjD,MAAAI,SAAA,CAAA,MAAA,CAAA,KAAA,CAAA,KAAA,EAAA,KAAA,CAAA,MAAA,CAAA,EAAA,MAAA;AAAA,QACE,SAAa,EAAA,CAAA;AAAmB,QAChC,UAAM,EAAA,CAAA;AACJ,OAAU,EAAA;AACV,QAAW,SAAA,EAAA,IAAA;AAAA,OACb,CAAA,CAAA;AAAA,KACA,CAAA,CAAA;AAAA,IAAAC,mBACa,CAAA,MAAA;AAAA,MACb,SAAA,EAAA,CAAA;AAAA,KACF,CAAA,CAAA;AAAA,IACF,MAAC,CAAA;AAED,MAAA,YAAA;AACE,KAAU,CAAA,CAAA;AAAA,IACZ,OAAC,CAAA,IAAA,EAAA,MAAA,KAAA;AAED,MAAa,OAAAC,aAAA,EAAA,EAAAC,eAAA,CAAAC,SAAA,CAAAC,iBAAA,CAAA,EAAA;AAAA,QAAA,KAAA,EAAA,QAAA,CAAA,KAAA;AAAA,QAAA,KAAA,EAAA,IAAA,CAAA,KAAA;AAAA,QAAA,MAAA,EAAA,IAAA,CAAA,MAAA;AAAA,QAIX,MAAA,EAAA,IAAA,CAAA,MAAA;AAAA,QACD,aAAA,EAAA,IAAA,CAAA,UAAA;;;;;;;;;;;;;;;;;;;;;"}