Files
WRNexusJS/packages/ui/COMPONENTS.md
T
2026-07-29 12:51:10 +05:30

46 KiB

WRNexus UI component reference

This reference is generated from the 85 packaged .wrn component sources. Props marked required have no default; all others show their runtime default.

Advanced-forms

AdvancedSelect

Theme-aware, responsive advanced select component.

  • Mount: data-component="AdvancedSelect"
  • Props: size: string = "default", color: string = "primary", label: string = "Advanced Select", name: string = "", value: string = "", values: string = [], options: string = [], groups: string = [], placeholder: string = "Select an option", placeholderIcon: string = "", searchPlaceholder: string = "Search options…", multiple: boolean = false, searchable: boolean = true, defaultOpen: boolean = false, clearable: boolean = true, allowEmpty: boolean = true, tags: boolean = false, disabled: boolean = false, required: boolean = false, invalid: boolean = false, validationMessage: string = "", helpText: string = "", loading: boolean = false, loadingLabel: string = "Loading options…", emptyLabel: string = "No options found", selectedOptionsLabel: string = "Selected options", clearLabel: string = "Clear selection", createLabel: string = "Create", loadMoreLabel: string = "Load more", searchMode: string = "contains", searchFields: string = "label,description", minSearchLength: number = 0, searchResultLimit: number = 0, maxSelections: number = 0, showCounter: boolean = false, counterTemplate: string = "{selected} selected", optionTemplate: string = "default", selectedTemplate: string = "default", closeOnSelect: boolean = true, scrollToSelected: boolean = true, fixed: boolean = false, placement: string = "bottom", remote: boolean = false, remoteUrl: string = "", remoteQueryParam: string = "q", remoteDebounce: number = 250, remoteAutoLoad: boolean = true, infinite: boolean = false, hasMore: boolean = false, page: number = 1, class: string = ""
  • Slots: None
  • Events: search, select, change, clear, open, close, load, error

ComboBox

Editable autocomplete combobox with local and remote suggestions.

  • Mount: data-component="ComboBox"
  • Props: size: string = "default", color: string = "primary", label: string = "ComboBox", name: string = "", value: string = "", options: string = [], groups: string = [], placeholder: string = "Search or select an option", searchPlaceholder: string = "Start typing…", clearable: boolean = true, allowCustomValue: boolean = false, disabled: boolean = false, required: boolean = false, invalid: boolean = false, validationMessage: string = "", helpText: string = "", loading: boolean = false, loadingLabel: string = "Loading suggestions…", emptyLabel: string = "No matching options", clearLabel: string = "Clear value", toggleLabel: string = "Toggle suggestions", searchMode: string = "contains", searchFields: string = "label,description", minSearchLength: number = 0, searchResultLimit: number = 0, optionTemplate: string = "default", defaultOpen: boolean = false, closeOnSelect: boolean = true, fixed: boolean = false, placement: string = "bottom", autocomplete: string = "off", remote: boolean = false, remoteUrl: string = "", remoteQueryParam: string = "q", remoteDebounce: number = 250, remoteAutoLoad: boolean = true, infinite: boolean = false, hasMore: boolean = false, page: number = 1, loadMoreLabel: string = "Load more", class: string = ""
  • Slots: None
  • Events: search, select, change, clear, open, close, load, error

CopyMarkup

Theme-aware, responsive copy markup component.

  • Mount: data-component="CopyMarkup"
  • Props: size: string = "default", color: string = "primary", label: string = "Copy Markup", name: string = "", value: string = "", placeholder: string = "", type: string = "text", min: string = "", max: string = "", step: string = "", disabled: boolean = false, required: boolean = false, class: string = ""
  • Slots: None
  • Events: copy, success, error

InputNumber

Theme-aware, responsive input number component.

  • Mount: data-component="InputNumber"
  • Props: size: string = "default", color: string = "primary", variant: string = "default", class: string = "", id: string = "", name: string = "quantity", value: number = 0, min: string = "", max: string = "", step: number = 1, precision: string = "auto", label: string = "", description: string = "", helpText: string = "", error: string = "", invalid: boolean = false, prefix: string = "", suffix: string = "", placeholder: string = "", autocomplete: string = "off", inputMode: string = "decimal", ariaLabel: string = "", required: boolean = false, disabled: boolean = false, inputDisabled: boolean = false, buttonsDisabled: boolean = false, readonly: boolean = false, allowInput: boolean = true, keyboard: boolean = true, wheel: boolean = false, clamp: boolean = true, fullWidth: boolean = false, showButtons: boolean = true, showValidationMessage: boolean = true, decrementLabel: string = "Decrease value", incrementLabel: string = "Increase value", controlsLabel: string = "Quantity controls", requiredMessage: string = "A value is required.", minMessage: string = "Value is below the minimum.", maxMessage: string = "Value is above the maximum."
  • Slots: None
  • Events: input, change, increment, decrement

