element-plus 1.2.0-beta.4 → 1.2.0-beta.5

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 (491) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +1149 -988
  3. package/dist/index.full.min.js +9 -9
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +9 -9
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +1145 -982
  8. package/es/components/autocomplete/src/index.vue_vue_type_script_lang.mjs +1 -1
  9. package/es/components/calendar/index.d.ts +2 -2
  10. package/es/components/calendar/src/date-table.vue_vue_type_script_lang.mjs +2 -2
  11. package/es/components/calendar/src/date-table.vue_vue_type_script_lang.mjs.map +1 -1
  12. package/es/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.mjs.map +1 -1
  13. package/es/components/calendar/src/index.vue.d.ts +1 -1
  14. package/es/components/calendar/src/index.vue_vue_type_script_lang.mjs +2 -2
  15. package/es/components/calendar/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  16. package/es/components/calendar/src/index.vue_vue_type_template_id_819aa44a_lang.mjs.map +1 -1
  17. package/es/components/carousel/src/item.vue_vue_type_script_lang.mjs +0 -1
  18. package/es/components/carousel/src/item.vue_vue_type_script_lang.mjs.map +1 -1
  19. package/es/components/carousel/src/item.vue_vue_type_template_id_3d2e4fb8_lang.mjs.map +1 -1
  20. package/es/components/cascader/src/index.vue_vue_type_script_lang.mjs +2 -2
  21. package/es/components/cascader/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  22. package/es/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.mjs.map +1 -1
  23. package/es/components/cascader-panel/src/index.vue_vue_type_script_lang.mjs +13 -18
  24. package/es/components/cascader-panel/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  25. package/es/components/cascader-panel/src/index.vue_vue_type_template_id_97c48f5c_lang.mjs.map +1 -1
  26. package/es/components/cascader-panel/src/menu.vue.d.ts +1 -1
  27. package/es/components/cascader-panel/src/menu.vue_vue_type_script_lang.mjs +2 -2
  28. package/es/components/cascader-panel/src/menu.vue_vue_type_script_lang.mjs.map +1 -1
  29. package/es/components/cascader-panel/src/menu.vue_vue_type_template_id_9c79e4e2_lang.mjs.map +1 -1
  30. package/es/components/color-picker/index.d.ts +2 -2
  31. package/es/components/color-picker/src/index.vue.d.ts +1 -1
  32. package/es/components/color-picker/src/index.vue_vue_type_script_lang.mjs +2 -2
  33. package/es/components/color-picker/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  34. package/es/components/color-picker/src/index.vue_vue_type_template_id_46a474d5_lang.mjs.map +1 -1
  35. package/es/components/config-provider/index.d.ts +2 -1
  36. package/es/components/config-provider/index.mjs +1 -0
  37. package/es/components/config-provider/index.mjs.map +1 -1
  38. package/es/components/config-provider/src/config-provider.d.ts +1 -1
  39. package/es/components/config-provider/src/index.d.ts +1 -1
  40. package/es/components/config-provider/src/index.mjs +2 -2
  41. package/es/components/config-provider/src/index.mjs.map +1 -1
  42. package/es/components/date-picker/src/date-picker-com/basic-date-table.vue.d.ts +1 -1
  43. package/es/components/date-picker/src/date-picker-com/basic-date-table.vue_vue_type_script_lang.mjs +2 -2
  44. package/es/components/date-picker/src/date-picker-com/basic-date-table.vue_vue_type_script_lang.mjs.map +1 -1
  45. package/es/components/date-picker/src/date-picker-com/basic-date-table.vue_vue_type_template_id_0572814e_lang.mjs.map +1 -1
  46. package/es/components/date-picker/src/date-picker-com/basic-month-table.vue.d.ts +1 -1
  47. package/es/components/date-picker/src/date-picker-com/basic-month-table.vue_vue_type_script_lang.mjs +2 -2
  48. package/es/components/date-picker/src/date-picker-com/basic-month-table.vue_vue_type_script_lang.mjs.map +1 -1
  49. package/es/components/date-picker/src/date-picker-com/basic-month-table.vue_vue_type_template_id_2f6fcbf2_lang.mjs.map +1 -1
  50. package/es/components/date-picker/src/date-picker-com/basic-year-table.vue_vue_type_script_lang.mjs +2 -2
  51. package/es/components/date-picker/src/date-picker-com/basic-year-table.vue_vue_type_script_lang.mjs.map +1 -1
  52. package/es/components/date-picker/src/date-picker-com/basic-year-table.vue_vue_type_template_id_441df31d_lang.mjs.map +1 -1
  53. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +1 -1
  54. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.mjs +2 -2
  55. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.mjs.map +1 -1
  56. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_template_id_78e07aa7_lang.mjs.map +1 -1
  57. package/es/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +1 -1
  58. package/es/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_script_lang.mjs +2 -2
  59. package/es/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_script_lang.mjs.map +1 -1
  60. package/es/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_template_id_62b45ab2_lang.mjs.map +1 -1
  61. package/es/components/date-picker/src/date-picker-com/panel-month-range.vue.d.ts +1 -1
  62. package/es/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.mjs +2 -2
  63. package/es/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.mjs.map +1 -1
  64. package/es/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_template_id_2e377892_lang.mjs.map +1 -1
  65. package/es/components/dialog/src/use-dialog.mjs +4 -4
  66. package/es/components/dialog/src/use-dialog.mjs.map +1 -1
  67. package/es/components/dropdown/index.d.ts +1 -1
  68. package/es/components/dropdown/src/dropdown.vue.d.ts +1 -1
  69. package/es/components/empty/src/empty.vue_vue_type_script_lang.mjs +2 -2
  70. package/es/components/empty/src/empty.vue_vue_type_script_lang.mjs.map +1 -1
  71. package/es/components/empty/src/empty.vue_vue_type_template_id_10d211eb_lang.mjs.map +1 -1
  72. package/es/components/image/index.d.ts +1 -1
  73. package/es/components/image/src/image.vue.d.ts +1 -1
  74. package/es/components/image/src/image.vue_vue_type_script_lang.mjs +3 -3
  75. package/es/components/image/src/image.vue_vue_type_script_lang.mjs.map +1 -1
  76. package/es/components/image/src/image.vue_vue_type_template_id_34467287_lang.mjs.map +1 -1
  77. package/es/components/image-viewer/src/image-viewer.vue_vue_type_script_lang.mjs +2 -2
  78. package/es/components/image-viewer/src/image-viewer.vue_vue_type_script_lang.mjs.map +1 -1
  79. package/es/components/image-viewer/src/image-viewer.vue_vue_type_template_id_4b22ad85_lang.mjs.map +1 -1
  80. package/es/components/index.mjs +1 -0
  81. package/es/components/index.mjs.map +1 -1
  82. package/es/components/input/src/input.vue_vue_type_script_lang.mjs +1 -1
  83. package/es/components/menu/src/menu-collapse-transition.vue_vue_type_script_lang.mjs +1 -2
  84. package/es/components/menu/src/menu-collapse-transition.vue_vue_type_script_lang.mjs.map +1 -1
  85. package/es/components/menu/src/menu-collapse-transition.vue_vue_type_template_id_db8e3ce6_lang.mjs.map +1 -1
  86. package/es/components/message-box/src/index.vue_vue_type_script_lang.mjs +8 -8
  87. package/es/components/message-box/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  88. package/es/components/message-box/src/index.vue_vue_type_template_id_7035e868_lang.mjs +2 -0
  89. package/es/components/message-box/src/index.vue_vue_type_template_id_7035e868_lang.mjs.map +1 -1
  90. package/es/components/page-header/index.d.ts +1 -1
  91. package/es/components/page-header/src/page-header.vue.d.ts +1 -1
  92. package/es/components/page-header/src/page-header.vue_vue_type_script_lang.mjs +2 -2
  93. package/es/components/page-header/src/page-header.vue_vue_type_script_lang.mjs.map +1 -1
  94. package/es/components/page-header/src/page-header.vue_vue_type_template_id_d12fb4b2_lang.mjs.map +1 -1
  95. package/es/components/pagination/src/components/jumper.vue.d.ts +1 -1
  96. package/es/components/pagination/src/components/jumper.vue_vue_type_script_lang.mjs +2 -2
  97. package/es/components/pagination/src/components/jumper.vue_vue_type_script_lang.mjs.map +1 -1
  98. package/es/components/pagination/src/components/jumper.vue_vue_type_template_id_772239ce_lang.mjs.map +1 -1
  99. package/es/components/pagination/src/components/sizes.vue.d.ts +1 -1
  100. package/es/components/pagination/src/components/sizes.vue_vue_type_script_lang.mjs +2 -2
  101. package/es/components/pagination/src/components/sizes.vue_vue_type_script_lang.mjs.map +1 -1
  102. package/es/components/pagination/src/components/sizes.vue_vue_type_template_id_3a063678_lang.mjs.map +1 -1
  103. package/es/components/pagination/src/components/total.vue.d.ts +1 -1
  104. package/es/components/pagination/src/components/total.vue_vue_type_script_lang.mjs +2 -2
  105. package/es/components/pagination/src/components/total.vue_vue_type_script_lang.mjs.map +1 -1
  106. package/es/components/pagination/src/components/total.vue_vue_type_template_id_bc261314_lang.mjs.map +1 -1
  107. package/es/components/pagination/src/pagination.mjs +2 -2
  108. package/es/components/pagination/src/pagination.mjs.map +1 -1
  109. package/es/components/popconfirm/src/popconfirm.vue_vue_type_script_lang.mjs +2 -2
  110. package/es/components/popconfirm/src/popconfirm.vue_vue_type_script_lang.mjs.map +1 -1
  111. package/es/components/popconfirm/src/popconfirm.vue_vue_type_template_id_16409d25_lang.mjs.map +1 -1
  112. package/es/components/popper/src/use-popper/defaults.mjs +1 -1
  113. package/es/components/popper/src/use-popper/index.d.ts +1 -1538
  114. package/es/components/scrollbar/src/scrollbar.vue_vue_type_script_lang.mjs +1 -1
  115. package/es/components/scrollbar/src/scrollbar.vue_vue_type_script_lang.mjs.map +1 -1
  116. package/es/components/scrollbar/src/scrollbar.vue_vue_type_template_id_303f965d_lang.mjs.map +1 -1
  117. package/es/components/select/src/select.vue_vue_type_script_lang.mjs +3 -3
  118. package/es/components/select/src/select.vue_vue_type_script_lang.mjs.map +1 -1
  119. package/es/components/select/src/select.vue_vue_type_template_id_33774f85_lang.mjs.map +1 -1
  120. package/es/components/select/src/useSelect.mjs +3 -3
  121. package/es/components/select/src/useSelect.mjs.map +1 -1
  122. package/es/components/select-v2/index.d.ts +2 -2
  123. package/es/components/select-v2/src/select.vue.d.ts +1 -1
  124. package/es/components/select-v2/src/useSelect.mjs +2 -2
  125. package/es/components/select-v2/src/useSelect.mjs.map +1 -1
  126. package/es/components/skeleton/src/skeleton.vue_vue_type_script_lang.mjs +1 -1
  127. package/es/components/table/index.d.ts +1 -1
  128. package/es/components/table/src/filter-panel.vue.d.ts +2 -2
  129. package/es/components/table/src/filter-panel.vue_vue_type_script_lang.mjs +2 -2
  130. package/es/components/table/src/filter-panel.vue_vue_type_script_lang.mjs.map +1 -1
  131. package/es/components/table/src/filter-panel.vue_vue_type_template_id_fde1c940_lang.mjs.map +1 -1
  132. package/es/components/table/src/table-body/index.d.ts +1 -1
  133. package/es/components/table/src/table-footer/index.d.ts +1 -1
  134. package/es/components/table/src/table-header/index.d.ts +1 -1
  135. package/es/components/table/src/table.vue.d.ts +5 -13
  136. package/es/components/table/src/table.vue_vue_type_script_lang.mjs +2 -2
  137. package/es/components/table/src/table.vue_vue_type_script_lang.mjs.map +1 -1
  138. package/es/components/table/src/table.vue_vue_type_template_id_4a1660ad_lang.mjs.map +1 -1
  139. package/es/components/time-picker/src/common/picker.vue_vue_type_script_lang.mjs +2 -2
  140. package/es/components/time-picker/src/common/picker.vue_vue_type_script_lang.mjs.map +1 -1
  141. package/es/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.mjs.map +1 -1
  142. package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +1 -1
  143. package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue_vue_type_script_lang.mjs +2 -2
  144. package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue_vue_type_script_lang.mjs.map +1 -1
  145. package/es/components/time-picker/src/time-picker-com/panel-time-pick.vue_vue_type_template_id_3b3cfa6a_lang.mjs.map +1 -1
  146. package/es/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +1 -1
  147. package/es/components/time-picker/src/time-picker-com/panel-time-range.vue_vue_type_script_lang.mjs +2 -2
  148. package/es/components/time-picker/src/time-picker-com/panel-time-range.vue_vue_type_script_lang.mjs.map +1 -1
  149. package/es/components/time-picker/src/time-picker-com/panel-time-range.vue_vue_type_template_id_57d94b44_lang.mjs.map +1 -1
  150. package/es/components/transfer/src/index.vue_vue_type_script_lang.mjs +2 -2
  151. package/es/components/transfer/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  152. package/es/components/transfer/src/index.vue_vue_type_template_id_6c8b9070_lang.mjs.map +1 -1
  153. package/es/components/transfer/src/transfer-panel.vue.d.ts +1 -1
  154. package/es/components/transfer/src/transfer-panel.vue_vue_type_script_lang.mjs +2 -2
  155. package/es/components/transfer/src/transfer-panel.vue_vue_type_script_lang.mjs.map +1 -1
  156. package/es/components/transfer/src/transfer-panel.vue_vue_type_template_id_1a7d1f9c_lang.mjs.map +1 -1
  157. package/es/components/tree/index.d.ts +2 -2
  158. package/es/components/tree/src/tree.vue.d.ts +1 -1
  159. package/es/components/tree/src/tree.vue_vue_type_script_lang.mjs +2 -2
  160. package/es/components/tree/src/tree.vue_vue_type_script_lang.mjs.map +1 -1
  161. package/es/components/tree/src/tree.vue_vue_type_template_id_7539bec5_lang.mjs.map +1 -1
  162. package/es/components/tree-v2/index.d.ts +1 -1
  163. package/es/components/tree-v2/src/tree.vue.d.ts +1 -1
  164. package/es/components/tree-v2/src/tree.vue_vue_type_script_lang.mjs +2 -2
  165. package/es/components/tree-v2/src/tree.vue_vue_type_script_lang.mjs.map +1 -1
  166. package/es/components/tree-v2/src/tree.vue_vue_type_template_id_5b45a1b2_lang.mjs.map +1 -1
  167. package/es/components/tree-v2/src/virtual-tree.mjs +4 -4
  168. package/es/components/upload/src/upload-list.vue.d.ts +1 -1
  169. package/es/components/upload/src/upload-list.vue_vue_type_script_lang.mjs +2 -2
  170. package/es/components/upload/src/upload-list.vue_vue_type_script_lang.mjs.map +1 -1
  171. package/es/components/upload/src/upload-list.vue_vue_type_template_id_192277b6_lang.mjs.map +1 -1
  172. package/es/hooks/index.d.ts +12 -15
  173. package/es/hooks/index.mjs +12 -15
  174. package/es/hooks/index.mjs.map +1 -1
  175. package/es/hooks/use-attrs/index.d.ts +2 -2
  176. package/es/hooks/use-attrs/index.mjs +2 -2
  177. package/es/hooks/use-attrs/index.mjs.map +1 -1
  178. package/es/hooks/use-focus/index.d.ts +1 -2
  179. package/es/hooks/use-focus/index.mjs +2 -2
  180. package/es/hooks/use-focus/index.mjs.map +1 -1
  181. package/es/hooks/use-form-item/index.d.ts +1 -1
  182. package/es/hooks/use-form-item/index.mjs +3 -3
  183. package/es/hooks/use-form-item/index.mjs.map +1 -1
  184. package/es/hooks/use-global-config/index.d.ts +1 -1
  185. package/es/hooks/use-global-config/index.mjs +1 -3
  186. package/es/hooks/use-global-config/index.mjs.map +1 -1
  187. package/es/hooks/use-locale/index.d.ts +9 -7
  188. package/es/hooks/use-locale/index.mjs +18 -51
  189. package/es/hooks/use-locale/index.mjs.map +1 -1
  190. package/es/hooks/use-lockscreen/index.d.ts +1 -2
  191. package/es/hooks/use-lockscreen/index.mjs +19 -21
  192. package/es/hooks/use-lockscreen/index.mjs.map +1 -1
  193. package/es/hooks/use-modal/index.d.ts +3 -3
  194. package/es/hooks/use-modal/index.mjs +6 -8
  195. package/es/hooks/use-modal/index.mjs.map +1 -1
  196. package/es/hooks/use-model-toggle/index.d.ts +3 -5
  197. package/es/hooks/use-model-toggle/index.mjs +9 -6
  198. package/es/hooks/use-model-toggle/index.mjs.map +1 -1
  199. package/es/hooks/use-popper/index.mjs +2 -2
  200. package/es/hooks/use-popper/index.mjs.map +1 -1
  201. package/es/hooks/use-prevent-global/index.d.ts +1 -2
  202. package/es/hooks/use-prevent-global/index.mjs +7 -7
  203. package/es/hooks/use-prevent-global/index.mjs.map +1 -1
  204. package/es/hooks/use-restore-active/index.d.ts +1 -2
  205. package/es/hooks/use-restore-active/index.mjs +2 -2
  206. package/es/hooks/use-restore-active/index.mjs.map +1 -1
  207. package/es/hooks/use-teleport/index.d.ts +1 -2
  208. package/es/hooks/use-teleport/index.mjs +4 -4
  209. package/es/hooks/use-teleport/index.mjs.map +1 -1
  210. package/es/hooks/use-throttle-render/index.d.ts +1 -1
  211. package/es/hooks/use-throttle-render/index.mjs +3 -3
  212. package/es/hooks/use-throttle-render/index.mjs.map +1 -1
  213. package/es/hooks/use-timeout/index.d.ts +2 -2
  214. package/es/hooks/use-timeout/index.mjs +10 -12
  215. package/es/hooks/use-timeout/index.mjs.map +1 -1
  216. package/es/hooks/use-transition-fallthrough/index.d.ts +1 -1
  217. package/es/hooks/use-transition-fallthrough/index.mjs.map +1 -1
  218. package/es/index.mjs +13 -15
  219. package/es/index.mjs.map +1 -1
  220. package/es/make-installer.mjs +2 -2
  221. package/es/make-installer.mjs.map +1 -1
  222. package/es/tokens/config-provider.d.ts +3 -3
  223. package/es/tokens/config-provider.mjs.map +1 -1
  224. package/es/utils/types.d.ts +25 -0
  225. package/es/version.d.ts +1 -1
  226. package/es/version.mjs +1 -1
  227. package/es/version.mjs.map +1 -1
  228. package/lib/components/autocomplete/src/index.vue_vue_type_script_lang.js +1 -1
  229. package/lib/components/calendar/index.d.ts +2 -2
  230. package/lib/components/calendar/src/date-table.vue_vue_type_script_lang.js +1 -1
  231. package/lib/components/calendar/src/date-table.vue_vue_type_script_lang.js.map +1 -1
  232. package/lib/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.js.map +1 -1
  233. package/lib/components/calendar/src/index.vue.d.ts +1 -1
  234. package/lib/components/calendar/src/index.vue_vue_type_script_lang.js +1 -1
  235. package/lib/components/calendar/src/index.vue_vue_type_script_lang.js.map +1 -1
  236. package/lib/components/calendar/src/index.vue_vue_type_template_id_819aa44a_lang.js.map +1 -1
  237. package/lib/components/carousel/src/item.vue_vue_type_script_lang.js +0 -1
  238. package/lib/components/carousel/src/item.vue_vue_type_script_lang.js.map +1 -1
  239. package/lib/components/carousel/src/item.vue_vue_type_template_id_3d2e4fb8_lang.js.map +1 -1
  240. package/lib/components/cascader/src/index.vue_vue_type_script_lang.js +1 -1
  241. package/lib/components/cascader/src/index.vue_vue_type_script_lang.js.map +1 -1
  242. package/lib/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.js.map +1 -1
  243. package/lib/components/cascader-panel/src/index.vue_vue_type_script_lang.js +13 -18
  244. package/lib/components/cascader-panel/src/index.vue_vue_type_script_lang.js.map +1 -1
  245. package/lib/components/cascader-panel/src/index.vue_vue_type_template_id_97c48f5c_lang.js.map +1 -1
  246. package/lib/components/cascader-panel/src/menu.vue.d.ts +1 -1
  247. package/lib/components/cascader-panel/src/menu.vue_vue_type_script_lang.js +1 -1
  248. package/lib/components/cascader-panel/src/menu.vue_vue_type_script_lang.js.map +1 -1
  249. package/lib/components/cascader-panel/src/menu.vue_vue_type_template_id_9c79e4e2_lang.js.map +1 -1
  250. package/lib/components/color-picker/index.d.ts +2 -2
  251. package/lib/components/color-picker/src/index.vue.d.ts +1 -1
  252. package/lib/components/color-picker/src/index.vue_vue_type_script_lang.js +1 -1
  253. package/lib/components/color-picker/src/index.vue_vue_type_script_lang.js.map +1 -1
  254. package/lib/components/color-picker/src/index.vue_vue_type_template_id_46a474d5_lang.js.map +1 -1
  255. package/lib/components/config-provider/index.d.ts +2 -1
  256. package/lib/components/config-provider/index.js +2 -0
  257. package/lib/components/config-provider/index.js.map +1 -1
  258. package/lib/components/config-provider/src/config-provider.d.ts +1 -1
  259. package/lib/components/config-provider/src/index.d.ts +1 -1
  260. package/lib/components/config-provider/src/index.js +1 -1
  261. package/lib/components/config-provider/src/index.js.map +1 -1
  262. package/lib/components/date-picker/src/date-picker-com/basic-date-table.vue.d.ts +1 -1
  263. package/lib/components/date-picker/src/date-picker-com/basic-date-table.vue_vue_type_script_lang.js +1 -1
  264. package/lib/components/date-picker/src/date-picker-com/basic-date-table.vue_vue_type_script_lang.js.map +1 -1
  265. package/lib/components/date-picker/src/date-picker-com/basic-date-table.vue_vue_type_template_id_0572814e_lang.js.map +1 -1
  266. package/lib/components/date-picker/src/date-picker-com/basic-month-table.vue.d.ts +1 -1
  267. package/lib/components/date-picker/src/date-picker-com/basic-month-table.vue_vue_type_script_lang.js +1 -1
  268. package/lib/components/date-picker/src/date-picker-com/basic-month-table.vue_vue_type_script_lang.js.map +1 -1
  269. package/lib/components/date-picker/src/date-picker-com/basic-month-table.vue_vue_type_template_id_2f6fcbf2_lang.js.map +1 -1
  270. package/lib/components/date-picker/src/date-picker-com/basic-year-table.vue_vue_type_script_lang.js +1 -1
  271. package/lib/components/date-picker/src/date-picker-com/basic-year-table.vue_vue_type_script_lang.js.map +1 -1
  272. package/lib/components/date-picker/src/date-picker-com/basic-year-table.vue_vue_type_template_id_441df31d_lang.js.map +1 -1
  273. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +1 -1
  274. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.js +1 -1
  275. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.js.map +1 -1
  276. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_template_id_78e07aa7_lang.js.map +1 -1
  277. package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +1 -1
  278. package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_script_lang.js +1 -1
  279. package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_script_lang.js.map +1 -1
  280. package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue_vue_type_template_id_62b45ab2_lang.js.map +1 -1
  281. package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue.d.ts +1 -1
  282. package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.js +1 -1
  283. package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_script_lang.js.map +1 -1
  284. package/lib/components/date-picker/src/date-picker-com/panel-month-range.vue_vue_type_template_id_2e377892_lang.js.map +1 -1
  285. package/lib/components/dialog/src/use-dialog.js +3 -3
  286. package/lib/components/dialog/src/use-dialog.js.map +1 -1
  287. package/lib/components/dropdown/index.d.ts +1 -1
  288. package/lib/components/dropdown/src/dropdown.vue.d.ts +1 -1
  289. package/lib/components/empty/src/empty.vue_vue_type_script_lang.js +1 -1
  290. package/lib/components/empty/src/empty.vue_vue_type_script_lang.js.map +1 -1
  291. package/lib/components/empty/src/empty.vue_vue_type_template_id_10d211eb_lang.js.map +1 -1
  292. package/lib/components/image/index.d.ts +1 -1
  293. package/lib/components/image/src/image.vue.d.ts +1 -1
  294. package/lib/components/image/src/image.vue_vue_type_script_lang.js +2 -2
  295. package/lib/components/image/src/image.vue_vue_type_script_lang.js.map +1 -1
  296. package/lib/components/image/src/image.vue_vue_type_template_id_34467287_lang.js.map +1 -1
  297. package/lib/components/image-viewer/src/image-viewer.vue_vue_type_script_lang.js +1 -1
  298. package/lib/components/image-viewer/src/image-viewer.vue_vue_type_script_lang.js.map +1 -1
  299. package/lib/components/image-viewer/src/image-viewer.vue_vue_type_template_id_4b22ad85_lang.js.map +1 -1
  300. package/lib/components/index.js +2 -0
  301. package/lib/components/index.js.map +1 -1
  302. package/lib/components/input/src/input.vue_vue_type_script_lang.js +1 -1
  303. package/lib/components/menu/src/menu-collapse-transition.vue_vue_type_script_lang.js +1 -2
  304. package/lib/components/menu/src/menu-collapse-transition.vue_vue_type_script_lang.js.map +1 -1
  305. package/lib/components/menu/src/menu-collapse-transition.vue_vue_type_template_id_db8e3ce6_lang.js.map +1 -1
  306. package/lib/components/message-box/src/index.vue_vue_type_script_lang.js +6 -6
  307. package/lib/components/message-box/src/index.vue_vue_type_script_lang.js.map +1 -1
  308. package/lib/components/message-box/src/index.vue_vue_type_template_id_7035e868_lang.js +2 -0
  309. package/lib/components/message-box/src/index.vue_vue_type_template_id_7035e868_lang.js.map +1 -1
  310. package/lib/components/page-header/index.d.ts +1 -1
  311. package/lib/components/page-header/src/page-header.vue.d.ts +1 -1
  312. package/lib/components/page-header/src/page-header.vue_vue_type_script_lang.js +1 -1
  313. package/lib/components/page-header/src/page-header.vue_vue_type_script_lang.js.map +1 -1
  314. package/lib/components/page-header/src/page-header.vue_vue_type_template_id_d12fb4b2_lang.js.map +1 -1
  315. package/lib/components/pagination/src/components/jumper.vue.d.ts +1 -1
  316. package/lib/components/pagination/src/components/jumper.vue_vue_type_script_lang.js +1 -1
  317. package/lib/components/pagination/src/components/jumper.vue_vue_type_script_lang.js.map +1 -1
  318. package/lib/components/pagination/src/components/jumper.vue_vue_type_template_id_772239ce_lang.js.map +1 -1
  319. package/lib/components/pagination/src/components/sizes.vue.d.ts +1 -1
  320. package/lib/components/pagination/src/components/sizes.vue_vue_type_script_lang.js +1 -1
  321. package/lib/components/pagination/src/components/sizes.vue_vue_type_script_lang.js.map +1 -1
  322. package/lib/components/pagination/src/components/sizes.vue_vue_type_template_id_3a063678_lang.js.map +1 -1
  323. package/lib/components/pagination/src/components/total.vue.d.ts +1 -1
  324. package/lib/components/pagination/src/components/total.vue_vue_type_script_lang.js +1 -1
  325. package/lib/components/pagination/src/components/total.vue_vue_type_script_lang.js.map +1 -1
  326. package/lib/components/pagination/src/components/total.vue_vue_type_template_id_bc261314_lang.js.map +1 -1
  327. package/lib/components/pagination/src/pagination.js +1 -1
  328. package/lib/components/pagination/src/pagination.js.map +1 -1
  329. package/lib/components/popconfirm/src/popconfirm.vue_vue_type_script_lang.js +1 -1
  330. package/lib/components/popconfirm/src/popconfirm.vue_vue_type_script_lang.js.map +1 -1
  331. package/lib/components/popconfirm/src/popconfirm.vue_vue_type_template_id_16409d25_lang.js.map +1 -1
  332. package/lib/components/popper/src/use-popper/defaults.js +1 -1
  333. package/lib/components/popper/src/use-popper/index.d.ts +1 -1538
  334. package/lib/components/scrollbar/src/scrollbar.vue_vue_type_script_lang.js +1 -1
  335. package/lib/components/scrollbar/src/scrollbar.vue_vue_type_script_lang.js.map +1 -1
  336. package/lib/components/scrollbar/src/scrollbar.vue_vue_type_template_id_303f965d_lang.js.map +1 -1
  337. package/lib/components/select/src/select.vue_vue_type_script_lang.js +2 -2
  338. package/lib/components/select/src/select.vue_vue_type_script_lang.js.map +1 -1
  339. package/lib/components/select/src/select.vue_vue_type_template_id_33774f85_lang.js.map +1 -1
  340. package/lib/components/select/src/useSelect.js +2 -2
  341. package/lib/components/select/src/useSelect.js.map +1 -1
  342. package/lib/components/select-v2/index.d.ts +2 -2
  343. package/lib/components/select-v2/src/select.vue.d.ts +1 -1
  344. package/lib/components/select-v2/src/useSelect.js +1 -1
  345. package/lib/components/select-v2/src/useSelect.js.map +1 -1
  346. package/lib/components/skeleton/src/skeleton.vue_vue_type_script_lang.js +1 -1
  347. package/lib/components/skeleton/src/skeleton.vue_vue_type_script_lang.js.map +1 -1
  348. package/lib/components/table/index.d.ts +1 -1
  349. package/lib/components/table/src/filter-panel.vue.d.ts +2 -2
  350. package/lib/components/table/src/filter-panel.vue_vue_type_script_lang.js +1 -1
  351. package/lib/components/table/src/filter-panel.vue_vue_type_script_lang.js.map +1 -1
  352. package/lib/components/table/src/filter-panel.vue_vue_type_template_id_fde1c940_lang.js.map +1 -1
  353. package/lib/components/table/src/table-body/index.d.ts +1 -1
  354. package/lib/components/table/src/table-footer/index.d.ts +1 -1
  355. package/lib/components/table/src/table-header/index.d.ts +1 -1
  356. package/lib/components/table/src/table.vue.d.ts +5 -13
  357. package/lib/components/table/src/table.vue_vue_type_script_lang.js +1 -1
  358. package/lib/components/table/src/table.vue_vue_type_script_lang.js.map +1 -1
  359. package/lib/components/table/src/table.vue_vue_type_template_id_4a1660ad_lang.js.map +1 -1
  360. package/lib/components/time-picker/src/common/picker.vue_vue_type_script_lang.js +1 -1
  361. package/lib/components/time-picker/src/common/picker.vue_vue_type_script_lang.js.map +1 -1
  362. package/lib/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.js.map +1 -1
  363. package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +1 -1
  364. package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue_vue_type_script_lang.js +1 -1
  365. package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue_vue_type_script_lang.js.map +1 -1
  366. package/lib/components/time-picker/src/time-picker-com/panel-time-pick.vue_vue_type_template_id_3b3cfa6a_lang.js.map +1 -1
  367. package/lib/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +1 -1
  368. package/lib/components/time-picker/src/time-picker-com/panel-time-range.vue_vue_type_script_lang.js +1 -1
  369. package/lib/components/time-picker/src/time-picker-com/panel-time-range.vue_vue_type_script_lang.js.map +1 -1
  370. package/lib/components/time-picker/src/time-picker-com/panel-time-range.vue_vue_type_template_id_57d94b44_lang.js.map +1 -1
  371. package/lib/components/transfer/src/index.vue_vue_type_script_lang.js +1 -1
  372. package/lib/components/transfer/src/index.vue_vue_type_script_lang.js.map +1 -1
  373. package/lib/components/transfer/src/index.vue_vue_type_template_id_6c8b9070_lang.js.map +1 -1
  374. package/lib/components/transfer/src/transfer-panel.vue.d.ts +1 -1
  375. package/lib/components/transfer/src/transfer-panel.vue_vue_type_script_lang.js +1 -1
  376. package/lib/components/transfer/src/transfer-panel.vue_vue_type_script_lang.js.map +1 -1
  377. package/lib/components/transfer/src/transfer-panel.vue_vue_type_template_id_1a7d1f9c_lang.js.map +1 -1
  378. package/lib/components/tree/index.d.ts +2 -2
  379. package/lib/components/tree/src/tree.vue.d.ts +1 -1
  380. package/lib/components/tree/src/tree.vue_vue_type_script_lang.js +1 -1
  381. package/lib/components/tree/src/tree.vue_vue_type_script_lang.js.map +1 -1
  382. package/lib/components/tree/src/tree.vue_vue_type_template_id_7539bec5_lang.js.map +1 -1
  383. package/lib/components/tree-v2/index.d.ts +1 -1
  384. package/lib/components/tree-v2/src/tree.vue.d.ts +1 -1
  385. package/lib/components/tree-v2/src/tree.vue_vue_type_script_lang.js +1 -1
  386. package/lib/components/tree-v2/src/tree.vue_vue_type_script_lang.js.map +1 -1
  387. package/lib/components/tree-v2/src/tree.vue_vue_type_template_id_5b45a1b2_lang.js.map +1 -1
  388. package/lib/components/tree-v2/src/virtual-tree.js +4 -4
  389. package/lib/components/upload/src/upload-list.vue.d.ts +1 -1
  390. package/lib/components/upload/src/upload-list.vue_vue_type_script_lang.js +1 -1
  391. package/lib/components/upload/src/upload-list.vue_vue_type_script_lang.js.map +1 -1
  392. package/lib/components/upload/src/upload-list.vue_vue_type_template_id_192277b6_lang.js.map +1 -1
  393. package/lib/hooks/index.d.ts +12 -15
  394. package/lib/hooks/index.js +42 -48
  395. package/lib/hooks/index.js.map +1 -1
  396. package/lib/hooks/use-attrs/index.d.ts +2 -2
  397. package/lib/hooks/use-attrs/index.js +2 -2
  398. package/lib/hooks/use-attrs/index.js.map +1 -1
  399. package/lib/hooks/use-focus/index.d.ts +1 -2
  400. package/lib/hooks/use-focus/index.js +2 -2
  401. package/lib/hooks/use-focus/index.js.map +1 -1
  402. package/lib/hooks/use-form-item/index.d.ts +1 -1
  403. package/lib/hooks/use-form-item/index.js +2 -2
  404. package/lib/hooks/use-form-item/index.js.map +1 -1
  405. package/lib/hooks/use-global-config/index.d.ts +1 -1
  406. package/lib/hooks/use-global-config/index.js +1 -3
  407. package/lib/hooks/use-global-config/index.js.map +1 -1
  408. package/lib/hooks/use-locale/index.d.ts +9 -7
  409. package/lib/hooks/use-locale/index.js +23 -50
  410. package/lib/hooks/use-locale/index.js.map +1 -1
  411. package/lib/hooks/use-lockscreen/index.d.ts +1 -2
  412. package/lib/hooks/use-lockscreen/index.js +18 -20
  413. package/lib/hooks/use-lockscreen/index.js.map +1 -1
  414. package/lib/hooks/use-modal/index.d.ts +3 -3
  415. package/lib/hooks/use-modal/index.js +6 -8
  416. package/lib/hooks/use-modal/index.js.map +1 -1
  417. package/lib/hooks/use-model-toggle/index.d.ts +3 -5
  418. package/lib/hooks/use-model-toggle/index.js +9 -6
  419. package/lib/hooks/use-model-toggle/index.js.map +1 -1
  420. package/lib/hooks/use-popper/index.js +2 -2
  421. package/lib/hooks/use-popper/index.js.map +1 -1
  422. package/lib/hooks/use-prevent-global/index.d.ts +1 -2
  423. package/lib/hooks/use-prevent-global/index.js +7 -7
  424. package/lib/hooks/use-prevent-global/index.js.map +1 -1
  425. package/lib/hooks/use-restore-active/index.d.ts +1 -2
  426. package/lib/hooks/use-restore-active/index.js +2 -2
  427. package/lib/hooks/use-restore-active/index.js.map +1 -1
  428. package/lib/hooks/use-teleport/index.d.ts +1 -2
  429. package/lib/hooks/use-teleport/index.js +4 -4
  430. package/lib/hooks/use-teleport/index.js.map +1 -1
  431. package/lib/hooks/use-throttle-render/index.d.ts +1 -1
  432. package/lib/hooks/use-throttle-render/index.js +3 -3
  433. package/lib/hooks/use-throttle-render/index.js.map +1 -1
  434. package/lib/hooks/use-timeout/index.d.ts +2 -2
  435. package/lib/hooks/use-timeout/index.js +10 -12
  436. package/lib/hooks/use-timeout/index.js.map +1 -1
  437. package/lib/hooks/use-transition-fallthrough/index.d.ts +1 -1
  438. package/lib/hooks/use-transition-fallthrough/index.js.map +1 -1
  439. package/lib/index.js +46 -50
  440. package/lib/index.js.map +1 -1
  441. package/lib/make-installer.js +1 -1
  442. package/lib/make-installer.js.map +1 -1
  443. package/lib/tokens/config-provider.d.ts +3 -3
  444. package/lib/tokens/config-provider.js.map +1 -1
  445. package/lib/utils/types.d.ts +25 -0
  446. package/lib/version.d.ts +1 -1
  447. package/lib/version.js +1 -1
  448. package/lib/version.js.map +1 -1
  449. package/package.json +2 -2
  450. package/theme-chalk/el-dropdown.css +1 -1
  451. package/theme-chalk/el-input.css +1 -1
  452. package/theme-chalk/el-tag.css +1 -1
  453. package/theme-chalk/index.css +1 -1
  454. package/theme-chalk/src/dropdown.scss +2 -0
  455. package/theme-chalk/src/input.scss +4 -0
  456. package/theme-chalk/src/tag.scss +4 -1
  457. package/web-types.json +1 -1
  458. package/es/components/cascader/index.d.ts +0 -8748
  459. package/es/components/cascader/src/index.vue.d.ts +0 -4380
  460. package/es/components/message-box/src/index.vue.d.ts +0 -1838
  461. package/es/components/popper/index.d.ts +0 -3476
  462. package/es/components/popper/src/index.vue.d.ts +0 -1735
  463. package/es/hooks/use-css-var/index.d.ts +0 -36
  464. package/es/hooks/use-css-var/index.mjs +0 -45
  465. package/es/hooks/use-css-var/index.mjs.map +0 -1
  466. package/es/hooks/use-events/index.d.ts +0 -7
  467. package/es/hooks/use-events/index.mjs +0 -19
  468. package/es/hooks/use-events/index.mjs.map +0 -1
  469. package/es/hooks/use-migrating/index.d.ts +0 -7
  470. package/es/hooks/use-migrating/index.mjs +0 -35
  471. package/es/hooks/use-migrating/index.mjs.map +0 -1
  472. package/es/hooks/use-transition/index.d.ts +0 -13
  473. package/es/hooks/use-transition/index.mjs +0 -25
  474. package/es/hooks/use-transition/index.mjs.map +0 -1
  475. package/lib/components/cascader/index.d.ts +0 -8748
  476. package/lib/components/cascader/src/index.vue.d.ts +0 -4380
  477. package/lib/components/message-box/src/index.vue.d.ts +0 -1838
  478. package/lib/components/popper/index.d.ts +0 -3476
  479. package/lib/components/popper/src/index.vue.d.ts +0 -1735
  480. package/lib/hooks/use-css-var/index.d.ts +0 -36
  481. package/lib/hooks/use-css-var/index.js +0 -51
  482. package/lib/hooks/use-css-var/index.js.map +0 -1
  483. package/lib/hooks/use-events/index.d.ts +0 -7
  484. package/lib/hooks/use-events/index.js +0 -23
  485. package/lib/hooks/use-events/index.js.map +0 -1
  486. package/lib/hooks/use-migrating/index.d.ts +0 -7
  487. package/lib/hooks/use-migrating/index.js +0 -39
  488. package/lib/hooks/use-migrating/index.js.map +0 -1
  489. package/lib/hooks/use-transition/index.d.ts +0 -13
  490. package/lib/hooks/use-transition/index.js +0 -30
  491. package/lib/hooks/use-transition/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-popper/index.ts"],"sourcesContent":["import {\n cloneVNode,\n computed,\n Fragment,\n getCurrentInstance,\n h,\n nextTick,\n toDisplayString,\n toRef,\n Transition,\n ref,\n renderSlot,\n withDirectives,\n} from 'vue'\nimport { NOOP } from '@vue/shared'\nimport { createPopper } from '@popperjs/core'\nimport { ClickOutside } from '@element-plus/directives'\nimport {\n generateId,\n isHTMLElement,\n isString,\n refAttacher,\n} from '@element-plus/utils/util'\nimport { getFirstValidNode } from '@element-plus/utils/vnode'\nimport { stop } from '@element-plus/utils/dom'\nimport PopupManager from '@element-plus/utils/popup-manager'\nimport { throwError } from '@element-plus/utils/error'\n\nimport useTeleport from '../use-teleport'\nimport useTimeout from '../use-timeout'\nimport { useModelToggle } from '../use-model-toggle'\nimport { useTransitionFallthrough } from '../use-transition-fallthrough'\nimport { defaultPopperOptions, defaultModifiers } from './use-popper-options'\nimport { useTargetEvents, DEFAULT_TRIGGER } from './use-target-events'\n\nimport type {\n CSSProperties,\n ComponentPublicInstance,\n ExtractPropTypes,\n PropType,\n} from 'vue'\nimport type {\n Instance as PopperInstance,\n StrictModifiers,\n} from '@popperjs/core'\nimport type { RefElement, Nullable } from '@element-plus/utils/types'\nimport type { Trigger } from './use-target-events'\n\nexport type PopperEffect = 'light' | 'dark'\nexport type Offset = [number, number] | number\n\ntype ElementType = ComponentPublicInstance | HTMLElement\n\nexport const DARK_EFFECT = 'dark'\nexport const LIGHT_EFFECT = 'light'\n\nexport const usePopperControlProps = {\n appendToBody: {\n type: Boolean,\n default: true,\n },\n arrowOffset: {\n type: Number,\n },\n popperOptions: defaultPopperOptions,\n popperClass: {\n type: String,\n default: '',\n },\n}\n\nexport const usePopperProps = {\n ...usePopperControlProps,\n // the arrow size is an equailateral triangle with 10px side length, the 3rd side length ~ 14.1px\n // adding a offset to the ceil of 4.1 should be 5 this resolves the problem of arrow overflowing out of popper.\n autoClose: {\n type: Number,\n default: 0,\n },\n content: {\n type: String,\n default: '',\n },\n class: String,\n style: Object,\n hideAfter: {\n type: Number,\n default: 200,\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n effect: {\n type: String as PropType<PopperEffect>,\n default: DARK_EFFECT,\n },\n enterable: {\n type: Boolean,\n default: true,\n },\n manualMode: {\n type: Boolean,\n default: false,\n },\n showAfter: {\n type: Number,\n default: 0,\n },\n pure: {\n type: Boolean,\n default: false,\n },\n showArrow: {\n type: Boolean,\n default: true,\n },\n transition: {\n type: String,\n default: 'el-fade-in-linear',\n },\n trigger: {\n type: [String, Array] as PropType<Trigger>,\n default: DEFAULT_TRIGGER,\n },\n visible: {\n type: Boolean,\n default: undefined,\n },\n stopPopperMouseEvent: {\n type: Boolean,\n default: true,\n },\n}\n\nexport const usePopperHook = () => {\n const vm = getCurrentInstance()!\n const props: ExtractPropTypes<typeof usePopperProps> = vm.proxy?.$props as any\n const { slots } = vm\n\n const arrowRef = ref<RefElement>(null)\n const triggerRef = ref<ElementType>(null)\n const popperRef = ref<RefElement>(null)\n\n const popperStyle = ref<CSSProperties>({ zIndex: PopupManager.nextZIndex() })\n const visible = ref(false)\n const isManual = computed(\n () => props.manualMode || props.trigger === 'manual'\n )\n\n const popperId = `el-popper-${generateId()}`\n let popperInstance: Nullable<PopperInstance> = null\n\n const { renderTeleport, showTeleport, hideTeleport } = useTeleport(\n popupRenderer,\n toRef(props, 'appendToBody')\n )\n\n const { show, hide } = useModelToggle({\n indicator: visible,\n onShow,\n onHide,\n })\n\n const { registerTimeout, cancelTimeout } = useTimeout()\n\n // event handlers\n\n function onShow() {\n popperStyle.value.zIndex = PopupManager.nextZIndex()\n nextTick(initializePopper)\n }\n\n function onHide() {\n hideTeleport()\n nextTick(detachPopper)\n }\n\n /**\n * The calling mechanism here is:\n * when the visibility gets changed, let's say we change it to true\n * the delayShow gets called which initializes a global root node for the popper content\n * to insert in, then it register a timer for calling the show method, which changes the flag to\n * true, then calls onShow method.\n * So the order of invocation is: delayedShow -> timer(show) -> set the indicator to true -> onShow\n */\n\n function delayShow() {\n if (isManual.value || props.disabled) return\n // renders out the teleport element root.\n showTeleport()\n registerTimeout(show, props.showAfter)\n }\n\n function delayHide() {\n if (isManual.value) return\n registerTimeout(hide, props.hideAfter)\n }\n\n function onToggle() {\n if (visible.value) {\n delayShow()\n } else {\n delayHide()\n }\n }\n\n function detachPopper() {\n popperInstance?.destroy?.()\n popperInstance = null\n }\n\n function onPopperMouseEnter() {\n // if trigger is click, user won't be able to close popper when\n // user tries to move the mouse over popper contents\n if (props.enterable && props.trigger !== 'click') {\n cancelTimeout()\n }\n }\n\n function onPopperMouseLeave() {\n const { trigger } = props\n const shouldPrevent =\n (isString(trigger) && (trigger === 'click' || trigger === 'focus')) ||\n // we'd like to test array type trigger here, but the only case we need to cover is trigger === 'click' or\n // trigger === 'focus', because that when trigger is string\n // trigger.length === 1 and trigger[0] === 5 chars string is mutually exclusive.\n // so there will be no need to test if trigger is array type.\n (trigger.length === 1 &&\n (trigger[0] === 'click' || trigger[0] === 'focus'))\n if (shouldPrevent) return\n delayHide()\n }\n\n function initializePopper() {\n if (!visible.value || popperInstance !== null) {\n return\n }\n const unwrappedTrigger = triggerRef.value\n const $el = isHTMLElement(unwrappedTrigger)\n ? unwrappedTrigger\n : (unwrappedTrigger as ComponentPublicInstance).$el\n\n popperInstance = createPopper($el, popperRef.value, buildPopperOptions())\n popperInstance.update()\n }\n\n function buildPopperOptions() {\n const modifiers = [...defaultModifiers, ...props.popperOptions.modifiers]\n\n if (props.showArrow) {\n modifiers.push({\n name: 'arrow',\n options: {\n padding: props.arrowOffset || 5,\n element: arrowRef.value,\n },\n } as StrictModifiers)\n }\n\n return {\n ...props.popperOptions,\n modifiers,\n }\n }\n\n const { onAfterEnter, onAfterLeave, onBeforeEnter, onBeforeLeave } =\n useTransitionFallthrough()\n\n const events = useTargetEvents(delayShow, delayHide, onToggle)\n\n const arrowRefAttacher = refAttacher(arrowRef)\n const popperRefAttacher = refAttacher(popperRef)\n const triggerRefAttacher = refAttacher(triggerRef)\n\n // renderers\n function popupRenderer() {\n const mouseUpAndDown = props.stopPopperMouseEvent ? stop : NOOP\n return h(\n Transition as any,\n {\n name: props.transition,\n onAfterEnter,\n onAfterLeave,\n onBeforeEnter,\n onBeforeLeave,\n },\n {\n default: () => () =>\n visible.value\n ? h(\n 'div',\n {\n 'aria-hidden': false,\n class: [\n props.popperClass,\n 'el-popper',\n `is-${props.effect}`,\n props.pure ? 'is-pure' : '',\n ],\n style: popperStyle.value,\n id: popperId,\n ref: popperRefAttacher,\n role: 'tooltip',\n onMouseenter: onPopperMouseEnter,\n onMouseleave: onPopperMouseLeave,\n onClick: stop,\n onMousedown: mouseUpAndDown,\n onMouseup: mouseUpAndDown,\n },\n [\n renderSlot(slots, 'default', {}, () => [\n toDisplayString(props.content),\n ]),\n arrowRenderer(),\n ]\n )\n : null,\n }\n )\n }\n\n function arrowRenderer() {\n return props.showArrow\n ? h(\n 'div',\n {\n ref: arrowRefAttacher,\n class: 'el-popper__arrow',\n 'data-popper-arrow': '',\n },\n null\n )\n : null\n }\n\n function triggerRenderer(triggerProps) {\n const trigger = slots.trigger?.()\n const firstElement = getFirstValidNode(trigger, 1)\n if (!firstElement)\n throwError('renderTrigger', 'trigger expects single rooted node')\n return cloneVNode(firstElement, triggerProps, true)\n }\n\n function render() {\n const trigger = triggerRenderer({\n 'aria-describedby': popperId,\n class: props.class,\n style: props.style,\n ref: triggerRefAttacher,\n ...events,\n })\n return h(Fragment, null, [\n isManual.value\n ? trigger\n : withDirectives(trigger, [[ClickOutside, delayHide]]),\n renderTeleport(),\n ])\n }\n\n return {\n render,\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-popper/index.ts"],"sourcesContent":["import {\n cloneVNode,\n computed,\n Fragment,\n getCurrentInstance,\n h,\n nextTick,\n toDisplayString,\n toRef,\n Transition,\n ref,\n renderSlot,\n withDirectives,\n} from 'vue'\nimport { NOOP } from '@vue/shared'\nimport { createPopper } from '@popperjs/core'\nimport { ClickOutside } from '@element-plus/directives'\nimport {\n generateId,\n isHTMLElement,\n isString,\n refAttacher,\n} from '@element-plus/utils/util'\nimport { getFirstValidNode } from '@element-plus/utils/vnode'\nimport { stop } from '@element-plus/utils/dom'\nimport PopupManager from '@element-plus/utils/popup-manager'\nimport { throwError } from '@element-plus/utils/error'\n\nimport { useTeleport } from '../use-teleport'\nimport { useTimeout } from '../use-timeout'\nimport { useModelToggle } from '../use-model-toggle'\nimport { useTransitionFallthrough } from '../use-transition-fallthrough'\nimport { defaultPopperOptions, defaultModifiers } from './use-popper-options'\nimport { useTargetEvents, DEFAULT_TRIGGER } from './use-target-events'\n\nimport type {\n CSSProperties,\n ComponentPublicInstance,\n ExtractPropTypes,\n PropType,\n} from 'vue'\nimport type {\n Instance as PopperInstance,\n StrictModifiers,\n} from '@popperjs/core'\nimport type { RefElement, Nullable } from '@element-plus/utils/types'\nimport type { Trigger } from './use-target-events'\n\nexport type PopperEffect = 'light' | 'dark'\nexport type Offset = [number, number] | number\n\ntype ElementType = ComponentPublicInstance | HTMLElement\n\nexport const DARK_EFFECT = 'dark'\nexport const LIGHT_EFFECT = 'light'\n\nexport const usePopperControlProps = {\n appendToBody: {\n type: Boolean,\n default: true,\n },\n arrowOffset: {\n type: Number,\n },\n popperOptions: defaultPopperOptions,\n popperClass: {\n type: String,\n default: '',\n },\n}\n\nexport const usePopperProps = {\n ...usePopperControlProps,\n // the arrow size is an equailateral triangle with 10px side length, the 3rd side length ~ 14.1px\n // adding a offset to the ceil of 4.1 should be 5 this resolves the problem of arrow overflowing out of popper.\n autoClose: {\n type: Number,\n default: 0,\n },\n content: {\n type: String,\n default: '',\n },\n class: String,\n style: Object,\n hideAfter: {\n type: Number,\n default: 200,\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n effect: {\n type: String as PropType<PopperEffect>,\n default: DARK_EFFECT,\n },\n enterable: {\n type: Boolean,\n default: true,\n },\n manualMode: {\n type: Boolean,\n default: false,\n },\n showAfter: {\n type: Number,\n default: 0,\n },\n pure: {\n type: Boolean,\n default: false,\n },\n showArrow: {\n type: Boolean,\n default: true,\n },\n transition: {\n type: String,\n default: 'el-fade-in-linear',\n },\n trigger: {\n type: [String, Array] as PropType<Trigger>,\n default: DEFAULT_TRIGGER,\n },\n visible: {\n type: Boolean,\n default: undefined,\n },\n stopPopperMouseEvent: {\n type: Boolean,\n default: true,\n },\n}\n\nexport const usePopperHook = () => {\n const vm = getCurrentInstance()!\n const props: ExtractPropTypes<typeof usePopperProps> = vm.proxy?.$props as any\n const { slots } = vm\n\n const arrowRef = ref<RefElement>(null)\n const triggerRef = ref<ElementType>(null)\n const popperRef = ref<RefElement>(null)\n\n const popperStyle = ref<CSSProperties>({ zIndex: PopupManager.nextZIndex() })\n const visible = ref(false)\n const isManual = computed(\n () => props.manualMode || props.trigger === 'manual'\n )\n\n const popperId = `el-popper-${generateId()}`\n let popperInstance: Nullable<PopperInstance> = null\n\n const { renderTeleport, showTeleport, hideTeleport } = useTeleport(\n popupRenderer,\n toRef(props, 'appendToBody')\n )\n\n const { show, hide } = useModelToggle({\n indicator: visible,\n onShow,\n onHide,\n })\n\n const { registerTimeout, cancelTimeout } = useTimeout()\n\n // event handlers\n\n function onShow() {\n popperStyle.value.zIndex = PopupManager.nextZIndex()\n nextTick(initializePopper)\n }\n\n function onHide() {\n hideTeleport()\n nextTick(detachPopper)\n }\n\n /**\n * The calling mechanism here is:\n * when the visibility gets changed, let's say we change it to true\n * the delayShow gets called which initializes a global root node for the popper content\n * to insert in, then it register a timer for calling the show method, which changes the flag to\n * true, then calls onShow method.\n * So the order of invocation is: delayedShow -> timer(show) -> set the indicator to true -> onShow\n */\n\n function delayShow() {\n if (isManual.value || props.disabled) return\n // renders out the teleport element root.\n showTeleport()\n registerTimeout(show, props.showAfter)\n }\n\n function delayHide() {\n if (isManual.value) return\n registerTimeout(hide, props.hideAfter)\n }\n\n function onToggle() {\n if (visible.value) {\n delayShow()\n } else {\n delayHide()\n }\n }\n\n function detachPopper() {\n popperInstance?.destroy?.()\n popperInstance = null\n }\n\n function onPopperMouseEnter() {\n // if trigger is click, user won't be able to close popper when\n // user tries to move the mouse over popper contents\n if (props.enterable && props.trigger !== 'click') {\n cancelTimeout()\n }\n }\n\n function onPopperMouseLeave() {\n const { trigger } = props\n const shouldPrevent =\n (isString(trigger) && (trigger === 'click' || trigger === 'focus')) ||\n // we'd like to test array type trigger here, but the only case we need to cover is trigger === 'click' or\n // trigger === 'focus', because that when trigger is string\n // trigger.length === 1 and trigger[0] === 5 chars string is mutually exclusive.\n // so there will be no need to test if trigger is array type.\n (trigger.length === 1 &&\n (trigger[0] === 'click' || trigger[0] === 'focus'))\n if (shouldPrevent) return\n delayHide()\n }\n\n function initializePopper() {\n if (!visible.value || popperInstance !== null) {\n return\n }\n const unwrappedTrigger = triggerRef.value\n const $el = isHTMLElement(unwrappedTrigger)\n ? unwrappedTrigger\n : (unwrappedTrigger as ComponentPublicInstance).$el\n\n popperInstance = createPopper($el, popperRef.value, buildPopperOptions())\n popperInstance.update()\n }\n\n function buildPopperOptions() {\n const modifiers = [...defaultModifiers, ...props.popperOptions.modifiers]\n\n if (props.showArrow) {\n modifiers.push({\n name: 'arrow',\n options: {\n padding: props.arrowOffset || 5,\n element: arrowRef.value,\n },\n } as StrictModifiers)\n }\n\n return {\n ...props.popperOptions,\n modifiers,\n }\n }\n\n const { onAfterEnter, onAfterLeave, onBeforeEnter, onBeforeLeave } =\n useTransitionFallthrough()\n\n const events = useTargetEvents(delayShow, delayHide, onToggle)\n\n const arrowRefAttacher = refAttacher(arrowRef)\n const popperRefAttacher = refAttacher(popperRef)\n const triggerRefAttacher = refAttacher(triggerRef)\n\n // renderers\n function popupRenderer() {\n const mouseUpAndDown = props.stopPopperMouseEvent ? stop : NOOP\n return h(\n Transition as any,\n {\n name: props.transition,\n onAfterEnter,\n onAfterLeave,\n onBeforeEnter,\n onBeforeLeave,\n },\n {\n default: () => () =>\n visible.value\n ? h(\n 'div',\n {\n 'aria-hidden': false,\n class: [\n props.popperClass,\n 'el-popper',\n `is-${props.effect}`,\n props.pure ? 'is-pure' : '',\n ],\n style: popperStyle.value,\n id: popperId,\n ref: popperRefAttacher,\n role: 'tooltip',\n onMouseenter: onPopperMouseEnter,\n onMouseleave: onPopperMouseLeave,\n onClick: stop,\n onMousedown: mouseUpAndDown,\n onMouseup: mouseUpAndDown,\n },\n [\n renderSlot(slots, 'default', {}, () => [\n toDisplayString(props.content),\n ]),\n arrowRenderer(),\n ]\n )\n : null,\n }\n )\n }\n\n function arrowRenderer() {\n return props.showArrow\n ? h(\n 'div',\n {\n ref: arrowRefAttacher,\n class: 'el-popper__arrow',\n 'data-popper-arrow': '',\n },\n null\n )\n : null\n }\n\n function triggerRenderer(triggerProps) {\n const trigger = slots.trigger?.()\n const firstElement = getFirstValidNode(trigger, 1)\n if (!firstElement)\n throwError('renderTrigger', 'trigger expects single rooted node')\n return cloneVNode(firstElement, triggerProps, true)\n }\n\n function render() {\n const trigger = triggerRenderer({\n 'aria-describedby': popperId,\n class: props.class,\n style: props.style,\n ref: triggerRefAttacher,\n ...events,\n })\n return h(Fragment, null, [\n isManual.value\n ? trigger\n : withDirectives(trigger, [[ClickOutside, delayHide]]),\n renderTeleport(),\n ])\n }\n\n return {\n render,\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,3 +1,2 @@
1
1
  import type { Ref } from 'vue';
2
- declare const _default: (indicator: Ref<boolean>, evt: string, cb: (e: Event) => boolean) => void;
3
- export default _default;
2
+ export declare const usePreventGlobal: <E extends keyof DocumentEventMap>(indicator: Ref<boolean>, evt: E, cb: (e: DocumentEventMap[E]) => boolean) => void;
@@ -1,20 +1,20 @@
1
1
  import { watch } from 'vue';
2
- import { on, off } from '../../utils/dom.mjs';
2
+ import { useEventListener } from '@vueuse/core';
3
3
 
4
- var usePreventGlobal = (indicator, evt, cb) => {
4
+ const usePreventGlobal = (indicator, evt, cb) => {
5
5
  const prevent = (e) => {
6
- if (cb(e)) {
6
+ if (cb(e))
7
7
  e.stopImmediatePropagation();
8
- }
9
8
  };
9
+ let stop = void 0;
10
10
  watch(() => indicator.value, (val) => {
11
11
  if (val) {
12
- on(document, evt, prevent, true);
12
+ stop = useEventListener(document, evt, prevent, true);
13
13
  } else {
14
- off(document, evt, prevent, true);
14
+ stop == null ? void 0 : stop();
15
15
  }
16
16
  }, { immediate: true });
17
17
  };
18
18
 
19
- export { usePreventGlobal as default };
19
+ export { usePreventGlobal };
20
20
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-prevent-global/index.ts"],"sourcesContent":["import { watch } from 'vue'\nimport { on, off } from '@element-plus/utils/dom'\n\nimport type { Ref } from 'vue'\n\nexport default (\n indicator: Ref<boolean>,\n evt: string,\n cb: (e: Event) => boolean\n) => {\n const prevent = (e: Event) => {\n if (cb(e)) {\n e.stopImmediatePropagation()\n }\n }\n watch(\n () => indicator.value,\n (val) => {\n if (val) {\n on(document, evt, prevent, true)\n } else {\n off(document, evt, prevent, true)\n }\n },\n { immediate: true }\n )\n}\n"],"names":[],"mappings":";;;AAKA,uBAAe,CACb,WACA,KACA,OACG;AACH,QAAM,UAAU,CAAC,MAAa;AAC5B,QAAI,GAAG,IAAI;AACT,QAAE;AAAA;AAAA;AAGN,QACE,MAAM,UAAU,OAChB,CAAC,QAAQ;AACP,QAAI,KAAK;AACP,SAAG,UAAU,KAAK,SAAS;AAAA,WACtB;AACL,UAAI,UAAU,KAAK,SAAS;AAAA;AAAA,KAGhC,EAAE,WAAW;AAAA;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-prevent-global/index.ts"],"sourcesContent":["import { watch } from 'vue'\nimport { useEventListener } from '@vueuse/core'\nimport type { Ref } from 'vue'\n\nexport const usePreventGlobal = <E extends keyof DocumentEventMap>(\n indicator: Ref<boolean>,\n evt: E,\n cb: (e: DocumentEventMap[E]) => boolean\n) => {\n const prevent = (e: DocumentEventMap[E]) => {\n if (cb(e)) e.stopImmediatePropagation()\n }\n let stop: (() => void) | undefined = undefined\n watch(\n () => indicator.value,\n (val) => {\n if (val) {\n stop = useEventListener(document, evt, prevent, true)\n } else {\n stop?.()\n }\n },\n { immediate: true }\n )\n}\n"],"names":[],"mappings":";;;MAIa,mBAAmB,CAC9B,WACA,KACA,OACG;AACH,QAAM,UAAU,CAAC,MAA2B;AAC1C,QAAI,GAAG;AAAI,QAAE;AAAA;AAEf,MAAI,OAAiC;AACrC,QACE,MAAM,UAAU,OAChB,CAAC,QAAQ;AACP,QAAI,KAAK;AACP,aAAO,iBAAiB,UAAU,KAAK,SAAS;AAAA,WAC3C;AACL;AAAA;AAAA,KAGJ,EAAE,WAAW;AAAA;;;;"}
@@ -1,7 +1,6 @@
1
1
  import type { Ref } from 'vue';
2
- declare const _default: (toggle: Ref<boolean>, initialFocus?: Ref<HTMLElement> | undefined) => void;
3
2
  /**
4
3
  * This method provides dialogable components the ability to restore previously activated element before
5
4
  * the dialog gets opened
6
5
  */
7
- export default _default;
6
+ export declare const useRestoreActive: (toggle: Ref<boolean>, initialFocus?: Ref<HTMLElement> | undefined) => void;
@@ -1,6 +1,6 @@
1
1
  import { watch, isRef } from 'vue';
2
2
 
3
- var useRestoreActive = (toggle, initialFocus) => {
3
+ const useRestoreActive = (toggle, initialFocus) => {
4
4
  let previousActive;
5
5
  watch(() => toggle.value, (val) => {
6
6
  var _a, _b;
@@ -19,5 +19,5 @@ var useRestoreActive = (toggle, initialFocus) => {
19
19
  });
20
20
  };
21
21
 
22
- export { useRestoreActive as default };
22
+ export { useRestoreActive };
23
23
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-restore-active/index.ts"],"sourcesContent":["import { isRef, watch } from 'vue'\nimport type { Ref } from 'vue'\n\n/**\n * This method provides dialogable components the ability to restore previously activated element before\n * the dialog gets opened\n */\nexport default (toggle: Ref<boolean>, initialFocus?: Ref<HTMLElement>) => {\n let previousActive: HTMLElement\n watch(\n () => toggle.value,\n (val) => {\n if (val) {\n previousActive = document.activeElement as HTMLElement\n if (isRef(initialFocus)) {\n initialFocus.value.focus?.()\n }\n } else {\n if (process.env.NODE_ENV === 'testing') {\n previousActive.focus.call(previousActive)\n } else {\n previousActive.focus()\n }\n }\n }\n )\n}\n"],"names":[],"mappings":";;AAOA,uBAAe,CAAC,QAAsB,iBAAoC;AACxE,MAAI;AACJ,QACE,MAAM,OAAO,OACb,CAAC,QAAQ;AAXb;AAYM,QAAI,KAAK;AACP,uBAAiB,SAAS;AAC1B,UAAI,MAAM,eAAe;AACvB,iCAAa,OAAM,UAAnB;AAAA;AAAA,WAEG;AACL,UAAI,QAAQ,IAAI,aAAa,WAAW;AACtC,uBAAe,MAAM,KAAK;AAAA,aACrB;AACL,uBAAe;AAAA;AAAA;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-restore-active/index.ts"],"sourcesContent":["import { isRef, watch } from 'vue'\nimport type { Ref } from 'vue'\n\n/**\n * This method provides dialogable components the ability to restore previously activated element before\n * the dialog gets opened\n */\nexport const useRestoreActive = (\n toggle: Ref<boolean>,\n initialFocus?: Ref<HTMLElement>\n) => {\n let previousActive: HTMLElement\n watch(\n () => toggle.value,\n (val) => {\n if (val) {\n previousActive = document.activeElement as HTMLElement\n if (isRef(initialFocus)) {\n initialFocus.value.focus?.()\n }\n } else {\n if (process.env.NODE_ENV === 'testing') {\n previousActive.focus.call(previousActive)\n } else {\n previousActive.focus()\n }\n }\n }\n )\n}\n"],"names":[],"mappings":";;MAOa,mBAAmB,CAC9B,QACA,iBACG;AACH,MAAI;AACJ,QACE,MAAM,OAAO,OACb,CAAC,QAAQ;AAdb;AAeM,QAAI,KAAK;AACP,uBAAiB,SAAS;AAC1B,UAAI,MAAM,eAAe;AACvB,iCAAa,OAAM,UAAnB;AAAA;AAAA,WAEG;AACL,UAAI,QAAQ,IAAI,aAAa,WAAW;AACtC,uBAAe,MAAM,KAAK;AAAA,aACrB;AACL,uBAAe;AAAA;AAAA;AAAA;AAAA;;;;"}
@@ -1,8 +1,7 @@
1
1
  import type { VNode, Ref } from 'vue';
2
- declare const _default: (contentRenderer: () => VNode, appendToBody: Ref<boolean>) => {
2
+ export declare const useTeleport: (contentRenderer: () => VNode, appendToBody: Ref<boolean>) => {
3
3
  isTeleportVisible: Ref<boolean>;
4
4
  showTeleport: () => void;
5
5
  hideTeleport: () => void;
6
6
  renderTeleport: () => void;
7
7
  };
8
- export default _default;
@@ -1,11 +1,11 @@
1
1
  import { ref, h, Teleport, onUnmounted } from 'vue';
2
2
  import { NOOP } from '@vue/shared';
3
- import isServer from '../../utils/isServer.mjs';
3
+ import { isClient } from '@vueuse/core';
4
4
  import { createGlobalNode, removeGlobalNode } from '../../utils/global-nodes.mjs';
5
5
 
6
- var useTeleport = (contentRenderer, appendToBody) => {
6
+ const useTeleport = (contentRenderer, appendToBody) => {
7
7
  const isTeleportVisible = ref(false);
8
- if (isServer) {
8
+ if (!isClient) {
9
9
  return {
10
10
  isTeleportVisible,
11
11
  showTeleport: NOOP,
@@ -39,5 +39,5 @@ var useTeleport = (contentRenderer, appendToBody) => {
39
39
  };
40
40
  };
41
41
 
42
- export { useTeleport as default };
42
+ export { useTeleport };
43
43
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-teleport/index.ts"],"sourcesContent":["import { h, ref, Teleport, onUnmounted } from 'vue'\nimport { NOOP } from '@vue/shared'\nimport isServer from '@element-plus/utils/isServer'\nimport {\n createGlobalNode,\n removeGlobalNode,\n} from '@element-plus/utils/global-nodes'\n\nimport type { VNode, Ref } from 'vue'\n\nexport default (contentRenderer: () => VNode, appendToBody: Ref<boolean>) => {\n const isTeleportVisible = ref(false)\n\n if (isServer) {\n return {\n isTeleportVisible,\n showTeleport: NOOP,\n hideTeleport: NOOP,\n renderTeleport: NOOP,\n }\n }\n\n let $el: HTMLElement | null = null\n\n const showTeleport = () => {\n isTeleportVisible.value = true\n // this allows the delayed showing strategy since the the content itself could be enterable\n // e.g. el-popper\n if ($el !== null) return\n\n $el = createGlobalNode()\n }\n\n const hideTeleport = () => {\n isTeleportVisible.value = false\n if ($el !== null) {\n removeGlobalNode($el)\n $el = null\n }\n }\n\n const renderTeleport = () => {\n return appendToBody.value !== true\n ? contentRenderer()\n : isTeleportVisible.value\n ? [h(Teleport, { to: $el }, contentRenderer())]\n : undefined\n }\n\n onUnmounted(hideTeleport)\n\n return {\n isTeleportVisible,\n showTeleport,\n hideTeleport,\n renderTeleport,\n }\n}\n"],"names":[],"mappings":";;;;;AAUA,kBAAe,CAAC,iBAA8B,iBAA+B;AAC3E,QAAM,oBAAoB,IAAI;AAE9B,MAAI,UAAU;AACZ,WAAO;AAAA,MACL;AAAA,MACA,cAAc;AAAA,MACd,cAAc;AAAA,MACd,gBAAgB;AAAA;AAAA;AAIpB,MAAI,MAA0B;AAE9B,QAAM,eAAe,MAAM;AACzB,sBAAkB,QAAQ;AAG1B,QAAI,QAAQ;AAAM;AAElB,UAAM;AAAA;AAGR,QAAM,eAAe,MAAM;AACzB,sBAAkB,QAAQ;AAC1B,QAAI,QAAQ,MAAM;AAChB,uBAAiB;AACjB,YAAM;AAAA;AAAA;AAIV,QAAM,iBAAiB,MAAM;AAC3B,WAAO,aAAa,UAAU,OAC1B,oBACA,kBAAkB,QAClB,CAAC,EAAE,UAAU,EAAE,IAAI,OAAO,sBAC1B;AAAA;AAGN,cAAY;AAEZ,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-teleport/index.ts"],"sourcesContent":["import { h, ref, Teleport, onUnmounted } from 'vue'\nimport { NOOP } from '@vue/shared'\nimport { isClient } from '@vueuse/core'\nimport {\n createGlobalNode,\n removeGlobalNode,\n} from '@element-plus/utils/global-nodes'\n\nimport type { VNode, Ref } from 'vue'\n\nexport const useTeleport = (\n contentRenderer: () => VNode,\n appendToBody: Ref<boolean>\n) => {\n const isTeleportVisible = ref(false)\n\n if (!isClient) {\n return {\n isTeleportVisible,\n showTeleport: NOOP,\n hideTeleport: NOOP,\n renderTeleport: NOOP,\n }\n }\n\n let $el: HTMLElement | null = null\n\n const showTeleport = () => {\n isTeleportVisible.value = true\n // this allows the delayed showing strategy since the the content itself could be enterable\n // e.g. el-popper\n if ($el !== null) return\n\n $el = createGlobalNode()\n }\n\n const hideTeleport = () => {\n isTeleportVisible.value = false\n if ($el !== null) {\n removeGlobalNode($el)\n $el = null\n }\n }\n\n const renderTeleport = () => {\n return appendToBody.value !== true\n ? contentRenderer()\n : isTeleportVisible.value\n ? [h(Teleport, { to: $el }, contentRenderer())]\n : undefined\n }\n\n onUnmounted(hideTeleport)\n\n return {\n isTeleportVisible,\n showTeleport,\n hideTeleport,\n renderTeleport,\n }\n}\n"],"names":[],"mappings":";;;;;MAUa,cAAc,CACzB,iBACA,iBACG;AACH,QAAM,oBAAoB,IAAI;AAE9B,MAAI,CAAC,UAAU;AACb,WAAO;AAAA,MACL;AAAA,MACA,cAAc;AAAA,MACd,cAAc;AAAA,MACd,gBAAgB;AAAA;AAAA;AAIpB,MAAI,MAA0B;AAE9B,QAAM,eAAe,MAAM;AACzB,sBAAkB,QAAQ;AAG1B,QAAI,QAAQ;AAAM;AAElB,UAAM;AAAA;AAGR,QAAM,eAAe,MAAM;AACzB,sBAAkB,QAAQ;AAC1B,QAAI,QAAQ,MAAM;AAChB,uBAAiB;AACjB,YAAM;AAAA;AAAA;AAIV,QAAM,iBAAiB,MAAM;AAC3B,WAAO,aAAa,UAAU,OAC1B,oBACA,kBAAkB,QAClB,CAAC,EAAE,UAAU,EAAE,IAAI,OAAO,sBAC1B;AAAA;AAGN,cAAY;AAEZ,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA;;;;"}
@@ -1,2 +1,2 @@
1
1
  import type { Ref } from 'vue';
2
- export default function (loading: Ref<boolean>, throttle?: number): Ref<boolean>;
2
+ export declare const useThrottleRender: (loading: Ref<boolean>, throttle?: number) => Ref<boolean>;
@@ -1,6 +1,6 @@
1
1
  import { ref, onMounted, watch } from 'vue';
2
2
 
3
- function useThrottleRender(loading, throttle = 0) {
3
+ const useThrottleRender = (loading, throttle = 0) => {
4
4
  if (throttle === 0)
5
5
  return loading;
6
6
  const throttled = ref(false);
@@ -22,7 +22,7 @@ function useThrottleRender(loading, throttle = 0) {
22
22
  }
23
23
  });
24
24
  return throttled;
25
- }
25
+ };
26
26
 
27
- export { useThrottleRender as default };
27
+ export { useThrottleRender };
28
28
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-throttle-render/index.ts"],"sourcesContent":["import { onMounted, ref, watch } from 'vue'\n\nimport type { Ref } from 'vue'\nimport type { TimeoutHandle } from '@element-plus/utils/types'\n\nexport default function (loading: Ref<boolean>, throttle = 0) {\n if (throttle === 0) return loading\n const throttled = ref(false)\n let timeoutHandle: TimeoutHandle = 0\n\n const dispatchThrottling = () => {\n if (timeoutHandle) {\n clearTimeout(timeoutHandle)\n }\n timeoutHandle = window.setTimeout(() => {\n throttled.value = loading.value\n }, throttle)\n }\n onMounted(dispatchThrottling)\n\n watch(\n () => loading.value,\n (val) => {\n if (val) {\n dispatchThrottling()\n } else {\n throttled.value = val\n }\n }\n )\n return throttled\n}\n"],"names":[],"mappings":";;2BAKyB,SAAuB,WAAW,GAAG;AAC5D,MAAI,aAAa;AAAG,WAAO;AAC3B,QAAM,YAAY,IAAI;AACtB,MAAI,gBAA+B;AAEnC,QAAM,qBAAqB,MAAM;AAC/B,QAAI,eAAe;AACjB,mBAAa;AAAA;AAEf,oBAAgB,OAAO,WAAW,MAAM;AACtC,gBAAU,QAAQ,QAAQ;AAAA,OACzB;AAAA;AAEL,YAAU;AAEV,QACE,MAAM,QAAQ,OACd,CAAC,QAAQ;AACP,QAAI,KAAK;AACP;AAAA,WACK;AACL,gBAAU,QAAQ;AAAA;AAAA;AAIxB,SAAO;AAAA;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-throttle-render/index.ts"],"sourcesContent":["import { onMounted, ref, watch } from 'vue'\n\nimport type { Ref } from 'vue'\n\nexport const useThrottleRender = (loading: Ref<boolean>, throttle = 0) => {\n if (throttle === 0) return loading\n const throttled = ref(false)\n let timeoutHandle = 0\n\n const dispatchThrottling = () => {\n if (timeoutHandle) {\n clearTimeout(timeoutHandle)\n }\n timeoutHandle = window.setTimeout(() => {\n throttled.value = loading.value\n }, throttle)\n }\n onMounted(dispatchThrottling)\n\n watch(\n () => loading.value,\n (val) => {\n if (val) {\n dispatchThrottling()\n } else {\n throttled.value = val\n }\n }\n )\n return throttled\n}\n"],"names":[],"mappings":";;MAIa,oBAAoB,CAAC,SAAuB,WAAW,MAAM;AACxE,MAAI,aAAa;AAAG,WAAO;AAC3B,QAAM,YAAY,IAAI;AACtB,MAAI,gBAAgB;AAEpB,QAAM,qBAAqB,MAAM;AAC/B,QAAI,eAAe;AACjB,mBAAa;AAAA;AAEf,oBAAgB,OAAO,WAAW,MAAM;AACtC,gBAAU,QAAQ,QAAQ;AAAA,OACzB;AAAA;AAEL,YAAU;AAEV,QACE,MAAM,QAAQ,OACd,CAAC,QAAQ;AACP,QAAI,KAAK;AACP;AAAA,WACK;AACL,gBAAU,QAAQ;AAAA;AAAA;AAIxB,SAAO;AAAA;;;;"}
@@ -1,4 +1,4 @@
1
- export default function (): {
2
- registerTimeout: (fn: (...args: any[]) => unknown, delay: number) => void;
1
+ export declare function useTimeout(): {
2
+ registerTimeout: (fn: (...args: any[]) => any, delay: number) => void;
3
3
  cancelTimeout: () => void;
4
4
  };
@@ -1,20 +1,18 @@
1
- import { onBeforeUnmount } from 'vue';
1
+ import { tryOnScopeDispose } from '@vueuse/core';
2
2
 
3
3
  function useTimeout() {
4
4
  let timeoutHandle;
5
- onBeforeUnmount(() => {
6
- clearTimeout(timeoutHandle);
7
- });
5
+ const registerTimeout = (fn, delay) => {
6
+ cancelTimeout();
7
+ timeoutHandle = window.setTimeout(fn, delay);
8
+ };
9
+ const cancelTimeout = () => window.clearTimeout(timeoutHandle);
10
+ tryOnScopeDispose(() => cancelTimeout());
8
11
  return {
9
- registerTimeout: (fn, delay) => {
10
- clearTimeout(timeoutHandle);
11
- timeoutHandle = setTimeout(fn, delay);
12
- },
13
- cancelTimeout: () => {
14
- clearTimeout(timeoutHandle);
15
- }
12
+ registerTimeout,
13
+ cancelTimeout
16
14
  };
17
15
  }
18
16
 
19
- export { useTimeout as default };
17
+ export { useTimeout };
20
18
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-timeout/index.ts"],"sourcesContent":["import { onBeforeUnmount } from 'vue'\n\nimport type { TimeoutHandle } from '@element-plus/utils/types'\n\nexport default function () {\n let timeoutHandle: TimeoutHandle\n\n onBeforeUnmount(() => {\n clearTimeout(timeoutHandle)\n })\n\n return {\n registerTimeout: (fn: (...args: any[]) => unknown, delay: number) => {\n clearTimeout(timeoutHandle)\n timeoutHandle = setTimeout(fn, delay) as any as TimeoutHandle\n },\n\n cancelTimeout: () => {\n clearTimeout(timeoutHandle)\n },\n }\n}\n"],"names":[],"mappings":";;sBAI2B;AACzB,MAAI;AAEJ,kBAAgB,MAAM;AACpB,iBAAa;AAAA;AAGf,SAAO;AAAA,IACL,iBAAiB,CAAC,IAAiC,UAAkB;AACnE,mBAAa;AACb,sBAAgB,WAAW,IAAI;AAAA;AAAA,IAGjC,eAAe,MAAM;AACnB,mBAAa;AAAA;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-timeout/index.ts"],"sourcesContent":["import { tryOnScopeDispose } from '@vueuse/core'\n\nexport function useTimeout() {\n let timeoutHandle: number\n\n const registerTimeout = (fn: (...args: any[]) => any, delay: number) => {\n cancelTimeout()\n timeoutHandle = window.setTimeout(fn, delay)\n }\n const cancelTimeout = () => window.clearTimeout(timeoutHandle)\n\n tryOnScopeDispose(() => cancelTimeout())\n\n return {\n registerTimeout,\n cancelTimeout,\n }\n}\n"],"names":[],"mappings":";;sBAE6B;AAC3B,MAAI;AAEJ,QAAM,kBAAkB,CAAC,IAA6B,UAAkB;AACtE;AACA,oBAAgB,OAAO,WAAW,IAAI;AAAA;AAExC,QAAM,gBAAgB,MAAM,OAAO,aAAa;AAEhD,oBAAkB,MAAM;AAExB,SAAO;AAAA,IACL;AAAA,IACA;AAAA;AAAA;;;;"}
@@ -1,4 +1,4 @@
1
- export declare const useTransitionFallthroughEmits: string[];
1
+ export declare const useTransitionFallthroughEmits: readonly ["after-appear", "after-enter", "after-leave", "appear", "appear-cancelled", "before-enter", "before-leave", "enter", "enter-cancelled", "leave", "leave-cancelled"];
2
2
  /**
3
3
  * NOTE:
4
4
  * This is only a delegator for delegating transition callbacks.
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-transition-fallthrough/index.ts"],"sourcesContent":["/* istanbul ignore file */\nimport { getCurrentInstance } from 'vue'\n\nconst AFTER_APPEAR = 'after-appear'\nconst AFTER_ENTER = 'after-enter'\nconst AFTER_LEAVE = 'after-leave'\nconst APPEAR = 'appear'\nconst APPEAR_CANCELLED = 'appear-cancelled'\nconst BEFORE_ENTER = 'before-enter'\nconst BEFORE_LEAVE = 'before-leave'\nconst ENTER = 'enter'\nconst ENTER_CANCELLED = 'enter-cancelled'\nconst LEAVE = 'leave'\nconst LEAVE_CANCELLED = 'leave-cancelled'\n\nexport const useTransitionFallthroughEmits = [\n AFTER_APPEAR,\n AFTER_ENTER,\n AFTER_LEAVE,\n APPEAR,\n APPEAR_CANCELLED,\n BEFORE_ENTER,\n BEFORE_LEAVE,\n ENTER,\n ENTER_CANCELLED,\n LEAVE,\n LEAVE_CANCELLED,\n]\n\n// Sometimes we want to delegate the transition emitted event\n// we have to right the function locally, which is not a good\n// approach to this, so we created this hook for the event\n// fallthrough\n\n/**\n * NOTE:\n * This is only a delegator for delegating transition callbacks.\n * Use this at your need.\n */\n\n/**\n * Simple usage\n *\n * In your setups:\n *\n * setup() {\n * const fallthroughMethods = useTransitionFallthrough()\n * return fallthrough\n * }\n *\n * In your template:\n *\n * <template>\n * <transition name=\"whatever\" v-bind=\"fallthrough\">\n * <slot />\n * </transition>\n * </template>\n *\n */\n\nexport const useTransitionFallthrough = () => {\n const { emit } = getCurrentInstance()\n\n return {\n onAfterAppear: () => {\n emit(AFTER_APPEAR)\n },\n onAfterEnter: () => {\n emit(AFTER_ENTER)\n },\n onAfterLeave: () => {\n emit(AFTER_LEAVE)\n },\n onAppearCancelled: () => {\n emit(APPEAR_CANCELLED)\n },\n onBeforeEnter: () => {\n emit(BEFORE_ENTER)\n },\n onBeforeLeave: () => {\n emit(BEFORE_LEAVE)\n },\n onEnter: () => {\n emit(ENTER)\n },\n onEnterCancelled: () => {\n emit(ENTER_CANCELLED)\n },\n onLeave: () => {\n emit(LEAVE)\n },\n onLeaveCancelled: () => {\n emit(LEAVE_CANCELLED)\n },\n }\n}\n"],"names":[],"mappings":";;AAGA,MAAM,eAAe;AACrB,MAAM,cAAc;AACpB,MAAM,cAAc;AACpB,MAAM,SAAS;AACf,MAAM,mBAAmB;AACzB,MAAM,eAAe;AACrB,MAAM,eAAe;AACrB,MAAM,QAAQ;AACd,MAAM,kBAAkB;AACxB,MAAM,QAAQ;AACd,MAAM,kBAAkB;MAEX,gCAAgC;AAAA,EAC3C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;MAkCW,2BAA2B,MAAM;AAC5C,QAAM,EAAE,SAAS;AAEjB,SAAO;AAAA,IACL,eAAe,MAAM;AACnB,WAAK;AAAA;AAAA,IAEP,cAAc,MAAM;AAClB,WAAK;AAAA;AAAA,IAEP,cAAc,MAAM;AAClB,WAAK;AAAA;AAAA,IAEP,mBAAmB,MAAM;AACvB,WAAK;AAAA;AAAA,IAEP,eAAe,MAAM;AACnB,WAAK;AAAA;AAAA,IAEP,eAAe,MAAM;AACnB,WAAK;AAAA;AAAA,IAEP,SAAS,MAAM;AACb,WAAK;AAAA;AAAA,IAEP,kBAAkB,MAAM;AACtB,WAAK;AAAA;AAAA,IAEP,SAAS,MAAM;AACb,WAAK;AAAA;AAAA,IAEP,kBAAkB,MAAM;AACtB,WAAK;AAAA;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/hooks/use-transition-fallthrough/index.ts"],"sourcesContent":["/* istanbul ignore file */\nimport { getCurrentInstance } from 'vue'\n\nconst AFTER_APPEAR = 'after-appear'\nconst AFTER_ENTER = 'after-enter'\nconst AFTER_LEAVE = 'after-leave'\nconst APPEAR = 'appear'\nconst APPEAR_CANCELLED = 'appear-cancelled'\nconst BEFORE_ENTER = 'before-enter'\nconst BEFORE_LEAVE = 'before-leave'\nconst ENTER = 'enter'\nconst ENTER_CANCELLED = 'enter-cancelled'\nconst LEAVE = 'leave'\nconst LEAVE_CANCELLED = 'leave-cancelled'\n\nexport const useTransitionFallthroughEmits = [\n AFTER_APPEAR,\n AFTER_ENTER,\n AFTER_LEAVE,\n APPEAR,\n APPEAR_CANCELLED,\n BEFORE_ENTER,\n BEFORE_LEAVE,\n ENTER,\n ENTER_CANCELLED,\n LEAVE,\n LEAVE_CANCELLED,\n] as const\n\n// Sometimes we want to delegate the transition emitted event\n// we have to right the function locally, which is not a good\n// approach to this, so we created this hook for the event\n// fallthrough\n\n/**\n * NOTE:\n * This is only a delegator for delegating transition callbacks.\n * Use this at your need.\n */\n\n/**\n * Simple usage\n *\n * In your setups:\n *\n * setup() {\n * const fallthroughMethods = useTransitionFallthrough()\n * return fallthrough\n * }\n *\n * In your template:\n *\n * <template>\n * <transition name=\"whatever\" v-bind=\"fallthrough\">\n * <slot />\n * </transition>\n * </template>\n *\n */\n\nexport const useTransitionFallthrough = () => {\n const { emit } = getCurrentInstance()!\n\n return {\n onAfterAppear: () => {\n emit(AFTER_APPEAR)\n },\n onAfterEnter: () => {\n emit(AFTER_ENTER)\n },\n onAfterLeave: () => {\n emit(AFTER_LEAVE)\n },\n onAppearCancelled: () => {\n emit(APPEAR_CANCELLED)\n },\n onBeforeEnter: () => {\n emit(BEFORE_ENTER)\n },\n onBeforeLeave: () => {\n emit(BEFORE_LEAVE)\n },\n onEnter: () => {\n emit(ENTER)\n },\n onEnterCancelled: () => {\n emit(ENTER_CANCELLED)\n },\n onLeave: () => {\n emit(LEAVE)\n },\n onLeaveCancelled: () => {\n emit(LEAVE_CANCELLED)\n },\n }\n}\n"],"names":[],"mappings":";;AAGA,MAAM,eAAe;AACrB,MAAM,cAAc;AACpB,MAAM,cAAc;AACpB,MAAM,SAAS;AACf,MAAM,mBAAmB;AACzB,MAAM,eAAe;AACrB,MAAM,eAAe;AACrB,MAAM,QAAQ;AACd,MAAM,kBAAkB;AACxB,MAAM,QAAQ;AACd,MAAM,kBAAkB;MAEX,gCAAgC;AAAA,EAC3C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;MAkCW,2BAA2B,MAAM;AAC5C,QAAM,EAAE,SAAS;AAEjB,SAAO;AAAA,IACL,eAAe,MAAM;AACnB,WAAK;AAAA;AAAA,IAEP,cAAc,MAAM;AAClB,WAAK;AAAA;AAAA,IAEP,cAAc,MAAM;AAClB,WAAK;AAAA;AAAA,IAEP,mBAAmB,MAAM;AACvB,WAAK;AAAA;AAAA,IAEP,eAAe,MAAM;AACnB,WAAK;AAAA;AAAA,IAEP,eAAe,MAAM;AACnB,WAAK;AAAA;AAAA,IAEP,SAAS,MAAM;AACb,WAAK;AAAA;AAAA,IAEP,kBAAkB,MAAM;AACtB,WAAK;AAAA;AAAA,IAEP,SAAS,MAAM;AACb,WAAK;AAAA;AAAA,IAEP,kBAAkB,MAAM;AACtB,WAAK;AAAA;AAAA;AAAA;;;;"}
package/es/index.mjs CHANGED
@@ -36,6 +36,7 @@ export { ElCol } from './components/col/index.mjs';
36
36
  export { ElCollapse, ElCollapseItem } from './components/collapse/index.mjs';
37
37
  export { ElCollapseTransition } from './components/collapse-transition/index.mjs';
38
38
  export { ElColorPicker } from './components/color-picker/index.mjs';
39
+ export { configProviderProps } from './components/config-provider/src/config-provider.mjs';
39
40
  export { ElConfigProvider } from './components/config-provider/index.mjs';
40
41
  export { ElAside, ElContainer, ElFooter, ElHeader, ElMain } from './components/container/index.mjs';
41
42
  export { ElDatePicker } from './components/date-picker/index.mjs';
@@ -149,24 +150,21 @@ export { default as RepeatClick } from './directives/repeat-click/index.mjs';
149
150
  export { default as TrapFocus } from './directives/trap-focus/index.mjs';
150
151
  export { default as Mousewheel } from './directives/mousewheel/index.mjs';
151
152
  export { default as Resize } from './directives/resize/index.mjs';
152
- export { default as useAttrs } from './hooks/use-attrs/index.mjs';
153
- export { default as useEvents } from './hooks/use-events/index.mjs';
154
- export { default as useLockScreen } from './hooks/use-lockscreen/index.mjs';
155
- export { default as useRestoreActive } from './hooks/use-restore-active/index.mjs';
156
- export { default as useModal } from './hooks/use-modal/index.mjs';
157
- export { default as useMigrating } from './hooks/use-migrating/index.mjs';
158
- export { default as useFocus } from './hooks/use-focus/index.mjs';
159
- export { default as useThrottleRender } from './hooks/use-throttle-render/index.mjs';
160
- export { default as usePreventGlobal } from './hooks/use-prevent-global/index.mjs';
161
- export { default as useTeleport } from './hooks/use-teleport/index.mjs';
162
- export { default as useTimeout } from './hooks/use-timeout/index.mjs';
153
+ export { useAttrs } from './hooks/use-attrs/index.mjs';
154
+ export { useFocus } from './hooks/use-focus/index.mjs';
155
+ export { useFormItem, useFormItemProps } from './hooks/use-form-item/index.mjs';
156
+ export { useGlobalConfig } from './hooks/use-global-config/index.mjs';
157
+ export { buildTranslator, localeContextKey, localeProviderMaker, provideLocale, translate, useLocale, useLocaleProps } from './hooks/use-locale/index.mjs';
158
+ export { useLockscreen } from './hooks/use-lockscreen/index.mjs';
159
+ export { useModal } from './hooks/use-modal/index.mjs';
163
160
  export { useModelToggle, useModelToggleEmits, useModelToggleProps } from './hooks/use-model-toggle/index.mjs';
164
161
  export { DARK_EFFECT, LIGHT_EFFECT, usePopperControlProps, usePopperHook, usePopperProps } from './hooks/use-popper/index.mjs';
165
- export { themeVarsKey, useCssVar, useThemeVars } from './hooks/use-css-var/index.mjs';
166
- export { LocaleInjectionKey, localeProviderMaker, useLocale, useLocaleInject, useLocaleProps } from './hooks/use-locale/index.mjs';
167
- export { useFormItem, useFormItemProps } from './hooks/use-form-item/index.mjs';
162
+ export { usePreventGlobal } from './hooks/use-prevent-global/index.mjs';
163
+ export { useRestoreActive } from './hooks/use-restore-active/index.mjs';
168
164
  export { useSameTarget } from './hooks/use-same-target/index.mjs';
169
- export { useGlobalConfig } from './hooks/use-global-config/index.mjs';
165
+ export { useTeleport } from './hooks/use-teleport/index.mjs';
166
+ export { useThrottleRender } from './hooks/use-throttle-render/index.mjs';
167
+ export { useTimeout } from './hooks/use-timeout/index.mjs';
170
168
  export { elFormItemKey, elFormKey } from './tokens/form.mjs';
171
169
  export { buttonGroupContextKey } from './tokens/button.mjs';
172
170
  export { elBreadcrumbKey } from './tokens/breadcrumb.mjs';
package/es/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../packages/element-plus/index.ts"],"sourcesContent":["import installer from './defaults'\nexport * from '@element-plus/components'\nexport * from '@element-plus/directives'\nexport * from '@element-plus/hooks'\nexport * from '@element-plus/tokens'\n\nexport { default as makeInstaller } from './make-installer'\nexport { default } from './defaults'\n\nexport const install = installer.install\nexport const version = installer.version\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MASa,UAAU,UAAU;MACpB,UAAU,UAAU;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../packages/element-plus/index.ts"],"sourcesContent":["import installer from './defaults'\nexport * from '@element-plus/components'\nexport * from '@element-plus/directives'\nexport * from '@element-plus/hooks'\nexport * from '@element-plus/tokens'\n\nexport { default as makeInstaller } from './make-installer'\nexport { default } from './defaults'\n\nexport const install = installer.install\nexport const version = installer.version\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MASa,UAAU,UAAU;MACpB,UAAU,UAAU;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { setConfig } from './utils/config.mjs';
2
2
  import './hooks/index.mjs';
3
3
  import { version } from './version.mjs';
4
- import { localeProviderMaker, LocaleInjectionKey } from './hooks/use-locale/index.mjs';
4
+ import { localeProviderMaker, localeContextKey } from './hooks/use-locale/index.mjs';
5
5
 
6
6
  const makeInstaller = (components = []) => {
7
7
  const apps = [];
@@ -19,7 +19,7 @@ const makeInstaller = (components = []) => {
19
19
  });
20
20
  if (option.locale) {
21
21
  const localeProvides = localeProviderMaker(opts.locale);
22
- app.provide(LocaleInjectionKey, localeProvides);
22
+ app.provide(localeContextKey, localeProvides);
23
23
  }
24
24
  app.config.globalProperties.$ELEMENT = option;
25
25
  setConfig(option);
@@ -1 +1 @@
1
- {"version":3,"file":"make-installer.mjs","sources":["../../../packages/element-plus/make-installer.ts"],"sourcesContent":["import { setConfig } from '@element-plus/utils/config'\nimport { LocaleInjectionKey, localeProviderMaker } from '@element-plus/hooks'\nimport { version } from './version'\n\nimport type { App, Plugin } from 'vue'\nimport type { ComponentSize } from '@element-plus/utils/types'\nimport type { InstallOptions } from '@element-plus/utils/config'\n\nconst makeInstaller = (components: Plugin[] = []) => {\n const apps: App[] = []\n\n const install = (app: App, opts: InstallOptions) => {\n const defaultInstallOpt: InstallOptions = {\n size: '' as ComponentSize,\n zIndex: 2000,\n }\n\n const option = Object.assign(defaultInstallOpt, opts)\n if (apps.includes(app)) return\n apps.push(app)\n\n components.forEach((c) => {\n app.use(c)\n })\n\n if (option.locale) {\n const localeProvides = localeProviderMaker(opts.locale)\n app.provide(LocaleInjectionKey, localeProvides)\n }\n\n app.config.globalProperties.$ELEMENT = option\n // app.provide() ? is this better? I think its not that flexible but worth implement\n setConfig(option)\n }\n\n return {\n version,\n install,\n }\n}\n\nexport default makeInstaller\n"],"names":[],"mappings":";;;;;MAQM,gBAAgB,CAAC,aAAuB,OAAO;AACnD,QAAM,OAAc;AAEpB,QAAM,UAAU,CAAC,KAAU,SAAyB;AAClD,UAAM,oBAAoC;AAAA,MACxC,MAAM;AAAA,MACN,QAAQ;AAAA;AAGV,UAAM,SAAS,OAAO,OAAO,mBAAmB;AAChD,QAAI,KAAK,SAAS;AAAM;AACxB,SAAK,KAAK;AAEV,eAAW,QAAQ,CAAC,MAAM;AACxB,UAAI,IAAI;AAAA;AAGV,QAAI,OAAO,QAAQ;AACjB,YAAM,iBAAiB,oBAAoB,KAAK;AAChD,UAAI,QAAQ,oBAAoB;AAAA;AAGlC,QAAI,OAAO,iBAAiB,WAAW;AAEvC,cAAU;AAAA;AAGZ,SAAO;AAAA,IACL;AAAA,IACA;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"make-installer.mjs","sources":["../../../packages/element-plus/make-installer.ts"],"sourcesContent":["import { setConfig } from '@element-plus/utils/config'\nimport { localeContextKey, localeProviderMaker } from '@element-plus/hooks'\nimport { version } from './version'\n\nimport type { App, Plugin } from 'vue'\nimport type { ComponentSize } from '@element-plus/utils/types'\nimport type { InstallOptions } from '@element-plus/utils/config'\n\nconst makeInstaller = (components: Plugin[] = []) => {\n const apps: App[] = []\n\n const install = (app: App, opts: InstallOptions) => {\n const defaultInstallOpt: InstallOptions = {\n size: '' as ComponentSize,\n zIndex: 2000,\n }\n\n const option = Object.assign(defaultInstallOpt, opts)\n if (apps.includes(app)) return\n apps.push(app)\n\n components.forEach((c) => {\n app.use(c)\n })\n\n if (option.locale) {\n const localeProvides = localeProviderMaker(opts.locale)\n app.provide(localeContextKey, localeProvides)\n }\n\n app.config.globalProperties.$ELEMENT = option\n // app.provide() ? is this better? I think its not that flexible but worth implement\n setConfig(option)\n }\n\n return {\n version,\n install,\n }\n}\n\nexport default makeInstaller\n"],"names":[],"mappings":";;;;;MAQM,gBAAgB,CAAC,aAAuB,OAAO;AACnD,QAAM,OAAc;AAEpB,QAAM,UAAU,CAAC,KAAU,SAAyB;AAClD,UAAM,oBAAoC;AAAA,MACxC,MAAM;AAAA,MACN,QAAQ;AAAA;AAGV,UAAM,SAAS,OAAO,OAAO,mBAAmB;AAChD,QAAI,KAAK,SAAS;AAAM;AACxB,SAAK,KAAK;AAEV,eAAW,QAAQ,CAAC,MAAM;AACxB,UAAI,IAAI;AAAA;AAGV,QAAI,OAAO,QAAQ;AACjB,YAAM,iBAAiB,oBAAoB,KAAK;AAChD,UAAI,QAAQ,kBAAkB;AAAA;AAGhC,QAAI,OAAO,iBAAiB,WAAW;AAEvC,cAAU;AAAA;AAGZ,SAAO;AAAA,IACL;AAAA,IACA;AAAA;AAAA;;;;"}
@@ -1,4 +1,4 @@
1
- import type { configProviderProps } from 'element-plus/es/components/config-provider/config-provider';
1
+ import type { configProviderProps } from 'element-plus/es/components/config-provider';
2
2
  import type { InjectionKey, ExtractPropTypes } from 'vue';
3
- export declare type ConfigProvdierContext = ExtractPropTypes<typeof configProviderProps>;
4
- export declare const configProviderContextKey: InjectionKey<ConfigProvdierContext>;
3
+ export declare type ConfigProviderContext = ExtractPropTypes<typeof configProviderProps>;
4
+ export declare const configProviderContextKey: InjectionKey<ConfigProviderContext>;
@@ -1 +1 @@
1
- {"version":3,"file":"config-provider.mjs","sources":["../../../../packages/tokens/config-provider.ts"],"sourcesContent":["import type { configProviderProps } from '@element-plus/components/config-provider/config-provider'\nimport type { InjectionKey, ExtractPropTypes } from 'vue'\n\nexport type ConfigProvdierContext = ExtractPropTypes<typeof configProviderProps>\n\nexport const configProviderContextKey: InjectionKey<ConfigProvdierContext> =\n Symbol()\n"],"names":[],"mappings":"MAKa,2BACX;;;;"}
1
+ {"version":3,"file":"config-provider.mjs","sources":["../../../../packages/tokens/config-provider.ts"],"sourcesContent":["import type { configProviderProps } from '@element-plus/components/config-provider'\nimport type { InjectionKey, ExtractPropTypes } from 'vue'\n\nexport type ConfigProviderContext = ExtractPropTypes<typeof configProviderProps>\n\nexport const configProviderContextKey: InjectionKey<ConfigProviderContext> =\n Symbol()\n"],"names":[],"mappings":"MAKa,2BACX;;;;"}
@@ -0,0 +1,25 @@
1
+ import type { CSSProperties, Plugin } from 'vue';
2
+ declare type OptionalKeys<T extends Record<string, unknown>> = {
3
+ [K in keyof T]: T extends Record<K, T[K]> ? never : K;
4
+ }[keyof T];
5
+ declare type RequiredKeys<T extends Record<string, unknown>> = Exclude<keyof T, OptionalKeys<T>>;
6
+ declare type MonoArgEmitter<T, Keys extends keyof T> = <K extends Keys>(evt: K, arg?: T[K]) => void;
7
+ declare type BiArgEmitter<T, Keys extends keyof T> = <K extends Keys>(evt: K, arg: T[K]) => void;
8
+ export declare type EventEmitter<T extends Record<string, unknown>> = MonoArgEmitter<T, OptionalKeys<T>> & BiArgEmitter<T, RequiredKeys<T>>;
9
+ export declare type AnyFunction<T> = (...args: any[]) => T;
10
+ export declare type PartialReturnType<T extends (...args: unknown[]) => unknown> = Partial<ReturnType<T>>;
11
+ export declare type SFCWithInstall<T> = T & Plugin;
12
+ export declare type Nullable<T> = T | null;
13
+ export declare type RefElement = Nullable<HTMLElement>;
14
+ export declare type CustomizedHTMLElement<T> = HTMLElement & T;
15
+ export declare type Indexable<T> = {
16
+ [key: string]: T;
17
+ };
18
+ export declare type Hash<T> = Indexable<T>;
19
+ export declare type TimeoutHandle = number;
20
+ export declare type ComponentSize = 'large' | 'medium' | 'small' | 'mini';
21
+ export declare type StyleValue = string | CSSProperties | Array<StyleValue>;
22
+ export declare type Mutable<T> = {
23
+ -readonly [P in keyof T]: T[P];
24
+ };
25
+ export {};
package/es/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "1.2.0-beta.4";
1
+ export declare const version = "1.2.0-beta.5";
package/es/version.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const version = "1.2.0-beta.4";
1
+ const version = "1.2.0-beta.5";
2
2
 
3
3
  export { version };
4
4
  //# sourceMappingURL=version.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '1.2.0-beta.4'\n"],"names":[],"mappings":"MAAa,UAAU;;;;"}
1
+ {"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '1.2.0-beta.5'\n"],"names":[],"mappings":"MAAa,UAAU;;;;"}
@@ -102,7 +102,7 @@ var script = vue.defineComponent({
102
102
  "select"
103
103
  ],
104
104
  setup(props, ctx) {
105
- const attrs = index$5["default"]();
105
+ const attrs = index$5.useAttrs();
106
106
  const suggestions = vue.ref([]);
107
107
  const highlightedIndex = vue.ref(-1);
108
108
  const dropdownWidth = vue.ref("");
@@ -16,7 +16,7 @@ declare const _Calendar: SFCWithInstall<import("vue").DefineComponent<{
16
16
  validatedRange: import("vue").ComputedRef<import("dayjs").Dayjs[][]>;
17
17
  pickDay: (day: import("dayjs").Dayjs) => void;
18
18
  selectDate: (type: "today" | "prev-month" | "next-month" | "prev-year" | "next-year") => void;
19
- t: (...args: any[]) => string;
19
+ t: import("../..").Translator;
20
20
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("input" | "update:modelValue")[], "input" | "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
21
21
  modelValue?: unknown;
22
22
  range?: unknown;
@@ -45,7 +45,7 @@ export declare const ElCalendar: SFCWithInstall<import("vue").DefineComponent<{
45
45
  validatedRange: import("vue").ComputedRef<import("dayjs").Dayjs[][]>;
46
46
  pickDay: (day: import("dayjs").Dayjs) => void;
47
47
  selectDate: (type: "today" | "prev-month" | "next-month" | "prev-year" | "next-year") => void;
48
- t: (...args: any[]) => string;
48
+ t: import("../..").Translator;
49
49
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("input" | "update:modelValue")[], "input" | "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
50
50
  modelValue?: unknown;
51
51
  range?: unknown;
@@ -41,7 +41,7 @@ var script = vue.defineComponent({
41
41
  },
42
42
  emits: ["pick"],
43
43
  setup(props, ctx) {
44
- const { lang } = index.useLocaleInject();
44
+ const { lang } = index.useLocale();
45
45
  const WEEK_DAYS = vue.ref(dayjs__default["default"]().locale(lang.value).localeData().weekdaysShort());
46
46
  const now = dayjs__default["default"]().locale(lang.value);
47
47
  const firstDayOfWeek = now.$locale().weekStart || 0;
@@ -1 +1 @@
1
- {"version":3,"file":"date-table.vue_vue_type_script_lang.js","sources":["../../../../../../packages/components/calendar/src/date-table.vue"],"sourcesContent":["<template>\n <table\n :class=\"{\n 'el-calendar-table': true,\n 'is-range': isInRange,\n }\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n >\n <thead v-if=\"!hideHeader\">\n <th v-for=\"day in weekDays\" :key=\"day\">{{ day }}</th>\n </thead>\n <tbody>\n <tr\n v-for=\"(row, index) in rows\"\n :key=\"index\"\n :class=\"{\n 'el-calendar-table__row': true,\n 'el-calendar-table__row--hide-border': index === 0 && hideHeader,\n }\"\n >\n <td\n v-for=\"(cell, key) in row\"\n :key=\"key\"\n :class=\"getCellClass(cell)\"\n @click=\"pickDay(cell)\"\n >\n <div class=\"el-calendar-day\">\n <slot name=\"dateCell\" :data=\"getSlotData(cell)\">\n <span>{{ cell.text }}</span>\n </slot>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport localeData from 'dayjs/plugin/localeData'\nimport { useLocaleInject } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport type { Dayjs } from 'dayjs'\nimport type { PropType } from 'vue'\ndayjs.extend(localeData)\n\nexport const getPrevMonthLastDays = (date: Dayjs, amount) => {\n const lastDay = date.subtract(1, 'month').endOf('month').date()\n return rangeArr(amount).map((_, index) => lastDay - (amount - index - 1))\n}\n\nexport const getMonthDays = (date: Dayjs) => {\n const days = date.daysInMonth()\n return rangeArr(days).map((_, index) => index + 1)\n}\n\nexport default defineComponent({\n props: {\n selectedDay: {\n type: Object as PropType<Dayjs>,\n },\n range: {\n type: Array as PropType<Array<Dayjs>>,\n },\n date: {\n type: Object as PropType<Dayjs>,\n },\n hideHeader: {\n type: Boolean,\n },\n },\n emits: ['pick'],\n setup(props, ctx) {\n const { lang } = useLocaleInject()\n const WEEK_DAYS = ref(\n dayjs().locale(lang.value).localeData().weekdaysShort()\n )\n\n const now = dayjs().locale(lang.value)\n\n // todo better way to get Day.js locale object\n const firstDayOfWeek = (now as any).$locale().weekStart || 0\n\n const toNestedArr = (days) => {\n return rangeArr(days.length / 7).map((_, index) => {\n const start = index * 7\n return days.slice(start, start + 7)\n })\n }\n\n const getFormattedDate = (day, type): Dayjs => {\n let result\n if (type === 'prev') {\n result = props.date.startOf('month').subtract(1, 'month').date(day)\n } else if (type === 'next') {\n result = props.date.startOf('month').add(1, 'month').date(day)\n } else {\n result = props.date.date(day)\n }\n return result\n }\n\n const getCellClass = ({ text, type }) => {\n const classes = [type]\n if (type === 'current') {\n const date_ = getFormattedDate(text, type)\n if (date_.isSame(props.selectedDay, 'day')) {\n classes.push('is-selected')\n }\n if (date_.isSame(now, 'day')) {\n classes.push('is-today')\n }\n }\n return classes\n }\n\n const pickDay = ({ text, type }) => {\n const date = getFormattedDate(text, type)\n ctx.emit('pick', date)\n }\n\n const getSlotData = ({ text, type }) => {\n const day = getFormattedDate(text, type)\n return {\n isSelected: day.isSame(props.selectedDay),\n type: `${type}-month`,\n day: day.format('YYYY-MM-DD'),\n date: day.toDate(),\n }\n }\n\n const isInRange = computed(() => {\n return props.range && props.range.length\n })\n\n const rows = computed(() => {\n let days = []\n if (isInRange.value) {\n const [start, end] = props.range\n const currentMonthRange = rangeArr(end.date() - start.date() + 1).map(\n (_, index) => ({\n text: start.date() + index,\n type: 'current',\n })\n )\n\n let remaining = currentMonthRange.length % 7\n remaining = remaining === 0 ? 0 : 7 - remaining\n const nextMonthRange = rangeArr(remaining).map((_, index) => ({\n text: index + 1,\n type: 'next',\n }))\n days = currentMonthRange.concat(nextMonthRange)\n } else {\n const firstDay = props.date.startOf('month').day() || 7\n const prevMonthDays = getPrevMonthLastDays(\n props.date,\n firstDay - firstDayOfWeek\n ).map((day) => ({\n text: day,\n type: 'prev',\n }))\n const currentMonthDays = getMonthDays(props.date).map((day) => ({\n text: day,\n type: 'current',\n }))\n days = [...prevMonthDays, ...currentMonthDays]\n const nextMonthDays = rangeArr(42 - days.length).map((_, index) => ({\n text: index + 1,\n type: 'next',\n }))\n days = days.concat(nextMonthDays)\n }\n return toNestedArr(days)\n })\n\n const weekDays = computed(() => {\n const start = firstDayOfWeek\n\n if (start === 0) {\n return WEEK_DAYS.value\n } else {\n return WEEK_DAYS.value\n .slice(start)\n .concat(WEEK_DAYS.value.slice(0, start))\n }\n })\n\n return {\n isInRange,\n weekDays,\n rows,\n getCellClass,\n pickDay,\n getSlotData,\n }\n },\n})\n</script>\n"],"names":["dayjs","localeData","rangeArr","defineComponent","useLocaleInject","ref","computed"],"mappings":"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"}
1
+ {"version":3,"file":"date-table.vue_vue_type_script_lang.js","sources":["../../../../../../packages/components/calendar/src/date-table.vue"],"sourcesContent":["<template>\n <table\n :class=\"{\n 'el-calendar-table': true,\n 'is-range': isInRange,\n }\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n >\n <thead v-if=\"!hideHeader\">\n <th v-for=\"day in weekDays\" :key=\"day\">{{ day }}</th>\n </thead>\n <tbody>\n <tr\n v-for=\"(row, index) in rows\"\n :key=\"index\"\n :class=\"{\n 'el-calendar-table__row': true,\n 'el-calendar-table__row--hide-border': index === 0 && hideHeader,\n }\"\n >\n <td\n v-for=\"(cell, key) in row\"\n :key=\"key\"\n :class=\"getCellClass(cell)\"\n @click=\"pickDay(cell)\"\n >\n <div class=\"el-calendar-day\">\n <slot name=\"dateCell\" :data=\"getSlotData(cell)\">\n <span>{{ cell.text }}</span>\n </slot>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport localeData from 'dayjs/plugin/localeData'\nimport { useLocale } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport type { Dayjs } from 'dayjs'\nimport type { PropType } from 'vue'\ndayjs.extend(localeData)\n\nexport const getPrevMonthLastDays = (date: Dayjs, amount) => {\n const lastDay = date.subtract(1, 'month').endOf('month').date()\n return rangeArr(amount).map((_, index) => lastDay - (amount - index - 1))\n}\n\nexport const getMonthDays = (date: Dayjs) => {\n const days = date.daysInMonth()\n return rangeArr(days).map((_, index) => index + 1)\n}\n\nexport default defineComponent({\n props: {\n selectedDay: {\n type: Object as PropType<Dayjs>,\n },\n range: {\n type: Array as PropType<Array<Dayjs>>,\n },\n date: {\n type: Object as PropType<Dayjs>,\n },\n hideHeader: {\n type: Boolean,\n },\n },\n emits: ['pick'],\n setup(props, ctx) {\n const { lang } = useLocale()\n const WEEK_DAYS = ref(\n dayjs().locale(lang.value).localeData().weekdaysShort()\n )\n\n const now = dayjs().locale(lang.value)\n\n // todo better way to get Day.js locale object\n const firstDayOfWeek = (now as any).$locale().weekStart || 0\n\n const toNestedArr = (days) => {\n return rangeArr(days.length / 7).map((_, index) => {\n const start = index * 7\n return days.slice(start, start + 7)\n })\n }\n\n const getFormattedDate = (day, type): Dayjs => {\n let result\n if (type === 'prev') {\n result = props.date.startOf('month').subtract(1, 'month').date(day)\n } else if (type === 'next') {\n result = props.date.startOf('month').add(1, 'month').date(day)\n } else {\n result = props.date.date(day)\n }\n return result\n }\n\n const getCellClass = ({ text, type }) => {\n const classes = [type]\n if (type === 'current') {\n const date_ = getFormattedDate(text, type)\n if (date_.isSame(props.selectedDay, 'day')) {\n classes.push('is-selected')\n }\n if (date_.isSame(now, 'day')) {\n classes.push('is-today')\n }\n }\n return classes\n }\n\n const pickDay = ({ text, type }) => {\n const date = getFormattedDate(text, type)\n ctx.emit('pick', date)\n }\n\n const getSlotData = ({ text, type }) => {\n const day = getFormattedDate(text, type)\n return {\n isSelected: day.isSame(props.selectedDay),\n type: `${type}-month`,\n day: day.format('YYYY-MM-DD'),\n date: day.toDate(),\n }\n }\n\n const isInRange = computed(() => {\n return props.range && props.range.length\n })\n\n const rows = computed(() => {\n let days = []\n if (isInRange.value) {\n const [start, end] = props.range\n const currentMonthRange = rangeArr(end.date() - start.date() + 1).map(\n (_, index) => ({\n text: start.date() + index,\n type: 'current',\n })\n )\n\n let remaining = currentMonthRange.length % 7\n remaining = remaining === 0 ? 0 : 7 - remaining\n const nextMonthRange = rangeArr(remaining).map((_, index) => ({\n text: index + 1,\n type: 'next',\n }))\n days = currentMonthRange.concat(nextMonthRange)\n } else {\n const firstDay = props.date.startOf('month').day() || 7\n const prevMonthDays = getPrevMonthLastDays(\n props.date,\n firstDay - firstDayOfWeek\n ).map((day) => ({\n text: day,\n type: 'prev',\n }))\n const currentMonthDays = getMonthDays(props.date).map((day) => ({\n text: day,\n type: 'current',\n }))\n days = [...prevMonthDays, ...currentMonthDays]\n const nextMonthDays = rangeArr(42 - days.length).map((_, index) => ({\n text: index + 1,\n type: 'next',\n }))\n days = days.concat(nextMonthDays)\n }\n return toNestedArr(days)\n })\n\n const weekDays = computed(() => {\n const start = firstDayOfWeek\n\n if (start === 0) {\n return WEEK_DAYS.value\n } else {\n return WEEK_DAYS.value\n .slice(start)\n .concat(WEEK_DAYS.value.slice(0, start))\n }\n })\n\n return {\n isInRange,\n weekDays,\n rows,\n getCellClass,\n pickDay,\n getSlotData,\n }\n },\n})\n</script>\n"],"names":["dayjs","localeData","rangeArr","defineComponent","useLocale","ref","computed"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"date-table.vue_vue_type_template_id_297fdb36_lang.js","sources":["../../../../../../packages/components/calendar/src/date-table.vue?vue&type=template&id=297fdb36&lang.js"],"sourcesContent":["<template>\n <table\n :class=\"{\n 'el-calendar-table': true,\n 'is-range': isInRange,\n }\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n >\n <thead v-if=\"!hideHeader\">\n <th v-for=\"day in weekDays\" :key=\"day\">{{ day }}</th>\n </thead>\n <tbody>\n <tr\n v-for=\"(row, index) in rows\"\n :key=\"index\"\n :class=\"{\n 'el-calendar-table__row': true,\n 'el-calendar-table__row--hide-border': index === 0 && hideHeader,\n }\"\n >\n <td\n v-for=\"(cell, key) in row\"\n :key=\"key\"\n :class=\"getCellClass(cell)\"\n @click=\"pickDay(cell)\"\n >\n <div class=\"el-calendar-day\">\n <slot name=\"dateCell\" :data=\"getSlotData(cell)\">\n <span>{{ cell.text }}</span>\n </slot>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport localeData from 'dayjs/plugin/localeData'\nimport { useLocaleInject } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport type { Dayjs } from 'dayjs'\nimport type { PropType } from 'vue'\ndayjs.extend(localeData)\n\nexport const getPrevMonthLastDays = (date: Dayjs, amount) => {\n const lastDay = date.subtract(1, 'month').endOf('month').date()\n return rangeArr(amount).map((_, index) => lastDay - (amount - index - 1))\n}\n\nexport const getMonthDays = (date: Dayjs) => {\n const days = date.daysInMonth()\n return rangeArr(days).map((_, index) => index + 1)\n}\n\nexport default defineComponent({\n props: {\n selectedDay: {\n type: Object as PropType<Dayjs>,\n },\n range: {\n type: Array as PropType<Array<Dayjs>>,\n },\n date: {\n type: Object as PropType<Dayjs>,\n },\n hideHeader: {\n type: Boolean,\n },\n },\n emits: ['pick'],\n setup(props, ctx) {\n const { lang } = useLocaleInject()\n const WEEK_DAYS = ref(\n dayjs().locale(lang.value).localeData().weekdaysShort()\n )\n\n const now = dayjs().locale(lang.value)\n\n // todo better way to get Day.js locale object\n const firstDayOfWeek = (now as any).$locale().weekStart || 0\n\n const toNestedArr = (days) => {\n return rangeArr(days.length / 7).map((_, index) => {\n const start = index * 7\n return days.slice(start, start + 7)\n })\n }\n\n const getFormattedDate = (day, type): Dayjs => {\n let result\n if (type === 'prev') {\n result = props.date.startOf('month').subtract(1, 'month').date(day)\n } else if (type === 'next') {\n result = props.date.startOf('month').add(1, 'month').date(day)\n } else {\n result = props.date.date(day)\n }\n return result\n }\n\n const getCellClass = ({ text, type }) => {\n const classes = [type]\n if (type === 'current') {\n const date_ = getFormattedDate(text, type)\n if (date_.isSame(props.selectedDay, 'day')) {\n classes.push('is-selected')\n }\n if (date_.isSame(now, 'day')) {\n classes.push('is-today')\n }\n }\n return classes\n }\n\n const pickDay = ({ text, type }) => {\n const date = getFormattedDate(text, type)\n ctx.emit('pick', date)\n }\n\n const getSlotData = ({ text, type }) => {\n const day = getFormattedDate(text, type)\n return {\n isSelected: day.isSame(props.selectedDay),\n type: `${type}-month`,\n day: day.format('YYYY-MM-DD'),\n date: day.toDate(),\n }\n }\n\n const isInRange = computed(() => {\n return props.range && props.range.length\n })\n\n const rows = computed(() => {\n let days = []\n if (isInRange.value) {\n const [start, end] = props.range\n const currentMonthRange = rangeArr(end.date() - start.date() + 1).map(\n (_, index) => ({\n text: start.date() + index,\n type: 'current',\n })\n )\n\n let remaining = currentMonthRange.length % 7\n remaining = remaining === 0 ? 0 : 7 - remaining\n const nextMonthRange = rangeArr(remaining).map((_, index) => ({\n text: index + 1,\n type: 'next',\n }))\n days = currentMonthRange.concat(nextMonthRange)\n } else {\n const firstDay = props.date.startOf('month').day() || 7\n const prevMonthDays = getPrevMonthLastDays(\n props.date,\n firstDay - firstDayOfWeek\n ).map((day) => ({\n text: day,\n type: 'prev',\n }))\n const currentMonthDays = getMonthDays(props.date).map((day) => ({\n text: day,\n type: 'current',\n }))\n days = [...prevMonthDays, ...currentMonthDays]\n const nextMonthDays = rangeArr(42 - days.length).map((_, index) => ({\n text: index + 1,\n type: 'next',\n }))\n days = days.concat(nextMonthDays)\n }\n return toNestedArr(days)\n })\n\n const weekDays = computed(() => {\n const start = firstDayOfWeek\n\n if (start === 0) {\n return WEEK_DAYS.value\n } else {\n return WEEK_DAYS.value\n .slice(start)\n .concat(WEEK_DAYS.value.slice(0, start))\n }\n })\n\n return {\n isInRange,\n weekDays,\n rows,\n getCellClass,\n pickDay,\n getSlotData,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_createElementVNode","_renderSlot"],"mappings":";;;;;;;;qBA2Be,OAAM;;0BA1BnBA;IACG;;;;IAID,aAAY;AAAA,IACZ,aAAY;AAAA;KAEE,oCAAdA;4BACEA,0DAAkB,gBAAP;gCAAXA,+BAA6B,KAAK,2BAAQ;;;IAE5CC;4BACED,0DACyB,YAAf,KAAK;gCADfA;UAEG,KAAK;AAAA,UACL;;;;;gCAKDA,0DACwB,MAAd,MAAM;oCADhBA;cAEG;AAAA,cACA,0BAAO,kBAAa;AAAA,cACpB,qBAAO,aAAQ;AAAA;cAEhBC,8BAAA;gBACEC;kBAAuB,MAAM,iBAAY;AAAA,mBAAzC;kBACED,yDAAS,KAAK;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"date-table.vue_vue_type_template_id_297fdb36_lang.js","sources":["../../../../../../packages/components/calendar/src/date-table.vue?vue&type=template&id=297fdb36&lang.js"],"sourcesContent":["<template>\n <table\n :class=\"{\n 'el-calendar-table': true,\n 'is-range': isInRange,\n }\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n >\n <thead v-if=\"!hideHeader\">\n <th v-for=\"day in weekDays\" :key=\"day\">{{ day }}</th>\n </thead>\n <tbody>\n <tr\n v-for=\"(row, index) in rows\"\n :key=\"index\"\n :class=\"{\n 'el-calendar-table__row': true,\n 'el-calendar-table__row--hide-border': index === 0 && hideHeader,\n }\"\n >\n <td\n v-for=\"(cell, key) in row\"\n :key=\"key\"\n :class=\"getCellClass(cell)\"\n @click=\"pickDay(cell)\"\n >\n <div class=\"el-calendar-day\">\n <slot name=\"dateCell\" :data=\"getSlotData(cell)\">\n <span>{{ cell.text }}</span>\n </slot>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue'\nimport dayjs from 'dayjs'\nimport localeData from 'dayjs/plugin/localeData'\nimport { useLocale } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport type { Dayjs } from 'dayjs'\nimport type { PropType } from 'vue'\ndayjs.extend(localeData)\n\nexport const getPrevMonthLastDays = (date: Dayjs, amount) => {\n const lastDay = date.subtract(1, 'month').endOf('month').date()\n return rangeArr(amount).map((_, index) => lastDay - (amount - index - 1))\n}\n\nexport const getMonthDays = (date: Dayjs) => {\n const days = date.daysInMonth()\n return rangeArr(days).map((_, index) => index + 1)\n}\n\nexport default defineComponent({\n props: {\n selectedDay: {\n type: Object as PropType<Dayjs>,\n },\n range: {\n type: Array as PropType<Array<Dayjs>>,\n },\n date: {\n type: Object as PropType<Dayjs>,\n },\n hideHeader: {\n type: Boolean,\n },\n },\n emits: ['pick'],\n setup(props, ctx) {\n const { lang } = useLocale()\n const WEEK_DAYS = ref(\n dayjs().locale(lang.value).localeData().weekdaysShort()\n )\n\n const now = dayjs().locale(lang.value)\n\n // todo better way to get Day.js locale object\n const firstDayOfWeek = (now as any).$locale().weekStart || 0\n\n const toNestedArr = (days) => {\n return rangeArr(days.length / 7).map((_, index) => {\n const start = index * 7\n return days.slice(start, start + 7)\n })\n }\n\n const getFormattedDate = (day, type): Dayjs => {\n let result\n if (type === 'prev') {\n result = props.date.startOf('month').subtract(1, 'month').date(day)\n } else if (type === 'next') {\n result = props.date.startOf('month').add(1, 'month').date(day)\n } else {\n result = props.date.date(day)\n }\n return result\n }\n\n const getCellClass = ({ text, type }) => {\n const classes = [type]\n if (type === 'current') {\n const date_ = getFormattedDate(text, type)\n if (date_.isSame(props.selectedDay, 'day')) {\n classes.push('is-selected')\n }\n if (date_.isSame(now, 'day')) {\n classes.push('is-today')\n }\n }\n return classes\n }\n\n const pickDay = ({ text, type }) => {\n const date = getFormattedDate(text, type)\n ctx.emit('pick', date)\n }\n\n const getSlotData = ({ text, type }) => {\n const day = getFormattedDate(text, type)\n return {\n isSelected: day.isSame(props.selectedDay),\n type: `${type}-month`,\n day: day.format('YYYY-MM-DD'),\n date: day.toDate(),\n }\n }\n\n const isInRange = computed(() => {\n return props.range && props.range.length\n })\n\n const rows = computed(() => {\n let days = []\n if (isInRange.value) {\n const [start, end] = props.range\n const currentMonthRange = rangeArr(end.date() - start.date() + 1).map(\n (_, index) => ({\n text: start.date() + index,\n type: 'current',\n })\n )\n\n let remaining = currentMonthRange.length % 7\n remaining = remaining === 0 ? 0 : 7 - remaining\n const nextMonthRange = rangeArr(remaining).map((_, index) => ({\n text: index + 1,\n type: 'next',\n }))\n days = currentMonthRange.concat(nextMonthRange)\n } else {\n const firstDay = props.date.startOf('month').day() || 7\n const prevMonthDays = getPrevMonthLastDays(\n props.date,\n firstDay - firstDayOfWeek\n ).map((day) => ({\n text: day,\n type: 'prev',\n }))\n const currentMonthDays = getMonthDays(props.date).map((day) => ({\n text: day,\n type: 'current',\n }))\n days = [...prevMonthDays, ...currentMonthDays]\n const nextMonthDays = rangeArr(42 - days.length).map((_, index) => ({\n text: index + 1,\n type: 'next',\n }))\n days = days.concat(nextMonthDays)\n }\n return toNestedArr(days)\n })\n\n const weekDays = computed(() => {\n const start = firstDayOfWeek\n\n if (start === 0) {\n return WEEK_DAYS.value\n } else {\n return WEEK_DAYS.value\n .slice(start)\n .concat(WEEK_DAYS.value.slice(0, start))\n }\n })\n\n return {\n isInRange,\n weekDays,\n rows,\n getCellClass,\n pickDay,\n getSlotData,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_createElementVNode","_renderSlot"],"mappings":";;;;;;;;qBA2Be,OAAM;;0BA1BnBA;IACG;;;;IAID,aAAY;AAAA,IACZ,aAAY;AAAA;KAEE,oCAAdA;4BACEA,0DAAkB,gBAAP;gCAAXA,+BAA6B,KAAK,2BAAQ;;;IAE5CC;4BACED,0DACyB,YAAf,KAAK;gCADfA;UAEG,KAAK;AAAA,UACL;;;;;gCAKDA,0DACwB,MAAd,MAAM;oCADhBA;cAEG;AAAA,cACA,0BAAO,kBAAa;AAAA,cACpB,qBAAO,aAAQ;AAAA;cAEhBC,8BAAA;gBACEC;kBAAuB,MAAM,iBAAY;AAAA,mBAAzC;kBACED,yDAAS,KAAK;;;;;;;;;;;;;"}
@@ -19,7 +19,7 @@ declare const _default: import("vue").DefineComponent<{
19
19
  validatedRange: ComputedRef<dayjs.Dayjs[][]>;
20
20
  pickDay: (day: Dayjs) => void;
21
21
  selectDate: (type: DateType) => void;
22
- t: (...args: any[]) => string;
22
+ t: import("element-plus/es/hooks").Translator;
23
23
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("input" | "update:modelValue")[], "input" | "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
24
24
  modelValue?: unknown;
25
25
  range?: unknown;
@@ -39,7 +39,7 @@ var script = vue.defineComponent({
39
39
  },
40
40
  emits: ["input", "update:modelValue"],
41
41
  setup(props, ctx) {
42
- const { t, lang } = index$1.useLocaleInject();
42
+ const { t, lang } = index$1.useLocale();
43
43
  const selectedDay = vue.ref(null);
44
44
  const now = dayjs__default["default"]().locale(lang.value);
45
45
  const prevMonthDayjs = vue.computed(() => {