@element-plus/nightly 0.0.20250622 → 0.0.20250623

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 (497) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.full.js +338 -372
  3. package/dist/index.full.min.js +16 -16
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +16 -16
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +338 -374
  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/anchor/index.mjs +2 -2
  277. package/es/components/anchor/src/anchor.mjs +193 -42
  278. package/es/components/anchor/src/anchor.mjs.map +1 -1
  279. package/es/components/anchor/src/anchor2.mjs +42 -193
  280. package/es/components/anchor/src/anchor2.mjs.map +1 -1
  281. package/es/components/calendar/src/calendar2.mjs +1 -1
  282. package/es/components/calendar/src/date-table.mjs +89 -31
  283. package/es/components/calendar/src/date-table.mjs.map +1 -1
  284. package/es/components/calendar/src/date-table2.mjs +31 -89
  285. package/es/components/calendar/src/date-table2.mjs.map +1 -1
  286. package/es/components/calendar/src/use-date-table.mjs +1 -1
  287. package/es/components/cascader/src/cascader.d.ts +2 -2
  288. package/es/components/cascader/src/cascader.mjs +3 -2
  289. package/es/components/cascader/src/cascader.mjs.map +1 -1
  290. package/es/components/cascader/src/cascader.vue.d.ts +4 -4
  291. package/es/components/cascader-panel/index.mjs +1 -1
  292. package/es/components/cascader-panel/src/config.d.ts +26 -2
  293. package/es/components/cascader-panel/src/config.mjs +19 -1
  294. package/es/components/cascader-panel/src/config.mjs.map +1 -1
  295. package/es/components/cascader-panel/src/index.mjs +45 -54
  296. package/es/components/cascader-panel/src/index.mjs.map +1 -1
  297. package/es/components/cascader-panel/src/index.vue.d.ts +46 -46
  298. package/es/components/cascader-panel/src/instance.d.ts +2 -0
  299. package/es/components/cascader-panel/src/menu.mjs +68 -85
  300. package/es/components/cascader-panel/src/menu.mjs.map +1 -1
  301. package/es/components/cascader-panel/src/menu.vue.d.ts +11 -30
  302. package/es/components/cascader-panel/src/node-content.d.ts +14 -19
  303. package/es/components/cascader-panel/src/node-content.mjs +29 -18
  304. package/es/components/cascader-panel/src/node-content.mjs.map +1 -1
  305. package/es/components/cascader-panel/src/node.d.ts +9 -8
  306. package/es/components/cascader-panel/src/node.mjs +12 -12
  307. package/es/components/cascader-panel/src/node.mjs.map +1 -1
  308. package/es/components/cascader-panel/src/node.vue.d.ts +3 -36
  309. package/es/components/cascader-panel/src/node2.mjs +86 -114
  310. package/es/components/cascader-panel/src/node2.mjs.map +1 -1
  311. package/es/components/cascader-panel/src/types.d.ts +6 -6
  312. package/es/components/cascader-panel/src/types.mjs.map +1 -1
  313. package/es/components/checkbox/index.mjs +2 -2
  314. package/es/components/checkbox/src/checkbox-button.mjs +1 -1
  315. package/es/components/checkbox/src/checkbox.mjs +59 -119
  316. package/es/components/checkbox/src/checkbox.mjs.map +1 -1
  317. package/es/components/checkbox/src/checkbox2.mjs +119 -59
  318. package/es/components/checkbox/src/checkbox2.mjs.map +1 -1
  319. package/es/components/drawer/index.mjs +2 -2
  320. package/es/components/drawer/src/drawer.mjs +26 -178
  321. package/es/components/drawer/src/drawer.mjs.map +1 -1
  322. package/es/components/drawer/src/drawer2.mjs +178 -26
  323. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  324. package/es/components/form/index.mjs +2 -2
  325. package/es/components/form/src/form.mjs +54 -161
  326. package/es/components/form/src/form.mjs.map +1 -1
  327. package/es/components/form/src/form2.mjs +161 -54
  328. package/es/components/form/src/form2.mjs.map +1 -1
  329. package/es/components/index.mjs +10 -10
  330. package/es/components/input/index.mjs +2 -2
  331. package/es/components/input/src/input.mjs +106 -437
  332. package/es/components/input/src/input.mjs.map +1 -1
  333. package/es/components/input/src/input2.mjs +437 -106
  334. package/es/components/input/src/input2.mjs.map +1 -1
  335. package/es/components/mention/src/mention.mjs +1 -1
  336. package/es/components/mention/src/mention2.mjs +1 -1
  337. package/es/components/row/index.mjs +2 -2
  338. package/es/components/row/src/row.mjs +28 -44
  339. package/es/components/row/src/row.mjs.map +1 -1
  340. package/es/components/row/src/row2.mjs +44 -28
  341. package/es/components/row/src/row2.mjs.map +1 -1
  342. package/es/components/segmented/index.mjs +2 -2
  343. package/es/components/segmented/src/segmented.mjs +168 -42
  344. package/es/components/segmented/src/segmented.mjs.map +1 -1
  345. package/es/components/segmented/src/segmented2.mjs +42 -168
  346. package/es/components/segmented/src/segmented2.mjs.map +1 -1
  347. package/es/components/select/index.mjs +1 -1
  348. package/es/components/select/src/option.mjs +13 -89
  349. package/es/components/select/src/option.mjs.map +1 -1
  350. package/es/components/select/src/option2.mjs +89 -13
  351. package/es/components/select/src/option2.mjs.map +1 -1
  352. package/es/components/select/src/select2.mjs +1 -1
  353. package/es/components/select/src/useOption.mjs +1 -1
  354. package/es/components/slider/index.mjs +2 -2
  355. package/es/components/slider/src/slider.mjs +238 -92
  356. package/es/components/slider/src/slider.mjs.map +1 -1
  357. package/es/components/slider/src/slider2.mjs +92 -238
  358. package/es/components/slider/src/slider2.mjs.map +1 -1
  359. package/es/components/space/src/space.mjs +0 -2
  360. package/es/components/space/src/space.mjs.map +1 -1
  361. package/es/components/table/src/store/index.mjs +0 -1
  362. package/es/components/table/src/store/index.mjs.map +1 -1
  363. package/es/components/table/src/store/watcher.mjs +0 -10
  364. package/es/components/table/src/store/watcher.mjs.map +1 -1
  365. package/es/components/tabs/src/tab-bar2.mjs +1 -1
  366. package/es/components/tree-v2/src/composables/useTree.d.ts +0 -1
  367. package/es/components/tree-v2/src/composables/useTree.mjs +5 -4
  368. package/es/components/tree-v2/src/composables/useTree.mjs.map +1 -1
  369. package/es/components/tree-v2/src/tree-node.mjs +3 -1
  370. package/es/components/tree-v2/src/tree-node.mjs.map +1 -1
  371. package/es/components/tree-v2/src/tree.mjs +1 -2
  372. package/es/components/tree-v2/src/tree.mjs.map +1 -1
  373. package/es/components/tree-v2/src/types.d.ts +1 -0
  374. package/es/components/watermark/index.mjs +2 -2
  375. package/es/components/watermark/src/watermark.mjs +220 -27
  376. package/es/components/watermark/src/watermark.mjs.map +1 -1
  377. package/es/components/watermark/src/watermark2.mjs +27 -220
  378. package/es/components/watermark/src/watermark2.mjs.map +1 -1
  379. package/es/index.d.ts +2011 -1957
  380. package/es/index.mjs +10 -10
  381. package/es/version.d.ts +1 -1
  382. package/es/version.mjs +1 -1
  383. package/es/version.mjs.map +1 -1
  384. package/lib/components/anchor/index.js +2 -2
  385. package/lib/components/anchor/src/anchor.js +192 -42
  386. package/lib/components/anchor/src/anchor.js.map +1 -1
  387. package/lib/components/anchor/src/anchor2.js +42 -192
  388. package/lib/components/anchor/src/anchor2.js.map +1 -1
  389. package/lib/components/calendar/src/calendar2.js +1 -1
  390. package/lib/components/calendar/src/date-table.js +89 -35
  391. package/lib/components/calendar/src/date-table.js.map +1 -1
  392. package/lib/components/calendar/src/date-table2.js +35 -89
  393. package/lib/components/calendar/src/date-table2.js.map +1 -1
  394. package/lib/components/calendar/src/use-date-table.js +1 -1
  395. package/lib/components/cascader/src/cascader.d.ts +2 -2
  396. package/lib/components/cascader/src/cascader.js +3 -2
  397. package/lib/components/cascader/src/cascader.js.map +1 -1
  398. package/lib/components/cascader/src/cascader.vue.d.ts +4 -4
  399. package/lib/components/cascader-panel/index.js +2 -0
  400. package/lib/components/cascader-panel/index.js.map +1 -1
  401. package/lib/components/cascader-panel/src/config.d.ts +26 -2
  402. package/lib/components/cascader-panel/src/config.js +20 -0
  403. package/lib/components/cascader-panel/src/config.js.map +1 -1
  404. package/lib/components/cascader-panel/src/index.js +43 -52
  405. package/lib/components/cascader-panel/src/index.js.map +1 -1
  406. package/lib/components/cascader-panel/src/index.vue.d.ts +46 -46
  407. package/lib/components/cascader-panel/src/instance.d.ts +2 -0
  408. package/lib/components/cascader-panel/src/menu.js +75 -92
  409. package/lib/components/cascader-panel/src/menu.js.map +1 -1
  410. package/lib/components/cascader-panel/src/menu.vue.d.ts +11 -30
  411. package/lib/components/cascader-panel/src/node-content.d.ts +14 -19
  412. package/lib/components/cascader-panel/src/node-content.js +28 -17
  413. package/lib/components/cascader-panel/src/node-content.js.map +1 -1
  414. package/lib/components/cascader-panel/src/node.d.ts +9 -8
  415. package/lib/components/cascader-panel/src/node.js +12 -12
  416. package/lib/components/cascader-panel/src/node.js.map +1 -1
  417. package/lib/components/cascader-panel/src/node.vue.d.ts +3 -36
  418. package/lib/components/cascader-panel/src/node2.js +90 -118
  419. package/lib/components/cascader-panel/src/node2.js.map +1 -1
  420. package/lib/components/cascader-panel/src/types.d.ts +6 -6
  421. package/lib/components/cascader-panel/src/types.js.map +1 -1
  422. package/lib/components/checkbox/index.js +2 -2
  423. package/lib/components/checkbox/src/checkbox-button.js +1 -1
  424. package/lib/components/checkbox/src/checkbox.js +60 -119
  425. package/lib/components/checkbox/src/checkbox.js.map +1 -1
  426. package/lib/components/checkbox/src/checkbox2.js +119 -60
  427. package/lib/components/checkbox/src/checkbox2.js.map +1 -1
  428. package/lib/components/drawer/index.js +2 -2
  429. package/lib/components/drawer/src/drawer.js +27 -178
  430. package/lib/components/drawer/src/drawer.js.map +1 -1
  431. package/lib/components/drawer/src/drawer2.js +178 -27
  432. package/lib/components/drawer/src/drawer2.js.map +1 -1
  433. package/lib/components/form/index.js +2 -2
  434. package/lib/components/form/src/form.js +55 -160
  435. package/lib/components/form/src/form.js.map +1 -1
  436. package/lib/components/form/src/form2.js +160 -55
  437. package/lib/components/form/src/form2.js.map +1 -1
  438. package/lib/components/index.js +11 -9
  439. package/lib/components/index.js.map +1 -1
  440. package/lib/components/input/index.js +2 -2
  441. package/lib/components/input/src/input.js +104 -434
  442. package/lib/components/input/src/input.js.map +1 -1
  443. package/lib/components/input/src/input2.js +434 -104
  444. package/lib/components/input/src/input2.js.map +1 -1
  445. package/lib/components/mention/src/mention.js +1 -1
  446. package/lib/components/mention/src/mention2.js +1 -1
  447. package/lib/components/row/index.js +2 -2
  448. package/lib/components/row/src/row.js +30 -44
  449. package/lib/components/row/src/row.js.map +1 -1
  450. package/lib/components/row/src/row2.js +44 -30
  451. package/lib/components/row/src/row2.js.map +1 -1
  452. package/lib/components/segmented/index.js +2 -2
  453. package/lib/components/segmented/src/segmented.js +168 -44
  454. package/lib/components/segmented/src/segmented.js.map +1 -1
  455. package/lib/components/segmented/src/segmented2.js +44 -168
  456. package/lib/components/segmented/src/segmented2.js.map +1 -1
  457. package/lib/components/select/index.js +1 -1
  458. package/lib/components/select/src/option.js +14 -89
  459. package/lib/components/select/src/option.js.map +1 -1
  460. package/lib/components/select/src/option2.js +89 -14
  461. package/lib/components/select/src/option2.js.map +1 -1
  462. package/lib/components/select/src/select2.js +1 -1
  463. package/lib/components/select/src/useOption.js +1 -1
  464. package/lib/components/slider/index.js +2 -2
  465. package/lib/components/slider/src/slider.js +238 -93
  466. package/lib/components/slider/src/slider.js.map +1 -1
  467. package/lib/components/slider/src/slider2.js +93 -238
  468. package/lib/components/slider/src/slider2.js.map +1 -1
  469. package/lib/components/space/src/space.js +0 -2
  470. package/lib/components/space/src/space.js.map +1 -1
  471. package/lib/components/table/src/store/index.js +0 -1
  472. package/lib/components/table/src/store/index.js.map +1 -1
  473. package/lib/components/table/src/store/watcher.js +0 -10
  474. package/lib/components/table/src/store/watcher.js.map +1 -1
  475. package/lib/components/tabs/src/tab-bar2.js +1 -1
  476. package/lib/components/tree-v2/src/composables/useTree.d.ts +0 -1
  477. package/lib/components/tree-v2/src/composables/useTree.js +5 -4
  478. package/lib/components/tree-v2/src/composables/useTree.js.map +1 -1
  479. package/lib/components/tree-v2/src/tree-node.js +3 -1
  480. package/lib/components/tree-v2/src/tree-node.js.map +1 -1
  481. package/lib/components/tree-v2/src/tree.js +1 -2
  482. package/lib/components/tree-v2/src/tree.js.map +1 -1
  483. package/lib/components/tree-v2/src/types.d.ts +1 -0
  484. package/lib/components/watermark/index.js +2 -2
  485. package/lib/components/watermark/src/watermark.js +220 -27
  486. package/lib/components/watermark/src/watermark.js.map +1 -1
  487. package/lib/components/watermark/src/watermark2.js +27 -220
  488. package/lib/components/watermark/src/watermark2.js.map +1 -1
  489. package/lib/index.d.ts +2011 -1957
  490. package/lib/index.js +11 -9
  491. package/lib/index.js.map +1 -1
  492. package/lib/version.d.ts +1 -1
  493. package/lib/version.js +1 -1
  494. package/lib/version.js.map +1 -1
  495. package/package.json +2 -2
  496. package/tags.json +1 -1
  497. package/web-types.json +1 -1