PinInput

Secure multi-cell PIN and verification-code input with regex and paste support.

  • Mount: data-component="PinInput"
  • Props: size: string = "default", color: string = "primary", label: string = "Verification code", name: string = "pin", value: string = "", length: number = 4, pattern: string = "[0-9]", type: string = "text", inputMode: string = "numeric", placeholder: string = "○", autocomplete: string = "one-time-code", masked: boolean = false, disabled: boolean = false, readonly: boolean = false, required: boolean = false, autoFocus: boolean = false, autoSubmit: boolean = false, allowPaste: boolean = true, clearable: boolean = true, clearLabel: string = "Clear code", separator: string = "", groupSize: number = 0, helpText: string = "", invalid: boolean = false, validationMessage: string = "", class: string = ""
  • Slots: None
  • Events: input, change, complete, paste, clear, error

Theme-aware, responsive search box component.

  • Mount: data-component="SearchBox"
  • Props: size: string = "default", color: string = "primary", label: string = "Search Box", name: string = "", value: string = "", placeholder: string = "", type: string = "search", min: string = "", max: string = "", step: string = "", disabled: boolean = false, required: boolean = false, class: string = ""
  • Slots: None
  • Events: input, change, search, submit, clear

StrongPassword

Theme-aware, responsive strong password component.

  • Mount: data-component="StrongPassword"
  • Props: size: string = "default", color: string = "primary", label: string = "Password", name: string = "password", value: string = "", placeholder: string = "Create a strong password", autocomplete: string = "new-password", minLength: number = 8, specialCharactersSet: string = "!@#$%^&*()_+-=[]{}|;:,.<>?", requireLowercase: boolean = true, requireUppercase: boolean = true, requireNumber: boolean = true, requireSpecialCharacter: boolean = true, showRequirements: boolean = true, presentation: string = "inline", hintText: string = "Use a unique password you do not use elsewhere.", emptyLabel: string = "Enter a password", weakLabel: string = "Weak", fairLabel: string = "Fair", goodLabel: string = "Good", strongLabel: string = "Strong", disabled: boolean = false, readonly: boolean = false, required: boolean = false, invalid: boolean = false, validationMessage: string = "", class: string = ""
  • Slots: None
  • Events: input, change, strength

ToggleCount

Theme-aware, responsive toggle count component.

  • Mount: data-component="ToggleCount"
  • Props: size: string = "default", color: string = "primary", variant: string = "segmented", class: string = "", name: string = "billing-cycle", value: string = "monthly", firstValue: string = "monthly", firstLabel: string = "Monthly", secondValue: string = "annual", secondLabel: string = "Annual", ariaLabel: string = "Billing frequency", items: string = [], currency: string = "$", suffix: string = "", firstValueKey: string = "monthly", secondValueKey: string = "annual", emptyValue: string = "—", align: string = "end", fullWidth: boolean = true, disabled: boolean = false, animate: boolean = true, animationDuration: number = 450, animationSteps: number = 18
  • Slots: None
  • Events: change, toggle

TogglePassword

Accessible password field with optional show and hide controls.

  • Mount: data-component="TogglePassword"
  • Props: size: string = "default", color: string = "primary", label: string = "Password", name: string = "password", value: string = "", placeholder: string = "Enter your password", autocomplete: string = "current-password", minlength: string = "", maxlength: string = "", pattern: string = "(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[^A-Za-z0-9]).{8,}", fields: string = [], visible: boolean = false, toggleable: boolean = true, toggleMode: string = "button", checkboxLabel: string = "Show password", showLabel: string = "Show password", hideLabel: string = "Hide password", disabled: boolean = false, readonly: boolean = false, required: boolean = false, invalid: boolean = false, helpText: string = "", validationMessage: string = "", class: string = ""
  • Slots: None
  • Events: input, change, toggle

Base

Accordion

Theme-aware, responsive accordion component.

  • Mount: data-component="Accordion"
  • Props: size: string = "default", color: string = "primary", variant: string = "default", class: string = "", id: string = "accordion", items: string = [], defaultOpen: string = [], multiple: boolean = false, alwaysOpen: boolean = false, disabled: boolean = false, indicator: string = "plus", indicatorPosition: string = "start", showIndicator: boolean = true, bordered: boolean = false, separated: boolean = false, flush: boolean = false, contentItalic: boolean = false
  • Slots: None
  • Events: change, open, close

Alert

Theme-aware, responsive alert component.

  • Mount: data-component="Alert"
  • Props: size: string = "default", color: string = "info", variant: string = "soft", class: string = "", radius: string = "md", shadow: string = "sm", title: string = "Alert", description: string = "", items: string = [], actions: string = [], showIcon: boolean = false, icon: string = "", dismissible: boolean = false, dismissLabel: string = "Dismiss alert", role: string = "alert", live: string = "polite", linkLabel: string = "", linkHref: string = "", actionLabel: string = "", actionHref: string = "", compact: boolean = false
  • Slots: None
  • Events: dismiss, action

