element-plus 1.2.0-beta.6 → 1.3.0-beta.1

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 (1690) hide show
  1. package/README.md +185 -5
  2. package/attributes.json +1 -1
  3. package/dist/index.css +1 -1
  4. package/dist/index.full.js +6599 -5434
  5. package/dist/index.full.min.js +8 -8
  6. package/dist/index.full.min.js.map +1 -1
  7. package/dist/index.full.min.mjs +7 -7
  8. package/dist/index.full.min.mjs.map +1 -1
  9. package/dist/index.full.mjs +6606 -5441
  10. package/es/component.mjs.map +1 -1
  11. package/es/components/affix/index.d.ts +1 -1
  12. package/es/components/affix/index.mjs.map +1 -1
  13. package/es/components/affix/src/affix.mjs.map +1 -1
  14. package/es/components/affix/src/affix.vue.d.ts +1 -1
  15. package/es/components/affix/src/affix.vue_vue_type_script_lang.mjs +1 -1
  16. package/es/components/affix/src/affix.vue_vue_type_script_lang.mjs.map +1 -1
  17. package/es/components/affix/src/affix.vue_vue_type_template_id_0745df9e_lang.mjs.map +1 -1
  18. package/es/components/alert/index.mjs.map +1 -1
  19. package/es/components/alert/src/alert.mjs.map +1 -1
  20. package/es/components/alert/src/alert.vue_vue_type_script_lang.mjs.map +1 -1
  21. package/es/components/alert/src/alert.vue_vue_type_template_id_1755b449_lang.mjs.map +1 -1
  22. package/es/components/autocomplete/index.mjs.map +1 -1
  23. package/es/components/autocomplete/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  24. package/es/components/autocomplete/src/index.vue_vue_type_template_id_2f09f285_lang.mjs +3 -3
  25. package/es/components/autocomplete/src/index.vue_vue_type_template_id_2f09f285_lang.mjs.map +1 -1
  26. package/es/components/avatar/index.d.ts +3 -3
  27. package/es/components/avatar/index.mjs.map +1 -1
  28. package/es/components/avatar/src/avatar.d.ts +1 -1
  29. package/es/components/avatar/src/avatar.mjs +1 -1
  30. package/es/components/avatar/src/avatar.mjs.map +1 -1
  31. package/es/components/avatar/src/avatar.vue.d.ts +3 -3
  32. package/es/components/avatar/src/avatar.vue_vue_type_script_lang.mjs +1 -3
  33. package/es/components/avatar/src/avatar.vue_vue_type_script_lang.mjs.map +1 -1
  34. package/es/components/avatar/src/avatar.vue_vue_type_template_id_46e3f365_lang.mjs.map +1 -1
  35. package/es/components/backtop/index.mjs.map +1 -1
  36. package/es/components/backtop/src/backtop.mjs.map +1 -1
  37. package/es/components/backtop/src/backtop.vue_vue_type_script_lang.mjs.map +1 -1
  38. package/es/components/backtop/src/backtop.vue_vue_type_template_id_63a7fea6_lang.mjs.map +1 -1
  39. package/es/components/badge/index.mjs.map +1 -1
  40. package/es/components/badge/src/badge.mjs.map +1 -1
  41. package/es/components/badge/src/badge.vue_vue_type_script_lang.mjs.map +1 -1
  42. package/es/components/badge/src/badge.vue_vue_type_template_id_020a5517_lang.mjs.map +1 -1
  43. package/es/components/breadcrumb/index.mjs.map +1 -1
  44. package/es/components/breadcrumb/src/breadcrumb-item.mjs.map +1 -1
  45. package/es/components/breadcrumb/src/breadcrumb-item.vue_vue_type_script_lang.mjs.map +1 -1
  46. package/es/components/breadcrumb/src/breadcrumb-item.vue_vue_type_template_id_2f37792a_lang.mjs.map +1 -1
  47. package/es/components/breadcrumb/src/breadcrumb.mjs.map +1 -1
  48. package/es/components/breadcrumb/src/breadcrumb.vue_vue_type_script_lang.mjs.map +1 -1
  49. package/es/components/breadcrumb/src/breadcrumb.vue_vue_type_template_id_b67a42b6_lang.mjs.map +1 -1
  50. package/es/components/button/index.d.ts +11 -11
  51. package/es/components/button/index.mjs.map +1 -1
  52. package/es/components/button/src/button-group.d.ts +1 -1
  53. package/es/components/button/src/button-group.mjs.map +1 -1
  54. package/es/components/button/src/button-group.vue.d.ts +3 -3
  55. package/es/components/button/src/button-group.vue_vue_type_script_lang.mjs.map +1 -1
  56. package/es/components/button/src/button-group.vue_vue_type_template_id_1bab7d77_lang.mjs.map +1 -1
  57. package/es/components/button/src/button.d.ts +2 -2
  58. package/es/components/button/src/button.mjs +1 -1
  59. package/es/components/button/src/button.mjs.map +1 -1
  60. package/es/components/button/src/button.vue.d.ts +5 -5
  61. package/es/components/button/src/button.vue_vue_type_script_lang.mjs +12 -12
  62. package/es/components/button/src/button.vue_vue_type_script_lang.mjs.map +1 -1
  63. package/es/components/button/src/button.vue_vue_type_template_id_802c5c76_lang.mjs.map +1 -1
  64. package/es/components/calendar/index.mjs.map +1 -1
  65. package/es/components/calendar/src/calendar.mjs.map +1 -1
  66. package/es/components/calendar/src/calendar.vue_vue_type_script_lang.mjs.map +1 -1
  67. package/es/components/calendar/src/calendar.vue_vue_type_template_id_76705c76_lang.mjs +3 -3
  68. package/es/components/calendar/src/calendar.vue_vue_type_template_id_76705c76_lang.mjs.map +1 -1
  69. package/es/components/calendar/src/date-table.mjs.map +1 -1
  70. package/es/components/calendar/src/date-table.vue_vue_type_script_lang.mjs.map +1 -1
  71. package/es/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.mjs.map +1 -1
  72. package/es/components/card/index.mjs.map +1 -1
  73. package/es/components/card/src/card.mjs.map +1 -1
  74. package/es/components/card/src/card.vue_vue_type_script_lang.mjs.map +1 -1
  75. package/es/components/card/src/card.vue_vue_type_template_id_7a6bdf05_lang.mjs.map +1 -1
  76. package/es/components/carousel/index.mjs.map +1 -1
  77. package/es/components/carousel/src/item.vue_vue_type_script_lang.mjs.map +1 -1
  78. package/es/components/carousel/src/item.vue_vue_type_template_id_3d2e4fb8_lang.mjs.map +1 -1
  79. package/es/components/carousel/src/main.vue_vue_type_script_lang.mjs.map +1 -1
  80. package/es/components/carousel/src/main.vue_vue_type_template_id_1303d144_lang.mjs.map +1 -1
  81. package/es/components/cascader/index.d.ts +18 -18
  82. package/es/components/cascader/index.mjs.map +1 -1
  83. package/es/components/cascader/src/index.vue.d.ts +9 -9
  84. package/es/components/cascader/src/index.vue_vue_type_script_lang.mjs +6 -6
  85. package/es/components/cascader/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  86. package/es/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.mjs +3 -3
  87. package/es/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.mjs.map +1 -1
  88. package/es/components/cascader-panel/index.mjs.map +1 -1
  89. package/es/components/cascader-panel/src/config.mjs.map +1 -1
  90. package/es/components/cascader-panel/src/index.vue_vue_type_script_lang.mjs +2 -2
  91. package/es/components/cascader-panel/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  92. package/es/components/cascader-panel/src/index.vue_vue_type_template_id_97c48f5c_lang.mjs +1 -0
  93. package/es/components/cascader-panel/src/index.vue_vue_type_template_id_97c48f5c_lang.mjs.map +1 -1
  94. package/es/components/cascader-panel/src/menu.vue_vue_type_script_lang.mjs.map +1 -1
  95. package/es/components/cascader-panel/src/menu.vue_vue_type_template_id_9c79e4e2_lang.mjs.map +1 -1
  96. package/es/components/cascader-panel/src/node-content.mjs.map +1 -1
  97. package/es/components/cascader-panel/src/node.mjs.map +1 -1
  98. package/es/components/cascader-panel/src/node.vue_vue_type_script_lang.mjs.map +1 -1
  99. package/es/components/cascader-panel/src/node.vue_vue_type_template_id_18b09cb2_lang.mjs.map +1 -1
  100. package/es/components/cascader-panel/src/store.mjs.map +1 -1
  101. package/es/components/cascader-panel/src/types.mjs.map +1 -1
  102. package/es/components/cascader-panel/src/utils.mjs.map +1 -1
  103. package/es/components/check-tag/index.mjs.map +1 -1
  104. package/es/components/check-tag/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  105. package/es/components/check-tag/src/index.vue_vue_type_template_id_58558910_lang.mjs.map +1 -1
  106. package/es/components/checkbox/index.d.ts +32 -14
  107. package/es/components/checkbox/index.mjs.map +1 -1
  108. package/es/components/checkbox/src/checkbox-button.vue.d.ts +1 -1
  109. package/es/components/checkbox/src/checkbox-button.vue_vue_type_script_lang.mjs.map +1 -1
  110. package/es/components/checkbox/src/checkbox-button.vue_vue_type_template_id_f839a66c_lang.mjs.map +1 -1
  111. package/es/components/checkbox/src/checkbox-group.mjs +0 -2
  112. package/es/components/checkbox/src/checkbox-group.mjs.map +1 -1
  113. package/es/components/checkbox/src/checkbox-group.vue.d.ts +14 -5
  114. package/es/components/checkbox/src/checkbox-group.vue_vue_type_script_lang.mjs +17 -6
  115. package/es/components/checkbox/src/checkbox-group.vue_vue_type_script_lang.mjs.map +1 -1
  116. package/es/components/checkbox/src/checkbox.vue.d.ts +2 -2
  117. package/es/components/checkbox/src/checkbox.vue_vue_type_script_lang.mjs.map +1 -1
  118. package/es/components/checkbox/src/checkbox.vue_vue_type_template_id_2c9881e5_lang.mjs.map +1 -1
  119. package/es/components/checkbox/src/useCheckbox.d.ts +2 -2
  120. package/es/components/checkbox/src/useCheckbox.mjs.map +1 -1
  121. package/es/components/col/index.mjs.map +1 -1
  122. package/es/components/col/src/col.mjs.map +1 -1
  123. package/es/components/collapse/index.mjs.map +1 -1
  124. package/es/components/collapse/src/collapse-item.vue_vue_type_script_lang.mjs.map +1 -1
  125. package/es/components/collapse/src/collapse-item.vue_vue_type_template_id_80da782a_lang.mjs.map +1 -1
  126. package/es/components/collapse/src/collapse.vue_vue_type_script_lang.mjs.map +1 -1
  127. package/es/components/collapse/src/collapse.vue_vue_type_template_id_71a60e25_lang.mjs.map +1 -1
  128. package/es/components/collapse-transition/index.mjs.map +1 -1
  129. package/es/components/collapse-transition/src/collapse-transition.vue_vue_type_script_lang.mjs.map +1 -1
  130. package/es/components/collapse-transition/src/collapse-transition.vue_vue_type_template_id_f68ae30a_lang.mjs.map +1 -1
  131. package/es/components/color-picker/index.d.ts +2 -2
  132. package/es/components/color-picker/index.mjs.map +1 -1
  133. package/es/components/color-picker/src/color.mjs.map +1 -1
  134. package/es/components/color-picker/src/components/alpha-slider.vue.d.ts +2 -2
  135. package/es/components/color-picker/src/components/alpha-slider.vue_vue_type_script_lang.mjs.map +1 -1
  136. package/es/components/color-picker/src/components/alpha-slider.vue_vue_type_template_id_4fb2624c_lang.mjs.map +1 -1
  137. package/es/components/color-picker/src/components/hue-slider.vue_vue_type_script_lang.mjs.map +1 -1
  138. package/es/components/color-picker/src/components/hue-slider.vue_vue_type_template_id_129d2b72_lang.mjs.map +1 -1
  139. package/es/components/color-picker/src/components/predefine.vue_vue_type_script_lang.mjs.map +1 -1
  140. package/es/components/color-picker/src/components/predefine.vue_vue_type_template_id_391a669c_lang.mjs.map +1 -1
  141. package/es/components/color-picker/src/components/sv-panel.vue_vue_type_script_lang.mjs.map +1 -1
  142. package/es/components/color-picker/src/components/sv-panel.vue_vue_type_template_id_67046d94_lang.mjs.map +1 -1
  143. package/es/components/color-picker/src/draggable.mjs +2 -2
  144. package/es/components/color-picker/src/draggable.mjs.map +1 -1
  145. package/es/components/color-picker/src/index.vue.d.ts +1 -1
  146. package/es/components/color-picker/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  147. package/es/components/color-picker/src/index.vue_vue_type_template_id_46a474d5_lang.mjs +27 -26
  148. package/es/components/color-picker/src/index.vue_vue_type_template_id_46a474d5_lang.mjs.map +1 -1
  149. package/es/components/color-picker/src/useOption.mjs.map +1 -1
  150. package/es/components/config-provider/index.d.ts +7 -3
  151. package/es/components/config-provider/index.mjs +1 -1
  152. package/es/components/config-provider/index.mjs.map +1 -1
  153. package/es/components/config-provider/src/config-provider.d.ts +26 -1
  154. package/es/components/config-provider/src/config-provider.mjs +28 -4
  155. package/es/components/config-provider/src/config-provider.mjs.map +1 -1
  156. package/es/components/container/index.mjs.map +1 -1
  157. package/es/components/container/src/aside.vue_vue_type_script_lang.mjs.map +1 -1
  158. package/es/components/container/src/aside.vue_vue_type_template_id_47e12f0a_lang.mjs.map +1 -1
  159. package/es/components/container/src/container.vue_vue_type_script_lang.mjs.map +1 -1
  160. package/es/components/container/src/container.vue_vue_type_template_id_60a2865a_lang.mjs.map +1 -1
  161. package/es/components/container/src/footer.vue_vue_type_script_lang.mjs.map +1 -1
  162. package/es/components/container/src/footer.vue_vue_type_template_id_2c2b128e_lang.mjs.map +1 -1
  163. package/es/components/container/src/header.vue_vue_type_script_lang.mjs.map +1 -1
  164. package/es/components/container/src/header.vue_vue_type_template_id_0b1cdaab_lang.mjs.map +1 -1
  165. package/es/components/container/src/main.vue_vue_type_script_lang.mjs.map +1 -1
  166. package/es/components/container/src/main.vue_vue_type_template_id_526ed157_lang.mjs.map +1 -1
  167. package/es/components/date-picker/index.d.ts +16 -6
  168. package/es/components/date-picker/index.mjs.map +1 -1
  169. package/es/components/date-picker/src/date-picker-com/basic-cell-render.mjs +9 -1
  170. package/es/components/date-picker/src/date-picker-com/basic-cell-render.mjs.map +1 -1
  171. package/es/components/date-picker/src/date-picker-com/basic-date-table.vue_vue_type_script_lang.mjs.map +1 -1
  172. package/es/components/date-picker/src/date-picker-com/basic-date-table.vue_vue_type_template_id_0572814e_lang.mjs.map +1 -1
  173. package/es/components/date-picker/src/date-picker-com/basic-month-table.vue_vue_type_script_lang.mjs.map +1 -1
  174. package/es/components/date-picker/src/date-picker-com/basic-month-table.vue_vue_type_template_id_2f6fcbf2_lang.mjs.map +1 -1
  175. package/es/components/date-picker/src/date-picker-com/basic-year-table.vue_vue_type_script_lang.mjs.map +1 -1
  176. package/es/components/date-picker/src/date-picker-com/basic-year-table.vue_vue_type_template_id_441df31d_lang.mjs.map +1 -1
  177. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.mjs.map +1 -1
  178. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_template_id_78e07aa7_lang.mjs +4 -4
  179. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_template_id_78e07aa7_lang.mjs.map +1 -1
  180. package/es/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_script_lang.mjs.map +1 -1
  181. package/es/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_template_id_62b45ab2_lang.mjs +6 -6
  182. package/es/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_template_id_62b45ab2_lang.mjs.map +1 -1
  183. package/es/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.mjs +2 -0
  184. package/es/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.mjs.map +1 -1
  185. package/es/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_template_id_2e377892_lang.mjs.map +1 -1
  186. package/es/components/date-picker/src/date-picker.d.ts +8 -3
  187. package/es/components/date-picker/src/date-picker.mjs +2 -2
  188. package/es/components/date-picker/src/date-picker.mjs.map +1 -1
  189. package/es/components/date-picker/src/date-picker.type.mjs.map +1 -1
  190. package/es/components/descriptions/index.d.ts +1 -1
  191. package/es/components/descriptions/index.mjs.map +1 -1
  192. package/es/components/descriptions/src/description-item.mjs.map +1 -1
  193. package/es/components/descriptions/src/descriptions-cell.mjs +12 -3
  194. package/es/components/descriptions/src/descriptions-cell.mjs.map +1 -1
  195. package/es/components/descriptions/src/descriptions-row.vue_vue_type_script_lang.mjs.map +1 -1
  196. package/es/components/descriptions/src/descriptions-row.vue_vue_type_template_id_29b1db72_lang.mjs.map +1 -1
  197. package/es/components/descriptions/src/index.vue.d.ts +1 -1
  198. package/es/components/descriptions/src/index.vue_vue_type_script_lang.mjs +7 -2
  199. package/es/components/descriptions/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  200. package/es/components/descriptions/src/index.vue_vue_type_template_id_788d3854_lang.mjs +14 -17
  201. package/es/components/descriptions/src/index.vue_vue_type_template_id_788d3854_lang.mjs.map +1 -1
  202. package/es/components/descriptions/src/token.mjs.map +1 -1
  203. package/es/components/dialog/index.d.ts +2 -2
  204. package/es/components/dialog/index.mjs.map +1 -1
  205. package/es/components/dialog/src/dialog.mjs.map +1 -1
  206. package/es/components/dialog/src/dialog.vue.d.ts +2 -2
  207. package/es/components/dialog/src/dialog.vue_vue_type_script_lang.mjs.map +1 -1
  208. package/es/components/dialog/src/dialog.vue_vue_type_template_id_02672805_lang.mjs +3 -3
  209. package/es/components/dialog/src/dialog.vue_vue_type_template_id_02672805_lang.mjs.map +1 -1
  210. package/es/components/dialog/src/use-dialog.mjs +3 -4
  211. package/es/components/dialog/src/use-dialog.mjs.map +1 -1
  212. package/es/components/divider/index.mjs.map +1 -1
  213. package/es/components/divider/src/divider.mjs.map +1 -1
  214. package/es/components/divider/src/divider.vue_vue_type_script_lang.mjs.map +1 -1
  215. package/es/components/divider/src/divider.vue_vue_type_template_id_6ddd3543_lang.mjs.map +1 -1
  216. package/es/components/drawer/index.d.ts +2 -2
  217. package/es/components/drawer/index.mjs.map +1 -1
  218. package/es/components/drawer/src/drawer.mjs.map +1 -1
  219. package/es/components/drawer/src/drawer.vue.d.ts +2 -2
  220. package/es/components/drawer/src/drawer.vue_vue_type_script_lang.mjs.map +1 -1
  221. package/es/components/drawer/src/drawer.vue_vue_type_template_id_e0557736_lang.mjs +3 -3
  222. package/es/components/drawer/src/drawer.vue_vue_type_template_id_e0557736_lang.mjs.map +1 -1
  223. package/es/components/dropdown/index.d.ts +8 -1
  224. package/es/components/dropdown/index.mjs.map +1 -1
  225. package/es/components/dropdown/src/dropdown-item.vue_vue_type_script_lang.mjs.map +1 -1
  226. package/es/components/dropdown/src/dropdown-item.vue_vue_type_template_id_396ed16b_lang.mjs.map +1 -1
  227. package/es/components/dropdown/src/dropdown-menu.vue_vue_type_script_lang.mjs.map +1 -1
  228. package/es/components/dropdown/src/dropdown-menu.vue_vue_type_template_id_617b3492_lang.mjs.map +1 -1
  229. package/es/components/dropdown/src/dropdown.vue.d.ts +8 -1
  230. package/es/components/dropdown/src/dropdown.vue_vue_type_script_lang.mjs +4 -0
  231. package/es/components/dropdown/src/dropdown.vue_vue_type_script_lang.mjs.map +1 -1
  232. package/es/components/dropdown/src/dropdown.vue_vue_type_template_id_3ed790a5_lang.mjs +2 -2
  233. package/es/components/dropdown/src/dropdown.vue_vue_type_template_id_3ed790a5_lang.mjs.map +1 -1
  234. package/es/components/dropdown/src/useDropdown.mjs.map +1 -1
  235. package/es/components/empty/index.mjs.map +1 -1
  236. package/es/components/empty/src/empty.mjs.map +1 -1
  237. package/es/components/empty/src/empty.vue_vue_type_script_lang.mjs.map +1 -1
  238. package/es/components/empty/src/empty.vue_vue_type_template_id_10d211eb_lang.mjs.map +1 -1
  239. package/es/components/empty/src/img-empty.vue_vue_type_script_lang.mjs.map +1 -1
  240. package/es/components/empty/src/img-empty.vue_vue_type_template_id_61c77d3e_lang.mjs.map +1 -1
  241. package/es/components/form/index.mjs.map +1 -1
  242. package/es/components/form/src/form-item.vue_vue_type_script_lang.mjs.map +1 -1
  243. package/es/components/form/src/form-item.vue_vue_type_template_id_24eda48b_lang.mjs.map +1 -1
  244. package/es/components/form/src/form.vue_vue_type_script_lang.mjs.map +1 -1
  245. package/es/components/form/src/form.vue_vue_type_template_id_602d6cf6_lang.mjs.map +1 -1
  246. package/es/components/form/src/label-wrap.mjs.map +1 -1
  247. package/es/components/icon/index.mjs.map +1 -1
  248. package/es/components/icon/src/icon.mjs.map +1 -1
  249. package/es/components/icon/src/icon.vue_vue_type_script_lang.mjs +1 -1
  250. package/es/components/icon/src/icon.vue_vue_type_script_lang.mjs.map +1 -1
  251. package/es/components/icon/src/icon.vue_vue_type_template_id_89b755b6_lang.mjs.map +1 -1
  252. package/es/components/image/index.d.ts +2 -2
  253. package/es/components/image/index.mjs.map +1 -1
  254. package/es/components/image/src/image.mjs.map +1 -1
  255. package/es/components/image/src/image.vue.d.ts +2 -2
  256. package/es/components/image/src/image.vue_vue_type_script_lang.mjs +5 -6
  257. package/es/components/image/src/image.vue_vue_type_script_lang.mjs.map +1 -1
  258. package/es/components/image/src/image.vue_vue_type_template_id_34467287_lang.mjs.map +1 -1
  259. package/es/components/image-viewer/index.mjs.map +1 -1
  260. package/es/components/image-viewer/src/image-viewer.mjs.map +1 -1
  261. package/es/components/image-viewer/src/image-viewer.vue_vue_type_script_lang.mjs.map +1 -1
  262. package/es/components/image-viewer/src/image-viewer.vue_vue_type_template_id_4b22ad85_lang.mjs +1 -0
  263. package/es/components/image-viewer/src/image-viewer.vue_vue_type_template_id_4b22ad85_lang.mjs.map +1 -1
  264. package/es/components/infinite-scroll/index.mjs.map +1 -1
  265. package/es/components/infinite-scroll/src/index.mjs.map +1 -1
  266. package/es/components/input/index.d.ts +4 -4
  267. package/es/components/input/index.mjs.map +1 -1
  268. package/es/components/input/src/calc-textarea-height.mjs.map +1 -1
  269. package/es/components/input/src/input.d.ts +1 -1
  270. package/es/components/input/src/input.mjs.map +1 -1
  271. package/es/components/input/src/input.vue.d.ts +4 -4
  272. package/es/components/input/src/input.vue_vue_type_script_lang.mjs +2 -2
  273. package/es/components/input/src/input.vue_vue_type_script_lang.mjs.map +1 -1
  274. package/es/components/input/src/input.vue_vue_type_template_id_3290dcb6_lang.mjs.map +1 -1
  275. package/es/components/input-number/index.d.ts +16 -15
  276. package/es/components/input-number/index.mjs.map +1 -1
  277. package/es/components/input-number/src/input-number.d.ts +2 -2
  278. package/es/components/input-number/src/input-number.mjs +1 -2
  279. package/es/components/input-number/src/input-number.mjs.map +1 -1
  280. package/es/components/input-number/src/input-number.vue.d.ts +16 -15
  281. package/es/components/input-number/src/input-number.vue_vue_type_script_lang.mjs +9 -11
  282. package/es/components/input-number/src/input-number.vue_vue_type_script_lang.mjs.map +1 -1
  283. package/es/components/input-number/src/input-number.vue_vue_type_template_id_dec60af6_lang.mjs.map +1 -1
  284. package/es/components/link/index.mjs.map +1 -1
  285. package/es/components/link/src/link.mjs.map +1 -1
  286. package/es/components/link/src/link.vue_vue_type_script_lang.mjs.map +1 -1
  287. package/es/components/link/src/link.vue_vue_type_template_id_6a422645_lang.mjs.map +1 -1
  288. package/es/components/loading/index.d.ts +2 -0
  289. package/es/components/loading/index.mjs.map +1 -1
  290. package/es/components/loading/src/directive.mjs.map +1 -1
  291. package/es/components/loading/src/loading.d.ts +1 -0
  292. package/es/components/loading/src/loading.mjs +5 -1
  293. package/es/components/loading/src/loading.mjs.map +1 -1
  294. package/es/components/loading/src/service.mjs +2 -1
  295. package/es/components/loading/src/service.mjs.map +1 -1
  296. package/es/components/menu/index.mjs.map +1 -1
  297. package/es/components/menu/src/menu-collapse-transition.vue_vue_type_script_lang.mjs.map +1 -1
  298. package/es/components/menu/src/menu-collapse-transition.vue_vue_type_template_id_db8e3ce6_lang.mjs.map +1 -1
  299. package/es/components/menu/src/menu-item-group.mjs.map +1 -1
  300. package/es/components/menu/src/menu-item-group.vue_vue_type_script_lang.mjs.map +1 -1
  301. package/es/components/menu/src/menu-item-group.vue_vue_type_template_id_67a2995d_lang.mjs.map +1 -1
  302. package/es/components/menu/src/menu-item.mjs.map +1 -1
  303. package/es/components/menu/src/menu-item.vue_vue_type_script_lang.mjs.map +1 -1
  304. package/es/components/menu/src/menu-item.vue_vue_type_template_id_aa755baa_lang.mjs.map +1 -1
  305. package/es/components/menu/src/menu.mjs.map +1 -1
  306. package/es/components/menu/src/sub-menu.mjs.map +1 -1
  307. package/es/components/menu/src/use-menu-color.mjs +2 -2
  308. package/es/components/menu/src/use-menu-color.mjs.map +1 -1
  309. package/es/components/menu/src/use-menu-css-var.mjs.map +1 -1
  310. package/es/components/menu/src/use-menu.mjs.map +1 -1
  311. package/es/components/message/index.mjs.map +1 -1
  312. package/es/components/message/src/message-method.mjs +3 -3
  313. package/es/components/message/src/message-method.mjs.map +1 -1
  314. package/es/components/message/src/message.mjs.map +1 -1
  315. package/es/components/message/src/message.vue_vue_type_script_lang.mjs.map +1 -1
  316. package/es/components/message/src/message.vue_vue_type_template_id_031967c2_lang.mjs.map +1 -1
  317. package/es/components/message-box/index.mjs.map +1 -1
  318. package/es/components/message-box/src/index.vue.d.ts +3 -4
  319. package/es/components/message-box/src/index.vue_vue_type_script_lang.mjs +1 -1
  320. package/es/components/message-box/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  321. package/es/components/message-box/src/index.vue_vue_type_template_id_7035e868_lang.mjs +5 -6
  322. package/es/components/message-box/src/index.vue_vue_type_template_id_7035e868_lang.mjs.map +1 -1
  323. package/es/components/message-box/src/messageBox.mjs +2 -2
  324. package/es/components/message-box/src/messageBox.mjs.map +1 -1
  325. package/es/components/notification/index.mjs.map +1 -1
  326. package/es/components/notification/src/notification.mjs.map +1 -1
  327. package/es/components/notification/src/notification.vue.d.ts +2 -2
  328. package/es/components/notification/src/notification.vue_vue_type_script_lang.mjs.map +1 -1
  329. package/es/components/notification/src/notification.vue_vue_type_template_id_d6b81f36_lang.mjs.map +1 -1
  330. package/es/components/notification/src/notify.mjs +3 -3
  331. package/es/components/notification/src/notify.mjs.map +1 -1
  332. package/es/components/overlay/index.d.ts +1 -1
  333. package/es/components/overlay/index.mjs.map +1 -1
  334. package/es/components/overlay/src/overlay.d.ts +1 -1
  335. package/es/components/overlay/src/overlay.mjs.map +1 -1
  336. package/es/components/page-header/index.mjs.map +1 -1
  337. package/es/components/page-header/src/page-header.mjs.map +1 -1
  338. package/es/components/page-header/src/page-header.vue_vue_type_script_lang.mjs.map +1 -1
  339. package/es/components/page-header/src/page-header.vue_vue_type_template_id_d12fb4b2_lang.mjs.map +1 -1
  340. package/es/components/pagination/index.mjs.map +1 -1
  341. package/es/components/pagination/src/components/jumper.vue_vue_type_script_lang.mjs.map +1 -1
  342. package/es/components/pagination/src/components/jumper.vue_vue_type_template_id_772239ce_lang.mjs +1 -1
  343. package/es/components/pagination/src/components/jumper.vue_vue_type_template_id_772239ce_lang.mjs.map +1 -1
  344. package/es/components/pagination/src/components/next.vue_vue_type_script_lang.mjs.map +1 -1
  345. package/es/components/pagination/src/components/next.vue_vue_type_template_id_93fbb39e_lang.mjs.map +1 -1
  346. package/es/components/pagination/src/components/pager.vue_vue_type_script_lang.mjs.map +1 -1
  347. package/es/components/pagination/src/components/pager.vue_vue_type_template_id_0bfc9916_lang.mjs.map +1 -1
  348. package/es/components/pagination/src/components/prev.vue_vue_type_script_lang.mjs.map +1 -1
  349. package/es/components/pagination/src/components/prev.vue_vue_type_template_id_15259d71_lang.mjs.map +1 -1
  350. package/es/components/pagination/src/components/sizes.vue_vue_type_script_lang.mjs.map +1 -1
  351. package/es/components/pagination/src/components/sizes.vue_vue_type_template_id_3a063678_lang.mjs +1 -1
  352. package/es/components/pagination/src/components/sizes.vue_vue_type_template_id_3a063678_lang.mjs.map +1 -1
  353. package/es/components/pagination/src/components/total.vue_vue_type_script_lang.mjs.map +1 -1
  354. package/es/components/pagination/src/components/total.vue_vue_type_template_id_bc261314_lang.mjs.map +1 -1
  355. package/es/components/pagination/src/pagination.mjs.map +1 -1
  356. package/es/components/pagination/src/usePagination.mjs.map +1 -1
  357. package/es/components/popconfirm/index.mjs.map +1 -1
  358. package/es/components/popconfirm/src/popconfirm.mjs.map +1 -1
  359. package/es/components/popconfirm/src/popconfirm.vue_vue_type_script_lang.mjs +6 -2
  360. package/es/components/popconfirm/src/popconfirm.vue_vue_type_script_lang.mjs.map +1 -1
  361. package/es/components/popconfirm/src/popconfirm.vue_vue_type_template_id_16409d25_lang.mjs +2 -2
  362. package/es/components/popconfirm/src/popconfirm.vue_vue_type_template_id_16409d25_lang.mjs.map +1 -1
  363. package/es/components/popover/index.mjs.map +1 -1
  364. package/es/components/popover/src/directive.mjs.map +1 -1
  365. package/es/components/popover/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  366. package/es/components/popover/src/usePopover.mjs +1 -1
  367. package/es/components/popover/src/usePopover.mjs.map +1 -1
  368. package/es/components/popper/index.mjs.map +1 -1
  369. package/es/components/popper/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  370. package/es/components/popper/src/renderers/arrow.mjs.map +1 -1
  371. package/es/components/popper/src/renderers/popper.mjs.map +1 -1
  372. package/es/components/popper/src/renderers/trigger.mjs.map +1 -1
  373. package/es/components/popper/src/use-popper/build-modifiers.mjs.map +1 -1
  374. package/es/components/popper/src/use-popper/defaults.mjs.map +1 -1
  375. package/es/components/popper/src/use-popper/index.mjs +6 -2
  376. package/es/components/popper/src/use-popper/index.mjs.map +1 -1
  377. package/es/components/popper/src/use-popper/popper-options.mjs.map +1 -1
  378. package/es/components/progress/index.mjs.map +1 -1
  379. package/es/components/progress/src/progress.mjs.map +1 -1
  380. package/es/components/progress/src/progress.vue_vue_type_script_lang.mjs.map +1 -1
  381. package/es/components/progress/src/progress.vue_vue_type_template_id_9158c3b6_lang.mjs.map +1 -1
  382. package/es/components/radio/index.d.ts +18 -18
  383. package/es/components/radio/index.mjs.map +1 -1
  384. package/es/components/radio/src/radio-button.d.ts +1 -1
  385. package/es/components/radio/src/radio-button.mjs.map +1 -1
  386. package/es/components/radio/src/radio-button.vue.d.ts +4 -4
  387. package/es/components/radio/src/radio-button.vue_vue_type_script_lang.mjs.map +1 -1
  388. package/es/components/radio/src/radio-button.vue_vue_type_template_id_14e266b0_lang.mjs.map +1 -1
  389. package/es/components/radio/src/radio-group.d.ts +1 -1
  390. package/es/components/radio/src/radio-group.mjs.map +1 -1
  391. package/es/components/radio/src/radio-group.vue.d.ts +3 -3
  392. package/es/components/radio/src/radio-group.vue_vue_type_script_lang.mjs.map +1 -1
  393. package/es/components/radio/src/radio-group.vue_vue_type_template_id_53ef81f9_lang.mjs.map +1 -1
  394. package/es/components/radio/src/radio.d.ts +3 -3
  395. package/es/components/radio/src/radio.mjs.map +1 -1
  396. package/es/components/radio/src/radio.vue.d.ts +4 -4
  397. package/es/components/radio/src/radio.vue_vue_type_script_lang.mjs.map +1 -1
  398. package/es/components/radio/src/radio.vue_vue_type_template_id_6aa3dfc7_lang.mjs.map +1 -1
  399. package/es/components/rate/index.mjs.map +1 -1
  400. package/es/components/rate/src/rate.mjs.map +1 -1
  401. package/es/components/rate/src/rate.vue_vue_type_script_lang.mjs.map +1 -1
  402. package/es/components/rate/src/rate.vue_vue_type_template_id_38c42df6_lang.mjs.map +1 -1
  403. package/es/components/result/index.mjs.map +1 -1
  404. package/es/components/result/src/result.mjs.map +1 -1
  405. package/es/components/result/src/result.vue_vue_type_script_lang.mjs.map +1 -1
  406. package/es/components/result/src/result.vue_vue_type_template_id_263c10e5_lang.mjs.map +1 -1
  407. package/es/components/row/index.mjs.map +1 -1
  408. package/es/components/row/src/row.mjs.map +1 -1
  409. package/es/components/scrollbar/index.mjs.map +1 -1
  410. package/es/components/scrollbar/src/bar.mjs.map +1 -1
  411. package/es/components/scrollbar/src/bar.vue_vue_type_script_lang.mjs.map +1 -1
  412. package/es/components/scrollbar/src/bar.vue_vue_type_template_id_2f63f10a_lang.mjs.map +1 -1
  413. package/es/components/scrollbar/src/scrollbar.mjs.map +1 -1
  414. package/es/components/scrollbar/src/scrollbar.vue_vue_type_script_lang.mjs.map +1 -1
  415. package/es/components/scrollbar/src/scrollbar.vue_vue_type_template_id_303f965d_lang.mjs.map +1 -1
  416. package/es/components/scrollbar/src/util.mjs.map +1 -1
  417. package/es/components/select/index.d.ts +2 -2
  418. package/es/components/select/index.mjs.map +1 -1
  419. package/es/components/select/src/option-group.vue_vue_type_script_lang.mjs.map +1 -1
  420. package/es/components/select/src/option-group.vue_vue_type_template_id_072bbb70_lang.mjs.map +1 -1
  421. package/es/components/select/src/option.vue_vue_type_script_lang.mjs.map +1 -1
  422. package/es/components/select/src/option.vue_vue_type_template_id_2feb8304_lang.mjs.map +1 -1
  423. package/es/components/select/src/select-dropdown.vue_vue_type_script_lang.mjs.map +1 -1
  424. package/es/components/select/src/select-dropdown.vue_vue_type_template_id_46cf6eee_lang.mjs.map +1 -1
  425. package/es/components/select/src/select.vue.d.ts +2 -2
  426. package/es/components/select/src/select.vue_vue_type_script_lang.mjs +3 -3
  427. package/es/components/select/src/select.vue_vue_type_script_lang.mjs.map +1 -1
  428. package/es/components/select/src/select.vue_vue_type_template_id_33774f85_lang.mjs.map +1 -1
  429. package/es/components/select/src/token.mjs.map +1 -1
  430. package/es/components/select/src/useOption.mjs.map +1 -1
  431. package/es/components/select/src/useSelect.d.ts +4 -4
  432. package/es/components/select/src/useSelect.mjs +3 -3
  433. package/es/components/select/src/useSelect.mjs.map +1 -1
  434. package/es/components/select-v2/index.d.ts +8 -4
  435. package/es/components/select-v2/index.mjs.map +1 -1
  436. package/es/components/select-v2/src/defaults.mjs.map +1 -1
  437. package/es/components/select-v2/src/group-item.vue_vue_type_script_lang.mjs.map +1 -1
  438. package/es/components/select-v2/src/group-item.vue_vue_type_template_id_bef7365a_lang.mjs.map +1 -1
  439. package/es/components/select-v2/src/option-item.vue_vue_type_script_lang.mjs.map +1 -1
  440. package/es/components/select-v2/src/option-item.vue_vue_type_template_id_119b30a9_lang.mjs.map +1 -1
  441. package/es/components/select-v2/src/select-dropdown.vue_vue_type_script_lang.mjs.map +1 -1
  442. package/es/components/select-v2/src/select.vue.d.ts +4 -2
  443. package/es/components/select-v2/src/select.vue_vue_type_script_lang.mjs.map +1 -1
  444. package/es/components/select-v2/src/select.vue_vue_type_template_id_13e598a4_lang.mjs +12 -3
  445. package/es/components/select-v2/src/select.vue_vue_type_template_id_13e598a4_lang.mjs.map +1 -1
  446. package/es/components/select-v2/src/token.mjs.map +1 -1
  447. package/es/components/select-v2/src/useAllowCreate.mjs.map +1 -1
  448. package/es/components/select-v2/src/useInput.mjs.map +1 -1
  449. package/es/components/select-v2/src/useOption.mjs.map +1 -1
  450. package/es/components/select-v2/src/useSelect.d.ts +4 -2
  451. package/es/components/select-v2/src/useSelect.mjs +19 -10
  452. package/es/components/select-v2/src/useSelect.mjs.map +1 -1
  453. package/es/components/select-v2/src/util.mjs.map +1 -1
  454. package/es/components/skeleton/index.mjs.map +1 -1
  455. package/es/components/skeleton/src/image-placeholder.vue_vue_type_script_lang.mjs.map +1 -1
  456. package/es/components/skeleton/src/image-placeholder.vue_vue_type_template_id_f0b3074e_lang.mjs.map +1 -1
  457. package/es/components/skeleton/src/skeleton-item.mjs.map +1 -1
  458. package/es/components/skeleton/src/skeleton-item.vue_vue_type_script_lang.mjs.map +1 -1
  459. package/es/components/skeleton/src/skeleton-item.vue_vue_type_template_id_7e70bfeb_lang.mjs.map +1 -1
  460. package/es/components/skeleton/src/skeleton.mjs.map +1 -1
  461. package/es/components/skeleton/src/skeleton.vue_vue_type_script_lang.mjs.map +1 -1
  462. package/es/components/skeleton/src/skeleton.vue_vue_type_template_id_26fa9225_lang.mjs.map +1 -1
  463. package/es/components/slider/index.d.ts +2 -2
  464. package/es/components/slider/index.mjs.map +1 -1
  465. package/es/components/slider/src/button.vue_vue_type_script_lang.mjs.map +1 -1
  466. package/es/components/slider/src/button.vue_vue_type_template_id_9cd3e794_lang.mjs.map +1 -1
  467. package/es/components/slider/src/index.vue.d.ts +1 -1
  468. package/es/components/slider/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  469. package/es/components/slider/src/index.vue_vue_type_template_id_24c42d04_lang.mjs.map +1 -1
  470. package/es/components/slider/src/marker.vue_vue_type_script_lang.mjs.map +1 -1
  471. package/es/components/slider/src/useMarks.mjs.map +1 -1
  472. package/es/components/slider/src/useSlide.d.ts +1 -1
  473. package/es/components/slider/src/useSlide.mjs.map +1 -1
  474. package/es/components/slider/src/useSliderButton.mjs.map +1 -1
  475. package/es/components/slider/src/useStops.mjs.map +1 -1
  476. package/es/components/space/index.d.ts +3 -3
  477. package/es/components/space/index.mjs.map +1 -1
  478. package/es/components/space/src/item.vue_vue_type_script_lang.mjs.map +1 -1
  479. package/es/components/space/src/item.vue_vue_type_template_id_88dfb868_lang.mjs.map +1 -1
  480. package/es/components/space/src/space.d.ts +4 -4
  481. package/es/components/space/src/space.mjs.map +1 -1
  482. package/es/components/space/src/use-space.mjs +1 -2
  483. package/es/components/space/src/use-space.mjs.map +1 -1
  484. package/es/components/steps/index.mjs.map +1 -1
  485. package/es/components/steps/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  486. package/es/components/steps/src/index.vue_vue_type_template_id_882d196c_lang.mjs.map +1 -1
  487. package/es/components/steps/src/item.vue_vue_type_script_lang.mjs.map +1 -1
  488. package/es/components/steps/src/item.vue_vue_type_template_id_6ec47f4b_lang.mjs +6 -3
  489. package/es/components/steps/src/item.vue_vue_type_template_id_6ec47f4b_lang.mjs.map +1 -1
  490. package/es/components/switch/index.mjs.map +1 -1
  491. package/es/components/switch/src/switch.mjs +2 -2
  492. package/es/components/switch/src/switch.mjs.map +1 -1
  493. package/es/components/switch/src/switch.vue_vue_type_script_lang.mjs.map +1 -1
  494. package/es/components/switch/src/switch.vue_vue_type_template_id_538fbc85_lang.mjs.map +1 -1
  495. package/es/components/table/index.d.ts +1 -1
  496. package/es/components/table/index.mjs.map +1 -1
  497. package/es/components/table/src/config.mjs.map +1 -1
  498. package/es/components/table/src/filter-panel.vue_vue_type_script_lang.mjs.map +1 -1
  499. package/es/components/table/src/filter-panel.vue_vue_type_template_id_fde1c940_lang.mjs +2 -2
  500. package/es/components/table/src/filter-panel.vue_vue_type_template_id_fde1c940_lang.mjs.map +1 -1
  501. package/es/components/table/src/h-helper.mjs.map +1 -1
  502. package/es/components/table/src/layout-observer.mjs.map +1 -1
  503. package/es/components/table/src/store/current.mjs.map +1 -1
  504. package/es/components/table/src/store/expand.mjs.map +1 -1
  505. package/es/components/table/src/store/helper.mjs.map +1 -1
  506. package/es/components/table/src/store/index.mjs.map +1 -1
  507. package/es/components/table/src/store/tree.mjs.map +1 -1
  508. package/es/components/table/src/store/watcher.mjs.map +1 -1
  509. package/es/components/table/src/table/defaults.mjs.map +1 -1
  510. package/es/components/table/src/table/style-helper.d.ts +1 -1
  511. package/es/components/table/src/table/style-helper.mjs.map +1 -1
  512. package/es/components/table/src/table/utils-helper.mjs.map +1 -1
  513. package/es/components/table/src/table-body/defaults.mjs.map +1 -1
  514. package/es/components/table/src/table-body/events-helper.mjs.map +1 -1
  515. package/es/components/table/src/table-body/index.mjs +2 -2
  516. package/es/components/table/src/table-body/index.mjs.map +1 -1
  517. package/es/components/table/src/table-body/render-helper.mjs.map +1 -1
  518. package/es/components/table/src/table-body/styles-helper.mjs.map +1 -1
  519. package/es/components/table/src/table-column/defaults.mjs.map +1 -1
  520. package/es/components/table/src/table-column/index.mjs.map +1 -1
  521. package/es/components/table/src/table-column/render-helper.mjs.map +1 -1
  522. package/es/components/table/src/table-column/watcher-helper.mjs.map +1 -1
  523. package/es/components/table/src/table-footer/index.mjs.map +1 -1
  524. package/es/components/table/src/table-footer/mapState-helper.mjs.map +1 -1
  525. package/es/components/table/src/table-footer/style-helper.mjs.map +1 -1
  526. package/es/components/table/src/table-header/event-helper.mjs +3 -3
  527. package/es/components/table/src/table-header/event-helper.mjs.map +1 -1
  528. package/es/components/table/src/table-header/index.mjs.map +1 -1
  529. package/es/components/table/src/table-header/style.helper.mjs.map +1 -1
  530. package/es/components/table/src/table-header/utils-helper.mjs.map +1 -1
  531. package/es/components/table/src/table-layout.mjs +3 -3
  532. package/es/components/table/src/table-layout.mjs.map +1 -1
  533. package/es/components/table/src/table.vue.d.ts +1 -1
  534. package/es/components/table/src/table.vue_vue_type_script_lang.mjs.map +1 -1
  535. package/es/components/table/src/table.vue_vue_type_template_id_4a1660ad_lang.mjs +2 -2
  536. package/es/components/table/src/table.vue_vue_type_template_id_4a1660ad_lang.mjs.map +1 -1
  537. package/es/components/table/src/util.mjs +1 -1
  538. package/es/components/table/src/util.mjs.map +1 -1
  539. package/es/components/tabs/index.mjs.map +1 -1
  540. package/es/components/tabs/src/tab-bar.mjs.map +1 -1
  541. package/es/components/tabs/src/tab-bar.vue_vue_type_script_lang.mjs.map +1 -1
  542. package/es/components/tabs/src/tab-bar.vue_vue_type_template_id_09e034e4_lang.mjs.map +1 -1
  543. package/es/components/tabs/src/tab-nav.mjs.map +1 -1
  544. package/es/components/tabs/src/tab-pane.mjs.map +1 -1
  545. package/es/components/tabs/src/tab-pane.vue_vue_type_script_lang.mjs.map +1 -1
  546. package/es/components/tabs/src/tab-pane.vue_vue_type_template_id_46ec5d32_lang.mjs.map +1 -1
  547. package/es/components/tabs/src/tabs.mjs.map +1 -1
  548. package/es/components/tag/index.d.ts +3 -3
  549. package/es/components/tag/index.mjs.map +1 -1
  550. package/es/components/tag/src/tag.d.ts +1 -1
  551. package/es/components/tag/src/tag.mjs +1 -1
  552. package/es/components/tag/src/tag.mjs.map +1 -1
  553. package/es/components/tag/src/tag.vue.d.ts +3 -3
  554. package/es/components/tag/src/tag.vue_vue_type_script_lang.mjs +2 -1
  555. package/es/components/tag/src/tag.vue_vue_type_script_lang.mjs.map +1 -1
  556. package/es/components/tag/src/tag.vue_vue_type_template_id_525996c5_lang.mjs +9 -3
  557. package/es/components/tag/src/tag.vue_vue_type_template_id_525996c5_lang.mjs.map +1 -1
  558. package/es/components/teleport/index.d.ts +1 -1
  559. package/es/components/teleport/index.mjs.map +1 -1
  560. package/es/components/teleport/src/teleport.mjs.map +1 -1
  561. package/es/components/teleport/src/teleport.vue.d.ts +1 -1
  562. package/es/components/teleport/src/teleport.vue_vue_type_script_lang.mjs +2 -2
  563. package/es/components/teleport/src/teleport.vue_vue_type_script_lang.mjs.map +1 -1
  564. package/es/components/teleport/src/teleport.vue_vue_type_template_id_787c6a36_lang.mjs.map +1 -1
  565. package/es/components/time-picker/index.d.ts +16 -6
  566. package/es/components/time-picker/index.mjs.map +1 -1
  567. package/es/components/time-picker/src/common/constant.mjs.map +1 -1
  568. package/es/components/time-picker/src/common/date-utils.mjs.map +1 -1
  569. package/es/components/time-picker/src/common/picker.vue.d.ts +10 -4
  570. package/es/components/time-picker/src/common/picker.vue_vue_type_script_lang.mjs +17 -1
  571. package/es/components/time-picker/src/common/picker.vue_vue_type_script_lang.mjs.map +1 -1
  572. package/es/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.mjs +6 -3
  573. package/es/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.mjs.map +1 -1
  574. package/es/components/time-picker/src/common/props.d.ts +4 -1
  575. package/es/components/time-picker/src/common/props.mjs +4 -1
  576. package/es/components/time-picker/src/common/props.mjs.map +1 -1
  577. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.vue.d.ts +1 -1
  578. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_lang.mjs.map +1 -1
  579. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_template_id_4fb3c576_lang.mjs +5 -4
  580. package/es/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_template_id_4fb3c576_lang.mjs.map +1 -1
  581. package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue_vue_type_script_lang.mjs.map +1 -1
  582. package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue_vue_type_template_id_3b3cfa6a_lang.mjs.map +1 -1
  583. package/es/components/time-picker/src/time-picker-com/panel-time-range.vue_vue_type_script_lang.mjs.map +1 -1
  584. package/es/components/time-picker/src/time-picker-com/panel-time-range.vue_vue_type_template_id_57d94b44_lang.mjs.map +1 -1
  585. package/es/components/time-picker/src/time-picker-com/useTimePicker.mjs.map +1 -1
  586. package/es/components/time-picker/src/time-picker.d.ts +8 -3
  587. package/es/components/time-picker/src/time-picker.mjs.map +1 -1
  588. package/es/components/time-select/index.mjs.map +1 -1
  589. package/es/components/time-select/src/time-select.vue_vue_type_script_lang.mjs +2 -2
  590. package/es/components/time-select/src/time-select.vue_vue_type_script_lang.mjs.map +1 -1
  591. package/es/components/time-select/src/time-select.vue_vue_type_template_id_5beb6389_lang.mjs.map +1 -1
  592. package/es/components/timeline/index.mjs.map +1 -1
  593. package/es/components/timeline/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  594. package/es/components/timeline/src/item.vue_vue_type_script_lang.mjs.map +1 -1
  595. package/es/components/timeline/src/item.vue_vue_type_template_id_174d5b12_lang.mjs.map +1 -1
  596. package/es/components/tooltip/index.mjs.map +1 -1
  597. package/es/components/tooltip/src/index.mjs.map +1 -1
  598. package/es/components/transfer/index.mjs.map +1 -1
  599. package/es/components/transfer/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  600. package/es/components/transfer/src/index.vue_vue_type_template_id_6c8b9070_lang.mjs.map +1 -1
  601. package/es/components/transfer/src/transfer-panel.vue_vue_type_script_lang.mjs.map +1 -1
  602. package/es/components/transfer/src/transfer-panel.vue_vue_type_template_id_1a7d1f9c_lang.mjs.map +1 -1
  603. package/es/components/transfer/src/useCheck.mjs.map +1 -1
  604. package/es/components/transfer/src/useCheckedChange.mjs.map +1 -1
  605. package/es/components/transfer/src/useComputedData.mjs.map +1 -1
  606. package/es/components/transfer/src/useMove.mjs.map +1 -1
  607. package/es/components/tree/index.mjs.map +1 -1
  608. package/es/components/tree/src/model/node.mjs.map +1 -1
  609. package/es/components/tree/src/model/tree-store.mjs.map +1 -1
  610. package/es/components/tree/src/model/useDragNode.mjs.map +1 -1
  611. package/es/components/tree/src/model/useKeydown.mjs.map +1 -1
  612. package/es/components/tree/src/model/useNodeExpandEventBroadcast.mjs.map +1 -1
  613. package/es/components/tree/src/model/util.mjs.map +1 -1
  614. package/es/components/tree/src/tree-node-content.vue_vue_type_script_lang.mjs.map +1 -1
  615. package/es/components/tree/src/tree-node.vue_vue_type_script_lang.mjs.map +1 -1
  616. package/es/components/tree/src/tree-node.vue_vue_type_template_id_62959aba_lang.mjs.map +1 -1
  617. package/es/components/tree/src/tree.vue_vue_type_script_lang.mjs.map +1 -1
  618. package/es/components/tree/src/tree.vue_vue_type_template_id_7539bec5_lang.mjs.map +1 -1
  619. package/es/components/tree-v2/index.mjs.map +1 -1
  620. package/es/components/tree-v2/src/composables/useCheck.mjs.map +1 -1
  621. package/es/components/tree-v2/src/composables/useFilter.mjs.map +1 -1
  622. package/es/components/tree-v2/src/composables/useTree.d.ts +1 -1
  623. package/es/components/tree-v2/src/composables/useTree.mjs.map +1 -1
  624. package/es/components/tree-v2/src/tree-node-content.mjs.map +1 -1
  625. package/es/components/tree-v2/src/tree-node.vue_vue_type_script_lang.mjs.map +1 -1
  626. package/es/components/tree-v2/src/tree-node.vue_vue_type_template_id_71d8f826_lang.mjs.map +1 -1
  627. package/es/components/tree-v2/src/tree.vue_vue_type_script_lang.mjs.map +1 -1
  628. package/es/components/tree-v2/src/tree.vue_vue_type_template_id_5b45a1b2_lang.mjs +3 -3
  629. package/es/components/tree-v2/src/tree.vue_vue_type_template_id_5b45a1b2_lang.mjs.map +1 -1
  630. package/es/components/tree-v2/src/virtual-tree.mjs.map +1 -1
  631. package/es/components/upload/index.mjs.map +1 -1
  632. package/es/components/upload/src/ajax.mjs.map +1 -1
  633. package/es/components/upload/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  634. package/es/components/upload/src/upload-dragger.vue_vue_type_script_lang.mjs.map +1 -1
  635. package/es/components/upload/src/upload-dragger.vue_vue_type_template_id_4f8ef690_lang.mjs.map +1 -1
  636. package/es/components/upload/src/upload-list.vue.d.ts +1 -1
  637. package/es/components/upload/src/upload-list.vue_vue_type_script_lang.mjs +1 -1
  638. package/es/components/upload/src/upload-list.vue_vue_type_script_lang.mjs.map +1 -1
  639. package/es/components/upload/src/upload-list.vue_vue_type_template_id_192277b6_lang.mjs +5 -4
  640. package/es/components/upload/src/upload-list.vue_vue_type_template_id_192277b6_lang.mjs.map +1 -1
  641. package/es/components/upload/src/upload.vue_vue_type_script_lang.mjs.map +1 -1
  642. package/es/components/upload/src/upload.vue_vue_type_template_id_efd50b36_lang.mjs.map +1 -1
  643. package/es/components/upload/src/useHandlers.mjs +2 -2
  644. package/es/components/upload/src/useHandlers.mjs.map +1 -1
  645. package/es/components/virtual-list/src/builders/build-grid.mjs +2 -2
  646. package/es/components/virtual-list/src/builders/build-grid.mjs.map +1 -1
  647. package/es/components/virtual-list/src/builders/build-list.mjs +2 -2
  648. package/es/components/virtual-list/src/builders/build-list.mjs.map +1 -1
  649. package/es/components/virtual-list/src/components/dynamic-size-grid.mjs.map +1 -1
  650. package/es/components/virtual-list/src/components/dynamic-size-list.mjs.map +1 -1
  651. package/es/components/virtual-list/src/components/fixed-size-grid.mjs.map +1 -1
  652. package/es/components/virtual-list/src/components/fixed-size-list.mjs.map +1 -1
  653. package/es/components/virtual-list/src/components/scrollbar.mjs +2 -2
  654. package/es/components/virtual-list/src/components/scrollbar.mjs.map +1 -1
  655. package/es/components/virtual-list/src/defaults.mjs.map +1 -1
  656. package/es/components/virtual-list/src/hooks/use-cache.mjs.map +1 -1
  657. package/es/components/virtual-list/src/hooks/use-grid-wheel.mjs.map +1 -1
  658. package/es/components/virtual-list/src/hooks/use-wheel.mjs.map +1 -1
  659. package/es/components/virtual-list/src/props.mjs.map +1 -1
  660. package/es/components/virtual-list/src/utils.mjs.map +1 -1
  661. package/es/defaults.d.ts +1 -1
  662. package/es/defaults.mjs.map +1 -1
  663. package/es/directives/click-outside/index.mjs +2 -2
  664. package/es/directives/click-outside/index.mjs.map +1 -1
  665. package/es/directives/mousewheel/index.mjs.map +1 -1
  666. package/es/directives/repeat-click/index.mjs.map +1 -1
  667. package/es/directives/resize/index.mjs.map +1 -1
  668. package/es/directives/trap-focus/index.mjs.map +1 -1
  669. package/es/hooks/use-attrs/index.mjs.map +1 -1
  670. package/es/hooks/use-common-props/index.d.ts +2 -2
  671. package/es/hooks/use-common-props/index.mjs +1 -4
  672. package/es/hooks/use-common-props/index.mjs.map +1 -1
  673. package/es/hooks/use-focus/index.mjs.map +1 -1
  674. package/es/hooks/use-form-item/index.mjs.map +1 -1
  675. package/es/hooks/use-global-config/index.mjs +4 -2
  676. package/es/hooks/use-global-config/index.mjs.map +1 -1
  677. package/es/hooks/use-locale/index.mjs.map +1 -1
  678. package/es/hooks/use-lockscreen/index.mjs +2 -2
  679. package/es/hooks/use-lockscreen/index.mjs.map +1 -1
  680. package/es/hooks/use-modal/index.mjs.map +1 -1
  681. package/es/hooks/use-model-toggle/index.mjs +4 -4
  682. package/es/hooks/use-model-toggle/index.mjs.map +1 -1
  683. package/es/hooks/use-popper/index.mjs +1 -1
  684. package/es/hooks/use-popper/index.mjs.map +1 -1
  685. package/es/hooks/use-popper/use-popper-options.mjs.map +1 -1
  686. package/es/hooks/use-popper/use-target-events.mjs.map +1 -1
  687. package/es/hooks/use-prevent-global/index.mjs.map +1 -1
  688. package/es/hooks/use-prop/index.mjs.map +1 -1
  689. package/es/hooks/use-restore-active/index.mjs.map +1 -1
  690. package/es/hooks/use-same-target/index.mjs.map +1 -1
  691. package/es/hooks/use-teleport/index.mjs.map +1 -1
  692. package/es/hooks/use-throttle-render/index.mjs.map +1 -1
  693. package/es/hooks/use-timeout/index.mjs.map +1 -1
  694. package/es/hooks/use-transition-fallthrough/index.mjs.map +1 -1
  695. package/es/index.d.ts +3 -2
  696. package/es/index.mjs.map +1 -1
  697. package/es/locale/lang/af.mjs.map +1 -1
  698. package/es/locale/lang/ar.mjs.map +1 -1
  699. package/es/locale/lang/bg.mjs.map +1 -1
  700. package/es/locale/lang/bn.mjs.map +1 -1
  701. package/es/locale/lang/ca.mjs.map +1 -1
  702. package/es/locale/lang/cs.mjs.map +1 -1
  703. package/es/locale/lang/da.mjs.map +1 -1
  704. package/es/locale/lang/de.mjs.map +1 -1
  705. package/es/locale/lang/el.mjs.map +1 -1
  706. package/es/locale/lang/en.mjs.map +1 -1
  707. package/es/locale/lang/eo.mjs.map +1 -1
  708. package/es/locale/lang/es.mjs.map +1 -1
  709. package/es/locale/lang/et.mjs.map +1 -1
  710. package/es/locale/lang/eu.mjs.map +1 -1
  711. package/es/locale/lang/fa.mjs.map +1 -1
  712. package/es/locale/lang/fi.mjs.map +1 -1
  713. package/es/locale/lang/fr.mjs.map +1 -1
  714. package/es/locale/lang/he.mjs.map +1 -1
  715. package/es/locale/lang/hr.mjs.map +1 -1
  716. package/es/locale/lang/hu.mjs.map +1 -1
  717. package/es/locale/lang/hy-am.mjs.map +1 -1
  718. package/es/locale/lang/id.mjs.map +1 -1
  719. package/es/locale/lang/it.mjs.map +1 -1
  720. package/es/locale/lang/ja.mjs.map +1 -1
  721. package/es/locale/lang/kk.mjs.map +1 -1
  722. package/es/locale/lang/km.mjs +19 -19
  723. package/es/locale/lang/km.mjs.map +1 -1
  724. package/es/locale/lang/ko.mjs.map +1 -1
  725. package/es/locale/lang/ku.mjs.map +1 -1
  726. package/es/locale/lang/ky.mjs.map +1 -1
  727. package/es/locale/lang/lt.mjs.map +1 -1
  728. package/es/locale/lang/lv.mjs.map +1 -1
  729. package/es/locale/lang/mn.mjs.map +1 -1
  730. package/es/locale/lang/nb-no.mjs.map +1 -1
  731. package/es/locale/lang/nl.mjs.map +1 -1
  732. package/es/locale/lang/pa.mjs.map +1 -1
  733. package/es/locale/lang/pl.mjs.map +1 -1
  734. package/es/locale/lang/pt-br.mjs.map +1 -1
  735. package/es/locale/lang/pt.mjs.map +1 -1
  736. package/es/locale/lang/ro.mjs.map +1 -1
  737. package/es/locale/lang/ru.mjs.map +1 -1
  738. package/es/locale/lang/sk.mjs.map +1 -1
  739. package/es/locale/lang/sl.mjs.map +1 -1
  740. package/es/locale/lang/sr.mjs.map +1 -1
  741. package/es/locale/lang/sv.mjs.map +1 -1
  742. package/es/locale/lang/ta.mjs.map +1 -1
  743. package/es/locale/lang/th.mjs.map +1 -1
  744. package/es/locale/lang/tk.mjs.map +1 -1
  745. package/es/locale/lang/tr.mjs.map +1 -1
  746. package/es/locale/lang/ug-cn.mjs.map +1 -1
  747. package/es/locale/lang/uk.mjs.map +1 -1
  748. package/es/locale/lang/uz-uz.mjs.map +1 -1
  749. package/es/locale/lang/vi.mjs.map +1 -1
  750. package/es/locale/lang/zh-cn.mjs.map +1 -1
  751. package/es/locale/lang/zh-tw.mjs.map +1 -1
  752. package/es/make-installer.d.ts +1 -2
  753. package/es/make-installer.mjs +4 -18
  754. package/es/make-installer.mjs.map +1 -1
  755. package/es/plugin.mjs.map +1 -1
  756. package/es/tokens/breadcrumb.mjs.map +1 -1
  757. package/es/tokens/button.mjs.map +1 -1
  758. package/es/tokens/config-provider.mjs.map +1 -1
  759. package/es/tokens/form.mjs.map +1 -1
  760. package/es/tokens/pagination.mjs.map +1 -1
  761. package/es/tokens/radio.mjs.map +1 -1
  762. package/es/tokens/scrollbar.mjs.map +1 -1
  763. package/es/tokens/tabs.mjs.map +1 -1
  764. package/es/utils/animation.mjs.map +1 -1
  765. package/es/utils/aria.mjs.map +1 -1
  766. package/es/utils/constants.mjs.map +1 -1
  767. package/es/utils/dom.mjs +5 -5
  768. package/es/utils/dom.mjs.map +1 -1
  769. package/es/utils/error.mjs.map +1 -1
  770. package/es/utils/global-nodes.mjs +2 -2
  771. package/es/utils/global-nodes.mjs.map +1 -1
  772. package/es/utils/icon.mjs.map +1 -1
  773. package/es/utils/isDef.mjs.map +1 -1
  774. package/es/utils/menu/menu-bar.mjs.map +1 -1
  775. package/es/utils/menu/menu-item.mjs.map +1 -1
  776. package/es/utils/menu/submenu.mjs.map +1 -1
  777. package/es/utils/popup-manager.d.ts +5 -3
  778. package/es/utils/popup-manager.mjs +26 -30
  779. package/es/utils/popup-manager.mjs.map +1 -1
  780. package/es/utils/props.d.ts +3 -3
  781. package/es/utils/props.mjs +1 -1
  782. package/es/utils/props.mjs.map +1 -1
  783. package/es/utils/raf.mjs +2 -2
  784. package/es/utils/raf.mjs.map +1 -1
  785. package/es/utils/resize-event.mjs +2 -2
  786. package/es/utils/resize-event.mjs.map +1 -1
  787. package/es/utils/scroll-into-view.mjs +2 -2
  788. package/es/utils/scroll-into-view.mjs.map +1 -1
  789. package/es/utils/scrollbar-width.mjs +2 -2
  790. package/es/utils/scrollbar-width.mjs.map +1 -1
  791. package/es/utils/types.d.ts +1 -1
  792. package/es/utils/util.d.ts +1 -8
  793. package/es/utils/util.mjs +4 -12
  794. package/es/utils/util.mjs.map +1 -1
  795. package/es/utils/validators.mjs +2 -3
  796. package/es/utils/validators.mjs.map +1 -1
  797. package/es/utils/vnode.mjs.map +1 -1
  798. package/es/utils/with-install.mjs.map +1 -1
  799. package/es/version.d.ts +1 -1
  800. package/es/version.mjs +1 -1
  801. package/es/version.mjs.map +1 -1
  802. package/lib/component.js.map +1 -1
  803. package/lib/components/affix/index.d.ts +1 -1
  804. package/lib/components/affix/index.js.map +1 -1
  805. package/lib/components/affix/src/affix.js.map +1 -1
  806. package/lib/components/affix/src/affix.vue.d.ts +1 -1
  807. package/lib/components/affix/src/affix.vue_vue_type_script_lang.js +1 -1
  808. package/lib/components/affix/src/affix.vue_vue_type_script_lang.js.map +1 -1
  809. package/lib/components/affix/src/affix.vue_vue_type_template_id_0745df9e_lang.js.map +1 -1
  810. package/lib/components/alert/index.js.map +1 -1
  811. package/lib/components/alert/src/alert.js.map +1 -1
  812. package/lib/components/alert/src/alert.vue_vue_type_script_lang.js.map +1 -1
  813. package/lib/components/alert/src/alert.vue_vue_type_template_id_1755b449_lang.js.map +1 -1
  814. package/lib/components/autocomplete/index.js.map +1 -1
  815. package/lib/components/autocomplete/src/index.vue_vue_type_script_lang.js.map +1 -1
  816. package/lib/components/autocomplete/src/index.vue_vue_type_template_id_2f09f285_lang.js +2 -2
  817. package/lib/components/autocomplete/src/index.vue_vue_type_template_id_2f09f285_lang.js.map +1 -1
  818. package/lib/components/avatar/index.d.ts +3 -3
  819. package/lib/components/avatar/index.js.map +1 -1
  820. package/lib/components/avatar/src/avatar.d.ts +1 -1
  821. package/lib/components/avatar/src/avatar.js +1 -1
  822. package/lib/components/avatar/src/avatar.js.map +1 -1
  823. package/lib/components/avatar/src/avatar.vue.d.ts +3 -3
  824. package/lib/components/avatar/src/avatar.vue_vue_type_script_lang.js +1 -3
  825. package/lib/components/avatar/src/avatar.vue_vue_type_script_lang.js.map +1 -1
  826. package/lib/components/avatar/src/avatar.vue_vue_type_template_id_46e3f365_lang.js.map +1 -1
  827. package/lib/components/backtop/index.js.map +1 -1
  828. package/lib/components/backtop/src/backtop.js.map +1 -1
  829. package/lib/components/backtop/src/backtop.vue_vue_type_script_lang.js.map +1 -1
  830. package/lib/components/backtop/src/backtop.vue_vue_type_template_id_63a7fea6_lang.js.map +1 -1
  831. package/lib/components/badge/index.js.map +1 -1
  832. package/lib/components/badge/src/badge.js.map +1 -1
  833. package/lib/components/badge/src/badge.vue_vue_type_script_lang.js.map +1 -1
  834. package/lib/components/badge/src/badge.vue_vue_type_template_id_020a5517_lang.js.map +1 -1
  835. package/lib/components/breadcrumb/index.js.map +1 -1
  836. package/lib/components/breadcrumb/src/breadcrumb-item.js.map +1 -1
  837. package/lib/components/breadcrumb/src/breadcrumb-item.vue_vue_type_script_lang.js.map +1 -1
  838. package/lib/components/breadcrumb/src/breadcrumb-item.vue_vue_type_template_id_2f37792a_lang.js.map +1 -1
  839. package/lib/components/breadcrumb/src/breadcrumb.js.map +1 -1
  840. package/lib/components/breadcrumb/src/breadcrumb.vue_vue_type_script_lang.js.map +1 -1
  841. package/lib/components/breadcrumb/src/breadcrumb.vue_vue_type_template_id_b67a42b6_lang.js.map +1 -1
  842. package/lib/components/button/index.d.ts +11 -11
  843. package/lib/components/button/index.js.map +1 -1
  844. package/lib/components/button/src/button-group.d.ts +1 -1
  845. package/lib/components/button/src/button-group.js.map +1 -1
  846. package/lib/components/button/src/button-group.vue.d.ts +3 -3
  847. package/lib/components/button/src/button-group.vue_vue_type_script_lang.js.map +1 -1
  848. package/lib/components/button/src/button-group.vue_vue_type_template_id_1bab7d77_lang.js.map +1 -1
  849. package/lib/components/button/src/button.d.ts +2 -2
  850. package/lib/components/button/src/button.js +1 -1
  851. package/lib/components/button/src/button.js.map +1 -1
  852. package/lib/components/button/src/button.vue.d.ts +5 -5
  853. package/lib/components/button/src/button.vue_vue_type_script_lang.js +12 -12
  854. package/lib/components/button/src/button.vue_vue_type_script_lang.js.map +1 -1
  855. package/lib/components/button/src/button.vue_vue_type_template_id_802c5c76_lang.js.map +1 -1
  856. package/lib/components/calendar/index.js.map +1 -1
  857. package/lib/components/calendar/src/calendar.js.map +1 -1
  858. package/lib/components/calendar/src/calendar.vue_vue_type_script_lang.js.map +1 -1
  859. package/lib/components/calendar/src/calendar.vue_vue_type_template_id_76705c76_lang.js +3 -3
  860. package/lib/components/calendar/src/calendar.vue_vue_type_template_id_76705c76_lang.js.map +1 -1
  861. package/lib/components/calendar/src/date-table.js.map +1 -1
  862. package/lib/components/calendar/src/date-table.vue_vue_type_script_lang.js.map +1 -1
  863. package/lib/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.js.map +1 -1
  864. package/lib/components/card/index.js.map +1 -1
  865. package/lib/components/card/src/card.js.map +1 -1
  866. package/lib/components/card/src/card.vue_vue_type_script_lang.js.map +1 -1
  867. package/lib/components/card/src/card.vue_vue_type_template_id_7a6bdf05_lang.js.map +1 -1
  868. package/lib/components/carousel/index.js.map +1 -1
  869. package/lib/components/carousel/src/item.vue_vue_type_script_lang.js.map +1 -1
  870. package/lib/components/carousel/src/item.vue_vue_type_template_id_3d2e4fb8_lang.js.map +1 -1
  871. package/lib/components/carousel/src/main.vue_vue_type_script_lang.js.map +1 -1
  872. package/lib/components/carousel/src/main.vue_vue_type_template_id_1303d144_lang.js.map +1 -1
  873. package/lib/components/cascader/index.d.ts +18 -18
  874. package/lib/components/cascader/index.js.map +1 -1
  875. package/lib/components/cascader/src/index.vue.d.ts +9 -9
  876. package/lib/components/cascader/src/index.vue_vue_type_script_lang.js +6 -6
  877. package/lib/components/cascader/src/index.vue_vue_type_script_lang.js.map +1 -1
  878. package/lib/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.js +2 -2
  879. package/lib/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.js.map +1 -1
  880. package/lib/components/cascader-panel/index.js.map +1 -1
  881. package/lib/components/cascader-panel/src/config.js.map +1 -1
  882. package/lib/components/cascader-panel/src/index.vue_vue_type_script_lang.js +2 -2
  883. package/lib/components/cascader-panel/src/index.vue_vue_type_script_lang.js.map +1 -1
  884. package/lib/components/cascader-panel/src/index.vue_vue_type_template_id_97c48f5c_lang.js +1 -0
  885. package/lib/components/cascader-panel/src/index.vue_vue_type_template_id_97c48f5c_lang.js.map +1 -1
  886. package/lib/components/cascader-panel/src/menu.vue_vue_type_script_lang.js.map +1 -1
  887. package/lib/components/cascader-panel/src/menu.vue_vue_type_template_id_9c79e4e2_lang.js.map +1 -1
  888. package/lib/components/cascader-panel/src/node-content.js.map +1 -1
  889. package/lib/components/cascader-panel/src/node.js.map +1 -1
  890. package/lib/components/cascader-panel/src/node.vue_vue_type_script_lang.js.map +1 -1
  891. package/lib/components/cascader-panel/src/node.vue_vue_type_template_id_18b09cb2_lang.js.map +1 -1
  892. package/lib/components/cascader-panel/src/store.js.map +1 -1
  893. package/lib/components/cascader-panel/src/types.js.map +1 -1
  894. package/lib/components/cascader-panel/src/utils.js.map +1 -1
  895. package/lib/components/check-tag/index.js.map +1 -1
  896. package/lib/components/check-tag/src/index.vue_vue_type_script_lang.js.map +1 -1
  897. package/lib/components/check-tag/src/index.vue_vue_type_template_id_58558910_lang.js.map +1 -1
  898. package/lib/components/checkbox/index.d.ts +32 -14
  899. package/lib/components/checkbox/index.js.map +1 -1
  900. package/lib/components/checkbox/src/checkbox-button.vue.d.ts +1 -1
  901. package/lib/components/checkbox/src/checkbox-button.vue_vue_type_script_lang.js.map +1 -1
  902. package/lib/components/checkbox/src/checkbox-button.vue_vue_type_template_id_f839a66c_lang.js.map +1 -1
  903. package/lib/components/checkbox/src/checkbox-group.js +0 -2
  904. package/lib/components/checkbox/src/checkbox-group.js.map +1 -1
  905. package/lib/components/checkbox/src/checkbox-group.vue.d.ts +14 -5
  906. package/lib/components/checkbox/src/checkbox-group.vue_vue_type_script_lang.js +16 -5
  907. package/lib/components/checkbox/src/checkbox-group.vue_vue_type_script_lang.js.map +1 -1
  908. package/lib/components/checkbox/src/checkbox.vue.d.ts +2 -2
  909. package/lib/components/checkbox/src/checkbox.vue_vue_type_script_lang.js.map +1 -1
  910. package/lib/components/checkbox/src/checkbox.vue_vue_type_template_id_2c9881e5_lang.js.map +1 -1
  911. package/lib/components/checkbox/src/useCheckbox.d.ts +2 -2
  912. package/lib/components/checkbox/src/useCheckbox.js.map +1 -1
  913. package/lib/components/col/index.js.map +1 -1
  914. package/lib/components/col/src/col.js.map +1 -1
  915. package/lib/components/collapse/index.js.map +1 -1
  916. package/lib/components/collapse/src/collapse-item.vue_vue_type_script_lang.js.map +1 -1
  917. package/lib/components/collapse/src/collapse-item.vue_vue_type_template_id_80da782a_lang.js.map +1 -1
  918. package/lib/components/collapse/src/collapse.vue_vue_type_script_lang.js.map +1 -1
  919. package/lib/components/collapse/src/collapse.vue_vue_type_template_id_71a60e25_lang.js.map +1 -1
  920. package/lib/components/collapse-transition/index.js.map +1 -1
  921. package/lib/components/collapse-transition/src/collapse-transition.vue_vue_type_script_lang.js.map +1 -1
  922. package/lib/components/collapse-transition/src/collapse-transition.vue_vue_type_template_id_f68ae30a_lang.js.map +1 -1
  923. package/lib/components/color-picker/index.d.ts +2 -2
  924. package/lib/components/color-picker/index.js.map +1 -1
  925. package/lib/components/color-picker/src/color.js.map +1 -1
  926. package/lib/components/color-picker/src/components/alpha-slider.vue.d.ts +2 -2
  927. package/lib/components/color-picker/src/components/alpha-slider.vue_vue_type_script_lang.js.map +1 -1
  928. package/lib/components/color-picker/src/components/alpha-slider.vue_vue_type_template_id_4fb2624c_lang.js.map +1 -1
  929. package/lib/components/color-picker/src/components/hue-slider.vue_vue_type_script_lang.js.map +1 -1
  930. package/lib/components/color-picker/src/components/hue-slider.vue_vue_type_template_id_129d2b72_lang.js.map +1 -1
  931. package/lib/components/color-picker/src/components/predefine.vue_vue_type_script_lang.js.map +1 -1
  932. package/lib/components/color-picker/src/components/predefine.vue_vue_type_template_id_391a669c_lang.js.map +1 -1
  933. package/lib/components/color-picker/src/components/sv-panel.vue_vue_type_script_lang.js.map +1 -1
  934. package/lib/components/color-picker/src/components/sv-panel.vue_vue_type_template_id_67046d94_lang.js.map +1 -1
  935. package/lib/components/color-picker/src/draggable.js +2 -2
  936. package/lib/components/color-picker/src/draggable.js.map +1 -1
  937. package/lib/components/color-picker/src/index.vue.d.ts +1 -1
  938. package/lib/components/color-picker/src/index.vue_vue_type_script_lang.js.map +1 -1
  939. package/lib/components/color-picker/src/index.vue_vue_type_template_id_46a474d5_lang.js +26 -25
  940. package/lib/components/color-picker/src/index.vue_vue_type_template_id_46a474d5_lang.js.map +1 -1
  941. package/lib/components/color-picker/src/useOption.js.map +1 -1
  942. package/lib/components/config-provider/index.d.ts +7 -3
  943. package/lib/components/config-provider/index.js +1 -2
  944. package/lib/components/config-provider/index.js.map +1 -1
  945. package/lib/components/config-provider/src/config-provider.d.ts +26 -1
  946. package/lib/components/config-provider/src/config-provider.js +27 -2
  947. package/lib/components/config-provider/src/config-provider.js.map +1 -1
  948. package/lib/components/container/index.js.map +1 -1
  949. package/lib/components/container/src/aside.vue_vue_type_script_lang.js.map +1 -1
  950. package/lib/components/container/src/aside.vue_vue_type_template_id_47e12f0a_lang.js.map +1 -1
  951. package/lib/components/container/src/container.vue_vue_type_script_lang.js.map +1 -1
  952. package/lib/components/container/src/container.vue_vue_type_template_id_60a2865a_lang.js.map +1 -1
  953. package/lib/components/container/src/footer.vue_vue_type_script_lang.js.map +1 -1
  954. package/lib/components/container/src/footer.vue_vue_type_template_id_2c2b128e_lang.js.map +1 -1
  955. package/lib/components/container/src/header.vue_vue_type_script_lang.js.map +1 -1
  956. package/lib/components/container/src/header.vue_vue_type_template_id_0b1cdaab_lang.js.map +1 -1
  957. package/lib/components/container/src/main.vue_vue_type_script_lang.js.map +1 -1
  958. package/lib/components/container/src/main.vue_vue_type_template_id_526ed157_lang.js.map +1 -1
  959. package/lib/components/date-picker/index.d.ts +16 -6
  960. package/lib/components/date-picker/index.js.map +1 -1
  961. package/lib/components/date-picker/src/date-picker-com/basic-cell-render.js +9 -1
  962. package/lib/components/date-picker/src/date-picker-com/basic-cell-render.js.map +1 -1
  963. package/lib/components/date-picker/src/date-picker-com/basic-date-table.vue_vue_type_script_lang.js.map +1 -1
  964. package/lib/components/date-picker/src/date-picker-com/basic-date-table.vue_vue_type_template_id_0572814e_lang.js.map +1 -1
  965. package/lib/components/date-picker/src/date-picker-com/basic-month-table.vue_vue_type_script_lang.js.map +1 -1
  966. package/lib/components/date-picker/src/date-picker-com/basic-month-table.vue_vue_type_template_id_2f6fcbf2_lang.js.map +1 -1
  967. package/lib/components/date-picker/src/date-picker-com/basic-year-table.vue_vue_type_script_lang.js.map +1 -1
  968. package/lib/components/date-picker/src/date-picker-com/basic-year-table.vue_vue_type_template_id_441df31d_lang.js.map +1 -1
  969. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.js.map +1 -1
  970. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_template_id_78e07aa7_lang.js +4 -4
  971. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_template_id_78e07aa7_lang.js.map +1 -1
  972. package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_script_lang.js.map +1 -1
  973. package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_template_id_62b45ab2_lang.js +6 -6
  974. package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_template_id_62b45ab2_lang.js.map +1 -1
  975. package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.js +2 -0
  976. package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.js.map +1 -1
  977. package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_template_id_2e377892_lang.js.map +1 -1
  978. package/lib/components/date-picker/src/date-picker.d.ts +8 -3
  979. package/lib/components/date-picker/src/date-picker.js +2 -2
  980. package/lib/components/date-picker/src/date-picker.js.map +1 -1
  981. package/lib/components/date-picker/src/date-picker.type.js.map +1 -1
  982. package/lib/components/descriptions/index.d.ts +1 -1
  983. package/lib/components/descriptions/index.js.map +1 -1
  984. package/lib/components/descriptions/src/description-item.js.map +1 -1
  985. package/lib/components/descriptions/src/descriptions-cell.js +12 -3
  986. package/lib/components/descriptions/src/descriptions-cell.js.map +1 -1
  987. package/lib/components/descriptions/src/descriptions-row.vue_vue_type_script_lang.js.map +1 -1
  988. package/lib/components/descriptions/src/descriptions-row.vue_vue_type_template_id_29b1db72_lang.js.map +1 -1
  989. package/lib/components/descriptions/src/index.vue.d.ts +1 -1
  990. package/lib/components/descriptions/src/index.vue_vue_type_script_lang.js +6 -1
  991. package/lib/components/descriptions/src/index.vue_vue_type_script_lang.js.map +1 -1
  992. package/lib/components/descriptions/src/index.vue_vue_type_template_id_788d3854_lang.js +13 -16
  993. package/lib/components/descriptions/src/index.vue_vue_type_template_id_788d3854_lang.js.map +1 -1
  994. package/lib/components/descriptions/src/token.js.map +1 -1
  995. package/lib/components/dialog/index.d.ts +2 -2
  996. package/lib/components/dialog/index.js.map +1 -1
  997. package/lib/components/dialog/src/dialog.js.map +1 -1
  998. package/lib/components/dialog/src/dialog.vue.d.ts +2 -2
  999. package/lib/components/dialog/src/dialog.vue_vue_type_script_lang.js.map +1 -1
  1000. package/lib/components/dialog/src/dialog.vue_vue_type_template_id_02672805_lang.js +2 -2
  1001. package/lib/components/dialog/src/dialog.vue_vue_type_template_id_02672805_lang.js.map +1 -1
  1002. package/lib/components/dialog/src/use-dialog.js +3 -4
  1003. package/lib/components/dialog/src/use-dialog.js.map +1 -1
  1004. package/lib/components/divider/index.js.map +1 -1
  1005. package/lib/components/divider/src/divider.js.map +1 -1
  1006. package/lib/components/divider/src/divider.vue_vue_type_script_lang.js.map +1 -1
  1007. package/lib/components/divider/src/divider.vue_vue_type_template_id_6ddd3543_lang.js.map +1 -1
  1008. package/lib/components/drawer/index.d.ts +2 -2
  1009. package/lib/components/drawer/index.js.map +1 -1
  1010. package/lib/components/drawer/src/drawer.js.map +1 -1
  1011. package/lib/components/drawer/src/drawer.vue.d.ts +2 -2
  1012. package/lib/components/drawer/src/drawer.vue_vue_type_script_lang.js.map +1 -1
  1013. package/lib/components/drawer/src/drawer.vue_vue_type_template_id_e0557736_lang.js +2 -2
  1014. package/lib/components/drawer/src/drawer.vue_vue_type_template_id_e0557736_lang.js.map +1 -1
  1015. package/lib/components/dropdown/index.d.ts +8 -1
  1016. package/lib/components/dropdown/index.js.map +1 -1
  1017. package/lib/components/dropdown/src/dropdown-item.vue_vue_type_script_lang.js.map +1 -1
  1018. package/lib/components/dropdown/src/dropdown-item.vue_vue_type_template_id_396ed16b_lang.js.map +1 -1
  1019. package/lib/components/dropdown/src/dropdown-menu.vue_vue_type_script_lang.js.map +1 -1
  1020. package/lib/components/dropdown/src/dropdown-menu.vue_vue_type_template_id_617b3492_lang.js.map +1 -1
  1021. package/lib/components/dropdown/src/dropdown.vue.d.ts +8 -1
  1022. package/lib/components/dropdown/src/dropdown.vue_vue_type_script_lang.js +4 -0
  1023. package/lib/components/dropdown/src/dropdown.vue_vue_type_script_lang.js.map +1 -1
  1024. package/lib/components/dropdown/src/dropdown.vue_vue_type_template_id_3ed790a5_lang.js +2 -2
  1025. package/lib/components/dropdown/src/dropdown.vue_vue_type_template_id_3ed790a5_lang.js.map +1 -1
  1026. package/lib/components/dropdown/src/useDropdown.js.map +1 -1
  1027. package/lib/components/empty/index.js.map +1 -1
  1028. package/lib/components/empty/src/empty.js.map +1 -1
  1029. package/lib/components/empty/src/empty.vue_vue_type_script_lang.js.map +1 -1
  1030. package/lib/components/empty/src/empty.vue_vue_type_template_id_10d211eb_lang.js.map +1 -1
  1031. package/lib/components/empty/src/img-empty.vue_vue_type_script_lang.js.map +1 -1
  1032. package/lib/components/empty/src/img-empty.vue_vue_type_template_id_61c77d3e_lang.js.map +1 -1
  1033. package/lib/components/form/index.js.map +1 -1
  1034. package/lib/components/form/src/form-item.vue_vue_type_script_lang.js.map +1 -1
  1035. package/lib/components/form/src/form-item.vue_vue_type_template_id_24eda48b_lang.js.map +1 -1
  1036. package/lib/components/form/src/form.vue_vue_type_script_lang.js.map +1 -1
  1037. package/lib/components/form/src/form.vue_vue_type_template_id_602d6cf6_lang.js.map +1 -1
  1038. package/lib/components/form/src/label-wrap.js.map +1 -1
  1039. package/lib/components/icon/index.js.map +1 -1
  1040. package/lib/components/icon/src/icon.js.map +1 -1
  1041. package/lib/components/icon/src/icon.vue_vue_type_script_lang.js +1 -1
  1042. package/lib/components/icon/src/icon.vue_vue_type_script_lang.js.map +1 -1
  1043. package/lib/components/icon/src/icon.vue_vue_type_template_id_89b755b6_lang.js.map +1 -1
  1044. package/lib/components/image/index.d.ts +2 -2
  1045. package/lib/components/image/index.js.map +1 -1
  1046. package/lib/components/image/src/image.js.map +1 -1
  1047. package/lib/components/image/src/image.vue.d.ts +2 -2
  1048. package/lib/components/image/src/image.vue_vue_type_script_lang.js +4 -5
  1049. package/lib/components/image/src/image.vue_vue_type_script_lang.js.map +1 -1
  1050. package/lib/components/image/src/image.vue_vue_type_template_id_34467287_lang.js.map +1 -1
  1051. package/lib/components/image-viewer/index.js.map +1 -1
  1052. package/lib/components/image-viewer/src/image-viewer.js.map +1 -1
  1053. package/lib/components/image-viewer/src/image-viewer.vue_vue_type_script_lang.js.map +1 -1
  1054. package/lib/components/image-viewer/src/image-viewer.vue_vue_type_template_id_4b22ad85_lang.js +1 -0
  1055. package/lib/components/image-viewer/src/image-viewer.vue_vue_type_template_id_4b22ad85_lang.js.map +1 -1
  1056. package/lib/components/infinite-scroll/index.js.map +1 -1
  1057. package/lib/components/infinite-scroll/src/index.js.map +1 -1
  1058. package/lib/components/input/index.d.ts +4 -4
  1059. package/lib/components/input/index.js.map +1 -1
  1060. package/lib/components/input/src/calc-textarea-height.js.map +1 -1
  1061. package/lib/components/input/src/input.d.ts +1 -1
  1062. package/lib/components/input/src/input.js.map +1 -1
  1063. package/lib/components/input/src/input.vue.d.ts +4 -4
  1064. package/lib/components/input/src/input.vue_vue_type_script_lang.js +2 -2
  1065. package/lib/components/input/src/input.vue_vue_type_script_lang.js.map +1 -1
  1066. package/lib/components/input/src/input.vue_vue_type_template_id_3290dcb6_lang.js.map +1 -1
  1067. package/lib/components/input-number/index.d.ts +16 -15
  1068. package/lib/components/input-number/index.js.map +1 -1
  1069. package/lib/components/input-number/src/input-number.d.ts +2 -2
  1070. package/lib/components/input-number/src/input-number.js +1 -2
  1071. package/lib/components/input-number/src/input-number.js.map +1 -1
  1072. package/lib/components/input-number/src/input-number.vue.d.ts +16 -15
  1073. package/lib/components/input-number/src/input-number.vue_vue_type_script_lang.js +9 -11
  1074. package/lib/components/input-number/src/input-number.vue_vue_type_script_lang.js.map +1 -1
  1075. package/lib/components/input-number/src/input-number.vue_vue_type_template_id_dec60af6_lang.js.map +1 -1
  1076. package/lib/components/link/index.js.map +1 -1
  1077. package/lib/components/link/src/link.js.map +1 -1
  1078. package/lib/components/link/src/link.vue_vue_type_script_lang.js.map +1 -1
  1079. package/lib/components/link/src/link.vue_vue_type_template_id_6a422645_lang.js.map +1 -1
  1080. package/lib/components/loading/index.d.ts +2 -0
  1081. package/lib/components/loading/index.js.map +1 -1
  1082. package/lib/components/loading/src/directive.js.map +1 -1
  1083. package/lib/components/loading/src/loading.d.ts +1 -0
  1084. package/lib/components/loading/src/loading.js +5 -1
  1085. package/lib/components/loading/src/loading.js.map +1 -1
  1086. package/lib/components/loading/src/service.js +2 -1
  1087. package/lib/components/loading/src/service.js.map +1 -1
  1088. package/lib/components/menu/index.js.map +1 -1
  1089. package/lib/components/menu/src/menu-collapse-transition.vue_vue_type_script_lang.js.map +1 -1
  1090. package/lib/components/menu/src/menu-collapse-transition.vue_vue_type_template_id_db8e3ce6_lang.js.map +1 -1
  1091. package/lib/components/menu/src/menu-item-group.js.map +1 -1
  1092. package/lib/components/menu/src/menu-item-group.vue_vue_type_script_lang.js.map +1 -1
  1093. package/lib/components/menu/src/menu-item-group.vue_vue_type_template_id_67a2995d_lang.js.map +1 -1
  1094. package/lib/components/menu/src/menu-item.js.map +1 -1
  1095. package/lib/components/menu/src/menu-item.vue_vue_type_script_lang.js.map +1 -1
  1096. package/lib/components/menu/src/menu-item.vue_vue_type_template_id_aa755baa_lang.js.map +1 -1
  1097. package/lib/components/menu/src/menu.js.map +1 -1
  1098. package/lib/components/menu/src/sub-menu.js.map +1 -1
  1099. package/lib/components/menu/src/use-menu-color.js +4 -4
  1100. package/lib/components/menu/src/use-menu-color.js.map +1 -1
  1101. package/lib/components/menu/src/use-menu-css-var.js.map +1 -1
  1102. package/lib/components/menu/src/use-menu.js.map +1 -1
  1103. package/lib/components/message/index.js.map +1 -1
  1104. package/lib/components/message/src/message-method.js +3 -3
  1105. package/lib/components/message/src/message-method.js.map +1 -1
  1106. package/lib/components/message/src/message.js.map +1 -1
  1107. package/lib/components/message/src/message.vue_vue_type_script_lang.js.map +1 -1
  1108. package/lib/components/message/src/message.vue_vue_type_template_id_031967c2_lang.js.map +1 -1
  1109. package/lib/components/message-box/index.js.map +1 -1
  1110. package/lib/components/message-box/src/index.vue.d.ts +3 -4
  1111. package/lib/components/message-box/src/index.vue_vue_type_script_lang.js +2 -2
  1112. package/lib/components/message-box/src/index.vue_vue_type_script_lang.js.map +1 -1
  1113. package/lib/components/message-box/src/index.vue_vue_type_template_id_7035e868_lang.js +4 -5
  1114. package/lib/components/message-box/src/index.vue_vue_type_template_id_7035e868_lang.js.map +1 -1
  1115. package/lib/components/message-box/src/messageBox.js +2 -2
  1116. package/lib/components/message-box/src/messageBox.js.map +1 -1
  1117. package/lib/components/notification/index.js.map +1 -1
  1118. package/lib/components/notification/src/notification.js.map +1 -1
  1119. package/lib/components/notification/src/notification.vue.d.ts +2 -2
  1120. package/lib/components/notification/src/notification.vue_vue_type_script_lang.js.map +1 -1
  1121. package/lib/components/notification/src/notification.vue_vue_type_template_id_d6b81f36_lang.js.map +1 -1
  1122. package/lib/components/notification/src/notify.js +3 -3
  1123. package/lib/components/notification/src/notify.js.map +1 -1
  1124. package/lib/components/overlay/index.d.ts +1 -1
  1125. package/lib/components/overlay/index.js.map +1 -1
  1126. package/lib/components/overlay/src/overlay.d.ts +1 -1
  1127. package/lib/components/overlay/src/overlay.js.map +1 -1
  1128. package/lib/components/page-header/index.js.map +1 -1
  1129. package/lib/components/page-header/src/page-header.js.map +1 -1
  1130. package/lib/components/page-header/src/page-header.vue_vue_type_script_lang.js.map +1 -1
  1131. package/lib/components/page-header/src/page-header.vue_vue_type_template_id_d12fb4b2_lang.js.map +1 -1
  1132. package/lib/components/pagination/index.js.map +1 -1
  1133. package/lib/components/pagination/src/components/jumper.vue_vue_type_script_lang.js.map +1 -1
  1134. package/lib/components/pagination/src/components/jumper.vue_vue_type_template_id_772239ce_lang.js +1 -1
  1135. package/lib/components/pagination/src/components/jumper.vue_vue_type_template_id_772239ce_lang.js.map +1 -1
  1136. package/lib/components/pagination/src/components/next.vue_vue_type_script_lang.js.map +1 -1
  1137. package/lib/components/pagination/src/components/next.vue_vue_type_template_id_93fbb39e_lang.js.map +1 -1
  1138. package/lib/components/pagination/src/components/pager.vue_vue_type_script_lang.js.map +1 -1
  1139. package/lib/components/pagination/src/components/pager.vue_vue_type_template_id_0bfc9916_lang.js.map +1 -1
  1140. package/lib/components/pagination/src/components/prev.vue_vue_type_script_lang.js.map +1 -1
  1141. package/lib/components/pagination/src/components/prev.vue_vue_type_template_id_15259d71_lang.js.map +1 -1
  1142. package/lib/components/pagination/src/components/sizes.vue_vue_type_script_lang.js.map +1 -1
  1143. package/lib/components/pagination/src/components/sizes.vue_vue_type_template_id_3a063678_lang.js +1 -1
  1144. package/lib/components/pagination/src/components/sizes.vue_vue_type_template_id_3a063678_lang.js.map +1 -1
  1145. package/lib/components/pagination/src/components/total.vue_vue_type_script_lang.js.map +1 -1
  1146. package/lib/components/pagination/src/components/total.vue_vue_type_template_id_bc261314_lang.js.map +1 -1
  1147. package/lib/components/pagination/src/pagination.js.map +1 -1
  1148. package/lib/components/pagination/src/usePagination.js.map +1 -1
  1149. package/lib/components/popconfirm/index.js.map +1 -1
  1150. package/lib/components/popconfirm/src/popconfirm.js.map +1 -1
  1151. package/lib/components/popconfirm/src/popconfirm.vue_vue_type_script_lang.js +6 -2
  1152. package/lib/components/popconfirm/src/popconfirm.vue_vue_type_script_lang.js.map +1 -1
  1153. package/lib/components/popconfirm/src/popconfirm.vue_vue_type_template_id_16409d25_lang.js +2 -2
  1154. package/lib/components/popconfirm/src/popconfirm.vue_vue_type_template_id_16409d25_lang.js.map +1 -1
  1155. package/lib/components/popover/index.js.map +1 -1
  1156. package/lib/components/popover/src/directive.js.map +1 -1
  1157. package/lib/components/popover/src/index.vue_vue_type_script_lang.js.map +1 -1
  1158. package/lib/components/popover/src/usePopover.js +2 -2
  1159. package/lib/components/popover/src/usePopover.js.map +1 -1
  1160. package/lib/components/popper/index.js.map +1 -1
  1161. package/lib/components/popper/src/index.vue_vue_type_script_lang.js.map +1 -1
  1162. package/lib/components/popper/src/renderers/arrow.js.map +1 -1
  1163. package/lib/components/popper/src/renderers/popper.js.map +1 -1
  1164. package/lib/components/popper/src/renderers/trigger.js.map +1 -1
  1165. package/lib/components/popper/src/use-popper/build-modifiers.js.map +1 -1
  1166. package/lib/components/popper/src/use-popper/defaults.js.map +1 -1
  1167. package/lib/components/popper/src/use-popper/index.js +7 -3
  1168. package/lib/components/popper/src/use-popper/index.js.map +1 -1
  1169. package/lib/components/popper/src/use-popper/popper-options.js.map +1 -1
  1170. package/lib/components/progress/index.js.map +1 -1
  1171. package/lib/components/progress/src/progress.js.map +1 -1
  1172. package/lib/components/progress/src/progress.vue_vue_type_script_lang.js.map +1 -1
  1173. package/lib/components/progress/src/progress.vue_vue_type_template_id_9158c3b6_lang.js.map +1 -1
  1174. package/lib/components/radio/index.d.ts +18 -18
  1175. package/lib/components/radio/index.js.map +1 -1
  1176. package/lib/components/radio/src/radio-button.d.ts +1 -1
  1177. package/lib/components/radio/src/radio-button.js.map +1 -1
  1178. package/lib/components/radio/src/radio-button.vue.d.ts +4 -4
  1179. package/lib/components/radio/src/radio-button.vue_vue_type_script_lang.js.map +1 -1
  1180. package/lib/components/radio/src/radio-button.vue_vue_type_template_id_14e266b0_lang.js.map +1 -1
  1181. package/lib/components/radio/src/radio-group.d.ts +1 -1
  1182. package/lib/components/radio/src/radio-group.js.map +1 -1
  1183. package/lib/components/radio/src/radio-group.vue.d.ts +3 -3
  1184. package/lib/components/radio/src/radio-group.vue_vue_type_script_lang.js.map +1 -1
  1185. package/lib/components/radio/src/radio-group.vue_vue_type_template_id_53ef81f9_lang.js.map +1 -1
  1186. package/lib/components/radio/src/radio.d.ts +3 -3
  1187. package/lib/components/radio/src/radio.js.map +1 -1
  1188. package/lib/components/radio/src/radio.vue.d.ts +4 -4
  1189. package/lib/components/radio/src/radio.vue_vue_type_script_lang.js.map +1 -1
  1190. package/lib/components/radio/src/radio.vue_vue_type_template_id_6aa3dfc7_lang.js.map +1 -1
  1191. package/lib/components/rate/index.js.map +1 -1
  1192. package/lib/components/rate/src/rate.js.map +1 -1
  1193. package/lib/components/rate/src/rate.vue_vue_type_script_lang.js.map +1 -1
  1194. package/lib/components/rate/src/rate.vue_vue_type_template_id_38c42df6_lang.js.map +1 -1
  1195. package/lib/components/result/index.js.map +1 -1
  1196. package/lib/components/result/src/result.js.map +1 -1
  1197. package/lib/components/result/src/result.vue_vue_type_script_lang.js.map +1 -1
  1198. package/lib/components/result/src/result.vue_vue_type_template_id_263c10e5_lang.js.map +1 -1
  1199. package/lib/components/row/index.js.map +1 -1
  1200. package/lib/components/row/src/row.js.map +1 -1
  1201. package/lib/components/scrollbar/index.js.map +1 -1
  1202. package/lib/components/scrollbar/src/bar.js.map +1 -1
  1203. package/lib/components/scrollbar/src/bar.vue_vue_type_script_lang.js.map +1 -1
  1204. package/lib/components/scrollbar/src/bar.vue_vue_type_template_id_2f63f10a_lang.js.map +1 -1
  1205. package/lib/components/scrollbar/src/scrollbar.js.map +1 -1
  1206. package/lib/components/scrollbar/src/scrollbar.vue_vue_type_script_lang.js.map +1 -1
  1207. package/lib/components/scrollbar/src/scrollbar.vue_vue_type_template_id_303f965d_lang.js.map +1 -1
  1208. package/lib/components/scrollbar/src/util.js.map +1 -1
  1209. package/lib/components/select/index.d.ts +2 -2
  1210. package/lib/components/select/index.js.map +1 -1
  1211. package/lib/components/select/src/option-group.vue_vue_type_script_lang.js.map +1 -1
  1212. package/lib/components/select/src/option-group.vue_vue_type_template_id_072bbb70_lang.js.map +1 -1
  1213. package/lib/components/select/src/option.vue_vue_type_script_lang.js.map +1 -1
  1214. package/lib/components/select/src/option.vue_vue_type_template_id_2feb8304_lang.js.map +1 -1
  1215. package/lib/components/select/src/select-dropdown.vue_vue_type_script_lang.js.map +1 -1
  1216. package/lib/components/select/src/select-dropdown.vue_vue_type_template_id_46cf6eee_lang.js.map +1 -1
  1217. package/lib/components/select/src/select.vue.d.ts +2 -2
  1218. package/lib/components/select/src/select.vue_vue_type_script_lang.js +3 -3
  1219. package/lib/components/select/src/select.vue_vue_type_script_lang.js.map +1 -1
  1220. package/lib/components/select/src/select.vue_vue_type_template_id_33774f85_lang.js.map +1 -1
  1221. package/lib/components/select/src/token.js.map +1 -1
  1222. package/lib/components/select/src/useOption.js.map +1 -1
  1223. package/lib/components/select/src/useSelect.d.ts +4 -4
  1224. package/lib/components/select/src/useSelect.js +3 -3
  1225. package/lib/components/select/src/useSelect.js.map +1 -1
  1226. package/lib/components/select-v2/index.d.ts +8 -4
  1227. package/lib/components/select-v2/index.js.map +1 -1
  1228. package/lib/components/select-v2/src/defaults.js.map +1 -1
  1229. package/lib/components/select-v2/src/group-item.vue_vue_type_script_lang.js.map +1 -1
  1230. package/lib/components/select-v2/src/group-item.vue_vue_type_template_id_bef7365a_lang.js.map +1 -1
  1231. package/lib/components/select-v2/src/option-item.vue_vue_type_script_lang.js.map +1 -1
  1232. package/lib/components/select-v2/src/option-item.vue_vue_type_template_id_119b30a9_lang.js.map +1 -1
  1233. package/lib/components/select-v2/src/select-dropdown.vue_vue_type_script_lang.js.map +1 -1
  1234. package/lib/components/select-v2/src/select.vue.d.ts +4 -2
  1235. package/lib/components/select-v2/src/select.vue_vue_type_script_lang.js.map +1 -1
  1236. package/lib/components/select-v2/src/select.vue_vue_type_template_id_13e598a4_lang.js +12 -3
  1237. package/lib/components/select-v2/src/select.vue_vue_type_template_id_13e598a4_lang.js.map +1 -1
  1238. package/lib/components/select-v2/src/token.js.map +1 -1
  1239. package/lib/components/select-v2/src/useAllowCreate.js.map +1 -1
  1240. package/lib/components/select-v2/src/useInput.js.map +1 -1
  1241. package/lib/components/select-v2/src/useOption.js.map +1 -1
  1242. package/lib/components/select-v2/src/useSelect.d.ts +4 -2
  1243. package/lib/components/select-v2/src/useSelect.js +20 -11
  1244. package/lib/components/select-v2/src/useSelect.js.map +1 -1
  1245. package/lib/components/select-v2/src/util.js.map +1 -1
  1246. package/lib/components/skeleton/index.js.map +1 -1
  1247. package/lib/components/skeleton/src/image-placeholder.vue_vue_type_script_lang.js.map +1 -1
  1248. package/lib/components/skeleton/src/image-placeholder.vue_vue_type_template_id_f0b3074e_lang.js.map +1 -1
  1249. package/lib/components/skeleton/src/skeleton-item.js.map +1 -1
  1250. package/lib/components/skeleton/src/skeleton-item.vue_vue_type_script_lang.js.map +1 -1
  1251. package/lib/components/skeleton/src/skeleton-item.vue_vue_type_template_id_7e70bfeb_lang.js.map +1 -1
  1252. package/lib/components/skeleton/src/skeleton.js.map +1 -1
  1253. package/lib/components/skeleton/src/skeleton.vue_vue_type_script_lang.js.map +1 -1
  1254. package/lib/components/skeleton/src/skeleton.vue_vue_type_template_id_26fa9225_lang.js.map +1 -1
  1255. package/lib/components/slider/index.d.ts +2 -2
  1256. package/lib/components/slider/index.js.map +1 -1
  1257. package/lib/components/slider/src/button.vue_vue_type_script_lang.js.map +1 -1
  1258. package/lib/components/slider/src/button.vue_vue_type_template_id_9cd3e794_lang.js.map +1 -1
  1259. package/lib/components/slider/src/index.vue.d.ts +1 -1
  1260. package/lib/components/slider/src/index.vue_vue_type_script_lang.js.map +1 -1
  1261. package/lib/components/slider/src/index.vue_vue_type_template_id_24c42d04_lang.js.map +1 -1
  1262. package/lib/components/slider/src/marker.vue_vue_type_script_lang.js.map +1 -1
  1263. package/lib/components/slider/src/useMarks.js.map +1 -1
  1264. package/lib/components/slider/src/useSlide.d.ts +1 -1
  1265. package/lib/components/slider/src/useSlide.js.map +1 -1
  1266. package/lib/components/slider/src/useSliderButton.js.map +1 -1
  1267. package/lib/components/slider/src/useStops.js.map +1 -1
  1268. package/lib/components/space/index.d.ts +3 -3
  1269. package/lib/components/space/index.js.map +1 -1
  1270. package/lib/components/space/src/item.vue_vue_type_script_lang.js.map +1 -1
  1271. package/lib/components/space/src/item.vue_vue_type_template_id_88dfb868_lang.js.map +1 -1
  1272. package/lib/components/space/src/space.d.ts +4 -4
  1273. package/lib/components/space/src/space.js.map +1 -1
  1274. package/lib/components/space/src/use-space.js +1 -2
  1275. package/lib/components/space/src/use-space.js.map +1 -1
  1276. package/lib/components/steps/index.js.map +1 -1
  1277. package/lib/components/steps/src/index.vue_vue_type_script_lang.js.map +1 -1
  1278. package/lib/components/steps/src/index.vue_vue_type_template_id_882d196c_lang.js.map +1 -1
  1279. package/lib/components/steps/src/item.vue_vue_type_script_lang.js.map +1 -1
  1280. package/lib/components/steps/src/item.vue_vue_type_template_id_6ec47f4b_lang.js +6 -3
  1281. package/lib/components/steps/src/item.vue_vue_type_template_id_6ec47f4b_lang.js.map +1 -1
  1282. package/lib/components/switch/index.js.map +1 -1
  1283. package/lib/components/switch/src/switch.js +2 -2
  1284. package/lib/components/switch/src/switch.js.map +1 -1
  1285. package/lib/components/switch/src/switch.vue_vue_type_script_lang.js.map +1 -1
  1286. package/lib/components/switch/src/switch.vue_vue_type_template_id_538fbc85_lang.js.map +1 -1
  1287. package/lib/components/table/index.d.ts +1 -1
  1288. package/lib/components/table/index.js.map +1 -1
  1289. package/lib/components/table/src/config.js.map +1 -1
  1290. package/lib/components/table/src/filter-panel.vue_vue_type_script_lang.js.map +1 -1
  1291. package/lib/components/table/src/filter-panel.vue_vue_type_template_id_fde1c940_lang.js +2 -2
  1292. package/lib/components/table/src/filter-panel.vue_vue_type_template_id_fde1c940_lang.js.map +1 -1
  1293. package/lib/components/table/src/h-helper.js.map +1 -1
  1294. package/lib/components/table/src/layout-observer.js.map +1 -1
  1295. package/lib/components/table/src/store/current.js.map +1 -1
  1296. package/lib/components/table/src/store/expand.js.map +1 -1
  1297. package/lib/components/table/src/store/helper.js.map +1 -1
  1298. package/lib/components/table/src/store/index.js.map +1 -1
  1299. package/lib/components/table/src/store/tree.js.map +1 -1
  1300. package/lib/components/table/src/store/watcher.js.map +1 -1
  1301. package/lib/components/table/src/table/defaults.js.map +1 -1
  1302. package/lib/components/table/src/table/style-helper.d.ts +1 -1
  1303. package/lib/components/table/src/table/style-helper.js.map +1 -1
  1304. package/lib/components/table/src/table/utils-helper.js.map +1 -1
  1305. package/lib/components/table/src/table-body/defaults.js.map +1 -1
  1306. package/lib/components/table/src/table-body/events-helper.js.map +1 -1
  1307. package/lib/components/table/src/table-body/index.js +2 -2
  1308. package/lib/components/table/src/table-body/index.js.map +1 -1
  1309. package/lib/components/table/src/table-body/render-helper.js.map +1 -1
  1310. package/lib/components/table/src/table-body/styles-helper.js.map +1 -1
  1311. package/lib/components/table/src/table-column/defaults.js.map +1 -1
  1312. package/lib/components/table/src/table-column/index.js.map +1 -1
  1313. package/lib/components/table/src/table-column/render-helper.js.map +1 -1
  1314. package/lib/components/table/src/table-column/watcher-helper.js.map +1 -1
  1315. package/lib/components/table/src/table-footer/index.js.map +1 -1
  1316. package/lib/components/table/src/table-footer/mapState-helper.js.map +1 -1
  1317. package/lib/components/table/src/table-footer/style-helper.js.map +1 -1
  1318. package/lib/components/table/src/table-header/event-helper.js +3 -3
  1319. package/lib/components/table/src/table-header/event-helper.js.map +1 -1
  1320. package/lib/components/table/src/table-header/index.js.map +1 -1
  1321. package/lib/components/table/src/table-header/style.helper.js.map +1 -1
  1322. package/lib/components/table/src/table-header/utils-helper.js.map +1 -1
  1323. package/lib/components/table/src/table-layout.js +3 -3
  1324. package/lib/components/table/src/table-layout.js.map +1 -1
  1325. package/lib/components/table/src/table.vue.d.ts +1 -1
  1326. package/lib/components/table/src/table.vue_vue_type_script_lang.js.map +1 -1
  1327. package/lib/components/table/src/table.vue_vue_type_template_id_4a1660ad_lang.js +2 -2
  1328. package/lib/components/table/src/table.vue_vue_type_template_id_4a1660ad_lang.js.map +1 -1
  1329. package/lib/components/table/src/util.js +1 -1
  1330. package/lib/components/table/src/util.js.map +1 -1
  1331. package/lib/components/tabs/index.js.map +1 -1
  1332. package/lib/components/tabs/src/tab-bar.js.map +1 -1
  1333. package/lib/components/tabs/src/tab-bar.vue_vue_type_script_lang.js.map +1 -1
  1334. package/lib/components/tabs/src/tab-bar.vue_vue_type_template_id_09e034e4_lang.js.map +1 -1
  1335. package/lib/components/tabs/src/tab-nav.js.map +1 -1
  1336. package/lib/components/tabs/src/tab-pane.js.map +1 -1
  1337. package/lib/components/tabs/src/tab-pane.vue_vue_type_script_lang.js.map +1 -1
  1338. package/lib/components/tabs/src/tab-pane.vue_vue_type_template_id_46ec5d32_lang.js.map +1 -1
  1339. package/lib/components/tabs/src/tabs.js.map +1 -1
  1340. package/lib/components/tag/index.d.ts +3 -3
  1341. package/lib/components/tag/index.js.map +1 -1
  1342. package/lib/components/tag/src/tag.d.ts +1 -1
  1343. package/lib/components/tag/src/tag.js +1 -1
  1344. package/lib/components/tag/src/tag.js.map +1 -1
  1345. package/lib/components/tag/src/tag.vue.d.ts +3 -3
  1346. package/lib/components/tag/src/tag.vue_vue_type_script_lang.js +2 -1
  1347. package/lib/components/tag/src/tag.vue_vue_type_script_lang.js.map +1 -1
  1348. package/lib/components/tag/src/tag.vue_vue_type_template_id_525996c5_lang.js +8 -2
  1349. package/lib/components/tag/src/tag.vue_vue_type_template_id_525996c5_lang.js.map +1 -1
  1350. package/lib/components/teleport/index.d.ts +1 -1
  1351. package/lib/components/teleport/index.js.map +1 -1
  1352. package/lib/components/teleport/src/teleport.js.map +1 -1
  1353. package/lib/components/teleport/src/teleport.vue.d.ts +1 -1
  1354. package/lib/components/teleport/src/teleport.vue_vue_type_script_lang.js +2 -2
  1355. package/lib/components/teleport/src/teleport.vue_vue_type_script_lang.js.map +1 -1
  1356. package/lib/components/teleport/src/teleport.vue_vue_type_template_id_787c6a36_lang.js.map +1 -1
  1357. package/lib/components/time-picker/index.d.ts +16 -6
  1358. package/lib/components/time-picker/index.js.map +1 -1
  1359. package/lib/components/time-picker/src/common/constant.js.map +1 -1
  1360. package/lib/components/time-picker/src/common/date-utils.js.map +1 -1
  1361. package/lib/components/time-picker/src/common/picker.vue.d.ts +10 -4
  1362. package/lib/components/time-picker/src/common/picker.vue_vue_type_script_lang.js +17 -1
  1363. package/lib/components/time-picker/src/common/picker.vue_vue_type_script_lang.js.map +1 -1
  1364. package/lib/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.js +6 -3
  1365. package/lib/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.js.map +1 -1
  1366. package/lib/components/time-picker/src/common/props.d.ts +4 -1
  1367. package/lib/components/time-picker/src/common/props.js +4 -1
  1368. package/lib/components/time-picker/src/common/props.js.map +1 -1
  1369. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue.d.ts +1 -1
  1370. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_script_lang.js.map +1 -1
  1371. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_template_id_4fb3c576_lang.js +5 -4
  1372. package/lib/components/time-picker/src/time-picker-com/basic-time-spinner.vue_vue_type_template_id_4fb3c576_lang.js.map +1 -1
  1373. package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue_vue_type_script_lang.js.map +1 -1
  1374. package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue_vue_type_template_id_3b3cfa6a_lang.js.map +1 -1
  1375. package/lib/components/time-picker/src/time-picker-com/panel-time-range.vue_vue_type_script_lang.js.map +1 -1
  1376. package/lib/components/time-picker/src/time-picker-com/panel-time-range.vue_vue_type_template_id_57d94b44_lang.js.map +1 -1
  1377. package/lib/components/time-picker/src/time-picker-com/useTimePicker.js.map +1 -1
  1378. package/lib/components/time-picker/src/time-picker.d.ts +8 -3
  1379. package/lib/components/time-picker/src/time-picker.js.map +1 -1
  1380. package/lib/components/time-select/index.js.map +1 -1
  1381. package/lib/components/time-select/src/time-select.vue_vue_type_script_lang.js +2 -2
  1382. package/lib/components/time-select/src/time-select.vue_vue_type_script_lang.js.map +1 -1
  1383. package/lib/components/time-select/src/time-select.vue_vue_type_template_id_5beb6389_lang.js.map +1 -1
  1384. package/lib/components/timeline/index.js.map +1 -1
  1385. package/lib/components/timeline/src/index.vue_vue_type_script_lang.js.map +1 -1
  1386. package/lib/components/timeline/src/item.vue_vue_type_script_lang.js.map +1 -1
  1387. package/lib/components/timeline/src/item.vue_vue_type_template_id_174d5b12_lang.js.map +1 -1
  1388. package/lib/components/tooltip/index.js.map +1 -1
  1389. package/lib/components/tooltip/src/index.js.map +1 -1
  1390. package/lib/components/transfer/index.js.map +1 -1
  1391. package/lib/components/transfer/src/index.vue_vue_type_script_lang.js.map +1 -1
  1392. package/lib/components/transfer/src/index.vue_vue_type_template_id_6c8b9070_lang.js.map +1 -1
  1393. package/lib/components/transfer/src/transfer-panel.vue_vue_type_script_lang.js.map +1 -1
  1394. package/lib/components/transfer/src/transfer-panel.vue_vue_type_template_id_1a7d1f9c_lang.js.map +1 -1
  1395. package/lib/components/transfer/src/useCheck.js.map +1 -1
  1396. package/lib/components/transfer/src/useCheckedChange.js.map +1 -1
  1397. package/lib/components/transfer/src/useComputedData.js.map +1 -1
  1398. package/lib/components/transfer/src/useMove.js.map +1 -1
  1399. package/lib/components/tree/index.js.map +1 -1
  1400. package/lib/components/tree/src/model/node.js.map +1 -1
  1401. package/lib/components/tree/src/model/tree-store.js.map +1 -1
  1402. package/lib/components/tree/src/model/useDragNode.js.map +1 -1
  1403. package/lib/components/tree/src/model/useKeydown.js.map +1 -1
  1404. package/lib/components/tree/src/model/useNodeExpandEventBroadcast.js.map +1 -1
  1405. package/lib/components/tree/src/model/util.js.map +1 -1
  1406. package/lib/components/tree/src/tree-node-content.vue_vue_type_script_lang.js.map +1 -1
  1407. package/lib/components/tree/src/tree-node.vue_vue_type_script_lang.js.map +1 -1
  1408. package/lib/components/tree/src/tree-node.vue_vue_type_template_id_62959aba_lang.js.map +1 -1
  1409. package/lib/components/tree/src/tree.vue_vue_type_script_lang.js.map +1 -1
  1410. package/lib/components/tree/src/tree.vue_vue_type_template_id_7539bec5_lang.js.map +1 -1
  1411. package/lib/components/tree-v2/index.js.map +1 -1
  1412. package/lib/components/tree-v2/src/composables/useCheck.js.map +1 -1
  1413. package/lib/components/tree-v2/src/composables/useFilter.js.map +1 -1
  1414. package/lib/components/tree-v2/src/composables/useTree.d.ts +1 -1
  1415. package/lib/components/tree-v2/src/composables/useTree.js.map +1 -1
  1416. package/lib/components/tree-v2/src/tree-node-content.js.map +1 -1
  1417. package/lib/components/tree-v2/src/tree-node.vue_vue_type_script_lang.js.map +1 -1
  1418. package/lib/components/tree-v2/src/tree-node.vue_vue_type_template_id_71d8f826_lang.js.map +1 -1
  1419. package/lib/components/tree-v2/src/tree.vue_vue_type_script_lang.js.map +1 -1
  1420. package/lib/components/tree-v2/src/tree.vue_vue_type_template_id_5b45a1b2_lang.js +2 -2
  1421. package/lib/components/tree-v2/src/tree.vue_vue_type_template_id_5b45a1b2_lang.js.map +1 -1
  1422. package/lib/components/tree-v2/src/virtual-tree.js.map +1 -1
  1423. package/lib/components/upload/index.js.map +1 -1
  1424. package/lib/components/upload/src/ajax.js.map +1 -1
  1425. package/lib/components/upload/src/index.vue_vue_type_script_lang.js.map +1 -1
  1426. package/lib/components/upload/src/upload-dragger.vue_vue_type_script_lang.js.map +1 -1
  1427. package/lib/components/upload/src/upload-dragger.vue_vue_type_template_id_4f8ef690_lang.js.map +1 -1
  1428. package/lib/components/upload/src/upload-list.vue.d.ts +1 -1
  1429. package/lib/components/upload/src/upload-list.vue_vue_type_script_lang.js +1 -1
  1430. package/lib/components/upload/src/upload-list.vue_vue_type_script_lang.js.map +1 -1
  1431. package/lib/components/upload/src/upload-list.vue_vue_type_template_id_192277b6_lang.js +5 -4
  1432. package/lib/components/upload/src/upload-list.vue_vue_type_template_id_192277b6_lang.js.map +1 -1
  1433. package/lib/components/upload/src/upload.vue_vue_type_script_lang.js.map +1 -1
  1434. package/lib/components/upload/src/upload.vue_vue_type_template_id_efd50b36_lang.js.map +1 -1
  1435. package/lib/components/upload/src/useHandlers.js +2 -2
  1436. package/lib/components/upload/src/useHandlers.js.map +1 -1
  1437. package/lib/components/virtual-list/src/builders/build-grid.js +2 -2
  1438. package/lib/components/virtual-list/src/builders/build-grid.js.map +1 -1
  1439. package/lib/components/virtual-list/src/builders/build-list.js +2 -2
  1440. package/lib/components/virtual-list/src/builders/build-list.js.map +1 -1
  1441. package/lib/components/virtual-list/src/components/dynamic-size-grid.js.map +1 -1
  1442. package/lib/components/virtual-list/src/components/dynamic-size-list.js.map +1 -1
  1443. package/lib/components/virtual-list/src/components/fixed-size-grid.js.map +1 -1
  1444. package/lib/components/virtual-list/src/components/fixed-size-list.js.map +1 -1
  1445. package/lib/components/virtual-list/src/components/scrollbar.js +2 -2
  1446. package/lib/components/virtual-list/src/components/scrollbar.js.map +1 -1
  1447. package/lib/components/virtual-list/src/defaults.js.map +1 -1
  1448. package/lib/components/virtual-list/src/hooks/use-cache.js.map +1 -1
  1449. package/lib/components/virtual-list/src/hooks/use-grid-wheel.js.map +1 -1
  1450. package/lib/components/virtual-list/src/hooks/use-wheel.js.map +1 -1
  1451. package/lib/components/virtual-list/src/props.js.map +1 -1
  1452. package/lib/components/virtual-list/src/utils.js.map +1 -1
  1453. package/lib/defaults.d.ts +1 -1
  1454. package/lib/defaults.js.map +1 -1
  1455. package/lib/directives/click-outside/index.js +2 -2
  1456. package/lib/directives/click-outside/index.js.map +1 -1
  1457. package/lib/directives/mousewheel/index.js.map +1 -1
  1458. package/lib/directives/repeat-click/index.js.map +1 -1
  1459. package/lib/directives/resize/index.js.map +1 -1
  1460. package/lib/directives/trap-focus/index.js.map +1 -1
  1461. package/lib/hooks/use-attrs/index.js.map +1 -1
  1462. package/lib/hooks/use-common-props/index.d.ts +2 -2
  1463. package/lib/hooks/use-common-props/index.js +1 -4
  1464. package/lib/hooks/use-common-props/index.js.map +1 -1
  1465. package/lib/hooks/use-focus/index.js.map +1 -1
  1466. package/lib/hooks/use-form-item/index.js.map +1 -1
  1467. package/lib/hooks/use-global-config/index.js +3 -1
  1468. package/lib/hooks/use-global-config/index.js.map +1 -1
  1469. package/lib/hooks/use-locale/index.js.map +1 -1
  1470. package/lib/hooks/use-lockscreen/index.js +2 -2
  1471. package/lib/hooks/use-lockscreen/index.js.map +1 -1
  1472. package/lib/hooks/use-modal/index.js.map +1 -1
  1473. package/lib/hooks/use-model-toggle/index.js +4 -4
  1474. package/lib/hooks/use-model-toggle/index.js.map +1 -1
  1475. package/lib/hooks/use-popper/index.js +2 -2
  1476. package/lib/hooks/use-popper/index.js.map +1 -1
  1477. package/lib/hooks/use-popper/use-popper-options.js.map +1 -1
  1478. package/lib/hooks/use-popper/use-target-events.js.map +1 -1
  1479. package/lib/hooks/use-prevent-global/index.js.map +1 -1
  1480. package/lib/hooks/use-prop/index.js.map +1 -1
  1481. package/lib/hooks/use-restore-active/index.js.map +1 -1
  1482. package/lib/hooks/use-same-target/index.js.map +1 -1
  1483. package/lib/hooks/use-teleport/index.js.map +1 -1
  1484. package/lib/hooks/use-throttle-render/index.js.map +1 -1
  1485. package/lib/hooks/use-timeout/index.js.map +1 -1
  1486. package/lib/hooks/use-transition-fallthrough/index.js.map +1 -1
  1487. package/lib/index.d.ts +3 -2
  1488. package/lib/index.js.map +1 -1
  1489. package/lib/locale/lang/af.js.map +1 -1
  1490. package/lib/locale/lang/ar.js.map +1 -1
  1491. package/lib/locale/lang/bg.js.map +1 -1
  1492. package/lib/locale/lang/bn.js.map +1 -1
  1493. package/lib/locale/lang/ca.js.map +1 -1
  1494. package/lib/locale/lang/cs.js.map +1 -1
  1495. package/lib/locale/lang/da.js.map +1 -1
  1496. package/lib/locale/lang/de.js.map +1 -1
  1497. package/lib/locale/lang/el.js.map +1 -1
  1498. package/lib/locale/lang/en.js.map +1 -1
  1499. package/lib/locale/lang/eo.js.map +1 -1
  1500. package/lib/locale/lang/es.js.map +1 -1
  1501. package/lib/locale/lang/et.js.map +1 -1
  1502. package/lib/locale/lang/eu.js.map +1 -1
  1503. package/lib/locale/lang/fa.js.map +1 -1
  1504. package/lib/locale/lang/fi.js.map +1 -1
  1505. package/lib/locale/lang/fr.js.map +1 -1
  1506. package/lib/locale/lang/he.js.map +1 -1
  1507. package/lib/locale/lang/hr.js.map +1 -1
  1508. package/lib/locale/lang/hu.js.map +1 -1
  1509. package/lib/locale/lang/hy-am.js.map +1 -1
  1510. package/lib/locale/lang/id.js.map +1 -1
  1511. package/lib/locale/lang/it.js.map +1 -1
  1512. package/lib/locale/lang/ja.js.map +1 -1
  1513. package/lib/locale/lang/kk.js.map +1 -1
  1514. package/lib/locale/lang/km.js +19 -19
  1515. package/lib/locale/lang/km.js.map +1 -1
  1516. package/lib/locale/lang/ko.js.map +1 -1
  1517. package/lib/locale/lang/ku.js.map +1 -1
  1518. package/lib/locale/lang/ky.js.map +1 -1
  1519. package/lib/locale/lang/lt.js.map +1 -1
  1520. package/lib/locale/lang/lv.js.map +1 -1
  1521. package/lib/locale/lang/mn.js.map +1 -1
  1522. package/lib/locale/lang/nb-no.js.map +1 -1
  1523. package/lib/locale/lang/nl.js.map +1 -1
  1524. package/lib/locale/lang/pa.js.map +1 -1
  1525. package/lib/locale/lang/pl.js.map +1 -1
  1526. package/lib/locale/lang/pt-br.js.map +1 -1
  1527. package/lib/locale/lang/pt.js.map +1 -1
  1528. package/lib/locale/lang/ro.js.map +1 -1
  1529. package/lib/locale/lang/ru.js.map +1 -1
  1530. package/lib/locale/lang/sk.js.map +1 -1
  1531. package/lib/locale/lang/sl.js.map +1 -1
  1532. package/lib/locale/lang/sr.js.map +1 -1
  1533. package/lib/locale/lang/sv.js.map +1 -1
  1534. package/lib/locale/lang/ta.js.map +1 -1
  1535. package/lib/locale/lang/th.js.map +1 -1
  1536. package/lib/locale/lang/tk.js.map +1 -1
  1537. package/lib/locale/lang/tr.js.map +1 -1
  1538. package/lib/locale/lang/ug-cn.js.map +1 -1
  1539. package/lib/locale/lang/uk.js.map +1 -1
  1540. package/lib/locale/lang/uz-uz.js.map +1 -1
  1541. package/lib/locale/lang/vi.js.map +1 -1
  1542. package/lib/locale/lang/zh-cn.js.map +1 -1
  1543. package/lib/locale/lang/zh-tw.js.map +1 -1
  1544. package/lib/make-installer.d.ts +1 -2
  1545. package/lib/make-installer.js +4 -18
  1546. package/lib/make-installer.js.map +1 -1
  1547. package/lib/plugin.js.map +1 -1
  1548. package/lib/tokens/breadcrumb.js.map +1 -1
  1549. package/lib/tokens/button.js.map +1 -1
  1550. package/lib/tokens/config-provider.js.map +1 -1
  1551. package/lib/tokens/form.js.map +1 -1
  1552. package/lib/tokens/pagination.js.map +1 -1
  1553. package/lib/tokens/radio.js.map +1 -1
  1554. package/lib/tokens/scrollbar.js.map +1 -1
  1555. package/lib/tokens/tabs.js.map +1 -1
  1556. package/lib/utils/animation.js.map +1 -1
  1557. package/lib/utils/aria.js.map +1 -1
  1558. package/lib/utils/constants.js.map +1 -1
  1559. package/lib/utils/dom.js +5 -5
  1560. package/lib/utils/dom.js.map +1 -1
  1561. package/lib/utils/error.js.map +1 -1
  1562. package/lib/utils/global-nodes.js +2 -2
  1563. package/lib/utils/global-nodes.js.map +1 -1
  1564. package/lib/utils/icon.js.map +1 -1
  1565. package/lib/utils/isDef.js.map +1 -1
  1566. package/lib/utils/menu/menu-bar.js.map +1 -1
  1567. package/lib/utils/menu/menu-item.js.map +1 -1
  1568. package/lib/utils/menu/submenu.js.map +1 -1
  1569. package/lib/utils/popup-manager.d.ts +5 -3
  1570. package/lib/utils/popup-manager.js +26 -30
  1571. package/lib/utils/popup-manager.js.map +1 -1
  1572. package/lib/utils/props.d.ts +3 -3
  1573. package/lib/utils/props.js +1 -1
  1574. package/lib/utils/props.js.map +1 -1
  1575. package/lib/utils/raf.js +2 -2
  1576. package/lib/utils/raf.js.map +1 -1
  1577. package/lib/utils/resize-event.js +2 -2
  1578. package/lib/utils/resize-event.js.map +1 -1
  1579. package/lib/utils/scroll-into-view.js +2 -2
  1580. package/lib/utils/scroll-into-view.js.map +1 -1
  1581. package/lib/utils/scrollbar-width.js +2 -2
  1582. package/lib/utils/scrollbar-width.js.map +1 -1
  1583. package/lib/utils/types.d.ts +1 -1
  1584. package/lib/utils/util.d.ts +1 -8
  1585. package/lib/utils/util.js +7 -15
  1586. package/lib/utils/util.js.map +1 -1
  1587. package/lib/utils/validators.js +2 -3
  1588. package/lib/utils/validators.js.map +1 -1
  1589. package/lib/utils/vnode.js.map +1 -1
  1590. package/lib/utils/with-install.js.map +1 -1
  1591. package/lib/version.d.ts +1 -1
  1592. package/lib/version.js +1 -1
  1593. package/lib/version.js.map +1 -1
  1594. package/package.json +5 -4
  1595. package/tags.json +1 -1
  1596. package/theme-chalk/base.css +1 -1
  1597. package/theme-chalk/el-avatar.css +1 -1
  1598. package/theme-chalk/el-button.css +1 -1
  1599. package/theme-chalk/el-cascader-panel.css +1 -1
  1600. package/theme-chalk/el-cascader.css +1 -1
  1601. package/theme-chalk/el-checkbox-button.css +1 -1
  1602. package/theme-chalk/el-checkbox.css +1 -1
  1603. package/theme-chalk/el-color-picker.css +1 -1
  1604. package/theme-chalk/el-date-picker.css +1 -1
  1605. package/theme-chalk/el-descriptions-item.css +1 -1
  1606. package/theme-chalk/el-descriptions.css +1 -1
  1607. package/theme-chalk/el-drawer.css +1 -1
  1608. package/theme-chalk/el-dropdown.css +1 -1
  1609. package/theme-chalk/el-form.css +1 -1
  1610. package/theme-chalk/el-icon.css +1 -1
  1611. package/theme-chalk/el-input-number.css +1 -1
  1612. package/theme-chalk/el-input.css +1 -1
  1613. package/theme-chalk/el-menu.css +1 -1
  1614. package/theme-chalk/el-pagination.css +1 -1
  1615. package/theme-chalk/el-popper.css +1 -1
  1616. package/theme-chalk/el-radio-button.css +1 -1
  1617. package/theme-chalk/el-radio-group.css +1 -1
  1618. package/theme-chalk/el-radio.css +1 -1
  1619. package/theme-chalk/el-select-v2.css +1 -1
  1620. package/theme-chalk/el-select.css +1 -1
  1621. package/theme-chalk/el-skeleton-item.css +1 -1
  1622. package/theme-chalk/el-slider.css +1 -1
  1623. package/theme-chalk/el-table.css +1 -1
  1624. package/theme-chalk/el-tag.css +1 -1
  1625. package/theme-chalk/el-time-picker.css +1 -1
  1626. package/theme-chalk/el-time-select.css +1 -1
  1627. package/theme-chalk/el-upload.css +1 -1
  1628. package/theme-chalk/index.css +1 -1
  1629. package/theme-chalk/src/avatar.scss +12 -11
  1630. package/theme-chalk/src/button.scss +39 -13
  1631. package/theme-chalk/src/cascader-panel.scss +1 -1
  1632. package/theme-chalk/src/cascader.scss +1 -1
  1633. package/theme-chalk/src/checkbox-button.scss +5 -5
  1634. package/theme-chalk/src/checkbox.scss +14 -33
  1635. package/theme-chalk/src/color-picker.scss +30 -62
  1636. package/theme-chalk/src/common/var.scss +131 -74
  1637. package/theme-chalk/src/date-picker/picker.scss +4 -5
  1638. package/theme-chalk/src/descriptions-item.scss +56 -2
  1639. package/theme-chalk/src/descriptions.scss +92 -51
  1640. package/theme-chalk/src/drawer.scss +1 -0
  1641. package/theme-chalk/src/dropdown.scss +75 -67
  1642. package/theme-chalk/src/form.scss +15 -38
  1643. package/theme-chalk/src/icon.scss +3 -2
  1644. package/theme-chalk/src/image.scss +1 -1
  1645. package/theme-chalk/src/input-number.scss +10 -17
  1646. package/theme-chalk/src/input.scss +37 -7
  1647. package/theme-chalk/src/menu.scss +4 -5
  1648. package/theme-chalk/src/mixins/_button.scss +1 -0
  1649. package/theme-chalk/src/pagination.scss +10 -3
  1650. package/theme-chalk/src/popper.scss +1 -1
  1651. package/theme-chalk/src/radio-button.scss +5 -5
  1652. package/theme-chalk/src/radio-group.scss +3 -1
  1653. package/theme-chalk/src/radio.scss +11 -10
  1654. package/theme-chalk/src/select/common.scss +12 -0
  1655. package/theme-chalk/src/select-v2.scss +25 -62
  1656. package/theme-chalk/src/select.scss +3 -14
  1657. package/theme-chalk/src/skeleton-item.scss +4 -11
  1658. package/theme-chalk/src/slider.scss +5 -9
  1659. package/theme-chalk/src/table.scss +23 -34
  1660. package/theme-chalk/src/tag.scss +43 -31
  1661. package/theme-chalk/src/upload.scss +1 -0
  1662. package/web-types.json +1 -1
  1663. package/es/components/checkbox/src/checkbox-group.vue_vue_type_template_id_9944d4d2_lang.mjs +0 -15
  1664. package/es/components/checkbox/src/checkbox-group.vue_vue_type_template_id_9944d4d2_lang.mjs.map +0 -1
  1665. package/es/components/config-provider/src/index.d.ts +0 -19
  1666. package/es/components/config-provider/src/index.mjs +0 -22
  1667. package/es/components/config-provider/src/index.mjs.map +0 -1
  1668. package/es/utils/color.d.ts +0 -8
  1669. package/es/utils/color.mjs +0 -41
  1670. package/es/utils/color.mjs.map +0 -1
  1671. package/es/utils/config.d.ts +0 -9
  1672. package/es/utils/config.mjs +0 -10
  1673. package/es/utils/config.mjs.map +0 -1
  1674. package/es/utils/isServer.d.ts +0 -2
  1675. package/es/utils/isServer.mjs +0 -4
  1676. package/es/utils/isServer.mjs.map +0 -1
  1677. package/lib/components/checkbox/src/checkbox-group.vue_vue_type_template_id_9944d4d2_lang.js +0 -19
  1678. package/lib/components/checkbox/src/checkbox-group.vue_vue_type_template_id_9944d4d2_lang.js.map +0 -1
  1679. package/lib/components/config-provider/src/index.d.ts +0 -19
  1680. package/lib/components/config-provider/src/index.js +0 -26
  1681. package/lib/components/config-provider/src/index.js.map +0 -1
  1682. package/lib/utils/color.d.ts +0 -8
  1683. package/lib/utils/color.js +0 -48
  1684. package/lib/utils/color.js.map +0 -1
  1685. package/lib/utils/config.d.ts +0 -9
  1686. package/lib/utils/config.js +0 -15
  1687. package/lib/utils/config.js.map +0 -1
  1688. package/lib/utils/isServer.d.ts +0 -2
  1689. package/lib/utils/isServer.js +0 -8
  1690. package/lib/utils/isServer.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.vue_vue_type_script_lang.js","sources":["../../../../../../packages/components/cascader/src/index.vue"],"sourcesContent":["<template>\n <el-popper\n ref=\"popper\"\n v-model:visible=\"popperVisible\"\n manual-mode\n :append-to-body=\"popperAppendToBody\"\n placement=\"bottom-start\"\n :popper-class=\"`el-cascader__dropdown ${popperClass}`\"\n :popper-options=\"popperOptions\"\n :fallback-placements=\"['bottom-start', 'top-start', 'right', 'left']\"\n :stop-popper-mouse-event=\"false\"\n transition=\"el-zoom-in-top\"\n :gpu-acceleration=\"false\"\n :effect=\"Effect.LIGHT\"\n pure\n @after-leave=\"hideSuggestionPanel\"\n >\n <template #trigger>\n <div\n v-clickoutside:[popperPaneRef]=\"() => togglePopperVisible(false)\"\n :class=\"[\n 'el-cascader',\n realSize && `el-cascader--${realSize}`,\n { 'is-disabled': isDisabled },\n ]\"\n @click=\"() => togglePopperVisible(readonly ? undefined : true)\"\n @keydown=\"handleKeyDown\"\n @mouseenter=\"inputHover = true\"\n @mouseleave=\"inputHover = false\"\n >\n <el-input\n ref=\"input\"\n v-model.trim=\"inputValue\"\n :placeholder=\"inputPlaceholder\"\n :readonly=\"readonly\"\n :disabled=\"isDisabled\"\n :validate-event=\"false\"\n :size=\"realSize\"\n :class=\"{ 'is-focus': popperVisible }\"\n @compositionstart=\"handleComposition\"\n @compositionupdate=\"handleComposition\"\n @compositionend=\"handleComposition\"\n @focus=\"(e) => $emit('focus', e)\"\n @blur=\"(e) => $emit('blur', e)\"\n @input=\"handleInput\"\n >\n <template #suffix>\n <el-icon\n v-if=\"clearBtnVisible\"\n key=\"clear\"\n class=\"el-input__icon icon-circle-close\"\n @click.stop=\"handleClear\"\n >\n <circle-close />\n </el-icon>\n <el-icon\n v-else\n key=\"arrow-down\"\n :class=\"[\n 'el-input__icon',\n 'icon-arrow-down',\n popperVisible && 'is-reverse',\n ]\"\n @click.stop=\"togglePopperVisible()\"\n >\n <arrow-down />\n </el-icon>\n </template>\n </el-input>\n\n <div v-if=\"multiple\" ref=\"tagWrapper\" class=\"el-cascader__tags\">\n <el-tag\n v-for=\"tag in presentTags\"\n :key=\"tag.key\"\n type=\"info\"\n :size=\"tagSize\"\n :hit=\"tag.hitState\"\n :closable=\"tag.closable\"\n disable-transitions\n @close=\"deleteTag(tag)\"\n >\n <span>{{ tag.text }}</span>\n </el-tag>\n <input\n v-if=\"filterable && !isDisabled\"\n v-model.trim=\"searchInputValue\"\n type=\"text\"\n class=\"el-cascader__search-input\"\n :placeholder=\"presentText ? '' : inputPlaceholder\"\n @input=\"(e) => handleInput(searchInputValue, e)\"\n @click.stop=\"togglePopperVisible(true)\"\n @keydown.delete=\"handleDelete\"\n @compositionstart=\"handleComposition\"\n @compositionupdate=\"handleComposition\"\n @compositionend=\"handleComposition\"\n />\n </div>\n </div>\n </template>\n\n <template #default>\n <el-cascader-panel\n v-show=\"!filtering\"\n ref=\"panel\"\n v-model=\"checkedValue\"\n :options=\"options\"\n :props=\"props\"\n :border=\"false\"\n :render-label=\"$slots.default\"\n @expand-change=\"handleExpandChange\"\n @close=\"togglePopperVisible(false)\"\n />\n <el-scrollbar\n v-if=\"filterable\"\n v-show=\"filtering\"\n ref=\"suggestionPanel\"\n tag=\"ul\"\n class=\"el-cascader__suggestion-panel\"\n view-class=\"el-cascader__suggestion-list\"\n @keydown=\"handleSuggestionKeyDown\"\n >\n <template v-if=\"suggestions.length\">\n <li\n v-for=\"item in suggestions\"\n :key=\"item.uid\"\n :class=\"[\n 'el-cascader__suggestion-item',\n item.checked && 'is-checked',\n ]\"\n :tabindex=\"-1\"\n @click=\"handleSuggestionClick(item)\"\n >\n <span>{{ item.text }}</span>\n <el-icon v-if=\"item.checked\"><check /></el-icon>\n </li>\n </template>\n <slot v-else name=\"empty\">\n <li class=\"el-cascader__empty-text\">\n {{ t('el.cascader.noMatch') }}\n </li>\n </slot>\n </el-scrollbar>\n </template>\n </el-popper>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n inject,\n nextTick,\n onMounted,\n onBeforeUnmount,\n ref,\n watch,\n} from 'vue'\nimport { isPromise } from '@vue/shared'\nimport debounce from 'lodash/debounce'\n\nimport ElCascaderPanel, {\n CommonProps,\n} from '@element-plus/components/cascader-panel'\nimport ElInput from '@element-plus/components/input'\nimport ElPopper, { Effect } from '@element-plus/components/popper'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\n\nimport { elFormKey, elFormItemKey } from '@element-plus/tokens'\nimport { ClickOutside as Clickoutside } from '@element-plus/directives'\nimport { useLocale, useSize } from '@element-plus/hooks'\n\nimport { EVENT_CODE, focusNode, getSibling } from '@element-plus/utils/aria'\nimport { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '@element-plus/utils/constants'\nimport isServer from '@element-plus/utils/isServer'\nimport {\n addResizeListener,\n removeResizeListener,\n} from '@element-plus/utils/resize-event'\nimport { isValidComponentSize } from '@element-plus/utils/validators'\nimport { isKorean } from '@element-plus/utils/isDef'\nimport { CircleClose, Check, ArrowDown } from '@element-plus/icons-vue'\n\nimport type { Options } from '@element-plus/components/popper'\nimport type { ComputedRef, PropType, Ref } from 'vue'\nimport type { ElFormContext, ElFormItemContext } from '@element-plus/tokens'\nimport type {\n CascaderValue,\n CascaderNode,\n Tag,\n} from '@element-plus/components/cascader-panel'\nimport type { ComponentSize } from '@element-plus/utils/types'\n\ntype cascaderPanelType = InstanceType<typeof ElCascaderPanel>\ntype popperType = InstanceType<typeof ElPopper>\ntype inputType = InstanceType<typeof ElInput>\ntype suggestionPanelType = InstanceType<typeof ElScrollbar>\n\nconst DEFAULT_INPUT_HEIGHT = 40\n\nconst INPUT_HEIGHT_MAP = {\n medium: 36,\n small: 32,\n mini: 28,\n}\n\nconst popperOptions: Partial<Options> = {\n modifiers: [\n {\n name: 'arrowPosition',\n enabled: true,\n phase: 'main',\n fn: ({ state }) => {\n const { modifiersData, placement } = state as any\n if (['right', 'left'].includes(placement)) return\n modifiersData.arrow.x = 35\n },\n requires: ['arrow'],\n },\n ],\n}\n\nexport default defineComponent({\n name: 'ElCascader',\n\n components: {\n ElCascaderPanel,\n ElInput,\n ElPopper,\n ElScrollbar,\n ElTag,\n ElIcon,\n CircleClose,\n Check,\n ArrowDown,\n },\n\n directives: {\n Clickoutside,\n },\n\n props: {\n ...CommonProps,\n size: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n placeholder: {\n type: String,\n },\n disabled: Boolean,\n clearable: Boolean,\n filterable: Boolean,\n filterMethod: {\n type: Function as PropType<\n (node: CascaderNode, keyword: string) => boolean\n >,\n default: (node: CascaderNode, keyword: string) =>\n node.text.includes(keyword),\n },\n separator: {\n type: String,\n default: ' / ',\n },\n showAllLevels: {\n type: Boolean,\n default: true,\n },\n collapseTags: Boolean,\n debounce: {\n type: Number,\n default: 300,\n },\n beforeFilter: {\n type: Function as PropType<(value: string) => boolean | Promise<any>>,\n default: () => true,\n },\n popperClass: {\n type: String,\n default: '',\n },\n popperAppendToBody: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'focus',\n 'blur',\n 'visible-change',\n 'expand-change',\n 'remove-tag',\n ],\n\n setup(props, { emit }) {\n let inputInitialHeight = 0\n let pressDeleteCount = 0\n\n const { t } = useLocale()\n const elForm = inject(elFormKey, {} as ElFormContext)\n const elFormItem = inject(elFormItemKey, {} as ElFormItemContext)\n\n const popper: Ref<popperType | null> = ref(null)\n const input: Ref<inputType | null> = ref(null)\n const tagWrapper = ref(null)\n const panel: Ref<cascaderPanelType | null> = ref(null)\n const suggestionPanel: Ref<suggestionPanelType | null> = ref(null)\n const popperVisible = ref(false)\n const inputHover = ref(false)\n const filtering = ref(false)\n const inputValue = ref('')\n const searchInputValue = ref('')\n const presentTags: Ref<Tag[]> = ref([])\n const suggestions: Ref<CascaderNode[]> = ref([])\n const isOnComposition = ref(false)\n\n const isDisabled = computed(() => props.disabled || elForm.disabled)\n const inputPlaceholder = computed(\n () => props.placeholder || t('el.cascader.placeholder')\n )\n const realSize = useSize()\n const tagSize = computed(() =>\n ['small', 'mini'].includes(realSize.value) ? 'mini' : 'small'\n )\n const multiple = computed(() => !!props.props.multiple)\n const readonly = computed(() => !props.filterable || multiple.value)\n const searchKeyword = computed(() =>\n multiple.value ? searchInputValue.value : inputValue.value\n )\n const checkedNodes: ComputedRef<CascaderNode[]> = computed(\n () => panel.value?.checkedNodes || []\n )\n const clearBtnVisible = computed(() => {\n if (\n !props.clearable ||\n isDisabled.value ||\n filtering.value ||\n !inputHover.value\n )\n return false\n\n return !!checkedNodes.value.length\n })\n const presentText = computed(() => {\n const { showAllLevels, separator } = props\n const nodes = checkedNodes.value\n return nodes.length\n ? multiple.value\n ? ' '\n : nodes[0].calcText(showAllLevels, separator)\n : ''\n })\n\n const checkedValue = computed<CascaderValue>({\n get() {\n return props.modelValue\n },\n set(val) {\n emit(UPDATE_MODEL_EVENT, val)\n emit(CHANGE_EVENT, val)\n elFormItem.validate?.('change')\n },\n })\n\n const popperPaneRef = computed(() => {\n return popper.value?.popperRef\n })\n\n const togglePopperVisible = (visible?: boolean) => {\n if (isDisabled.value) return\n\n visible = visible ?? !popperVisible.value\n\n if (visible !== popperVisible.value) {\n popperVisible.value = visible\n input.value?.input?.setAttribute('aria-expanded', `${visible}`)\n\n if (visible) {\n updatePopperPosition()\n nextTick(panel.value?.scrollToExpandingNode)\n } else if (props.filterable) {\n const { value } = presentText\n inputValue.value = value\n searchInputValue.value = value\n }\n\n emit('visible-change', visible)\n }\n }\n\n const updatePopperPosition = () => {\n nextTick(popper.value?.update)\n }\n\n const hideSuggestionPanel = () => {\n filtering.value = false\n }\n\n const genTag = (node: CascaderNode): Tag => {\n const { showAllLevels, separator } = props\n return {\n node,\n key: node.uid,\n text: node.calcText(showAllLevels, separator),\n hitState: false,\n closable: !isDisabled.value && !node.isDisabled,\n }\n }\n\n const deleteTag = (tag: Tag) => {\n const node = tag.node as CascaderNode\n node.doCheck(false)\n panel.value?.calculateCheckedValue()\n emit('remove-tag', node.valueByOption)\n }\n\n const calculatePresentTags = () => {\n if (!multiple.value) return\n\n const nodes = checkedNodes.value\n const tags: Tag[] = []\n\n if (nodes.length) {\n const [first, ...rest] = nodes\n const restCount = rest.length\n\n tags.push(genTag(first))\n\n if (restCount) {\n if (props.collapseTags) {\n tags.push({\n key: -1,\n text: `+ ${restCount}`,\n closable: false,\n })\n } else {\n rest.forEach((node) => tags.push(genTag(node)))\n }\n }\n }\n\n presentTags.value = tags\n }\n\n const calculateSuggestions = () => {\n const { filterMethod, showAllLevels, separator } = props\n const res = panel.value\n ?.getFlattedNodes(!props.props.checkStrictly)\n ?.filter((node) => {\n if (node.isDisabled) return false\n node.calcText(showAllLevels, separator)\n return filterMethod(node, searchKeyword.value)\n })\n\n if (multiple.value) {\n presentTags.value.forEach((tag) => {\n tag.hitState = false\n })\n }\n\n filtering.value = true\n suggestions.value = res!\n updatePopperPosition()\n }\n\n const focusFirstNode = () => {\n let firstNode!: HTMLElement\n\n if (filtering.value && suggestionPanel.value) {\n firstNode = suggestionPanel.value.$el.querySelector(\n '.el-cascader__suggestion-item'\n )\n } else {\n firstNode = panel.value?.$el.querySelector(\n '.el-cascader-node[tabindex=\"-1\"]'\n )\n }\n\n if (firstNode) {\n firstNode.focus()\n !filtering.value && firstNode.click()\n }\n }\n\n const updateStyle = () => {\n const inputInner = input.value?.input\n const tagWrapperEl = tagWrapper.value\n const suggestionPanelEl = suggestionPanel.value?.$el\n\n if (isServer || !inputInner) return\n\n if (suggestionPanelEl) {\n const suggestionList = suggestionPanelEl.querySelector(\n '.el-cascader__suggestion-list'\n )\n suggestionList.style.minWidth = `${inputInner.offsetWidth}px`\n }\n\n if (tagWrapperEl) {\n const { offsetHeight } = tagWrapperEl\n const height =\n presentTags.value.length > 0\n ? `${Math.max(offsetHeight + 6, inputInitialHeight)}px`\n : `${inputInitialHeight}px`\n inputInner.style.height = height\n updatePopperPosition()\n }\n }\n\n const getCheckedNodes = (leafOnly: boolean) => {\n return panel.value?.getCheckedNodes(leafOnly)\n }\n\n const handleExpandChange = (value: CascaderValue) => {\n updatePopperPosition()\n emit('expand-change', value)\n }\n\n const handleComposition = (event: CompositionEvent) => {\n const text = (event.target as HTMLInputElement)?.value\n if (event.type === 'compositionend') {\n isOnComposition.value = false\n nextTick(() => handleInput(text))\n } else {\n const lastCharacter = text[text.length - 1] || ''\n isOnComposition.value = !isKorean(lastCharacter)\n }\n }\n\n const handleKeyDown = (e: KeyboardEvent) => {\n if (isOnComposition.value) return\n\n switch (e.code) {\n case EVENT_CODE.enter:\n togglePopperVisible()\n break\n case EVENT_CODE.down:\n togglePopperVisible(true)\n nextTick(focusFirstNode)\n e.preventDefault()\n break\n case EVENT_CODE.esc:\n case EVENT_CODE.tab:\n togglePopperVisible(false)\n break\n }\n }\n\n const handleClear = () => {\n panel.value?.clearCheckedNodes()\n togglePopperVisible(false)\n }\n\n const handleSuggestionClick = (node: CascaderNode) => {\n const { checked } = node\n\n if (multiple.value) {\n panel.value?.handleCheckChange(node, !checked, false)\n } else {\n !checked && panel.value?.handleCheckChange(node, true, false)\n togglePopperVisible(false)\n }\n }\n\n const handleSuggestionKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n const { code } = e\n\n switch (code) {\n case EVENT_CODE.up:\n case EVENT_CODE.down: {\n const distance = code === EVENT_CODE.up ? -1 : 1\n focusNode(\n getSibling(\n target,\n distance,\n '.el-cascader__suggestion-item[tabindex=\"-1\"]'\n )\n )\n break\n }\n case EVENT_CODE.enter:\n target.click()\n break\n case EVENT_CODE.esc:\n case EVENT_CODE.tab:\n togglePopperVisible(false)\n break\n }\n }\n\n const handleDelete = () => {\n const tags = presentTags.value\n const lastTag = tags[tags.length - 1]\n pressDeleteCount = searchInputValue.value ? 0 : pressDeleteCount + 1\n\n if (!lastTag || !pressDeleteCount) return\n\n if (lastTag.hitState) {\n deleteTag(lastTag)\n } else {\n lastTag.hitState = true\n }\n }\n\n const handleFilter = debounce(() => {\n const { value } = searchKeyword\n\n if (!value) return\n\n const passed = props.beforeFilter(value)\n\n if (isPromise(passed)) {\n passed.then(calculateSuggestions).catch(() => {\n /* prevent log error */\n })\n } else if (passed !== false) {\n calculateSuggestions()\n } else {\n hideSuggestionPanel()\n }\n }, props.debounce)\n\n const handleInput = (val: string, e?: KeyboardEvent) => {\n !popperVisible.value && togglePopperVisible(true)\n\n if (e?.isComposing) return\n\n val ? handleFilter() : hideSuggestionPanel()\n }\n\n watch(filtering, updatePopperPosition)\n\n watch([checkedNodes, isDisabled], calculatePresentTags)\n\n watch(presentTags, () => {\n nextTick(() => updateStyle())\n })\n\n watch(presentText, (val) => (inputValue.value = val), { immediate: true })\n\n onMounted(() => {\n const inputEl = input.value?.$el\n inputInitialHeight =\n inputEl?.offsetHeight ||\n INPUT_HEIGHT_MAP[realSize.value] ||\n DEFAULT_INPUT_HEIGHT\n addResizeListener(inputEl, updateStyle)\n })\n\n onBeforeUnmount(() => {\n removeResizeListener(input.value?.$el, updateStyle)\n })\n\n return {\n Effect,\n popperOptions,\n popper,\n popperPaneRef,\n input,\n tagWrapper,\n panel,\n suggestionPanel,\n popperVisible,\n inputHover,\n inputPlaceholder,\n filtering,\n presentText,\n checkedValue,\n inputValue,\n searchInputValue,\n presentTags,\n suggestions,\n isDisabled,\n isOnComposition,\n realSize,\n tagSize,\n multiple,\n readonly,\n clearBtnVisible,\n t,\n togglePopperVisible,\n hideSuggestionPanel,\n deleteTag,\n focusFirstNode,\n getCheckedNodes,\n handleExpandChange,\n handleKeyDown,\n handleComposition,\n handleClear,\n handleSuggestionClick,\n handleSuggestionKeyDown,\n handleDelete,\n handleInput,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElCascaderPanel","ElInput","ElPopper","ElScrollbar","ElTag","ElIcon","CircleClose","Check","ArrowDown","Clickoutside","CommonProps","isValidComponentSize","UPDATE_MODEL_EVENT","CHANGE_EVENT","useLocale","inject","elFormKey","elFormItemKey","ref","computed","useSize","isServer","isKorean","EVENT_CODE","getSibling","debounce","isPromise","Effect"],"mappings":"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"}
