A minified version of the GSAP (GreenSock Animation Platform) library has been added to the scripts/vendor directory. This library will be used to provide rich, high-performance animations for various components within the project.
65 lines
1.8 KiB
TypeScript
65 lines
1.8 KiB
TypeScript
|
|
export interface IOverlayOptions {
|
|
hiddenClass?: string | null;
|
|
isClosePrev?: boolean;
|
|
backdropClasses?: string | null;
|
|
}
|
|
export interface IOverlay {
|
|
options?: IOverlayOptions;
|
|
open(): void;
|
|
close(): void;
|
|
}
|
|
export interface ICollectionItem<T> {
|
|
id: string | number;
|
|
element: T;
|
|
}
|
|
export interface IBasePlugin<O, E> {
|
|
el: E;
|
|
options?: O;
|
|
events?: {};
|
|
}
|
|
declare class HSBasePlugin<O, E = HTMLElement> implements IBasePlugin<O, E> {
|
|
el: E;
|
|
options: O;
|
|
events?: any;
|
|
constructor(el: E, options: O, events?: any);
|
|
createCollection(collection: any[], element: any): void;
|
|
fireEvent(evt: string, payload?: any): any;
|
|
on(evt: string, cb: Function): void;
|
|
}
|
|
declare class HSOverlay extends HSBasePlugin<{}> implements IOverlay {
|
|
private readonly hiddenClass;
|
|
private readonly isClosePrev;
|
|
private readonly backdropClasses;
|
|
private openNextOverlay;
|
|
private autoHide;
|
|
private readonly overlayId;
|
|
overlay: HTMLElement | null;
|
|
isCloseWhenClickInside: string;
|
|
isTabAccessibilityLimited: string;
|
|
hasAutofocus: string;
|
|
hasAbilityToCloseOnBackdropClick: string;
|
|
constructor(el: HTMLElement, options?: IOverlayOptions, events?: {});
|
|
private init;
|
|
private hideAuto;
|
|
private checkTimer;
|
|
private buildBackdrop;
|
|
private destroyBackdrop;
|
|
private focusElement;
|
|
open(): false | Promise<void>;
|
|
close(): Promise<unknown>;
|
|
static getInstance(target: HTMLElement, isInstance?: boolean): HTMLElement | ICollectionItem<HSOverlay>;
|
|
static autoInit(): void;
|
|
static open(target: HTMLElement): void;
|
|
static close(target: HTMLElement): void;
|
|
static accessibility(evt: KeyboardEvent): boolean;
|
|
static onEscape(target: ICollectionItem<HSOverlay>): void;
|
|
static onTab(target: ICollectionItem<HSOverlay>, focusableElements: HTMLElement[]): boolean;
|
|
static on(evt: string, target: HTMLElement, cb: Function): void;
|
|
}
|
|
|
|
export {
|
|
HSOverlay as default,
|
|
};
|
|
|
|
export {};
|