@element-plus/nightly 0.0.20220109 → 0.0.20220113

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 (216) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +417 -437
  4. package/dist/index.full.min.js +8 -8
  5. package/dist/index.full.min.js.map +1 -1
  6. package/dist/index.full.min.mjs +8 -8
  7. package/dist/index.full.min.mjs.map +1 -1
  8. package/dist/index.full.mjs +421 -442
  9. package/es/components/calendar/src/calendar.vue_vue_type_script_lang.mjs +4 -4
  10. package/es/components/calendar/src/calendar.vue_vue_type_script_lang.mjs.map +1 -1
  11. package/es/components/calendar/src/calendar.vue_vue_type_template_id_76705c76_lang.mjs.map +1 -1
  12. package/es/components/cascader/index.d.ts +18 -2
  13. package/es/components/cascader/src/index.vue.d.ts +9 -1
  14. package/es/components/cascader/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  15. package/es/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.mjs +5 -3
  16. package/es/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.mjs.map +1 -1
  17. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.mjs +6 -0
  18. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.mjs.map +1 -1
  19. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_template_id_78e07aa7_lang.mjs.map +1 -1
  20. package/es/components/descriptions/index.d.ts +4 -4
  21. package/es/components/descriptions/src/description-item.d.ts +2 -2
  22. package/es/components/dropdown/index.d.ts +19 -7
  23. package/es/components/dropdown/src/dropdown-item-impl.vue_vue_type_script_lang.mjs.map +1 -1
  24. package/es/components/dropdown/src/dropdown-item-impl.vue_vue_type_template_id_6daab4f2_lang.mjs +32 -26
  25. package/es/components/dropdown/src/dropdown-item-impl.vue_vue_type_template_id_6daab4f2_lang.mjs.map +1 -1
  26. package/es/components/dropdown/src/dropdown-item.vue.d.ts +3 -2
  27. package/es/components/dropdown/src/dropdown-item.vue_vue_type_script_lang.mjs +6 -3
  28. package/es/components/dropdown/src/dropdown-item.vue_vue_type_script_lang.mjs.map +1 -1
  29. package/es/components/dropdown/src/dropdown-item.vue_vue_type_template_id_396ed16b_lang.mjs.map +1 -1
  30. package/es/components/dropdown/src/dropdown-menu.vue.d.ts +1 -0
  31. package/es/components/dropdown/src/dropdown-menu.vue_vue_type_script_lang.mjs +8 -7
  32. package/es/components/dropdown/src/dropdown-menu.vue_vue_type_script_lang.mjs.map +1 -1
  33. package/es/components/dropdown/src/dropdown-menu.vue_vue_type_template_id_617b3492_lang.mjs +1 -1
  34. package/es/components/dropdown/src/dropdown-menu.vue_vue_type_template_id_617b3492_lang.mjs.map +1 -1
  35. package/es/components/dropdown/src/dropdown.vue.d.ts +11 -3
  36. package/es/components/index.mjs +1 -0
  37. package/es/components/index.mjs.map +1 -1
  38. package/es/components/message-box/src/index.vue.d.ts +2 -2
  39. package/es/components/pagination/index.d.ts +2 -2
  40. package/es/components/pagination/src/pagination.d.ts +2 -2
  41. package/es/components/popover/index.d.ts +18 -2
  42. package/es/components/popover/src/index.vue.d.ts +9 -1
  43. package/es/components/popper/src/content.vue_vue_type_script_lang.mjs +2 -1
  44. package/es/components/popper/src/content.vue_vue_type_script_lang.mjs.map +1 -1
  45. package/es/components/popper/src/content.vue_vue_type_template_id_611b76f0_lang.mjs.map +1 -1
  46. package/es/components/popper/src/trigger.vue.d.ts +3 -3
  47. package/es/components/popper/src/trigger.vue_vue_type_script_lang.mjs +2 -2
  48. package/es/components/popper/src/trigger.vue_vue_type_script_lang.mjs.map +1 -1
  49. package/es/components/popper/src/trigger.vue_vue_type_template_id_4fb6e0af_lang.mjs.map +1 -1
  50. package/es/components/roving-focus-group/src/roving-focus-group-impl.vue.d.ts +1 -1
  51. package/es/components/roving-focus-group/src/roving-focus-item.vue.d.ts +1 -1
  52. package/es/components/select/index.d.ts +9 -1
  53. package/es/components/select/src/select.vue.d.ts +9 -1
  54. package/es/components/select/src/useSelect.d.ts +9 -1
  55. package/es/components/select-v2/index.d.ts +18 -2
  56. package/es/components/select-v2/src/select.vue.d.ts +9 -1
  57. package/es/components/select-v2/src/useSelect.d.ts +9 -1
  58. package/es/components/table/src/filter-panel.vue.d.ts +9 -1
  59. package/es/components/time-picker/src/common/picker.vue.d.ts +9 -1
  60. package/es/components/time-picker/src/common/picker.vue_vue_type_script_lang.mjs.map +1 -1
  61. package/es/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.mjs +4 -2
  62. package/es/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.mjs.map +1 -1
  63. package/es/components/time-select/index.d.ts +14 -0
  64. package/es/components/time-select/src/time-select.vue.d.ts +7 -0
  65. package/es/components/time-select/src/time-select.vue_vue_type_script_lang.mjs +45 -7
  66. package/es/components/time-select/src/time-select.vue_vue_type_script_lang.mjs.map +1 -1
  67. package/es/components/time-select/src/time-select.vue_vue_type_template_id_5beb6389_lang.mjs.map +1 -1
  68. package/es/components/tooltip/index.d.ts +5 -0
  69. package/es/components/tooltip/index.mjs +1 -0
  70. package/es/components/tooltip/index.mjs.map +1 -1
  71. package/es/components/tooltip/src/content.vue.d.ts +13 -6
  72. package/es/components/tooltip/src/content.vue_vue_type_script_lang.mjs +42 -67
  73. package/es/components/tooltip/src/content.vue_vue_type_script_lang.mjs.map +1 -1
  74. package/es/components/tooltip/src/content.vue_vue_type_template_id_20254f8d_lang.mjs +53 -56
  75. package/es/components/tooltip/src/content.vue_vue_type_template_id_20254f8d_lang.mjs.map +1 -1
  76. package/es/components/tooltip/src/tokens.d.ts +1 -0
  77. package/es/components/tooltip/src/tokens.mjs.map +1 -1
  78. package/es/components/tooltip/src/tooltip.d.ts +2 -0
  79. package/es/components/tooltip/src/tooltip.mjs +8 -0
  80. package/es/components/tooltip/src/tooltip.mjs.map +1 -1
  81. package/es/components/tooltip/src/tooltip.vue.d.ts +4 -0
  82. package/es/components/tooltip/src/tooltip.vue_vue_type_script_lang.mjs +2 -1
  83. package/es/components/tooltip/src/tooltip.vue_vue_type_script_lang.mjs.map +1 -1
  84. package/es/components/tooltip/src/tooltip.vue_vue_type_template_id_694d1617_lang.mjs +2 -1
  85. package/es/components/tooltip/src/tooltip.vue_vue_type_template_id_694d1617_lang.mjs.map +1 -1
  86. package/es/components/tooltip/src/trigger.vue.d.ts +1 -1
  87. package/es/components/tooltip/src/trigger.vue_vue_type_script_lang.mjs +2 -2
  88. package/es/components/tooltip/src/trigger.vue_vue_type_script_lang.mjs.map +1 -1
  89. package/es/components/tooltip/src/trigger.vue_vue_type_template_id_0ec0b94c_lang.mjs +2 -2
  90. package/es/components/tooltip/src/trigger.vue_vue_type_template_id_0ec0b94c_lang.mjs.map +1 -1
  91. package/es/components/tree/src/model/useDragNode.mjs +1 -1
  92. package/es/components/tree/src/model/useDragNode.mjs.map +1 -1
  93. package/es/components/tree/src/tree-node.vue_vue_type_script_lang.mjs +1 -1
  94. package/es/components/tree/src/tree-node.vue_vue_type_script_lang.mjs.map +1 -1
  95. package/es/components/tree/src/tree-node.vue_vue_type_template_id_62959aba_lang.mjs.map +1 -1
  96. package/es/components/tree-v2/src/tree-node.vue.d.ts +1 -1
  97. package/es/components/virtual-list/src/builders/build-grid.d.ts +2 -2
  98. package/es/components/virtual-list/src/builders/build-list.d.ts +2 -2
  99. package/es/components/virtual-list/src/components/dynamic-size-grid.d.ts +2 -2
  100. package/es/components/virtual-list/src/components/dynamic-size-list.d.ts +2 -2
  101. package/es/components/virtual-list/src/components/fixed-size-grid.d.ts +2 -2
  102. package/es/components/virtual-list/src/components/fixed-size-list.d.ts +2 -2
  103. package/es/index.mjs +1 -0
  104. package/es/index.mjs.map +1 -1
  105. package/es/version.d.ts +1 -1
  106. package/es/version.mjs +1 -1
  107. package/es/version.mjs.map +1 -1
  108. package/lib/components/calendar/src/calendar.vue_vue_type_script_lang.js +4 -4
  109. package/lib/components/calendar/src/calendar.vue_vue_type_script_lang.js.map +1 -1
  110. package/lib/components/calendar/src/calendar.vue_vue_type_template_id_76705c76_lang.js.map +1 -1
  111. package/lib/components/cascader/index.d.ts +18 -2
  112. package/lib/components/cascader/src/index.vue.d.ts +9 -1
  113. package/lib/components/cascader/src/index.vue_vue_type_script_lang.js.map +1 -1
  114. package/lib/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.js +4 -2
  115. package/lib/components/cascader/src/index.vue_vue_type_template_id_0429c2db_lang.js.map +1 -1
  116. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.js +6 -0
  117. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_script_lang.js.map +1 -1
  118. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue_vue_type_template_id_78e07aa7_lang.js.map +1 -1
  119. package/lib/components/descriptions/index.d.ts +4 -4
  120. package/lib/components/descriptions/src/description-item.d.ts +2 -2
  121. package/lib/components/dropdown/index.d.ts +19 -7
  122. package/lib/components/dropdown/src/dropdown-item-impl.vue_vue_type_script_lang.js.map +1 -1
  123. package/lib/components/dropdown/src/dropdown-item-impl.vue_vue_type_template_id_6daab4f2_lang.js +31 -25
  124. package/lib/components/dropdown/src/dropdown-item-impl.vue_vue_type_template_id_6daab4f2_lang.js.map +1 -1
  125. package/lib/components/dropdown/src/dropdown-item.vue.d.ts +3 -2
  126. package/lib/components/dropdown/src/dropdown-item.vue_vue_type_script_lang.js +6 -3
  127. package/lib/components/dropdown/src/dropdown-item.vue_vue_type_script_lang.js.map +1 -1
  128. package/lib/components/dropdown/src/dropdown-item.vue_vue_type_template_id_396ed16b_lang.js.map +1 -1
  129. package/lib/components/dropdown/src/dropdown-menu.vue.d.ts +1 -0
  130. package/lib/components/dropdown/src/dropdown-menu.vue_vue_type_script_lang.js +7 -6
  131. package/lib/components/dropdown/src/dropdown-menu.vue_vue_type_script_lang.js.map +1 -1
  132. package/lib/components/dropdown/src/dropdown-menu.vue_vue_type_template_id_617b3492_lang.js +1 -1
  133. package/lib/components/dropdown/src/dropdown-menu.vue_vue_type_template_id_617b3492_lang.js.map +1 -1
  134. package/lib/components/dropdown/src/dropdown.vue.d.ts +11 -3
  135. package/lib/components/index.js +2 -0
  136. package/lib/components/index.js.map +1 -1
  137. package/lib/components/message-box/src/index.vue.d.ts +2 -2
  138. package/lib/components/pagination/index.d.ts +2 -2
  139. package/lib/components/pagination/src/pagination.d.ts +2 -2
  140. package/lib/components/popover/index.d.ts +18 -2
  141. package/lib/components/popover/src/index.vue.d.ts +9 -1
  142. package/lib/components/popper/src/content.vue_vue_type_script_lang.js +2 -1
  143. package/lib/components/popper/src/content.vue_vue_type_script_lang.js.map +1 -1
  144. package/lib/components/popper/src/content.vue_vue_type_template_id_611b76f0_lang.js.map +1 -1
  145. package/lib/components/popper/src/trigger.vue.d.ts +3 -3
  146. package/lib/components/popper/src/trigger.vue_vue_type_script_lang.js +2 -2
  147. package/lib/components/popper/src/trigger.vue_vue_type_script_lang.js.map +1 -1
  148. package/lib/components/popper/src/trigger.vue_vue_type_template_id_4fb6e0af_lang.js.map +1 -1
  149. package/lib/components/roving-focus-group/src/roving-focus-group-impl.vue.d.ts +1 -1
  150. package/lib/components/roving-focus-group/src/roving-focus-item.vue.d.ts +1 -1
  151. package/lib/components/select/index.d.ts +9 -1
  152. package/lib/components/select/src/select.vue.d.ts +9 -1
  153. package/lib/components/select/src/useSelect.d.ts +9 -1
  154. package/lib/components/select-v2/index.d.ts +18 -2
  155. package/lib/components/select-v2/src/select.vue.d.ts +9 -1
  156. package/lib/components/select-v2/src/useSelect.d.ts +9 -1
  157. package/lib/components/table/src/filter-panel.vue.d.ts +9 -1
  158. package/lib/components/time-picker/src/common/picker.vue.d.ts +9 -1
  159. package/lib/components/time-picker/src/common/picker.vue_vue_type_script_lang.js.map +1 -1
  160. package/lib/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.js +4 -2
  161. package/lib/components/time-picker/src/common/picker.vue_vue_type_template_id_1d54be91_lang.js.map +1 -1
  162. package/lib/components/time-select/index.d.ts +14 -0
  163. package/lib/components/time-select/src/time-select.vue.d.ts +7 -0
  164. package/lib/components/time-select/src/time-select.vue_vue_type_script_lang.js +50 -7
  165. package/lib/components/time-select/src/time-select.vue_vue_type_script_lang.js.map +1 -1
  166. package/lib/components/time-select/src/time-select.vue_vue_type_template_id_5beb6389_lang.js.map +1 -1
  167. package/lib/components/tooltip/index.d.ts +5 -0
  168. package/lib/components/tooltip/index.js +2 -0
  169. package/lib/components/tooltip/index.js.map +1 -1
  170. package/lib/components/tooltip/src/content.vue.d.ts +13 -6
  171. package/lib/components/tooltip/src/content.vue_vue_type_script_lang.js +43 -68
  172. package/lib/components/tooltip/src/content.vue_vue_type_script_lang.js.map +1 -1
  173. package/lib/components/tooltip/src/content.vue_vue_type_template_id_20254f8d_lang.js +52 -55
  174. package/lib/components/tooltip/src/content.vue_vue_type_template_id_20254f8d_lang.js.map +1 -1
  175. package/lib/components/tooltip/src/tokens.d.ts +1 -0
  176. package/lib/components/tooltip/src/tokens.js.map +1 -1
  177. package/lib/components/tooltip/src/tooltip.d.ts +2 -0
  178. package/lib/components/tooltip/src/tooltip.js +8 -0
  179. package/lib/components/tooltip/src/tooltip.js.map +1 -1
  180. package/lib/components/tooltip/src/tooltip.vue.d.ts +4 -0
  181. package/lib/components/tooltip/src/tooltip.vue_vue_type_script_lang.js +2 -1
  182. package/lib/components/tooltip/src/tooltip.vue_vue_type_script_lang.js.map +1 -1
  183. package/lib/components/tooltip/src/tooltip.vue_vue_type_template_id_694d1617_lang.js +2 -1
  184. package/lib/components/tooltip/src/tooltip.vue_vue_type_template_id_694d1617_lang.js.map +1 -1
  185. package/lib/components/tooltip/src/trigger.vue.d.ts +1 -1
  186. package/lib/components/tooltip/src/trigger.vue_vue_type_script_lang.js +2 -2
  187. package/lib/components/tooltip/src/trigger.vue_vue_type_script_lang.js.map +1 -1
  188. package/lib/components/tooltip/src/trigger.vue_vue_type_template_id_0ec0b94c_lang.js +2 -2
  189. package/lib/components/tooltip/src/trigger.vue_vue_type_template_id_0ec0b94c_lang.js.map +1 -1
  190. package/lib/components/tree/src/model/useDragNode.js +1 -1
  191. package/lib/components/tree/src/model/useDragNode.js.map +1 -1
  192. package/lib/components/tree/src/tree-node.vue_vue_type_script_lang.js +1 -1
  193. package/lib/components/tree/src/tree-node.vue_vue_type_script_lang.js.map +1 -1
  194. package/lib/components/tree/src/tree-node.vue_vue_type_template_id_62959aba_lang.js.map +1 -1
  195. package/lib/components/tree-v2/src/tree-node.vue.d.ts +1 -1
  196. package/lib/components/virtual-list/src/builders/build-grid.d.ts +2 -2
  197. package/lib/components/virtual-list/src/builders/build-list.d.ts +2 -2
  198. package/lib/components/virtual-list/src/components/dynamic-size-grid.d.ts +2 -2
  199. package/lib/components/virtual-list/src/components/dynamic-size-list.d.ts +2 -2
  200. package/lib/components/virtual-list/src/components/fixed-size-grid.d.ts +2 -2
  201. package/lib/components/virtual-list/src/components/fixed-size-list.d.ts +2 -2
  202. package/lib/index.js +2 -0
  203. package/lib/index.js.map +1 -1
  204. package/lib/version.d.ts +1 -1
  205. package/lib/version.js +1 -1
  206. package/lib/version.js.map +1 -1
  207. package/package.json +2 -2
  208. package/tags.json +1 -1
  209. package/theme-chalk/el-dropdown.css +1 -1
  210. package/theme-chalk/el-tabs.css +1 -1
  211. package/theme-chalk/el-tree.css +1 -1
  212. package/theme-chalk/index.css +1 -1
  213. package/theme-chalk/src/dropdown.scss +13 -18
  214. package/theme-chalk/src/tabs.scss +8 -6
  215. package/theme-chalk/src/tree.scss +2 -1
  216. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip.vue_vue_type_template_id_694d1617_lang.mjs","sources":["../../../../../../packages/components/tooltip/src/tooltip.vue?vue&type=template&id=694d1617&lang.js"],"sourcesContent":["<template>\n <el-popper ref=\"popperRef\">\n <el-tooltip-trigger\n :disabled=\"disabled\"\n :trigger=\"trigger\"\n :virtual-ref=\"virtualRef\"\n :virtual-triggering=\"virtualTriggering\"\n >\n <slot v-if=\"$slots.default\" />\n </el-tooltip-trigger>\n <el-tooltip-content\n :aria-label=\"ariaLabel\"\n :boundaries-padding=\"boundariesPadding\"\n :content=\"content\"\n :effect=\"effect\"\n :enterable=\"enterable\"\n :fallback-placements=\"fallbackPlacements\"\n :hide-after=\"hideAfter\"\n :gpu-acceleration=\"gpuAcceleration\"\n :offset=\"offset\"\n :persistent=\"persistent\"\n :popper-class=\"popperClass\"\n :popper-style=\"popperStyle\"\n :placement=\"placement\"\n :popper-options=\"popperOptions\"\n :pure=\"pure\"\n :raw-content=\"rawContent\"\n :reference-el=\"referenceEl\"\n :show-after=\"compatShowAfter\"\n :strategy=\"strategy\"\n :teleported=\"teleported\"\n :transition=\"transition\"\n :z-index=\"zIndex\"\n >\n <slot name=\"content\">\n <span v-if=\"rawContent\" v-html=\"content\"></span>\n <span v-else>{{ content }}</span>\n </slot>\n <el-popper-arrow v-if=\"compatShowArrow\" :arrow-offset=\"arrowOffset\" />\n </el-tooltip-content>\n </el-popper>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n computed,\n ref,\n provide,\n toRef,\n readonly,\n unref,\n} from 'vue'\nimport {\n ElPopper,\n ElPopperArrow,\n usePopperArrowProps,\n} from '@element-plus/components/popper'\n\nimport { debugWarn } from '@element-plus/utils/error'\nimport { isBool, isUndefined } from '@element-plus/utils/util'\nimport {\n usePopperContainer,\n useId,\n createModelToggleComposable,\n useDelayedToggle,\n} from '@element-plus/hooks'\nimport ElTooltipContent from './content.vue'\nimport ElTooltipTrigger from './trigger.vue'\nimport {\n useTooltipContentProps,\n useTooltipTriggerProps,\n useTooltipProps,\n} from './tooltip'\nimport { TOOLTIP_INJECTION_KEY } from './tokens'\n\nconst { useModelToggleProps, useModelToggle, useModelToggleEmits } =\n createModelToggleComposable('visible' as const)\n\nexport default defineComponent({\n name: 'ElTooltip',\n components: {\n ElPopper,\n ElPopperArrow,\n ElTooltipContent,\n ElTooltipTrigger,\n },\n props: {\n ...useModelToggleProps,\n ...useTooltipContentProps,\n ...useTooltipTriggerProps,\n ...usePopperArrowProps,\n ...useTooltipProps,\n },\n emits: [...useModelToggleEmits, 'show', 'hide'],\n setup(props, { emit }) {\n usePopperContainer()\n const compatShowAfter = computed(() => {\n if (!isUndefined(props.openDelay)) {\n debugWarn(\n 'ElTooltip',\n 'open-delay is about to be deprecated in the next major version, please use `show-after` instead'\n )\n }\n return props.openDelay || (props.showAfter as number)\n })\n const compatShowArrow = computed(() => {\n if (!isUndefined(props.visibleArrow)) {\n debugWarn(\n 'ElTooltip',\n '`visible-arrow` is about to be deprecated in the next major version, please use `show-arrow` instead'\n )\n }\n return isBool(props.visibleArrow) ? props.visibleArrow : props.showArrow\n })\n\n const id = useId()\n const popperRef = ref<InstanceType<typeof ElPopper> | null>(null)\n\n const updatePopper = () => {\n const popperComponent = unref(popperRef)\n if (popperComponent) {\n popperComponent.popperInstanceRef?.update()\n }\n }\n const open = ref(false)\n\n const { show, hide } = useModelToggle({\n indicator: open,\n })\n\n const { onOpen, onClose } = useDelayedToggle({\n showAfter: compatShowAfter,\n hideAfter: toRef(props, 'hideAfter'),\n open: show,\n close: hide,\n })\n\n const controlled = computed(() => isBool(props.visible))\n\n provide(TOOLTIP_INJECTION_KEY, {\n controlled,\n id,\n open: readonly(open),\n trigger: toRef(props, 'trigger'),\n onOpen,\n onClose,\n onToggle: () => {\n if (unref(open)) {\n onClose()\n } else {\n onOpen()\n }\n },\n onShow: () => {\n emit('show')\n },\n onHide: () => {\n emit('hide')\n },\n })\n\n return {\n compatShowAfter,\n compatShowArrow,\n popperRef,\n open,\n updatePopper,\n onOpen,\n onClose,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;sBAEI;;QACG;;QAEA;;;;uBAGkB;;;;;;;QAGlB,4BAAqB;QACrB;QACA;QACA,MAAM,EAAE,WAAM;QACd;QACA,qBAAmB;QACnB,cAAY;QACZ;QACA;QACA,UAAU;QACV;QACA,cAAY,EAAE,gBAAW;QACzB;QACA;QACA;QACA;QACA,gBAAc;;QAEd;kCACsB;;iBAEf,EAAE;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"tooltip.vue_vue_type_template_id_694d1617_lang.mjs","sources":["../../../../../../packages/components/tooltip/src/tooltip.vue?vue&type=template&id=694d1617&lang.js"],"sourcesContent":["<template>\n <el-popper ref=\"popperRef\">\n <el-tooltip-trigger\n :disabled=\"disabled\"\n :trigger=\"trigger\"\n :virtual-ref=\"virtualRef\"\n :virtual-triggering=\"virtualTriggering\"\n >\n <slot v-if=\"$slots.default\" />\n </el-tooltip-trigger>\n <el-tooltip-content\n :aria-label=\"ariaLabel\"\n :boundaries-padding=\"boundariesPadding\"\n :content=\"content\"\n :disabled=\"disabled\"\n :effect=\"effect\"\n :enterable=\"enterable\"\n :fallback-placements=\"fallbackPlacements\"\n :hide-after=\"hideAfter\"\n :gpu-acceleration=\"gpuAcceleration\"\n :offset=\"offset\"\n :persistent=\"persistent\"\n :popper-class=\"popperClass\"\n :popper-style=\"popperStyle\"\n :placement=\"placement\"\n :popper-options=\"popperOptions\"\n :pure=\"pure\"\n :raw-content=\"rawContent\"\n :reference-el=\"referenceEl\"\n :show-after=\"compatShowAfter\"\n :strategy=\"strategy\"\n :teleported=\"teleported\"\n :transition=\"transition\"\n :z-index=\"zIndex\"\n >\n <slot name=\"content\">\n <span v-if=\"rawContent\" v-html=\"content\"></span>\n <span v-else>{{ content }}</span>\n </slot>\n <el-popper-arrow v-if=\"compatShowArrow\" :arrow-offset=\"arrowOffset\" />\n </el-tooltip-content>\n </el-popper>\n</template>\n\n<script lang=\"ts\">\nimport {\n defineComponent,\n computed,\n ref,\n provide,\n toRef,\n readonly,\n unref,\n} from 'vue'\nimport {\n ElPopper,\n ElPopperArrow,\n usePopperArrowProps,\n} from '@element-plus/components/popper'\n\nimport { debugWarn } from '@element-plus/utils/error'\nimport { isBool, isUndefined } from '@element-plus/utils/util'\nimport {\n usePopperContainer,\n useId,\n createModelToggleComposable,\n useDelayedToggle,\n} from '@element-plus/hooks'\nimport ElTooltipContent from './content.vue'\nimport ElTooltipTrigger from './trigger.vue'\nimport {\n useTooltipContentProps,\n useTooltipTriggerProps,\n useTooltipProps,\n} from './tooltip'\nimport { TOOLTIP_INJECTION_KEY } from './tokens'\n\nconst { useModelToggleProps, useModelToggle, useModelToggleEmits } =\n createModelToggleComposable('visible' as const)\n\nexport default defineComponent({\n name: 'ElTooltip',\n components: {\n ElPopper,\n ElPopperArrow,\n ElTooltipContent,\n ElTooltipTrigger,\n },\n props: {\n ...useModelToggleProps,\n ...useTooltipContentProps,\n ...useTooltipTriggerProps,\n ...usePopperArrowProps,\n ...useTooltipProps,\n },\n emits: [...useModelToggleEmits, 'show', 'hide'],\n setup(props, { emit }) {\n usePopperContainer()\n const compatShowAfter = computed(() => {\n if (!isUndefined(props.openDelay)) {\n debugWarn(\n 'ElTooltip',\n 'open-delay is about to be deprecated in the next major version, please use `show-after` instead'\n )\n }\n return props.openDelay || (props.showAfter as number)\n })\n const compatShowArrow = computed(() => {\n if (!isUndefined(props.visibleArrow)) {\n debugWarn(\n 'ElTooltip',\n '`visible-arrow` is about to be deprecated in the next major version, please use `show-arrow` instead'\n )\n }\n return isBool(props.visibleArrow) ? props.visibleArrow : props.showArrow\n })\n\n const id = useId()\n const popperRef = ref<InstanceType<typeof ElPopper> | null>(null)\n\n const updatePopper = () => {\n const popperComponent = unref(popperRef)\n if (popperComponent) {\n popperComponent.popperInstanceRef?.update()\n }\n }\n const open = ref(false)\n\n const { show, hide } = useModelToggle({\n indicator: open,\n })\n\n const { onOpen, onClose } = useDelayedToggle({\n showAfter: compatShowAfter,\n hideAfter: toRef(props, 'hideAfter'),\n open: show,\n close: hide,\n })\n\n const controlled = computed(() => isBool(props.visible))\n\n provide(TOOLTIP_INJECTION_KEY, {\n controlled,\n id,\n open: readonly(open),\n trigger: toRef(props, 'trigger'),\n onOpen,\n onClose,\n onToggle: () => {\n if (unref(open)) {\n onClose()\n } else {\n onOpen()\n }\n },\n onShow: () => {\n emit('show')\n },\n onHide: () => {\n emit('hide')\n },\n updatePopper,\n })\n\n return {\n compatShowAfter,\n compatShowArrow,\n popperRef,\n open,\n updatePopper,\n onOpen,\n onClose,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;sBAEI;;QACG;;QAEA;;;;uBAGkB;;;;;;;QAGlB;QACA;QACA;QACA;QACA,MAAM,EAAE,WAAM;QACd;QACA,qBAAmB;QACnB,cAAY;QACZ;QACA;QACA,UAAU;QACV;QACA,cAAY,EAAE,gBAAW;QACzB;QACA;QACA;QACA;QACA,gBAAc;;QAEd;kCACsB;;iBAEf,EAAE;;;;;;;;;;;;;;;;;;"}
