Tags Input - Skeleton

Skeleton

  1. components
  2. tags input
  3. svelte

Tags Input

Allows input of multiple values.

Vanilla
Chocolate
Strawberry

Custom Icon

Vanilla
Chocolate
Strawberry

Color

Vanilla
Chocolate
Strawberry

Direction

Vanilla
Chocolate
Strawberry

API Reference

Root

space-y-2
Property Default Type
ids -
Partial<{ root: string; input: string; hiddenInput: string; clearBtn: string; label: string; control: string; item: (opts: ItemProps) => string; itemDeleteTrigger: (opts: ItemProps) => string; itemInput: (opts: ItemProps) => string; }> | undefined
The ids of the elements in the tags input. Useful for composition.
translations -
IntlTranslations | undefined
Specifies the localized strings that identifies the accessibility elements and their states
maxLength -
number | undefined
The max length of the input.
delimiter ","
string | RegExp | undefined
The character that serves has: - event key to trigger the addition of a new tag - character used to split tags when pasting into the input
autoFocus -
boolean | undefined
Whether the input should be auto-focused
disabled -
boolean | undefined
Whether the tags input should be disabled
readOnly -
boolean | undefined
Whether the tags input should be read-only
invalid -
boolean | undefined
Whether the tags input is invalid
required -
boolean | undefined
Whether the tags input is required
editable true
boolean | undefined
Whether a tag can be edited after creation, by pressing `Enter` or double clicking.
inputValue -
string | undefined
The controlled tag input's value
defaultInputValue -
string | undefined
The initial tag input value when rendered. Use when you don't need to control the tag input value.
value -
string[] | undefined
The controlled tag value
defaultValue -
string[] | undefined
The initial tag value when rendered. Use when you don't need to control the tag value.
onValueChange -
((details: ValueChangeDetails) => void) | undefined
Callback fired when the tag values is updated
onInputValueChange -
((details: InputValueChangeDetails) => void) | undefined
Callback fired when the input value is updated
onHighlightChange -
((details: HighlightChangeDetails) => void) | undefined
Callback fired when a tag is highlighted by pointer or keyboard navigation
onValueInvalid -
((details: ValidityChangeDetails) => void) | undefined
Callback fired when the max tag count is reached or the `validateTag` function returns `false`
validate -
((details: ValidateArgs) => boolean) | undefined
Returns a boolean that determines whether a tag can be added. Useful for preventing duplicates or invalid tag values.
blurBehavior -
"clear" | "add" | undefined
The behavior of the tags input when the input is blurred - `"add"`: add the input value as a new tag - `"clear"`: clear the input value
addOnPaste false
boolean | undefined
Whether to add a tag when you paste values into the tag input
max Infinity
number | undefined
The max number of tags
allowOverflow -
boolean | undefined
Whether to allow tags to exceed max. In this case, we'll attach `data-invalid` to the root
name -
string | undefined
The name attribute for the input. Useful for form submissions
form -
string | undefined
The associate form of the underlying input element.
dir "ltr"
"ltr" | "rtl" | undefined
The document's text/writing direction.
getRootNode -
(() => ShadowRoot | Node | Document) | undefined
A root node to correctly resolve document in custom environments. E.x.: Iframes, Electron.
onPointerDownOutside -
((event: PointerDownOutsideEvent) => void) | undefined
Function called when the pointer is pressed down outside the component
onFocusOutside -
((event: FocusOutsideEvent) => void) | undefined
Function called when the focus is moved outside the component
onInteractOutside -
((event: InteractOutsideEvent) => void) | undefined
Function called when an interaction happens outside the component
element -
Snippet<[HTMLAttributes<"div">]> | undefined
Render the element yourself

RootProvider

Property Default Type
value -
() => TagsInputApi<PropTypes>
element -
Snippet<[HTMLAttributes<"div">]> | undefined
Render the element yourself

RootContext

Property Default Type
children -
Snippet<[() => TagsInputApi<PropTypes>]>

Label

label-text
Property Default Type
element -
Snippet<[HTMLAttributes<"label">]> | undefined
Render the element yourself

Control

input flex flex-wrap gap-2 p-2
Property Default Type
element -
Snippet<[HTMLAttributes<"div">]> | undefined
Render the element yourself

Item

Property Default Type
index -
string | number
value -
string
disabled -
boolean | undefined
element -
Snippet<[HTMLAttributes<"span">]> | undefined
Render the element yourself

ItemPreview

chip flex gap-0 p-0 preset-filled hover:brightness-100 w-fit data-highlighted:ring data-highlighted:ring-primary-500
Property Default Type
element -
Snippet<[HTMLAttributes<"div">]> | undefined
Render the element yourself

ItemText

leading-none px-2 py-1
Property Default Type
element -
Snippet<[HTMLAttributes<"span">]> | undefined
Render the element yourself

ItemDeleteTrigger

hover:preset-tonal px-2 py-1
Property Default Type
element -
Snippet<[HTMLAttributes<"button">]> | undefined
Render the element yourself

ItemInput

input text-xs
Property Default Type
element -
Snippet<[HTMLAttributes<"input">]> | undefined
Render the element yourself

Input

input-ghost
Property Default Type
element -
Snippet<[HTMLAttributes<"input">]> | undefined
Render the element yourself

ClearTrigger

btn btn-sm preset-tonal hover:preset-filled-error-500
Property Default Type
element -
Snippet<[HTMLAttributes<"button">]> | undefined
Render the element yourself

HiddenInput

Property Default Type
element -
Snippet<[HTMLAttributes<"input">]> | undefined
Render the element yourself