1
+ {"version":3,"file":"index.vue_vue_type_script_lang.js","sources":["../../../../../../packages/components/cascader/src/index.vue"],"sourcesContent":["<template>\n <el-popper\n ref=\"popper\"\n v-model:visible=\"popperVisible\"\n manual-mode\n :append-to-body=\"popperAppendToBody\"\n placement=\"bottom-start\"\n :popper-class=\"`el-cascader__dropdown ${popperClass}`\"\n :popper-options=\"popperOptions\"\n :fallback-placements=\"['bottom-start', 'top-start', 'right', 'left']\"\n :stop-popper-mouse-event=\"false\"\n transition=\"el-zoom-in-top\"\n :gpu-acceleration=\"false\"\n :effect=\"Effect.LIGHT\"\n pure\n @after-leave=\"hideSuggestionPanel\"\n >\n <template #trigger>\n <div\n v-clickoutside:[popperPaneRef]=\"() => togglePopperVisible(false)\"\n :class=\"[\n 'el-cascader',\n realSize && `el-cascader--${realSize}`,\n { 'is-disabled': isDisabled },\n ]\"\n @click=\"() => togglePopperVisible(readonly ? undefined : true)\"\n @keydown=\"handleKeyDown\"\n @mouseenter=\"inputHover = true\"\n @mouseleave=\"inputHover = false\"\n >\n <el-input\n ref=\"input\"\n v-model.trim=\"inputValue\"\n :placeholder=\"inputPlaceholder\"\n :readonly=\"readonly\"\n :disabled=\"isDisabled\"\n :validate-event=\"false\"\n :size=\"realSize\"\n :class=\"{ 'is-focus': popperVisible }\"\n @compositionstart=\"handleComposition\"\n @compositionupdate=\"handleComposition\"\n @compositionend=\"handleComposition\"\n @focus=\"(e) => $emit('focus', e)\"\n @blur=\"(e) => $emit('blur', e)\"\n @input=\"handleInput\"\n >\n <template #suffix>\n <el-icon\n v-if=\"clearBtnVisible\"\n key=\"clear\"\n class=\"el-input__icon icon-circle-close\"\n @click.stop=\"handleClear\"\n >\n <circle-close />\n </el-icon>\n <el-icon\n v-else\n key=\"arrow-down\"\n :class=\"[\n 'el-input__icon',\n 'icon-arrow-down',\n popperVisible && 'is-reverse',\n ]\"\n @click.stop=\"togglePopperVisible()\"\n >\n <arrow-down />\n </el-icon>\n </template>\n </el-input>\n\n <div v-if=\"multiple\" ref=\"tagWrapper\" class=\"el-cascader__tags\">\n <el-tag\n v-for=\"tag in presentTags\"\n :key=\"tag.key\"\n type=\"info\"\n :size=\"tagSize\"\n :hit=\"tag.hitState\"\n :closable=\"tag.closable\"\n disable-transitions\n @close=\"deleteTag(tag)\"\n >\n <span>{{ tag.text }}</span>\n </el-tag>\n <input\n v-if=\"filterable && !isDisabled\"\n v-model.trim=\"searchInputValue\"\n type=\"text\"\n class=\"el-cascader__search-input\"\n :placeholder=\"presentText ? '' : inputPlaceholder\"\n @input=\"(e) => handleInput(searchInputValue, e)\"\n @click.stop=\"togglePopperVisible(true)\"\n @keydown.delete=\"handleDelete\"\n @compositionstart=\"handleComposition\"\n @compositionupdate=\"handleComposition\"\n @compositionend=\"handleComposition\"\n />\n </div>\n </div>\n </template>\n\n <template #default>\n <el-cascader-panel\n v-show=\"!filtering\"\n ref=\"panel\"\n v-model=\"checkedValue\"\n :options=\"options\"\n :props=\"props\"\n :border=\"false\"\n :render-label=\"$slots.default\"\n @expand-change=\"handleExpandChange\"\n @close=\"togglePopperVisible(false)\"\n />\n <el-scrollbar\n v-if=\"filterable\"\n v-show=\"filtering\"\n ref=\"suggestionPanel\"\n tag=\"ul\"\n class=\"el-cascader__suggestion-panel\"\n view-class=\"el-cascader__suggestion-list\"\n @keydown=\"handleSuggestionKeyDown\"\n >\n <template v-if=\"suggestions.length\">\n <li\n v-for=\"item in suggestions\"\n :key=\"item.uid\"\n :class=\"[\n 'el-cascader__suggestion-item',\n item.checked && 'is-checked',\n ]\"\n :tabindex=\"-1\"\n @click=\"handleSuggestionClick(item)\"\n >\n <span>{{ item.text }}</span>\n <el-icon v-if=\"item.checked\"><check /></el-icon>\n </li>\n </template>\n <slot v-else name=\"empty\">\n <li class=\"el-cascader__empty-text\">\n {{ t('el.cascader.noMatch') }}\n </li>\n </slot>\n </el-scrollbar>\n </template>\n </el-popper>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n inject,\n nextTick,\n onMounted,\n onBeforeUnmount,\n ref,\n watch,\n} from 'vue'\nimport { isPromise } from '@vue/shared'\nimport debounce from 'lodash/debounce'\n\nimport { isClient } from '@vueuse/core'\nimport ElCascaderPanel, {\n CommonProps,\n} from '@element-plus/components/cascader-panel'\nimport ElInput from '@element-plus/components/input'\nimport ElPopper, { Effect } from '@element-plus/components/popper'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\n\nimport { elFormKey, elFormItemKey } from '@element-plus/tokens'\nimport { ClickOutside as Clickoutside } from '@element-plus/directives'\nimport { useLocale, useSize } from '@element-plus/hooks'\n\nimport { EVENT_CODE, focusNode, getSibling } from '@element-plus/utils/aria'\nimport { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '@element-plus/utils/constants'\nimport {\n addResizeListener,\n removeResizeListener,\n} from '@element-plus/utils/resize-event'\nimport { isValidComponentSize } from '@element-plus/utils/validators'\nimport { isKorean } from '@element-plus/utils/isDef'\nimport { CircleClose, Check, ArrowDown } from '@element-plus/icons-vue'\n\nimport type { Options } from '@element-plus/components/popper'\nimport type { ComputedRef, PropType, Ref } from 'vue'\nimport type { ElFormContext, ElFormItemContext } from '@element-plus/tokens'\nimport type {\n CascaderValue,\n CascaderNode,\n Tag,\n} from '@element-plus/components/cascader-panel'\nimport type { ComponentSize } from '@element-plus/utils/types'\n\ntype cascaderPanelType = InstanceType<typeof ElCascaderPanel>\ntype popperType = InstanceType<typeof ElPopper>\ntype inputType = InstanceType<typeof ElInput>\ntype suggestionPanelType = InstanceType<typeof ElScrollbar>\n\nconst DEFAULT_INPUT_HEIGHT = 40\n\nconst INPUT_HEIGHT_MAP = {\n large: 36,\n default: 32,\n small: 28,\n}\n\nconst popperOptions: Partial<Options> = {\n modifiers: [\n {\n name: 'arrowPosition',\n enabled: true,\n phase: 'main',\n fn: ({ state }) => {\n const { modifiersData, placement } = state as any\n if (['right', 'left'].includes(placement)) return\n modifiersData.arrow.x = 35\n },\n requires: ['arrow'],\n },\n ],\n}\n\nexport default defineComponent({\n name: 'ElCascader',\n\n components: {\n ElCascaderPanel,\n ElInput,\n ElPopper,\n ElScrollbar,\n ElTag,\n ElIcon,\n CircleClose,\n Check,\n ArrowDown,\n },\n\n directives: {\n Clickoutside,\n },\n\n props: {\n ...CommonProps,\n size: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n placeholder: {\n type: String,\n },\n disabled: Boolean,\n clearable: Boolean,\n filterable: Boolean,\n filterMethod: {\n type: Function as PropType<\n (node: CascaderNode, keyword: string) => boolean\n >,\n default: (node: CascaderNode, keyword: string) =>\n node.text.includes(keyword),\n },\n separator: {\n type: String,\n default: ' / ',\n },\n showAllLevels: {\n type: Boolean,\n default: true,\n },\n collapseTags: Boolean,\n debounce: {\n type: Number,\n default: 300,\n },\n beforeFilter: {\n type: Function as PropType<(value: string) => boolean | Promise<any>>,\n default: () => true,\n },\n popperClass: {\n type: String,\n default: '',\n },\n popperAppendToBody: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'focus',\n 'blur',\n 'visible-change',\n 'expand-change',\n 'remove-tag',\n ],\n\n setup(props, { emit }) {\n let inputInitialHeight = 0\n let pressDeleteCount = 0\n\n const { t } = useLocale()\n const elForm = inject(elFormKey, {} as ElFormContext)\n const elFormItem = inject(elFormItemKey, {} as ElFormItemContext)\n\n const popper: Ref<popperType | null> = ref(null)\n const input: Ref<inputType | null> = ref(null)\n const tagWrapper = ref(null)\n const panel: Ref<cascaderPanelType | null> = ref(null)\n const suggestionPanel: Ref<suggestionPanelType | null> = ref(null)\n const popperVisible = ref(false)\n const inputHover = ref(false)\n const filtering = ref(false)\n const inputValue = ref('')\n const searchInputValue = ref('')\n const presentTags: Ref<Tag[]> = ref([])\n const suggestions: Ref<CascaderNode[]> = ref([])\n const isOnComposition = ref(false)\n\n const isDisabled = computed(() => props.disabled || elForm.disabled)\n const inputPlaceholder = computed(\n () => props.placeholder || t('el.cascader.placeholder')\n )\n const realSize = useSize()\n const tagSize = computed(() =>\n ['small'].includes(realSize.value) ? 'small' : 'default'\n )\n const multiple = computed(() => !!props.props.multiple)\n const readonly = computed(() => !props.filterable || multiple.value)\n const searchKeyword = computed(() =>\n multiple.value ? searchInputValue.value : inputValue.value\n )\n const checkedNodes: ComputedRef<CascaderNode[]> = computed(\n () => panel.value?.checkedNodes || []\n )\n const clearBtnVisible = computed(() => {\n if (\n !props.clearable ||\n isDisabled.value ||\n filtering.value ||\n !inputHover.value\n )\n return false\n\n return !!checkedNodes.value.length\n })\n const presentText = computed(() => {\n const { showAllLevels, separator } = props\n const nodes = checkedNodes.value\n return nodes.length\n ? multiple.value\n ? ' '\n : nodes[0].calcText(showAllLevels, separator)\n : ''\n })\n\n const checkedValue = computed<CascaderValue>({\n get() {\n return props.modelValue\n },\n set(val) {\n emit(UPDATE_MODEL_EVENT, val)\n emit(CHANGE_EVENT, val)\n elFormItem.validate?.('change')\n },\n })\n\n const popperPaneRef = computed(() => {\n return popper.value?.popperRef\n })\n\n const togglePopperVisible = (visible?: boolean) => {\n if (isDisabled.value) return\n\n visible = visible ?? !popperVisible.value\n\n if (visible !== popperVisible.value) {\n popperVisible.value = visible\n input.value?.input?.setAttribute('aria-expanded', `${visible}`)\n\n if (visible) {\n updatePopperPosition()\n nextTick(panel.value?.scrollToExpandingNode)\n } else if (props.filterable) {\n const { value } = presentText\n inputValue.value = value\n searchInputValue.value = value\n }\n\n emit('visible-change', visible)\n }\n }\n\n const updatePopperPosition = () => {\n nextTick(popper.value?.update)\n }\n\n const hideSuggestionPanel = () => {\n filtering.value = false\n }\n\n const genTag = (node: CascaderNode): Tag => {\n const { showAllLevels, separator } = props\n return {\n node,\n key: node.uid,\n text: node.calcText(showAllLevels, separator),\n hitState: false,\n closable: !isDisabled.value && !node.isDisabled,\n }\n }\n\n const deleteTag = (tag: Tag) => {\n const node = tag.node as CascaderNode\n node.doCheck(false)\n panel.value?.calculateCheckedValue()\n emit('remove-tag', node.valueByOption)\n }\n\n const calculatePresentTags = () => {\n if (!multiple.value) return\n\n const nodes = checkedNodes.value\n const tags: Tag[] = []\n\n if (nodes.length) {\n const [first, ...rest] = nodes\n const restCount = rest.length\n\n tags.push(genTag(first))\n\n if (restCount) {\n if (props.collapseTags) {\n tags.push({\n key: -1,\n text: `+ ${restCount}`,\n closable: false,\n })\n } else {\n rest.forEach((node) => tags.push(genTag(node)))\n }\n }\n }\n\n presentTags.value = tags\n }\n\n const calculateSuggestions = () => {\n const { filterMethod, showAllLevels, separator } = props\n const res = panel.value\n ?.getFlattedNodes(!props.props.checkStrictly)\n ?.filter((node) => {\n if (node.isDisabled) return false\n node.calcText(showAllLevels, separator)\n return filterMethod(node, searchKeyword.value)\n })\n\n if (multiple.value) {\n presentTags.value.forEach((tag) => {\n tag.hitState = false\n })\n }\n\n filtering.value = true\n suggestions.value = res!\n updatePopperPosition()\n }\n\n const focusFirstNode = () => {\n let firstNode!: HTMLElement\n\n if (filtering.value && suggestionPanel.value) {\n firstNode = suggestionPanel.value.$el.querySelector(\n '.el-cascader__suggestion-item'\n )\n } else {\n firstNode = panel.value?.$el.querySelector(\n '.el-cascader-node[tabindex=\"-1\"]'\n )\n }\n\n if (firstNode) {\n firstNode.focus()\n !filtering.value && firstNode.click()\n }\n }\n\n const updateStyle = () => {\n const inputInner = input.value?.input\n const tagWrapperEl = tagWrapper.value\n const suggestionPanelEl = suggestionPanel.value?.$el\n\n if (!isClient || !inputInner) return\n\n if (suggestionPanelEl) {\n const suggestionList = suggestionPanelEl.querySelector(\n '.el-cascader__suggestion-list'\n )\n suggestionList.style.minWidth = `${inputInner.offsetWidth}px`\n }\n\n if (tagWrapperEl) {\n const { offsetHeight } = tagWrapperEl\n const height =\n presentTags.value.length > 0\n ? `${Math.max(offsetHeight + 6, inputInitialHeight)}px`\n : `${inputInitialHeight}px`\n inputInner.style.height = height\n updatePopperPosition()\n }\n }\n\n const getCheckedNodes = (leafOnly: boolean) => {\n return panel.value?.getCheckedNodes(leafOnly)\n }\n\n const handleExpandChange = (value: CascaderValue) => {\n updatePopperPosition()\n emit('expand-change', value)\n }\n\n const handleComposition = (event: CompositionEvent) => {\n const text = (event.target as HTMLInputElement)?.value\n if (event.type === 'compositionend') {\n isOnComposition.value = false\n nextTick(() => handleInput(text))\n } else {\n const lastCharacter = text[text.length - 1] || ''\n isOnComposition.value = !isKorean(lastCharacter)\n }\n }\n\n const handleKeyDown = (e: KeyboardEvent) => {\n if (isOnComposition.value) return\n\n switch (e.code) {\n case EVENT_CODE.enter:\n togglePopperVisible()\n break\n case EVENT_CODE.down:\n togglePopperVisible(true)\n nextTick(focusFirstNode)\n e.preventDefault()\n break\n case EVENT_CODE.esc:\n case EVENT_CODE.tab:\n togglePopperVisible(false)\n break\n }\n }\n\n const handleClear = () => {\n panel.value?.clearCheckedNodes()\n togglePopperVisible(false)\n }\n\n const handleSuggestionClick = (node: CascaderNode) => {\n const { checked } = node\n\n if (multiple.value) {\n panel.value?.handleCheckChange(node, !checked, false)\n } else {\n !checked && panel.value?.handleCheckChange(node, true, false)\n togglePopperVisible(false)\n }\n }\n\n const handleSuggestionKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n const { code } = e\n\n switch (code) {\n case EVENT_CODE.up:\n case EVENT_CODE.down: {\n const distance = code === EVENT_CODE.up ? -1 : 1\n focusNode(\n getSibling(\n target,\n distance,\n '.el-cascader__suggestion-item[tabindex=\"-1\"]'\n )\n )\n break\n }\n case EVENT_CODE.enter:\n target.click()\n break\n case EVENT_CODE.esc:\n case EVENT_CODE.tab:\n togglePopperVisible(false)\n break\n }\n }\n\n const handleDelete = () => {\n const tags = presentTags.value\n const lastTag = tags[tags.length - 1]\n pressDeleteCount = searchInputValue.value ? 0 : pressDeleteCount + 1\n\n if (!lastTag || !pressDeleteCount) return\n\n if (lastTag.hitState) {\n deleteTag(lastTag)\n } else {\n lastTag.hitState = true\n }\n }\n\n const handleFilter = debounce(() => {\n const { value } = searchKeyword\n\n if (!value) return\n\n const passed = props.beforeFilter(value)\n\n if (isPromise(passed)) {\n passed.then(calculateSuggestions).catch(() => {\n /* prevent log error */\n })\n } else if (passed !== false) {\n calculateSuggestions()\n } else {\n hideSuggestionPanel()\n }\n }, props.debounce)\n\n const handleInput = (val: string, e?: KeyboardEvent) => {\n !popperVisible.value && togglePopperVisible(true)\n\n if (e?.isComposing) return\n\n val ? handleFilter() : hideSuggestionPanel()\n }\n\n watch(filtering, updatePopperPosition)\n\n watch([checkedNodes, isDisabled], calculatePresentTags)\n\n watch(presentTags, () => {\n nextTick(() => updateStyle())\n })\n\n watch(presentText, (val) => (inputValue.value = val), { immediate: true })\n\n onMounted(() => {\n const inputEl = input.value?.$el\n inputInitialHeight =\n inputEl?.offsetHeight ||\n INPUT_HEIGHT_MAP[realSize.value] ||\n DEFAULT_INPUT_HEIGHT\n addResizeListener(inputEl, updateStyle)\n })\n\n onBeforeUnmount(() => {\n removeResizeListener(input.value?.$el, updateStyle)\n })\n\n return {\n Effect,\n popperOptions,\n popper,\n popperPaneRef,\n input,\n tagWrapper,\n panel,\n suggestionPanel,\n popperVisible,\n inputHover,\n inputPlaceholder,\n filtering,\n presentText,\n checkedValue,\n inputValue,\n searchInputValue,\n presentTags,\n suggestions,\n isDisabled,\n isOnComposition,\n realSize,\n tagSize,\n multiple,\n readonly,\n clearBtnVisible,\n t,\n togglePopperVisible,\n hideSuggestionPanel,\n deleteTag,\n focusFirstNode,\n getCheckedNodes,\n handleExpandChange,\n handleKeyDown,\n handleComposition,\n handleClear,\n handleSuggestionClick,\n handleSuggestionKeyDown,\n handleDelete,\n handleInput,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElCascaderPanel","ElScrollbar","ElTag","ElIcon","CommonProps","UPDATE_MODEL_EVENT","CHANGE_EVENT","useLocale","ref","useSize","computed","nextTick","isKorean","EVENT_CODE","focusNode","getSibling","isPromise","Effect"],"mappings":"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"}
@@ -41,7 +41,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
41
41
  onAfterLeave: _ctx.hideSuggestionPanel