Avatar

Theme-aware, responsive avatar component.

  • Mount: data-component="Avatar"
  • Props: src: string = "", alt: string = "", initials: string = "", size: string = "md", color: string = "primary", variant: string = "solid", shape: string = "circle", status: string = "", statusLabel: string = "", statusPosition: string = "bottom", badge: string = "", badgeIcon: string = "", badgeLabel: string = "", tooltip: string = "", name: string = "", description: string = "", loading: string = "lazy", class: string = ""
  • Slots: None
  • Events: load, error, click

AvatarGroup

Theme-aware, responsive avatar group component.

  • Mount: data-component="AvatarGroup"
  • Props: items: string = [], size: string = "md", color: string = "primary", variant: string = "solid", shape: string = "circle", layout: string = "stack", maxVisible: number = 4, columns: number = 3, borderColor: string = "", showTooltips: boolean = true, overflowLabel: string = "Show remaining members", class: string = ""
  • Slots: None
  • Events: overflow

Badge

Theme-aware, responsive badge component.

  • Mount: data-component="Badge"
  • Props: label: string = "Badge", size: string = "md", color: string = "primary", variant: string = "solid", shape: string = "pill", class: string = "", icon: string = "", iconPosition: string = "start", dot: boolean = false, dotOnly: boolean = false, dotLabel: string = "Status", animated: boolean = false, avatarSrc: string = "", avatarAlt: string = "", dismissible: boolean = false, dismissLabel: string = "Remove badge", truncate: boolean = false, maxWidth: string = "12rem", anchorLabel: string = "", anchorIcon: string = "", placement: string = "inline", anchorLabelText: string = "Badge anchor"
  • Slots: None
  • Events: dismiss

Blockquote

Theme-aware, responsive blockquote component.

  • Mount: data-component="Blockquote"
  • Props: quote: string = "I just wanted to say that I'm very happy with my purchase so far. The documentation is outstanding - clear and detailed.", citation: string = "", citationTitle: string = "", citationUrl: string = "", avatarSrc: string = "", avatarAlt: string = "", size: string = "md", color: string = "primary", align: string = "left", variant: string = "default", quoteMark: boolean = true, italic: boolean = true, class: string = ""
  • Slots: default
  • Events: None

Button

Theme-aware, responsive button component.

  • Mount: data-component="Button"
  • Props: label: string = "Button", loadingLabel: string = "Loading…", description: string = "", as: string = "", href: string = "", target: string = "", rel: string = "", type: string = "button", variant: string = "default", color: string = "primary", size: string = "default", disabled: boolean = false, loading: boolean = false, pill: boolean = false, fullWidth: boolean = false, icon: string = "", iconPosition: string = "start", ariaLabel: string = "", ariaPressed: string = "", ariaExpanded: string = "", ariaControls: string = "", title: string = "", autofocus: boolean = false, controlClass: string = "", class: string = ""
  • Slots: default
  • Events: click, focus, blur

ButtonGroup

Theme-aware, responsive button group component.

  • Mount: data-component="ButtonGroup"
  • Props: items: string = [], value: string = "", size: string = "md", color: string = "primary", variant: string = "default", orientation: string = "horizontal", responsive: boolean = false, attached: boolean = true, selectable: boolean = false, toolbar: boolean = false, disabled: boolean = false, ariaLabel: string = "Button group", class: string = ""
  • Slots: default
  • Events: click, select, change

Card

Theme-aware, responsive card component.

  • Mount: data-component="Card"
  • Props: title: string = "Card title", subtitle: string = "", description: string = "", header: string = "", footer: string = "", imageSrc: string = "", imageAlt: string = "", imagePosition: string = "top", actionLabel: string = "", actionHref: string = "", headerActions: string = [], navigation: string = [], activeNav: string = "", mobileNavigation: boolean = false, alertTitle: string = "", alertDescription: string = "", empty: boolean = false, emptyTitle: string = "No data to show", emptyIcon: string = "icon-[lucide--inbox]", items: string = [], size: string = "md", color: string = "primary", variant: string = "default", layout: string = "vertical", align: string = "left", hover: string = "none", scrollable: boolean = false, maxHeight: string = "18rem", dismissible: boolean = false, ariaLabel: string = "", class: string = ""
  • Slots: default
  • Events: click, action, navigate, dismiss, load, error

