@gfazioli/mantine-onboarding-tour
Version:
A Mantine component enables you to create a onboarding-tour effect using overlays, popovers, and onboarding tours, which enhances element visibility and interactivity.
43 lines (42 loc) • 2.31 kB
TypeScript
import React from 'react';
import { BoxProps, Factory, StylesApiProps } from '@mantine/core';
import { OnboardingTourController, type OnboardingTourOptions, type OnboardingTourStep } from './hooks/use-onboarding-tour/use-onboarding-tour';
import { OnboardingTourFocusReveal, OnboardingTourFocusRevealProps } from './OnboardingTourFocusReveal/OnboardingTourFocusReveal';
import { OnboardingTourPopoverContent, type OnboardingTourPopoverContentBaseProps } from './OnboardingTourPopoverContent';
import { OnboardingTourPopoverContentStylesNames } from './OnboardingTourPopoverContent/OnboardingTourPopoverContent';
import { OnboardingTourTarget } from './OnboardingTourTarget/OnboardingTourTarget';
export type OnboardingTourStylesNames = OnboardingTourPopoverContentStylesNames;
export interface OnboardingTourBaseProps extends OnboardingTourOptions, Omit<OnboardingTourPopoverContentBaseProps, 'tourController'> {
tour: OnboardingTourStep[];
/** Controlled started state */
started: boolean;
/** Props passed to FocusReveal */
focusRevealProps?: OnboardingTourFocusRevealProps | ((tourController: OnboardingTourController) => OnboardingTourFocusRevealProps);
/** Child elements */
children: React.ReactNode;
}
export interface OnboardingTourProps extends BoxProps, OnboardingTourBaseProps, StylesApiProps<OnboardingTourFactory> {
}
export type OnboardingTourFactory = Factory<{
props: OnboardingTourProps;
ref: HTMLDivElement;
stylesNames: OnboardingTourStylesNames;
staticComponents: {
FocusReveal: typeof OnboardingTourFocusReveal;
PopoverContent: typeof OnboardingTourPopoverContent;
Target: typeof OnboardingTourTarget;
};
}>;
export declare const defaultProps: Partial<OnboardingTourProps>;
export declare function OnboardingTour(_props: OnboardingTourProps): React.JSX.Element;
export declare namespace OnboardingTour {
var displayName: string;
var classes: any;
var FocusReveal: typeof OnboardingTourFocusReveal;
var PopoverContent: import("@mantine/core").MantineComponent<{
props: import("./OnboardingTourPopoverContent").OnboardingTourPopoverContentProps;
ref: HTMLDivElement;
stylesNames: OnboardingTourPopoverContentStylesNames;
}>;
var Target: typeof OnboardingTourTarget;
}