UNPKG

@cn-ui/core

Version:

The @cn-ui/core is a collection of UI components and utilities for building modern web applications with SolidJS.

38 lines (37 loc) 1.54 kB
import { type Atom, type JSXSlot } from "@cn-ui/reactive"; import { type ModalListPosition } from "../Modal"; import { type AlertProps } from "./Alert"; import { FloatingArea } from "./runtime"; export interface MessageInfo extends Partial<AlertProps> { id?: string; title: JSXSlot; description?: JSXSlot; duration?: number; type: "info" | "success" | "error" | "warning"; position?: ModalListPosition; closable?: boolean; } interface MessageRenderProps { store: MessageControl["PStore"]; } export declare class MessageControl extends FloatingArea<MessageRenderProps> { id: string; constructor(id: string); PStore: Record<ModalListPosition, Atom<MessageInfo[]>>; removeMessage(id: string): MessageInfo[]; render(): import("solid-js").JSX.Element; private autoKey; getPosFromInfo(info: { position?: ModalListPosition; }): "bottom" | "top" | "top-left" | "top-right" | "bottom-left" | "bottom-right"; getPosFromId(id: string): ModalListPosition; create(message: JSXSlot, type: MessageInfo["type"], options?: Partial<MessageInfo>): MessageInfo; close(item: MessageInfo): void; private durationClose; info(message: JSXSlot, options?: Partial<MessageInfo>): MessageInfo; success(message: JSXSlot, options?: Partial<MessageInfo>): MessageInfo; warning(message: JSXSlot, options?: Partial<MessageInfo>): MessageInfo; error(message: JSXSlot, options?: Partial<MessageInfo>): MessageInfo; } export declare const Message: MessageControl; export {};