Theme-aware, responsive carousel component.

  • Mount: data-component="Carousel"
  • Props: size: string = "default", color: string = "primary", title: string = "", description: string = "", items: string = [], activeIndex: number = 0, slidesPerView: number = 1, gap: string = "0.75rem", showPagination: boolean = false, isAutoPlay: boolean = false, autoplayInterval: number = 4000, isInfiniteLoop: boolean = false, isRTL: boolean = false, isCentered: boolean = false, isDraggable: boolean = false, isAutoHeight: boolean = false, isSnap: boolean = false, showCounter: boolean = false, thumbnails: string = "none", ariaLabel: string = "Content carousel", variant: string = "default", class: string = ""
  • Slots: default
  • Events: initialize, change, previous, next, play, pause, reachStart, reachEnd, dragStart, dragEnd

ChatBubble

Theme-aware, responsive chat bubble component.

  • Mount: data-component="ChatBubble"
  • Props: size: string = "default", color: string = "primary", title: string = "", description: string = "", items: string = [], oneSided: boolean = false, showAvatars: boolean = false, showMetadata: boolean = false, ariaLabel: string = "Conversation", variant: string = "default", class: string = ""
  • Slots: default
  • Events: action, messageClick, avatarClick, linkClick

Collapse

Theme-aware, responsive collapse component.

  • Mount: data-component="Collapse"
  • Props: size: string = "default", color: string = "primary", items: string = [], multiple: boolean = false, mode: string = "panel", initialOpenIndexes: string = [], ariaLabel: string = "Collapsible content", class: string = ""
  • Slots: default
  • Events: toggle, open, close

DatePicker

Theme-aware, responsive date picker component.

  • Mount: data-component="DatePicker"
  • Props: size: string = "default", color: string = "primary", label: string = "Date Picker", id: string = "", name: string = "", value: string = "", placeholder: string = "", type: string = "date", locale: string = "en-US", firstDayOfWeek: number = 0, months: string = [{ label: "Jan", value: "01" }, { label: "Feb", value: "02" }, { label: "Mar", value: "03" }, { label: "Apr", value: "04" }, { label: "May", value: "05" }, { label: "Jun", value: "06" }, { label: "Jul", value: "07" }, { label: "Aug", value: "08" }, { label: "Sep", value: "09" }, { label: "Oct", value: "10" }, { label: "Nov", value: "11" }, { label: "Dec", value: "12" }], days: string = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31], years: string = [2024, 2025, 2026, 2027, 2028, 2029, 2030], min: string = "", max: string = "", step: string = "", helperText: string = "", cornerHint: string = "", error: string = "", variant: string = "normal", inline: boolean = false, readonly: boolean = false, disabled: boolean = false, required: boolean = false, class: string = ""
  • Slots: None
  • Events: input, change, open, close, focus, blur, invalid

DeviceFrame

Theme-aware, responsive device frame component.

  • Mount: data-component="DeviceFrame"
  • Props: size: string = "default", color: string = "primary", title: string = "Device Frame", description: string = "", items: string = [], variant: string = "default", device: string = "phone", orientation: string = "portrait", src: string = "", srcdoc: string = "", frameTitle: string = "Device preview", showToolbar: boolean = true, allow: string = "", class: string = ""
  • Slots: default
  • Events: change, rotate

FileUploadProgress

Theme-aware, responsive file upload progress component.

  • Mount: data-component="FileUploadProgress"
  • Props: size: string = "default", color: string = "primary", label: string = "Progress", value: number = 50, max: number = 100, showValue: boolean = true, fileName: string = "", fileSize: string = "", uploadedSize: string = "", status: string = "uploading", cancelLabel: string = "Cancel upload", retryLabel: string = "Retry upload", class: string = ""
  • Slots: None
  • Events: cancel, retry, complete

LegendIndicator

Theme-aware, responsive legend indicator component.

  • Mount: data-component="LegendIndicator"
  • Props: size: string = "default", color: string = "primary", title: string = "Legend Indicator", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: toggle, select

List

Theme-aware, responsive list component.

  • Mount: data-component="List"
  • Props: size: string = "default", color: string = "primary", title: string = "List", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: select, click

ListGroup

Theme-aware, responsive list group component.

  • Mount: data-component="ListGroup"
  • Props: size: string = "default", color: string = "primary", title: string = "List Group", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: select, change

Marquee

Theme-aware, responsive marquee component.

  • Mount: data-component="Marquee"
  • Props: size: string = "default", color: string = "primary", title: string = "Marquee", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: pause, resume

Progress

Theme-aware, responsive progress component.

  • Mount: data-component="Progress"
  • Props: size: string = "default", color: string = "primary", label: string = "Progress", value: number = 50, max: number = 100, showValue: boolean = true, class: string = ""
  • Slots: None
  • Events: None

Rating

Theme-aware, responsive rating component.

  • Mount: data-component="Rating"
  • Props: size: string = "default", color: string = "primary", title: string = "Rating", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: input, change

Skeleton

Theme-aware, responsive skeleton component.

  • Mount: data-component="Skeleton"
  • Props: color: string = "primary", label: string = "Loading", size: string = "md", lines: number = 3, class: string = ""
  • Slots: None
  • Events: None