@@ -12,7 +12,7 @@ declare const _default: import("vue").DefineComponent<{
12
12
  onFocus: (event: Event) => void;
13
13
  onMouseenter: (event: Event) => void;
14
14
  onMouseleave: (event: Event) => void;
15
- onMousedown: (event: Event) => void;
15
+ onClick: (event: Event) => void;
16
16
  onKeydown: (event: KeyboardEvent) => void;
17
17
  open: import("vue").Ref<boolean>;
18
18
  id: import("vue").Ref<string>;
@@ -24,7 +24,7 @@ var script = defineComponent({
24
24
  const trigger = toRef(props, "trigger");
25
25
  const onMouseenter = composeEventHandlers(stopWhenControlledOrDisabled, whenTrigger(trigger, "hover", onOpen));
26
26
  const onMouseleave = composeEventHandlers(stopWhenControlledOrDisabled, whenTrigger(trigger, "hover", onClose));
27
- const onMousedown = composeEventHandlers(stopWhenControlledOrDisabled, whenTrigger(trigger, "click", (e) => {
27
+ const onClick = composeEventHandlers(stopWhenControlledOrDisabled, whenTrigger(trigger, "click", (e) => {
28
28
  if (e.button === 0) {
29
29
  onToggle(e);
30
30
  }
@@ -47,7 +47,7 @@ var script = defineComponent({
47
47
  onFocus,
48
48
  onMouseenter,
49
49
  onMouseleave,
50
- onMousedown,
50
+ onClick,
51
51
  onKeydown,
52
52
  open,
53
53
  id,
@@ -1 +1 @@
1
- {"version":3,"file":"trigger.vue_vue_type_script_lang.mjs","sources":["../../../../../../packages/components/tooltip/src/trigger.vue"],"sourcesContent":["<template>\n <el-popper-trigger\n :id=\"id\"\n :virtual-ref=\"virtualRef\"\n :open=\"open\"\n :virtual-triggering=\"virtualTriggering\"\n class=\"el-tooltip__trigger\"\n @blur=\"onBlur\"\n @contextmenu=\"onContextMenu\"\n @focus=\"onFocus\"\n @mouseenter=\"onMouseenter\"\n @mouseleave=\"onMouseleave\"\n @mousedown=\"onMousedown\"\n @keydown=\"onKeydown\"\n >\n <slot />\n </el-popper-trigger>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, inject, ref, unref, toRef } from 'vue'\nimport { ElPopperTrigger } from '@element-plus/components/popper'\nimport { EVENT_CODE } from '@element-plus/utils/aria'\nimport { composeEventHandlers } from '@element-plus/utils/dom'\nimport { TOOLTIP_INJECTION_KEY } from './tokens'\nimport { useTooltipTriggerProps } from './tooltip'\nimport { whenTrigger } from './utils'\n\nimport type { ElOnlyChildExpose } from '@element-plus/components/slot'\n\nexport default defineComponent({\n name: 'ElTooltipTrigger',\n components: {\n ElPopperTrigger,\n },\n props: useTooltipTriggerProps,\n setup(props) {\n const { controlled, id, open, onOpen, onClose, onToggle } = inject(\n TOOLTIP_INJECTION_KEY,\n undefined\n )!\n const triggerRef = ref<ElOnlyChildExpose | null>(null)\n\n const stopWhenControlledOrDisabled = () => {\n if (unref(controlled) || props.disabled) {\n return true\n }\n }\n const trigger = toRef(props, 'trigger')\n const onMouseenter = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'hover', onOpen)\n )\n const onMouseleave = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'hover', onClose)\n )\n const onMousedown = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'click', (e) => {\n // distinguish left click\n if ((e as MouseEvent).button === 0) {\n onToggle(e)\n }\n })\n )\n\n const onFocus = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'focus', onOpen)\n )\n\n const onBlur = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'focus', onClose)\n )\n\n const onContextMenu = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'contextmenu', (e: Event) => {\n e.preventDefault()\n onToggle(e)\n })\n )\n\n const onKeydown = composeEventHandlers(\n stopWhenControlledOrDisabled,\n (e: KeyboardEvent) => {\n const { code } = e\n if (code === EVENT_CODE.enter || code === EVENT_CODE.space) {\n onToggle(e)\n }\n }\n )\n\n return {\n onBlur,\n onContextMenu,\n onFocus,\n onMouseenter,\n onMouseleave,\n onMousedown,\n onKeydown,\n open,\n id,\n triggerRef,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;AA0BA,aAAe,eAAe,CAAC;;AAE/B,EAAE,UAAU,EAAE;;AAEd,GAAG;EACD,OAAO;EACP,KAAK,CAAC;IACJ,MAAM,EAAE;;IAER,MAAM;MACJ,IAAI,KAAK;QACP,OAAO,IAAI,CAAC;OACb;MACD;IACF;IACA,MAAM,eAAe,oBAAoB;;IAEzC,MAAM,WAAW,GAAG,oBAAoB,CAAC;MACvC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;QAClB,QAAQ,CAAC,CAAC;;;IAGd,MAAM,UAAU,oBAAoB,CAAC;IACrC,MAAM,MAAM,GAAG,oBAAoB,CAAC;UAC9B,aAAa,GAAG;MACpB,CAAC,CAAC,cAAc,EAAE,CAAC;;KAEpB,CAAC,CAAC,CAAC;UACE,SAAS,GAAG;MAChB,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;;QAEjB,QAAQ,CAAC,CAAC,CAAC,CAAC;OACb;MACD,CAAC;WACI;YACC;mBACO;;MAEb;;;MAGA,SAAS;MACT,IAAI;MACJ,EAAE;;;;;;;;"}
1
+ {"version":3,"file":"trigger.vue_vue_type_script_lang.mjs","sources":["../../../../../../packages/components/tooltip/src/trigger.vue"],"sourcesContent":["<template>\n <el-popper-trigger\n :id=\"id\"\n :virtual-ref=\"virtualRef\"\n :open=\"open\"\n :virtual-triggering=\"virtualTriggering\"\n class=\"el-tooltip__trigger\"\n @blur=\"onBlur\"\n @click=\"onClick\"\n @contextmenu=\"onContextMenu\"\n @focus=\"onFocus\"\n @mouseenter=\"onMouseenter\"\n @mouseleave=\"onMouseleave\"\n @keydown=\"onKeydown\"\n >\n <slot />\n </el-popper-trigger>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, inject, ref, unref, toRef } from 'vue'\nimport { ElPopperTrigger } from '@element-plus/components/popper'\nimport { EVENT_CODE } from '@element-plus/utils/aria'\nimport { composeEventHandlers } from '@element-plus/utils/dom'\nimport { TOOLTIP_INJECTION_KEY } from './tokens'\nimport { useTooltipTriggerProps } from './tooltip'\nimport { whenTrigger } from './utils'\n\nimport type { ElOnlyChildExpose } from '@element-plus/components/slot'\n\nexport default defineComponent({\n name: 'ElTooltipTrigger',\n components: {\n ElPopperTrigger,\n },\n props: useTooltipTriggerProps,\n setup(props) {\n const { controlled, id, open, onOpen, onClose, onToggle } = inject(\n TOOLTIP_INJECTION_KEY,\n undefined\n )!\n const triggerRef = ref<ElOnlyChildExpose | null>(null)\n\n const stopWhenControlledOrDisabled = () => {\n if (unref(controlled) || props.disabled) {\n return true\n }\n }\n const trigger = toRef(props, 'trigger')\n const onMouseenter = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'hover', onOpen)\n )\n const onMouseleave = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'hover', onClose)\n )\n const onClick = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'click', (e) => {\n // distinguish left click\n if ((e as MouseEvent).button === 0) {\n onToggle(e)\n }\n })\n )\n\n const onFocus = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'focus', onOpen)\n )\n\n const onBlur = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'focus', onClose)\n )\n\n const onContextMenu = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'contextmenu', (e: Event) => {\n e.preventDefault()\n onToggle(e)\n })\n )\n\n const onKeydown = composeEventHandlers(\n stopWhenControlledOrDisabled,\n (e: KeyboardEvent) => {\n const { code } = e\n if (code === EVENT_CODE.enter || code === EVENT_CODE.space) {\n onToggle(e)\n }\n }\n )\n\n return {\n onBlur,\n onContextMenu,\n onFocus,\n onMouseenter,\n onMouseleave,\n onClick,\n onKeydown,\n open,\n id,\n triggerRef,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;AA0BA,aAAe,eAAe,CAAC;;AAE/B,EAAE,UAAU,EAAE;;AAEd,GAAG;EACD,OAAO;EACP,KAAK,CAAC;IACJ,MAAM,EAAE;;IAER,MAAM;MACJ,IAAI,KAAK;QACP,OAAO,IAAI,CAAC;OACb;MACD;IACF;IACA,MAAM,eAAe,oBAAoB;;IAEzC,MAAM,OAAO,GAAG,qBAAqB;MACnC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;QAClB,QAAQ,CAAC,CAAC;;;IAGd,MAAM,UAAU,oBAAoB,CAAC;IACrC,MAAM,MAAM,GAAG,oBAAoB,CAAC;UAC9B,aAAa,GAAG;MACpB,CAAC,CAAC,cAAc,EAAE,CAAC;;KAEpB,CAAC,CAAC,CAAC;UACE,SAAS,GAAG;MAChB,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;;QAEjB,QAAQ,EAAE,EAAE;OACb;MACD,CAAC;WACI;YACC;mBACO;;MAEb;;;MAGA,SAAS;MACT,IAAI;MACJ,EAAE;;;;;;;;"}
@@ -9,18 +9,18 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
9
9
  "virtual-triggering": _ctx.virtualTriggering,
10
10
  class: "el-tooltip__trigger",
11
11
  onBlur: _ctx.onBlur,
12
+ onClick: _ctx.onClick,
12
13
  onContextmenu: _ctx.onContextMenu,
13
14
  onFocus: _ctx.onFocus,
14
15
  onMouseenter: _ctx.onMouseenter,
15
16
  onMouseleave: _ctx.onMouseleave,
16
- onMousedown: _ctx.onMousedown,
17
17
  onKeydown: _ctx.onKeydown
18
18
  }, {
19
19
  default: withCtx(() => [
20
20
  renderSlot(_ctx.$slots, "default")
21
21
  ]),
22
22
  _: 3
23
- }, 8, ["id", "virtual-ref", "open", "virtual-triggering", "onBlur", "onContextmenu", "onFocus", "onMouseenter", "onMouseleave", "onMousedown", "onKeydown"]);
23
+ }, 8, ["id", "virtual-ref", "open", "virtual-triggering", "onBlur", "onClick", "onContextmenu", "onFocus", "onMouseenter", "onMouseleave", "onKeydown"]);
24
24
  }
25
25
 
26
26
  export { render };
@@ -1 +1 @@
1
- {"version":3,"file":"trigger.vue_vue_type_template_id_0ec0b94c_lang.mjs","sources":["../../../../../../packages/components/tooltip/src/trigger.vue?vue&type=template&id=0ec0b94c&lang.js"],"sourcesContent":["<template>\n <el-popper-trigger\n :id=\"id\"\n :virtual-ref=\"virtualRef\"\n :open=\"open\"\n :virtual-triggering=\"virtualTriggering\"\n class=\"el-tooltip__trigger\"\n @blur=\"onBlur\"\n @contextmenu=\"onContextMenu\"\n @focus=\"onFocus\"\n @mouseenter=\"onMouseenter\"\n @mouseleave=\"onMouseleave\"\n @mousedown=\"onMousedown\"\n @keydown=\"onKeydown\"\n >\n <slot />\n </el-popper-trigger>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, inject, ref, unref, toRef } from 'vue'\nimport { ElPopperTrigger } from '@element-plus/components/popper'\nimport { EVENT_CODE } from '@element-plus/utils/aria'\nimport { composeEventHandlers } from '@element-plus/utils/dom'\nimport { TOOLTIP_INJECTION_KEY } from './tokens'\nimport { useTooltipTriggerProps } from './tooltip'\nimport { whenTrigger } from './utils'\n\nimport type { ElOnlyChildExpose } from '@element-plus/components/slot'\n\nexport default defineComponent({\n name: 'ElTooltipTrigger',\n components: {\n ElPopperTrigger,\n },\n props: useTooltipTriggerProps,\n setup(props) {\n const { controlled, id, open, onOpen, onClose, onToggle } = inject(\n TOOLTIP_INJECTION_KEY,\n undefined\n )!\n const triggerRef = ref<ElOnlyChildExpose | null>(null)\n\n const stopWhenControlledOrDisabled = () => {\n if (unref(controlled) || props.disabled) {\n return true\n }\n }\n const trigger = toRef(props, 'trigger')\n const onMouseenter = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'hover', onOpen)\n )\n const onMouseleave = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'hover', onClose)\n )\n const onMousedown = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'click', (e) => {\n // distinguish left click\n if ((e as MouseEvent).button === 0) {\n onToggle(e)\n }\n })\n )\n\n const onFocus = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'focus', onOpen)\n )\n\n const onBlur = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'focus', onClose)\n )\n\n const onContextMenu = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'contextmenu', (e: Event) => {\n e.preventDefault()\n onToggle(e)\n })\n )\n\n const onKeydown = composeEventHandlers(\n stopWhenControlledOrDisabled,\n (e: KeyboardEvent) => {\n const { code } = e\n if (code === EVENT_CODE.enter || code === EVENT_CODE.space) {\n onToggle(e)\n }\n }\n )\n\n return {\n onBlur,\n onContextMenu,\n onFocus,\n onMouseenter,\n onMouseleave,\n onMousedown,\n onKeydown,\n open,\n id,\n triggerRef,\n }\n },\n})\n</script>\n"],"names":["_withCtx"],"mappings":";;;;;;wBACE;IACG,IAAI,OAAE;IACN;IACA;IACA;IACD;IACC;IACA;IACA;IACA;IACA;;IAEA,SAAOA;;;;;;;;;"}
1
+ {"version":3,"file":"trigger.vue_vue_type_template_id_0ec0b94c_lang.mjs","sources":["../../../../../../packages/components/tooltip/src/trigger.vue?vue&type=template&id=0ec0b94c&lang.js"],"sourcesContent":["<template>\n <el-popper-trigger\n :id=\"id\"\n :virtual-ref=\"virtualRef\"\n :open=\"open\"\n :virtual-triggering=\"virtualTriggering\"\n class=\"el-tooltip__trigger\"\n @blur=\"onBlur\"\n @click=\"onClick\"\n @contextmenu=\"onContextMenu\"\n @focus=\"onFocus\"\n @mouseenter=\"onMouseenter\"\n @mouseleave=\"onMouseleave\"\n @keydown=\"onKeydown\"\n >\n <slot />\n </el-popper-trigger>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, inject, ref, unref, toRef } from 'vue'\nimport { ElPopperTrigger } from '@element-plus/components/popper'\nimport { EVENT_CODE } from '@element-plus/utils/aria'\nimport { composeEventHandlers } from '@element-plus/utils/dom'\nimport { TOOLTIP_INJECTION_KEY } from './tokens'\nimport { useTooltipTriggerProps } from './tooltip'\nimport { whenTrigger } from './utils'\n\nimport type { ElOnlyChildExpose } from '@element-plus/components/slot'\n\nexport default defineComponent({\n name: 'ElTooltipTrigger',\n components: {\n ElPopperTrigger,\n },\n props: useTooltipTriggerProps,\n setup(props) {\n const { controlled, id, open, onOpen, onClose, onToggle } = inject(\n TOOLTIP_INJECTION_KEY,\n undefined\n )!\n const triggerRef = ref<ElOnlyChildExpose | null>(null)\n\n const stopWhenControlledOrDisabled = () => {\n if (unref(controlled) || props.disabled) {\n return true\n }\n }\n const trigger = toRef(props, 'trigger')\n const onMouseenter = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'hover', onOpen)\n )\n const onMouseleave = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'hover', onClose)\n )\n const onClick = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'click', (e) => {\n // distinguish left click\n if ((e as MouseEvent).button === 0) {\n onToggle(e)\n }\n })\n )\n\n const onFocus = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'focus', onOpen)\n )\n\n const onBlur = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'focus', onClose)\n )\n\n const onContextMenu = composeEventHandlers(\n stopWhenControlledOrDisabled,\n whenTrigger(trigger, 'contextmenu', (e: Event) => {\n e.preventDefault()\n onToggle(e)\n })\n )\n\n const onKeydown = composeEventHandlers(\n stopWhenControlledOrDisabled,\n (e: KeyboardEvent) => {\n const { code } = e\n if (code === EVENT_CODE.enter || code === EVENT_CODE.space) {\n onToggle(e)\n }\n }\n )\n\n return {\n onBlur,\n onContextMenu,\n onFocus,\n onMouseenter,\n onMouseleave,\n onClick,\n onKeydown,\n open,\n id,\n triggerRef,\n }\n },\n})\n</script>\n"],"names":["_withCtx"],"mappings":";;;;;;wBACE;IACG,IAAI,OAAE;IACN;IACA;IACA;IACD,OAAM;IACL,mBAAY;IACZ,OAAK,EAAE,YAAO;IACd;IACA;IACA;;IAEA,SAAOA;;;;;;;;;"}
@@ -41,7 +41,7 @@ function useDragNodeHandler({ props, ctx, el$, dropIndicator$, store }) {
41
41
  userAllowDropInner = dropInner = props.allowDrop(draggingNode.node, dropNode.node, "inner");
42
42
  dropNext = props.allowDrop(draggingNode.node, dropNode.node, "next");
43
43
  }
44
- event.dataTransfer.dropEffect = dropInner ? "move" : "none";
44
+ event.dataTransfer.dropEffect = dropInner || dropPrev || dropNext ? "move" : "none";
45
45
  if ((dropPrev || dropInner || dropNext) && oldDropNode !== dropNode) {
46
46
  if (oldDropNode) {
47
47
  ctx.emit("node-drag-leave", draggingNode.node, oldDropNode.node, event);
@@ -1 +1 @@
1
- {"version":3,"file":"useDragNode.mjs","sources":["../../../../../../../packages/components/tree/src/model/useDragNode.ts"],"sourcesContent":["import { provide, ref } from 'vue'\nimport { addClass, removeClass } from '@element-plus/utils/dom'\nimport type { InjectionKey } from 'vue'\nimport type Node from './node'\n\ninterface TreeNode {\n node: Node\n $el?: HTMLElement\n}\n\ninterface DragOptions {\n event: DragEvent\n treeNode: TreeNode\n}\n\nexport interface DragEvents {\n treeNodeDragStart: (options: DragOptions) => void\n treeNodeDragOver: (options: DragOptions) => void\n treeNodeDragEnd: (event: DragEvent) => void\n}\n\nexport const dragEventsKey: InjectionKey<DragEvents> = Symbol('dragEvents')\n\nexport function useDragNodeHandler({ props, ctx, el$, dropIndicator$, store }) {\n const dragState = ref({\n showDropIndicator: false,\n draggingNode: null,\n dropNode: null,\n allowDrop: true,\n dropType: null,\n })\n\n const treeNodeDragStart = ({ event, treeNode }: DragOptions) => {\n if (\n typeof props.allowDrag === 'function' &&\n !props.allowDrag(treeNode.node)\n ) {\n event.preventDefault()\n return false\n }\n event.dataTransfer.effectAllowed = 'move'\n\n // wrap in try catch to address IE's error when first param is 'text/plain'\n try {\n // setData is required for draggable to work in FireFox\n // the content has to be '' so dragging a node out of the tree won't open a new tab in FireFox\n event.dataTransfer.setData('text/plain', '')\n } catch (e) {}\n dragState.value.draggingNode = treeNode\n ctx.emit('node-drag-start', treeNode.node, event)\n }\n\n const treeNodeDragOver = ({ event, treeNode }: DragOptions) => {\n const dropNode = treeNode\n const oldDropNode = dragState.value.dropNode\n if (oldDropNode && oldDropNode !== dropNode) {\n removeClass(oldDropNode.$el, 'is-drop-inner')\n }\n const draggingNode = dragState.value.draggingNode\n if (!draggingNode || !dropNode) return\n\n let dropPrev = true\n let dropInner = true\n let dropNext = true\n let userAllowDropInner = true\n if (typeof props.allowDrop === 'function') {\n dropPrev = props.allowDrop(draggingNode.node, dropNode.node, 'prev')\n userAllowDropInner = dropInner = props.allowDrop(\n draggingNode.node,\n dropNode.node,\n 'inner'\n )\n dropNext = props.allowDrop(draggingNode.node, dropNode.node, 'next')\n }\n event.dataTransfer.dropEffect = dropInner ? 'move' : 'none'\n if ((dropPrev || dropInner || dropNext) && oldDropNode !== dropNode) {\n if (oldDropNode) {\n ctx.emit('node-drag-leave', draggingNode.node, oldDropNode.node, event)\n }\n ctx.emit('node-drag-enter', draggingNode.node, dropNode.node, event)\n }\n\n if (dropPrev || dropInner || dropNext) {\n dragState.value.dropNode = dropNode\n }\n\n if (dropNode.node.nextSibling === draggingNode.node) {\n dropNext = false\n }\n if (dropNode.node.previousSibling === draggingNode.node) {\n dropPrev = false\n }\n if (dropNode.node.contains(draggingNode.node, false)) {\n dropInner = false\n }\n if (\n draggingNode.node === dropNode.node ||\n draggingNode.node.contains(dropNode.node)\n ) {\n dropPrev = false\n dropInner = false\n dropNext = false\n }\n\n const targetPosition = dropNode.$el.getBoundingClientRect()\n const treePosition = el$.value.getBoundingClientRect()\n\n let dropType\n const prevPercent = dropPrev ? (dropInner ? 0.25 : dropNext ? 0.45 : 1) : -1\n const nextPercent = dropNext ? (dropInner ? 0.75 : dropPrev ? 0.55 : 0) : 1\n\n let indicatorTop = -9999\n const distance = event.clientY - targetPosition.top\n if (distance < targetPosition.height * prevPercent) {\n dropType = 'before'\n } else if (distance > targetPosition.height * nextPercent) {\n dropType = 'after'\n } else if (dropInner) {\n dropType = 'inner'\n } else {\n dropType = 'none'\n }\n\n const iconPosition = dropNode.$el\n .querySelector('.el-tree-node__expand-icon')\n .getBoundingClientRect()\n const dropIndicator = dropIndicator$.value\n if (dropType === 'before') {\n indicatorTop = iconPosition.top - treePosition.top\n } else if (dropType === 'after') {\n indicatorTop = iconPosition.bottom - treePosition.top\n }\n dropIndicator.style.top = `${indicatorTop}px`\n dropIndicator.style.left = `${iconPosition.right - treePosition.left}px`\n\n if (dropType === 'inner') {\n addClass(dropNode.$el, 'is-drop-inner')\n } else {\n removeClass(dropNode.$el, 'is-drop-inner')\n }\n\n dragState.value.showDropIndicator =\n dropType === 'before' || dropType === 'after'\n dragState.value.allowDrop =\n dragState.value.showDropIndicator || userAllowDropInner\n dragState.value.dropType = dropType\n ctx.emit('node-drag-over', draggingNode.node, dropNode.node, event)\n }\n\n const treeNodeDragEnd = (event: DragEvent) => {\n const { draggingNode, dropType, dropNode } = dragState.value\n event.preventDefault()\n event.dataTransfer.dropEffect = 'move'\n\n if (draggingNode && dropNode) {\n const draggingNodeCopy = { data: draggingNode.node.data }\n if (dropType !== 'none') {\n draggingNode.node.remove()\n }\n if (dropType === 'before') {\n dropNode.node.parent.insertBefore(draggingNodeCopy, dropNode.node)\n } else if (dropType === 'after') {\n dropNode.node.parent.insertAfter(draggingNodeCopy, dropNode.node)\n } else if (dropType === 'inner') {\n dropNode.node.insertChild(draggingNodeCopy)\n }\n if (dropType !== 'none') {\n store.value.registerNode(draggingNodeCopy)\n }\n\n removeClass(dropNode.$el, 'is-drop-inner')\n\n ctx.emit(\n 'node-drag-end',\n draggingNode.node,\n dropNode.node,\n dropType,\n event\n )\n if (dropType !== 'none') {\n ctx.emit('node-drop', draggingNode.node, dropNode.node, dropType, event)\n }\n }\n if (draggingNode && !dropNode) {\n ctx.emit('node-drag-end', draggingNode.node, null, dropType, event)\n }\n\n dragState.value.showDropIndicator = false\n dragState.value.draggingNode = null\n dragState.value.dropNode = null\n dragState.value.allowDrop = true\n }\n\n provide(dragEventsKey, {\n treeNodeDragStart,\n treeNodeDragOver,\n treeNodeDragEnd,\n })\n\n return {\n dragState,\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useDragNode.mjs","sources":["../../../../../../../packages/components/tree/src/model/useDragNode.ts"],"sourcesContent":["import { provide, ref } from 'vue'\nimport { addClass, removeClass } from '@element-plus/utils/dom'\nimport type { InjectionKey } from 'vue'\nimport type Node from './node'\n\ninterface TreeNode {\n node: Node\n $el?: HTMLElement\n}\n\ninterface DragOptions {\n event: DragEvent\n treeNode: TreeNode\n}\n\nexport interface DragEvents {\n treeNodeDragStart: (options: DragOptions) => void\n treeNodeDragOver: (options: DragOptions) => void\n treeNodeDragEnd: (event: DragEvent) => void\n}\n\nexport const dragEventsKey: InjectionKey<DragEvents> = Symbol('dragEvents')\n\nexport function useDragNodeHandler({ props, ctx, el$, dropIndicator$, store }) {\n const dragState = ref({\n showDropIndicator: false,\n draggingNode: null,\n dropNode: null,\n allowDrop: true,\n dropType: null,\n })\n\n const treeNodeDragStart = ({ event, treeNode }: DragOptions) => {\n if (\n typeof props.allowDrag === 'function' &&\n !props.allowDrag(treeNode.node)\n ) {\n event.preventDefault()\n return false\n }\n event.dataTransfer.effectAllowed = 'move'\n\n // wrap in try catch to address IE's error when first param is 'text/plain'\n try {\n // setData is required for draggable to work in FireFox\n // the content has to be '' so dragging a node out of the tree won't open a new tab in FireFox\n event.dataTransfer.setData('text/plain', '')\n } catch (e) {}\n dragState.value.draggingNode = treeNode\n ctx.emit('node-drag-start', treeNode.node, event)\n }\n\n const treeNodeDragOver = ({ event, treeNode }: DragOptions) => {\n const dropNode = treeNode\n const oldDropNode = dragState.value.dropNode\n if (oldDropNode && oldDropNode !== dropNode) {\n removeClass(oldDropNode.$el, 'is-drop-inner')\n }\n const draggingNode = dragState.value.draggingNode\n if (!draggingNode || !dropNode) return\n\n let dropPrev = true\n let dropInner = true\n let dropNext = true\n let userAllowDropInner = true\n if (typeof props.allowDrop === 'function') {\n dropPrev = props.allowDrop(draggingNode.node, dropNode.node, 'prev')\n userAllowDropInner = dropInner = props.allowDrop(\n draggingNode.node,\n dropNode.node,\n 'inner'\n )\n dropNext = props.allowDrop(draggingNode.node, dropNode.node, 'next')\n }\n event.dataTransfer.dropEffect =\n dropInner || dropPrev || dropNext ? 'move' : 'none'\n if ((dropPrev || dropInner || dropNext) && oldDropNode !== dropNode) {\n if (oldDropNode) {\n ctx.emit('node-drag-leave', draggingNode.node, oldDropNode.node, event)\n }\n ctx.emit('node-drag-enter', draggingNode.node, dropNode.node, event)\n }\n\n if (dropPrev || dropInner || dropNext) {\n dragState.value.dropNode = dropNode\n }\n\n if (dropNode.node.nextSibling === draggingNode.node) {\n dropNext = false\n }\n if (dropNode.node.previousSibling === draggingNode.node) {\n dropPrev = false\n }\n if (dropNode.node.contains(draggingNode.node, false)) {\n dropInner = false\n }\n if (\n draggingNode.node === dropNode.node ||\n draggingNode.node.contains(dropNode.node)\n ) {\n dropPrev = false\n dropInner = false\n dropNext = false\n }\n\n const targetPosition = dropNode.$el.getBoundingClientRect()\n const treePosition = el$.value.getBoundingClientRect()\n\n let dropType\n const prevPercent = dropPrev ? (dropInner ? 0.25 : dropNext ? 0.45 : 1) : -1\n const nextPercent = dropNext ? (dropInner ? 0.75 : dropPrev ? 0.55 : 0) : 1\n\n let indicatorTop = -9999\n const distance = event.clientY - targetPosition.top\n if (distance < targetPosition.height * prevPercent) {\n dropType = 'before'\n } else if (distance > targetPosition.height * nextPercent) {\n dropType = 'after'\n } else if (dropInner) {\n dropType = 'inner'\n } else {\n dropType = 'none'\n }\n\n const iconPosition = dropNode.$el\n .querySelector('.el-tree-node__expand-icon')\n .getBoundingClientRect()\n const dropIndicator = dropIndicator$.value\n if (dropType === 'before') {\n indicatorTop = iconPosition.top - treePosition.top\n } else if (dropType === 'after') {\n indicatorTop = iconPosition.bottom - treePosition.top\n }\n dropIndicator.style.top = `${indicatorTop}px`\n dropIndicator.style.left = `${iconPosition.right - treePosition.left}px`\n\n if (dropType === 'inner') {\n addClass(dropNode.$el, 'is-drop-inner')\n } else {\n removeClass(dropNode.$el, 'is-drop-inner')\n }\n\n dragState.value.showDropIndicator =\n dropType === 'before' || dropType === 'after'\n dragState.value.allowDrop =\n dragState.value.showDropIndicator || userAllowDropInner\n dragState.value.dropType = dropType\n ctx.emit('node-drag-over', draggingNode.node, dropNode.node, event)\n }\n\n const treeNodeDragEnd = (event: DragEvent) => {\n const { draggingNode, dropType, dropNode } = dragState.value\n event.preventDefault()\n event.dataTransfer.dropEffect = 'move'\n\n if (draggingNode && dropNode) {\n const draggingNodeCopy = { data: draggingNode.node.data }\n if (dropType !== 'none') {\n draggingNode.node.remove()\n }\n if (dropType === 'before') {\n dropNode.node.parent.insertBefore(draggingNodeCopy, dropNode.node)\n } else if (dropType === 'after') {\n dropNode.node.parent.insertAfter(draggingNodeCopy, dropNode.node)\n } else if (dropType === 'inner') {\n dropNode.node.insertChild(draggingNodeCopy)\n }\n if (dropType !== 'none') {\n store.value.registerNode(draggingNodeCopy)\n }\n\n removeClass(dropNode.$el, 'is-drop-inner')\n\n ctx.emit(\n 'node-drag-end',\n draggingNode.node,\n dropNode.node,\n dropType,\n event\n )\n if (dropType !== 'none') {\n ctx.emit('node-drop', draggingNode.node, dropNode.node, dropType, event)\n }\n }\n if (draggingNode && !dropNode) {\n ctx.emit('node-drag-end', draggingNode.node, null, dropType, event)\n }\n\n dragState.value.showDropIndicator = false\n dragState.value.draggingNode = null\n dragState.value.dropNode = null\n dragState.value.allowDrop = true\n }\n\n provide(dragEventsKey, {\n treeNodeDragStart,\n treeNodeDragOver,\n treeNodeDragEnd,\n })\n\n return {\n dragState,\n }\n}\n"],"names":[],"mappings":"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"}
@@ -159,13 +159,13 @@ var script = defineComponent({
159
159
  dragEvents.treeNodeDragStart({ event, treeNode: props });
160
160
  };
161
161
  const handleDragOver = (event) => {
162
+ event.preventDefault();
162
163
  if (!tree.props.draggable)
163
164
  return;
164
165
  dragEvents.treeNodeDragOver({
165
166
  event,
166
167
  treeNode: { $el: node$.value, node: props.node }
167
168
  });
168
- event.preventDefault();
169
169
  };
170
170
  const handleDrop = (event) => {
171
171
  event.preventDefault();
@@ -1 +1 @@
1
- {"version":3,"file":"tree-node.vue_vue_type_script_lang.mjs","sources":["../../../../../../packages/components/tree/src/tree-node.vue"],"sourcesContent":["<template>\n <div\n v-show=\"node.visible\"\n ref=\"node$\"\n class=\"el-tree-node\"\n :class=\"{\n 'is-expanded': expanded,\n 'is-current': node.isCurrent,\n 'is-hidden': !node.visible,\n 'is-focusable': !node.disabled,\n 'is-checked': !node.disabled && node.checked,\n ...getNodeClass(node),\n }\"\n role=\"treeitem\"\n tabindex=\"-1\"\n :aria-expanded=\"expanded\"\n :aria-disabled=\"node.disabled\"\n :aria-checked=\"node.checked\"\n :draggable=\"tree.props.draggable\"\n :data-key=\"getNodeKey(node)\"\n @click.stop=\"handleClick\"\n @contextmenu=\"handleContextMenu\"\n @dragstart.stop=\"handleDragStart\"\n @dragover.stop=\"handleDragOver\"\n @dragend.stop=\"handleDragEnd\"\n @drop.stop=\"handleDrop\"\n >\n <div\n class=\"el-tree-node__content\"\n :style=\"{ paddingLeft: (node.level - 1) * tree.props.indent + 'px' }\"\n >\n <el-icon\n v-if=\"tree.props.icon || CaretRight\"\n :class=\"[\n {\n 'is-leaf': node.isLeaf,\n expanded: !node.isLeaf && expanded,\n },\n 'el-tree-node__expand-icon',\n ]\"\n @click.stop=\"handleExpandIconClick\"\n >\n <component :is=\"tree.props.icon || CaretRight\"></component>\n </el-icon>\n <el-checkbox\n v-if=\"showCheckbox\"\n :model-value=\"node.checked\"\n :indeterminate=\"node.indeterminate\"\n :disabled=\"!!node.disabled\"\n @click.stop\n @change=\"handleCheckChange\"\n />\n <el-icon\n v-if=\"node.loading\"\n class=\"el-tree-node__loading-icon is-loading\"\n >\n <loading />\n </el-icon>\n <node-content :node=\"node\" :render-content=\"renderContent\" />\n </div>\n <el-collapse-transition>\n <div\n v-if=\"!renderAfterExpand || childNodeRendered\"\n v-show=\"expanded\"\n class=\"el-tree-node__children\"\n role=\"group\"\n :aria-expanded=\"expanded\"\n >\n <el-tree-node\n v-for=\"child in node.childNodes\"\n :key=\"getNodeKey(child)\"\n :render-content=\"renderContent\"\n :render-after-expand=\"renderAfterExpand\"\n :show-checkbox=\"showCheckbox\"\n :node=\"child\"\n :props=\"props\"\n @node-expand=\"handleChildNodeExpand\"\n />\n </div>\n </el-collapse-transition>\n </div>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n getCurrentInstance,\n ref,\n watch,\n nextTick,\n inject,\n provide,\n} from 'vue'\nimport { isString, isFunction } from '@vue/shared'\nimport ElCollapseTransition from '@element-plus/components/collapse-transition'\nimport ElCheckbox from '@element-plus/components/checkbox'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { CaretRight, Loading } from '@element-plus/icons-vue'\nimport { debugWarn } from '@element-plus/utils/error'\nimport NodeContent from './tree-node-content.vue'\nimport { getNodeKey as getNodeKeyUtil } from './model/util'\nimport { useNodeExpandEventBroadcast } from './model/useNodeExpandEventBroadcast'\nimport { dragEventsKey } from './model/useDragNode'\nimport Node from './model/node'\n\nimport type { ComponentInternalInstance, PropType } from 'vue'\nimport type { Nullable } from '@element-plus/utils/types'\nimport type { TreeOptionProps, TreeNodeData, RootTreeType } from './tree.type'\n\nexport default defineComponent({\n name: 'ElTreeNode',\n components: {\n ElCollapseTransition,\n ElCheckbox,\n NodeContent,\n ElIcon,\n Loading,\n },\n props: {\n node: {\n type: Node,\n default: () => ({}),\n },\n props: {\n type: Object as PropType<TreeOptionProps>,\n default: () => ({}),\n },\n accordion: Boolean,\n renderContent: Function,\n renderAfterExpand: Boolean,\n showCheckbox: {\n type: Boolean,\n default: false,\n },\n },\n emits: ['node-expand'],\n setup(props, ctx) {\n const { broadcastExpanded } = useNodeExpandEventBroadcast(props)\n const tree = inject<RootTreeType>('RootTree')\n const expanded = ref(false)\n const childNodeRendered = ref(false)\n const oldChecked = ref<boolean>(null)\n const oldIndeterminate = ref<boolean>(null)\n const node$ = ref<Nullable<HTMLElement>>(null)\n const dragEvents = inject(dragEventsKey)\n const instance = getCurrentInstance()\n\n provide('NodeInstance', instance)\n if (!tree) {\n debugWarn('Tree', \"Can not find node's tree.\")\n }\n\n if (props.node.expanded) {\n expanded.value = true\n childNodeRendered.value = true\n }\n\n const childrenKey = tree.props['children'] || 'children'\n watch(\n () => {\n const children = props.node.data[childrenKey]\n return children && [...children]\n },\n () => {\n props.node.updateChildren()\n }\n )\n\n watch(\n () => props.node.indeterminate,\n (val) => {\n handleSelectChange(props.node.checked, val)\n }\n )\n\n watch(\n () => props.node.checked,\n (val) => {\n handleSelectChange(val, props.node.indeterminate)\n }\n )\n\n watch(\n () => props.node.expanded,\n (val) => {\n nextTick(() => (expanded.value = val))\n if (val) {\n childNodeRendered.value = true\n }\n }\n )\n\n const getNodeKey = (node: Node): any => {\n return getNodeKeyUtil(tree.props.nodeKey, node.data)\n }\n\n const getNodeClass = (node: Node) => {\n const nodeClassFunc = props.props.class\n if (!nodeClassFunc) {\n return {}\n }\n let className\n if (isFunction(nodeClassFunc)) {\n const { data } = node\n className = nodeClassFunc(data, node)\n } else {\n className = nodeClassFunc\n }\n\n if (isString(className)) {\n return { [className]: true }\n } else {\n return className\n }\n }\n\n const handleSelectChange = (checked: boolean, indeterminate: boolean) => {\n if (\n oldChecked.value !== checked ||\n oldIndeterminate.value !== indeterminate\n ) {\n tree.ctx.emit('check-change', props.node.data, checked, indeterminate)\n }\n oldChecked.value = checked\n oldIndeterminate.value = indeterminate\n }\n\n const handleClick = () => {\n const store = tree.store.value\n store.setCurrentNode(props.node)\n tree.ctx.emit(\n 'current-change',\n store.currentNode ? store.currentNode.data : null,\n store.currentNode\n )\n tree.currentNode.value = props.node\n\n if (tree.props.expandOnClickNode) {\n handleExpandIconClick()\n }\n\n if (tree.props.checkOnClickNode && !props.node.disabled) {\n handleCheckChange(null, {\n target: { checked: !props.node.checked },\n })\n }\n tree.ctx.emit('node-click', props.node.data, props.node, instance)\n }\n\n const handleContextMenu = (event: Event) => {\n if (tree.instance.vnode.props['onNodeContextmenu']) {\n event.stopPropagation()\n event.preventDefault()\n }\n tree.ctx.emit(\n 'node-contextmenu',\n event,\n props.node.data,\n props.node,\n instance\n )\n }\n\n const handleExpandIconClick = () => {\n if (props.node.isLeaf) return\n if (expanded.value) {\n tree.ctx.emit('node-collapse', props.node.data, props.node, instance)\n props.node.collapse()\n } else {\n props.node.expand()\n ctx.emit('node-expand', props.node.data, props.node, instance)\n }\n }\n\n const handleCheckChange = (value, ev) => {\n props.node.setChecked(ev.target.checked, !tree.props.checkStrictly)\n nextTick(() => {\n const store = tree.store.value\n tree.ctx.emit('check', props.node.data, {\n checkedNodes: store.getCheckedNodes(),\n checkedKeys: store.getCheckedKeys(),\n halfCheckedNodes: store.getHalfCheckedNodes(),\n halfCheckedKeys: store.getHalfCheckedKeys(),\n })\n })\n }\n\n const handleChildNodeExpand = (\n nodeData: TreeNodeData,\n node: Node,\n instance: ComponentInternalInstance\n ) => {\n broadcastExpanded(node)\n tree.ctx.emit('node-expand', nodeData, node, instance)\n }\n\n const handleDragStart = (event: DragEvent) => {\n if (!tree.props.draggable) return\n dragEvents.treeNodeDragStart({ event, treeNode: props })\n }\n\n const handleDragOver = (event: DragEvent) => {\n if (!tree.props.draggable) return\n dragEvents.treeNodeDragOver({\n event,\n treeNode: { $el: node$.value, node: props.node },\n })\n event.preventDefault()\n }\n\n const handleDrop = (event: DragEvent) => {\n event.preventDefault()\n }\n\n const handleDragEnd = (event: DragEvent) => {\n if (!tree.props.draggable) return\n dragEvents.treeNodeDragEnd(event)\n }\n\n return {\n node$,\n tree,\n expanded,\n childNodeRendered,\n oldChecked,\n oldIndeterminate,\n getNodeKey,\n getNodeClass,\n handleSelectChange,\n handleClick,\n handleContextMenu,\n handleExpandIconClick,\n handleCheckChange,\n handleChildNodeExpand,\n handleDragStart,\n handleDragOver,\n handleDrop,\n handleDragEnd,\n CaretRight,\n }\n },\n})\n</script>\n"],"names":["ElCollapseTransition"],"mappings":"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"}
1
+ {"version":3,"file":"tree-node.vue_vue_type_script_lang.mjs","sources":["../../../../../../packages/components/tree/src/tree-node.vue"],"sourcesContent":["<template>\n <div\n v-show=\"node.visible\"\n ref=\"node$\"\n class=\"el-tree-node\"\n :class=\"{\n 'is-expanded': expanded,\n 'is-current': node.isCurrent,\n 'is-hidden': !node.visible,\n 'is-focusable': !node.disabled,\n 'is-checked': !node.disabled && node.checked,\n ...getNodeClass(node),\n }\"\n role=\"treeitem\"\n tabindex=\"-1\"\n :aria-expanded=\"expanded\"\n :aria-disabled=\"node.disabled\"\n :aria-checked=\"node.checked\"\n :draggable=\"tree.props.draggable\"\n :data-key=\"getNodeKey(node)\"\n @click.stop=\"handleClick\"\n @contextmenu=\"handleContextMenu\"\n @dragstart.stop=\"handleDragStart\"\n @dragover.stop=\"handleDragOver\"\n @dragend.stop=\"handleDragEnd\"\n @drop.stop=\"handleDrop\"\n >\n <div\n class=\"el-tree-node__content\"\n :style=\"{ paddingLeft: (node.level - 1) * tree.props.indent + 'px' }\"\n >\n <el-icon\n v-if=\"tree.props.icon || CaretRight\"\n :class=\"[\n {\n 'is-leaf': node.isLeaf,\n expanded: !node.isLeaf && expanded,\n },\n 'el-tree-node__expand-icon',\n ]\"\n @click.stop=\"handleExpandIconClick\"\n >\n <component :is=\"tree.props.icon || CaretRight\"></component>\n </el-icon>\n <el-checkbox\n v-if=\"showCheckbox\"\n :model-value=\"node.checked\"\n :indeterminate=\"node.indeterminate\"\n :disabled=\"!!node.disabled\"\n @click.stop\n @change=\"handleCheckChange\"\n />\n <el-icon\n v-if=\"node.loading\"\n class=\"el-tree-node__loading-icon is-loading\"\n >\n <loading />\n </el-icon>\n <node-content :node=\"node\" :render-content=\"renderContent\" />\n </div>\n <el-collapse-transition>\n <div\n v-if=\"!renderAfterExpand || childNodeRendered\"\n v-show=\"expanded\"\n class=\"el-tree-node__children\"\n role=\"group\"\n :aria-expanded=\"expanded\"\n >\n <el-tree-node\n v-for=\"child in node.childNodes\"\n :key=\"getNodeKey(child)\"\n :render-content=\"renderContent\"\n :render-after-expand=\"renderAfterExpand\"\n :show-checkbox=\"showCheckbox\"\n :node=\"child\"\n :props=\"props\"\n @node-expand=\"handleChildNodeExpand\"\n />\n </div>\n </el-collapse-transition>\n </div>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n getCurrentInstance,\n ref,\n watch,\n nextTick,\n inject,\n provide,\n} from 'vue'\nimport { isString, isFunction } from '@vue/shared'\nimport ElCollapseTransition from '@element-plus/components/collapse-transition'\nimport ElCheckbox from '@element-plus/components/checkbox'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { CaretRight, Loading } from '@element-plus/icons-vue'\nimport { debugWarn } from '@element-plus/utils/error'\nimport NodeContent from './tree-node-content.vue'\nimport { getNodeKey as getNodeKeyUtil } from './model/util'\nimport { useNodeExpandEventBroadcast } from './model/useNodeExpandEventBroadcast'\nimport { dragEventsKey } from './model/useDragNode'\nimport Node from './model/node'\n\nimport type { ComponentInternalInstance, PropType } from 'vue'\nimport type { Nullable } from '@element-plus/utils/types'\nimport type { TreeOptionProps, TreeNodeData, RootTreeType } from './tree.type'\n\nexport default defineComponent({\n name: 'ElTreeNode',\n components: {\n ElCollapseTransition,\n ElCheckbox,\n NodeContent,\n ElIcon,\n Loading,\n },\n props: {\n node: {\n type: Node,\n default: () => ({}),\n },\n props: {\n type: Object as PropType<TreeOptionProps>,\n default: () => ({}),\n },\n accordion: Boolean,\n renderContent: Function,\n renderAfterExpand: Boolean,\n showCheckbox: {\n type: Boolean,\n default: false,\n },\n },\n emits: ['node-expand'],\n setup(props, ctx) {\n const { broadcastExpanded } = useNodeExpandEventBroadcast(props)\n const tree = inject<RootTreeType>('RootTree')\n const expanded = ref(false)\n const childNodeRendered = ref(false)\n const oldChecked = ref<boolean>(null)\n const oldIndeterminate = ref<boolean>(null)\n const node$ = ref<Nullable<HTMLElement>>(null)\n const dragEvents = inject(dragEventsKey)\n const instance = getCurrentInstance()\n\n provide('NodeInstance', instance)\n if (!tree) {\n debugWarn('Tree', \"Can not find node's tree.\")\n }\n\n if (props.node.expanded) {\n expanded.value = true\n childNodeRendered.value = true\n }\n\n const childrenKey = tree.props['children'] || 'children'\n watch(\n () => {\n const children = props.node.data[childrenKey]\n return children && [...children]\n },\n () => {\n props.node.updateChildren()\n }\n )\n\n watch(\n () => props.node.indeterminate,\n (val) => {\n handleSelectChange(props.node.checked, val)\n }\n )\n\n watch(\n () => props.node.checked,\n (val) => {\n handleSelectChange(val, props.node.indeterminate)\n }\n )\n\n watch(\n () => props.node.expanded,\n (val) => {\n nextTick(() => (expanded.value = val))\n if (val) {\n childNodeRendered.value = true\n }\n }\n )\n\n const getNodeKey = (node: Node): any => {\n return getNodeKeyUtil(tree.props.nodeKey, node.data)\n }\n\n const getNodeClass = (node: Node) => {\n const nodeClassFunc = props.props.class\n if (!nodeClassFunc) {\n return {}\n }\n let className\n if (isFunction(nodeClassFunc)) {\n const { data } = node\n className = nodeClassFunc(data, node)\n } else {\n className = nodeClassFunc\n }\n\n if (isString(className)) {\n return { [className]: true }\n } else {\n return className\n }\n }\n\n const handleSelectChange = (checked: boolean, indeterminate: boolean) => {\n if (\n oldChecked.value !== checked ||\n oldIndeterminate.value !== indeterminate\n ) {\n tree.ctx.emit('check-change', props.node.data, checked, indeterminate)\n }\n oldChecked.value = checked\n oldIndeterminate.value = indeterminate\n }\n\n const handleClick = () => {\n const store = tree.store.value\n store.setCurrentNode(props.node)\n tree.ctx.emit(\n 'current-change',\n store.currentNode ? store.currentNode.data : null,\n store.currentNode\n )\n tree.currentNode.value = props.node\n\n if (tree.props.expandOnClickNode) {\n handleExpandIconClick()\n }\n\n if (tree.props.checkOnClickNode && !props.node.disabled) {\n handleCheckChange(null, {\n target: { checked: !props.node.checked },\n })\n }\n tree.ctx.emit('node-click', props.node.data, props.node, instance)\n }\n\n const handleContextMenu = (event: Event) => {\n if (tree.instance.vnode.props['onNodeContextmenu']) {\n event.stopPropagation()\n event.preventDefault()\n }\n tree.ctx.emit(\n 'node-contextmenu',\n event,\n props.node.data,\n props.node,\n instance\n )\n }\n\n const handleExpandIconClick = () => {\n if (props.node.isLeaf) return\n if (expanded.value) {\n tree.ctx.emit('node-collapse', props.node.data, props.node, instance)\n props.node.collapse()\n } else {\n props.node.expand()\n ctx.emit('node-expand', props.node.data, props.node, instance)\n }\n }\n\n const handleCheckChange = (value, ev) => {\n props.node.setChecked(ev.target.checked, !tree.props.checkStrictly)\n nextTick(() => {\n const store = tree.store.value\n tree.ctx.emit('check', props.node.data, {\n checkedNodes: store.getCheckedNodes(),\n checkedKeys: store.getCheckedKeys(),\n halfCheckedNodes: store.getHalfCheckedNodes(),\n halfCheckedKeys: store.getHalfCheckedKeys(),\n })\n })\n }\n\n const handleChildNodeExpand = (\n nodeData: TreeNodeData,\n node: Node,\n instance: ComponentInternalInstance\n ) => {\n broadcastExpanded(node)\n tree.ctx.emit('node-expand', nodeData, node, instance)\n }\n\n const handleDragStart = (event: DragEvent) => {\n if (!tree.props.draggable) return\n dragEvents.treeNodeDragStart({ event, treeNode: props })\n }\n\n const handleDragOver = (event: DragEvent) => {\n event.preventDefault()\n if (!tree.props.draggable) return\n dragEvents.treeNodeDragOver({\n event,\n treeNode: { $el: node$.value, node: props.node },\n })\n }\n\n const handleDrop = (event: DragEvent) => {\n event.preventDefault()\n }\n\n const handleDragEnd = (event: DragEvent) => {\n if (!tree.props.draggable) return\n dragEvents.treeNodeDragEnd(event)\n }\n\n return {\n node$,\n tree,\n expanded,\n childNodeRendered,\n oldChecked,\n oldIndeterminate,\n getNodeKey,\n getNodeClass,\n handleSelectChange,\n handleClick,\n handleContextMenu,\n handleExpandIconClick,\n handleCheckChange,\n handleChildNodeExpand,\n handleDragStart,\n handleDragOver,\n handleDrop,\n handleDragEnd,\n CaretRight,\n }\n },\n})\n</script>\n"],"names":["ElCollapseTransition"],"mappings":";;;;;;;;;;;;;;AAsGA,aAAe,eAAe;;AAE9B,EAAE,UAAU,EAAE;AACd,0BAAIA;AACJ,IAAI,UAAU;;AAEd,IAAI,MAAM;IACN,OAAO;GACR;OACI,EAAE;IACL,IAAI,EAAE;MACJ,IAAI,EAAE;MACN;KACD;;MAEC;MACA;;aAEO,EAAE,OAAO;IAClB;IACA;gBACY;MACV,IAAI,EAAE,OAAO;;KAEd;;OAEE,EAAE,CAAC,aAAa,CAAC;OACjB,CAAC,KAAK,EAAE,GAAG;UACR,EAAE;UACF,OAAO;IACb;;IAEA,MAAM,UAAU,GAAG;IACnB,MAAM;IACN,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;IACxB,MAAM,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;IACzC,MAAM,WAAW;IACjB,OAAO,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IAClC,IAAI,KAAK,EAAE;MACT,SAAS,CAAC,MAAM,EAAE;KACnB;IACD,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE;MACvB,QAAQ,CAAC,QAAQ,IAAI,CAAC;;KAEvB;IACD,MAAM;SACD,CAAC,MAAM;;;KAGX,EAAE,MAAM;MACP,KAAK,CAAC,IAAI,CAAC;MACX,CAAC;IACH;;KAEC,CAAC,CAAC;IACH,KAAK;MACH;;SAEG,CAAC,MAAM,KAAK,CAAC,KAAK,QAAQ,EAAE,CAAC;MAChC;MACA,IAAI;QACF,iBAAiB,CAAC,KAAK,GAAG;;;;MAI5B;MACA;UACI;YACE,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK;MACvC;;;MAGA;MACA,IAAI,UAAU,CAAC;QACb;QACA,SAAS,GAAG,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;;;;MAIxC;eACS,EAAE,CAAC,SAAS,GAAG;OACvB,MAAM;QACL,OAAO,SAAS,CAAC;;;;MAInB;;;MAGA,UAAU,CAAC,QAAQ,OAAO,CAAC;MAC3B,gBAAgB,CAAC,KAAK,GAAG,aAAa,CAAC;;;MAGvC,MAAM,KAAK,GAAG,KAAK,KAAK,MAAM;MAC9B,MAAM,cAAc,MAAM,CAAC,IAAI,CAAC,CAAC;MACjC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;UACV,CAAC;MACL;QACE;OACD;UACG,IAAI,OAAO;QACb,iBAAiB,CAAC,IAAI,EAAE;UACtB;SACD,CAAC,CAAC;;;MAGL;UACI,iBAAiB,GAAG,CAAC;MACzB,IAAI;QACF,KAAK;;;;KAIR,CAAC;;UAEI,KAAK,CAAC,IAAI,CAAC,MAAM;QACnB,OAAO;MACT;QACE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC;;OAEtE,MAAM;QACL,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE;;;KAGtB,CAAC;UACI,iBAAiB,GAAG,CAAC;MACzB,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM;MAC/B,QAAQ,CAAC;QACP,MAAM,KAAK,GAAG;QACd,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE;UACtC,YAAY,EAAE;;UAEd,gBAAgB,OAAO,CAAC;;SAEzB,CAAC,CAAC;QACH,CAAC;MACH;;MAEA,iBAAiB,CAAC,IAAI,CAAC,CAAC;UACpB,CAAC,GAAG,CAAC,IAAI,CAAC;;;MAGd;QACE,OAAO;;;IAGX,MAAM,cAAc,IAAI,KAAK,KAAK;MAChC,KAAK,CAAC,cAAc,EAAE,CAAC;UACnB,CAAC,IAAI,CAAC,KAAK,CAAC;QACd,OAAO;MACT;QACE,KAAK;QACL,QAAQ,EAAE,EAAE,GAAG,EAAE;QACjB,CAAC;;UAEC;WACC,CAAC;MACN;IACF;;QAEI,OAAO;MACT,UAAU,CAAC,eAAe,CAAC;MAC3B;WACK;WACA;MACL,IAAI;cACI;uBACS;MACjB;;;MAGA,YAAY;MACZ,kBAAkB;MAClB;uBACiB;2BACI;;2BAEA;qBACN;oBACD;;MAEd;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"tree-node.vue_vue_type_template_id_62959aba_lang.mjs","sources":["../../../../../../packages/components/tree/src/tree-node.vue?vue&type=template&id=62959aba&lang.js"],"sourcesContent":["<template>\n <div\n v-show=\"node.visible\"\n ref=\"node$\"\n class=\"el-tree-node\"\n :class=\"{\n 'is-expanded': expanded,\n 'is-current': node.isCurrent,\n 'is-hidden': !node.visible,\n 'is-focusable': !node.disabled,\n 'is-checked': !node.disabled && node.checked,\n ...getNodeClass(node),\n }\"\n role=\"treeitem\"\n tabindex=\"-1\"\n :aria-expanded=\"expanded\"\n :aria-disabled=\"node.disabled\"\n :aria-checked=\"node.checked\"\n :draggable=\"tree.props.draggable\"\n :data-key=\"getNodeKey(node)\"\n @click.stop=\"handleClick\"\n @contextmenu=\"handleContextMenu\"\n @dragstart.stop=\"handleDragStart\"\n @dragover.stop=\"handleDragOver\"\n @dragend.stop=\"handleDragEnd\"\n @drop.stop=\"handleDrop\"\n >\n <div\n class=\"el-tree-node__content\"\n :style=\"{ paddingLeft: (node.level - 1) * tree.props.indent + 'px' }\"\n >\n <el-icon\n v-if=\"tree.props.icon || CaretRight\"\n :class=\"[\n {\n 'is-leaf': node.isLeaf,\n expanded: !node.isLeaf && expanded,\n },\n 'el-tree-node__expand-icon',\n ]\"\n @click.stop=\"handleExpandIconClick\"\n >\n <component :is=\"tree.props.icon || CaretRight\"></component>\n </el-icon>\n <el-checkbox\n v-if=\"showCheckbox\"\n :model-value=\"node.checked\"\n :indeterminate=\"node.indeterminate\"\n :disabled=\"!!node.disabled\"\n @click.stop\n @change=\"handleCheckChange\"\n />\n <el-icon\n v-if=\"node.loading\"\n class=\"el-tree-node__loading-icon is-loading\"\n >\n <loading />\n </el-icon>\n <node-content :node=\"node\" :render-content=\"renderContent\" />\n </div>\n <el-collapse-transition>\n <div\n v-if=\"!renderAfterExpand || childNodeRendered\"\n v-show=\"expanded\"\n class=\"el-tree-node__children\"\n role=\"group\"\n :aria-expanded=\"expanded\"\n >\n <el-tree-node\n v-for=\"child in node.childNodes\"\n :key=\"getNodeKey(child)\"\n :render-content=\"renderContent\"\n :render-after-expand=\"renderAfterExpand\"\n :show-checkbox=\"showCheckbox\"\n :node=\"child\"\n :props=\"props\"\n @node-expand=\"handleChildNodeExpand\"\n />\n </div>\n </el-collapse-transition>\n </div>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n getCurrentInstance,\n ref,\n watch,\n nextTick,\n inject,\n provide,\n} from 'vue'\nimport { isString, isFunction } from '@vue/shared'\nimport ElCollapseTransition from '@element-plus/components/collapse-transition'\nimport ElCheckbox from '@element-plus/components/checkbox'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { CaretRight, Loading } from '@element-plus/icons-vue'\nimport { debugWarn } from '@element-plus/utils/error'\nimport NodeContent from './tree-node-content.vue'\nimport { getNodeKey as getNodeKeyUtil } from './model/util'\nimport { useNodeExpandEventBroadcast } from './model/useNodeExpandEventBroadcast'\nimport { dragEventsKey } from './model/useDragNode'\nimport Node from './model/node'\n\nimport type { ComponentInternalInstance, PropType } from 'vue'\nimport type { Nullable } from '@element-plus/utils/types'\nimport type { TreeOptionProps, TreeNodeData, RootTreeType } from './tree.type'\n\nexport default defineComponent({\n name: 'ElTreeNode',\n components: {\n ElCollapseTransition,\n ElCheckbox,\n NodeContent,\n ElIcon,\n Loading,\n },\n props: {\n node: {\n type: Node,\n default: () => ({}),\n },\n props: {\n type: Object as PropType<TreeOptionProps>,\n default: () => ({}),\n },\n accordion: Boolean,\n renderContent: Function,\n renderAfterExpand: Boolean,\n showCheckbox: {\n type: Boolean,\n default: false,\n },\n },\n emits: ['node-expand'],\n setup(props, ctx) {\n const { broadcastExpanded } = useNodeExpandEventBroadcast(props)\n const tree = inject<RootTreeType>('RootTree')\n const expanded = ref(false)\n const childNodeRendered = ref(false)\n const oldChecked = ref<boolean>(null)\n const oldIndeterminate = ref<boolean>(null)\n const node$ = ref<Nullable<HTMLElement>>(null)\n const dragEvents = inject(dragEventsKey)\n const instance = getCurrentInstance()\n\n provide('NodeInstance', instance)\n if (!tree) {\n debugWarn('Tree', \"Can not find node's tree.\")\n }\n\n if (props.node.expanded) {\n expanded.value = true\n childNodeRendered.value = true\n }\n\n const childrenKey = tree.props['children'] || 'children'\n watch(\n () => {\n const children = props.node.data[childrenKey]\n return children && [...children]\n },\n () => {\n props.node.updateChildren()\n }\n )\n\n watch(\n () => props.node.indeterminate,\n (val) => {\n handleSelectChange(props.node.checked, val)\n }\n )\n\n watch(\n () => props.node.checked,\n (val) => {\n handleSelectChange(val, props.node.indeterminate)\n }\n )\n\n watch(\n () => props.node.expanded,\n (val) => {\n nextTick(() => (expanded.value = val))\n if (val) {\n childNodeRendered.value = true\n }\n }\n )\n\n const getNodeKey = (node: Node): any => {\n return getNodeKeyUtil(tree.props.nodeKey, node.data)\n }\n\n const getNodeClass = (node: Node) => {\n const nodeClassFunc = props.props.class\n if (!nodeClassFunc) {\n return {}\n }\n let className\n if (isFunction(nodeClassFunc)) {\n const { data } = node\n className = nodeClassFunc(data, node)\n } else {\n className = nodeClassFunc\n }\n\n if (isString(className)) {\n return { [className]: true }\n } else {\n return className\n }\n }\n\n const handleSelectChange = (checked: boolean, indeterminate: boolean) => {\n if (\n oldChecked.value !== checked ||\n oldIndeterminate.value !== indeterminate\n ) {\n tree.ctx.emit('check-change', props.node.data, checked, indeterminate)\n }\n oldChecked.value = checked\n oldIndeterminate.value = indeterminate\n }\n\n const handleClick = () => {\n const store = tree.store.value\n store.setCurrentNode(props.node)\n tree.ctx.emit(\n 'current-change',\n store.currentNode ? store.currentNode.data : null,\n store.currentNode\n )\n tree.currentNode.value = props.node\n\n if (tree.props.expandOnClickNode) {\n handleExpandIconClick()\n }\n\n if (tree.props.checkOnClickNode && !props.node.disabled) {\n handleCheckChange(null, {\n target: { checked: !props.node.checked },\n })\n }\n tree.ctx.emit('node-click', props.node.data, props.node, instance)\n }\n\n const handleContextMenu = (event: Event) => {\n if (tree.instance.vnode.props['onNodeContextmenu']) {\n event.stopPropagation()\n event.preventDefault()\n }\n tree.ctx.emit(\n 'node-contextmenu',\n event,\n props.node.data,\n props.node,\n instance\n )\n }\n\n const handleExpandIconClick = () => {\n if (props.node.isLeaf) return\n if (expanded.value) {\n tree.ctx.emit('node-collapse', props.node.data, props.node, instance)\n props.node.collapse()\n } else {\n props.node.expand()\n ctx.emit('node-expand', props.node.data, props.node, instance)\n }\n }\n\n const handleCheckChange = (value, ev) => {\n props.node.setChecked(ev.target.checked, !tree.props.checkStrictly)\n nextTick(() => {\n const store = tree.store.value\n tree.ctx.emit('check', props.node.data, {\n checkedNodes: store.getCheckedNodes(),\n checkedKeys: store.getCheckedKeys(),\n halfCheckedNodes: store.getHalfCheckedNodes(),\n halfCheckedKeys: store.getHalfCheckedKeys(),\n })\n })\n }\n\n const handleChildNodeExpand = (\n nodeData: TreeNodeData,\n node: Node,\n instance: ComponentInternalInstance\n ) => {\n broadcastExpanded(node)\n tree.ctx.emit('node-expand', nodeData, node, instance)\n }\n\n const handleDragStart = (event: DragEvent) => {\n if (!tree.props.draggable) return\n dragEvents.treeNodeDragStart({ event, treeNode: props })\n }\n\n const handleDragOver = (event: DragEvent) => {\n if (!tree.props.draggable) return\n dragEvents.treeNodeDragOver({\n event,\n treeNode: { $el: node$.value, node: props.node },\n })\n event.preventDefault()\n }\n\n const handleDrop = (event: DragEvent) => {\n event.preventDefault()\n }\n\n const handleDragEnd = (event: DragEvent) => {\n if (!tree.props.draggable) return\n dragEvents.treeNodeDragEnd(event)\n }\n\n return {\n node$,\n tree,\n expanded,\n childNodeRendered,\n oldChecked,\n oldIndeterminate,\n getNodeKey,\n getNodeClass,\n handleSelectChange,\n handleClick,\n handleContextMenu,\n handleExpandIconClick,\n handleCheckChange,\n handleChildNodeExpand,\n handleDragStart,\n handleDragOver,\n handleDrop,\n handleDragEnd,\n CaretRight,\n }\n },\n})\n</script>\n"],"names":["_createElementVNode","_openBlock"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;IAaI;IACA;IACC,eAAa;IACb,iBAAe,UAAK;IACpB,gBAAc;IACd,qBAAgB,eAAe;IAC/B,2BAAoB;IACpB,4GAAuB;IACvB;IACA;;IAEAA;;;;MAIC,KAAK;WACC;;;;;;;;;;;;;;;0EAagB;;;;;wBAGF;;;;2BAEFC,SAAK;;;;;;;;;kBAOf;;8BAEN;;;;;;;;;;;;;;;;cAQA;cACA,IAAI,EAAC;cACJ,iBAAe;;2FAGM;;;;sCAGA,EAAE;;;;;;;;;;;"}
1
+ {"version":3,"file":"tree-node.vue_vue_type_template_id_62959aba_lang.mjs","sources":["../../../../../../packages/components/tree/src/tree-node.vue?vue&type=template&id=62959aba&lang.js"],"sourcesContent":["<template>\n <div\n v-show=\"node.visible\"\n ref=\"node$\"\n class=\"el-tree-node\"\n :class=\"{\n 'is-expanded': expanded,\n 'is-current': node.isCurrent,\n 'is-hidden': !node.visible,\n 'is-focusable': !node.disabled,\n 'is-checked': !node.disabled && node.checked,\n ...getNodeClass(node),\n }\"\n role=\"treeitem\"\n tabindex=\"-1\"\n :aria-expanded=\"expanded\"\n :aria-disabled=\"node.disabled\"\n :aria-checked=\"node.checked\"\n :draggable=\"tree.props.draggable\"\n :data-key=\"getNodeKey(node)\"\n @click.stop=\"handleClick\"\n @contextmenu=\"handleContextMenu\"\n @dragstart.stop=\"handleDragStart\"\n @dragover.stop=\"handleDragOver\"\n @dragend.stop=\"handleDragEnd\"\n @drop.stop=\"handleDrop\"\n >\n <div\n class=\"el-tree-node__content\"\n :style=\"{ paddingLeft: (node.level - 1) * tree.props.indent + 'px' }\"\n >\n <el-icon\n v-if=\"tree.props.icon || CaretRight\"\n :class=\"[\n {\n 'is-leaf': node.isLeaf,\n expanded: !node.isLeaf && expanded,\n },\n 'el-tree-node__expand-icon',\n ]\"\n @click.stop=\"handleExpandIconClick\"\n >\n <component :is=\"tree.props.icon || CaretRight\"></component>\n </el-icon>\n <el-checkbox\n v-if=\"showCheckbox\"\n :model-value=\"node.checked\"\n :indeterminate=\"node.indeterminate\"\n :disabled=\"!!node.disabled\"\n @click.stop\n @change=\"handleCheckChange\"\n />\n <el-icon\n v-if=\"node.loading\"\n class=\"el-tree-node__loading-icon is-loading\"\n >\n <loading />\n </el-icon>\n <node-content :node=\"node\" :render-content=\"renderContent\" />\n </div>\n <el-collapse-transition>\n <div\n v-if=\"!renderAfterExpand || childNodeRendered\"\n v-show=\"expanded\"\n class=\"el-tree-node__children\"\n role=\"group\"\n :aria-expanded=\"expanded\"\n >\n <el-tree-node\n v-for=\"child in node.childNodes\"\n :key=\"getNodeKey(child)\"\n :render-content=\"renderContent\"\n :render-after-expand=\"renderAfterExpand\"\n :show-checkbox=\"showCheckbox\"\n :node=\"child\"\n :props=\"props\"\n @node-expand=\"handleChildNodeExpand\"\n />\n </div>\n </el-collapse-transition>\n </div>\n</template>\n<script lang=\"ts\">\nimport {\n defineComponent,\n getCurrentInstance,\n ref,\n watch,\n nextTick,\n inject,\n provide,\n} from 'vue'\nimport { isString, isFunction } from '@vue/shared'\nimport ElCollapseTransition from '@element-plus/components/collapse-transition'\nimport ElCheckbox from '@element-plus/components/checkbox'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { CaretRight, Loading } from '@element-plus/icons-vue'\nimport { debugWarn } from '@element-plus/utils/error'\nimport NodeContent from './tree-node-content.vue'\nimport { getNodeKey as getNodeKeyUtil } from './model/util'\nimport { useNodeExpandEventBroadcast } from './model/useNodeExpandEventBroadcast'\nimport { dragEventsKey } from './model/useDragNode'\nimport Node from './model/node'\n\nimport type { ComponentInternalInstance, PropType } from 'vue'\nimport type { Nullable } from '@element-plus/utils/types'\nimport type { TreeOptionProps, TreeNodeData, RootTreeType } from './tree.type'\n\nexport default defineComponent({\n name: 'ElTreeNode',\n components: {\n ElCollapseTransition,\n ElCheckbox,\n NodeContent,\n ElIcon,\n Loading,\n },\n props: {\n node: {\n type: Node,\n default: () => ({}),\n },\n props: {\n type: Object as PropType<TreeOptionProps>,\n default: () => ({}),\n },\n accordion: Boolean,\n renderContent: Function,\n renderAfterExpand: Boolean,\n showCheckbox: {\n type: Boolean,\n default: false,\n },\n },\n emits: ['node-expand'],\n setup(props, ctx) {\n const { broadcastExpanded } = useNodeExpandEventBroadcast(props)\n const tree = inject<RootTreeType>('RootTree')\n const expanded = ref(false)\n const childNodeRendered = ref(false)\n const oldChecked = ref<boolean>(null)\n const oldIndeterminate = ref<boolean>(null)\n const node$ = ref<Nullable<HTMLElement>>(null)\n const dragEvents = inject(dragEventsKey)\n const instance = getCurrentInstance()\n\n provide('NodeInstance', instance)\n if (!tree) {\n debugWarn('Tree', \"Can not find node's tree.\")\n }\n\n if (props.node.expanded) {\n expanded.value = true\n childNodeRendered.value = true\n }\n\n const childrenKey = tree.props['children'] || 'children'\n watch(\n () => {\n const children = props.node.data[childrenKey]\n return children && [...children]\n },\n () => {\n props.node.updateChildren()\n }\n )\n\n watch(\n () => props.node.indeterminate,\n (val) => {\n handleSelectChange(props.node.checked, val)\n }\n )\n\n watch(\n () => props.node.checked,\n (val) => {\n handleSelectChange(val, props.node.indeterminate)\n }\n )\n\n watch(\n () => props.node.expanded,\n (val) => {\n nextTick(() => (expanded.value = val))\n if (val) {\n childNodeRendered.value = true\n }\n }\n )\n\n const getNodeKey = (node: Node): any => {\n return getNodeKeyUtil(tree.props.nodeKey, node.data)\n }\n\n const getNodeClass = (node: Node) => {\n const nodeClassFunc = props.props.class\n if (!nodeClassFunc) {\n return {}\n }\n let className\n if (isFunction(nodeClassFunc)) {\n const { data } = node\n className = nodeClassFunc(data, node)\n } else {\n className = nodeClassFunc\n }\n\n if (isString(className)) {\n return { [className]: true }\n } else {\n return className\n }\n }\n\n const handleSelectChange = (checked: boolean, indeterminate: boolean) => {\n if (\n oldChecked.value !== checked ||\n oldIndeterminate.value !== indeterminate\n ) {\n tree.ctx.emit('check-change', props.node.data, checked, indeterminate)\n }\n oldChecked.value = checked\n oldIndeterminate.value = indeterminate\n }\n\n const handleClick = () => {\n const store = tree.store.value\n store.setCurrentNode(props.node)\n tree.ctx.emit(\n 'current-change',\n store.currentNode ? store.currentNode.data : null,\n store.currentNode\n )\n tree.currentNode.value = props.node\n\n if (tree.props.expandOnClickNode) {\n handleExpandIconClick()\n }\n\n if (tree.props.checkOnClickNode && !props.node.disabled) {\n handleCheckChange(null, {\n target: { checked: !props.node.checked },\n })\n }\n tree.ctx.emit('node-click', props.node.data, props.node, instance)\n }\n\n const handleContextMenu = (event: Event) => {\n if (tree.instance.vnode.props['onNodeContextmenu']) {\n event.stopPropagation()\n event.preventDefault()\n }\n tree.ctx.emit(\n 'node-contextmenu',\n event,\n props.node.data,\n props.node,\n instance\n )\n }\n\n const handleExpandIconClick = () => {\n if (props.node.isLeaf) return\n if (expanded.value) {\n tree.ctx.emit('node-collapse', props.node.data, props.node, instance)\n props.node.collapse()\n } else {\n props.node.expand()\n ctx.emit('node-expand', props.node.data, props.node, instance)\n }\n }\n\n const handleCheckChange = (value, ev) => {\n props.node.setChecked(ev.target.checked, !tree.props.checkStrictly)\n nextTick(() => {\n const store = tree.store.value\n tree.ctx.emit('check', props.node.data, {\n checkedNodes: store.getCheckedNodes(),\n checkedKeys: store.getCheckedKeys(),\n halfCheckedNodes: store.getHalfCheckedNodes(),\n halfCheckedKeys: store.getHalfCheckedKeys(),\n })\n })\n }\n\n const handleChildNodeExpand = (\n nodeData: TreeNodeData,\n node: Node,\n instance: ComponentInternalInstance\n ) => {\n broadcastExpanded(node)\n tree.ctx.emit('node-expand', nodeData, node, instance)\n }\n\n const handleDragStart = (event: DragEvent) => {\n if (!tree.props.draggable) return\n dragEvents.treeNodeDragStart({ event, treeNode: props })\n }\n\n const handleDragOver = (event: DragEvent) => {\n event.preventDefault()\n if (!tree.props.draggable) return\n dragEvents.treeNodeDragOver({\n event,\n treeNode: { $el: node$.value, node: props.node },\n })\n }\n\n const handleDrop = (event: DragEvent) => {\n event.preventDefault()\n }\n\n const handleDragEnd = (event: DragEvent) => {\n if (!tree.props.draggable) return\n dragEvents.treeNodeDragEnd(event)\n }\n\n return {\n node$,\n tree,\n expanded,\n childNodeRendered,\n oldChecked,\n oldIndeterminate,\n getNodeKey,\n getNodeClass,\n handleSelectChange,\n handleClick,\n handleContextMenu,\n handleExpandIconClick,\n handleCheckChange,\n handleChildNodeExpand,\n handleDragStart,\n handleDragOver,\n handleDrop,\n handleDragEnd,\n CaretRight,\n }\n },\n})\n</script>\n"],"names":["_createElementVNode","_openBlock"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;IAaI;IACA;IACC,eAAa;IACb,iBAAe,UAAK;IACpB,gBAAc;IACd,qBAAgB,eAAe;IAC/B,2BAAoB;IACpB,4GAAuB;IACvB;IACA;;IAEAA;;;;MAIC,KAAK;WACC;;;;;;;;;;;;;;;0EAagB;;;;;wBAGF;;;;2BAEFC,SAAK;;;;;;;;;kBAOf;;8BAEN;;;;;;;;;;;;;;;;cAQA;cACA,IAAI,EAAC;cACJ,iBAAe;;2FAGM;;;;sCAGA,EAAE;;;;;;;;;;;"}
@@ -41,8 +41,8 @@ declare const _default: import("vue").DefineComponent<{
41
41
  showCheckbox: import("../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
42
42
  hiddenExpandIcon: import("../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
43
43
  } & {}> & {
44
- onToggle?: ((node: import("./types").TreeNode) => any) | undefined;
45
44
  onClick?: ((node: import("./types").TreeNode) => any) | undefined;
45
+ onToggle?: ((node: import("./types").TreeNode) => any) | undefined;
46
46
  onCheck?: ((node: import("./types").TreeNode, checked: boolean) => any) | undefined;
47
47
  }, {
48
48
  disabled: import("../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
@@ -51,9 +51,9 @@ declare const createGrid: ({ name, clearCache, getColumnPosition, getColumnStart
51
51
  } & {
52
52
  data: any[];
53
53
  height: import("../../../../utils/props").BuildPropType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
54
+ className: string;
54
55
  columnWidth: import("../../../../utils/props").BuildPropType<import("../../../../utils/props").PropWrapper<number | import("../types").ItemSize>, never, never>;
55
56
  direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
56
- className: string;
57
57
  scrollbarAlwaysOn: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
58
58
  perfMode: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
59
59
  containerElement: import("../../../../utils/props").BuildPropType<import("../../../../utils/props").PropWrapper<string | Element>, unknown, unknown>;
@@ -78,8 +78,8 @@ declare const createGrid: ({ name, clearCache, getColumnPosition, getColumnStart
78
78
  data: any[];
79
79
  style: StyleValue;
80
80
  width: import("../../../../utils/props").BuildPropType<readonly [NumberConstructor, StringConstructor], unknown, unknown>;
81
- direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
82
81
  className: string;
82
+ direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
83
83
  scrollbarAlwaysOn: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
84
84
  perfMode: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
85
85
  containerElement: import("../../../../utils/props").BuildPropType<import("../../../../utils/props").PropWrapper<string | Element>, unknown, unknown>;
@@ -74,8 +74,8 @@ declare const createList: ({ name, getOffset, getItemSize, getItemOffset, getEst
74
74
  data: any[];
75
75
  height: import("../../../../utils/props").BuildPropType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
76
76
  layout: import("../../../../utils/props").BuildPropType<StringConstructor, "horizontal" | "vertical", never>;
77
- direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
78
77
  className: string;
78
+ direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
79
79
  total: number;
80
80
  scrollbarAlwaysOn: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
81
81
  perfMode: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
@@ -97,8 +97,8 @@ declare const createList: ({ name, getOffset, getItemSize, getItemOffset, getEst
97
97
  style: import("../../../../utils/types").StyleValue;
98
98
  width: import("../../../../utils/props").BuildPropType<readonly [NumberConstructor, StringConstructor], unknown, unknown>;
99
99
  layout: import("../../../../utils/props").BuildPropType<StringConstructor, "horizontal" | "vertical", never>;
100
- direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
101
100
  className: string;
101
+ direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
102
102
  scrollbarAlwaysOn: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
103
103
  perfMode: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
104
104
  containerElement: import("../../../../utils/props").BuildPropType<import("../../../../utils/props").PropWrapper<string | Element>, unknown, unknown>;
@@ -48,9 +48,9 @@ declare const FixedSizeGrid: import("vue").DefineComponent<{
48
48
  } & {
49
49
  data: any[];
50
50
  height: import("../../../../utils/props").BuildPropType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
51
+ className: string;
51
52
  columnWidth: import("../../../../utils/props").BuildPropType<import("../../../../utils/props").PropWrapper<number | ItemSize>, never, never>;
52
53
  direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
53
- className: string;
54
54
  scrollbarAlwaysOn: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
55
55
  perfMode: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
56
56
  containerElement: import("../../../../utils/props").BuildPropType<import("../../../../utils/props").PropWrapper<string | Element>, unknown, unknown>;
@@ -75,8 +75,8 @@ declare const FixedSizeGrid: import("vue").DefineComponent<{
75
75
  data: any[];
76
76
  style: import("../../../../utils/types").StyleValue;
77
77
  width: import("../../../../utils/props").BuildPropType<readonly [NumberConstructor, StringConstructor], unknown, unknown>;
78
- direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
79
78
  className: string;
79
+ direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
80
80
  scrollbarAlwaysOn: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
81
81
  perfMode: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
82
82
  containerElement: import("../../../../utils/props").BuildPropType<import("../../../../utils/props").PropWrapper<string | Element>, unknown, unknown>;
@@ -72,8 +72,8 @@ declare const DynamicSizeList: import("vue").DefineComponent<{
72
72
  data: any[];
73
73
  height: import("../../../../utils/props").BuildPropType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
74
74
  layout: import("../../../../utils/props").BuildPropType<StringConstructor, "horizontal" | "vertical", never>;
75
- direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
76
75
  className: string;
76
+ direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
77
77
  total: number;
78
78
  scrollbarAlwaysOn: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
79
79
  perfMode: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
@@ -95,8 +95,8 @@ declare const DynamicSizeList: import("vue").DefineComponent<{
95
95
  style: import("../../../../utils/types").StyleValue;
96
96
  width: import("../../../../utils/props").BuildPropType<readonly [NumberConstructor, StringConstructor], unknown, unknown>;
97
97
  layout: import("../../../../utils/props").BuildPropType<StringConstructor, "horizontal" | "vertical", never>;
98
- direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
99
98
  className: string;
99
+ direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
100
100
  scrollbarAlwaysOn: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
101
101
  perfMode: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
102
102
  containerElement: import("../../../../utils/props").BuildPropType<import("../../../../utils/props").PropWrapper<string | Element>, unknown, unknown>;
@@ -47,9 +47,9 @@ declare const FixedSizeGrid: import("vue").DefineComponent<{
47
47
  } & {
48
48
  data: any[];
49
49
  height: import("../../../../utils/props").BuildPropType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
50
+ className: string;
50
51
  columnWidth: import("../../../../utils/props").BuildPropType<import("../../../../utils/props").PropWrapper<number | import("../types").ItemSize>, never, never>;
51
52
  direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
52
- className: string;
53
53
  scrollbarAlwaysOn: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
54
54
  perfMode: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
55
55
  containerElement: import("../../../../utils/props").BuildPropType<import("../../../../utils/props").PropWrapper<string | Element>, unknown, unknown>;
@@ -74,8 +74,8 @@ declare const FixedSizeGrid: import("vue").DefineComponent<{
74
74
  data: any[];
75
75
  style: import("../../../../utils/types").StyleValue;
76
76
  width: import("../../../../utils/props").BuildPropType<readonly [NumberConstructor, StringConstructor], unknown, unknown>;
77
- direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
78
77
  className: string;
78
+ direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
79
79
  scrollbarAlwaysOn: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
80
80
  perfMode: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
81
81
  containerElement: import("../../../../utils/props").BuildPropType<import("../../../../utils/props").PropWrapper<string | Element>, unknown, unknown>;
@@ -71,8 +71,8 @@ declare const FixedSizeList: import("vue").DefineComponent<{
71
71
  data: any[];
72
72
  height: import("../../../../utils/props").BuildPropType<readonly [StringConstructor, NumberConstructor], unknown, unknown>;
73
73
  layout: import("../../../../utils/props").BuildPropType<StringConstructor, "horizontal" | "vertical", never>;
74
- direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
75
74
  className: string;
75
+ direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
76
76
  total: number;
77
77
  scrollbarAlwaysOn: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
78
78
  perfMode: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
@@ -94,8 +94,8 @@ declare const FixedSizeList: import("vue").DefineComponent<{
94
94
  style: import("../../../../utils/types").StyleValue;
95
95
  width: import("../../../../utils/props").BuildPropType<readonly [NumberConstructor, StringConstructor], unknown, unknown>;
96
96
  layout: import("../../../../utils/props").BuildPropType<StringConstructor, "horizontal" | "vertical", never>;
97
- direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
98
97
  className: string;
98
+ direction: import("../../../../utils/props").BuildPropType<StringConstructor, "ltr" | "rtl", never>;
99
99
  scrollbarAlwaysOn: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
100
100
  perfMode: import("../../../../utils/props").BuildPropType<BooleanConstructor, unknown, unknown>;
101
101
  containerElement: import("../../../../utils/props").BuildPropType<import("../../../../utils/props").PropWrapper<string | Element>, unknown, unknown>;
package/es/index.mjs CHANGED
@@ -132,6 +132,7 @@ export { ElTimePicker } from './components/time-picker/index.mjs';
132
132
  export { ElTimeSelect } from './components/time-select/index.mjs';
133
133
  export { ElTimeline, ElTimelineItem } from './components/timeline/index.mjs';
134
134
  export { useTooltipContentProps, useTooltipProps, useTooltipTriggerProps } from './components/tooltip/src/tooltip.mjs';
135
+ export { TOOLTIP_INJECTION_KEY } from './components/tooltip/src/tokens.mjs';
135
136
  export { ElTooltip } from './components/tooltip/index.mjs';
136
137
  export { CHANGE_EVENT } from './utils/constants.mjs';
137
138
  export { ElTransfer } from './components/transfer/index.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'\nexport * from '@element-plus/utils/popup-manager'\nexport { makeInstaller } from './make-installer'\n\nexport const install = installer.install\nexport const version = installer.version\nexport default installer\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOY,MAAC,OAAO,GAAG,SAAS,CAAC,QAAQ;AAC7B,MAAC,OAAO,GAAG,SAAS,CAAC;;;;"}
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'\nexport * from '@element-plus/utils/popup-manager'\nexport { makeInstaller } from './make-installer'\n\nexport const install = installer.install\nexport const version = installer.version\nexport default installer\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOY,MAAC,OAAO,GAAG,SAAS,CAAC,QAAQ;AAC7B,MAAC,OAAO,GAAG,SAAS,CAAC;;;;"}
package/es/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "0.0.20220109";
1
+ export declare const version = "0.0.20220113";
package/es/version.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const version = "0.0.20220109";
1
+ const version = "0.0.20220113";
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 = '0.0.20220109'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
1
+ {"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20220113'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
@@ -30,19 +30,19 @@ var script = vue.defineComponent({
30
30
  const selectedDay = vue.ref();
31
31
  const now = dayjs__default["default"]().locale(lang.value);
32
32
  const prevMonthDayjs = vue.computed(() => {
33
- return date.value.subtract(1, "month");
33
+ return date.value.subtract(1, "month").date(1);
34
34
  });
35
35
  const curMonthDatePrefix = vue.computed(() => {
36
36
  return dayjs__default["default"](date.value).locale(lang.value).format("YYYY-MM");
37
37
  });
38
38
  const nextMonthDayjs = vue.computed(() => {
39
- return date.value.add(1, "month");
39
+ return date.value.add(1, "month").date(1);
40
40
  });
41
41
  const prevYearDayjs = vue.computed(() => {
42
- return date.value.subtract(1, "year");
42
+ return date.value.subtract(1, "year").date(1);
43
43
  });
44
44
  const nextYearDayjs = vue.computed(() => {
45
- return date.value.add(1, "year");
45
+ return date.value.add(1, "year").date(1);
46
46
  });
47
47
  const i18nDate = vue.computed(() => {
48
48
  const pickedMonth = `el.datepicker.month${date.value.format("M")}`;