42
42
  }, {
43
43
  trigger: vue.withCtx(() => [
44
- vue.withDirectives(vue.createElementVNode("div", {
44
+ vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", {
45
45
  class: vue.normalizeClass([
46
46
  "el-cascader",
47
47
  _ctx.realSize && `el-cascader--${_ctx.realSize}`,
@@ -135,7 +135,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
135
135
  ]
136
136
  ]) : vue.createCommentVNode("v-if", true)
137
137
  ], 512)) : vue.createCommentVNode("v-if", true)
138
- ], 34), [
138
+ ], 34)), [
139
139
  [_directive_clickoutside, () => _ctx.togglePopperVisible(false), _ctx.popperPaneRef]
140
140
  ])
141
141
  ]),
@@ -1 +1 @@
1
- {"version":3,"file":"index.vue_vue_type_template_id_0429c2db_lang.js","sources":["../../../../../../packages/components/cascader/src/index.vue?vue&type=template&id=0429c2db&lang.js"],"sourcesContent":["<template>\n <el-popper\n ref=\"popper\"\n v-model:visible=\"popperVisible\"\n manual-mode\n :append-to-body=\"popperAppendToBody\"\n placement=\"bottom-start\"\n :popper-class=\"`el-cascader__dropdown ${popperClass}`\"\n :popper-options=\"popperOptions\"\n :fallback-placements=\"['bottom-start', 'top-start', 'right', 'left']\"\n :stop-popper-mouse-event=\"false\"\n transition=\"el-zoom-in-top\"\n :gpu-acceleration=\"false\"\n :effect=\"Effect.LIGHT\"\n pure\n @after-leave=\"hideSuggestionPanel\"\n >\n <template #trigger>\n <div\n v-clickoutside:[popperPaneRef]=\"() => togglePopperVisible(false)\"\n :class=\"[\n 'el-cascader',\n realSize && `el-cascader--${realSize}`,\n { 'is-disabled': isDisabled },\n ]\"\n @click=\"() => togglePopperVisible(readonly ? undefined : true)\"\n @keydown=\"handleKeyDown\"\n @mouseenter=\"inputHover = true\"\n @mouseleave=\"inputHover = false\"\n >\n <el-input\n ref=\"input\"\n v-model.trim=\"inputValue\"\n :placeholder=\"inputPlaceholder\"\n :readonly=\"readonly\"\n :disabled=\"isDisabled\"\n :validate-event=\"false\"\n :size=\"realSize\"\n :class=\"{ 'is-focus': popperVisible }\"\n @compositionstart=\"handleComposition\"\n @compositionupdate=\"handleComposition\"\n @compositionend=\"handleComposition\"\n @focus=\"(e) => $emit('focus', e)\"\n @blur=\"(e) => $emit('blur', e)\"\n @input=\"handleInput\"\n >\n <template #suffix>\n <el-icon\n v-if=\"clearBtnVisible\"\n key=\"clear\"\n class=\"el-input__icon icon-circle-close\"\n @click.stop=\"handleClear\"\n >\n <circle-close />\n </el-icon>\n <el-icon\n v-else\n key=\"arrow-down\"\n :class=\"[\n 'el-input__icon',\n 'icon-arrow-down',\n popperVisible && 'is-reverse',\n ]\"\n @click.stop=\"togglePopperVisible()\"\n >\n <arrow-down />\n </el-icon>\n </template>\n </el-input>\n\n <div v-if=\"multiple\" ref=\"tagWrapper\" class=\"el-cascader__tags\">\n <el-tag\n v-for=\"tag in presentTags\"\n :key=\"tag.key\"\n type=\"info\"\n :size=\"tagSize\"\n :hit=\"tag.hitState\"\n :closable=\"tag.closable\"\n disable-transitions\n @close=\"deleteTag(tag)\"\n >\n <span>{{ tag.text }}</span>\n </el-tag>\n <input\n v-if=\"filterable && !isDisabled\"\n v-model.trim=\"searchInputValue\"\n type=\"text\"\n class=\"el-cascader__search-input\"\n :placeholder=\"presentText ? '' : inputPlaceholder\"\n @input=\"(e) => handleInput(searchInputValue, e)\"\n @click.stop=\"togglePopperVisible(true)\"\n @keydown.delete=\"handleDelete\"\n @compositionstart=\"handleComposition\"\n @compositionupdate=\"handleComposition\"\n @compositionend=\"handleComposition\"\n />\n </div>\n </div>\n </template>\n\n <template #default>\n <el-cascader-panel\n v-show=\"!filtering\"\n ref=\"panel\"\n v-model=\"checkedValue\"\n :options=\"options\"\n :props=\"props\"\n :border=\"false\"\n :render-label=\"$slots.default\"\n @expand-change=\"handleExpandChange\"\n @close=\"togglePopperVisible(false)\"\n />\n <el-scrollbar\n v-if=\"filterable\"\n v-show=\"filtering\"\n ref=\"suggestionPanel\"\n tag=\"ul\"\n class=\"el-cascader__suggestion-panel\"\n view-class=\"el-cascader__suggestion-list\"\n @keydown=\"handleSuggestionKeyDown\"\n >\n <template v-if=\"suggestions.length\">\n <li\n v-for=\"item in suggestions\"\n :key=\"item.uid\"\n :class=\"[\n 'el-cascader__suggestion-item',\n item.checked && 'is-checked',\n ]\"\n :tabindex=\"-1\"\n @click=\"handleSuggestionClick(item)\"\n >\n <span>{{ item.text }}</span>\n <el-icon v-if=\"item.checked\"><check /></el-icon>\n </li>\n </template>\n <slot v-else name=\"empty\">\n <li class=\"el-cascader__empty-text\">\n {{ t('el.cascader.noMatch') }}\n </li>\n </slot>\n </el-scrollbar>\n </template>\n </el-popper>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n inject,\n nextTick,\n onMounted,\n onBeforeUnmount,\n ref,\n watch,\n} from 'vue'\nimport { isPromise } from '@vue/shared'\nimport debounce from 'lodash/debounce'\n\nimport ElCascaderPanel, {\n CommonProps,\n} from '@element-plus/components/cascader-panel'\nimport ElInput from '@element-plus/components/input'\nimport ElPopper, { Effect } from '@element-plus/components/popper'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\n\nimport { elFormKey, elFormItemKey } from '@element-plus/tokens'\nimport { ClickOutside as Clickoutside } from '@element-plus/directives'\nimport { useLocale, useSize } from '@element-plus/hooks'\n\nimport { EVENT_CODE, focusNode, getSibling } from '@element-plus/utils/aria'\nimport { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '@element-plus/utils/constants'\nimport isServer from '@element-plus/utils/isServer'\nimport {\n addResizeListener,\n removeResizeListener,\n} from '@element-plus/utils/resize-event'\nimport { isValidComponentSize } from '@element-plus/utils/validators'\nimport { isKorean } from '@element-plus/utils/isDef'\nimport { CircleClose, Check, ArrowDown } from '@element-plus/icons-vue'\n\nimport type { Options } from '@element-plus/components/popper'\nimport type { ComputedRef, PropType, Ref } from 'vue'\nimport type { ElFormContext, ElFormItemContext } from '@element-plus/tokens'\nimport type {\n CascaderValue,\n CascaderNode,\n Tag,\n} from '@element-plus/components/cascader-panel'\nimport type { ComponentSize } from '@element-plus/utils/types'\n\ntype cascaderPanelType = InstanceType<typeof ElCascaderPanel>\ntype popperType = InstanceType<typeof ElPopper>\ntype inputType = InstanceType<typeof ElInput>\ntype suggestionPanelType = InstanceType<typeof ElScrollbar>\n\nconst DEFAULT_INPUT_HEIGHT = 40\n\nconst INPUT_HEIGHT_MAP = {\n medium: 36,\n small: 32,\n mini: 28,\n}\n\nconst popperOptions: Partial<Options> = {\n modifiers: [\n {\n name: 'arrowPosition',\n enabled: true,\n phase: 'main',\n fn: ({ state }) => {\n const { modifiersData, placement } = state as any\n if (['right', 'left'].includes(placement)) return\n modifiersData.arrow.x = 35\n },\n requires: ['arrow'],\n },\n ],\n}\n\nexport default defineComponent({\n name: 'ElCascader',\n\n components: {\n ElCascaderPanel,\n ElInput,\n ElPopper,\n ElScrollbar,\n ElTag,\n ElIcon,\n CircleClose,\n Check,\n ArrowDown,\n },\n\n directives: {\n Clickoutside,\n },\n\n props: {\n ...CommonProps,\n size: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n placeholder: {\n type: String,\n },\n disabled: Boolean,\n clearable: Boolean,\n filterable: Boolean,\n filterMethod: {\n type: Function as PropType<\n (node: CascaderNode, keyword: string) => boolean\n >,\n default: (node: CascaderNode, keyword: string) =>\n node.text.includes(keyword),\n },\n separator: {\n type: String,\n default: ' / ',\n },\n showAllLevels: {\n type: Boolean,\n default: true,\n },\n collapseTags: Boolean,\n debounce: {\n type: Number,\n default: 300,\n },\n beforeFilter: {\n type: Function as PropType<(value: string) => boolean | Promise<any>>,\n default: () => true,\n },\n popperClass: {\n type: String,\n default: '',\n },\n popperAppendToBody: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'focus',\n 'blur',\n 'visible-change',\n 'expand-change',\n 'remove-tag',\n ],\n\n setup(props, { emit }) {\n let inputInitialHeight = 0\n let pressDeleteCount = 0\n\n const { t } = useLocale()\n const elForm = inject(elFormKey, {} as ElFormContext)\n const elFormItem = inject(elFormItemKey, {} as ElFormItemContext)\n\n const popper: Ref<popperType | null> = ref(null)\n const input: Ref<inputType | null> = ref(null)\n const tagWrapper = ref(null)\n const panel: Ref<cascaderPanelType | null> = ref(null)\n const suggestionPanel: Ref<suggestionPanelType | null> = ref(null)\n const popperVisible = ref(false)\n const inputHover = ref(false)\n const filtering = ref(false)\n const inputValue = ref('')\n const searchInputValue = ref('')\n const presentTags: Ref<Tag[]> = ref([])\n const suggestions: Ref<CascaderNode[]> = ref([])\n const isOnComposition = ref(false)\n\n const isDisabled = computed(() => props.disabled || elForm.disabled)\n const inputPlaceholder = computed(\n () => props.placeholder || t('el.cascader.placeholder')\n )\n const realSize = useSize()\n const tagSize = computed(() =>\n ['small', 'mini'].includes(realSize.value) ? 'mini' : 'small'\n )\n const multiple = computed(() => !!props.props.multiple)\n const readonly = computed(() => !props.filterable || multiple.value)\n const searchKeyword = computed(() =>\n multiple.value ? searchInputValue.value : inputValue.value\n )\n const checkedNodes: ComputedRef<CascaderNode[]> = computed(\n () => panel.value?.checkedNodes || []\n )\n const clearBtnVisible = computed(() => {\n if (\n !props.clearable ||\n isDisabled.value ||\n filtering.value ||\n !inputHover.value\n )\n return false\n\n return !!checkedNodes.value.length\n })\n const presentText = computed(() => {\n const { showAllLevels, separator } = props\n const nodes = checkedNodes.value\n return nodes.length\n ? multiple.value\n ? ' '\n : nodes[0].calcText(showAllLevels, separator)\n : ''\n })\n\n const checkedValue = computed<CascaderValue>({\n get() {\n return props.modelValue\n },\n set(val) {\n emit(UPDATE_MODEL_EVENT, val)\n emit(CHANGE_EVENT, val)\n elFormItem.validate?.('change')\n },\n })\n\n const popperPaneRef = computed(() => {\n return popper.value?.popperRef\n })\n\n const togglePopperVisible = (visible?: boolean) => {\n if (isDisabled.value) return\n\n visible = visible ?? !popperVisible.value\n\n if (visible !== popperVisible.value) {\n popperVisible.value = visible\n input.value?.input?.setAttribute('aria-expanded', `${visible}`)\n\n if (visible) {\n updatePopperPosition()\n nextTick(panel.value?.scrollToExpandingNode)\n } else if (props.filterable) {\n const { value } = presentText\n inputValue.value = value\n searchInputValue.value = value\n }\n\n emit('visible-change', visible)\n }\n }\n\n const updatePopperPosition = () => {\n nextTick(popper.value?.update)\n }\n\n const hideSuggestionPanel = () => {\n filtering.value = false\n }\n\n const genTag = (node: CascaderNode): Tag => {\n const { showAllLevels, separator } = props\n return {\n node,\n key: node.uid,\n text: node.calcText(showAllLevels, separator),\n hitState: false,\n closable: !isDisabled.value && !node.isDisabled,\n }\n }\n\n const deleteTag = (tag: Tag) => {\n const node = tag.node as CascaderNode\n node.doCheck(false)\n panel.value?.calculateCheckedValue()\n emit('remove-tag', node.valueByOption)\n }\n\n const calculatePresentTags = () => {\n if (!multiple.value) return\n\n const nodes = checkedNodes.value\n const tags: Tag[] = []\n\n if (nodes.length) {\n const [first, ...rest] = nodes\n const restCount = rest.length\n\n tags.push(genTag(first))\n\n if (restCount) {\n if (props.collapseTags) {\n tags.push({\n key: -1,\n text: `+ ${restCount}`,\n closable: false,\n })\n } else {\n rest.forEach((node) => tags.push(genTag(node)))\n }\n }\n }\n\n presentTags.value = tags\n }\n\n const calculateSuggestions = () => {\n const { filterMethod, showAllLevels, separator } = props\n const res = panel.value\n ?.getFlattedNodes(!props.props.checkStrictly)\n ?.filter((node) => {\n if (node.isDisabled) return false\n node.calcText(showAllLevels, separator)\n return filterMethod(node, searchKeyword.value)\n })\n\n if (multiple.value) {\n presentTags.value.forEach((tag) => {\n tag.hitState = false\n })\n }\n\n filtering.value = true\n suggestions.value = res!\n updatePopperPosition()\n }\n\n const focusFirstNode = () => {\n let firstNode!: HTMLElement\n\n if (filtering.value && suggestionPanel.value) {\n firstNode = suggestionPanel.value.$el.querySelector(\n '.el-cascader__suggestion-item'\n )\n } else {\n firstNode = panel.value?.$el.querySelector(\n '.el-cascader-node[tabindex=\"-1\"]'\n )\n }\n\n if (firstNode) {\n firstNode.focus()\n !filtering.value && firstNode.click()\n }\n }\n\n const updateStyle = () => {\n const inputInner = input.value?.input\n const tagWrapperEl = tagWrapper.value\n const suggestionPanelEl = suggestionPanel.value?.$el\n\n if (isServer || !inputInner) return\n\n if (suggestionPanelEl) {\n const suggestionList = suggestionPanelEl.querySelector(\n '.el-cascader__suggestion-list'\n )\n suggestionList.style.minWidth = `${inputInner.offsetWidth}px`\n }\n\n if (tagWrapperEl) {\n const { offsetHeight } = tagWrapperEl\n const height =\n presentTags.value.length > 0\n ? `${Math.max(offsetHeight + 6, inputInitialHeight)}px`\n : `${inputInitialHeight}px`\n inputInner.style.height = height\n updatePopperPosition()\n }\n }\n\n const getCheckedNodes = (leafOnly: boolean) => {\n return panel.value?.getCheckedNodes(leafOnly)\n }\n\n const handleExpandChange = (value: CascaderValue) => {\n updatePopperPosition()\n emit('expand-change', value)\n }\n\n const handleComposition = (event: CompositionEvent) => {\n const text = (event.target as HTMLInputElement)?.value\n if (event.type === 'compositionend') {\n isOnComposition.value = false\n nextTick(() => handleInput(text))\n } else {\n const lastCharacter = text[text.length - 1] || ''\n isOnComposition.value = !isKorean(lastCharacter)\n }\n }\n\n const handleKeyDown = (e: KeyboardEvent) => {\n if (isOnComposition.value) return\n\n switch (e.code) {\n case EVENT_CODE.enter:\n togglePopperVisible()\n break\n case EVENT_CODE.down:\n togglePopperVisible(true)\n nextTick(focusFirstNode)\n e.preventDefault()\n break\n case EVENT_CODE.esc:\n case EVENT_CODE.tab:\n togglePopperVisible(false)\n break\n }\n }\n\n const handleClear = () => {\n panel.value?.clearCheckedNodes()\n togglePopperVisible(false)\n }\n\n const handleSuggestionClick = (node: CascaderNode) => {\n const { checked } = node\n\n if (multiple.value) {\n panel.value?.handleCheckChange(node, !checked, false)\n } else {\n !checked && panel.value?.handleCheckChange(node, true, false)\n togglePopperVisible(false)\n }\n }\n\n const handleSuggestionKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n const { code } = e\n\n switch (code) {\n case EVENT_CODE.up:\n case EVENT_CODE.down: {\n const distance = code === EVENT_CODE.up ? -1 : 1\n focusNode(\n getSibling(\n target,\n distance,\n '.el-cascader__suggestion-item[tabindex=\"-1\"]'\n )\n )\n break\n }\n case EVENT_CODE.enter:\n target.click()\n break\n case EVENT_CODE.esc:\n case EVENT_CODE.tab:\n togglePopperVisible(false)\n break\n }\n }\n\n const handleDelete = () => {\n const tags = presentTags.value\n const lastTag = tags[tags.length - 1]\n pressDeleteCount = searchInputValue.value ? 0 : pressDeleteCount + 1\n\n if (!lastTag || !pressDeleteCount) return\n\n if (lastTag.hitState) {\n deleteTag(lastTag)\n } else {\n lastTag.hitState = true\n }\n }\n\n const handleFilter = debounce(() => {\n const { value } = searchKeyword\n\n if (!value) return\n\n const passed = props.beforeFilter(value)\n\n if (isPromise(passed)) {\n passed.then(calculateSuggestions).catch(() => {\n /* prevent log error */\n })\n } else if (passed !== false) {\n calculateSuggestions()\n } else {\n hideSuggestionPanel()\n }\n }, props.debounce)\n\n const handleInput = (val: string, e?: KeyboardEvent) => {\n !popperVisible.value && togglePopperVisible(true)\n\n if (e?.isComposing) return\n\n val ? handleFilter() : hideSuggestionPanel()\n }\n\n watch(filtering, updatePopperPosition)\n\n watch([checkedNodes, isDisabled], calculatePresentTags)\n\n watch(presentTags, () => {\n nextTick(() => updateStyle())\n })\n\n watch(presentText, (val) => (inputValue.value = val), { immediate: true })\n\n onMounted(() => {\n const inputEl = input.value?.$el\n inputInitialHeight =\n inputEl?.offsetHeight ||\n INPUT_HEIGHT_MAP[realSize.value] ||\n DEFAULT_INPUT_HEIGHT\n addResizeListener(inputEl, updateStyle)\n })\n\n onBeforeUnmount(() => {\n removeResizeListener(input.value?.$el, updateStyle)\n })\n\n return {\n Effect,\n popperOptions,\n popper,\n popperPaneRef,\n input,\n tagWrapper,\n panel,\n suggestionPanel,\n popperVisible,\n inputHover,\n inputPlaceholder,\n filtering,\n presentText,\n checkedValue,\n inputValue,\n searchInputValue,\n presentTags,\n suggestions,\n isDisabled,\n isOnComposition,\n realSize,\n tagSize,\n multiple,\n readonly,\n clearBtnVisible,\n t,\n togglePopperVisible,\n hideSuggestionPanel,\n deleteTag,\n focusFirstNode,\n getCheckedNodes,\n handleExpandChange,\n handleKeyDown,\n handleComposition,\n handleClear,\n handleSuggestionClick,\n handleSuggestionKeyDown,\n handleDelete,\n handleInput,\n }\n },\n})\n</script>\n"],"names":["_createBlock","_createElementVNode","_createVNode","_createElementBlock","_renderSlot"],"mappings":";;;;;;;;EAsE6B,KAAI;AAAA,EAAa,OAAM;AAAA;;;qBAmEtC,OAAM;;;;;;;;;;;;0BAxIlBA;IACE,KAAI;AAAA,IACI,SAAS;gEAAA;IACjB,eAAA;AAAA,IACC,kBAAgB;IACjB,WAAU;AAAA,IACT,yCAAuC;IACvC,kBAAgB;IAChB,uBAAqB;IACrB,2BAAyB;AAAA,IAC1B,YAAW;AAAA,IACV,oBAAkB;AAAA,IAClB,QAAQ,YAAO;AAAA,IAChB,MAAA;AAAA,IACC,cAAa;;IAEH,qBACT;yBAAAC;QAEG;;;;;QAKA,2CAAa,yBAAoB,gBAAW;QAC5C,oDAAS;QACT,sDAAY;QACZ,sDAAY;;QAEbC;UACE,KAAI;AAAA,sBACU;uEAAA;0BAAd;UACC,aAAa;UACb,UAAU;UACV,UAAU;UACV,kBAAgB;AAAA,UAChB,MAAM;UACN,wCAAqB;UACrB,oBAAkB;UAClB,qBAAmB;UACnB,kBAAgB;UAChB,oCAAQ,MAAM,oBAAe;AAAA,UAC7B,mCAAO,MAAM,mBAAc;AAAA,UAC3B,SAAO;;UAEG,oBACT;YACQ,yCADRF;cAEE,KAAI;AAAA,cACJ,OAAM;AAAA,cACL,2BAAY;;mCAEb;gBAAAE;;;oDAEFF;cAEE,KAAI;AAAA,cACH;;;;;cAKA,iEAAY;;mCAEb;gBAAAE;;;;;;;QAKK,kCAAXC,8BAAA;gCACEA,0DACgB,mBAAP;oCADTH;cAEG,KAAK,IAAI;AAAA,cACV,MAAK;AAAA,cACJ,MAAM;cACN,KAAK,IAAI;AAAA,cACT,UAAU,IAAI;AAAA,cACf,uBAAA;AAAA,cACC,qBAAO,eAAU;AAAA;mCAElB;gBAAAC,yDAAS,IAAI;;;;;UAGP,oBAAe,uDADvBE;;yEAEgB;YACd,MAAK;AAAA,YACL,OAAM;AAAA,YACL,aAAa,wBAAmB;YAChC,oCAAQ,MAAM,iBAAY,uBAAkB;AAAA,YAC5C,iEAAY;YACZ,+DAAgB;YAChB,2DAAkB;YAClB,4DAAmB;YACnB,2DAAgB;;;;cATH;;sBAAd;AAAA;AAAA;;;wCAlEkC,iCAAvB;;;IAiFR,qBACT;yBAAAD;QAEE,KAAI;AAAA,oBACK;uEAAA;QACR,SAAS;QACT,OAAO;QACP,QAAQ;AAAA,QACR,gBAAc,YAAO;AAAA,QACrB,gBAAe;QACf,iDAAO;;qBARC;;MAWH,uDADRF;;QAGE,KAAI;AAAA,QACJ,KAAI;AAAA,QACJ,OAAM;AAAA,QACN,cAAW;AAAA,QACV,WAAS;;6BAEV;UAAgB,iBAAY,+BAC1BG,gEACiB,mBAAR;oCADTA;cAEG,KAAK,KAAK;AAAA,cACV;;;;cAIA,UAAU;AAAA,cACV,qBAAO,2BAAsB;AAAA;cAE9BF,yDAAS,KAAK;cACC,KAAK,4BAApBD;qCAA6B;kBAAAE,gBAAS;AAAA;AAAA;;;sBAG1CE,iDAAA;YACEH,6BAAA,gCACK;;;;;oBAxBC;;;;;;;;;"}
1
+ {"version":3,"file":"index.vue_vue_type_template_id_0429c2db_lang.js","sources":["../../../../../../packages/components/cascader/src/index.vue?vue&type=template&id=0429c2db&lang.js"],"sourcesContent":["<template>\n <el-popper\n ref=\"popper\"\n v-model:visible=\"popperVisible\"\n manual-mode\n :append-to-body=\"popperAppendToBody\"\n placement=\"bottom-start\"\n :popper-class=\"`el-cascader__dropdown ${popperClass}`\"\n :popper-options=\"popperOptions\"\n :fallback-placements=\"['bottom-start', 'top-start', 'right', 'left']\"\n :stop-popper-mouse-event=\"false\"\n transition=\"el-zoom-in-top\"\n :gpu-acceleration=\"false\"\n :effect=\"Effect.LIGHT\"\n pure\n @after-leave=\"hideSuggestionPanel\"\n >\n <template #trigger>\n <div\n v-clickoutside:[popperPaneRef]=\"() => togglePopperVisible(false)\"\n :class=\"[\n 'el-cascader',\n realSize && `el-cascader--${realSize}`,\n { 'is-disabled': isDisabled },\n ]\"\n @click=\"() => togglePopperVisible(readonly ? undefined : true)\"\n @keydown=\"handleKeyDown\"\n @mouseenter=\"inputHover = true\"\n @mouseleave=\"inputHover = false\"\n >\n <el-input\n ref=\"input\"\n v-model.trim=\"inputValue\"\n :placeholder=\"inputPlaceholder\"\n :readonly=\"readonly\"\n :disabled=\"isDisabled\"\n :validate-event=\"false\"\n :size=\"realSize\"\n :class=\"{ 'is-focus': popperVisible }\"\n @compositionstart=\"handleComposition\"\n @compositionupdate=\"handleComposition\"\n @compositionend=\"handleComposition\"\n @focus=\"(e) => $emit('focus', e)\"\n @blur=\"(e) => $emit('blur', e)\"\n @input=\"handleInput\"\n >\n <template #suffix>\n <el-icon\n v-if=\"clearBtnVisible\"\n key=\"clear\"\n class=\"el-input__icon icon-circle-close\"\n @click.stop=\"handleClear\"\n >\n <circle-close />\n </el-icon>\n <el-icon\n v-else\n key=\"arrow-down\"\n :class=\"[\n 'el-input__icon',\n 'icon-arrow-down',\n popperVisible && 'is-reverse',\n ]\"\n @click.stop=\"togglePopperVisible()\"\n >\n <arrow-down />\n </el-icon>\n </template>\n </el-input>\n\n <div v-if=\"multiple\" ref=\"tagWrapper\" class=\"el-cascader__tags\">\n <el-tag\n v-for=\"tag in presentTags\"\n :key=\"tag.key\"\n type=\"info\"\n :size=\"tagSize\"\n :hit=\"tag.hitState\"\n :closable=\"tag.closable\"\n disable-transitions\n @close=\"deleteTag(tag)\"\n >\n <span>{{ tag.text }}</span>\n </el-tag>\n <input\n v-if=\"filterable && !isDisabled\"\n v-model.trim=\"searchInputValue\"\n type=\"text\"\n class=\"el-cascader__search-input\"\n :placeholder=\"presentText ? '' : inputPlaceholder\"\n @input=\"(e) => handleInput(searchInputValue, e)\"\n @click.stop=\"togglePopperVisible(true)\"\n @keydown.delete=\"handleDelete\"\n @compositionstart=\"handleComposition\"\n @compositionupdate=\"handleComposition\"\n @compositionend=\"handleComposition\"\n />\n </div>\n </div>\n </template>\n\n <template #default>\n <el-cascader-panel\n v-show=\"!filtering\"\n ref=\"panel\"\n v-model=\"checkedValue\"\n :options=\"options\"\n :props=\"props\"\n :border=\"false\"\n :render-label=\"$slots.default\"\n @expand-change=\"handleExpandChange\"\n @close=\"togglePopperVisible(false)\"\n />\n <el-scrollbar\n v-if=\"filterable\"\n v-show=\"filtering\"\n ref=\"suggestionPanel\"\n tag=\"ul\"\n class=\"el-cascader__suggestion-panel\"\n view-class=\"el-cascader__suggestion-list\"\n @keydown=\"handleSuggestionKeyDown\"\n >\n <template v-if=\"suggestions.length\">\n <li\n v-for=\"item in suggestions\"\n :key=\"item.uid\"\n :class=\"[\n 'el-cascader__suggestion-item',\n item.checked && 'is-checked',\n ]\"\n :tabindex=\"-1\"\n @click=\"handleSuggestionClick(item)\"\n >\n <span>{{ item.text }}</span>\n <el-icon v-if=\"item.checked\"><check /></el-icon>\n </li>\n </template>\n <slot v-else name=\"empty\">\n <li class=\"el-cascader__empty-text\">\n {{ t('el.cascader.noMatch') }}\n </li>\n </slot>\n </el-scrollbar>\n </template>\n </el-popper>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n inject,\n nextTick,\n onMounted,\n onBeforeUnmount,\n ref,\n watch,\n} from 'vue'\nimport { isPromise } from '@vue/shared'\nimport debounce from 'lodash/debounce'\n\nimport { isClient } from '@vueuse/core'\nimport ElCascaderPanel, {\n CommonProps,\n} from '@element-plus/components/cascader-panel'\nimport ElInput from '@element-plus/components/input'\nimport ElPopper, { Effect } from '@element-plus/components/popper'\nimport ElScrollbar from '@element-plus/components/scrollbar'\nimport ElTag from '@element-plus/components/tag'\nimport ElIcon from '@element-plus/components/icon'\n\nimport { elFormKey, elFormItemKey } from '@element-plus/tokens'\nimport { ClickOutside as Clickoutside } from '@element-plus/directives'\nimport { useLocale, useSize } from '@element-plus/hooks'\n\nimport { EVENT_CODE, focusNode, getSibling } from '@element-plus/utils/aria'\nimport { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '@element-plus/utils/constants'\nimport {\n addResizeListener,\n removeResizeListener,\n} from '@element-plus/utils/resize-event'\nimport { isValidComponentSize } from '@element-plus/utils/validators'\nimport { isKorean } from '@element-plus/utils/isDef'\nimport { CircleClose, Check, ArrowDown } from '@element-plus/icons-vue'\n\nimport type { Options } from '@element-plus/components/popper'\nimport type { ComputedRef, PropType, Ref } from 'vue'\nimport type { ElFormContext, ElFormItemContext } from '@element-plus/tokens'\nimport type {\n CascaderValue,\n CascaderNode,\n Tag,\n} from '@element-plus/components/cascader-panel'\nimport type { ComponentSize } from '@element-plus/utils/types'\n\ntype cascaderPanelType = InstanceType<typeof ElCascaderPanel>\ntype popperType = InstanceType<typeof ElPopper>\ntype inputType = InstanceType<typeof ElInput>\ntype suggestionPanelType = InstanceType<typeof ElScrollbar>\n\nconst DEFAULT_INPUT_HEIGHT = 40\n\nconst INPUT_HEIGHT_MAP = {\n large: 36,\n default: 32,\n small: 28,\n}\n\nconst popperOptions: Partial<Options> = {\n modifiers: [\n {\n name: 'arrowPosition',\n enabled: true,\n phase: 'main',\n fn: ({ state }) => {\n const { modifiersData, placement } = state as any\n if (['right', 'left'].includes(placement)) return\n modifiersData.arrow.x = 35\n },\n requires: ['arrow'],\n },\n ],\n}\n\nexport default defineComponent({\n name: 'ElCascader',\n\n components: {\n ElCascaderPanel,\n ElInput,\n ElPopper,\n ElScrollbar,\n ElTag,\n ElIcon,\n CircleClose,\n Check,\n ArrowDown,\n },\n\n directives: {\n Clickoutside,\n },\n\n props: {\n ...CommonProps,\n size: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n placeholder: {\n type: String,\n },\n disabled: Boolean,\n clearable: Boolean,\n filterable: Boolean,\n filterMethod: {\n type: Function as PropType<\n (node: CascaderNode, keyword: string) => boolean\n >,\n default: (node: CascaderNode, keyword: string) =>\n node.text.includes(keyword),\n },\n separator: {\n type: String,\n default: ' / ',\n },\n showAllLevels: {\n type: Boolean,\n default: true,\n },\n collapseTags: Boolean,\n debounce: {\n type: Number,\n default: 300,\n },\n beforeFilter: {\n type: Function as PropType<(value: string) => boolean | Promise<any>>,\n default: () => true,\n },\n popperClass: {\n type: String,\n default: '',\n },\n popperAppendToBody: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: [\n UPDATE_MODEL_EVENT,\n CHANGE_EVENT,\n 'focus',\n 'blur',\n 'visible-change',\n 'expand-change',\n 'remove-tag',\n ],\n\n setup(props, { emit }) {\n let inputInitialHeight = 0\n let pressDeleteCount = 0\n\n const { t } = useLocale()\n const elForm = inject(elFormKey, {} as ElFormContext)\n const elFormItem = inject(elFormItemKey, {} as ElFormItemContext)\n\n const popper: Ref<popperType | null> = ref(null)\n const input: Ref<inputType | null> = ref(null)\n const tagWrapper = ref(null)\n const panel: Ref<cascaderPanelType | null> = ref(null)\n const suggestionPanel: Ref<suggestionPanelType | null> = ref(null)\n const popperVisible = ref(false)\n const inputHover = ref(false)\n const filtering = ref(false)\n const inputValue = ref('')\n const searchInputValue = ref('')\n const presentTags: Ref<Tag[]> = ref([])\n const suggestions: Ref<CascaderNode[]> = ref([])\n const isOnComposition = ref(false)\n\n const isDisabled = computed(() => props.disabled || elForm.disabled)\n const inputPlaceholder = computed(\n () => props.placeholder || t('el.cascader.placeholder')\n )\n const realSize = useSize()\n const tagSize = computed(() =>\n ['small'].includes(realSize.value) ? 'small' : 'default'\n )\n const multiple = computed(() => !!props.props.multiple)\n const readonly = computed(() => !props.filterable || multiple.value)\n const searchKeyword = computed(() =>\n multiple.value ? searchInputValue.value : inputValue.value\n )\n const checkedNodes: ComputedRef<CascaderNode[]> = computed(\n () => panel.value?.checkedNodes || []\n )\n const clearBtnVisible = computed(() => {\n if (\n !props.clearable ||\n isDisabled.value ||\n filtering.value ||\n !inputHover.value\n )\n return false\n\n return !!checkedNodes.value.length\n })\n const presentText = computed(() => {\n const { showAllLevels, separator } = props\n const nodes = checkedNodes.value\n return nodes.length\n ? multiple.value\n ? ' '\n : nodes[0].calcText(showAllLevels, separator)\n : ''\n })\n\n const checkedValue = computed<CascaderValue>({\n get() {\n return props.modelValue\n },\n set(val) {\n emit(UPDATE_MODEL_EVENT, val)\n emit(CHANGE_EVENT, val)\n elFormItem.validate?.('change')\n },\n })\n\n const popperPaneRef = computed(() => {\n return popper.value?.popperRef\n })\n\n const togglePopperVisible = (visible?: boolean) => {\n if (isDisabled.value) return\n\n visible = visible ?? !popperVisible.value\n\n if (visible !== popperVisible.value) {\n popperVisible.value = visible\n input.value?.input?.setAttribute('aria-expanded', `${visible}`)\n\n if (visible) {\n updatePopperPosition()\n nextTick(panel.value?.scrollToExpandingNode)\n } else if (props.filterable) {\n const { value } = presentText\n inputValue.value = value\n searchInputValue.value = value\n }\n\n emit('visible-change', visible)\n }\n }\n\n const updatePopperPosition = () => {\n nextTick(popper.value?.update)\n }\n\n const hideSuggestionPanel = () => {\n filtering.value = false\n }\n\n const genTag = (node: CascaderNode): Tag => {\n const { showAllLevels, separator } = props\n return {\n node,\n key: node.uid,\n text: node.calcText(showAllLevels, separator),\n hitState: false,\n closable: !isDisabled.value && !node.isDisabled,\n }\n }\n\n const deleteTag = (tag: Tag) => {\n const node = tag.node as CascaderNode\n node.doCheck(false)\n panel.value?.calculateCheckedValue()\n emit('remove-tag', node.valueByOption)\n }\n\n const calculatePresentTags = () => {\n if (!multiple.value) return\n\n const nodes = checkedNodes.value\n const tags: Tag[] = []\n\n if (nodes.length) {\n const [first, ...rest] = nodes\n const restCount = rest.length\n\n tags.push(genTag(first))\n\n if (restCount) {\n if (props.collapseTags) {\n tags.push({\n key: -1,\n text: `+ ${restCount}`,\n closable: false,\n })\n } else {\n rest.forEach((node) => tags.push(genTag(node)))\n }\n }\n }\n\n presentTags.value = tags\n }\n\n const calculateSuggestions = () => {\n const { filterMethod, showAllLevels, separator } = props\n const res = panel.value\n ?.getFlattedNodes(!props.props.checkStrictly)\n ?.filter((node) => {\n if (node.isDisabled) return false\n node.calcText(showAllLevels, separator)\n return filterMethod(node, searchKeyword.value)\n })\n\n if (multiple.value) {\n presentTags.value.forEach((tag) => {\n tag.hitState = false\n })\n }\n\n filtering.value = true\n suggestions.value = res!\n updatePopperPosition()\n }\n\n const focusFirstNode = () => {\n let firstNode!: HTMLElement\n\n if (filtering.value && suggestionPanel.value) {\n firstNode = suggestionPanel.value.$el.querySelector(\n '.el-cascader__suggestion-item'\n )\n } else {\n firstNode = panel.value?.$el.querySelector(\n '.el-cascader-node[tabindex=\"-1\"]'\n )\n }\n\n if (firstNode) {\n firstNode.focus()\n !filtering.value && firstNode.click()\n }\n }\n\n const updateStyle = () => {\n const inputInner = input.value?.input\n const tagWrapperEl = tagWrapper.value\n const suggestionPanelEl = suggestionPanel.value?.$el\n\n if (!isClient || !inputInner) return\n\n if (suggestionPanelEl) {\n const suggestionList = suggestionPanelEl.querySelector(\n '.el-cascader__suggestion-list'\n )\n suggestionList.style.minWidth = `${inputInner.offsetWidth}px`\n }\n\n if (tagWrapperEl) {\n const { offsetHeight } = tagWrapperEl\n const height =\n presentTags.value.length > 0\n ? `${Math.max(offsetHeight + 6, inputInitialHeight)}px`\n : `${inputInitialHeight}px`\n inputInner.style.height = height\n updatePopperPosition()\n }\n }\n\n const getCheckedNodes = (leafOnly: boolean) => {\n return panel.value?.getCheckedNodes(leafOnly)\n }\n\n const handleExpandChange = (value: CascaderValue) => {\n updatePopperPosition()\n emit('expand-change', value)\n }\n\n const handleComposition = (event: CompositionEvent) => {\n const text = (event.target as HTMLInputElement)?.value\n if (event.type === 'compositionend') {\n isOnComposition.value = false\n nextTick(() => handleInput(text))\n } else {\n const lastCharacter = text[text.length - 1] || ''\n isOnComposition.value = !isKorean(lastCharacter)\n }\n }\n\n const handleKeyDown = (e: KeyboardEvent) => {\n if (isOnComposition.value) return\n\n switch (e.code) {\n case EVENT_CODE.enter:\n togglePopperVisible()\n break\n case EVENT_CODE.down:\n togglePopperVisible(true)\n nextTick(focusFirstNode)\n e.preventDefault()\n break\n case EVENT_CODE.esc:\n case EVENT_CODE.tab:\n togglePopperVisible(false)\n break\n }\n }\n\n const handleClear = () => {\n panel.value?.clearCheckedNodes()\n togglePopperVisible(false)\n }\n\n const handleSuggestionClick = (node: CascaderNode) => {\n const { checked } = node\n\n if (multiple.value) {\n panel.value?.handleCheckChange(node, !checked, false)\n } else {\n !checked && panel.value?.handleCheckChange(node, true, false)\n togglePopperVisible(false)\n }\n }\n\n const handleSuggestionKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n const { code } = e\n\n switch (code) {\n case EVENT_CODE.up:\n case EVENT_CODE.down: {\n const distance = code === EVENT_CODE.up ? -1 : 1\n focusNode(\n getSibling(\n target,\n distance,\n '.el-cascader__suggestion-item[tabindex=\"-1\"]'\n )\n )\n break\n }\n case EVENT_CODE.enter:\n target.click()\n break\n case EVENT_CODE.esc:\n case EVENT_CODE.tab:\n togglePopperVisible(false)\n break\n }\n }\n\n const handleDelete = () => {\n const tags = presentTags.value\n const lastTag = tags[tags.length - 1]\n pressDeleteCount = searchInputValue.value ? 0 : pressDeleteCount + 1\n\n if (!lastTag || !pressDeleteCount) return\n\n if (lastTag.hitState) {\n deleteTag(lastTag)\n } else {\n lastTag.hitState = true\n }\n }\n\n const handleFilter = debounce(() => {\n const { value } = searchKeyword\n\n if (!value) return\n\n const passed = props.beforeFilter(value)\n\n if (isPromise(passed)) {\n passed.then(calculateSuggestions).catch(() => {\n /* prevent log error */\n })\n } else if (passed !== false) {\n calculateSuggestions()\n } else {\n hideSuggestionPanel()\n }\n }, props.debounce)\n\n const handleInput = (val: string, e?: KeyboardEvent) => {\n !popperVisible.value && togglePopperVisible(true)\n\n if (e?.isComposing) return\n\n val ? handleFilter() : hideSuggestionPanel()\n }\n\n watch(filtering, updatePopperPosition)\n\n watch([checkedNodes, isDisabled], calculatePresentTags)\n\n watch(presentTags, () => {\n nextTick(() => updateStyle())\n })\n\n watch(presentText, (val) => (inputValue.value = val), { immediate: true })\n\n onMounted(() => {\n const inputEl = input.value?.$el\n inputInitialHeight =\n inputEl?.offsetHeight ||\n INPUT_HEIGHT_MAP[realSize.value] ||\n DEFAULT_INPUT_HEIGHT\n addResizeListener(inputEl, updateStyle)\n })\n\n onBeforeUnmount(() => {\n removeResizeListener(input.value?.$el, updateStyle)\n })\n\n return {\n Effect,\n popperOptions,\n popper,\n popperPaneRef,\n input,\n tagWrapper,\n panel,\n suggestionPanel,\n popperVisible,\n inputHover,\n inputPlaceholder,\n filtering,\n presentText,\n checkedValue,\n inputValue,\n searchInputValue,\n presentTags,\n suggestions,\n isDisabled,\n isOnComposition,\n realSize,\n tagSize,\n multiple,\n readonly,\n clearBtnVisible,\n t,\n togglePopperVisible,\n hideSuggestionPanel,\n deleteTag,\n focusFirstNode,\n getCheckedNodes,\n handleExpandChange,\n handleKeyDown,\n handleComposition,\n handleClear,\n handleSuggestionClick,\n handleSuggestionKeyDown,\n handleDelete,\n handleInput,\n }\n },\n})\n</script>\n"],"names":["_createVNode","_withCtx","_renderSlot"],"mappings":";;;;;;;;;EAsE6B,KAAI;EAAa;;;;8CAmED;;;;;;;;;;;;;;wBAxI3C;IACE;IACQ;;IACR;IACC,gBAAc,EAAE;IACjB;IACC;IACA;IACA;IACA,yBAAuB;IACxB;IACC,kBAAgB;;IAEjB;;;;;;;;;;QAWK,2CAAa;;QAEbA,eAAU;;;;UAIT;;;;UAEC;UACA,UAAU;UACV,4BAAoB;UACpB,kBAAgB;UAChB,mBAAc;UACd;UACA,kBAAgB,wBAAmB;UACnC;UACA;;UAEA,MAAI;iBACC;;;;;qBAKC,EAACC;;;;;;;;;;;uBASE;;;;;kBAKL;;;;;;;;;;;;;;qBAUC,EAAE,OAAO;;;sCAGK;;kBAElB;;;;;;;;;mCAMqB;;;sGACS;;;iCAGhB;;;;oBAIb;oBACA;;;;;;;;;;;;;;;;;sBAQP;;aAEM;;;;QAGH,KAAK;QACL;QACA;QACA;QACA;;;;;;;;;;;;;;;;;kCAca;;;;;sBAKTC,eAAY;+EACqB;;;;;;iCAGL,aAAS;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../packages/components/cascader-panel/index.ts"],"sourcesContent":["import CascaderPanel from './src/index.vue'\nimport type { App } from 'vue'\nimport type { SFCWithInstall } from '@element-plus/utils/types'\n\nCascaderPanel.install = (app: App): void => {\n app.component(CascaderPanel.name, CascaderPanel)\n}\n\nconst _CascaderPanel = CascaderPanel as SFCWithInstall<typeof CascaderPanel>\n\nexport default _CascaderPanel\nexport const ElCascaderPanel = _CascaderPanel\nexport * from './src/types'\nexport * from './src/config'\n"],"names":["CascaderPanel"],"mappings":";;;;;;;;;AAIAA,0CAAc,UAAU,CAAC,QAAmB;AAC1C,MAAI,UAAUA,0CAAc,MAAMA;AAAA;MAG9B,iBAAiBA;MAGV,kBAAkB;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../packages/components/cascader-panel/index.ts"],"sourcesContent":["import CascaderPanel from './src/index.vue'\nimport type { App } from 'vue'\nimport type { SFCWithInstall } from '@element-plus/utils/types'\n\nCascaderPanel.install = (app: App): void => {\n app.component(CascaderPanel.name, CascaderPanel)\n}\n\nconst _CascaderPanel = CascaderPanel as SFCWithInstall<typeof CascaderPanel>\n\nexport default _CascaderPanel\nexport const ElCascaderPanel = _CascaderPanel\nexport * from './src/types'\nexport * from './src/config'\n"],"names":["CascaderPanel"],"mappings":";;;;;;;;;AACAA,yCAAa,CAAC,OAAO,GAAG,CAAC,GAAG,KAAK;AACjC,EAAE,GAAG,CAAC,SAAS,CAACA,yCAAa,CAAC,IAAI,EAAEA,yCAAa,CAAC,CAAC;AACnD,CAAC,CAAC;AACG,MAAC,cAAc,GAAGA,0CAAc;AAEzB,MAAC,eAAe,GAAG;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sources":["../../../../../../packages/components/cascader-panel/src/config.ts"],"sourcesContent":["import { computed } from 'vue'\nimport { NOOP } from '@vue/shared'\nimport { ExpandTrigger } from './node'\n\nimport type { PropType } from 'vue'\nimport type {\n CascaderValue,\n CascaderOption,\n CascaderConfig,\n CascaderProps,\n} from './node'\n\nexport const CommonProps = {\n modelValue: [Number, String, Array] as PropType<CascaderValue>,\n options: {\n type: Array as PropType<CascaderOption[]>,\n default: () => [] as CascaderOption[],\n },\n props: {\n type: Object as PropType<CascaderProps>,\n default: () => ({} as CascaderProps),\n },\n}\n\nexport const DefaultProps: CascaderConfig = {\n expandTrigger: ExpandTrigger.CLICK,\n multiple: false,\n checkStrictly: false, // whether all nodes can be selected\n emitPath: true, // wether to emit an array of all levels value in which node is located\n lazy: false,\n lazyLoad: NOOP,\n value: 'value',\n label: 'label',\n children: 'children',\n leaf: 'leaf',\n disabled: 'disabled',\n hoverThreshold: 500,\n}\n\nexport const useCascaderConfig = (props: { props: CascaderProps }) => {\n return computed(() => ({\n ...DefaultProps,\n ...props.props,\n }))\n}\n"],"names":["ExpandTrigger","NOOP","computed"],"mappings":";;;;;;;;MAYa,cAAc;AAAA,EACzB,YAAY,CAAC,QAAQ,QAAQ;AAAA,EAC7B,SAAS;AAAA,IACP,MAAM;AAAA,IACN,SAAS,MAAM;AAAA;AAAA,EAEjB,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAO;AAAA;MAIP,eAA+B;AAAA,EAC1C,eAAeA,mBAAc;AAAA,EAC7B,UAAU;AAAA,EACV,eAAe;AAAA,EACf,UAAU;AAAA,EACV,MAAM;AAAA,EACN,UAAUC;AAAA,EACV,OAAO;AAAA,EACP,OAAO;AAAA,EACP,UAAU;AAAA,EACV,MAAM;AAAA,EACN,UAAU;AAAA,EACV,gBAAgB;AAAA;MAGL,oBAAoB,CAAC,UAAoC;AACpE,SAAOC,aAAS;AAAO,OAClB;AAAA,OACA,MAAM;AAAA;AAAA;;;;;;"}
1
+ {"version":3,"file":"config.js","sources":["../../../../../../packages/components/cascader-panel/src/config.ts"],"sourcesContent":["import { computed } from 'vue'\nimport { NOOP } from '@vue/shared'\nimport { ExpandTrigger } from './node'\n\nimport type { PropType } from 'vue'\nimport type {\n CascaderValue,\n CascaderOption,\n CascaderConfig,\n CascaderProps,\n} from './node'\n\nexport const CommonProps = {\n modelValue: [Number, String, Array] as PropType<CascaderValue>,\n options: {\n type: Array as PropType<CascaderOption[]>,\n default: () => [] as CascaderOption[],\n },\n props: {\n type: Object as PropType<CascaderProps>,\n default: () => ({} as CascaderProps),\n },\n}\n\nexport const DefaultProps: CascaderConfig = {\n expandTrigger: ExpandTrigger.CLICK,\n multiple: false,\n checkStrictly: false, // whether all nodes can be selected\n emitPath: true, // wether to emit an array of all levels value in which node is located\n lazy: false,\n lazyLoad: NOOP,\n value: 'value',\n label: 'label',\n children: 'children',\n leaf: 'leaf',\n disabled: 'disabled',\n hoverThreshold: 500,\n}\n\nexport const useCascaderConfig = (props: { props: CascaderProps }) => {\n return computed(() => ({\n ...DefaultProps,\n ...props.props,\n }))\n}\n"],"names":["ExpandTrigger","NOOP","computed"],"mappings":";;;;;;;;AAGY,MAAC,WAAW,GAAG;AAC3B,EAAE,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC;AACrC,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,KAAK;AACf,IAAI,OAAO,EAAE,MAAM,EAAE;AACrB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;AACvB,GAAG;AACH,EAAE;AACU,MAAC,YAAY,GAAG;AAC5B,EAAE,aAAa,EAAEA,kBAAa,CAAC,KAAK;AACpC,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,aAAa,EAAE,KAAK;AACtB,EAAE,QAAQ,EAAE,IAAI;AAChB,EAAE,IAAI,EAAE,KAAK;AACb,EAAE,QAAQ,EAAEC,WAAI;AAChB,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,KAAK,EAAE,OAAO;AAChB,EAAE,QAAQ,EAAE,UAAU;AACtB,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,QAAQ,EAAE,UAAU;AACtB,EAAE,cAAc,EAAE,GAAG;AACrB,EAAE;AACU,MAAC,iBAAiB,GAAG,CAAC,KAAK,KAAK;AAC5C,EAAE,OAAOC,YAAQ,CAAC,OAAO;AACzB,IAAI,GAAG,YAAY;AACnB,IAAI,GAAG,KAAK,CAAC,KAAK;AAClB,GAAG,CAAC,CAAC,CAAC;AACN;;;;;;"}
@@ -4,9 +4,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var vue = require('vue');
6
6
  var isEqual = require('lodash/isEqual');
