@element-plus/nightly 0.0.20240901 → 0.0.20240903

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 (378) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +67 -50
  3. package/dist/index.full.min.js +12 -12
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +11 -11
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +67 -50
  8. package/dist/locale/af.js +1 -1
  9. package/dist/locale/af.min.js +1 -1
  10. package/dist/locale/af.min.mjs +1 -1
  11. package/dist/locale/af.mjs +1 -1
  12. package/dist/locale/ar-eg.js +1 -1
  13. package/dist/locale/ar-eg.min.js +1 -1
  14. package/dist/locale/ar-eg.min.mjs +1 -1
  15. package/dist/locale/ar-eg.mjs +1 -1
  16. package/dist/locale/ar.js +1 -1
  17. package/dist/locale/ar.min.js +1 -1
  18. package/dist/locale/ar.min.mjs +1 -1
  19. package/dist/locale/ar.mjs +1 -1
  20. package/dist/locale/az.js +1 -1
  21. package/dist/locale/az.min.js +1 -1
  22. package/dist/locale/az.min.mjs +1 -1
  23. package/dist/locale/az.mjs +1 -1
  24. package/dist/locale/bg.js +1 -1
  25. package/dist/locale/bg.min.js +1 -1
  26. package/dist/locale/bg.min.mjs +1 -1
  27. package/dist/locale/bg.mjs +1 -1
  28. package/dist/locale/bn.js +1 -1
  29. package/dist/locale/bn.min.js +1 -1
  30. package/dist/locale/bn.min.mjs +1 -1
  31. package/dist/locale/bn.mjs +1 -1
  32. package/dist/locale/ca.js +1 -1
  33. package/dist/locale/ca.min.js +1 -1
  34. package/dist/locale/ca.min.mjs +1 -1
  35. package/dist/locale/ca.mjs +1 -1
  36. package/dist/locale/ckb.js +1 -1
  37. package/dist/locale/ckb.min.js +1 -1
  38. package/dist/locale/ckb.min.mjs +1 -1
  39. package/dist/locale/ckb.mjs +1 -1
  40. package/dist/locale/cs.js +1 -1
  41. package/dist/locale/cs.min.js +1 -1
  42. package/dist/locale/cs.min.mjs +1 -1
  43. package/dist/locale/cs.mjs +1 -1
  44. package/dist/locale/da.js +1 -1
  45. package/dist/locale/da.min.js +1 -1
  46. package/dist/locale/da.min.mjs +1 -1
  47. package/dist/locale/da.mjs +1 -1
  48. package/dist/locale/de.js +1 -1
  49. package/dist/locale/de.min.js +1 -1
  50. package/dist/locale/de.min.mjs +1 -1
  51. package/dist/locale/de.mjs +1 -1
  52. package/dist/locale/el.js +1 -1
  53. package/dist/locale/el.min.js +1 -1
  54. package/dist/locale/el.min.mjs +1 -1
  55. package/dist/locale/el.mjs +1 -1
  56. package/dist/locale/en.js +1 -1
  57. package/dist/locale/en.min.js +1 -1
  58. package/dist/locale/en.min.mjs +1 -1
  59. package/dist/locale/en.mjs +1 -1
  60. package/dist/locale/eo.js +1 -1
  61. package/dist/locale/eo.min.js +1 -1
  62. package/dist/locale/eo.min.mjs +1 -1
  63. package/dist/locale/eo.mjs +1 -1
  64. package/dist/locale/es.js +1 -1
  65. package/dist/locale/es.min.js +1 -1
  66. package/dist/locale/es.min.mjs +1 -1
  67. package/dist/locale/es.mjs +1 -1
  68. package/dist/locale/et.js +1 -1
  69. package/dist/locale/et.min.js +1 -1
  70. package/dist/locale/et.min.mjs +1 -1
  71. package/dist/locale/et.mjs +1 -1
  72. package/dist/locale/eu.js +1 -1
  73. package/dist/locale/eu.min.js +1 -1
  74. package/dist/locale/eu.min.mjs +1 -1
  75. package/dist/locale/eu.mjs +1 -1
  76. package/dist/locale/fa.js +1 -1
  77. package/dist/locale/fa.min.js +1 -1
  78. package/dist/locale/fa.min.mjs +1 -1
  79. package/dist/locale/fa.mjs +1 -1
  80. package/dist/locale/fi.js +1 -1
  81. package/dist/locale/fi.min.js +1 -1
  82. package/dist/locale/fi.min.mjs +1 -1
  83. package/dist/locale/fi.mjs +1 -1
  84. package/dist/locale/fr.js +1 -1
  85. package/dist/locale/fr.min.js +1 -1
  86. package/dist/locale/fr.min.mjs +1 -1
  87. package/dist/locale/fr.mjs +1 -1
  88. package/dist/locale/he.js +1 -1
  89. package/dist/locale/he.min.js +1 -1
  90. package/dist/locale/he.min.mjs +1 -1
  91. package/dist/locale/he.mjs +1 -1
  92. package/dist/locale/hr.js +1 -1
  93. package/dist/locale/hr.min.js +1 -1
  94. package/dist/locale/hr.min.mjs +1 -1
  95. package/dist/locale/hr.mjs +1 -1
  96. package/dist/locale/hu.js +1 -1
  97. package/dist/locale/hu.min.js +1 -1
  98. package/dist/locale/hu.min.mjs +1 -1
  99. package/dist/locale/hu.mjs +1 -1
  100. package/dist/locale/hy-am.js +1 -1
  101. package/dist/locale/hy-am.min.js +1 -1
  102. package/dist/locale/hy-am.min.mjs +1 -1
  103. package/dist/locale/hy-am.mjs +1 -1
  104. package/dist/locale/id.js +1 -1
  105. package/dist/locale/id.min.js +1 -1
  106. package/dist/locale/id.min.mjs +1 -1
  107. package/dist/locale/id.mjs +1 -1
  108. package/dist/locale/it.js +1 -1
  109. package/dist/locale/it.min.js +1 -1
  110. package/dist/locale/it.min.mjs +1 -1
  111. package/dist/locale/it.mjs +1 -1
  112. package/dist/locale/ja.js +1 -1
  113. package/dist/locale/ja.min.js +1 -1
  114. package/dist/locale/ja.min.mjs +1 -1
  115. package/dist/locale/ja.mjs +1 -1
  116. package/dist/locale/kk.js +1 -1
  117. package/dist/locale/kk.min.js +1 -1
  118. package/dist/locale/kk.min.mjs +1 -1
  119. package/dist/locale/kk.mjs +1 -1
  120. package/dist/locale/km.js +1 -1
  121. package/dist/locale/km.min.js +1 -1
  122. package/dist/locale/km.min.mjs +1 -1
  123. package/dist/locale/km.mjs +1 -1
  124. package/dist/locale/ko.js +1 -1
  125. package/dist/locale/ko.min.js +1 -1
  126. package/dist/locale/ko.min.mjs +1 -1
  127. package/dist/locale/ko.mjs +1 -1
  128. package/dist/locale/ku.js +1 -1
  129. package/dist/locale/ku.min.js +1 -1
  130. package/dist/locale/ku.min.mjs +1 -1
  131. package/dist/locale/ku.mjs +1 -1
  132. package/dist/locale/ky.js +1 -1
  133. package/dist/locale/ky.min.js +1 -1
  134. package/dist/locale/ky.min.mjs +1 -1
  135. package/dist/locale/ky.mjs +1 -1
  136. package/dist/locale/lt.js +1 -1
  137. package/dist/locale/lt.min.js +1 -1
  138. package/dist/locale/lt.min.mjs +1 -1
  139. package/dist/locale/lt.mjs +1 -1
  140. package/dist/locale/lv.js +1 -1
  141. package/dist/locale/lv.min.js +1 -1
  142. package/dist/locale/lv.min.mjs +1 -1
  143. package/dist/locale/lv.mjs +1 -1
  144. package/dist/locale/mg.js +1 -1
  145. package/dist/locale/mg.min.js +1 -1
  146. package/dist/locale/mg.min.mjs +1 -1
  147. package/dist/locale/mg.mjs +1 -1
  148. package/dist/locale/mn.js +1 -1
  149. package/dist/locale/mn.min.js +1 -1
  150. package/dist/locale/mn.min.mjs +1 -1
  151. package/dist/locale/mn.mjs +1 -1
  152. package/dist/locale/my.js +1 -1
  153. package/dist/locale/my.min.js +1 -1
  154. package/dist/locale/my.min.mjs +1 -1
  155. package/dist/locale/my.mjs +1 -1
  156. package/dist/locale/nb-no.js +1 -1
  157. package/dist/locale/nb-no.min.js +1 -1
  158. package/dist/locale/nb-no.min.mjs +1 -1
  159. package/dist/locale/nb-no.mjs +1 -1
  160. package/dist/locale/nl.js +1 -1
  161. package/dist/locale/nl.min.js +1 -1
  162. package/dist/locale/nl.min.mjs +1 -1
  163. package/dist/locale/nl.mjs +1 -1
  164. package/dist/locale/pa.js +1 -1
  165. package/dist/locale/pa.min.js +1 -1
  166. package/dist/locale/pa.min.mjs +1 -1
  167. package/dist/locale/pa.mjs +1 -1
  168. package/dist/locale/pl.js +1 -1
  169. package/dist/locale/pl.min.js +1 -1
  170. package/dist/locale/pl.min.mjs +1 -1
  171. package/dist/locale/pl.mjs +1 -1
  172. package/dist/locale/pt-br.js +1 -1
  173. package/dist/locale/pt-br.min.js +1 -1
  174. package/dist/locale/pt-br.min.mjs +1 -1
  175. package/dist/locale/pt-br.mjs +1 -1
  176. package/dist/locale/pt.js +1 -1
  177. package/dist/locale/pt.min.js +1 -1
  178. package/dist/locale/pt.min.mjs +1 -1
  179. package/dist/locale/pt.mjs +1 -1
  180. package/dist/locale/ro.js +1 -1
  181. package/dist/locale/ro.min.js +1 -1
  182. package/dist/locale/ro.min.mjs +1 -1
  183. package/dist/locale/ro.mjs +1 -1
  184. package/dist/locale/ru.js +1 -1
  185. package/dist/locale/ru.min.js +1 -1
  186. package/dist/locale/ru.min.mjs +1 -1
  187. package/dist/locale/ru.mjs +1 -1
  188. package/dist/locale/sk.js +1 -1
  189. package/dist/locale/sk.min.js +1 -1
  190. package/dist/locale/sk.min.mjs +1 -1
  191. package/dist/locale/sk.mjs +1 -1
  192. package/dist/locale/sl.js +1 -1
  193. package/dist/locale/sl.min.js +1 -1
  194. package/dist/locale/sl.min.mjs +1 -1
  195. package/dist/locale/sl.mjs +1 -1
  196. package/dist/locale/sr.js +1 -1
  197. package/dist/locale/sr.min.js +1 -1
  198. package/dist/locale/sr.min.mjs +1 -1
  199. package/dist/locale/sr.mjs +1 -1
  200. package/dist/locale/sv.js +1 -1
  201. package/dist/locale/sv.min.js +1 -1
  202. package/dist/locale/sv.min.mjs +1 -1
  203. package/dist/locale/sv.mjs +1 -1
  204. package/dist/locale/sw.js +1 -1
  205. package/dist/locale/sw.min.js +1 -1
  206. package/dist/locale/sw.min.mjs +1 -1
  207. package/dist/locale/sw.mjs +1 -1
  208. package/dist/locale/ta.js +1 -1
  209. package/dist/locale/ta.min.js +1 -1
  210. package/dist/locale/ta.min.mjs +1 -1
  211. package/dist/locale/ta.mjs +1 -1
  212. package/dist/locale/th.js +1 -1
  213. package/dist/locale/th.min.js +1 -1
  214. package/dist/locale/th.min.mjs +1 -1
  215. package/dist/locale/th.mjs +1 -1
  216. package/dist/locale/tk.js +1 -1
  217. package/dist/locale/tk.min.js +1 -1
  218. package/dist/locale/tk.min.mjs +1 -1
  219. package/dist/locale/tk.mjs +1 -1
  220. package/dist/locale/tr.js +1 -1
  221. package/dist/locale/tr.min.js +1 -1
  222. package/dist/locale/tr.min.mjs +1 -1
  223. package/dist/locale/tr.mjs +1 -1
  224. package/dist/locale/ug-cn.js +1 -1
  225. package/dist/locale/ug-cn.min.js +1 -1
  226. package/dist/locale/ug-cn.min.mjs +1 -1
  227. package/dist/locale/ug-cn.mjs +1 -1
  228. package/dist/locale/uk.js +1 -1
  229. package/dist/locale/uk.min.js +1 -1
  230. package/dist/locale/uk.min.mjs +1 -1
  231. package/dist/locale/uk.mjs +1 -1
  232. package/dist/locale/uz-uz.js +1 -1
  233. package/dist/locale/uz-uz.min.js +1 -1
  234. package/dist/locale/uz-uz.min.mjs +1 -1
  235. package/dist/locale/uz-uz.mjs +1 -1
  236. package/dist/locale/vi.js +1 -1
  237. package/dist/locale/vi.min.js +1 -1
  238. package/dist/locale/vi.min.mjs +1 -1
  239. package/dist/locale/vi.mjs +1 -1
  240. package/dist/locale/zh-cn.js +1 -1
  241. package/dist/locale/zh-cn.min.js +1 -1
  242. package/dist/locale/zh-cn.min.mjs +1 -1
  243. package/dist/locale/zh-cn.mjs +1 -1
  244. package/dist/locale/zh-tw.js +1 -1
  245. package/dist/locale/zh-tw.min.js +1 -1
  246. package/dist/locale/zh-tw.min.mjs +1 -1
  247. package/dist/locale/zh-tw.mjs +1 -1
  248. package/es/components/backtop/index.mjs +2 -2
  249. package/es/components/backtop/src/backtop.mjs +21 -54
  250. package/es/components/backtop/src/backtop.mjs.map +1 -1
  251. package/es/components/backtop/src/backtop2.mjs +54 -21
  252. package/es/components/backtop/src/backtop2.mjs.map +1 -1
  253. package/es/components/calendar/src/use-calendar.mjs +2 -1
  254. package/es/components/calendar/src/use-calendar.mjs.map +1 -1
  255. package/es/components/cascader/index.mjs +2 -2
  256. package/es/components/cascader/src/cascader.mjs +621 -83
  257. package/es/components/cascader/src/cascader.mjs.map +1 -1
  258. package/es/components/cascader/src/cascader2.mjs +83 -621
  259. package/es/components/cascader/src/cascader2.mjs.map +1 -1
  260. package/es/components/cascader-panel/src/index.mjs +1 -1
  261. package/es/components/cascader-panel/src/menu.mjs +1 -1
  262. package/es/components/cascader-panel/src/node.mjs +207 -116
  263. package/es/components/cascader-panel/src/node.mjs.map +1 -1
  264. package/es/components/cascader-panel/src/node2.mjs +116 -207
  265. package/es/components/cascader-panel/src/node2.mjs.map +1 -1
  266. package/es/components/cascader-panel/src/store.mjs +1 -1
  267. package/es/components/dialog/src/dialog.d.ts +2 -0
  268. package/es/components/dialog/src/dialog.mjs.map +1 -1
  269. package/es/components/dialog/src/dialog.vue.d.ts +2 -2
  270. package/es/components/drawer/src/drawer.vue.d.ts +2 -2
  271. package/es/components/index.mjs +4 -4
  272. package/es/components/input-number/index.mjs +2 -2
  273. package/es/components/input-number/src/input-number.mjs +329 -60
  274. package/es/components/input-number/src/input-number.mjs.map +1 -1
  275. package/es/components/input-number/src/input-number2.mjs +60 -329
  276. package/es/components/input-number/src/input-number2.mjs.map +1 -1
  277. package/es/components/mention/src/mention2.mjs +7 -3
  278. package/es/components/mention/src/mention2.mjs.map +1 -1
  279. package/es/components/select/src/select.vue.d.ts +288 -287
  280. package/es/components/select/src/select2.mjs +19 -4
  281. package/es/components/select/src/select2.mjs.map +1 -1
  282. package/es/components/select/src/useSelect.d.ts +1 -1
  283. package/es/components/select/src/useSelect.mjs +5 -7
  284. package/es/components/select/src/useSelect.mjs.map +1 -1
  285. package/es/components/select-v2/src/select.vue.d.ts +1 -1
  286. package/es/components/select-v2/src/useSelect.d.ts +1 -1
  287. package/es/components/select-v2/src/useSelect.mjs +2 -5
  288. package/es/components/select-v2/src/useSelect.mjs.map +1 -1
  289. package/es/components/switch/index.mjs +2 -2
  290. package/es/components/switch/src/switch.mjs +72 -229
  291. package/es/components/switch/src/switch.mjs.map +1 -1
  292. package/es/components/switch/src/switch2.mjs +229 -72
  293. package/es/components/switch/src/switch2.mjs.map +1 -1
  294. package/es/components/table-v2/src/components/header-row.mjs.map +1 -1
  295. package/es/components/table-v2/src/components/row.mjs.map +1 -1
  296. package/es/components/table-v2/src/composables/use-columns.d.ts +115 -7
  297. package/es/components/table-v2/src/composables/use-columns.mjs +11 -5
  298. package/es/components/table-v2/src/composables/use-columns.mjs.map +1 -1
  299. package/es/components/table-v2/src/renderers/header-cell.mjs.map +1 -1
  300. package/es/components/table-v2/src/types.d.ts +1 -0
  301. package/es/components/table-v2/src/use-table.d.ts +58 -4
  302. package/es/components/tree-v2/src/composables/useTree.mjs +24 -23
  303. package/es/components/tree-v2/src/composables/useTree.mjs.map +1 -1
  304. package/es/hooks/use-popper-container/index.mjs +1 -1
  305. package/es/hooks/use-popper-container/index.mjs.map +1 -1
  306. package/es/index.mjs +4 -4
  307. package/es/version.d.ts +1 -1
  308. package/es/version.mjs +1 -1
  309. package/es/version.mjs.map +1 -1
  310. package/global.d.ts +1 -1
  311. package/lib/components/backtop/index.js +2 -2
  312. package/lib/components/backtop/src/backtop.js +22 -54
  313. package/lib/components/backtop/src/backtop.js.map +1 -1
  314. package/lib/components/backtop/src/backtop2.js +54 -22
  315. package/lib/components/backtop/src/backtop2.js.map +1 -1
  316. package/lib/components/calendar/src/use-calendar.js +2 -1
  317. package/lib/components/calendar/src/use-calendar.js.map +1 -1
  318. package/lib/components/cascader/index.js +2 -2
  319. package/lib/components/cascader/src/cascader.js +621 -84
  320. package/lib/components/cascader/src/cascader.js.map +1 -1
  321. package/lib/components/cascader/src/cascader2.js +84 -621
  322. package/lib/components/cascader/src/cascader2.js.map +1 -1
  323. package/lib/components/cascader-panel/src/index.js +1 -1
  324. package/lib/components/cascader-panel/src/menu.js +1 -1
  325. package/lib/components/cascader-panel/src/node.js +207 -116
  326. package/lib/components/cascader-panel/src/node.js.map +1 -1
  327. package/lib/components/cascader-panel/src/node2.js +116 -207
  328. package/lib/components/cascader-panel/src/node2.js.map +1 -1
  329. package/lib/components/cascader-panel/src/store.js +1 -1
  330. package/lib/components/dialog/src/dialog.d.ts +2 -0
  331. package/lib/components/dialog/src/dialog.js.map +1 -1
  332. package/lib/components/dialog/src/dialog.vue.d.ts +2 -2
  333. package/lib/components/drawer/src/drawer.vue.d.ts +2 -2
  334. package/lib/components/index.js +4 -4
  335. package/lib/components/input-number/index.js +2 -2
  336. package/lib/components/input-number/src/input-number.js +327 -59
  337. package/lib/components/input-number/src/input-number.js.map +1 -1
  338. package/lib/components/input-number/src/input-number2.js +59 -327
  339. package/lib/components/input-number/src/input-number2.js.map +1 -1
  340. package/lib/components/mention/src/mention2.js +7 -3
  341. package/lib/components/mention/src/mention2.js.map +1 -1
  342. package/lib/components/select/src/select.vue.d.ts +288 -287
  343. package/lib/components/select/src/select2.js +18 -3
  344. package/lib/components/select/src/select2.js.map +1 -1
  345. package/lib/components/select/src/useSelect.d.ts +1 -1
  346. package/lib/components/select/src/useSelect.js +5 -7
  347. package/lib/components/select/src/useSelect.js.map +1 -1
  348. package/lib/components/select-v2/src/select.vue.d.ts +1 -1
  349. package/lib/components/select-v2/src/useSelect.d.ts +1 -1
  350. package/lib/components/select-v2/src/useSelect.js +2 -5
  351. package/lib/components/select-v2/src/useSelect.js.map +1 -1
  352. package/lib/components/switch/index.js +2 -2
  353. package/lib/components/switch/src/switch.js +72 -228
  354. package/lib/components/switch/src/switch.js.map +1 -1
  355. package/lib/components/switch/src/switch2.js +228 -72
  356. package/lib/components/switch/src/switch2.js.map +1 -1
  357. package/lib/components/table-v2/src/components/header-row.js.map +1 -1
  358. package/lib/components/table-v2/src/components/row.js.map +1 -1
  359. package/lib/components/table-v2/src/composables/use-columns.d.ts +115 -7
  360. package/lib/components/table-v2/src/composables/use-columns.js +11 -5
  361. package/lib/components/table-v2/src/composables/use-columns.js.map +1 -1
  362. package/lib/components/table-v2/src/renderers/header-cell.js.map +1 -1
  363. package/lib/components/table-v2/src/types.d.ts +1 -0
  364. package/lib/components/table-v2/src/use-table.d.ts +58 -4
  365. package/lib/components/tree-v2/src/composables/useTree.js +24 -23
  366. package/lib/components/tree-v2/src/composables/useTree.js.map +1 -1
  367. package/lib/hooks/use-popper-container/index.js +1 -1
  368. package/lib/hooks/use-popper-container/index.js.map +1 -1
  369. package/lib/index.js +4 -4
  370. package/lib/version.d.ts +1 -1
  371. package/lib/version.js +1 -1
  372. package/lib/version.js.map +1 -1
  373. package/package.json +2 -2
  374. package/theme-chalk/el-select-v2.css +1 -1
  375. package/theme-chalk/el-select.css +1 -1
  376. package/theme-chalk/index.css +1 -1
  377. package/theme-chalk/src/select.scss +1 -4
  378. package/web-types.json +1 -1
