element-plus
Version:
A Component Library for Vue 3
1 lines • 9.01 kB
Source Map (JSON)
{"version":3,"file":"content.mjs","sources":["../../../../../../packages/components/popper/src/content.ts"],"sourcesContent":["import { placements } from '@popperjs/core'\nimport { buildProps, definePropType } from '@element-plus/utils'\nimport { useAriaProps } from '@element-plus/hooks'\nimport { popperArrowProps, popperArrowPropsDefaults } from './arrow'\n\nimport type { PopperEffect } from './popper'\nimport type { ExtractPublicPropTypes, StyleValue } from 'vue'\nimport type { Options, Placement } from '@popperjs/core'\nimport type { Measurable } from './constants'\nimport type Content from './content.vue'\nimport type { PopperArrowProps } from './arrow'\n\ntype ClassObjectType = Record<string, boolean>\ntype ClassType = string | ClassObjectType | ClassType[]\n\nconst POSITIONING_STRATEGIES = ['fixed', 'absolute'] as const\n\nexport interface CreatePopperInstanceParams {\n referenceEl: Measurable\n popperContentEl: HTMLElement\n arrowEl: HTMLElement | undefined\n}\n\nexport interface PopperCoreConfigProps {\n boundariesPadding?: number\n fallbackPlacements?: Placement[]\n gpuAcceleration?: boolean\n /**\n * @description offset of the Tooltip\n */\n offset?: number\n /**\n * @description position of Tooltip\n */\n placement?: Placement\n /**\n * @description [popper.js](https://popper.js.org/docs/v2/) parameters\n */\n popperOptions?: Partial<Options>\n strategy?: (typeof POSITIONING_STRATEGIES)[number]\n}\n\n/**\n * @deprecated Removed after 3.0.0, Use `PopperCoreConfigProps` instead.\n */\nexport const popperCoreConfigProps = buildProps({\n boundariesPadding: {\n type: Number,\n default: 0,\n },\n fallbackPlacements: {\n type: definePropType<Placement[]>(Array),\n default: undefined,\n },\n gpuAcceleration: {\n type: Boolean,\n default: true,\n },\n /**\n * @description offset of the Tooltip\n */\n offset: {\n type: Number,\n default: 12,\n },\n /**\n * @description position of Tooltip\n */\n placement: {\n type: String,\n values: placements,\n default: 'bottom',\n },\n /**\n * @description [popper.js](https://popper.js.org/docs/v2/) parameters\n */\n popperOptions: {\n type: definePropType<Partial<Options>>(Object),\n default: () => ({}),\n },\n strategy: {\n type: String,\n values: POSITIONING_STRATEGIES,\n default: 'absolute',\n },\n} as const)\n/**\n * @deprecated Removed after 3.0.0, Use `PopperCoreConfigProps` instead.\n */\nexport type PopperCoreConfigPropsPublic = ExtractPublicPropTypes<\n typeof popperCoreConfigProps\n>\n\nexport interface PopperContentProps\n extends PopperCoreConfigProps, PopperArrowProps {\n id?: string\n style?: StyleValue\n className?: ClassType\n effect?: PopperEffect\n visible?: boolean\n enterable?: boolean\n pure?: boolean\n focusOnShow?: boolean\n trapping?: boolean\n popperClass?: ClassType\n popperStyle?: StyleValue\n referenceEl?: HTMLElement\n triggerTargetEl?: HTMLElement\n stopPopperMouseEvent?: boolean\n virtualTriggering?: boolean\n zIndex?: number\n ariaLabel?: string\n loop?: boolean\n}\n\n/**\n * @deprecated Removed after 3.0.0, Use `PopperContentProps` instead.\n */\nexport const popperContentProps = buildProps({\n ...popperCoreConfigProps,\n ...popperArrowProps,\n id: String,\n style: {\n type: definePropType<StyleValue>([String, Array, Object]),\n },\n className: {\n type: definePropType<ClassType>([String, Array, Object]),\n },\n effect: {\n type: definePropType<PopperEffect>(String),\n default: 'dark',\n },\n visible: Boolean,\n enterable: {\n type: Boolean,\n default: true,\n },\n pure: Boolean,\n focusOnShow: Boolean,\n trapping: Boolean,\n popperClass: {\n type: definePropType<ClassType>([String, Array, Object]),\n },\n popperStyle: {\n type: definePropType<StyleValue>([String, Array, Object]),\n },\n referenceEl: {\n type: definePropType<HTMLElement>(Object),\n },\n triggerTargetEl: {\n type: definePropType<HTMLElement>(Object),\n },\n stopPopperMouseEvent: {\n type: Boolean,\n default: true,\n },\n virtualTriggering: Boolean,\n zIndex: Number,\n ...useAriaProps(['ariaLabel']),\n loop: Boolean,\n} as const)\n/**\n * @deprecated Removed after 3.0.0, Use `PopperContentProps` instead.\n */\nexport type PopperContentPropsPublic = ExtractPublicPropTypes<\n typeof popperContentProps\n>\n\nexport const popperCoreConfigPropsDefaults = {\n boundariesPadding: 0,\n gpuAcceleration: true,\n offset: 12,\n placement: 'bottom',\n popperOptions: () => ({}),\n strategy: 'absolute',\n} as const\n\nexport const popperContentPropsDefaults = {\n ...popperCoreConfigPropsDefaults,\n ...popperArrowPropsDefaults,\n effect: 'dark',\n enterable: true,\n stopPopperMouseEvent: true,\n visible: false,\n pure: false,\n focusOnShow: false,\n trapping: false,\n virtualTriggering: false,\n loop: false,\n style: undefined,\n popperStyle: undefined,\n} as const\n\nexport const popperContentEmits = {\n mouseenter: (evt: MouseEvent) => evt instanceof MouseEvent,\n mouseleave: (evt: MouseEvent) => evt instanceof MouseEvent,\n focus: () => true,\n blur: () => true,\n close: () => true,\n}\nexport type PopperContentEmits = typeof popperContentEmits\n\nexport type PopperContentInstance = InstanceType<typeof Content> & unknown\n\n/** @deprecated use `popperCoreConfigProps` instead, and it will be deprecated in the next major version */\nexport const usePopperCoreConfigProps = popperCoreConfigProps\n\n/** @deprecated use `popperContentProps` instead, and it will be deprecated in the next major version */\nexport const usePopperContentProps = popperContentProps\n\n/** @deprecated use `popperContentEmits` instead, and it will be deprecated in the next major version */\nexport const usePopperContentEmits = popperContentEmits\n\n/** @deprecated use `PopperCoreConfigProps` instead, and it will be deprecated in the next major version */\nexport type UsePopperCoreConfigProps = PopperCoreConfigProps\n\n/** @deprecated use `PopperContentProps` instead, and it will be deprecated in the next major version */\nexport type UsePopperContentProps = PopperContentProps\n\n/** @deprecated use `PopperContentInstance` instead, and it will be deprecated in the next major version */\nexport type ElPopperArrowContent = PopperContentInstance\n"],"names":[],"mappings":"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"}