Spinner

Theme-aware, responsive spinner component.

  • Mount: data-component="Spinner"
  • Props: color: string = "primary", label: string = "Loading", size: string = "md", lines: number = 3, class: string = ""
  • Slots: None
  • Events: None

StyledIcon

Theme-aware, responsive styled icon component.

  • Mount: data-component="StyledIcon"
  • Props: size: string = "default", color: string = "primary", title: string = "Styled Icon", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: None

Timeline

Theme-aware, responsive timeline component.

  • Mount: data-component="Timeline"
  • Props: size: string = "default", color: string = "primary", title: string = "Timeline", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: select

Toast

Theme-aware, responsive toast component.

  • Mount: data-component="Toast"
  • Props: size: string = "default", color: string = "primary", title: string = "Toast", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: dismiss, action

TreeView

Theme-aware, responsive tree view component.

  • Mount: data-component="TreeView"
  • Props: size: string = "default", color: string = "primary", title: string = "Tree View", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: select, toggle, expand, collapse

Forms

Checkbox

Theme-aware, responsive checkbox component.

  • Mount: data-component="Checkbox"
  • Props: size: string = "default", color: string = "primary", id: string = "", name: string = "", label: string = "Checkbox", hiddenLabel: boolean = false, placeholder: string = "", variant: string = "normal", icon: string = "", iconPosition: string = "start", value: string = "on", values: string = [], options: string = [], checked: boolean = false, indeterminate: boolean = false, orientation: string = "vertical", card: boolean = false, rightAligned: boolean = false, list: boolean = false, helperText: string = "", cornerHint: string = "", error: string = "", inline: boolean = false, readonly: boolean = false, disabled: boolean = false, required: boolean = false, class: string = ""
  • Slots: None
  • Events: input, change, focus, blur, invalid

ColorPicker

Theme-aware, responsive color picker component.

  • Mount: data-component="ColorPicker"
  • Props: size: string = "default", color: string = "primary", id: string = "", name: string = "", label: string = "Color", hiddenLabel: boolean = false, placeholder: string = "", value: string = "#2563eb", icon: string = "", iconPosition: string = "start", helperText: string = "", cornerHint: string = "", error: string = "", inline: boolean = false, variant: string = "normal", readonly: boolean = false, disabled: boolean = false, required: boolean = false, class: string = ""
  • Slots: None
  • Events: input, change, focus, blur

FileInput

Theme-aware, responsive file input component.

  • Mount: data-component="FileInput"
  • Props: size: string = "default", color: string = "primary", id: string = "", name: string = "", label: string = "File", hiddenLabel: boolean = false, placeholder: string = "Choose a file", value: string = "", icon: string = "icon-[lucide--upload]", iconPosition: string = "start", accept: string = "", multiple: boolean = false, helperText: string = "", cornerHint: string = "", error: string = "", inline: boolean = false, variant: string = "normal", readonly: boolean = false, disabled: boolean = false, required: boolean = false, class: string = ""
  • Slots: None
  • Events: input, change, focus, blur, select, clear, invalid

Input

Theme-aware, responsive input component.

  • Mount: data-component="Input"
  • Props: size: string = "default", color: string = "primary", id: string = "", name: string = "", label: string = "Input", hiddenLabel: boolean = false, placeholder: string = "", value: string = "", type: string = "text", variant: string = "normal", icon: string = "", iconPosition: string = "start", helperText: string = "", cornerHint: string = "", error: string = "", inline: boolean = false, readonly: boolean = false, disabled: boolean = false, required: boolean = false, autocomplete: string = "", inputmode: string = "", minlength: string = "", maxlength: string = "", pattern: string = "", min: string = "", max: string = "", step: string = "", class: string = ""
  • Slots: None
  • Events: input, change, focus, blur, invalid, keydown, keyup

InputGroup

Theme-aware, responsive input group component.

  • Mount: data-component="InputGroup"
  • Props: size: string = "default", color: string = "primary", id: string = "", name: string = "", label: string = "Input group", hiddenLabel: boolean = false, value: string = "", placeholder: string = "", type: string = "text", startText: string = "", endText: string = "", icon: string = "", iconPosition: string = "start", actionLabel: string = "", helperText: string = "", cornerHint: string = "", error: string = "", inline: boolean = false, variant: string = "normal", readonly: boolean = false, disabled: boolean = false, required: boolean = false, class: string = ""
  • Slots: None
  • Events: input, change, focus, blur, submit, action

Radio

