Skip to content

Components ​

Generated from the components' source with vue-component-meta; do not edit by hand. Required props are marked with *.

DriverTour ​

Renders a driver's tour: the overlay, the stage and the popover, teleported to body (or config.teleportTo) while the tour is active. Place it once in your layout; pass the driver as a prop or install DriverPlugin and omit it to render the shared instance.

Props ​

NameTypeDefaultDescription
driverDriver | undefined

Events ​

None.

Slots ​

NameScopeDescription
overlayOverlaySlotPropsReplaces the overlay.
stageStageSlotPropsDecorates the stage (rendered inside .driver-stage).
popoverTourSlotPropsReplaces the popover body; the positioned wrapper and the arrow remain.
arrowTourSlotProps
closeTourSlotProps
titleTourSlotProps
descriptionTourSlotProps
footerTourSlotProps
progressTourSlotProps
prevTourSlotProps
nextTourSlotProps

Exposed ​

None.

DriverPopover ​

The default popover: the driver.js DOM, classes and accessibility contract, positioned with Floating UI. Every part is a slot; the whole body can be replaced through the default slot or model.component.

Props ​

NameTypeDefaultDescription
model *PopoverRenderModelThe resolved popover model from the driver (or hints) state.
anchorElement | StageRect | undefinedundefinedThe element (or rect) the popover points at; ignored when the model is centered.
mode"tour" | "hint" | undefined"tour"Hint popovers render a single dismiss button and no close/progress.
refreshTicknumber | undefined0Bump to re-position.
scopeRecord<string, unknown> | undefined{}Extra props merged into every slot's scope (the tour context).
strategy"fixed" | "absolute" | undefined"fixed"Positioning strategy; absolute scrolls natively with the page.
zIndexnumber | undefined10000

Events ​

NamePayloadDescription
render[dom: PopoverDOM]
unrender[dom: PopoverDOM]

Slots ​

NameScopeDescription
defaultPopoverSlotPropsReplaces the whole body (close button, title, description, footer).
arrowPopoverSlotProps
closePopoverSlotProps
titlePopoverSlotProps
descriptionPopoverSlotProps
footerPopoverSlotProps
progressPopoverSlotProps
prevPopoverSlotProps
nextPopoverSlotProps

Exposed ​

NameTypeDescription
update() => voidRe-measure and re-position the popover.
getDom() => PopoverDOM | undefinedThe popover parts, for imperative access.

DriverOverlay ​

The dimmed page with the stage cut out: a full-screen SVG whose single evenodd path is the dim minus the rounded cutout. Only the path receives pointer events.

Props ​

NameTypeDefaultDescription
stage *StageRectThe cutout rect, without padding.
animatedboolean | undefinedtrueThe engine drives the stage rect per frame; ignored by this overlay.
colorstring | undefined"#000"
opacitynumber | undefined0.7
paddingnumber | undefined10
radiusnumber | undefined5
refreshTicknumber | undefined0Bump to re-measure the viewport (resize).
transitioningboolean | undefinedfalseThe stage is animating between two elements.
zIndexnumber | undefined10000

Events ​

NamePayloadDescription
click[event: MouseEvent]

Slots ​

None.

Exposed ​

None.

DriverBoxOverlay ​

An alternative overlay: a box at the stage rect whose huge box-shadow dims the page. With animate: false the cutout moves with a CSS transition, so the highlight box can be animated with any timing function.

Props ​

NameTypeDefaultDescription
stage *StageRectThe cutout rect, without padding.
animatedboolean | undefinedtrueThe engine animates the rect per frame; the CSS transition is then disabled.
colorstring | undefined"#000"
opacitynumber | undefined0.7
paddingnumber | undefined10
radiusnumber | undefined5
refreshTicknumber | undefined0
transitioningboolean | undefinedfalseThe stage is animating between two elements.
zIndexnumber | undefined10000

Events ​

NamePayloadDescription
click[event: MouseEvent]

Slots ​

None.

Exposed ​

None.

DriverStage ​

An empty, non-interactive box tracking the stage cutout, for decorations. Exposes its rect as --driver-stage-* CSS variables and takes a slot.

Props ​

NameTypeDefaultDescription
stage *StageRectThe cutout rect, without padding.
paddingnumber | undefined10
radiusnumber | undefined5
transitioningboolean | undefinedfalseThe stage is animating between two elements.
zIndexnumber | undefined10000

Events ​

None.

Slots ​

NameScopeDescription
default{}

Exposed ​

None.

DriverHints ​

Renders a hints instance: the beacons, the optional overlay and the open hint's popover (from driver-vue/hints).

Props ​

NameTypeDefaultDescription
hints *Hints

Events ​

None.

Slots ​

NameScopeDescription
beaconHintScope & { entry: MountedHint; }Content of a beacon button (the button itself stays, positioned and labelled).
popoverHintSlotPropsReplaces the popover body.
arrowHintSlotProps
titleHintSlotProps
descriptionHintSlotProps
footerHintSlotProps
nextHintSlotProps

Exposed ​

None.

DriverHintBeacon ​

The default pulsing beacon of a hint.

Props ​

NameTypeDefaultDescription
entry *MountedHint
originXnumber | undefined0Document offset of the positioned container the beacon lives in.
originYnumber | undefined0

Events ​

NamePayloadDescription
click[]
mounted[id: string, element: HTMLElement]
unmounted[id: string]

Slots ​

NameScopeDescription
default{}

Exposed ​

None.

Released under the MIT License.