@@ -3,24 +3,21 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var vue = require('vue');
6
- var index$1 = require('../../scrollbar/index.js');
6
+ var index$3 = require('../../scrollbar/index.js');
7
7
  var iconsVue = require('@element-plus/icons-vue');
8
- var index = require('../../icon/index.js');
8
+ var index$4 = require('../../icon/index.js');
9
9
  var node = require('./node2.js');
10
10
  var types = require('./types.js');
11
11
  var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
12
- var index$2 = require('../../../hooks/use-namespace/index.js');
13
- var index$3 = require('../../../hooks/use-locale/index.js');
14
- var index$4 = require('../../../hooks/use-id/index.js');
12
+ var index = require('../../../hooks/use-namespace/index.js');
13
+ var index$1 = require('../../../hooks/use-locale/index.js');
14
+ var index$2 = require('../../../hooks/use-id/index.js');
15
15
 
16
- const _sfc_main = vue.defineComponent({
17
- name: "ElCascaderMenu",
18
- components: {
19
- Loading: iconsVue.Loading,
20
- ElIcon: index.ElIcon,
21
- ElScrollbar: index$1.ElScrollbar,
22
- ElCascaderNode: node["default"]
23
- },
16
+ const __default__ = vue.defineComponent({
17
+ name: "ElCascaderMenu"
18
+ });
19
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
20
+ ...__default__,
24
21
  props: {
25
22
  nodes: {
26
23
  type: Array,
@@ -31,15 +28,16 @@ const _sfc_main = vue.defineComponent({
31
28
  required: true
32
29
  }
33
30
  },
34
- setup(props) {
31
+ setup(__props) {
32
+ const props = __props;
35
33
  const instance = vue.getCurrentInstance();
36
- const ns = index$2.useNamespace("cascader-menu");
37
- const { t } = index$3.useLocale();
38
- const id = index$4.useId();
39
- let activeNode = null;
40
- let hoverTimer = null;
34
+ const ns = index.useNamespace("cascader-menu");
35
+ const { t } = index$1.useLocale();
36
+ const id = index$2.useId();
37
+ let activeNode;
38
+ let hoverTimer;
41
39
  const panel = vue.inject(types.CASCADER_PANEL_INJECTION_KEY);
42
- const hoverZone = vue.ref(null);
40
+ const hoverZone = vue.ref();
43
41
  const isEmpty = vue.computed(() => !props.nodes.length);
44
42
  const isLoading = vue.computed(() => !panel.initialLoaded);
45
43
  const menuId = vue.computed(() => `${id.value}-${props.index}`);
@@ -69,7 +67,7 @@ const _sfc_main = vue.defineComponent({
69
67
  if (!hoverTimer)
70
68
  return;
71
69
  clearTimeout(hoverTimer);
72
- hoverTimer = null;
70
+ hoverTimer = void 0;
73
71
  };
74
72
  const clearHoverZone = () => {
75
73
  if (!hoverZone.value)
@@ -77,80 +75,65 @@ const _sfc_main = vue.defineComponent({
77
75
  hoverZone.value.innerHTML = "";
78
76
  clearHoverTimer();
79
77
  };
80
- return {
81
- ns,
82
- panel,
83
- hoverZone,
84
- isEmpty,
85
- isLoading,
86
- menuId,
87
- t,
88
- handleExpand,
89
- handleMouseMove,
90
- clearHoverZone
78
+ return (_ctx, _cache) => {
79
+ return vue.openBlock(), vue.createBlock(vue.unref(index$3.ElScrollbar), {
80
+ key: vue.unref(menuId),
81
+ tag: "ul",
82
+ role: "menu",
83
+ class: vue.normalizeClass(vue.unref(ns).b()),
84
+ "wrap-class": vue.unref(ns).e("wrap"),
85
+ "view-class": [vue.unref(ns).e("list"), vue.unref(ns).is("empty", vue.unref(isEmpty))],
86
+ onMousemove: handleMouseMove,
87
+ onMouseleave: clearHoverZone
88
+ }, {
89
+ default: vue.withCtx(() => {
90
+ var _a;
91
+ return [
92
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.nodes, (node$1) => {
93
+ return vue.openBlock(), vue.createBlock(node["default"], {
94
+ key: node$1.uid,
95
+ node: node$1,
96
+ "menu-id": vue.unref(menuId),
97
+ onExpand: handleExpand
98
+ }, null, 8, ["node", "menu-id"]);
99
+ }), 128)),
100
+ vue.unref(isLoading) ? (vue.openBlock(), vue.createElementBlock("div", {
101
+ key: 0,
102
+ class: vue.normalizeClass(vue.unref(ns).e("empty-text"))
103
+ }, [
104
+ vue.createVNode(vue.unref(index$4.ElIcon), {
105
+ size: "14",
106
+ class: vue.normalizeClass(vue.unref(ns).is("loading"))
107
+ }, {
108
+ default: vue.withCtx(() => [
109
+ vue.createVNode(vue.unref(iconsVue.Loading))
110
+ ]),
111
+ _: 1
112
+ }, 8, ["class"]),
113
+ vue.createTextVNode(" " + vue.toDisplayString(vue.unref(t)("el.cascader.loading")), 1)
114
+ ], 2)) : vue.unref(isEmpty) ? (vue.openBlock(), vue.createElementBlock("div", {
115
+ key: 1,
116
+ class: vue.normalizeClass(vue.unref(ns).e("empty-text"))
117
+ }, [
118
+ vue.renderSlot(_ctx.$slots, "empty", {}, () => [
119
+ vue.createTextVNode(vue.toDisplayString(vue.unref(t)("el.cascader.noData")), 1)
120
+ ])
121
+ ], 2)) : ((_a = vue.unref(panel)) == null ? void 0 : _a.isHoverMenu) ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 2 }, [
122
+ vue.createCommentVNode(" eslint-disable-next-line vue/html-self-closing "),
123
+ (vue.openBlock(), vue.createElementBlock("svg", {
124
+ ref_key: "hoverZone",
125
+ ref: hoverZone,
126
+ class: vue.normalizeClass(vue.unref(ns).e("hover-zone"))
127
+ }, null, 2))
128
+ ], 2112)) : vue.createCommentVNode("v-if", true)
129
+ ];
130
+ }),
131
+ _: 3
132
+ }, 8, ["class", "wrap-class", "view-class"]);
91
133
  };
92
134
  }
93
135
  });
94
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
95
- const _component_el_cascader_node = vue.resolveComponent("el-cascader-node");
96
- const _component_loading = vue.resolveComponent("loading");
97
- const _component_el_icon = vue.resolveComponent("el-icon");
98
- const _component_el_scrollbar = vue.resolveComponent("el-scrollbar");
99
- return vue.openBlock(), vue.createBlock(_component_el_scrollbar, {
100
- key: _ctx.menuId,
101
- tag: "ul",
102
- role: "menu",
103
- class: vue.normalizeClass(_ctx.ns.b()),
104
- "wrap-class": _ctx.ns.e("wrap"),
105
- "view-class": [_ctx.ns.e("list"), _ctx.ns.is("empty", _ctx.isEmpty)],
106
- onMousemove: _ctx.handleMouseMove,
107
- onMouseleave: _ctx.clearHoverZone
108
- }, {
109
- default: vue.withCtx(() => {
110
- var _a;
111
- return [
112
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.nodes, (node) => {
113
- return vue.openBlock(), vue.createBlock(_component_el_cascader_node, {
114
- key: node.uid,
115
- node,
116
- "menu-id": _ctx.menuId,
117
- onExpand: _ctx.handleExpand
118
- }, null, 8, ["node", "menu-id", "onExpand"]);
119
- }), 128)),
120
- _ctx.isLoading ? (vue.openBlock(), vue.createElementBlock("div", {
121
- key: 0,
122
- class: vue.normalizeClass(_ctx.ns.e("empty-text"))
123
- }, [
124
- vue.createVNode(_component_el_icon, {
125
- size: "14",
126
- class: vue.normalizeClass(_ctx.ns.is("loading"))
127
- }, {
128
- default: vue.withCtx(() => [
129
- vue.createVNode(_component_loading)
130
- ]),
131
- _: 1
132
- }, 8, ["class"]),
133
- vue.createTextVNode(" " + vue.toDisplayString(_ctx.t("el.cascader.loading")), 1)
134
- ], 2)) : _ctx.isEmpty ? (vue.openBlock(), vue.createElementBlock("div", {
135
- key: 1,
136
- class: vue.normalizeClass(_ctx.ns.e("empty-text"))
137
- }, [
138
- vue.renderSlot(_ctx.$slots, "empty", {}, () => [
139
- vue.createTextVNode(vue.toDisplayString(_ctx.t("el.cascader.noData")), 1)
140
- ])
141
- ], 2)) : ((_a = _ctx.panel) == null ? void 0 : _a.isHoverMenu) ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 2 }, [
142
- vue.createCommentVNode(" eslint-disable-next-line vue/html-self-closing "),
143
- (vue.openBlock(), vue.createElementBlock("svg", {
144
- ref: "hoverZone",
145
- class: vue.normalizeClass(_ctx.ns.e("hover-zone"))
146
- }, null, 2))
147
- ], 2112)) : vue.createCommentVNode("v-if", true)
148
- ];
149
- }),
150
- _: 3
151
- }, 8, ["class", "wrap-class", "view-class", "onMousemove", "onMouseleave"]);
152
- }
153
- var ElCascaderMenu = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["render", _sfc_render], ["__file", "menu.vue"]]);
136
+ var ElCascaderMenu = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "menu.vue"]]);
154
137
 