Theme-aware, responsive radio component.

  • Mount: data-component="Radio"
  • Props: size: string = "default", color: string = "primary", id: string = "", name: string = "", label: string = "Radio", hiddenLabel: boolean = false, placeholder: string = "", variant: string = "normal", icon: string = "", iconPosition: string = "start", value: string = "on", options: string = [], checked: boolean = false, orientation: string = "vertical", card: boolean = false, rightAligned: boolean = false, list: boolean = false, helperText: string = "", cornerHint: string = "", error: string = "", inline: boolean = false, readonly: boolean = false, disabled: boolean = false, required: boolean = false, class: string = ""
  • Slots: None
  • Events: input, change, focus, blur, invalid

RangeSlider

Theme-aware, responsive range slider component.

  • Mount: data-component="RangeSlider"
  • Props: size: string = "default", color: string = "primary", id: string = "", name: string = "", label: string = "Range", hiddenLabel: boolean = false, placeholder: string = "", variant: string = "normal", icon: string = "", iconPosition: string = "start", value: number = 50, min: number = 0, max: number = 100, step: number = 1, showValue: boolean = true, showBounds: boolean = true, showSteps: boolean = false, marks: string = [], helperText: string = "", cornerHint: string = "", error: string = "", inline: boolean = false, readonly: boolean = false, disabled: boolean = false, required: boolean = false, class: string = ""
  • Slots: None
  • Events: input, change, focus, blur

Select

Theme-aware, responsive select component.

  • Mount: data-component="Select"
  • Props: size: string = "default", color: string = "primary", id: string = "", name: string = "", label: string = "Select", hiddenLabel: boolean = false, value: string = "", values: string = [], options: string = [], placeholder: string = "Select an option", variant: string = "normal", icon: string = "", iconPosition: string = "start", helperText: string = "", cornerHint: string = "", error: string = "", inline: boolean = false, multiple: boolean = false, readonly: boolean = false, disabled: boolean = false, required: boolean = false, class: string = ""
  • Slots: None
  • Events: input, change, focus, blur, open, close, invalid

Switch

Theme-aware, responsive switch component.

  • Mount: data-component="Switch"
  • Props: size: string = "default", color: string = "primary", id: string = "", name: string = "", label: string = "Switch", hiddenLabel: boolean = false, placeholder: string = "", variant: string = "normal", icon: string = "", iconPosition: string = "start", value: string = "on", checked: boolean = false, helperText: string = "", cornerHint: string = "", error: string = "", inline: boolean = false, readonly: boolean = false, disabled: boolean = false, required: boolean = false, class: string = ""
  • Slots: None
  • Events: input, change, focus, blur

Textarea

Theme-aware, responsive textarea component.

  • Mount: data-component="Textarea"
  • Props: size: string = "default", color: string = "primary", id: string = "", name: string = "", label: string = "Textarea", hiddenLabel: boolean = false, placeholder: string = "", value: string = "", variant: string = "normal", icon: string = "", iconPosition: string = "start", helperText: string = "", cornerHint: string = "", error: string = "", inline: boolean = false, rows: number = 5, resize: string = "vertical", readonly: boolean = false, disabled: boolean = false, required: boolean = false, minlength: string = "", maxlength: string = "", class: string = ""
  • Slots: None
  • Events: input, change, focus, blur, invalid

TimePicker

Theme-aware, responsive time picker component.

  • Mount: data-component="TimePicker"
  • Props: size: string = "default", color: string = "primary", id: string = "", name: string = "", label: string = "Time", hiddenLabel: boolean = false, value: string = "", placeholder: string = "", variant: string = "normal", icon: string = "icon-[lucide--clock-3]", iconPosition: string = "end", helperText: string = "", cornerHint: string = "", error: string = "", inline: boolean = false, min: string = "", max: string = "", step: string = "", format: string = "24", minuteStep: number = 5, hours: string = ["00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23"], minutes: string = ["00", "05", "10", "15", "20", "25", "30", "35", "40", "45", "50", "55"], readonly: boolean = false, disabled: boolean = false, required: boolean = false, class: string = ""
  • Slots: None
  • Events: input, change, focus, blur, open, close, invalid

Integrations

AdvancedDatePicker

Theme-aware, responsive advanced date picker component.

  • Mount: data-component="AdvancedDatePicker"
  • Props: size: string = "default", color: string = "primary", title: string = "Advanced Date Picker", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: input, change, open, close, clear

AdvancedRangeSlider

Theme-aware, responsive advanced range slider component.

  • Mount: data-component="AdvancedRangeSlider"
  • Props: size: string = "default", color: string = "primary", title: string = "Advanced Range Slider", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: input, change, start, end

Chart

Theme-aware, responsive chart component.

  • Mount: data-component="Chart"
  • Props: size: string = "default", color: string = "primary", title: string = "Chart", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: select, dataPointClick, legendToggle

Clipboard

Theme-aware, responsive clipboard component.

  • Mount: data-component="Clipboard"
  • Props: size: string = "default", color: string = "primary", title: string = "Clipboard", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: copy, success, error

Confetti

