Files
ctms/frontend/node_modules/element-plus/es/components/dropdown/src/dropdown-item.mjs.map
T

1 line
6.3 KiB
Plaintext

{"version":3,"file":"dropdown-item.mjs","sources":["../../../../../../packages/components/dropdown/src/dropdown-item.vue"],"sourcesContent":["<template>\n <el-roving-focus-item :focusable=\"!disabled\">\n <el-dropdown-item-impl\n v-bind=\"propsAndAttrs\"\n @pointerleave=\"handlePointerLeave\"\n @pointermove=\"handlePointerMove\"\n @clickimpl=\"handleClick\"\n >\n <slot />\n </el-dropdown-item-impl>\n </el-roving-focus-item>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, getCurrentInstance, inject } from 'vue'\nimport { ElRovingFocusItem } from '@element-plus/components/roving-focus-group'\nimport { composeEventHandlers, whenMouse } from '@element-plus/utils'\nimport ElDropdownItemImpl from './dropdown-item-impl.vue'\nimport { useDropdown } from './useDropdown'\nimport { dropdownItemProps } from './dropdown'\nimport { DROPDOWN_INJECTION_KEY } from './tokens'\n\nexport default defineComponent({\n name: 'ElDropdownItem',\n components: {\n ElRovingFocusItem,\n ElDropdownItemImpl,\n },\n inheritAttrs: false,\n props: dropdownItemProps,\n emits: ['pointermove', 'pointerleave', 'click'],\n setup(props, { emit, attrs }) {\n const { elDropdown } = useDropdown()\n const _instance = getCurrentInstance()\n const { onItemEnter, onItemLeave } = inject(\n DROPDOWN_INJECTION_KEY,\n undefined\n )!\n\n const handlePointerMove = composeEventHandlers(\n (e: PointerEvent) => {\n emit('pointermove', e)\n return e.defaultPrevented\n },\n whenMouse((e) => {\n if (props.disabled) {\n onItemLeave(e)\n return\n }\n\n const target = e.currentTarget as HTMLElement\n /**\n * This handles the following scenario:\n * when the item contains a form element such as input element\n * when the mouse is moving over the element itself which is contained by\n * the item, the default focusing logic should be prevented so that\n * it won't cause weird action.\n */\n if (\n target === document.activeElement ||\n target.contains(document.activeElement)\n ) {\n return\n }\n\n onItemEnter(e)\n if (!e.defaultPrevented) {\n target?.focus({\n preventScroll: true,\n })\n }\n })\n )\n\n const handlePointerLeave = composeEventHandlers((e: PointerEvent) => {\n emit('pointerleave', e)\n return e.defaultPrevented\n }, whenMouse(onItemLeave))\n\n const handleClick = composeEventHandlers(\n (e: PointerEvent) => {\n if (props.disabled) {\n return\n }\n emit('click', e)\n return e.type !== 'keydown' && e.defaultPrevented\n },\n (e) => {\n if (props.disabled) {\n e.stopImmediatePropagation()\n return\n }\n if (elDropdown?.hideOnClick?.value) {\n elDropdown.handleClick?.()\n }\n elDropdown.commandHandler?.(props.command, _instance, e)\n }\n )\n\n // direct usage of v-bind={ ...$props, ...$attrs } causes type errors\n const propsAndAttrs = computed(() => ({ ...props, ...attrs }))\n\n return {\n handleClick,\n handlePointerMove,\n handlePointerLeave,\n propsAndAttrs,\n }\n },\n})\n</script>\n"],"names":["_resolveComponent","_openBlock","_createBlock","_withCtx","_renderSlot"],"mappings":"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"}