UNPKG

gd-bs

Version:

Bootstrap JavaScript, TypeScript and Web Components library.

77 lines (70 loc) 1.95 kB
/** * <div id="demo"></div> * <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/gd-sprest-bs/5.0.3/gd-sprest-bs.min.js"></script> * <script type="text/javascript"> * // Wait for the window to be loaded * window.addEventListener("load", function() { * // Create the toast * $REST.Components.Toast({ * el: document.querySelector("#demo"), * headerText: "Header", * body: "This is the body of the toast.", * mutedText: "2 seconds ago", * options: { autohide: false } * }); * }); * </script> */ /** * ### Toast * * ```ts * import { Components } from "gd-sprest-bs"; * * // Create a toast * let el = document.querySelector("#toast"); * Components.Toast({ * el, * headerText: "Header", * body: "This is the body of the toast.", * mutedText: "2 seconds ago", * options: { autohide: false } * }); * ``` */ export const Toast: (props: IToastProps, template?: string) => IToast; import { IBaseProps } from "../types"; /** * Toast */ export interface IToast { /** The component element. */ el: HTMLElement; /** Hides the toast. */ hide: () => void; /** Shows the toast. */ show: () => void; } /** * Toast Properties */ export interface IToastProps<T = HTMLElement> extends IBaseProps<IToast> { body?: string | T; data?: any; headerImgClass?: string; headerImgSrc?: string; headerText?: string; mutedText?: string; options?: IToastOptions; onClick?: (el?: HTMLElement, data?: any) => void; onRenderBody?: (el?: HTMLElement, data?: any) => void; onRenderHeader?: (el?: HTMLElement, data?: any) => void; } /** * Toast Options */ export interface IToastOptions { animation?: boolean; autohide?: boolean; delay?: number; }