Theme-aware, responsive confetti component.

  • Mount: data-component="Confetti"
  • Props: size: string = "default", color: string = "primary", title: string = "Confetti", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: start, complete

DataMap

Theme-aware, responsive data map component.

  • Mount: data-component="DataMap"
  • Props: size: string = "default", color: string = "primary", title: string = "Data Map", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: select, change

DataTable

Theme-aware, responsive data table component.

  • Mount: data-component="DataTable"
  • Props: size: string = "default", color: string = "primary", caption: string = "Data Table", columns: string = [], rows: string = [], striped: boolean = true, class: string = ""
  • Slots: default
  • Events: sort, select, change, rowClick, pageChange

DragAndDrop

Theme-aware, responsive drag and drop component.

  • Mount: data-component="DragAndDrop"
  • Props: size: string = "default", color: string = "primary", title: string = "Drag And Drop", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: dragStart, dragEnd, dragEnter, dragLeave, drop, change

FileUpload

Theme-aware, responsive file upload component.

  • Mount: data-component="FileUpload"
  • Props: size: string = "default", color: string = "primary", title: string = "File Upload", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: select, upload, progress, success, error, cancel, remove

Map

Theme-aware, responsive map component.

  • Mount: data-component="Map"
  • Props: size: string = "default", color: string = "primary", title: string = "Map", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: ready, move, zoom, markerClick

ToastNotifications

Theme-aware, responsive toast notifications component.

  • Mount: data-component="ToastNotifications"
  • Props: size: string = "default", color: string = "primary", title: string = "Toast Notifications", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: add, dismiss, clear, action

WysiwygEditor

Theme-aware, responsive wysiwyg editor component.

  • Mount: data-component="WysiwygEditor"
  • Props: size: string = "default", color: string = "primary", title: string = "Wysiwyg Editor", description: string = "", items: string = [], variant: string = "default", class: string = ""
  • Slots: default
  • Events: input, change, focus, blur

Layout

Columns

Theme-aware, responsive columns component.

  • Mount: data-component="Columns"
  • Props: size: string = "default", color: string = "primary", columns: number = 2, gap: string = "md", maxWidth: string = "xl", class: string = ""
  • Slots: default
  • Events: None

Container

Theme-aware, responsive container component.

  • Mount: data-component="Container"
  • Props: size: string = "default", color: string = "primary", columns: number = 2, gap: string = "md", maxWidth: string = "xl", class: string = ""
  • Slots: default
  • Events: None

CustomScrollbar

Theme-aware, responsive custom scrollbar component.

  • Mount: data-component="CustomScrollbar"
  • Props: size: string = "default", color: string = "primary", columns: number = 2, gap: string = "md", maxWidth: string = "xl", class: string = ""
  • Slots: default
  • Events: scroll

Divider

Theme-aware, responsive divider component.

  • Mount: data-component="Divider"
  • Props: size: string = "default", color: string = "primary", label: string = "", orientation: string = "horizontal", class: string = ""
  • Slots: None
  • Events: None

Grid

Theme-aware, responsive grid component.

  • Mount: data-component="Grid"
  • Props: size: string = "default", color: string = "primary", columns: number = 2, gap: string = "md", maxWidth: string = "xl", class: string = ""
  • Slots: default
  • Events: None

Image

Theme-aware, responsive image component.

  • Mount: data-component="Image"
  • Props: size: string = "default", color: string = "primary", src: string = "", alt: string = "", width: string = "", height: string = "", loading: string = "lazy", rounded: boolean = false, class: string = ""
  • Slots: default
  • Events: load, error

Kbd

Theme-aware, responsive kbd component.

  • Mount: data-component="Kbd"
  • Props: size: string = "default", color: string = "primary", label: string = "⌘ K", class: string = ""
  • Slots: default
  • Events: None

LayoutSplitter

Theme-aware, responsive layout splitter component.

  • Mount: data-component="LayoutSplitter"
  • Props: size: string = "default", color: string = "primary", columns: number = 2, gap: string = "md", maxWidth: string = "xl", class: string = ""
  • Slots: default
  • Events: resizeStart, resize, resizeEnd

Theme-aware, responsive link component.

  • Mount: data-component="Link"
  • Props: size: string = "default", color: string = "primary", label: string = "Link", href: string = "#", target: string = "", rel: string = "", external: boolean = false, class: string = ""
  • Slots: default
  • Events: click, focus, blur

Typography

Theme-aware, responsive typography component.

  • Mount: data-component="Typography"
  • Props: size: string = "default", color: string = "primary", columns: number = 2, gap: string = "md", maxWidth: string = "xl", class: string = ""
  • Slots: default
  • Events: None

Navigation

Breadcrumb