@@ -1,213 +1,122 @@
1
- import { defineComponent, inject, computed, resolveComponent, openBlock, createElementBlock, normalizeClass, createCommentVNode, createBlock, withModifiers, withCtx, createElementVNode, createVNode, Fragment } from 'vue';
2
- import { ElCheckbox } from '../../checkbox/index.mjs';
3
- import { ElRadio } from '../../radio/index.mjs';
4
- import { ElIcon } from '../../icon/index.mjs';
5
- import '../../../hooks/index.mjs';
6
- import { Check, Loading, ArrowRight } from '@element-plus/icons-vue';
7
- import NodeContent from './node-content.mjs';
8
- import { CASCADER_PANEL_INJECTION_KEY } from './types.mjs';
9
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
10
- import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
1
+ import '../../../utils/index.mjs';
2
+ import { isEmpty, isUndefined } from '../../../utils/types.mjs';
3
+ import { isFunction } from '@vue/shared';
4
+ import { capitalize } from '../../../utils/strings.mjs';
11
5
 
12
- const _sfc_main = defineComponent({
13
- name: "ElCascaderNode",
14
- components: {
15
- ElCheckbox,
16
- ElRadio,
17
- NodeContent,
18
- ElIcon,
19
- Check,
20
- Loading,
21
- ArrowRight
22
- },
23
- props: {
24
- node: {
25
- type: Object,
26
- required: true
27
- },
28
- menuId: String
29
- },
30
- emits: ["expand"],
31
- setup(props, { emit }) {
32
- const panel = inject(CASCADER_PANEL_INJECTION_KEY);
33
- const ns = useNamespace("cascader-node");
34
- const isHoverMenu = computed(() => panel.isHoverMenu);
35
- const multiple = computed(() => panel.config.multiple);
36
- const checkStrictly = computed(() => panel.config.checkStrictly);
37
- const checkedNodeId = computed(() => {
38
- var _a;
39
- return (_a = panel.checkedNodes[0]) == null ? void 0 : _a.uid;
40
- });
41
- const isDisabled = computed(() => props.node.isDisabled);
42
- const isLeaf = computed(() => props.node.isLeaf);
43
- const expandable = computed(() => checkStrictly.value && !isLeaf.value || !isDisabled.value);
44
- const inExpandingPath = computed(() => isInPath(panel.expandingNode));
45
- const inCheckedPath = computed(() => checkStrictly.value && panel.checkedNodes.some(isInPath));
46
- const isInPath = (node) => {
47
- var _a;
48
- const { level, uid } = props.node;
49
- return ((_a = node == null ? void 0 : node.pathNodes[level - 1]) == null ? void 0 : _a.uid) === uid;
50
- };
51
- const doExpand = () => {
52
- if (inExpandingPath.value)
53
- return;
54
- panel.expandNode(props.node);
55
- };
56
- const doCheck = (checked) => {
57
- const { node } = props;
58
- if (checked === node.checked)
59
- return;
60
- panel.handleCheckChange(node, checked);
61
- };
62
- const doLoad = () => {
63
- panel.lazyLoad(props.node, () => {
64
- if (!isLeaf.value)
65
- doExpand();
66
- });
67
- };
68
- const handleHoverExpand = (e) => {
69
- if (!isHoverMenu.value)
70
- return;
71
- handleExpand();
72
- !isLeaf.value && emit("expand", e);
73
- };
74
- const handleExpand = () => {
75
- const { node } = props;
76
- if (!expandable.value || node.loading)
77
- return;
78
- node.loaded ? doExpand() : doLoad();
79
- };
80
- const handleClick = () => {
81
- if (isHoverMenu.value && !isLeaf.value)
82
- return;
83
- if (isLeaf.value && !isDisabled.value && !checkStrictly.value && !multiple.value) {
84
- handleCheck(true);
85
- } else {
86
- handleExpand();
87
- }
88
- };
89
- const handleSelectCheck = (checked) => {
90
- if (checkStrictly.value) {
91
- doCheck(checked);
92
- if (props.node.loaded) {
93
- doExpand();
94
- }
95
- } else {
96
- handleCheck(checked);
97
- }
98
- };
99
- const handleCheck = (checked) => {
100
- if (!props.node.loaded) {
101
- doLoad();
102
- } else {
103
- doCheck(checked);
104
- !checkStrictly.value && doExpand();
6
+ let uid = 0;
7
+ const calculatePathNodes = (node) => {
8
+ const nodes = [node];
9
+ let { parent } = node;
10
+ while (parent) {
11
+ nodes.unshift(parent);
12
+ parent = parent.parent;
13
+ }
14
+ return nodes;
15
+ };
16
+ class Node {
17
+ constructor(data, config, parent, root = false) {
18
+ this.data = data;
19
+ this.config = config;
20
+ this.parent = parent;
21
+ this.root = root;
22
+ this.uid = uid++;
23
+ this.checked = false;
24
+ this.indeterminate = false;
25
+ this.loading = false;
26
+ const { value: valueKey, label: labelKey, children: childrenKey } = config;
27
+ const childrenData = data[childrenKey];
28
+ const pathNodes = calculatePathNodes(this);
29
+ this.level = root ? 0 : parent ? parent.level + 1 : 1;
30
+ this.value = data[valueKey];
31
+ this.label = data[labelKey];
32
+ this.pathNodes = pathNodes;
33
+ this.pathValues = pathNodes.map((node) => node.value);
34
+ this.pathLabels = pathNodes.map((node) => node.label);
35
+ this.childrenData = childrenData;
36
+ this.children = (childrenData || []).map((child) => new Node(child, config, this));
37
+ this.loaded = !config.lazy || this.isLeaf || !isEmpty(childrenData);
38
+ }
39
+ get isDisabled() {
40
+ const { data, parent, config } = this;
41
+ const { disabled, checkStrictly } = config;
42
+ const isDisabled = isFunction(disabled) ? disabled(data, this) : !!data[disabled];
43
+ return isDisabled || !checkStrictly && (parent == null ? void 0 : parent.isDisabled);
44
+ }
45
+ get isLeaf() {
46
+ const { data, config, childrenData, loaded } = this;
47
+ const { lazy, leaf } = config;
48
+ const isLeaf = isFunction(leaf) ? leaf(data, this) : data[leaf];
49
+ return isUndefined(isLeaf) ? lazy && !loaded ? false : !(Array.isArray(childrenData) && childrenData.length) : !!isLeaf;
50
+ }
51
+ get valueByOption() {
52
+ return this.config.emitPath ? this.pathValues : this.value;
53
+ }
54
+ appendChild(childData) {
55
+ const { childrenData, children } = this;
56
+ const node = new Node(childData, this.config, this);
57
+ if (Array.isArray(childrenData)) {
58
+ childrenData.push(childData);
59
+ } else {
60
+ this.childrenData = [childData];
61
+ }
62
+ children.push(node);
63
+ return node;
64
+ }
65
+ calcText(allLevels, separator) {
66
+ const text = allLevels ? this.pathLabels.join(separator) : this.label;
67
+ this.text = text;
68
+ return text;
69
+ }
70
+ broadcast(event, ...args) {
71
+ const handlerName = `onParent${capitalize(event)}`;
72
+ this.children.forEach((child) => {
73
+ if (child) {
74
+ child.broadcast(event, ...args);
75
+ child[handlerName] && child[handlerName](...args);
105
76
  }
106
- };
107
- return {
108
- panel,
109
- isHoverMenu,
110
- multiple,
111
- checkStrictly,
112
- checkedNodeId,
113
- isDisabled,
114
- isLeaf,
115
- expandable,
116
- inExpandingPath,
117
- inCheckedPath,
118
- ns,
119
- handleHoverExpand,
120
- handleExpand,
121
- handleClick,
122
- handleCheck,
123
- handleSelectCheck
124
- };
77
+ });
78
+ }
79
+ emit(event, ...args) {
80
+ const { parent } = this;
81
+ const handlerName = `onChild${capitalize(event)}`;
82
+ if (parent) {
83
+ parent[handlerName] && parent[handlerName](...args);
84
+ parent.emit(event, ...args);
85
+ }
86
+ }
87
+ onParentCheck(checked) {
88
+ if (!this.isDisabled) {
89
+ this.setCheckState(checked);
90
+ }
91
+ }
92
+ onChildCheck() {
93
+ const { children } = this;
94
+ const validChildren = children.filter((child) => !child.isDisabled);
95
+ const checked = validChildren.length ? validChildren.every((child) => child.checked) : false;
96
+ this.setCheckState(checked);
97
+ }
98
+ setCheckState(checked) {
99
+ const totalNum = this.children.length;
100
+ const checkedNum = this.children.reduce((c, p) => {
101
+ const num = p.checked ? 1 : p.indeterminate ? 0.5 : 0;
102
+ return c + num;
103
+ }, 0);
104
+ this.checked = this.loaded && this.children.filter((child) => !child.isDisabled).every((child) => child.loaded && child.checked) && checked;
105
+ this.indeterminate = this.loaded && checkedNum !== totalNum && checkedNum > 0;
106
+ }
107
+ doCheck(checked) {
108
+ if (this.checked === checked)
109
+ return;
110
+ const { checkStrictly, multiple } = this.config;
111
+ if (checkStrictly || !multiple) {
112
+ this.checked = checked;
113
+ } else {
114
+ this.broadcast("check", checked);
115
+ this.setCheckState(checked);
116
+ this.emit("check");
117
+ }
125
118
  }
126
- });
127
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
128
- const _component_el_checkbox = resolveComponent("el-checkbox");
129
- const _component_el_radio = resolveComponent("el-radio");
130
- const _component_check = resolveComponent("check");
131
- const _component_el_icon = resolveComponent("el-icon");
132
- const _component_node_content = resolveComponent("node-content");
133
- const _component_loading = resolveComponent("loading");
134
- const _component_arrow_right = resolveComponent("arrow-right");
135
- return openBlock(), createElementBlock("li", {
136
- id: `${_ctx.menuId}-${_ctx.node.uid}`,
137
- role: "menuitem",
138
- "aria-haspopup": !_ctx.isLeaf,
139
- "aria-owns": _ctx.isLeaf ? null : _ctx.menuId,
140
- "aria-expanded": _ctx.inExpandingPath,
141
- tabindex: _ctx.expandable ? -1 : void 0,
142
- class: normalizeClass([
143
- _ctx.ns.b(),
144
- _ctx.ns.is("selectable", _ctx.checkStrictly),
145
- _ctx.ns.is("active", _ctx.node.checked),
146
- _ctx.ns.is("disabled", !_ctx.expandable),
147
- _ctx.inExpandingPath && "in-active-path",
148
- _ctx.inCheckedPath && "in-checked-path"
149
- ]),
150
- onMouseenter: _ctx.handleHoverExpand,
151
- onFocus: _ctx.handleHoverExpand,
152
- onClick: _ctx.handleClick
153
- }, [
154
- createCommentVNode(" prefix "),
155
- _ctx.multiple ? (openBlock(), createBlock(_component_el_checkbox, {
156
- key: 0,
157
- "model-value": _ctx.node.checked,
158
- indeterminate: _ctx.node.indeterminate,
159
- disabled: _ctx.isDisabled,
160
- onClick: withModifiers(() => {
161
- }, ["stop"]),
162
- "onUpdate:modelValue": _ctx.handleSelectCheck
163
- }, null, 8, ["model-value", "indeterminate", "disabled", "onClick", "onUpdate:modelValue"])) : _ctx.checkStrictly ? (openBlock(), createBlock(_component_el_radio, {
164
- key: 1,
165
- "model-value": _ctx.checkedNodeId,
166
- label: _ctx.node.uid,
167
- disabled: _ctx.isDisabled,
168
- "onUpdate:modelValue": _ctx.handleSelectCheck,
169
- onClick: withModifiers(() => {
170
- }, ["stop"])
171
- }, {
172
- default: withCtx(() => [
173
- createCommentVNode("\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 "),
174
- createElementVNode("span")
175
- ]),
176
- _: 1
177
- }, 8, ["model-value", "label", "disabled", "onUpdate:modelValue", "onClick"])) : _ctx.isLeaf && _ctx.node.checked ? (openBlock(), createBlock(_component_el_icon, {
178
- key: 2,
179
- class: normalizeClass(_ctx.ns.e("prefix"))
180
- }, {
181
- default: withCtx(() => [
182
- createVNode(_component_check)
183
- ]),
184
- _: 1
185
- }, 8, ["class"])) : createCommentVNode("v-if", true),
186
- createCommentVNode(" content "),
187
- createVNode(_component_node_content),
188
- createCommentVNode(" postfix "),
189
- !_ctx.isLeaf ? (openBlock(), createElementBlock(Fragment, { key: 3 }, [
190
- _ctx.node.loading ? (openBlock(), createBlock(_component_el_icon, {
191
- key: 0,
192
- class: normalizeClass([_ctx.ns.is("loading"), _ctx.ns.e("postfix")])
193
- }, {
194
- default: withCtx(() => [
195
- createVNode(_component_loading)
196
- ]),
197
- _: 1
198
- }, 8, ["class"])) : (openBlock(), createBlock(_component_el_icon, {
199
- key: 1,
200
- class: normalizeClass(["arrow-right", _ctx.ns.e("postfix")])
201
- }, {
202
- default: withCtx(() => [
203
- createVNode(_component_arrow_right)
204
- ]),
205
- _: 1
206
- }, 8, ["class"]))
207
- ], 64)) : createCommentVNode("v-if", true)
208
- ], 42, ["id", "aria-haspopup", "aria-owns", "aria-expanded", "tabindex", "onMouseenter", "onFocus", "onClick"]);
209
119
  }
210
- var ElCascaderNode = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "node.vue"]]);
211
120
 