155
138
  exports["default"] = ElCascaderMenu;
156
139
  //# sourceMappingURL=menu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"menu.js","sources":["../../../../../../packages/components/cascader-panel/src/menu.vue"],"sourcesContent":["<template>\n <el-scrollbar\n :key=\"menuId\"\n tag=\"ul\"\n role=\"menu\"\n :class=\"ns.b()\"\n :wrap-class=\"ns.e('wrap')\"\n :view-class=\"[ns.e('list'), ns.is('empty', isEmpty)]\"\n @mousemove=\"handleMouseMove\"\n @mouseleave=\"clearHoverZone\"\n >\n <el-cascader-node\n v-for=\"node in nodes\"\n :key=\"node.uid\"\n :node=\"node\"\n :menu-id=\"menuId\"\n @expand=\"handleExpand\"\n />\n <div v-if=\"isLoading\" :class=\"ns.e('empty-text')\">\n <el-icon size=\"14\" :class=\"ns.is('loading')\">\n <loading />\n </el-icon>\n {{ t('el.cascader.loading') }}\n </div>\n <div v-else-if=\"isEmpty\" :class=\"ns.e('empty-text')\">\n <slot name=\"empty\">{{ t('el.cascader.noData') }}</slot>\n </div>\n <!-- eslint-disable-next-line vue/html-self-closing -->\n <svg\n v-else-if=\"panel?.isHoverMenu\"\n ref=\"hoverZone\"\n :class=\"ns.e('hover-zone')\"\n ></svg>\n </el-scrollbar>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, getCurrentInstance, inject, ref } from 'vue'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport { useId, useLocale, useNamespace } from '@element-plus/hooks'\nimport { Loading } from '@element-plus/icons-vue'\nimport ElIcon from '@element-plus/components/icon'\nimport ElCascaderNode from './node.vue'\nimport { CASCADER_PANEL_INJECTION_KEY } from './types'\n\nimport type { default as CascaderNode } from './node'\nimport type { PropType } from 'vue'\nimport type { Nullable } from '@element-plus/utils'\n\nexport default defineComponent({\n name: 'ElCascaderMenu',\n\n components: {\n Loading,\n ElIcon,\n ElScrollbar,\n ElCascaderNode,\n },\n\n props: {\n nodes: {\n type: Array as PropType<CascaderNode[]>,\n required: true,\n },\n index: {\n type: Number,\n required: true,\n },\n },\n\n setup(props) {\n const instance = getCurrentInstance()!\n const ns = useNamespace('cascader-menu')\n\n const { t } = useLocale()\n const id = useId()\n let activeNode: Nullable<HTMLElement> = null\n let hoverTimer: Nullable<number> = null\n\n const panel = inject(CASCADER_PANEL_INJECTION_KEY)!\n\n const hoverZone = ref<null | SVGSVGElement>(null)\n\n const isEmpty = computed(() => !props.nodes.length)\n const isLoading = computed(() => !panel.initialLoaded)\n const menuId = computed(() => `${id.value}-${props.index}`)\n\n const handleExpand = (e: MouseEvent) => {\n activeNode = e.target as HTMLElement\n }\n\n const handleMouseMove = (e: MouseEvent) => {\n if (!panel.isHoverMenu || !activeNode || !hoverZone.value) return\n\n if (activeNode.contains(e.target as HTMLElement)) {\n clearHoverTimer()\n\n const el = instance.vnode.el as HTMLElement\n const { left } = el.getBoundingClientRect()\n const { offsetWidth, offsetHeight } = el\n const startX = e.clientX - left\n const top = activeNode.offsetTop\n const bottom = top + activeNode.offsetHeight\n\n hoverZone.value.innerHTML = `\n <path style=\"pointer-events: auto;\" fill=\"transparent\" d=\"M${startX} ${top} L${offsetWidth} 0 V${top} Z\" />\n <path style=\"pointer-events: auto;\" fill=\"transparent\" d=\"M${startX} ${bottom} L${offsetWidth} ${offsetHeight} V${bottom} Z\" />\n `\n } else if (!hoverTimer) {\n hoverTimer = window.setTimeout(\n clearHoverZone,\n panel.config.hoverThreshold\n )\n }\n }\n\n const clearHoverTimer = () => {\n if (!hoverTimer) return\n clearTimeout(hoverTimer)\n hoverTimer = null\n }\n\n const clearHoverZone = () => {\n if (!hoverZone.value) return\n hoverZone.value.innerHTML = ''\n clearHoverTimer()\n }\n return {\n ns,\n panel,\n hoverZone,\n isEmpty,\n isLoading,\n menuId,\n t,\n handleExpand,\n handleMouseMove,\n clearHoverZone,\n }\n },\n})\n</script>\n"],"names":["defineComponent","Loading","ElIcon","ElScrollbar","ElCascaderNode","getCurrentInstance","useNamespace","useLocale","useId","inject","CASCADER_PANEL_INJECTION_KEY","ref","computed","_createBlock","_normalizeClass","_openBlock","_createElementBlock","_Fragment","_renderList","_createVNode","_withCtx","_createTextVNode","_toDisplayString","_createCommentVNode","_export_sfc"],"mappings":"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"}