Theme-aware, responsive breadcrumb component.

  • Mount: data-component="Breadcrumb"
  • Props: size: string = "default", color: string = "primary", label: string = "Breadcrumb", items: string = [], active: string = "", orientation: string = "horizontal", class: string = ""
  • Slots: default
  • Events: navigate, click

MegaMenu

Theme-aware, responsive mega menu component.

  • Mount: data-component="MegaMenu"
  • Props: size: string = "default", color: string = "primary", label: string = "Mega Menu", items: string = [], active: string = "", orientation: string = "horizontal", class: string = ""
  • Slots: default
  • Events: open, close, select

Nav

Theme-aware, responsive nav component.

  • Mount: data-component="Nav"
  • Props: size: string = "default", color: string = "primary", label: string = "Nav", items: string = [], active: string = "", orientation: string = "horizontal", class: string = ""
  • Slots: default
  • Events: select, change

Navbar

Theme-aware, responsive navbar component.

  • Mount: data-component="Navbar"
  • Props: size: string = "default", color: string = "primary", label: string = "Navbar", items: string = [], active: string = "", orientation: string = "horizontal", class: string = ""
  • Slots: default
  • Events: toggle, open, close

Pagination

Theme-aware, responsive pagination component.

  • Mount: data-component="Pagination"
  • Props: size: string = "default", color: string = "primary", label: string = "Pagination", items: string = [], active: string = "", orientation: string = "horizontal", class: string = ""
  • Slots: default
  • Events: change, previous, next

Scrollspy

Theme-aware, responsive scrollspy component.

  • Mount: data-component="Scrollspy"
  • Props: size: string = "default", color: string = "primary", label: string = "Scrollspy", items: string = [], active: string = "", orientation: string = "horizontal", class: string = ""
  • Slots: default
  • Events: change

Sidebar

Theme-aware, responsive sidebar component.

  • Mount: data-component="Sidebar"
  • Props: size: string = "default", color: string = "primary", label: string = "Sidebar", items: string = [], active: string = "", orientation: string = "horizontal", class: string = ""
  • Slots: default
  • Events: toggle, open, close

Stepper

Theme-aware, responsive stepper component.

  • Mount: data-component="Stepper"
  • Props: size: string = "default", color: string = "primary", label: string = "Stepper", items: string = [], active: string = "", orientation: string = "horizontal", class: string = ""
  • Slots: default
  • Events: change, previous, next, complete

Tabs

Theme-aware, responsive tabs component.

  • Mount: data-component="Tabs"
  • Props: size: string = "default", color: string = "primary", label: string = "Tabs", items: string = [], active: string = "", orientation: string = "horizontal", class: string = ""
  • Slots: default
  • Events: change, select

Overlays

ContextMenu

Theme-aware, responsive context menu component.

  • Mount: data-component="ContextMenu"
  • Props: size: string = "default", color: string = "primary", title: string = "Context Menu", description: string = "", open: boolean = false, placement: string = "bottom", closeLabel: string = "Close", class: string = ""
  • Slots: default
  • Events: open, close, select

Drawer

Theme-aware, responsive drawer component.

  • Mount: data-component="Drawer"
  • Props: size: string = "default", color: string = "primary", title: string = "Drawer", description: string = "", open: boolean = false, placement: string = "bottom", closeLabel: string = "Close", class: string = ""
  • Slots: default
  • Events: open, close

Dropdown

Theme-aware, responsive dropdown component.

  • Mount: data-component="Dropdown"
  • Props: size: string = "default", color: string = "primary", title: string = "Dropdown", description: string = "", open: boolean = false, placement: string = "bottom", closeLabel: string = "Close", class: string = ""
  • Slots: default
  • Events: open, close, select, change

Modal

Theme-aware, responsive modal component.

  • Mount: data-component="Modal"
  • Props: size: string = "default", color: string = "primary", title: string = "Modal", description: string = "", open: boolean = false, placement: string = "bottom", closeLabel: string = "Close", class: string = ""
  • Slots: default
  • Events: open, close, cancel, confirm

Popover

Theme-aware, responsive popover component.

  • Mount: data-component="Popover"
  • Props: size: string = "default", color: string = "primary", title: string = "Popover", description: string = "", open: boolean = false, placement: string = "bottom", closeLabel: string = "Close", class: string = ""
  • Slots: default
  • Events: open, close

Tooltip

Theme-aware, responsive tooltip component.

  • Mount: data-component="Tooltip"
  • Props: size: string = "default", color: string = "primary", title: string = "Tooltip", description: string = "", open: boolean = false, placement: string = "bottom", closeLabel: string = "Close", class: string = ""
  • Slots: default
  • Events: open, close

Tables

Table

Theme-aware, responsive table component.

  • Mount: data-component="Table"
  • Props: size: string = "default", color: string = "primary", caption: string = "Table", columns: string = [], rows: string = [], striped: boolean = true, class: string = ""
  • Slots: default
  • Events: sort, select, rowClick