You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

0 lines
11 KiB

1 month ago
  1. {"ast":null,"code":"import { useTooltipTriggerProps } from '../../tooltip/src/trigger.mjs';\nimport { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';\nimport { EVENT_CODE } from '../../../constants/aria.mjs';\nimport { useTooltipContentProps } from '../../tooltip/src/content.mjs';\nimport { iconPropType } from '../../../utils/vue/icon.mjs';\nimport { createCollectionWithScope } from '../../collection/src/collection.mjs';\nconst dropdownProps = buildProps({\n trigger: useTooltipTriggerProps.trigger,\n triggerKeys: {\n type: definePropType(Array),\n default: () => [EVENT_CODE.enter, EVENT_CODE.numpadEnter, EVENT_CODE.space, EVENT_CODE.down]\n },\n effect: {\n ...useTooltipContentProps.effect,\n default: \"light\"\n },\n type: {\n type: definePropType(String)\n },\n placement: {\n type: definePropType(String),\n default: \"bottom\"\n },\n popperOptions: {\n type: definePropType(Object),\n default: () => ({})\n },\n id: String,\n size: {\n type: String,\n default: \"\"\n },\n splitButton: Boolean,\n hideOnClick: {\n type: Boolean,\n default: true\n },\n loop: {\n type: Boolean,\n default: true\n },\n showTimeout: {\n type: Number,\n default: 150\n },\n hideTimeout: {\n type: Number,\n default: 150\n },\n tabindex: {\n type: definePropType([Number, String]),\n default: 0\n },\n maxHeight: {\n type: definePropType([Number, String]),\n default: \"\"\n },\n popperClass: {\n type: String,\n default: \"\"\n },\n disabled: Boolean,\n role: {\n type: String,\n default: \"menu\"\n },\n buttonProps: {\n type: definePropType(Object)\n },\n teleported: useTooltipContentProps.teleported\n});\nconst dropdownItemProps = buildProps({\n command: {\n type: [Object, String, Number],\n default: () => ({})\n },\n disabled: Boolean,\n divided: Boolean,\n textValue: String,\n icon: {\n type: iconPropType\n }\n});\nconst dropdownMenuProps = buildProps({\n onKeydown: {\n type: definePropType(Function)\n }\n});\nconst FIRST_KEYS = [EVENT_CODE.down, EVENT_CODE.pageDown, EVENT_CODE.home];\nconst LAST_KEYS = [EVENT_CODE.up, EVENT_CODE.pageUp, EVENT_CODE.end];\nconst FIRST_LAST_KEYS = [...FIRST_KEYS, ...LAST_KEYS];\nconst {\n ElCollection,\n ElCollectionItem,\n COLLECTION_INJECTION_KEY,\n COLLECTION_ITEM_INJECTION_KEY\n} = createCollectionWithScope(\"Dropdown\");\nexport { COLLECTION_INJECTION_KEY as DROPDOWN_COLLECTION_INJECTION_KEY, COLLECTION_ITEM_INJECTION_KEY as DROPDOWN_COLLECTION_ITEM_INJECTION_KEY, ElCollection, ElCollectionItem, FIRST_KEYS, FIRST_LAST_KEYS, LAST_KEYS, dropdownItemProps, dropdownMenuProps, dropdownProps };","map":{"version":3,"names":["dropdownProps","buildProps","trigger","useTooltipTriggerProps","triggerKeys","type","definePropType","Array","default","EVENT_CODE","enter","numpadEnter","space","down","effect","useTooltipContentProps","String","placement","popperOptions","Object","id","size","splitButton","Boolean","hideOnClick","loop","showTimeout","Number","hideTimeout","tabindex","maxHeight","popperClass","disabled","role","buttonProps","teleported","dropdownItemProps","command","divided","textValue","icon","iconPropType","dropdownMenuProps","onKeydown","Function","FIRST_KEYS","pageDown","home","LAST_KEYS","up","pageUp","end","FIRST_LAST_KEYS","ElCollection","ElCollectionItem","COLLECTION_INJECTION_KEY","COLLECTION_ITEM_INJECTION_KEY","createCollectionWithScope"],"sources":["../../../../../../packages/components/dropdown/src/dropdown.ts"],"sourcesContent":["// @ts-nocheck\nimport { buildProps, definePropType, iconPropType } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport { createCollectionWithScope } from '@element-plus/components/collection'\nimport {\n useTooltipContentProps,\n useTooltipTriggerProps,\n} from '@element-plus/components/tooltip'\n\nimport type { Options } from '@popperjs/core'\nimport type { ButtonProps, ButtonType } from '@element-plus/components/button'\nimport type { Placement } from '@element-plu