Skip to content

Form Components

Components for building forms and collecting user input.

BvButton

Button · import { BvButton } from "@baklavue/ui"

PropTypeDescription
variantButtonVariantprimary, secondary, tertiary
kindButtonKinddefault, neutral, success, danger, custom
sizeButtonSizesmall, medium, large
labelstringButton text
loadingbooleanLoading state
disabledbooleanDisabled state
hrefstringRenders as link when provided
iconBaklavaIconIcon name
customClass{ color?, highlightColor? }For kind="custom"

Events: click

BvInput

Input · import { BvInput } from "@baklavue/ui"

PropTypeDescription
modelValuestring | number | nullv-model
labelstringInput label
typeInputTypetext, email, password, number, etc.
sizeInputSizesmall, medium, large
disabledbooleanDisabled state
requiredbooleanRequired field
invalidTextstringError message
helpTextstringHelper text

Events: update:modelValue, invalid, focus, blur

BvCheckbox

Checkbox · import { BvCheckbox } from "@baklavue/ui"

PropTypeDescription
modelValueboolean | (string | number)[]v-model (single or group)
valuestring | numberCheckbox value (single mode)
labelstringLabel text
itemsCheckboxItem[]Group mode items
disabledbooleanDisabled state
indeterminatebooleanIndeterminate state

Events: update:modelValue, change, input

BvRadio

Radio · import { BvRadio } from "@baklavue/ui"

PropTypeDescription
modelValuestring | numberv-model
valuestring | numberRadio value (single mode)
labelstringLabel text
itemsRadioItem[]Group mode items
disabledbooleanDisabled state
requiredbooleanRequired (group mode)

Events: update:modelValue, update:checked, change, input

BvSwitch

Switch · import { BvSwitch } from "@baklavue/ui"

PropTypeDescription
checkedbooleanv-model:checked
labelstringLabel text
disabledbooleanDisabled state
sizestringsmall, medium, large

Events: update:checked, change, input

BvSelect

Select · import { BvSelect } from "@baklavue/ui"

PropTypeDescription
modelValuestring | string[] | nullv-model
optionsSelectOption[]Programmatic options
labelstringSelect label
placeholderstringPlaceholder text
sizeSelectSizesmall, medium, large
multiplebooleanMulti-select
clearablebooleanClear selection
searchBarbooleanSearch/filter options

Events: update:modelValue

BvTextarea

Textarea · import { BvTextarea } from "@baklavue/ui"

PropTypeDescription
modelValuestring | nullv-model
labelstringLabel text
placeholderstringPlaceholder
rowsnumberVisible rows
sizeTextareaSizesmall, medium, large
disabledbooleanDisabled state
expandbooleanAuto-expand
characterCounterbooleanShow character count

Events: update:modelValue, invalid

BvFileUpload

File Upload · import { BvFileUpload } from "@baklavue/ui"

PropTypeDescription
modelValueFile | File[] | nullv-model
multiplebooleanAllow multiple files
acceptstringMIME types or extensions (e.g. image/*)
maxSizenumberMax file size (bytes)
minSizenumberMin file size (bytes)
maxFilesnumberMax file count when multiple
disabledbooleanDisabled state
labelstringLabel
helpTextstringHelper text
invalidTextstringError message
showPreviewbooleanImage previews for image files
sizeFileUploadSizesmall, medium, large

Events: update:modelValue, invalid, change

BvDatepicker

Datepicker · import { BvDatepicker } from "@baklavue/ui"

PropTypeDescription
modelValuestring | string[] | [string, string] | nullv-model
typeDatepickerTypesingle, multiple, range
labelstringInput label
minstringMin date (ISO)
maxstringMax date (ISO)
disabledbooleanDisabled state
sizeInputSizesmall, medium, large

Events: update:modelValue