7
+ var core = require('@vueuse/core');
7
8
  var aria = require('../../../utils/aria.js');
8
9
  var constants = require('../../../utils/constants.js');
9
- var isServer = require('../../../utils/isServer.js');
10
10
  var scrollIntoView = require('../../../utils/scroll-into-view.js');
11
11
  var util = require('../../../utils/util.js');
12
12
  require('./menu.js');
@@ -177,7 +177,7 @@ var script = vue.defineComponent({
177
177
  vue.nextTick(scrollToExpandingNode);
178
178
  };
179
179
  const scrollToExpandingNode = () => {
180
- if (isServer["default"])
180
+ if (!core.isClient)
181
181
  return;
182
182
  menuList.value.forEach((menu) => {
183
183
  const menuElement = menu == null ? void 0 : menu.$el;
@@ -1 +1 @@
1
- {"version":3,"file":"index.vue_vue_type_script_lang.js","sources":["../../../../../../packages/components/cascader-panel/src/index.vue"],"sourcesContent":["<template>\n <div\n :class=\"['el-cascader-panel', border && 'is-bordered']\"\n @keydown=\"handleKeyDown\"\n >\n <el-cascader-menu\n v-for=\"(menu, index) in menus\"\n :key=\"index\"\n :ref=\"(item) => (menuList[index] = item)\"\n :index=\"index\"\n :nodes=\"menu\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n nextTick,\n onBeforeUpdate,\n onMounted,\n provide,\n reactive,\n ref,\n watch,\n} from 'vue'\nimport isEqual from 'lodash/isEqual'\nimport { EVENT_CODE, focusNode, getSibling } from '@element-plus/utils/aria'\nimport { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '@element-plus/utils/constants'\nimport isServer from '@element-plus/utils/isServer'\nimport scrollIntoView from '@element-plus/utils/scroll-into-view'\nimport {\n arrayFlat,\n coerceTruthyValueToArray,\n deduplicate,\n isEmpty,\n} from '@element-plus/utils/util'\n\nimport ElCascaderMenu from './menu.vue'\nimport Store from './store'\nimport Node, { ExpandTrigger } from './node'\nimport { CommonProps, useCascaderConfig } from './config'\nimport { checkNode, getMenuIndex, sortByOriginalOrder } from './utils'\nimport { CASCADER_PANEL_INJECTION_KEY } from './types'\n\nimport type { PropType } from 'vue'\nimport type { Nullable } from '@element-plus/utils/types'\nimport type {\n CascaderValue,\n CascaderNodeValue,\n CascaderOption,\n RenderLabel,\n default as CascaderNode,\n} from './node'\n\nimport type { ElCascaderPanelContext } from './types'\n\nexport default defineComponent({\n name: 'ElCascaderPanel',\n\n components: {\n ElCascaderMenu,\n },\n\n props: {\n ...CommonProps,\n border: {\n type: Boolean,\n default: true,\n },\n renderLabel: Function as PropType<RenderLabel>,\n },\n\n emits: [UPDATE_MODEL_EVENT, CHANGE_EVENT, 'close', 'expand-change'],\n\n setup(props, { emit, slots }) {\n let initialLoaded = true\n // for interrupt sync check status in lazy mode\n let manualChecked = false\n\n const config = useCascaderConfig(props)\n\n let store: Nullable<Store> = null\n const menuList = ref<any[]>([])\n const checkedValue = ref<Nullable<CascaderValue>>(null)\n const menus = ref<CascaderNode[][]>([])\n const expandingNode = ref<Nullable<CascaderNode>>(null)\n const checkedNodes = ref<CascaderNode[]>([])\n\n const isHoverMenu = computed(\n () => config.value.expandTrigger === ExpandTrigger.HOVER\n )\n const renderLabelFn = computed(() => props.renderLabel || slots.default)\n\n const initStore = () => {\n const { options } = props\n const cfg = config.value\n\n manualChecked = false\n store = new Store(options, cfg)\n menus.value = [store.getNodes()]\n\n if (cfg.lazy && isEmpty(props.options)) {\n initialLoaded = false\n lazyLoad(undefined, (list) => {\n if (list) {\n store = new Store(list, cfg)\n menus.value = [store.getNodes()]\n }\n initialLoaded = true\n syncCheckedValue(false, true)\n })\n } else {\n syncCheckedValue(false, true)\n }\n }\n\n const lazyLoad: ElCascaderPanelContext['lazyLoad'] = (node, cb) => {\n const cfg = config.value\n node! = node || new Node({}, cfg, undefined, true)\n node.loading = true\n\n const resolve = (dataList: CascaderOption[]) => {\n const _node = node as Node\n const parent = _node.root ? null : _node\n dataList && store?.appendNodes(dataList, parent as any)\n _node.loading = false\n _node.loaded = true\n _node.childrenData = _node.childrenData || []\n cb && cb(dataList)\n }\n\n cfg.lazyLoad(node, resolve as any)\n }\n\n const expandNode: ElCascaderPanelContext['expandNode'] = (node, silent) => {\n const { level } = node\n const newMenus = menus.value.slice(0, level)\n let newExpandingNode: Nullable<CascaderNode>\n\n if (node.isLeaf) {\n newExpandingNode = node.pathNodes[level - 2]\n } else {\n newExpandingNode = node\n newMenus.push(node.children)\n }\n\n if (expandingNode.value?.uid !== newExpandingNode?.uid) {\n expandingNode.value = node\n menus.value = newMenus\n !silent && emit('expand-change', node?.pathValues || [])\n }\n }\n\n const handleCheckChange: ElCascaderPanelContext['handleCheckChange'] = (\n node,\n checked,\n emitClose = true\n ) => {\n const { checkStrictly, multiple } = config.value\n const oldNode = checkedNodes.value[0]\n manualChecked = true\n\n !multiple && oldNode?.doCheck(false)\n node.doCheck(checked)\n calculateCheckedValue()\n emitClose && !multiple && !checkStrictly && emit('close')\n !emitClose && !multiple && !checkStrictly && expandParentNode(node)\n }\n\n const expandParentNode = (node) => {\n if (!node) return\n node = node.parent\n expandParentNode(node)\n node && expandNode(node)\n }\n\n const getFlattedNodes = (leafOnly: boolean) => {\n return store?.getFlattedNodes(leafOnly)\n }\n\n const getCheckedNodes = (leafOnly: boolean) => {\n return getFlattedNodes(leafOnly)?.filter((node) => node.checked !== false)\n }\n\n const clearCheckedNodes = () => {\n checkedNodes.value.forEach((node) => node.doCheck(false))\n calculateCheckedValue()\n }\n\n const calculateCheckedValue = () => {\n const { checkStrictly, multiple } = config.value\n const oldNodes = checkedNodes.value\n const newNodes = getCheckedNodes(!checkStrictly)!\n // ensure the original order\n const nodes = sortByOriginalOrder(oldNodes, newNodes)\n const values = nodes.map((node) => node.valueByOption)\n checkedNodes.value = nodes\n checkedValue.value = multiple ? values : values[0] ?? null\n }\n\n const syncCheckedValue = (loaded = false, forced = false) => {\n const { modelValue } = props\n const { lazy, multiple, checkStrictly } = config.value\n const leafOnly = !checkStrictly\n\n if (\n !initialLoaded ||\n manualChecked ||\n (!forced && isEqual(modelValue, checkedValue.value))\n )\n return\n\n if (lazy && !loaded) {\n const values: CascaderNodeValue[] = deduplicate(\n arrayFlat(coerceTruthyValueToArray(modelValue))\n )\n const nodes = values\n .map((val) => store?.getNodeByValue(val))\n .filter((node) => !!node && !node.loaded && !node.loading) as Node[]\n\n if (nodes.length) {\n nodes.forEach((node) => {\n lazyLoad(node, () => syncCheckedValue(false, forced))\n })\n } else {\n syncCheckedValue(true, forced)\n }\n } else {\n const values = multiple\n ? coerceTruthyValueToArray(modelValue)\n : [modelValue]\n const nodes = deduplicate(\n values.map((val) => store?.getNodeByValue(val, leafOnly))\n ) as Node[]\n syncMenuState(nodes, false)\n checkedValue.value = modelValue!\n }\n }\n\n const syncMenuState = (\n newCheckedNodes: CascaderNode[],\n reserveExpandingState = true\n ) => {\n const { checkStrictly } = config.value\n const oldNodes = checkedNodes.value\n const newNodes = newCheckedNodes.filter(\n (node) => !!node && (checkStrictly || node.isLeaf)\n )\n const oldExpandingNode = store?.getSameNode(expandingNode.value!)\n const newExpandingNode =\n (reserveExpandingState && oldExpandingNode) || newNodes[0]\n\n if (newExpandingNode) {\n newExpandingNode.pathNodes.forEach((node) => expandNode(node, true))\n } else {\n expandingNode.value = null\n }\n\n oldNodes.forEach((node) => node.doCheck(false))\n newNodes.forEach((node) => node.doCheck(true))\n\n checkedNodes.value = newNodes\n nextTick(scrollToExpandingNode)\n }\n\n const scrollToExpandingNode = () => {\n if (isServer) return\n\n menuList.value.forEach((menu) => {\n const menuElement = menu?.$el\n if (menuElement) {\n const container = menuElement.querySelector('.el-scrollbar__wrap')\n const activeNode =\n menuElement.querySelector('.el-cascader-node.is-active') ||\n menuElement.querySelector('.el-cascader-node.in-active-path')\n scrollIntoView(container, activeNode)\n }\n })\n }\n\n const handleKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n const { code } = e\n\n switch (code) {\n case EVENT_CODE.up:\n case EVENT_CODE.down: {\n const distance = code === EVENT_CODE.up ? -1 : 1\n focusNode(\n getSibling(target, distance, '.el-cascader-node[tabindex=\"-1\"]')\n )\n break\n }\n case EVENT_CODE.left: {\n const preMenu = menuList.value[getMenuIndex(target) - 1]\n const expandedNode = preMenu?.$el.querySelector(\n '.el-cascader-node[aria-expanded=\"true\"]'\n )\n focusNode(expandedNode)\n break\n }\n case EVENT_CODE.right: {\n const nextMenu = menuList.value[getMenuIndex(target) + 1]\n const firstNode = nextMenu?.$el.querySelector(\n '.el-cascader-node[tabindex=\"-1\"]'\n )\n focusNode(firstNode)\n break\n }\n case EVENT_CODE.enter:\n checkNode(target)\n break\n case EVENT_CODE.esc:\n case EVENT_CODE.tab:\n emit('close')\n break\n }\n }\n\n provide(\n CASCADER_PANEL_INJECTION_KEY,\n reactive({\n config,\n expandingNode,\n checkedNodes,\n isHoverMenu,\n renderLabelFn,\n lazyLoad,\n expandNode,\n handleCheckChange,\n })\n )\n\n watch([config, () => props.options], initStore, {\n deep: true,\n immediate: true,\n })\n\n watch(\n () => props.modelValue,\n () => {\n manualChecked = false\n syncCheckedValue()\n }\n )\n\n watch(checkedValue, (val) => {\n if (!isEqual(val, props.modelValue)) {\n emit(UPDATE_MODEL_EVENT, val)\n emit(CHANGE_EVENT, val)\n }\n })\n\n onBeforeUpdate(() => (menuList.value = []))\n\n onMounted(() => !isEmpty(props.modelValue) && syncCheckedValue())\n\n return {\n menuList,\n menus,\n checkedNodes,\n handleKeyDown,\n handleCheckChange,\n getFlattedNodes,\n getCheckedNodes,\n clearCheckedNodes,\n calculateCheckedValue,\n scrollToExpandingNode,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElCascaderMenu","CommonProps","UPDATE_MODEL_EVENT","CHANGE_EVENT","config","useCascaderConfig","store","ref","computed","ExpandTrigger","Store","isEmpty","node","Node","sortByOriginalOrder","isEqual","deduplicate","arrayFlat","coerceTruthyValueToArray","isServer","EVENT_CODE","getSibling","getMenuIndex","CASCADER_PANEL_INJECTION_KEY","reactive"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AA0DA,aAAeA,oBAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,oBACVC;AAAA;AAAA,EAGF,OAAO;AAAA,OACFC;AAAA,IACH,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX,aAAa;AAAA;AAAA,EAGf,OAAO,CAACC,8BAAoBC,wBAAc,SAAS;AAAA,EAEnD,MAAM,OAAO,EAAE,MAAM,SAAS;AAC5B,QAAI,gBAAgB;AAEpB,QAAI,gBAAgB;AAEpB,UAAMC,WAASC,yBAAkB;AAEjC,QAAIC,UAAyB;AAC7B,UAAM,WAAWC,QAAW;AAC5B,UAAM,eAAeA,QAA6B;AAClD,UAAM,QAAQA,QAAsB;AACpC,UAAM,gBAAgBA,QAA4B;AAClD,UAAM,eAAeA,QAAoB;AAEzC,UAAM,cAAcC,aAClB,MAAMJ,SAAO,MAAM,kBAAkBK,mBAAc;AAErD,UAAM,gBAAgBD,aAAS,MAAM,MAAM,eAAe,MAAM;AAEhE,UAAM,YAAY,MAAM;AACtB,YAAM,EAAE,YAAY;AACpB,YAAM,MAAMJ,SAAO;AAEnB,sBAAgB;AAChB,gBAAQ,IAAIM,iBAAM,SAAS;AAC3B,YAAM,QAAQ,CAACJ,QAAM;AAErB,UAAI,IAAI,QAAQK,aAAQ,MAAM,UAAU;AACtC,wBAAgB;AAChB,iBAAS,QAAW,CAAC,SAAS;AAC5B,cAAI,MAAM;AACR,sBAAQ,IAAID,iBAAM,MAAM;AACxB,kBAAM,QAAQ,CAACJ,QAAM;AAAA;AAEvB,0BAAgB;AAChB,2BAAiB,OAAO;AAAA;AAAA,aAErB;AACL,yBAAiB,OAAO;AAAA;AAAA;AAI5B,UAAM,WAA+C,CAACM,QAAM,OAAO;AACjE,YAAM,MAAMR,SAAO;AACnB,eAAQQ,UAAQ,IAAIC,gBAAK,IAAI,KAAK,QAAW;AAC7C,aAAK,UAAU;AAEf,YAAM,UAAU,CAAC,aAA+B;AAC9C,cAAM,QAAQD;AACd,cAAM,SAAS,MAAM,OAAO,OAAO;AACnC,wDAAmB,YAAY,UAAU;AACzC,cAAM,UAAU;AAChB,cAAM,SAAS;AACf,cAAM,eAAe,MAAM,gBAAgB;AAC3C,cAAM,GAAG;AAAA;AAGX,UAAI,SAASA,QAAM;AAAA;AAGrB,UAAM,aAAmD,CAAC,MAAM,WAAW;;AACzE,YAAM,EAAE,UAAU;AAClB,YAAM,WAAW,MAAM,MAAM,MAAM,GAAG;AACtC,UAAI;AAEJ,UAAI,KAAK,QAAQ;AACf,2BAAmB,KAAK,UAAU,QAAQ;AAAA,aACrC;AACL,2BAAmB;AACnB,iBAAS,KAAK,KAAK;AAAA;AAGrB,UAAI,qBAAc,UAAd,mBAAqB,+DAA0B,MAAK;AACtD,sBAAc,QAAQ;AACtB,cAAM,QAAQ;AACd,SAAC,UAAU,KAAK,iBAAiB,8BAAM,eAAc;AAAA;AAAA;AAIzD,UAAM,oBAAiE,CACrE,MACA,SACA,YAAY,SACT;AACH,YAAM,EAAE,eAAe,aAAaR,SAAO;AAC3C,YAAM,UAAU,aAAa,MAAM;AACnC,sBAAgB;AAEhB,OAAC,gDAAqB,QAAQ;AAC9B,WAAK,QAAQ;AACb;AACA,mBAAa,CAAC,YAAY,CAAC,iBAAiB,KAAK;AACjD,OAAC,aAAa,CAAC,YAAY,CAAC,iBAAiB,iBAAiB;AAAA;AAGhE,UAAM,mBAAmB,CAAC,SAAS;AACjC,UAAI,CAAC;AAAM;AACX,aAAO,KAAK;AACZ,uBAAiB;AACjB,cAAQ,WAAW;AAAA;AAGrB,UAAM,kBAAkB,CAAC,aAAsB;AAC7C,aAAOE,mCAAO,gBAAgB;AAAA;AAGhC,UAAM,kBAAkB,CAAC,aAAsB;;AAC7C,aAAO,sBAAgB,cAAhB,mBAA2B,OAAO,CAAC,SAAS,KAAK,YAAY;AAAA;AAGtE,UAAM,oBAAoB,MAAM;AAC9B,mBAAa,MAAM,QAAQ,CAAC,SAAS,KAAK,QAAQ;AAClD;AAAA;AAGF,UAAM,wBAAwB,MAAM;;AAClC,YAAM,EAAE,eAAe,aAAaF,SAAO;AAC3C,YAAM,WAAW,aAAa;AAC9B,YAAM,WAAW,gBAAgB,CAAC;AAElC,YAAM,QAAQU,0BAAoB,UAAU;AAC5C,YAAM,SAAS,MAAM,IAAI,CAAC,SAAS,KAAK;AACxC,mBAAa,QAAQ;AACrB,mBAAa,QAAQ,WAAW,SAAS,aAAO,OAAP,YAAa;AAAA;AAGxD,UAAM,mBAAmB,CAAC,SAAS,OAAO,SAAS,UAAU;AAC3D,YAAM,EAAE,eAAe;AACvB,YAAM,EAAE,MAAM,UAAU,kBAAkBV,SAAO;AACjD,YAAM,WAAW,CAAC;AAElB,UACE,CAAC,iBACD,iBACC,CAAC,UAAUW,4BAAQ,YAAY,aAAa;AAE7C;AAEF,UAAI,QAAQ,CAAC,QAAQ;AACnB,cAAM,SAA8BC,iBAClCC,eAAUC,8BAAyB;AAErC,cAAM,QAAQ,OACX,IAAI,CAAC,QAAQZ,mCAAO,eAAe,MACnC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,UAAU,CAAC,KAAK;AAEpD,YAAI,MAAM,QAAQ;AAChB,gBAAM,QAAQ,CAAC,SAAS;AACtB,qBAAS,MAAM,MAAM,iBAAiB,OAAO;AAAA;AAAA,eAE1C;AACL,2BAAiB,MAAM;AAAA;AAAA,aAEpB;AACL,cAAM,SAAS,WACXY,8BAAyB,cACzB,CAAC;AACL,cAAM,QAAQF,iBACZ,OAAO,IAAI,CAAC,QAAQV,mCAAO,eAAe,KAAK;AAEjD,sBAAc,OAAO;AACrB,qBAAa,QAAQ;AAAA;AAAA;AAIzB,UAAM,gBAAgB,CACpB,iBACA,wBAAwB,SACrB;AACH,YAAM,EAAE,kBAAkBF,SAAO;AACjC,YAAM,WAAW,aAAa;AAC9B,YAAM,WAAW,gBAAgB,OAC/B,CAAC,SAAS,CAAC,CAAC,0BAA0B,KAAK;AAE7C,YAAM,mBAAmBE,mCAAO,YAAY,cAAc;AAC1D,YAAM,mBACH,yBAAyB,oBAAqB,SAAS;AAE1D,UAAI,kBAAkB;AACpB,yBAAiB,UAAU,QAAQ,CAAC,SAAS,WAAW,MAAM;AAAA,aACzD;AACL,sBAAc,QAAQ;AAAA;AAGxB,eAAS,QAAQ,CAAC,SAAS,KAAK,QAAQ;AACxC,eAAS,QAAQ,CAAC,SAAS,KAAK,QAAQ;AAExC,mBAAa,QAAQ;AACrB,mBAAS;AAAA;AAGX,UAAM,wBAAwB,MAAM;AAClC,UAAIa;AAAU;AAEd,eAAS,MAAM,QAAQ,CAAC,SAAS;AAC/B,cAAM,cAAc,6BAAM;AAC1B,YAAI,aAAa;AACf,gBAAM,YAAY,YAAY,cAAc;AAC5C,gBAAM,aACJ,YAAY,cAAc,kCAC1B,YAAY,cAAc;AAC5B,oCAAe,WAAW;AAAA;AAAA;AAAA;AAKhC,UAAM,gBAAgB,CAAC,MAAqB;AAC1C,YAAM,SAAS,EAAE;AACjB,YAAM,EAAE,SAAS;AAEjB,cAAQ;AAAA,aACDC,gBAAW;AAAA,aACXA,gBAAW,MAAM;AACpB,gBAAM,WAAW,SAASA,gBAAW,KAAK,KAAK;AAC/C,yBACEC,gBAAW,QAAQ,UAAU;AAE/B;AAAA;AAAA,aAEGD,gBAAW,MAAM;AACpB,gBAAM,UAAU,SAAS,MAAME,mBAAa,UAAU;AACtD,gBAAM,eAAe,mCAAS,IAAI,cAChC;AAEF,yBAAU;AACV;AAAA;AAAA,aAEGF,gBAAW,OAAO;AACrB,gBAAM,WAAW,SAAS,MAAME,mBAAa,UAAU;AACvD,gBAAM,YAAY,qCAAU,IAAI,cAC9B;AAEF,yBAAU;AACV;AAAA;AAAA,aAEGF,gBAAW;AACd,0BAAU;AACV;AAAA,aACGA,gBAAW;AAAA,aACXA,gBAAW;AACd,eAAK;AACL;AAAA;AAAA;AAIN,gBACEG,oCACAC,aAAS;AAAA,cACPpB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAIJ,cAAM,CAACA,UAAQ,MAAM,MAAM,UAAU,WAAW;AAAA,MAC9C,MAAM;AAAA,MACN,WAAW;AAAA;AAGb,cACE,MAAM,MAAM,YACZ,MAAM;AACJ,sBAAgB;AAChB;AAAA;AAIJ,cAAM,cAAc,CAAC,QAAQ;AAC3B,UAAI,CAACW,4BAAQ,KAAK,MAAM,aAAa;AACnC,aAAKb,8BAAoB;AACzB,aAAKC,wBAAc;AAAA;AAAA;AAIvB,uBAAe,MAAO,SAAS,QAAQ;AAEvC,kBAAU,MAAM,CAACQ,aAAQ,MAAM,eAAe;AAE9C,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"index.vue_vue_type_script_lang.js","sources":["../../../../../../packages/components/cascader-panel/src/index.vue"],"sourcesContent":["<template>\n <div\n :class=\"['el-cascader-panel', border && 'is-bordered']\"\n @keydown=\"handleKeyDown\"\n >\n <el-cascader-menu\n v-for=\"(menu, index) in menus\"\n :key=\"index\"\n :ref=\"(item) => (menuList[index] = item)\"\n :index=\"index\"\n :nodes=\"menu\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n nextTick,\n onBeforeUpdate,\n onMounted,\n provide,\n reactive,\n ref,\n watch,\n} from 'vue'\nimport isEqual from 'lodash/isEqual'\nimport { isClient } from '@vueuse/core'\nimport { EVENT_CODE, focusNode, getSibling } from '@element-plus/utils/aria'\nimport { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '@element-plus/utils/constants'\nimport scrollIntoView from '@element-plus/utils/scroll-into-view'\nimport {\n arrayFlat,\n coerceTruthyValueToArray,\n deduplicate,\n isEmpty,\n} from '@element-plus/utils/util'\n\nimport ElCascaderMenu from './menu.vue'\nimport Store from './store'\nimport Node, { ExpandTrigger } from './node'\nimport { CommonProps, useCascaderConfig } from './config'\nimport { checkNode, getMenuIndex, sortByOriginalOrder } from './utils'\nimport { CASCADER_PANEL_INJECTION_KEY } from './types'\n\nimport type { PropType } from 'vue'\nimport type { Nullable } from '@element-plus/utils/types'\nimport type {\n CascaderValue,\n CascaderNodeValue,\n CascaderOption,\n RenderLabel,\n default as CascaderNode,\n} from './node'\n\nimport type { ElCascaderPanelContext } from './types'\n\nexport default defineComponent({\n name: 'ElCascaderPanel',\n\n components: {\n ElCascaderMenu,\n },\n\n props: {\n ...CommonProps,\n border: {\n type: Boolean,\n default: true,\n },\n renderLabel: Function as PropType<RenderLabel>,\n },\n\n emits: [UPDATE_MODEL_EVENT, CHANGE_EVENT, 'close', 'expand-change'],\n\n setup(props, { emit, slots }) {\n let initialLoaded = true\n // for interrupt sync check status in lazy mode\n let manualChecked = false\n\n const config = useCascaderConfig(props)\n\n let store: Nullable<Store> = null\n const menuList = ref<any[]>([])\n const checkedValue = ref<Nullable<CascaderValue>>(null)\n const menus = ref<CascaderNode[][]>([])\n const expandingNode = ref<Nullable<CascaderNode>>(null)\n const checkedNodes = ref<CascaderNode[]>([])\n\n const isHoverMenu = computed(\n () => config.value.expandTrigger === ExpandTrigger.HOVER\n )\n const renderLabelFn = computed(() => props.renderLabel || slots.default)\n\n const initStore = () => {\n const { options } = props\n const cfg = config.value\n\n manualChecked = false\n store = new Store(options, cfg)\n menus.value = [store.getNodes()]\n\n if (cfg.lazy && isEmpty(props.options)) {\n initialLoaded = false\n lazyLoad(undefined, (list) => {\n if (list) {\n store = new Store(list, cfg)\n menus.value = [store.getNodes()]\n }\n initialLoaded = true\n syncCheckedValue(false, true)\n })\n } else {\n syncCheckedValue(false, true)\n }\n }\n\n const lazyLoad: ElCascaderPanelContext['lazyLoad'] = (node, cb) => {\n const cfg = config.value\n node! = node || new Node({}, cfg, undefined, true)\n node.loading = true\n\n const resolve = (dataList: CascaderOption[]) => {\n const _node = node as Node\n const parent = _node.root ? null : _node\n dataList && store?.appendNodes(dataList, parent as any)\n _node.loading = false\n _node.loaded = true\n _node.childrenData = _node.childrenData || []\n cb && cb(dataList)\n }\n\n cfg.lazyLoad(node, resolve as any)\n }\n\n const expandNode: ElCascaderPanelContext['expandNode'] = (node, silent) => {\n const { level } = node\n const newMenus = menus.value.slice(0, level)\n let newExpandingNode: Nullable<CascaderNode>\n\n if (node.isLeaf) {\n newExpandingNode = node.pathNodes[level - 2]\n } else {\n newExpandingNode = node\n newMenus.push(node.children)\n }\n\n if (expandingNode.value?.uid !== newExpandingNode?.uid) {\n expandingNode.value = node\n menus.value = newMenus\n !silent && emit('expand-change', node?.pathValues || [])\n }\n }\n\n const handleCheckChange: ElCascaderPanelContext['handleCheckChange'] = (\n node,\n checked,\n emitClose = true\n ) => {\n const { checkStrictly, multiple } = config.value\n const oldNode = checkedNodes.value[0]\n manualChecked = true\n\n !multiple && oldNode?.doCheck(false)\n node.doCheck(checked)\n calculateCheckedValue()\n emitClose && !multiple && !checkStrictly && emit('close')\n !emitClose && !multiple && !checkStrictly && expandParentNode(node)\n }\n\n const expandParentNode = (node) => {\n if (!node) return\n node = node.parent\n expandParentNode(node)\n node && expandNode(node)\n }\n\n const getFlattedNodes = (leafOnly: boolean) => {\n return store?.getFlattedNodes(leafOnly)\n }\n\n const getCheckedNodes = (leafOnly: boolean) => {\n return getFlattedNodes(leafOnly)?.filter((node) => node.checked !== false)\n }\n\n const clearCheckedNodes = () => {\n checkedNodes.value.forEach((node) => node.doCheck(false))\n calculateCheckedValue()\n }\n\n const calculateCheckedValue = () => {\n const { checkStrictly, multiple } = config.value\n const oldNodes = checkedNodes.value\n const newNodes = getCheckedNodes(!checkStrictly)!\n // ensure the original order\n const nodes = sortByOriginalOrder(oldNodes, newNodes)\n const values = nodes.map((node) => node.valueByOption)\n checkedNodes.value = nodes\n checkedValue.value = multiple ? values : values[0] ?? null\n }\n\n const syncCheckedValue = (loaded = false, forced = false) => {\n const { modelValue } = props\n const { lazy, multiple, checkStrictly } = config.value\n const leafOnly = !checkStrictly\n\n if (\n !initialLoaded ||\n manualChecked ||\n (!forced && isEqual(modelValue, checkedValue.value))\n )\n return\n\n if (lazy && !loaded) {\n const values: CascaderNodeValue[] = deduplicate(\n arrayFlat(coerceTruthyValueToArray(modelValue))\n )\n const nodes = values\n .map((val) => store?.getNodeByValue(val))\n .filter((node) => !!node && !node.loaded && !node.loading) as Node[]\n\n if (nodes.length) {\n nodes.forEach((node) => {\n lazyLoad(node, () => syncCheckedValue(false, forced))\n })\n } else {\n syncCheckedValue(true, forced)\n }\n } else {\n const values = multiple\n ? coerceTruthyValueToArray(modelValue)\n : [modelValue]\n const nodes = deduplicate(\n values.map((val) => store?.getNodeByValue(val, leafOnly))\n ) as Node[]\n syncMenuState(nodes, false)\n checkedValue.value = modelValue!\n }\n }\n\n const syncMenuState = (\n newCheckedNodes: CascaderNode[],\n reserveExpandingState = true\n ) => {\n const { checkStrictly } = config.value\n const oldNodes = checkedNodes.value\n const newNodes = newCheckedNodes.filter(\n (node) => !!node && (checkStrictly || node.isLeaf)\n )\n const oldExpandingNode = store?.getSameNode(expandingNode.value!)\n const newExpandingNode =\n (reserveExpandingState && oldExpandingNode) || newNodes[0]\n\n if (newExpandingNode) {\n newExpandingNode.pathNodes.forEach((node) => expandNode(node, true))\n } else {\n expandingNode.value = null\n }\n\n oldNodes.forEach((node) => node.doCheck(false))\n newNodes.forEach((node) => node.doCheck(true))\n\n checkedNodes.value = newNodes\n nextTick(scrollToExpandingNode)\n }\n\n const scrollToExpandingNode = () => {\n if (!isClient) return\n\n menuList.value.forEach((menu) => {\n const menuElement = menu?.$el\n if (menuElement) {\n const container = menuElement.querySelector('.el-scrollbar__wrap')\n const activeNode =\n menuElement.querySelector('.el-cascader-node.is-active') ||\n menuElement.querySelector('.el-cascader-node.in-active-path')\n scrollIntoView(container, activeNode)\n }\n })\n }\n\n const handleKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n const { code } = e\n\n switch (code) {\n case EVENT_CODE.up:\n case EVENT_CODE.down: {\n const distance = code === EVENT_CODE.up ? -1 : 1\n focusNode(\n getSibling(target, distance, '.el-cascader-node[tabindex=\"-1\"]')\n )\n break\n }\n case EVENT_CODE.left: {\n const preMenu = menuList.value[getMenuIndex(target) - 1]\n const expandedNode = preMenu?.$el.querySelector(\n '.el-cascader-node[aria-expanded=\"true\"]'\n )\n focusNode(expandedNode)\n break\n }\n case EVENT_CODE.right: {\n const nextMenu = menuList.value[getMenuIndex(target) + 1]\n const firstNode = nextMenu?.$el.querySelector(\n '.el-cascader-node[tabindex=\"-1\"]'\n )\n focusNode(firstNode)\n break\n }\n case EVENT_CODE.enter:\n checkNode(target)\n break\n case EVENT_CODE.esc:\n case EVENT_CODE.tab:\n emit('close')\n break\n }\n }\n\n provide(\n CASCADER_PANEL_INJECTION_KEY,\n reactive({\n config,\n expandingNode,\n checkedNodes,\n isHoverMenu,\n renderLabelFn,\n lazyLoad,\n expandNode,\n handleCheckChange,\n })\n )\n\n watch([config, () => props.options], initStore, {\n deep: true,\n immediate: true,\n })\n\n watch(\n () => props.modelValue,\n () => {\n manualChecked = false\n syncCheckedValue()\n }\n )\n\n watch(checkedValue, (val) => {\n if (!isEqual(val, props.modelValue)) {\n emit(UPDATE_MODEL_EVENT, val)\n emit(CHANGE_EVENT, val)\n }\n })\n\n onBeforeUpdate(() => (menuList.value = []))\n\n onMounted(() => !isEmpty(props.modelValue) && syncCheckedValue())\n\n return {\n menuList,\n menus,\n checkedNodes,\n handleKeyDown,\n handleCheckChange,\n getFlattedNodes,\n getCheckedNodes,\n clearCheckedNodes,\n calculateCheckedValue,\n scrollToExpandingNode,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElCascaderMenu","CommonProps","UPDATE_MODEL_EVENT","CHANGE_EVENT","store","config","Store","node","Node","deduplicate","nextTick","isClient","EVENT_CODE","focusNode","checkNode","provide","CASCADER_PANEL_INJECTION_KEY","isEqual","onBeforeUpdate"],"mappings":"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"}
@@ -13,6 +13,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
13
13
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.menus, (menu, index) => {
14
14
  return vue.openBlock(), vue.createBlock(_component_el_cascader_menu, {
15
15
  key: index,
16
+ ref_for: true,
16
17
  ref: (item) => _ctx.menuList[index] = item,
17
18
  index,
18
19
  nodes: menu
@@ -1 +1 @@
1
- {"version":3,"file":"index.vue_vue_type_template_id_97c48f5c_lang.js","sources":["../../../../../../packages/components/cascader-panel/src/index.vue?vue&type=template&id=97c48f5c&lang.js"],"sourcesContent":["<template>\n <div\n :class=\"['el-cascader-panel', border && 'is-bordered']\"\n @keydown=\"handleKeyDown\"\n >\n <el-cascader-menu\n v-for=\"(menu, index) in menus\"\n :key=\"index\"\n :ref=\"(item) => (menuList[index] = item)\"\n :index=\"index\"\n :nodes=\"menu\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n nextTick,\n onBeforeUpdate,\n onMounted,\n provide,\n reactive,\n ref,\n watch,\n} from 'vue'\nimport isEqual from 'lodash/isEqual'\nimport { EVENT_CODE, focusNode, getSibling } from '@element-plus/utils/aria'\nimport { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '@element-plus/utils/constants'\nimport isServer from '@element-plus/utils/isServer'\nimport scrollIntoView from '@element-plus/utils/scroll-into-view'\nimport {\n arrayFlat,\n coerceTruthyValueToArray,\n deduplicate,\n isEmpty,\n} from '@element-plus/utils/util'\n\nimport ElCascaderMenu from './menu.vue'\nimport Store from './store'\nimport Node, { ExpandTrigger } from './node'\nimport { CommonProps, useCascaderConfig } from './config'\nimport { checkNode, getMenuIndex, sortByOriginalOrder } from './utils'\nimport { CASCADER_PANEL_INJECTION_KEY } from './types'\n\nimport type { PropType } from 'vue'\nimport type { Nullable } from '@element-plus/utils/types'\nimport type {\n CascaderValue,\n CascaderNodeValue,\n CascaderOption,\n RenderLabel,\n default as CascaderNode,\n} from './node'\n\nimport type { ElCascaderPanelContext } from './types'\n\nexport default defineComponent({\n name: 'ElCascaderPanel',\n\n components: {\n ElCascaderMenu,\n },\n\n props: {\n ...CommonProps,\n border: {\n type: Boolean,\n default: true,\n },\n renderLabel: Function as PropType<RenderLabel>,\n },\n\n emits: [UPDATE_MODEL_EVENT, CHANGE_EVENT, 'close', 'expand-change'],\n\n setup(props, { emit, slots }) {\n let initialLoaded = true\n // for interrupt sync check status in lazy mode\n let manualChecked = false\n\n const config = useCascaderConfig(props)\n\n let store: Nullable<Store> = null\n const menuList = ref<any[]>([])\n const checkedValue = ref<Nullable<CascaderValue>>(null)\n const menus = ref<CascaderNode[][]>([])\n const expandingNode = ref<Nullable<CascaderNode>>(null)\n const checkedNodes = ref<CascaderNode[]>([])\n\n const isHoverMenu = computed(\n () => config.value.expandTrigger === ExpandTrigger.HOVER\n )\n const renderLabelFn = computed(() => props.renderLabel || slots.default)\n\n const initStore = () => {\n const { options } = props\n const cfg = config.value\n\n manualChecked = false\n store = new Store(options, cfg)\n menus.value = [store.getNodes()]\n\n if (cfg.lazy && isEmpty(props.options)) {\n initialLoaded = false\n lazyLoad(undefined, (list) => {\n if (list) {\n store = new Store(list, cfg)\n menus.value = [store.getNodes()]\n }\n initialLoaded = true\n syncCheckedValue(false, true)\n })\n } else {\n syncCheckedValue(false, true)\n }\n }\n\n const lazyLoad: ElCascaderPanelContext['lazyLoad'] = (node, cb) => {\n const cfg = config.value\n node! = node || new Node({}, cfg, undefined, true)\n node.loading = true\n\n const resolve = (dataList: CascaderOption[]) => {\n const _node = node as Node\n const parent = _node.root ? null : _node\n dataList && store?.appendNodes(dataList, parent as any)\n _node.loading = false\n _node.loaded = true\n _node.childrenData = _node.childrenData || []\n cb && cb(dataList)\n }\n\n cfg.lazyLoad(node, resolve as any)\n }\n\n const expandNode: ElCascaderPanelContext['expandNode'] = (node, silent) => {\n const { level } = node\n const newMenus = menus.value.slice(0, level)\n let newExpandingNode: Nullable<CascaderNode>\n\n if (node.isLeaf) {\n newExpandingNode = node.pathNodes[level - 2]\n } else {\n newExpandingNode = node\n newMenus.push(node.children)\n }\n\n if (expandingNode.value?.uid !== newExpandingNode?.uid) {\n expandingNode.value = node\n menus.value = newMenus\n !silent && emit('expand-change', node?.pathValues || [])\n }\n }\n\n const handleCheckChange: ElCascaderPanelContext['handleCheckChange'] = (\n node,\n checked,\n emitClose = true\n ) => {\n const { checkStrictly, multiple } = config.value\n const oldNode = checkedNodes.value[0]\n manualChecked = true\n\n !multiple && oldNode?.doCheck(false)\n node.doCheck(checked)\n calculateCheckedValue()\n emitClose && !multiple && !checkStrictly && emit('close')\n !emitClose && !multiple && !checkStrictly && expandParentNode(node)\n }\n\n const expandParentNode = (node) => {\n if (!node) return\n node = node.parent\n expandParentNode(node)\n node && expandNode(node)\n }\n\n const getFlattedNodes = (leafOnly: boolean) => {\n return store?.getFlattedNodes(leafOnly)\n }\n\n const getCheckedNodes = (leafOnly: boolean) => {\n return getFlattedNodes(leafOnly)?.filter((node) => node.checked !== false)\n }\n\n const clearCheckedNodes = () => {\n checkedNodes.value.forEach((node) => node.doCheck(false))\n calculateCheckedValue()\n }\n\n const calculateCheckedValue = () => {\n const { checkStrictly, multiple } = config.value\n const oldNodes = checkedNodes.value\n const newNodes = getCheckedNodes(!checkStrictly)!\n // ensure the original order\n const nodes = sortByOriginalOrder(oldNodes, newNodes)\n const values = nodes.map((node) => node.valueByOption)\n checkedNodes.value = nodes\n checkedValue.value = multiple ? values : values[0] ?? null\n }\n\n const syncCheckedValue = (loaded = false, forced = false) => {\n const { modelValue } = props\n const { lazy, multiple, checkStrictly } = config.value\n const leafOnly = !checkStrictly\n\n if (\n !initialLoaded ||\n manualChecked ||\n (!forced && isEqual(modelValue, checkedValue.value))\n )\n return\n\n if (lazy && !loaded) {\n const values: CascaderNodeValue[] = deduplicate(\n arrayFlat(coerceTruthyValueToArray(modelValue))\n )\n const nodes = values\n .map((val) => store?.getNodeByValue(val))\n .filter((node) => !!node && !node.loaded && !node.loading) as Node[]\n\n if (nodes.length) {\n nodes.forEach((node) => {\n lazyLoad(node, () => syncCheckedValue(false, forced))\n })\n } else {\n syncCheckedValue(true, forced)\n }\n } else {\n const values = multiple\n ? coerceTruthyValueToArray(modelValue)\n : [modelValue]\n const nodes = deduplicate(\n values.map((val) => store?.getNodeByValue(val, leafOnly))\n ) as Node[]\n syncMenuState(nodes, false)\n checkedValue.value = modelValue!\n }\n }\n\n const syncMenuState = (\n newCheckedNodes: CascaderNode[],\n reserveExpandingState = true\n ) => {\n const { checkStrictly } = config.value\n const oldNodes = checkedNodes.value\n const newNodes = newCheckedNodes.filter(\n (node) => !!node && (checkStrictly || node.isLeaf)\n )\n const oldExpandingNode = store?.getSameNode(expandingNode.value!)\n const newExpandingNode =\n (reserveExpandingState && oldExpandingNode) || newNodes[0]\n\n if (newExpandingNode) {\n newExpandingNode.pathNodes.forEach((node) => expandNode(node, true))\n } else {\n expandingNode.value = null\n }\n\n oldNodes.forEach((node) => node.doCheck(false))\n newNodes.forEach((node) => node.doCheck(true))\n\n checkedNodes.value = newNodes\n nextTick(scrollToExpandingNode)\n }\n\n const scrollToExpandingNode = () => {\n if (isServer) return\n\n menuList.value.forEach((menu) => {\n const menuElement = menu?.$el\n if (menuElement) {\n const container = menuElement.querySelector('.el-scrollbar__wrap')\n const activeNode =\n menuElement.querySelector('.el-cascader-node.is-active') ||\n menuElement.querySelector('.el-cascader-node.in-active-path')\n scrollIntoView(container, activeNode)\n }\n })\n }\n\n const handleKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n const { code } = e\n\n switch (code) {\n case EVENT_CODE.up:\n case EVENT_CODE.down: {\n const distance = code === EVENT_CODE.up ? -1 : 1\n focusNode(\n getSibling(target, distance, '.el-cascader-node[tabindex=\"-1\"]')\n )\n break\n }\n case EVENT_CODE.left: {\n const preMenu = menuList.value[getMenuIndex(target) - 1]\n const expandedNode = preMenu?.$el.querySelector(\n '.el-cascader-node[aria-expanded=\"true\"]'\n )\n focusNode(expandedNode)\n break\n }\n case EVENT_CODE.right: {\n const nextMenu = menuList.value[getMenuIndex(target) + 1]\n const firstNode = nextMenu?.$el.querySelector(\n '.el-cascader-node[tabindex=\"-1\"]'\n )\n focusNode(firstNode)\n break\n }\n case EVENT_CODE.enter:\n checkNode(target)\n break\n case EVENT_CODE.esc:\n case EVENT_CODE.tab:\n emit('close')\n break\n }\n }\n\n provide(\n CASCADER_PANEL_INJECTION_KEY,\n reactive({\n config,\n expandingNode,\n checkedNodes,\n isHoverMenu,\n renderLabelFn,\n lazyLoad,\n expandNode,\n handleCheckChange,\n })\n )\n\n watch([config, () => props.options], initStore, {\n deep: true,\n immediate: true,\n })\n\n watch(\n () => props.modelValue,\n () => {\n manualChecked = false\n syncCheckedValue()\n }\n )\n\n watch(checkedValue, (val) => {\n if (!isEqual(val, props.modelValue)) {\n emit(UPDATE_MODEL_EVENT, val)\n emit(CHANGE_EVENT, val)\n }\n })\n\n onBeforeUpdate(() => (menuList.value = []))\n\n onMounted(() => !isEmpty(props.modelValue) && syncCheckedValue())\n\n return {\n menuList,\n menus,\n checkedNodes,\n handleKeyDown,\n handleCheckChange,\n getFlattedNodes,\n getCheckedNodes,\n clearCheckedNodes,\n calculateCheckedValue,\n scrollToExpandingNode,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_createBlock"],"mappings":";;;;;;;;0BACEA;IACG,gDAA6B;IAC7B,kDAAS;;0BAEVA,0DAC0B,aAAhB,MAAM;8BADhBC;QAEG,KAAK;AAAA,QACL,MAAM,SAAU,cAAS,SAAS;AAAA,QAClC;AAAA,QACA,OAAO;AAAA;;;;;;;"}
1
+ {"version":3,"file":"index.vue_vue_type_template_id_97c48f5c_lang.js","sources":["../../../../../../packages/components/cascader-panel/src/index.vue?vue&type=template&id=97c48f5c&lang.js"],"sourcesContent":["<template>\n <div\n :class=\"['el-cascader-panel', border && 'is-bordered']\"\n @keydown=\"handleKeyDown\"\n >\n <el-cascader-menu\n v-for=\"(menu, index) in menus\"\n :key=\"index\"\n :ref=\"(item) => (menuList[index] = item)\"\n :index=\"index\"\n :nodes=\"menu\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n nextTick,\n onBeforeUpdate,\n onMounted,\n provide,\n reactive,\n ref,\n watch,\n} from 'vue'\nimport isEqual from 'lodash/isEqual'\nimport { isClient } from '@vueuse/core'\nimport { EVENT_CODE, focusNode, getSibling } from '@element-plus/utils/aria'\nimport { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '@element-plus/utils/constants'\nimport scrollIntoView from '@element-plus/utils/scroll-into-view'\nimport {\n arrayFlat,\n coerceTruthyValueToArray,\n deduplicate,\n isEmpty,\n} from '@element-plus/utils/util'\n\nimport ElCascaderMenu from './menu.vue'\nimport Store from './store'\nimport Node, { ExpandTrigger } from './node'\nimport { CommonProps, useCascaderConfig } from './config'\nimport { checkNode, getMenuIndex, sortByOriginalOrder } from './utils'\nimport { CASCADER_PANEL_INJECTION_KEY } from './types'\n\nimport type { PropType } from 'vue'\nimport type { Nullable } from '@element-plus/utils/types'\nimport type {\n CascaderValue,\n CascaderNodeValue,\n CascaderOption,\n RenderLabel,\n default as CascaderNode,\n} from './node'\n\nimport type { ElCascaderPanelContext } from './types'\n\nexport default defineComponent({\n name: 'ElCascaderPanel',\n\n components: {\n ElCascaderMenu,\n },\n\n props: {\n ...CommonProps,\n border: {\n type: Boolean,\n default: true,\n },\n renderLabel: Function as PropType<RenderLabel>,\n },\n\n emits: [UPDATE_MODEL_EVENT, CHANGE_EVENT, 'close', 'expand-change'],\n\n setup(props, { emit, slots }) {\n let initialLoaded = true\n // for interrupt sync check status in lazy mode\n let manualChecked = false\n\n const config = useCascaderConfig(props)\n\n let store: Nullable<Store> = null\n const menuList = ref<any[]>([])\n const checkedValue = ref<Nullable<CascaderValue>>(null)\n const menus = ref<CascaderNode[][]>([])\n const expandingNode = ref<Nullable<CascaderNode>>(null)\n const checkedNodes = ref<CascaderNode[]>([])\n\n const isHoverMenu = computed(\n () => config.value.expandTrigger === ExpandTrigger.HOVER\n )\n const renderLabelFn = computed(() => props.renderLabel || slots.default)\n\n const initStore = () => {\n const { options } = props\n const cfg = config.value\n\n manualChecked = false\n store = new Store(options, cfg)\n menus.value = [store.getNodes()]\n\n if (cfg.lazy && isEmpty(props.options)) {\n initialLoaded = false\n lazyLoad(undefined, (list) => {\n if (list) {\n store = new Store(list, cfg)\n menus.value = [store.getNodes()]\n }\n initialLoaded = true\n syncCheckedValue(false, true)\n })\n } else {\n syncCheckedValue(false, true)\n }\n }\n\n const lazyLoad: ElCascaderPanelContext['lazyLoad'] = (node, cb) => {\n const cfg = config.value\n node! = node || new Node({}, cfg, undefined, true)\n node.loading = true\n\n const resolve = (dataList: CascaderOption[]) => {\n const _node = node as Node\n const parent = _node.root ? null : _node\n dataList && store?.appendNodes(dataList, parent as any)\n _node.loading = false\n _node.loaded = true\n _node.childrenData = _node.childrenData || []\n cb && cb(dataList)\n }\n\n cfg.lazyLoad(node, resolve as any)\n }\n\n const expandNode: ElCascaderPanelContext['expandNode'] = (node, silent) => {\n const { level } = node\n const newMenus = menus.value.slice(0, level)\n let newExpandingNode: Nullable<CascaderNode>\n\n if (node.isLeaf) {\n newExpandingNode = node.pathNodes[level - 2]\n } else {\n newExpandingNode = node\n newMenus.push(node.children)\n }\n\n if (expandingNode.value?.uid !== newExpandingNode?.uid) {\n expandingNode.value = node\n menus.value = newMenus\n !silent && emit('expand-change', node?.pathValues || [])\n }\n }\n\n const handleCheckChange: ElCascaderPanelContext['handleCheckChange'] = (\n node,\n checked,\n emitClose = true\n ) => {\n const { checkStrictly, multiple } = config.value\n const oldNode = checkedNodes.value[0]\n manualChecked = true\n\n !multiple && oldNode?.doCheck(false)\n node.doCheck(checked)\n calculateCheckedValue()\n emitClose && !multiple && !checkStrictly && emit('close')\n !emitClose && !multiple && !checkStrictly && expandParentNode(node)\n }\n\n const expandParentNode = (node) => {\n if (!node) return\n node = node.parent\n expandParentNode(node)\n node && expandNode(node)\n }\n\n const getFlattedNodes = (leafOnly: boolean) => {\n return store?.getFlattedNodes(leafOnly)\n }\n\n const getCheckedNodes = (leafOnly: boolean) => {\n return getFlattedNodes(leafOnly)?.filter((node) => node.checked !== false)\n }\n\n const clearCheckedNodes = () => {\n checkedNodes.value.forEach((node) => node.doCheck(false))\n calculateCheckedValue()\n }\n\n const calculateCheckedValue = () => {\n const { checkStrictly, multiple } = config.value\n const oldNodes = checkedNodes.value\n const newNodes = getCheckedNodes(!checkStrictly)!\n // ensure the original order\n const nodes = sortByOriginalOrder(oldNodes, newNodes)\n const values = nodes.map((node) => node.valueByOption)\n checkedNodes.value = nodes\n checkedValue.value = multiple ? values : values[0] ?? null\n }\n\n const syncCheckedValue = (loaded = false, forced = false) => {\n const { modelValue } = props\n const { lazy, multiple, checkStrictly } = config.value\n const leafOnly = !checkStrictly\n\n if (\n !initialLoaded ||\n manualChecked ||\n (!forced && isEqual(modelValue, checkedValue.value))\n )\n return\n\n if (lazy && !loaded) {\n const values: CascaderNodeValue[] = deduplicate(\n arrayFlat(coerceTruthyValueToArray(modelValue))\n )\n const nodes = values\n .map((val) => store?.getNodeByValue(val))\n .filter((node) => !!node && !node.loaded && !node.loading) as Node[]\n\n if (nodes.length) {\n nodes.forEach((node) => {\n lazyLoad(node, () => syncCheckedValue(false, forced))\n })\n } else {\n syncCheckedValue(true, forced)\n }\n } else {\n const values = multiple\n ? coerceTruthyValueToArray(modelValue)\n : [modelValue]\n const nodes = deduplicate(\n values.map((val) => store?.getNodeByValue(val, leafOnly))\n ) as Node[]\n syncMenuState(nodes, false)\n checkedValue.value = modelValue!\n }\n }\n\n const syncMenuState = (\n newCheckedNodes: CascaderNode[],\n reserveExpandingState = true\n ) => {\n const { checkStrictly } = config.value\n const oldNodes = checkedNodes.value\n const newNodes = newCheckedNodes.filter(\n (node) => !!node && (checkStrictly || node.isLeaf)\n )\n const oldExpandingNode = store?.getSameNode(expandingNode.value!)\n const newExpandingNode =\n (reserveExpandingState && oldExpandingNode) || newNodes[0]\n\n if (newExpandingNode) {\n newExpandingNode.pathNodes.forEach((node) => expandNode(node, true))\n } else {\n expandingNode.value = null\n }\n\n oldNodes.forEach((node) => node.doCheck(false))\n newNodes.forEach((node) => node.doCheck(true))\n\n checkedNodes.value = newNodes\n nextTick(scrollToExpandingNode)\n }\n\n const scrollToExpandingNode = () => {\n if (!isClient) return\n\n menuList.value.forEach((menu) => {\n const menuElement = menu?.$el\n if (menuElement) {\n const container = menuElement.querySelector('.el-scrollbar__wrap')\n const activeNode =\n menuElement.querySelector('.el-cascader-node.is-active') ||\n menuElement.querySelector('.el-cascader-node.in-active-path')\n scrollIntoView(container, activeNode)\n }\n })\n }\n\n const handleKeyDown = (e: KeyboardEvent) => {\n const target = e.target as HTMLElement\n const { code } = e\n\n switch (code) {\n case EVENT_CODE.up:\n case EVENT_CODE.down: {\n const distance = code === EVENT_CODE.up ? -1 : 1\n focusNode(\n getSibling(target, distance, '.el-cascader-node[tabindex=\"-1\"]')\n )\n break\n }\n case EVENT_CODE.left: {\n const preMenu = menuList.value[getMenuIndex(target) - 1]\n const expandedNode = preMenu?.$el.querySelector(\n '.el-cascader-node[aria-expanded=\"true\"]'\n )\n focusNode(expandedNode)\n break\n }\n case EVENT_CODE.right: {\n const nextMenu = menuList.value[getMenuIndex(target) + 1]\n const firstNode = nextMenu?.$el.querySelector(\n '.el-cascader-node[tabindex=\"-1\"]'\n )\n focusNode(firstNode)\n break\n }\n case EVENT_CODE.enter:\n checkNode(target)\n break\n case EVENT_CODE.esc:\n case EVENT_CODE.tab:\n emit('close')\n break\n }\n }\n\n provide(\n CASCADER_PANEL_INJECTION_KEY,\n reactive({\n config,\n expandingNode,\n checkedNodes,\n isHoverMenu,\n renderLabelFn,\n lazyLoad,\n expandNode,\n handleCheckChange,\n })\n )\n\n watch([config, () => props.options], initStore, {\n deep: true,\n immediate: true,\n })\n\n watch(\n () => props.modelValue,\n () => {\n manualChecked = false\n syncCheckedValue()\n }\n )\n\n watch(checkedValue, (val) => {\n if (!isEqual(val, props.modelValue)) {\n emit(UPDATE_MODEL_EVENT, val)\n emit(CHANGE_EVENT, val)\n }\n })\n\n onBeforeUpdate(() => (menuList.value = []))\n\n onMounted(() => !isEmpty(props.modelValue) && syncCheckedValue())\n\n return {\n menuList,\n menus,\n checkedNodes,\n handleKeyDown,\n handleCheckChange,\n getFlattedNodes,\n getCheckedNodes,\n clearCheckedNodes,\n calculateCheckedValue,\n scrollToExpandingNode,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;wBACE;;;;;;QAMK,GAAG,EAAE,KAAK;;QACV;aACK,EAAE;QACP;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"menu.vue_vue_type_script_lang.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=\"el-cascader-menu\"\n wrap-class=\"el-cascader-menu__wrap\"\n :view-class=\"['el-cascader-menu__list', isEmpty && 'is-empty']\"\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=\"isEmpty\" class=\"el-cascader-menu__empty-text\">\n {{ t('el.cascader.noData') }}\n </div>\n <svg\n v-else-if=\"panel?.isHoverMenu\"\n ref=\"hoverZone\"\n class=\"el-cascader-menu__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 { useLocale } from '@element-plus/hooks'\nimport { generateId } from '@element-plus/utils/util'\nimport ElCascaderNode from './node.vue'\nimport { CASCADER_PANEL_INJECTION_KEY } from './types'\nimport type { default as CascaderNode } from './node'\n\nimport type { PropType } from 'vue'\nimport type { TimeoutHandle, Nullable } from '@element-plus/utils/types'\n\nexport default defineComponent({\n name: 'ElCascaderMenu',\n\n components: {\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 { t } = useLocale()\n const id = generateId()\n let activeNode: Nullable<HTMLElement> = null\n let hoverTimer: Nullable<TimeoutHandle> = 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 menuId = computed(() => `cascader-menu-${id}-${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\n return {\n panel,\n hoverZone,\n isEmpty,\n menuId,\n t,\n handleExpand,\n handleMouseMove,\n clearHoverZone,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElScrollbar","ElCascaderNode","getCurrentInstance","useLocale","generateId","inject","CASCADER_PANEL_INJECTION_KEY","ref","computed"],"mappings":";;;;;;;;;;;;;AAyCA,aAAeA,oBAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,iBACVC;AAAA,oBACAC;AAAA;AAAA,EAGF,OAAO;AAAA,IACL,OAAO;AAAA,MACL,MAAM;AAAA,MACN,UAAU;AAAA;AAAA,IAEZ,OAAO;AAAA,MACL,MAAM;AAAA,MACN,UAAU;AAAA;AAAA;AAAA,EAId,MAAM,OAAO;AACX,UAAM,WAAWC;AACjB,UAAM,EAAE,MAAMC;AACd,UAAM,KAAKC;AACX,QAAI,aAAoC;AACxC,QAAI,aAAsC;AAE1C,UAAM,QAAQC,WAAOC;AAErB,UAAM,YAAYC,QAA0B;AAE5C,UAAM,UAAUC,aAAS,MAAM,CAAC,MAAM,MAAM;AAC5C,UAAM,SAASA,aAAS,MAAM,iBAAiB,MAAM,MAAM;AAE3D,UAAM,eAAe,CAAC,MAAkB;AACtC,mBAAa,EAAE;AAAA;AAGjB,UAAM,kBAAkB,CAAC,MAAkB;AACzC,UAAI,CAAC,MAAM,eAAe,CAAC,cAAc,CAAC,UAAU;AAAO;AAE3D,UAAI,WAAW,SAAS,EAAE,SAAwB;AAChD;AAEA,cAAM,KAAK,SAAS,MAAM;AAC1B,cAAM,EAAE,SAAS,GAAG;AACpB,cAAM,EAAE,aAAa,iBAAiB;AACtC,cAAM,SAAS,EAAE,UAAU;AAC3B,cAAM,MAAM,WAAW;AACvB,cAAM,SAAS,MAAM,WAAW;AAEhC,kBAAU,MAAM,YAAY;AAAA,uEACmC,UAAU,QAAQ,kBAAkB;AAAA,uEACpC,UAAU,WAAW,eAAe,iBAAiB;AAAA;AAAA,iBAE3G,CAAC,YAAY;AACtB,qBAAa,OAAO,WAClB,gBACA,MAAM,OAAO;AAAA;AAAA;AAKnB,UAAM,kBAAkB,MAAM;AAC5B,UAAI,CAAC;AAAY;AACjB,mBAAa;AACb,mBAAa;AAAA;AAGf,UAAM,iBAAiB,MAAM;AAC3B,UAAI,CAAC,UAAU;AAAO;AACtB,gBAAU,MAAM,YAAY;AAC5B;AAAA;AAGF,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"menu.vue_vue_type_script_lang.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=\"el-cascader-menu\"\n wrap-class=\"el-cascader-menu__wrap\"\n :view-class=\"['el-cascader-menu__list', isEmpty && 'is-empty']\"\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=\"isEmpty\" class=\"el-cascader-menu__empty-text\">\n {{ t('el.cascader.noData') }}\n </div>\n <svg\n v-else-if=\"panel?.isHoverMenu\"\n ref=\"hoverZone\"\n class=\"el-cascader-menu__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 { useLocale } from '@element-plus/hooks'\nimport { generateId } from '@element-plus/utils/util'\nimport ElCascaderNode from './node.vue'\nimport { CASCADER_PANEL_INJECTION_KEY } from './types'\nimport type { default as CascaderNode } from './node'\n\nimport type { PropType } from 'vue'\nimport type { TimeoutHandle, Nullable } from '@element-plus/utils/types'\n\nexport default defineComponent({\n name: 'ElCascaderMenu',\n\n components: {\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 { t } = useLocale()\n const id = generateId()\n let activeNode: Nullable<HTMLElement> = null\n let hoverTimer: Nullable<TimeoutHandle> = 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 menuId = computed(() => `cascader-menu-${id}-${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\n return {\n panel,\n hoverZone,\n isEmpty,\n menuId,\n t,\n handleExpand,\n handleMouseMove,\n clearHoverZone,\n }\n },\n})\n</script>\n"],"names":["defineComponent","ElScrollbar","ElCascaderNode"],"mappings":";;;;;;;;;;;;;AAmCA,aAAeA,mBAAe,CAAC;AAC/B,EAAE,MAAM;;AAER,iBAAIC,iBAAW;AACf,oBAAIC,wCAAc;;AAElB,EAAE,KAAK,EAAE;IACL,KAAK,EAAE;;MAEL,QAAQ;KACT;IACD,KAAK,EAAE;;;KAGN;;OAEE,CAAC,KAAK,EAAE;UACL,QAAQ;IACd;IACA;QACI,UAAU;QACV,UAAU;IACd;;;IAGA,MAAM;IACN,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK;MAC1B,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;KACvB,CAAC;IACF,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK;MAC7B,IAAI,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,cAAc,CAAC;;MAE1C,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE;;QAEjC,MAAM,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;;QAE7B,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC;;QAEhC,MAAM,MAAM,GAAG,GAAG,GAAG,UAAU;QAC/B,SAAS,MAAM,CAAC,SAAS,GAAG,CAAC;;;QAG7B,EAAE;OACH,MAAM,IAAI,CAAC,YAAY;;OAEvB;;;UAGG,CAAC,UAAU;QACb;kBACU,CAAC,UAAU,CAAC,CAAC;gBACf,GAAG,IAAI,CAAC;;UAEd,cAAc,GAAG,MAAM;;QAEzB,OAAO;gBACC,KAAK,CAAC,SAAS,GAAG,EAAE,CAAC;qBAChB,EAAE,CAAC;;WAEb;WACA;eACI;aACF;;MAEP;;;MAGA,cAAc;MACd;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"menu.vue_vue_type_template_id_9c79e4e2_lang.js","sources":["../../../../../../packages/components/cascader-panel/src/menu.vue?vue&type=template&id=9c79e4e2&lang.js"],"sourcesContent":["<template>\n <el-scrollbar\n :key=\"menuId\"\n tag=\"ul\"\n role=\"menu\"\n class=\"el-cascader-menu\"\n wrap-class=\"el-cascader-menu__wrap\"\n :view-class=\"['el-cascader-menu__list', isEmpty && 'is-empty']\"\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=\"isEmpty\" class=\"el-cascader-menu__empty-text\">\n {{ t('el.cascader.noData') }}\n </div>\n <svg\n v-else-if=\"panel?.isHoverMenu\"\n ref=\"hoverZone\"\n class=\"el-cascader-menu__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 { useLocale } from '@element-plus/hooks'\nimport { generateId } from '@element-plus/utils/util'\nimport ElCascaderNode from './node.vue'\nimport { CASCADER_PANEL_INJECTION_KEY } from './types'\nimport type { default as CascaderNode } from './node'\n\nimport type { PropType } from 'vue'\nimport type { TimeoutHandle, Nullable } from '@element-plus/utils/types'\n\nexport default defineComponent({\n name: 'ElCascaderMenu',\n\n components: {\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 { t } = useLocale()\n const id = generateId()\n let activeNode: Nullable<HTMLElement> = null\n let hoverTimer: Nullable<TimeoutHandle> = 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 menuId = computed(() => `cascader-menu-${id}-${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\n return {\n panel,\n hoverZone,\n isEmpty,\n menuId,\n t,\n handleExpand,\n handleMouseMove,\n clearHoverZone,\n }\n },\n})\n</script>\n"],"names":["_createBlock","_createElementBlock"],"mappings":";;;;;;;;EAkBwB,OAAM;AAAA;;;EAKxB,KAAI;AAAA,EACJ,OAAM;AAAA;;;;0BAvBVA;IACG,KAAK;IACN,KAAI;AAAA,IACJ,MAAK;AAAA,IACL,OAAM;AAAA,IACN,cAAW;AAAA,IACV,yCAAuC;IACvC,aAAW;IACX,cAAY;;yBAGX;;;8BADFC,0DACiB,aAAR;kCADTD;YAEG,KAAK,KAAK;AAAA,YACV;AAAA,YACA,WAAS;YACT,UAAQ;;;QAEA,iCAAXC,8BAAA,gCACK,qCAGQ,sBAAA,mBAAO,iCADpBA,8BAAA;;;;;;;;;"}
1
+ {"version":3,"file":"menu.vue_vue_type_template_id_9c79e4e2_lang.js","sources":["../../../../../../packages/components/cascader-panel/src/menu.vue?vue&type=template&id=9c79e4e2&lang.js"],"sourcesContent":["<template>\n <el-scrollbar\n :key=\"menuId\"\n tag=\"ul\"\n role=\"menu\"\n class=\"el-cascader-menu\"\n wrap-class=\"el-cascader-menu__wrap\"\n :view-class=\"['el-cascader-menu__list', isEmpty && 'is-empty']\"\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=\"isEmpty\" class=\"el-cascader-menu__empty-text\">\n {{ t('el.cascader.noData') }}\n </div>\n <svg\n v-else-if=\"panel?.isHoverMenu\"\n ref=\"hoverZone\"\n class=\"el-cascader-menu__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 { useLocale } from '@element-plus/hooks'\nimport { generateId } from '@element-plus/utils/util'\nimport ElCascaderNode from './node.vue'\nimport { CASCADER_PANEL_INJECTION_KEY } from './types'\nimport type { default as CascaderNode } from './node'\n\nimport type { PropType } from 'vue'\nimport type { TimeoutHandle, Nullable } from '@element-plus/utils/types'\n\nexport default defineComponent({\n name: 'ElCascaderMenu',\n\n components: {\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 { t } = useLocale()\n const id = generateId()\n let activeNode: Nullable<HTMLElement> = null\n let hoverTimer: Nullable<TimeoutHandle> = 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 menuId = computed(() => `cascader-menu-${id}-${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\n return {\n panel,\n hoverZone,\n isEmpty,\n menuId,\n t,\n handleExpand,\n handleMouseMove,\n clearHoverZone,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;EAkBwB;;;;EAKlB,KAAI;EACJ;;;;;;;;IAtBD,KAAK;IACN;IACA;IACA;IACA,YAAU,EAAC;;IAEV;;;;;;;;;oBAQU;;;OAEA;;;sDAGX;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"node-content.js","sources":["../../../../../../packages/components/cascader-panel/src/node-content.ts"],"sourcesContent":["import { defineComponent, h } from 'vue'\n\nexport default defineComponent({\n name: 'NodeContent',\n render() {\n const { node, panel } = this.$parent\n const { data, label } = node\n const { renderLabelFn } = panel\n return h(\n 'span',\n { class: 'el-cascader-node__label' },\n renderLabelFn ? renderLabelFn({ node, data }) : label\n )\n },\n})\n"],"names":["defineComponent","h"],"mappings":";;;;;;AAEA,kBAAeA,oBAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,SAAS;AACP,UAAM,EAAE,MAAM,UAAU,KAAK;AAC7B,UAAM,EAAE,MAAM,UAAU;AACxB,UAAM,EAAE,kBAAkB;AAC1B,WAAOC,MACL,QACA,EAAE,OAAO,6BACT,gBAAgB,cAAc,EAAE,MAAM,UAAU;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"node-content.js","sources":["../../../../../../packages/components/cascader-panel/src/node-content.ts"],"sourcesContent":["import { defineComponent, h } from 'vue'\n\nexport default defineComponent({\n name: 'NodeContent',\n render() {\n const { node, panel } = this.$parent\n const { data, label } = node\n const { renderLabelFn } = panel\n return h(\n 'span',\n { class: 'el-cascader-node__label' },\n renderLabelFn ? renderLabelFn({ node, data }) : label\n )\n },\n})\n"],"names":["defineComponent","h"],"mappings":";;;;;;AACA,kBAAeA,mBAAe,CAAC;AAC/B,EAAE,IAAI,EAAE,aAAa;AACrB,EAAE,MAAM,GAAG;AACX,IAAI,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;AACzC,IAAI,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;AACjC,IAAI,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC;AACpC,IAAI,OAAOC,KAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,aAAa,GAAG,aAAa,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC;AAClH,GAAG;AACH,CAAC,CAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sources":["../../../../../../packages/components/cascader-panel/src/node.ts"],"sourcesContent":["import { isFunction } from '@vue/shared'\nimport { capitalize, isUndefined, isEmpty } from '@element-plus/utils/util'\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 enum ExpandTrigger {\n CLICK = 'click',\n HOVER = 'hover',\n}\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 checked = false\n indeterminate = false\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.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","capitalize"],"mappings":"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"}
1
+ {"version":3,"file":"node.js","sources":["../../../../../../packages/components/cascader-panel/src/node.ts"],"sourcesContent":["import { isFunction } from '@vue/shared'\nimport { capitalize, isUndefined, isEmpty } from '@element-plus/utils/util'\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 enum ExpandTrigger {\n CLICK = 'click',\n HOVER = 'hover',\n}\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 checked = false\n indeterminate = false\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.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","capitalize"],"mappings":"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"}