1
+ {"version":3,"file":"menu.js","sources":["../../../../../../packages/components/cascader-panel/src/menu.vue"],"sourcesContent":["<template>\n <el-scrollbar\n :key=\"menuId\"\n tag=\"ul\"\n role=\"menu\"\n :class=\"ns.b()\"\n :wrap-class=\"ns.e('wrap')\"\n :view-class=\"[ns.e('list'), ns.is('empty', isEmpty)]\"\n @mousemove=\"handleMouseMove\"\n @mouseleave=\"clearHoverZone\"\n >\n <el-cascader-node\n v-for=\"node in nodes\"\n :key=\"node.uid\"\n :node=\"node\"\n :menu-id=\"menuId\"\n @expand=\"handleExpand\"\n />\n <div v-if=\"isLoading\" :class=\"ns.e('empty-text')\">\n <el-icon size=\"14\" :class=\"ns.is('loading')\">\n <loading />\n </el-icon>\n {{ t('el.cascader.loading') }}\n </div>\n <div v-else-if=\"isEmpty\" :class=\"ns.e('empty-text')\">\n <slot name=\"empty\">{{ t('el.cascader.noData') }}</slot>\n </div>\n <!-- eslint-disable-next-line vue/html-self-closing -->\n <svg\n v-else-if=\"panel?.isHoverMenu\"\n ref=\"hoverZone\"\n :class=\"ns.e('hover-zone')\"\n ></svg>\n </el-scrollbar>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, getCurrentInstance, inject, ref } from 'vue'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport { useId, useLocale, useNamespace } from '@element-plus/hooks'\nimport { Loading } from '@element-plus/icons-vue'\nimport ElIcon from '@element-plus/components/icon'\nimport ElCascaderNode from './node.vue'\nimport { CASCADER_PANEL_INJECTION_KEY } from './types'\n\nimport type { default as CascaderNode } from './node'\nimport type { PropType } from 'vue'\n\ndefineOptions({\n name: 'ElCascaderMenu',\n})\n\nconst props = defineProps({\n nodes: {\n type: Array as PropType<CascaderNode[]>,\n required: true,\n },\n index: {\n type: Number,\n required: true,\n },\n})\n\nconst instance = getCurrentInstance()!\nconst ns = useNamespace('cascader-menu')\n\nconst { t } = useLocale()\nconst id = useId()\nlet activeNode: HTMLElement\nlet hoverTimer: number | undefined\n\nconst panel = inject(CASCADER_PANEL_INJECTION_KEY)!\n\nconst hoverZone = ref<SVGSVGElement>()\n\nconst isEmpty = computed(() => !props.nodes.length)\nconst isLoading = computed(() => !panel.initialLoaded)\nconst menuId = computed(() => `${id.value}-${props.index}`)\n\nconst handleExpand = (e: MouseEvent) => {\n activeNode = e.target as HTMLElement\n}\n\nconst handleMouseMove = (e: MouseEvent) => {\n if (!panel.isHoverMenu || !activeNode || !hoverZone.value) return\n\n if (activeNode.contains(e.target as HTMLElement)) {\n clearHoverTimer()\n\n const el = instance.vnode.el as HTMLElement\n const { left } = el.getBoundingClientRect()\n const { offsetWidth, offsetHeight } = el\n const startX = e.clientX - left\n const top = activeNode.offsetTop\n const bottom = top + activeNode.offsetHeight\n\n hoverZone.value.innerHTML = `\n <path style=\"pointer-events: auto;\" fill=\"transparent\" d=\"M${startX} ${top} L${offsetWidth} 0 V${top} Z\" />\n <path style=\"pointer-events: auto;\" fill=\"transparent\" d=\"M${startX} ${bottom} L${offsetWidth} ${offsetHeight} V${bottom} Z\" />\n `\n } else if (!hoverTimer) {\n hoverTimer = window.setTimeout(clearHoverZone, panel.config.hoverThreshold)\n }\n}\n\nconst clearHoverTimer = () => {\n if (!hoverTimer) return\n clearTimeout(hoverTimer)\n hoverTimer = undefined\n}\n\nconst clearHoverZone = () => {\n if (!hoverZone.value) return\n hoverZone.value.innerHTML = ''\n clearHoverTimer()\n}\n</script>\n"],"names":["getCurrentInstance","useNamespace","useLocale","useId","inject","CASCADER_PANEL_INJECTION_KEY","ref","computed"],"mappings":";;;;;;;;;;;;;;;uCAgDc,CAAA;AAAA,EACZ,IAAM,EAAA,gBAAA;AACR,CAAA,CAAA,CAAA;;;;;;;;;;;;;;;AAaA,IAAA,MAAM,WAAWA,sBAAmB,EAAA,CAAA;AACpC,IAAM,MAAA,EAAA,GAAKC,mBAAa,eAAe,CAAA,CAAA;AAEvC,IAAM,MAAA,EAAE,CAAE,EAAA,GAAIC,iBAAU,EAAA,CAAA;AACxB,IAAA,MAAM,KAAKC,aAAM,EAAA,CAAA;AACjB,IAAI,IAAA,UAAA,CAAA;AACJ,IAAI,IAAA,UAAA,CAAA;AAEJ,IAAM,MAAA,KAAA,GAAQC,WAAOC,kCAA4B,CAAA,CAAA;AAEjD,IAAA,MAAM,YAAYC,OAAmB,EAAA,CAAA;AAErC,IAAA,MAAM,UAAUC,YAAS,CAAA,MAAM,CAAC,KAAA,CAAM,MAAM,MAAM,CAAA,CAAA;AAClD,IAAA,MAAM,SAAY,GAAAA,YAAA,CAAS,MAAM,CAAC,MAAM,aAAa,CAAA,CAAA;AACrD,IAAM,MAAA,MAAA,GAASA,aAAS,MAAM,CAAA,EAAG,GAAG,KAAK,CAAA,CAAA,EAAI,KAAM,CAAA,KAAK,CAAE,CAAA,CAAA,CAAA;AAE1D,IAAM,MAAA,YAAA,GAAe,CAAC,CAAkB,KAAA;AACtC,MAAA,UAAA,GAAa,CAAE,CAAA,MAAA,CAAA;AAAA,KACjB,CAAA;AAEA,IAAM,MAAA,eAAA,GAAkB,CAAC,CAAkB,KAAA;AACzC,MAAA,IAAI,CAAC,KAAM,CAAA,WAAA,IAAe,CAAC,UAAc,IAAA,CAAC,UAAU,KAAO;AAE3D,QAAA,OAAe;AACb,MAAgB,IAAA,UAAA,CAAA,QAAA,CAAA,CAAA,CAAA,MAAA,CAAA,EAAA;AAEhB,QAAM;AACN,QAAA,MAAM,EAAE,GAAA,QAAS,CAAG,KAAsB,CAAA,EAAA,CAAA;AAC1C,QAAM,MAAA,EAAE,IAAa,EAAA,GAAA,EAAA,CAAA,qBAAiB,EAAA,CAAA;AACtC,QAAM,MAAA,EAAA,WAAqB,EAAA,YAAA,EAAA,GAAA,EAAA,CAAA;AAC3B,QAAA,MAAM,MAAM,GAAW,CAAA,CAAA,OAAA,GAAA,IAAA,CAAA;AACvB,QAAM,MAAA,GAAA,GAAA,UAA0B,CAAA,SAAA,CAAA;AAEhC,QAAA,MAAA,YAA4B,GAAA,UAAA,CAAA,YAAA,CAAA;AAAA,QAAA,SAAA,CAAA,KAAA,CAAA,SAAA,GAAA,CAAA;AAC8E,qEACvC,EAAA,MAAM,IAAI,GAAM,CAAA,EAAA,EAAA,gBAAoB,EAAA,GAAA,CAAA;AAAuB,qEAAA,EAAA,MAAA,CAAA,CAAA,EAAA,MAAA,CAAA,EAAA,EAAA,WAAA,CAAA,CAAA,EAAA,YAAA,CAAA,EAAA,EAAA,MAAA,CAAA;AAAA,QAEhI,CAAA,CAAA;AACE,OAAA,MAAA,IAAA,CAAA,UAAoB,EAAA;AAAsD,QAC5E,UAAA,GAAA,MAAA,CAAA,UAAA,CAAA,cAAA,EAAA,KAAA,CAAA,MAAA,CAAA,cAAA,CAAA,CAAA;AAAA,OACF;AAEA,KAAA,CAAA;AACE,IAAA,MAAI,eAAa,GAAA,MAAA;AACjB,MAAA,IAAA,CAAA,UAAuB;AACvB,QAAa,OAAA;AAAA,MACf,YAAA,CAAA,UAAA,CAAA,CAAA;AAEA,MAAA;AACE,KAAI,CAAA;AACJ,IAAA,MAAA,cAA4B,GAAA,MAAA;AAC5B,MAAgB,IAAA,CAAA,SAAA,CAAA,KAAA;AAAA,QAClB,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,6 +1,9 @@
1
1
  import type { default as CascaderNode } from './node';
2
2
  import type { PropType } from 'vue';
3
- declare const _default: import("vue").DefineComponent<{
3
+ declare function __VLS_template(): {
4
+ empty?(_: {}): any;
5
+ };
6
+ declare const __VLS_component: import("vue").DefineComponent<{
4
7
  nodes: {
5
8
  type: PropType<CascaderNode[]>;
6
9
  required: true;
@@ -9,35 +12,7 @@ declare const _default: import("vue").DefineComponent<{
9
12
  type: NumberConstructor;
10
13
  required: true;
11
14
  };
12
- }, {
13
- ns: {
14
- namespace: import("vue").ComputedRef<string>;
15
- b: (blockSuffix?: string) => string;
16
- e: (element?: string) => string;
17
- m: (modifier?: string) => string;
18
- be: (blockSuffix?: string, element?: string) => string;
19
- em: (element?: string, modifier?: string) => string;
20
- bm: (blockSuffix?: string, modifier?: string) => string;
21
- bem: (blockSuffix?: string, element?: string, modifier?: string) => string;
22
- is: {
23
- (name: string, state: boolean | undefined): string;
24
- (name: string): string;
25
- };
26
- cssVar: (object: Record<string, string>) => Record<string, string>;
27
- cssVarName: (name: string) => string;
28
- cssVarBlock: (object: Record<string, string>) => Record<string, string>;
29
- cssVarBlockName: (name: string) => string;
30
- };
31
- panel: import("./types").ElCascaderPanelContext;
32
- hoverZone: import("vue").Ref<SVGSVGElement | null>;
33
- isEmpty: import("vue").ComputedRef<boolean>;
34
- isLoading: import("vue").ComputedRef<boolean>;
35
- menuId: import("vue").ComputedRef<string>;
36
- t: import("@element-plus/nightly/es/hooks").Translator;
37
- handleExpand: (e: MouseEvent) => void;
38
- handleMouseMove: (e: MouseEvent) => void;
39
- clearHoverZone: () => void;
40
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
15
+ }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
41
16
  nodes: {
42
17
  type: PropType<CascaderNode[]>;
43
18
  required: true;
@@ -47,4 +22,10 @@ declare const _default: import("vue").DefineComponent<{
47
22
  required: true;
48
23
  };
49
24
  }>>, {}>;
25
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
50
26
  export default _default;
27
+ type __VLS_WithTemplateSlots<T, S> = T & {
28
+ new (): {
29
+ $slots: S;
30
+ };
31
+ };
@@ -1,21 +1,16 @@
1
- declare const _default: import("vue").DefineComponent<{}, {
2
- ns: {
3
- namespace: import("vue").ComputedRef<string>;
4
- b: (blockSuffix?: string) => string;
5
- e: (element?: string) => string;
6
- m: (modifier?: string) => string;
7
- be: (blockSuffix?: string, element?: string) => string;
8
- em: (element?: string, modifier?: string) => string;
9
- bm: (blockSuffix?: string, modifier?: string) => string;
10
- bem: (blockSuffix?: string, element?: string, modifier?: string) => string;
11
- is: {
12
- (name: string, state: boolean | undefined): string;
13
- (name: string): string;
14
- };
15
- cssVar: (object: Record<string, string>) => Record<string, string>;
16
- cssVarName: (name: string) => string;
17
- cssVarBlock: (object: Record<string, string>) => Record<string, string>;
18
- cssVarBlockName: (name: string) => string;
1
+ import type { PropType } from 'vue';
2
+ import type { CascaderNode, RenderLabel } from './types';
3
+ declare const _default: import("vue").DefineComponent<{
4
+ node: {
5
+ type: PropType<CascaderNode>;
6
+ required: true;
19
7
  };
20
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
8
+ renderLabelFn: PropType<RenderLabel>;
9
+ }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
10
+ node: {
11
+ type: PropType<CascaderNode>;
12
+ required: true;
13
+ };
14
+ renderLabelFn: PropType<RenderLabel>;
15
+ }>>, {}>;
21
16
  export default _default;
@@ -4,31 +4,42 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var vue = require('vue');
6
6
  var index = require('../../../hooks/use-namespace/index.js');
7
+ var shared = require('@vue/shared');
7
8
 
8
9
  function isVNodeEmpty(vnodes) {
9
- return !!(vnodes == null ? void 0 : vnodes.every((vnode) => vnode.type === vue.Comment));
10
+ return !!(shared.isArray(vnodes) ? vnodes.every(({
11
+ type
12
+ }) => type === vue.Comment) : (vnodes == null ? void 0 : vnodes.type) === vue.Comment);
10
13
  }
11
14
  var NodeContent = vue.defineComponent({
12
15
  name: "NodeContent",
13
- setup() {
14
- const ns = index.useNamespace("cascader-node");
15
- return {
16
- ns
17
- };
16
+ props: {
17
+ node: {
18
+ type: Object,
19
+ required: true
20
+ },
21
+ renderLabelFn: Function
18
22
  },
19
- render() {
20
- const { ns } = this;
21
- const { node, panel } = this.$parent;
22
- const { data, label: nodeLabel } = node;
23
- const { renderLabelFn } = panel;
23
+ setup(props) {
24
+ const ns = index.useNamespace("cascader-node");
25
+ const {
26
+ renderLabelFn,
27
+ node
28
+ } = props;
29
+ const {
30
+ data,
31
+ label: nodeLabel
32
+ } = node;
24
33
  const label = () => {
25
- let renderLabel = renderLabelFn == null ? void 0 : renderLabelFn({ node, data });
26
- if (isVNodeEmpty(renderLabel)) {
27
- renderLabel = nodeLabel;
28
- }
29
- return renderLabel != null ? renderLabel : nodeLabel;
34
+ const renderLabel = renderLabelFn == null ? void 0 : renderLabelFn({
35
+ node,
36
+ data
37
+ });
38
+ return isVNodeEmpty(renderLabel) ? nodeLabel : renderLabel != null ? renderLabel : nodeLabel;
30
39
  };
31
- return vue.h("span", { class: ns.e("label") }, label());
40
+ return () => vue.createVNode("span", {
41
+ "class": ns.e("label")
42
+ }, [label()]);
32
43
  }
33
44
  });
34
45
 
@@ -1 +1 @@
1
- {"version":3,"file":"node-content.js","sources":["../../../../../../packages/components/cascader-panel/src/node-content.ts"],"sourcesContent":["// @ts-nocheck\nimport { Comment, defineComponent, h } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { VNode } from 'vue'\n\nfunction isVNodeEmpty(vnodes?: VNode[]) {\n return !!vnodes?.every((vnode) => vnode.type === Comment)\n}\n\nexport default defineComponent({\n name: 'NodeContent',\n setup() {\n const ns = useNamespace('cascader-node')\n return {\n ns,\n }\n },\n render() {\n const { ns } = this\n const { node, panel } = this.$parent\n const { data, label: nodeLabel } = node\n const { renderLabelFn } = panel\n const label = () => {\n let renderLabel = renderLabelFn?.({ node, data })\n if (isVNodeEmpty(renderLabel)) {\n renderLabel = nodeLabel\n }\n return renderLabel ?? nodeLabel\n }\n return h('span', { class: ns.e('label') }, label())\n },\n})\n"],"names":["Comment","defineComponent","useNamespace","h"],"mappings":";;;;;;;AAEA,SAAS,YAAY,CAAC,MAAM,EAAE;AAC9B,EAAE,OAAO,CAAC,EAAE,MAAM,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,IAAI,KAAKA,WAAO,CAAC,CAAC,CAAC;AACvF,CAAC;AACD,kBAAeC,mBAAe,CAAC;AAC/B,EAAE,IAAI,EAAE,aAAa;AACrB,EAAE,KAAK,GAAG;AACV,IAAI,MAAM,EAAE,GAAGC,kBAAY,CAAC,eAAe,CAAC,CAAC;AAC7C,IAAI,OAAO;AACX,MAAM,EAAE;AACR,KAAK,CAAC;AACN,GAAG;AACH,EAAE,MAAM,GAAG;AACX,IAAI,MAAM,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC;AACxB,IAAI,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;AACzC,IAAI,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;AAC5C,IAAI,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC;AACpC,IAAI,MAAM,KAAK,GAAG,MAAM;AACxB,MAAM,IAAI,WAAW,GAAG,aAAa,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,aAAa,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;AACvF,MAAM,IAAI,YAAY,CAAC,WAAW,CAAC,EAAE;AACrC,QAAQ,WAAW,GAAG,SAAS,CAAC;AAChC,OAAO;AACP,MAAM,OAAO,WAAW,IAAI,IAAI,GAAG,WAAW,GAAG,SAAS,CAAC;AAC3D,KAAK,CAAC;AACN,IAAI,OAAOC,KAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;AACxD,GAAG;AACH,CAAC,CAAC;;;;"}
1
+ {"version":3,"file":"node-content.js","sources":["../../../../../../packages/components/cascader-panel/src/node-content.tsx"],"sourcesContent":["import { Comment, defineComponent } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { isArray } from '@element-plus/utils'\n\nimport type { PropType, VNode } from 'vue'\nimport type { CascaderNode, RenderLabel } from './types'\n\nfunction isVNodeEmpty(vnodes?: VNode[] | VNode) {\n return !!(isArray(vnodes)\n ? vnodes.every(({ type }) => type === Comment)\n : vnodes?.type === Comment)\n}\n\nexport default defineComponent({\n name: 'NodeContent',\n props: {\n node: {\n type: Object as PropType<CascaderNode>,\n required: true,\n },\n renderLabelFn: Function as PropType<RenderLabel>,\n },\n setup(props) {\n const ns = useNamespace('cascader-node')\n const { renderLabelFn, node } = props\n const { data, label: nodeLabel } = node\n\n const label = () => {\n const renderLabel = renderLabelFn?.({ node, data })\n return isVNodeEmpty(renderLabel) ? nodeLabel : renderLabel ?? nodeLabel\n }\n\n return () => <span class={ns.e('label')}>{label()}</span>\n },\n})\n"],"names":["isVNodeEmpty","vnodes","type","defineComponent","name","props","node","required","renderLabelFn","useNamespace","ns","label","nodeLabel","renderLabel","data"],"mappings":";;;;;;;;;AAOA,EAASA,OAAAA,CAAAA,EAAAA,cAAAA,CAAAA,MAAaC,CAAAA,GAA0B,MAAA,CAAA,KAAA,CAAA,CAAA;IACvC,IAAA;AACaC,GAAAA,KAAAA,IAAAA,KAAAA,WAAAA,CAAAA,GAAAA,CAAAA,MAAAA,IAAAA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAAA,CAAAA,IAAAA,MAAAA,WAAAA,CAAAA,CAAAA;;AAErB,kBAAAC,mBAAA,CAAA;;AAED,EAAA,KAAA,EAAA;AACEC,IAAAA,IAAM,EADuB;AAE7BC,MAAAA,IAAO,EAAA,MAAA;AACLC,MAAAA,QAAM,EAAA,IAAA;AACJJ,KAAAA;AACAK,IAAAA,aAAU,EAAA,QAAA;;AAEZC,EAAAA,KAAAA,CAAAA,KAAAA,EAAAA;IAP2B,MAAA,EAAA,GAAAC,kBAAA,CAAA,eAAA,CAAA,CAAA;;MASxB,aAAQ;AACX,MAAA,IAAMC;KACA,GAAA,KAAA,CAAA;UAAA;AAAiBJ,MAAAA,IAAAA;AAAjB,MAAA,KAAN,EAAA,SAAA;KACM,GAAA,IAAA,CAAA;UAAA,KAAA,GAAA,MAAA;AAAQK,MAAAA,MAAOC,WAAAA,GAAAA,aAAAA,IAAAA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,aAAAA,CAAAA;AAAf,QAA6BN,IAAnC;;OAEMK,CAAAA,CAAAA;MACJ,OAAME,YAAcL,CAAAA,WAAAA,CAAAA,GAAgB,SAAA,GAAA,WAAA,IAAA,IAAA,GAAA,WAAA,GAAA,SAAA,CAAA;;AAAQM,IAAAA,OAAAA,MAAAA,eAAAA,CAAAA,MAAAA,EAAAA;AAAR,MAAA,OAApC,EAAA,EAAA,CAAA,CAAA,CAAA,OAAA,CAAA;OACOd,CAAAA,KAAAA,EAAAA,CAAAA,CAAAA,CAAAA;;;;;;"}
@@ -8,10 +8,11 @@ export type isDisabled = (data: CascaderOption, node: Node) => boolean;
8
8
  export type isLeaf = (data: CascaderOption, node: Node) => boolean;
9
9
  export type Resolve = (dataList?: CascaderOption[]) => void;
10
10
  export type LazyLoad = (node: Node, resolve: Resolve) => void;
11
- export type RenderLabel = ({ node: Node, data: CascaderOption, }: {
12
- node: any;
13
- data: any;
14
- }) => VNode | VNode[];
11
+ export interface RenderLabelProps {
12
+ node: Node;
13
+ data: CascaderOption;
14
+ }
15
+ export type RenderLabel = (props: RenderLabelProps) => VNode | VNode[];
15
16
  export interface CascaderOption extends Record<string, unknown> {
16
17
  label?: string;
17
18
  value?: CascaderNodeValue;
@@ -36,7 +37,7 @@ export interface CascaderProps {
36
37
  export type Nullable<T> = null | T;
37
38
  type ChildrenData = CascaderOption[] | undefined;
38
39
  declare class Node {
39
- readonly data: Nullable<CascaderOption>;
40
+ readonly data: CascaderOption;
40
41
  readonly config: CascaderConfig;
41
42
  readonly parent?: Node | undefined;
42
43
  readonly root: boolean;
@@ -69,14 +70,14 @@ declare class Node {
69
70
  * @default false
70
71
  */
71
72
  loading: boolean;
72
- constructor(data: Nullable<CascaderOption>, config: CascaderConfig, parent?: Node | undefined, root?: boolean);
73
+ constructor(data: CascaderOption, config: CascaderConfig, parent?: Node | undefined, root?: boolean);
73
74
  get isDisabled(): boolean;
74
75
  get isLeaf(): boolean;
75
76
  get valueByOption(): CascaderNodeValue | CascaderNodePathValue;
76
77
  appendChild(childData: CascaderOption): Node;
77
78
  calcText(allLevels: boolean, separator: string): string;
78
- broadcast(event: string, ...args: unknown[]): void;
79
- emit(event: string, ...args: unknown[]): void;
79
+ broadcast(checked: boolean): void;
80
+ emit(): void;
80
81
  onParentCheck(checked: boolean): void;
81
82
  onChildCheck(): void;
82
83
  setCheckState(checked: boolean): void;
@@ -2,7 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var strings = require('../../../utils/strings.js');
6
5
  var types = require('../../../utils/types.js');
7
6
  var shared = require('@vue/shared');
8
7
 
@@ -38,12 +37,13 @@ class Node {
38
37
  this.childrenData = childrenData;
39
38
  this.children = (childrenData || []).map((child) => new Node(child, config, this));
40
39
  this.loaded = !config.lazy || this.isLeaf || !types.isEmpty(childrenData);
40
+ this.text = "";
41
41
  }
42
42
  get isDisabled() {
43
43
  const { data, parent, config } = this;
44
44
  const { disabled, checkStrictly } = config;
45
45
  const isDisabled = shared.isFunction(disabled) ? disabled(data, this) : !!data[disabled];
46
- return isDisabled || !checkStrictly && (parent == null ? void 0 : parent.isDisabled);
46
+ return isDisabled || !checkStrictly && !!(parent == null ? void 0 : parent.isDisabled);
47
47
  }
48
48
  get isLeaf() {
49
49
  const { data, config, childrenData, loaded } = this;
@@ -70,21 +70,21 @@ class Node {
70
70
  this.text = text;
71
71
  return text;
72
72
  }
73
- broadcast(event, ...args) {
74
- const handlerName = `onParent${strings.capitalize(event)}`;
73
+ broadcast(checked) {
75
74
  this.children.forEach((child) => {
75
+ var _a;
76
76
  if (child) {
77
- child.broadcast(event, ...args);
78
- child[handlerName] && child[handlerName](...args);
77
+ child.broadcast(checked);
78
+ (_a = child.onParentCheck) == null ? void 0 : _a.call(child, checked);
79
79
  }
80
80
  });
81
81
  }
82
- emit(event, ...args) {
82
+ emit() {
83
+ var _a;
83
84
  const { parent } = this;
84
- const handlerName = `onChild${strings.capitalize(event)}`;
85
85
  if (parent) {
86
- parent[handlerName] && parent[handlerName](...args);
87
- parent.emit(event, ...args);
86
+ (_a = parent.onChildCheck) == null ? void 0 : _a.call(parent);
87
+ parent.emit();
88
88
  }
89
89
  }
90
90
  onParentCheck(checked) {
@@ -114,9 +114,9 @@ class Node {
114
114
  if (checkStrictly || !multiple) {
115
115
  this.checked = checked;
116
116
  } else {
117
- this.broadcast("check", checked);
117
+ this.broadcast(checked);
118
118
  this.setCheckState(checked);
119
- this.emit("check");
119
+ this.emit();
120
120
  }
121
121
  }
122
122
  }
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sources":["../../../../../../packages/components/cascader-panel/src/node.ts"],"sourcesContent":["// @ts-nocheck\nimport {\n capitalize,\n isArray,\n isEmpty,\n isFunction,\n isUndefined,\n} 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 type RenderLabel = ({\n node: Node,\n data: CascaderOption,\n}) => 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}\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: Nullable<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 }\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(event: string, ...args: unknown[]) {\n const handlerName = `onParent${capitalize(event)}`\n this.children.forEach((child) => {\n if (child) {\n // bottom up\n child.broadcast(event, ...args)\n child[handlerName] && child[handlerName](...args)\n }\n })\n }\n\n emit(event: string, ...args: unknown[]) {\n const { parent } = this\n const handlerName = `onChild${capitalize(event)}`\n if (parent) {\n parent[handlerName] && parent[handlerName](...args)\n parent.emit(event, ...args)\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('check', checked)\n this.setCheckState(checked)\n this.emit('check')\n }\n }\n}\n\nexport default Node\n"],"names":["isEmpty","isFunction","isUndefined","isArray","capitalize"],"mappings":"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"}
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}\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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"}