212
- export { ElCascaderNode as default };
121
+ export { Node as default };
213
122
  //# sourceMappingURL=node2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"node2.mjs","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 ? null : 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\"\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\"\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 />\n\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\">\n// @ts-nocheck\nimport { computed, defineComponent, 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'\nimport type { default as CascaderNode } from './node'\n\nimport type { PropType } from 'vue'\n\nexport default defineComponent({\n name: 'ElCascaderNode',\n\n components: {\n ElCheckbox,\n ElRadio,\n NodeContent,\n ElIcon,\n Check,\n Loading,\n ArrowRight,\n },\n\n props: {\n node: {\n type: Object as PropType<CascaderNode>,\n required: true,\n },\n menuId: String,\n },\n\n emits: ['expand'],\n\n setup(props, { emit }) {\n const panel = inject(CASCADER_PANEL_INJECTION_KEY)!\n\n const ns = useNamespace('cascader-node')\n const isHoverMenu = computed(() => panel.isHoverMenu)\n const multiple = computed(() => panel.config.multiple)\n const checkStrictly = computed(() => panel.config.checkStrictly)\n const checkedNodeId = computed(() => panel.checkedNodes[0]?.uid)\n const isDisabled = computed(() => props.node.isDisabled)\n const isLeaf = computed(() => props.node.isLeaf)\n const expandable = computed(\n () => (checkStrictly.value && !isLeaf.value) || !isDisabled.value\n )\n const inExpandingPath = computed(() => isInPath(panel.expandingNode!))\n // only useful in check-strictly mode\n const inCheckedPath = computed(\n () => checkStrictly.value && panel.checkedNodes.some(isInPath)\n )\n\n const isInPath = (node: CascaderNode) => {\n const { level, uid } = props.node\n return node?.pathNodes[level - 1]?.uid === uid\n }\n\n const doExpand = () => {\n if (inExpandingPath.value) return\n panel.expandNode(props.node)\n }\n\n const doCheck = (checked: boolean) => {\n const { node } = props\n if (checked === node.checked) return\n panel.handleCheckChange(node, checked)\n }\n\n const doLoad = () => {\n panel.lazyLoad(props.node, () => {\n if (!isLeaf.value) doExpand()\n })\n }\n\n const handleHoverExpand = (e: Event) => {\n if (!isHoverMenu.value) return\n handleExpand()\n !isLeaf.value && emit('expand', e)\n }\n\n const 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\n const handleClick = () => {\n if (isHoverMenu.value && !isLeaf.value) return\n\n if (\n isLeaf.value &&\n !isDisabled.value &&\n !checkStrictly.value &&\n !multiple.value\n ) {\n handleCheck(true)\n } else {\n handleExpand()\n }\n }\n\n const handleSelectCheck = (checked: boolean) => {\n if (checkStrictly.value) {\n doCheck(checked)\n if (props.node.loaded) {\n doExpand()\n }\n } else {\n handleCheck(checked)\n }\n }\n\n const handleCheck = (checked: boolean) => {\n if (!props.node.loaded) {\n doLoad()\n } else {\n doCheck(checked)\n !checkStrictly.value && doExpand()\n }\n }\n\n return {\n panel,\n isHoverMenu,\n multiple,\n checkStrictly,\n checkedNodeId,\n isDisabled,\n isLeaf,\n expandable,\n inExpandingPath,\n inCheckedPath,\n ns,\n handleHoverExpand,\n handleExpand,\n handleClick,\n handleCheck,\n handleSelectCheck,\n }\n },\n})\n</script>\n"],"names":["_resolveComponent","_openBlock","_normalizeClass","_createCommentVNode","_createBlock","_withModifiers","_createElementVNode","_createVNode","_createElementBlock","_Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"node2.mjs","sources":["../../../../../../packages/components/cascader-panel/src/node.ts"],"sourcesContent":["// @ts-nocheck\nimport {\n capitalize,\n isEmpty,\n isFunction,\n isUndefined,\n} from '@element-plus/utils'\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 : !(Array.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 (Array.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":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { isEqual } from 'lodash-unified';
