UNPKG

ui-lit

Version:

UI Elements on LIT

204 lines (203 loc) 7.27 kB
import { LitElement, TemplateResult } from 'lit'; import '../spinner'; import '../icon'; import '../link'; import { TLinkTartget } from '../link/interface'; /** * * @cssprop --lit-button-display - Controls the display of button * * * @cssprop --lit-button-small-height - small size Height * @cssprop --lit-button-small-padding - small size Padding * @cssprop --lit-button-small-font-size - small size FontSize * * @cssprop --lit-button-height - medium size Height * @cssprop --lit-button-padding - medium size Padding * @cssprop --lit-button-font-size - medium size FontSize * * @cssprop --lit-button-large-height - large size Height * @cssprop --lit-button-large-padding - large size Padding * @cssprop --lit-button-large-font-size - large size FontSize * * @cssprop --lit-button-border - border * @cssprop --lit-button-outline - outline * @cssprop --lit-button-radius - border-radius * * * @cssprop --lit-button-text-transform - text-transform * @cssprop --lit-button-letter-spacing - letter-spacing * * * @cssprop --lit-button-color - color * @cssprop --lit-button-background - background * * @cssprop --lit-button-background-hover - hover background-color * @cssprop --lit-button-background-focus - focus background-color * @cssprop --lit-button-background-pressed - pressed background-color * * @cssprop --lit-button-outline-hover - hover outline * @cssprop --lit-button-outline-focus - focus outline * @cssprop --lit-button-outline-pressed - pressed outline * * @cssprop --lit-button-color-hover - hover color * @cssprop --lit-button-color-focus - focus color * @cssprop --lit-button-color-pressed - pressed color * * * @cssprop --lit-button-primary-color - color * @cssprop --lit-button-primary-background - background * @cssprop --lit-button-primary-border - border * * @cssprop --lit-button-primary-color-hover - hover color * @cssprop --lit-button-primary-color-focus - focus color * @cssprop --lit-button-primary-color-pressed - pressed color * * @cssprop --lit-button-primary-background-hover - hover background * @cssprop --lit-button-primary-background-focus - focus background * @cssprop --lit-button-primary-background-pressed - pressed background * * @cssprop --lit-button-primary-outline-hover - outline hover * @cssprop --lit-button-primary-outline-focus - outline hover * @cssprop --lit-button-primary-outline-pressed - outline pressed * * * @cssprop --lit-button-success-color - color * @cssprop --lit-button-success-background - background * @cssprop --lit-button-success-border - border * * @cssprop --lit-button-success-color-hover - hover color * @cssprop --lit-button-success-color-focus - focus color * @cssprop --lit-button-success-color-pressed - pressed color * * @cssprop --lit-button-success-background-hover - hover background * @cssprop --lit-button-success-background-focus - focus background * @cssprop --lit-button-success-background-pressed - pressed background * * @cssprop --lit-button-success-outline-hover - outline hover * @cssprop --lit-button-success-outline-focus - outline hover * @cssprop --lit-button-success-outline-pressed - outline pressed * * * @cssprop --lit-button-danger-color - color * @cssprop --lit-button-danger-background - background * @cssprop --lit-button-danger-border - border * * @cssprop --lit-button-danger-color-hover - hover color * @cssprop --lit-button-danger-color-focus - focus color * @cssprop --lit-button-danger-color-pressed - pressed color * * @cssprop --lit-button-danger-background-hover - hover background * @cssprop --lit-button-danger-background-focus - focus background * @cssprop --lit-button-danger-background-pressed - pressed background * * @cssprop --lit-button-danger-outline-hover - outline hover * @cssprop --lit-button-danger-outline-focus - outline hover * @cssprop --lit-button-danger-outline-pressed - outline pressed * * @cssprop --lit-button-switch-color Switch color * @cssprop --lit-button-switch-background Switch background color * * @cssprop --lit-button-switch-on-color Switch-On color * @cssprop --lit-button-switch-on-background Switch-On background color * * */ export interface ButtonProps { type: Type; size: TSize; primary?: boolean; disabled?: boolean; borderless?: boolean; success?: boolean; danger?: boolean; switchOn?: boolean; notifyOnClick?: boolean; center?: boolean; loading?: boolean; } declare type Type = 'submit' | 'button' | 'switch'; declare type TSize = "small" | "medium" | "large"; declare const LitButton_base: (new (...args: any[]) => import("../mixins/focusable/inderface").Focusable & LitElement) & typeof LitElement; /** @tag lit-button */ export declare class LitButton extends LitButton_base implements ButtonProps { static styles: import("lit").CSSResult[]; static get properties(): { loading: { type: BooleanConstructor; }; }; /** @ignore */ private _loading; get loading(): boolean; set loading(value: boolean); /** @prop {"button" | "submit"} type */ align: 'start' | 'center' | 'end'; href: string | null; target: TLinkTartget; /** @prop {"button" | "submit"} type */ type: Type; size: TSize; /** @prop {boolean} disabled - Disable element */ disabled: boolean; /** @prop {boolean} borderless - Borderless element */ borderless: boolean; /** @prop {boolean} primary - Primary */ primary: boolean; /** @prop {boolean} success - Success */ success: boolean; /** @prop {boolean} danger - Danger */ danger: boolean; between: boolean; /** @prop {boolean} switchOn - switch State. true - enabled, false disabled */ switchOn: boolean; accent: boolean; notifyOnClick: boolean; /** @ignore */ _notifyIcon: boolean; tabindex: number; /** @ignore */ private _notifyTimeout; /** @ignore */ private _width; /** @ignore */ private _radiant; /** @ignore */ private _animationFrame; /** @ignore */ private _pressed; /** @ignore */ private get classes(); /** @ignore */ private _contentTemplate; private wrapperTemplate; /** * @slot icon-before - You can put some elements before content * @slot icon-after - You can put some elements after content */ render(): TemplateResult<1 | 2>; private _startAnimation; private _onTouchstart; private _onMouseOver; private _onMouseOut; private _onMouseDown; private _startPress; private _endPress; /** @ignore */ private _onBlur; /** @ignore */ private _onFocus; /** @ignore */ private _onKeyDown; click(): void; /** @event {CustomEvent} switchChanged - for type = 'switch'. Return current switchOn state. */ toggleSwitch(): void; /** @event {CustomEvent} submitForm - for type = 'submit'. Submit to lit-form */ submit(): void; } declare global { interface HTMLElementTagNameMap { 'lit-button': LitButton; } } export {};