{"version":3,"file":"step.mjs","names":[],"sources":["../../../../../../packages/components/tour/src/step.ts"],"sourcesContent":["import { buildProps, definePropType, iconPropType } from '@element-plus/utils'\nimport { tourContentProps } from './content'\n\nimport type { CSSProperties, ExtractPublicPropTypes } from 'vue'\nimport type { IconPropType } from '@element-plus/utils'\nimport type { TourBtnProps, TourMask } from './types'\nimport type { TourContentProps } from './content'\n\nexport interface TourStepProps {\n  /**\n   * @description get the element the guide card points to. empty makes it show in center of screen\n   */\n  target?: string | HTMLElement | (() => HTMLElement | null) | null\n  /**\n   * @description the title of the tour content\n   */\n  title?: string\n  /**\n   * @description description\n   */\n  description?: string\n  /**\n   * @description whether to show a close button\n   */\n  showClose?: boolean\n  /**\n   * @description custom close icon, default is Close\n   */\n  closeIcon?: IconPropType\n  /**\n   * @description whether to show the arrow\n   */\n  showArrow?: boolean\n  /**\n   * @description position of the guide card relative to the target element\n   */\n  placement?: TourContentProps['placement']\n  /**\n   * @description whether to enable masking, change mask style and fill color by pass custom props\n   */\n  mask?: TourMask\n  /**\n   * @description custom style for content\n   */\n  contentStyle?: CSSProperties\n  /**\n   * @description properties of the previous button\n   */\n  prevButtonProps?: TourBtnProps\n  /**\n   * @description properties of the Next button\n   */\n  nextButtonProps?: TourBtnProps\n  /**\n   * @description support pass custom scrollIntoView options\n   */\n  scrollIntoViewOptions?: boolean | ScrollIntoViewOptions\n  /**\n   * @description type, affects the background color and text color\n   */\n  type?: 'default' | 'primary'\n}\n\n/**\n * @deprecated Removed after 3.0.0, Use `TourStepProps` instead.\n */\nexport const tourStepProps = buildProps({\n  /**\n   * @description get the element the guide card points to. empty makes it show in center of screen\n   */\n  target: {\n    type: definePropType<\n      string | HTMLElement | (() => HTMLElement | null) | null\n    >([String, Object, Function]),\n  },\n  /**\n   * @description the title of the tour content\n   */\n  title: String,\n  /**\n   * @description description\n   */\n  description: String,\n  /**\n   * @description whether to show a close button\n   */\n  showClose: {\n    type: Boolean,\n    default: undefined,\n  },\n  /**\n   * @description custom close icon, default is Close\n   */\n  closeIcon: {\n    type: iconPropType,\n  },\n  /**\n   * @description whether to show the arrow\n   */\n  showArrow: {\n    type: Boolean,\n    default: undefined,\n  },\n  /**\n   * @description position of the guide card relative to the target element\n   */\n  placement: tourContentProps.placement,\n  /**\n   * @description whether to enable masking, change mask style and fill color by pass custom props\n   */\n  mask: {\n    type: definePropType<TourMask>([Boolean, Object]),\n    default: undefined,\n  },\n  /**\n   * @description custom style for content\n   */\n  contentStyle: {\n    type: definePropType<CSSProperties>([Object]),\n  },\n  /**\n   * @description properties of the previous button\n   */\n  prevButtonProps: {\n    type: definePropType<TourBtnProps>(Object),\n  },\n  /**\n   * @description properties of the Next button\n   */\n  nextButtonProps: {\n    type: definePropType<TourBtnProps>(Object),\n  },\n  /**\n   * @description support pass custom scrollIntoView options\n   */\n  scrollIntoViewOptions: {\n    type: definePropType<boolean | ScrollIntoViewOptions>([Boolean, Object]),\n    default: undefined,\n  },\n  /**\n   * @description type, affects the background color and text color\n   */\n  type: {\n    type: definePropType<'default' | 'primary'>(String),\n  },\n})\n\n/**\n * @deprecated Removed after 3.0.0, Use `TourStepProps` instead.\n */\nexport type TourStepPropsPublic = ExtractPublicPropTypes<typeof tourStepProps>\n\nexport const tourStepEmits = {\n  close: () => true,\n}\nexport type TourStepEmits = typeof tourStepEmits\n"],"mappings":";;;;;;;;AAkEA,MAAa,gBAAgB,WAAW;CAItC,QAAQ,EACN,MAAM,eAEJ;EAAC;EAAQ;EAAQ;EAAS,CAAC,EAC9B;CAID,OAAO;CAIP,aAAa;CAIb,WAAW;EACT,MAAM;EACN,SAAS;EACV;CAID,WAAW,EACT,MAAM,cACP;CAID,WAAW;EACT,MAAM;EACN,SAAS;EACV;CAID,WAAW,iBAAiB;CAI5B,MAAM;EACJ,MAAM,eAAyB,CAAC,SAAS,OAAO,CAAC;EACjD,SAAS;EACV;CAID,cAAc,EACZ,MAAM,eAA8B,CAAC,OAAO,CAAC,EAC9C;CAID,iBAAiB,EACf,MAAM,eAA6B,OAAO,EAC3C;CAID,iBAAiB,EACf,MAAM,eAA6B,OAAO,EAC3C;CAID,uBAAuB;EACrB,MAAM,eAAgD,CAAC,SAAS,OAAO,CAAC;EACxE,SAAS;EACV;CAID,MAAM,EACJ,MAAM,eAAsC,OAAO,EACpD;CACF,CAAC;AAOF,MAAa,gBAAgB,EAC3B,aAAa,MACd"}