UNPKG

@progressive-development/pd-page

Version:

Progressive development page helper, teaser, menu, footer.

43 lines (41 loc) 1.13 kB
class ToastBus extends EventTarget { /** * Show a toast notification * @param message - Message to display * @param type - Toast type (default: "info") * @param duration - Duration in ms (default: component default, -1 for persistent) */ show(message, type = "info", duration) { this.dispatchEvent( new CustomEvent("toast", { detail: { message, type, duration } }) ); } /** * Show a success toast * @param message - Message to display * @param duration - Duration in ms (optional) */ success(message, duration) { this.show(message, "success", duration); } /** * Show an error toast (persistent by default) * @param message - Message to display * @param duration - Duration in ms (default: -1 for persistent) */ error(message, duration = -1) { this.show(message, "error", duration); } /** * Show an info toast * @param message - Message to display * @param duration - Duration in ms (optional) */ info(message, duration) { this.show(message, "info", duration); } } const toastBus = new ToastBus(); export { toastBus };