2
- import Node from './node.mjs';
2
+ import Node from './node2.mjs';
3
3
 
4
4
  const flatNodes = (nodes, leafOnly) => {
5
5
  return nodes.reduce((res, node) => {
@@ -1,4 +1,5 @@
1
1
  import type { ExtractPropTypes } from 'vue';
2
+ import type Dialog from './dialog.vue';
2
3
  declare type DoneFn = (cancel?: boolean) => void;
3
4
  export declare type DialogBeforeCloseFn = (done: DoneFn) => void;
4
5
  export declare const dialogProps: {
@@ -65,4 +66,5 @@ export declare const dialogEmits: {
65
66
  closeAutoFocus: () => boolean;
66
67
  };
67
68
  export declare type DialogEmits = typeof dialogEmits;
69
+ export declare type DialogInstance = InstanceType<typeof Dialog>;
68
70
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.mjs","sources":["../../../../../../packages/components/dialog/src/dialog.ts"],"sourcesContent":["import { buildProps, definePropType, isBoolean } from '@element-plus/utils'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { dialogContentProps } from './dialog-content'\n\nimport type { ExtractPropTypes } from 'vue'\n\ntype DoneFn = (cancel?: boolean) => void\nexport type DialogBeforeCloseFn = (done: DoneFn) => void\n\nexport const dialogProps = buildProps({\n ...dialogContentProps,\n /**\n * @description whether to append Dialog itself to body. A nested Dialog should have this attribute set to `true`\n */\n appendToBody: Boolean,\n /**\n * @description which element the Dialog appends to\n */\n appendTo: {\n type: definePropType<string | HTMLElement>([String, Object]),\n default: 'body',\n },\n /**\n * @description callback before Dialog closes, and it will prevent Dialog from closing, use done to close the dialog\n */\n beforeClose: {\n type: definePropType<DialogBeforeCloseFn>(Function),\n },\n /**\n * @description destroy elements in Dialog when closed\n */\n destroyOnClose: Boolean,\n /**\n * @description whether the Dialog can be closed by clicking the mask\n */\n closeOnClickModal: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether the Dialog can be closed by pressing ESC\n */\n closeOnPressEscape: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether scroll of body is disabled while Dialog is displayed\n */\n lockScroll: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether a mask is displayed\n */\n modal: {\n type: Boolean,\n default: true,\n },\n /**\n * @description the Time(milliseconds) before open\n */\n openDelay: {\n type: Number,\n default: 0,\n },\n /**\n * @description the Time(milliseconds) before close\n */\n closeDelay: {\n type: Number,\n default: 0,\n },\n /**\n * @description value for `margin-top` of Dialog CSS, default is 15vh\n */\n top: {\n type: String,\n },\n /**\n * @description visibility of Dialog\n */\n modelValue: Boolean,\n /**\n * @description custom class names for mask\n */\n modalClass: String,\n /**\n * @description width of Dialog, default is 50%\n */\n width: {\n type: [String, Number],\n },\n /**\n * @description same as z-index in native CSS, z-order of dialog\n */\n zIndex: {\n type: Number,\n },\n trapFocus: Boolean,\n /**\n * @description header's aria-level attribute\n */\n headerAriaLevel: {\n type: String,\n default: '2',\n },\n} as const)\n\nexport type DialogProps = ExtractPropTypes<typeof dialogProps>\n\nexport const dialogEmits = {\n open: () => true,\n opened: () => true,\n close: () => true,\n closed: () => true,\n [UPDATE_MODEL_EVENT]: (value: boolean) => isBoolean(value),\n openAutoFocus: () => true,\n closeAutoFocus: () => true,\n}\nexport type DialogEmits = typeof dialogEmits\n"],"names":[],"mappings":";;;;;;;AAGY,MAAC,WAAW,GAAG,UAAU,CAAC;AACtC,EAAE,GAAG,kBAAkB;AACvB,EAAE,YAAY,EAAE,OAAO;AACvB,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,IAAI,OAAO,EAAE,MAAM;AACnB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,cAAc,EAAE,OAAO;AACzB,EAAE,iBAAiB,EAAE;AACrB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,kBAAkB,EAAE;AACtB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,UAAU,EAAE,OAAO;AACrB,EAAE,UAAU,EAAE,MAAM;AACpB,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,SAAS,EAAE,OAAO;AACpB,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,GAAG;AAChB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,WAAW,GAAG;AAC3B,EAAE,IAAI,EAAE,MAAM,IAAI;AAClB,EAAE,MAAM,EAAE,MAAM,IAAI;AACpB,EAAE,KAAK,EAAE,MAAM,IAAI;AACnB,EAAE,MAAM,EAAE,MAAM,IAAI;AACpB,EAAE,CAAC,kBAAkB,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,KAAK,CAAC;AACnD,EAAE,aAAa,EAAE,MAAM,IAAI;AAC3B,EAAE,cAAc,EAAE,MAAM,IAAI;AAC5B;;;;"}
1
+ {"version":3,"file":"dialog.mjs","sources":["../../../../../../packages/components/dialog/src/dialog.ts"],"sourcesContent":["import { buildProps, definePropType, isBoolean } from '@element-plus/utils'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { dialogContentProps } from './dialog-content'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type Dialog from './dialog.vue'\n\ntype DoneFn = (cancel?: boolean) => void\nexport type DialogBeforeCloseFn = (done: DoneFn) => void\n\nexport const dialogProps = buildProps({\n ...dialogContentProps,\n /**\n * @description whether to append Dialog itself to body. A nested Dialog should have this attribute set to `true`\n */\n appendToBody: Boolean,\n /**\n * @description which element the Dialog appends to\n */\n appendTo: {\n type: definePropType<string | HTMLElement>([String, Object]),\n default: 'body',\n },\n /**\n * @description callback before Dialog closes, and it will prevent Dialog from closing, use done to close the dialog\n */\n beforeClose: {\n type: definePropType<DialogBeforeCloseFn>(Function),\n },\n /**\n * @description destroy elements in Dialog when closed\n */\n destroyOnClose: Boolean,\n /**\n * @description whether the Dialog can be closed by clicking the mask\n */\n closeOnClickModal: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether the Dialog can be closed by pressing ESC\n */\n closeOnPressEscape: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether scroll of body is disabled while Dialog is displayed\n */\n lockScroll: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether a mask is displayed\n */\n modal: {\n type: Boolean,\n default: true,\n },\n /**\n * @description the Time(milliseconds) before open\n */\n openDelay: {\n type: Number,\n default: 0,\n },\n /**\n * @description the Time(milliseconds) before close\n */\n closeDelay: {\n type: Number,\n default: 0,\n },\n /**\n * @description value for `margin-top` of Dialog CSS, default is 15vh\n */\n top: {\n type: String,\n },\n /**\n * @description visibility of Dialog\n */\n modelValue: Boolean,\n /**\n * @description custom class names for mask\n */\n modalClass: String,\n /**\n * @description width of Dialog, default is 50%\n */\n width: {\n type: [String, Number],\n },\n /**\n * @description same as z-index in native CSS, z-order of dialog\n */\n zIndex: {\n type: Number,\n },\n trapFocus: Boolean,\n /**\n * @description header's aria-level attribute\n */\n headerAriaLevel: {\n type: String,\n default: '2',\n },\n} as const)\n\nexport type DialogProps = ExtractPropTypes<typeof dialogProps>\n\nexport const dialogEmits = {\n open: () => true,\n opened: () => true,\n close: () => true,\n closed: () => true,\n [UPDATE_MODEL_EVENT]: (value: boolean) => isBoolean(value),\n openAutoFocus: () => true,\n closeAutoFocus: () => true,\n}\nexport type DialogEmits = typeof dialogEmits\nexport type DialogInstance = InstanceType<typeof Dialog>\n"],"names":[],"mappings":";;;;;;;AAGY,MAAC,WAAW,GAAG,UAAU,CAAC;AACtC,EAAE,GAAG,kBAAkB;AACvB,EAAE,YAAY,EAAE,OAAO;AACvB,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,IAAI,OAAO,EAAE,MAAM;AACnB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,GAAG;AACH,EAAE,cAAc,EAAE,OAAO;AACzB,EAAE,iBAAiB,EAAE;AACrB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,kBAAkB,EAAE;AACtB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,UAAU,EAAE,OAAO;AACrB,EAAE,UAAU,EAAE,MAAM;AACpB,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,SAAS,EAAE,OAAO;AACpB,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,GAAG;AAChB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,WAAW,GAAG;AAC3B,EAAE,IAAI,EAAE,MAAM,IAAI;AAClB,EAAE,MAAM,EAAE,MAAM,IAAI;AACpB,EAAE,KAAK,EAAE,MAAM,IAAI;AACnB,EAAE,MAAM,EAAE,MAAM,IAAI;AACpB,EAAE,CAAC,kBAAkB,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,KAAK,CAAC;AACnD,EAAE,aAAa,EAAE,MAAM,IAAI;AAC3B,EAAE,cAAc,EAAE,MAAM,IAAI;AAC5B;;;;"}
@@ -119,10 +119,10 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
119
119
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
120
120
  onClose?: (() => any) | undefined;
121
121
  onOpen?: (() => any) | undefined;
122
- onOpenAutoFocus?: (() => any) | undefined;
123
- onCloseAutoFocus?: (() => any) | undefined;
124
122
  onOpened?: (() => any) | undefined;
125
123
  onClosed?: (() => any) | undefined;
124
+ onOpenAutoFocus?: (() => any) | undefined;
125
+ onCloseAutoFocus?: (() => any) | undefined;
126
126
  }, {
127
127
  readonly title: string;
128
128
  readonly overflow: boolean;
@@ -126,10 +126,10 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
126
126
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
127
127
  onClose?: (() => any) | undefined;
128
128
  onOpen?: (() => any) | undefined;
129
- onOpenAutoFocus?: (() => any) | undefined;
130
- onCloseAutoFocus?: (() => any) | undefined;
131
129
  onOpened?: (() => any) | undefined;
132
130
  onClosed?: (() => any) | undefined;
131
+ onOpenAutoFocus?: (() => any) | undefined;
132
+ onCloseAutoFocus?: (() => any) | undefined;
133
133
  }, {
134
134
  readonly title: string;
135
135
  readonly direction: import("@element-plus/nightly/es/utils").EpPropMergeType<StringConstructor, "ltr" | "rtl" | "ttb" | "btt", unknown>;
@@ -84,7 +84,7 @@ export { affixEmits, affixProps } from './affix/src/affix.mjs';
84
84
  export { alertEffects, alertEmits, alertProps } from './alert/src/alert.mjs';
85
85
  export { autocompleteEmits, autocompleteProps } from './autocomplete/src/autocomplete.mjs';
86
86
  export { avatarEmits, avatarProps } from './avatar/src/avatar.mjs';
87
- export { backtopEmits, backtopProps } from './backtop/src/backtop2.mjs';
87
+ export { backtopEmits, backtopProps } from './backtop/src/backtop.mjs';
88
88
  export { badgeProps } from './badge/src/badge.mjs';
89
89
  export { breadcrumbProps } from './breadcrumb/src/breadcrumb.mjs';
90
90
  export { breadcrumbItemProps } from './breadcrumb/src/breadcrumb-item.mjs';
@@ -96,7 +96,7 @@ export { cardProps } from './card/src/card.mjs';
96
96
  export { carouselEmits, carouselProps } from './carousel/src/carousel.mjs';
97
97
  export { carouselItemProps } from './carousel/src/carousel-item.mjs';
98
98
  export { CAROUSEL_ITEM_NAME, carouselContextKey } from './carousel/src/constants.mjs';
99
- export { cascaderEmits, cascaderProps } from './cascader/src/cascader.mjs';
99
+ export { cascaderEmits, cascaderProps } from './cascader/src/cascader2.mjs';
100
100
  export { CASCADER_PANEL_INJECTION_KEY } from './cascader-panel/src/types.mjs';
101
101
  export { CommonProps, DefaultProps, useCascaderConfig } from './cascader-panel/src/config.mjs';
102
102
  export { checkTagEmits, checkTagProps } from './check-tag/src/check-tag.mjs';
@@ -134,7 +134,7 @@ export { iconProps } from './icon/src/icon.mjs';
134
134
  export { imageEmits, imageProps } from './image/src/image.mjs';
135
135
  export { imageViewerEmits, imageViewerProps } from './image-viewer/src/image-viewer.mjs';
136
136
  export { inputEmits, inputProps } from './input/src/input.mjs';
137
- export { inputNumberEmits, inputNumberProps } from './input-number/src/input-number.mjs';
137
+ export { inputNumberEmits, inputNumberProps } from './input-number/src/input-number2.mjs';
138
138
  export { linkEmits, linkProps } from './link/src/link.mjs';
139
139
  export { menuEmits, menuProps } from './menu/src/menu.mjs';
140
140
  export { menuItemEmits, menuItemProps } from './menu/src/menu-item.mjs';
@@ -178,7 +178,7 @@ export { useSpace } from './space/src/use-space.mjs';
178
178
  export { statisticProps } from './statistic/src/statistic.mjs';
179
179
  export { stepProps } from './steps/src/item.mjs';
180
180
  export { stepsEmits, stepsProps } from './steps/src/steps.mjs';
181
- export { switchEmits, switchProps } from './switch/src/switch2.mjs';
181
+ export { switchEmits, switchProps } from './switch/src/switch.mjs';
182
182
  export { Alignment as TableV2Alignment, FixedDir as TableV2FixedDir, SortOrder as TableV2SortOrder } from './table-v2/src/constants.mjs';
183
183
  export { default as TableV2 } from './table-v2/src/table-v2.mjs';
184
184
  export { placeholderSign as TableV2Placeholder } from './table-v2/src/private.mjs';
@@ -1,6 +1,6 @@
1
1
  import '../../utils/index.mjs';
2
- import InputNumber from './src/input-number2.mjs';
3
- export { inputNumberEmits, inputNumberProps } from './src/input-number.mjs';
2
+ import InputNumber from './src/input-number.mjs';
3
+ export { inputNumberEmits, inputNumberProps } from './src/input-number2.mjs';
4
4
  import { withInstall } from '../../utils/vue/install.mjs';
5
5
 
6
6
  const ElInputNumber = withInstall(InputNumber);