[{"data":1,"prerenderedAt":726},["ShallowReactive",2],{"locale-alternates":3,"docs-nav-en":134,"api-BbTextarea":377,"page-en-\u002Fcomponents\u002Fbb-textarea\u002Fapi":389},{"\u002Fit\u002Fcomponenti\u002Fbb-accordion":4,"\u002Fen\u002Fcomponents\u002Fbb-accordion":5,"\u002Fit\u002Fcomponenti\u002Fbb-alert":6,"\u002Fen\u002Fcomponents\u002Fbb-alert":7,"\u002Fit\u002Fcomponenti\u002Fbb-asterisk":8,"\u002Fen\u002Fcomponents\u002Fbb-asterisk":9,"\u002Fit\u002Fcomponenti\u002Fbb-avatar":10,"\u002Fen\u002Fcomponents\u002Fbb-avatar":11,"\u002Fit\u002Fcomponenti\u002Fbb-badge":12,"\u002Fen\u002Fcomponents\u002Fbb-badge":13,"\u002Fit\u002Fcomponenti\u002Fbb-base-button":14,"\u002Fen\u002Fcomponents\u002Fbb-base-button":15,"\u002Fit\u002Fcomponenti\u002Fbb-breadcrumbs":16,"\u002Fen\u002Fcomponents\u002Fbb-breadcrumbs":17,"\u002Fit\u002Fcomponenti\u002Fbb-button":18,"\u002Fen\u002Fcomponents\u002Fbb-button":19,"\u002Fit\u002Fcomponenti\u002Fbb-calendar":20,"\u002Fen\u002Fcomponents\u002Fbb-calendar":21,"\u002Fit\u002Fcomponenti\u002Fbb-checkbox":22,"\u002Fen\u002Fcomponents\u002Fbb-checkbox":23,"\u002Fit\u002Fcomponenti\u002Fbb-checkbox-group":24,"\u002Fen\u002Fcomponents\u002Fbb-checkbox-group":25,"\u002Fit\u002Fcomponenti\u002Fbb-collapsible":26,"\u002Fen\u002Fcomponents\u002Fbb-collapsible":27,"\u002Fit\u002Fcomponenti\u002Fbb-color-input":28,"\u002Fen\u002Fcomponents\u002Fbb-color-input":29,"\u002Fit\u002Fcomponenti\u002Fbb-color-palette":30,"\u002Fen\u002Fcomponents\u002Fbb-color-palette":31,"\u002Fit\u002Fcomponenti\u002Fbb-confirm":32,"\u002Fen\u002Fcomponents\u002Fbb-confirm":33,"\u002Fit\u002Fcomponenti\u002Fbb-date-picker":34,"\u002Fen\u002Fcomponents\u002Fbb-date-picker":35,"\u002Fit\u002Fcomponenti\u002Fbb-date-picker-input":36,"\u002Fen\u002Fcomponents\u002Fbb-date-picker-input":37,"\u002Fit\u002Fcomponenti\u002Fbb-dialog":38,"\u002Fen\u002Fcomponents\u002Fbb-dialog":39,"\u002Fit\u002Fcomponenti\u002Fbb-dropdown":40,"\u002Fen\u002Fcomponents\u002Fbb-dropdown":41,"\u002Fit\u002Fcomponenti\u002Fbb-dropdown-button":42,"\u002Fen\u002Fcomponents\u002Fbb-dropdown-button":43,"\u002Fit\u002Fcomponenti\u002Fbb-dropzone":44,"\u002Fen\u002Fcomponents\u002Fbb-dropzone":45,"\u002Fit\u002Fcomponenti\u002Fbb-form":46,"\u002Fen\u002Fcomponents\u002Fbb-form":47,"\u002Fit\u002Fcomponenti\u002Fbb-hover-card":48,"\u002Fen\u002Fcomponents\u002Fbb-hover-card":49,"\u002Fit\u002Fcomponenti\u002Fbb-icon":50,"\u002Fen\u002Fcomponents\u002Fbb-icon":51,"\u002Fit\u002Fcomponenti\u002Fbb-indicator":52,"\u002Fen\u002Fcomponents\u002Fbb-indicator":53,"\u002Fit\u002Fcomponenti\u002Fbb-number-input":54,"\u002Fen\u002Fcomponents\u002Fbb-number-input":55,"\u002Fit\u002Fcomponenti\u002Fbb-off-canvas":56,"\u002Fen\u002Fcomponents\u002Fbb-off-canvas":57,"\u002Fit\u002Fcomponenti\u002Fbb-pagination":58,"\u002Fen\u002Fcomponents\u002Fbb-pagination":59,"\u002Fit\u002Fcomponenti\u002Fbb-popover":60,"\u002Fen\u002Fcomponents\u002Fbb-popover":61,"\u002Fit\u002Fcomponenti\u002Fbb-progress":62,"\u002Fen\u002Fcomponents\u002Fbb-progress":63,"\u002Fit\u002Fcomponenti\u002Fbb-radio":64,"\u002Fen\u002Fcomponents\u002Fbb-radio":65,"\u002Fit\u002Fcomponenti\u002Fbb-radio-group":66,"\u002Fen\u002Fcomponents\u002Fbb-radio-group":67,"\u002Fit\u002Fcomponenti\u002Fbb-rating":68,"\u002Fen\u002Fcomponents\u002Fbb-rating":69,"\u002Fit\u002Fcomponenti\u002Fbb-select":70,"\u002Fen\u002Fcomponents\u002Fbb-select":71,"\u002Fit\u002Fcomponenti\u002Fbb-select-popover":72,"\u002Fen\u002Fcomponents\u002Fbb-select-popover":73,"\u002Fit\u002Fcomponenti\u002Fbb-slider":74,"\u002Fen\u002Fcomponents\u002Fbb-slider":75,"\u002Fit\u002Fcomponenti\u002Fbb-smooth-height":76,"\u002Fen\u002Fcomponents\u002Fbb-smooth-height":77,"\u002Fit\u002Fcomponenti\u002Fbb-spinner":78,"\u002Fen\u002Fcomponents\u002Fbb-spinner":79,"\u002Fit\u002Fcomponenti\u002Fbb-switch":80,"\u002Fen\u002Fcomponents\u002Fbb-switch":81,"\u002Fit\u002Fcomponenti\u002Fbb-switch-group":82,"\u002Fen\u002Fcomponents\u002Fbb-switch-group":83,"\u002Fit\u002Fcomponenti\u002Fbb-table":84,"\u002Fen\u002Fcomponents\u002Fbb-table":85,"\u002Fit\u002Fcomponenti\u002Fbb-tabs":86,"\u002Fen\u002Fcomponents\u002Fbb-tabs":87,"\u002Fit\u002Fcomponenti\u002Fbb-tag":88,"\u002Fen\u002Fcomponents\u002Fbb-tag":89,"\u002Fit\u002Fcomponenti\u002Fbb-text-input":90,"\u002Fen\u002Fcomponents\u002Fbb-text-input":91,"\u002Fit\u002Fcomponenti\u002Fbb-textarea":92,"\u002Fen\u002Fcomponents\u002Fbb-textarea":93,"\u002Fit\u002Fcomponenti\u002Fbb-time-picker":94,"\u002Fen\u002Fcomponents\u002Fbb-time-picker":95,"\u002Fit\u002Fcomponenti\u002Fbb-time-picker-input":96,"\u002Fen\u002Fcomponents\u002Fbb-time-picker-input":97,"\u002Fit\u002Fcomponenti\u002Fbb-toast":98,"\u002Fen\u002Fcomponents\u002Fbb-toast":99,"\u002Fit\u002Fcomponenti\u002Fbb-tooltip":100,"\u002Fen\u002Fcomponents\u002Fbb-tooltip":101,"\u002Fit\u002Fcomponenti\u002Fbb-tree":102,"\u002Fen\u002Fcomponents\u002Fbb-tree":103,"\u002Fit\u002Fguide\u002Fadoption-checklist":104,"\u002Fen\u002Fguides\u002Fadoption-checklist":105,"\u002Fit\u002Fguide\u002Fai-agents":106,"\u002Fen\u002Fguides\u002Fai-agents":107,"\u002Fit\u002Fguide\u002Fcoherence":108,"\u002Fen\u002Fguides\u002Fcoherence":109,"\u002Fit\u002Fguide\u002Fdesign-language":110,"\u002Fen\u002Fguides\u002Fdesign-language":111,"\u002Fit\u002Fguide\u002Fdesign-tokens":112,"\u002Fen\u002Fguides\u002Fdesign-tokens":113,"\u002Fit\u002Fguide\u002Ffetching-data":114,"\u002Fen\u002Fguides\u002Ffetching-data":115,"\u002Fit\u002Fguide\u002Ficons":116,"\u002Fen\u002Fguides\u002Ficons":117,"\u002Fit\u002Fguide\u002Finertia":118,"\u002Fen\u002Fguides\u002Finertia":119,"\u002Fit\u002Fguide\u002Finstallation":120,"\u002Fen\u002Fguides\u002Finstallation":121,"\u002Fit\u002Fguide\u002Fmigration":122,"\u002Fen\u002Fguides\u002Fmigration":123,"\u002Fit\u002Fguide\u002Fnuxt":124,"\u002Fen\u002Fguides\u002Fnuxt":125,"\u002Fit\u002Fguide\u002Foptions-and-items":126,"\u002Fen\u002Fguides\u002Foptions-and-items":127,"\u002Fit\u002Fguide\u002Fpassthrough":128,"\u002Fen\u002Fguides\u002Fpassthrough":129,"\u002Fit\u002Fguide\u002Fpreset-components":130,"\u002Fen\u002Fguides\u002Fpreset-components":131,"\u002Fit\u002Fguide\u002Fvalidated-forms":132,"\u002Fen\u002Fguides\u002Fvalidated-forms":133},"\u002Fen\u002Fcomponents\u002Fbb-accordion","\u002Fit\u002Fcomponenti\u002Fbb-accordion","\u002Fen\u002Fcomponents\u002Fbb-alert","\u002Fit\u002Fcomponenti\u002Fbb-alert","\u002Fen\u002Fcomponents\u002Fbb-asterisk","\u002Fit\u002Fcomponenti\u002Fbb-asterisk","\u002Fen\u002Fcomponents\u002Fbb-avatar","\u002Fit\u002Fcomponenti\u002Fbb-avatar","\u002Fen\u002Fcomponents\u002Fbb-badge","\u002Fit\u002Fcomponenti\u002Fbb-badge","\u002Fen\u002Fcomponents\u002Fbb-base-button","\u002Fit\u002Fcomponenti\u002Fbb-base-button","\u002Fen\u002Fcomponents\u002Fbb-breadcrumbs","\u002Fit\u002Fcomponenti\u002Fbb-breadcrumbs","\u002Fen\u002Fcomponents\u002Fbb-button","\u002Fit\u002Fcomponenti\u002Fbb-button","\u002Fen\u002Fcomponents\u002Fbb-calendar","\u002Fit\u002Fcomponenti\u002Fbb-calendar","\u002Fen\u002Fcomponents\u002Fbb-checkbox","\u002Fit\u002Fcomponenti\u002Fbb-checkbox","\u002Fen\u002Fcomponents\u002Fbb-checkbox-group","\u002Fit\u002Fcomponenti\u002Fbb-checkbox-group","\u002Fen\u002Fcomponents\u002Fbb-collapsible","\u002Fit\u002Fcomponenti\u002Fbb-collapsible","\u002Fen\u002Fcomponents\u002Fbb-color-input","\u002Fit\u002Fcomponenti\u002Fbb-color-input","\u002Fen\u002Fcomponents\u002Fbb-color-palette","\u002Fit\u002Fcomponenti\u002Fbb-color-palette","\u002Fen\u002Fcomponents\u002Fbb-confirm","\u002Fit\u002Fcomponenti\u002Fbb-confirm","\u002Fen\u002Fcomponents\u002Fbb-date-picker","\u002Fit\u002Fcomponenti\u002Fbb-date-picker","\u002Fen\u002Fcomponents\u002Fbb-date-picker-input","\u002Fit\u002Fcomponenti\u002Fbb-date-picker-input","\u002Fen\u002Fcomponents\u002Fbb-dialog","\u002Fit\u002Fcomponenti\u002Fbb-dialog","\u002Fen\u002Fcomponents\u002Fbb-dropdown","\u002Fit\u002Fcomponenti\u002Fbb-dropdown","\u002Fen\u002Fcomponents\u002Fbb-dropdown-button","\u002Fit\u002Fcomponenti\u002Fbb-dropdown-button","\u002Fen\u002Fcomponents\u002Fbb-dropzone","\u002Fit\u002Fcomponenti\u002Fbb-dropzone","\u002Fen\u002Fcomponents\u002Fbb-form","\u002Fit\u002Fcomponenti\u002Fbb-form","\u002Fen\u002Fcomponents\u002Fbb-hover-card","\u002Fit\u002Fcomponenti\u002Fbb-hover-card","\u002Fen\u002Fcomponents\u002Fbb-icon","\u002Fit\u002Fcomponenti\u002Fbb-icon","\u002Fen\u002Fcomponents\u002Fbb-indicator","\u002Fit\u002Fcomponenti\u002Fbb-indicator","\u002Fen\u002Fcomponents\u002Fbb-number-input","\u002Fit\u002Fcomponenti\u002Fbb-number-input","\u002Fen\u002Fcomponents\u002Fbb-off-canvas","\u002Fit\u002Fcomponenti\u002Fbb-off-canvas","\u002Fen\u002Fcomponents\u002Fbb-pagination","\u002Fit\u002Fcomponenti\u002Fbb-pagination","\u002Fen\u002Fcomponents\u002Fbb-popover","\u002Fit\u002Fcomponenti\u002Fbb-popover","\u002Fen\u002Fcomponents\u002Fbb-progress","\u002Fit\u002Fcomponenti\u002Fbb-progress","\u002Fen\u002Fcomponents\u002Fbb-radio","\u002Fit\u002Fcomponenti\u002Fbb-radio","\u002Fen\u002Fcomponents\u002Fbb-radio-group","\u002Fit\u002Fcomponenti\u002Fbb-radio-group","\u002Fen\u002Fcomponents\u002Fbb-rating","\u002Fit\u002Fcomponenti\u002Fbb-rating","\u002Fen\u002Fcomponents\u002Fbb-select","\u002Fit\u002Fcomponenti\u002Fbb-select","\u002Fen\u002Fcomponents\u002Fbb-select-popover","\u002Fit\u002Fcomponenti\u002Fbb-select-popover","\u002Fen\u002Fcomponents\u002Fbb-slider","\u002Fit\u002Fcomponenti\u002Fbb-slider","\u002Fen\u002Fcomponents\u002Fbb-smooth-height","\u002Fit\u002Fcomponenti\u002Fbb-smooth-height","\u002Fen\u002Fcomponents\u002Fbb-spinner","\u002Fit\u002Fcomponenti\u002Fbb-spinner","\u002Fen\u002Fcomponents\u002Fbb-switch","\u002Fit\u002Fcomponenti\u002Fbb-switch","\u002Fen\u002Fcomponents\u002Fbb-switch-group","\u002Fit\u002Fcomponenti\u002Fbb-switch-group","\u002Fen\u002Fcomponents\u002Fbb-table","\u002Fit\u002Fcomponenti\u002Fbb-table","\u002Fen\u002Fcomponents\u002Fbb-tabs","\u002Fit\u002Fcomponenti\u002Fbb-tabs","\u002Fen\u002Fcomponents\u002Fbb-tag","\u002Fit\u002Fcomponenti\u002Fbb-tag","\u002Fen\u002Fcomponents\u002Fbb-text-input","\u002Fit\u002Fcomponenti\u002Fbb-text-input","\u002Fen\u002Fcomponents\u002Fbb-textarea","\u002Fit\u002Fcomponenti\u002Fbb-textarea","\u002Fen\u002Fcomponents\u002Fbb-time-picker","\u002Fit\u002Fcomponenti\u002Fbb-time-picker","\u002Fen\u002Fcomponents\u002Fbb-time-picker-input","\u002Fit\u002Fcomponenti\u002Fbb-time-picker-input","\u002Fen\u002Fcomponents\u002Fbb-toast","\u002Fit\u002Fcomponenti\u002Fbb-toast","\u002Fen\u002Fcomponents\u002Fbb-tooltip","\u002Fit\u002Fcomponenti\u002Fbb-tooltip","\u002Fen\u002Fcomponents\u002Fbb-tree","\u002Fit\u002Fcomponenti\u002Fbb-tree","\u002Fen\u002Fguides\u002Fadoption-checklist","\u002Fit\u002Fguide\u002Fadoption-checklist","\u002Fen\u002Fguides\u002Fai-agents","\u002Fit\u002Fguide\u002Fai-agents","\u002Fen\u002Fguides\u002Fcoherence","\u002Fit\u002Fguide\u002Fcoherence","\u002Fen\u002Fguides\u002Fdesign-language","\u002Fit\u002Fguide\u002Fdesign-language","\u002Fen\u002Fguides\u002Fdesign-tokens","\u002Fit\u002Fguide\u002Fdesign-tokens","\u002Fen\u002Fguides\u002Ffetching-data","\u002Fit\u002Fguide\u002Ffetching-data","\u002Fen\u002Fguides\u002Ficons","\u002Fit\u002Fguide\u002Ficons","\u002Fen\u002Fguides\u002Finertia","\u002Fit\u002Fguide\u002Finertia","\u002Fen\u002Fguides\u002Finstallation","\u002Fit\u002Fguide\u002Finstallation","\u002Fen\u002Fguides\u002Fmigration","\u002Fit\u002Fguide\u002Fmigration","\u002Fen\u002Fguides\u002Fnuxt","\u002Fit\u002Fguide\u002Fnuxt","\u002Fen\u002Fguides\u002Foptions-and-items","\u002Fit\u002Fguide\u002Foptions-and-items","\u002Fen\u002Fguides\u002Fpassthrough","\u002Fit\u002Fguide\u002Fpassthrough","\u002Fen\u002Fguides\u002Fpreset-components","\u002Fit\u002Fguide\u002Fpreset-components","\u002Fen\u002Fguides\u002Fvalidated-forms","\u002Fit\u002Fguide\u002Fvalidated-forms",[135,150,162,186,198,242,275,311,332,353,365,371],{"label":136,"entries":137},"Getting started",[138,142,146],{"title":139,"path":140,"order":141},"Installation","\u002Fguides\u002Finstallation",1,{"title":143,"path":144,"order":145},"Migrating from v2","\u002Fguides\u002Fmigration",2,{"title":147,"path":148,"order":149},"Adoption checklist","\u002Fguides\u002Fadoption-checklist",3,{"label":151,"entries":152},"Design system",[153,156,159],{"title":154,"path":155,"order":141},"Design tokens","\u002Fguides\u002Fdesign-tokens",{"title":157,"path":158,"order":145},"Design language","\u002Fguides\u002Fdesign-language",{"title":160,"path":161,"order":149},"Passthrough","\u002Fguides\u002Fpassthrough",{"label":163,"entries":164},"Playbooks",[165,168,171,174,178,182],{"title":166,"path":167,"order":141},"Options and items","\u002Fguides\u002Foptions-and-items",{"title":169,"path":170,"order":145},"Fetching data","\u002Fguides\u002Ffetching-data",{"title":172,"path":173,"order":149},"Coherence","\u002Fguides\u002Fcoherence",{"title":175,"path":176,"order":177},"Validated forms","\u002Fguides\u002Fvalidated-forms",4,{"title":179,"path":180,"order":181},"Icons","\u002Fguides\u002Ficons",5,{"title":183,"path":184,"order":185},"Preset components","\u002Fguides\u002Fpreset-components",6,{"label":187,"entries":188},"Ecosystem",[189,192,195],{"title":190,"path":191,"order":141},"Inertia and Laravel","\u002Fguides\u002Finertia",{"title":193,"path":194,"order":145},"Nuxt","\u002Fguides\u002Fnuxt",{"title":196,"path":197,"order":149},"AI agents","\u002Fguides\u002Fai-agents",{"label":199,"entries":200},"Inputs",[201,204,207,210,213,216,219,222,226,230,234,238],{"title":202,"path":203,"component":202,"order":141},"BbBaseButton","\u002Fcomponents\u002Fbb-base-button",{"title":205,"path":206,"component":205,"order":145},"BbButton","\u002Fcomponents\u002Fbb-button",{"title":208,"path":209,"component":208,"order":149},"BbCalendar","\u002Fcomponents\u002Fbb-calendar",{"title":211,"path":212,"component":211,"order":149},"BbColorInput","\u002Fcomponents\u002Fbb-color-input",{"title":214,"path":215,"component":214,"order":177},"BbDatePickerInput","\u002Fcomponents\u002Fbb-date-picker-input",{"title":217,"path":218,"component":217,"order":181},"BbDropzone","\u002Fcomponents\u002Fbb-dropzone",{"title":220,"path":221,"component":220,"order":185},"BbForm","\u002Fcomponents\u002Fbb-form",{"title":223,"path":224,"component":223,"order":225},"BbNumberInput","\u002Fcomponents\u002Fbb-number-input",7,{"title":227,"path":228,"component":227,"order":229},"BbTag","\u002Fcomponents\u002Fbb-tag",8,{"title":231,"path":232,"component":231,"order":233},"BbTextarea","\u002Fcomponents\u002Fbb-textarea",9,{"title":235,"path":236,"component":235,"order":237},"BbTextInput","\u002Fcomponents\u002Fbb-text-input",10,{"title":239,"path":240,"component":239,"order":241},"BbTimePickerInput","\u002Fcomponents\u002Fbb-time-picker-input",11,{"label":243,"entries":244},"Selection",[245,248,251,254,257,260,263,266,269,272],{"title":246,"path":247,"component":246,"order":141},"BbCheckbox","\u002Fcomponents\u002Fbb-checkbox",{"title":249,"path":250,"component":249,"order":145},"BbCheckboxGroup","\u002Fcomponents\u002Fbb-checkbox-group",{"title":252,"path":253,"component":252,"order":149},"BbRadio","\u002Fcomponents\u002Fbb-radio",{"title":255,"path":256,"component":255,"order":177},"BbRadioGroup","\u002Fcomponents\u002Fbb-radio-group",{"title":258,"path":259,"component":258,"order":181},"BbRating","\u002Fcomponents\u002Fbb-rating",{"title":261,"path":262,"component":261,"order":185},"BbSelect","\u002Fcomponents\u002Fbb-select",{"title":264,"path":265,"component":264,"order":225},"BbSelectPopover","\u002Fcomponents\u002Fbb-select-popover",{"title":267,"path":268,"component":267,"order":229},"BbSlider","\u002Fcomponents\u002Fbb-slider",{"title":270,"path":271,"component":270,"order":233},"BbSwitch","\u002Fcomponents\u002Fbb-switch",{"title":273,"path":274,"component":273,"order":237},"BbSwitchGroup","\u002Fcomponents\u002Fbb-switch-group",{"label":276,"entries":277},"Overlay",[278,281,284,287,290,293,296,299,302,305,308],{"title":279,"path":280,"component":279,"order":141},"BbColorPalette","\u002Fcomponents\u002Fbb-color-palette",{"title":282,"path":283,"component":282,"order":145},"BbConfirm","\u002Fcomponents\u002Fbb-confirm",{"title":285,"path":286,"component":285,"order":149},"BbDatePicker","\u002Fcomponents\u002Fbb-date-picker",{"title":288,"path":289,"component":288,"order":177},"BbDialog","\u002Fcomponents\u002Fbb-dialog",{"title":291,"path":292,"component":291,"order":181},"BbDropdown","\u002Fcomponents\u002Fbb-dropdown",{"title":294,"path":295,"component":294,"order":185},"BbDropdownButton","\u002Fcomponents\u002Fbb-dropdown-button",{"title":297,"path":298,"component":297,"order":225},"BbHoverCard","\u002Fcomponents\u002Fbb-hover-card",{"title":300,"path":301,"component":300,"order":225},"BbOffCanvas","\u002Fcomponents\u002Fbb-off-canvas",{"title":303,"path":304,"component":303,"order":229},"BbPopover","\u002Fcomponents\u002Fbb-popover",{"title":306,"path":307,"component":306,"order":233},"BbTimePicker","\u002Fcomponents\u002Fbb-time-picker",{"title":309,"path":310,"component":309,"order":237},"BbTooltip","\u002Fcomponents\u002Fbb-tooltip",{"label":312,"entries":313},"Navigation",[314,317,320,323,326,329],{"title":315,"path":316,"component":315,"order":141},"BbAccordion","\u002Fcomponents\u002Fbb-accordion",{"title":318,"path":319,"component":318,"order":145},"BbBreadcrumbs","\u002Fcomponents\u002Fbb-breadcrumbs",{"title":321,"path":322,"component":321,"order":149},"BbCollapsible","\u002Fcomponents\u002Fbb-collapsible",{"title":324,"path":325,"component":324,"order":177},"BbPagination","\u002Fcomponents\u002Fbb-pagination",{"title":327,"path":328,"component":327,"order":181},"BbTabs","\u002Fcomponents\u002Fbb-tabs",{"title":330,"path":331,"component":330,"order":185},"BbTree","\u002Fcomponents\u002Fbb-tree",{"label":333,"entries":334},"Feedback",[335,338,341,344,347,350],{"title":336,"path":337,"component":336,"order":141},"BbAlert","\u002Fcomponents\u002Fbb-alert",{"title":339,"path":340,"component":339,"order":145},"BbBadge","\u002Fcomponents\u002Fbb-badge",{"title":342,"path":343,"component":342,"order":149},"BbIndicator","\u002Fcomponents\u002Fbb-indicator",{"title":345,"path":346,"component":345,"order":177},"BbProgress","\u002Fcomponents\u002Fbb-progress",{"title":348,"path":349,"component":348,"order":181},"BbSpinner","\u002Fcomponents\u002Fbb-spinner",{"title":351,"path":352,"component":351,"order":185},"BbToast","\u002Fcomponents\u002Fbb-toast",{"label":354,"entries":355},"Data Display",[356,359,362],{"title":357,"path":358,"component":357,"order":141},"BbAvatar","\u002Fcomponents\u002Fbb-avatar",{"title":360,"path":361,"component":360,"order":145},"BbIcon","\u002Fcomponents\u002Fbb-icon",{"title":363,"path":364,"component":363,"order":149},"BbTable","\u002Fcomponents\u002Fbb-table",{"label":366,"entries":367},"Layout & Utility",[368],{"title":369,"path":370,"component":369,"order":141},"BbSmoothHeight","\u002Fcomponents\u002Fbb-smooth-height",{"label":372,"entries":373},"Other",[374],{"title":375,"path":376,"component":375,"order":141},"BbAsterisk","\u002Fcomponents\u002Fbb-asterisk",{"name":231,"slug":378,"group":199,"description":379,"entrypoint":380,"docs":381,"props":384,"models":541,"events":544,"slots":593,"exposed":620,"pt":621,"validated":389,"migration":684},"bb-textarea","Captures multi-line text values.","bitboss-ui",{"contract":382,"source":383},"ai\u002FBbTextarea.md","ai\u002Fsource\u002FBbTextarea.md",[385,391,394,398,405,410,414,417,420,423,428,431,434,437,440,443,446,450,457,460,465,469,473,477,481,485,489,492,495,498,502,507,510,513,516,521,526,529,533,538],{"name":386,"type":387,"required":388,"default":389,"description":390,"note":389,"demo":389},"append:icon","string | undefined",false,null,"Name of the icon to be added at the end of the input.",{"name":392,"type":387,"required":388,"default":389,"description":393,"note":389,"demo":389},"autocomplete","Guides to the browser as to the type of information expected in the field.",{"name":395,"type":396,"required":388,"default":389,"description":397,"note":389,"demo":389},"autofocus","Booleanish | undefined","Focuses the field when it mounts (a dialog already open included), unless the user is typing in another field.",{"name":399,"type":400,"required":388,"default":401,"description":402,"note":403,"demo":404},"autoGrow","boolean | undefined","false","Expands the textarea to match its content. Empty, it is one BbTextInput tall (text on the same line); it never shrinks below that, or below `rows`.","Drops the native resize handle and grows the field to fit its content, animated through `BbSmoothHeight`. Combine it with `rows` instead of a CSS `min-height`: a `min-height` fights the growth calculation, `rows` feeds it.","sizing",{"name":406,"type":400,"required":388,"default":401,"description":407,"note":408,"demo":409},"clearable","Displays a clear button when the input has a value and is being interacted with.","Same behaviour as on BbTextInput: no `clear` event, the model simply goes `null`.","chrome",{"name":411,"type":400,"required":388,"default":401,"description":412,"note":389,"demo":413},"compact","Compact density: the field uses the `-compact` twins of `--bb-input-h`, `--bb-input-py` and `--bb-label-spacing-y`, so a `--bb-input-h` set on the component is ignored while it is on. Size a compact field with `--bb-input-h-compact` (and `--bb-input-py-compact`).","layout",{"name":415,"type":400,"required":388,"default":401,"description":416,"note":389,"demo":389},"counter","Shows a character count at the end of the hint row: `42`, or `42 \u002F 140` with the native `maxlength` (which also stops input). It brightens from 90 % and takes the warning colour at the limit; screen readers hear it only when it crosses 90 % or the limit.",{"name":418,"type":387,"required":388,"default":389,"description":419,"note":389,"demo":409},"description","Text between the label and the input. Unlike the hint it is always visible; it joins the input's `aria-describedby` after any `errors` \u002F `warnings`, before the `hint`.",{"name":421,"type":400,"required":388,"default":401,"description":422,"note":389,"demo":389},"disabled","Disables the component.",{"name":424,"type":425,"required":388,"default":389,"description":426,"note":427,"demo":415},"errors","string | string[] | undefined","Error messages under the field, a string or array, in an `aria-live=\"polite\"` region and first in the control's `aria-describedby`, so they are re-read when it regains focus.","The home for a soft character limit: leave `maxlength` off and say what to cut here. A `suffix` counter is visual only.",{"name":429,"type":400,"required":388,"default":401,"description":430,"note":389,"demo":389},"formless","Keep this control out of the enclosing `BbForm` entirely: not submitted, not dirty, not reset, not validated. For a control that is not form data (a filter, a \"show advanced\" switch).",{"name":432,"type":400,"required":388,"default":401,"description":433,"note":389,"demo":389},"hasErrors","Define if the component should be in an error state. It usually attaches a CSS class for styling purposes.",{"name":435,"type":400,"required":388,"default":401,"description":436,"note":389,"demo":389},"hasWarnings","Define if the component should be in a warning state. Same chrome as errors with `--bb-warn`; errors take priority.",{"name":438,"type":400,"required":388,"default":401,"description":439,"note":389,"demo":389},"hideLabel","Visually hides the label of the input while maintaining accessibility.",{"name":441,"type":387,"required":388,"default":389,"description":442,"note":389,"demo":409},"hint","Text box to be displayed near the input, usually to indicate instructions.",{"name":444,"type":387,"required":388,"default":389,"description":445,"note":389,"demo":389},"id","The `id` of the native control; the label's `for` and the description and message ids derive from it. Generated when omitted.",{"name":447,"type":448,"required":388,"default":389,"description":449,"note":389,"demo":389},"inputAlign","FieldCrossAlign | undefined","Vertical position of the control in a side-by-side row; not `inputPosition`, the horizontal one. Omitted, the control's first line meets the label's.",{"name":451,"type":452,"required":453,"default":389,"description":454,"note":455,"demo":456},"label","string",true,"Text content of the label of the element.","Required, and display and accessibility only: it does not set `name`.","default",{"name":458,"type":448,"required":388,"default":389,"description":459,"note":389,"demo":389},"labelAlign","Vertical position of the label block in a side-by-side row; not `labelPosition`, the horizontal one. Omitted, the label's first line meets the control's.",{"name":461,"type":462,"required":388,"default":389,"description":463,"note":464,"demo":409},"labelMode","\"outside\" | \"floating\" | \"inside\" | undefined","Label rendering mode. `'outside'` (default) sits the label above\u002Fbeside the field; `'floating'`\u002F`'inside'` overlay it, like the other text inputs.","Works exactly as on BbTextInput, including the `defaultInputLabelMode` fallback. A bare `floating` attribute is not a prop: write `label-mode=\"floating\"`.",{"name":466,"type":467,"required":388,"default":389,"description":468,"note":389,"demo":389},"labelPosition","\"left\" | \"center\" | \"right\" | undefined","Sets the text alignment of the label.",{"name":413,"type":470,"required":388,"default":389,"description":471,"note":472,"demo":413},"Responsive\u003CFieldLayout> | undefined","How label and input sit together: `'vertical'`, `'horizontal'` (50\u002F50), `'auto'`, `'label-fill'`, `'input-fill'`, a ratio like `'xx xxxxx'`, or a per-breakpoint map (`{ default: 'vertical', md: 'xx xxxxx' }`).","Applies only while the resolved label mode is `outside`; `floating` and `inside` force the vertical layout and ignore it silently. A label beside a four-line box is what makes this component good for settings rows.",{"name":474,"type":400,"required":388,"default":401,"description":475,"note":476,"demo":409},"loading","Sets the component in a loading state, usually triggering some visual styles.","Visual only: the field stays editable during an autosave round-trip.",{"name":478,"type":479,"required":388,"default":389,"description":480,"note":389,"demo":389},"modelValue","string | null | undefined","Used by v-model.",{"name":482,"type":387,"required":388,"default":389,"description":483,"note":484,"demo":456},"name","Defines the name of the input.","Unset, the rendered `\u003Ctextarea>` carries no name, so a native form post drops the value silently.",{"name":486,"type":487,"required":388,"default":389,"description":488,"note":389,"demo":389},"nullValue","E | undefined","What the field emits once the user empties it (typing it empty, the clear button): `'null'` emits `null`, `'string'` emits `''`. Unset, the app's `formControls.textareaNullValue` applies (`'null'` by default). Also types the `update:modelValue` payload: with `'string'` it is `string`.",{"name":490,"type":400,"required":388,"default":401,"description":491,"note":389,"demo":389},"persistentHint","Keeps the hint displayed.",{"name":493,"type":387,"required":388,"default":389,"description":494,"note":389,"demo":389},"placeholder","Text shown while the field is empty.",{"name":496,"type":387,"required":388,"default":389,"description":497,"note":389,"demo":389},"prepend:icon","Name of the icon to be added at the start of the input.",{"name":499,"type":500,"required":388,"default":389,"description":501,"note":389,"demo":389},"pt","(PtMap\u003CBbTextareaPtPart, BbTextareaPtState> & { \"root:outline\"?: PtValue | undefined; \"icon:outline\"?: PtValue | undefined; \"root:secondary\"?: PtValue | undefined; \"icon:secondary\"?: PtValue | undefined; \"spinner:outline\"?: PtValue | undefined; \"spinner:secondary\"?: PtValue | undefined; \"clear:outline\"?: PtValue | undefined; \"clear:secondary\"?: PtValue | undefined; \"root:ghost\"?: PtValue | undefined; \"icon:ghost\"?: PtValue | undefined; \"spinner:ghost\"?: PtValue | undefined; \"clear:ghost\"?: PtValue | undefined; \"label:outline\"?: PtValue | undefined; \"label:secondary\"?: PtValue | undefined; \"label:ghost\"?: PtValue | undefined; \"description:outline\"?: PtValue | undefined; \"description:secondary\"?: PtValue | undefined; \"description:ghost\"?: PtValue | undefined; \"message:outline\"?: PtValue | undefined; \"message:secondary\"?: PtValue | undefined; \"message:ghost\"?: PtValue | undefined; \"hint:outline\"?: PtValue | undefined; \"hint:secondary\"?: PtValue | undefined; \"hint:ghost\"?: PtValue | undefined; \"input:outline\"?: PtValue | undefined; \"input:secondary\"?: PtValue | undefined; \"input:ghost\"?: PtValue | undefined; \"box:outline\"?: PtValue | undefined; \"box:secondary\"?: PtValue | undefined; \"box:ghost\"?: PtValue | undefined; \"prefix:outline\"?: PtValue | undefined; \"prefix:secondary\"?: PtValue | undefined; \"prefix:ghost\"?: PtValue | undefined; \"suffix:outline\"?: PtValue | undefined; \"suffix:secondary\"?: PtValue | undefined; \"suffix:ghost\"?: PtValue | undefined; }) | undefined","Passthrough, object form: `{ box: '…', 'box:errors': '…' }` — the same keys as the `pt:*` attributes without the prefix. See the `pt:\u003Cpart>` row.",{"name":503,"type":504,"required":388,"default":389,"description":505,"note":389,"demo":506},"pt:\u003Cpart>","PtValue | undefined","Passthrough, attribute form: one attribute per part, `pt:\u003Cpart>`, and per part and state, `pt:\u003Cpart>:\u003Cstate>`. Parts: `box`, `clear`, `counter`, `description`, `hint`, `icon`, `input`, `label`, `message`, `prefix`, `root`, `spinner`, `suffix`. States: `atLimit`, `disabled`, `errors`, `ghost`, `hasValue`, `loading`, `nearLimit`, `outline`, `readonly`, `secondary`, `warnings`.","passthrough",{"name":508,"type":400,"required":388,"default":401,"description":509,"note":389,"demo":389},"readonly","Sets the input in a readonly state.",{"name":511,"type":400,"required":388,"default":401,"description":512,"note":389,"demo":389},"required","Sets the input as required. Outside a BbForm it forwards to the native textarea; inside one it only marks the field (asterisk, aria-required) and nothing enforces it: use `rules=\"required\"` or the form schema.",{"name":514,"type":400,"required":388,"default":401,"description":515,"note":389,"demo":389},"reverse","Reverses the layout. Applicable in every direction the order of the label and the input is swapped.",{"name":517,"type":518,"required":388,"default":389,"description":519,"note":520,"demo":404},"rows","string | number | undefined","Sets the number of visible text lines for the control.","On its own, a fixed height with the native resize handle. With `auto-grow`, the floor the field starts at and never shrinks below. With neither, the box is a fixed 150px.",{"name":522,"type":523,"required":388,"default":389,"description":524,"note":525,"demo":389},"rules","RuleExpression\u003Cstring | null>","vee-validate rules for this field. Only inside a `BbForm`.","Read only inside a `BbForm`; outside one they do nothing. The field checks itself when you leave it (`validation-mode=\"balanced\"`), then on every keystroke while it shows an error.",{"name":527,"type":387,"required":388,"default":389,"description":528,"note":389,"demo":389},"validationLabel","The field's name in validation messages (`{field}`): \"Email is not valid\". Defaults to the `label` (or `legend`), then \"This field\"; never the `name`. Set it when the label is hidden or reads badly in a sentence (icon-only, a question). `BbForm` only.",{"name":530,"type":531,"required":388,"default":389,"description":532,"note":389,"demo":389},"validationMode","ValidationMode | undefined","When the field validates: `aggressive` (each change), `balanced` (on leave, then live while in error), `lazy` (on leave), `submit-only`, `submit-live`. Unset: the `BbForm`'s `validation-mode`, then `formControls.validationMode` (`'balanced'`). `BbForm` only.",{"name":534,"type":535,"required":388,"default":536,"description":537,"note":389,"demo":389},"variant","InputVariantType | undefined","'outline'","The field box's look, with `BbButton`'s names and tokens. Colours only, so a form never reflows; `'ghost'` has no border in any state, `'none'` no look at all (you own hover, focus and the states). Register more with the plugin's `inputVariants`.",{"name":539,"type":425,"required":388,"default":389,"description":540,"note":389,"demo":409},"warnings","Warning messages under the field, a string or array: amber, in their own `aria-live` region and in the control's `aria-describedby` after the errors. Non-empty turns on the warning state; errors win when both are set.",[542],{"name":478,"type":479,"note":543,"demo":456},"`string | null`, like every field in the family: emptied means `null`, or `''` with the plugin option `formControls.textareaNullValue`. Optional inside a `BbForm`, which holds the value under `name`.",[545,549,553,557,561,564,567,572,577,579,582,585,589],{"name":546,"signature":547,"description":548,"note":389,"demo":389},"blur","(event: FocusEvent): void","Emitted when the native textarea loses focus. Forwards the original DOM `FocusEvent`.",{"name":550,"signature":551,"description":552,"note":389,"demo":389},"change","(event: Event): void","Emitted when the native textarea fires a change event. Forwards the original DOM `Event`.",{"name":554,"signature":555,"description":556,"note":389,"demo":389},"click","(event: MouseEvent): void","Emitted when the textarea receives a click interaction. Forwards the original DOM `MouseEvent`.",{"name":558,"signature":559,"description":560,"note":389,"demo":389},"compositionend","(event: CompositionEvent): void","An IME composition ended. Forwards the original DOM `CompositionEvent`.",{"name":562,"signature":559,"description":563,"note":389,"demo":389},"compositionstart","An IME composition started. Forwards the original DOM `CompositionEvent`.",{"name":565,"signature":547,"description":566,"note":389,"demo":389},"focus","Emitted when the native textarea gains focus. Forwards the original DOM `FocusEvent`.",{"name":568,"signature":551,"description":569,"note":570,"demo":571},"input","Emitted on native input events from the textarea. Forwards the original DOM `Event`.","Also `stopPropagation()`d, so an ancestor listening across a whole form will not hear this field. Bind here, or watch the model.","submitting",{"name":573,"signature":574,"description":575,"note":576,"demo":571},"keydown","(event: KeyboardEvent): void","Emitted for keyboard interaction on the textarea. Forwards the original DOM `KeyboardEvent`.","Forwarded, but not bubbled: the component calls `stopPropagation()` on `keydown`, so no ancestor handler sees the key: not a form-level ⌘+Enter shortcut, not a dialog listening for Escape. Wire the action to a button.",{"name":578,"signature":574,"description":575,"note":389,"demo":389},"keyup",{"name":580,"signature":555,"description":581,"note":389,"demo":389},"mousedown","Emitted when a pointing device button is pressed over the textarea. Forwards the original DOM `MouseEvent`.",{"name":583,"signature":555,"description":584,"note":389,"demo":389},"mouseup","Emitted when a pointing device button is released over the textarea. Forwards the original DOM `MouseEvent`.",{"name":586,"signature":587,"description":588,"note":389,"demo":389},"paste","(event: ClipboardEvent): void","Native clipboard paste. Forwards the original DOM `ClipboardEvent`.",{"name":590,"signature":591,"description":592,"note":389,"demo":389},"update:modelValue","(value: string | NullValueOf\u003CE>): void","Emitted when the value changes. Carries the new text, or the empty value (`null-value`, else the app's, `null` by default) when emptied.",[594,598,601,604,607,610,613,616],{"name":595,"type":596,"description":597,"note":389,"demo":389},"append","Record\u003Cstring, never>","Content rendered after the textarea, at the end of the inner container.",{"name":599,"type":596,"description":600,"note":389,"demo":389},"append:outer","Content rendered after the entire textarea control, outside the input chrome.",{"name":418,"type":602,"description":603,"note":389,"demo":389},"BbTextareaDescriptionSlotProps","Replaces the description text. Provided alone (no `description` prop) it still renders the description region and wires it into `aria-describedby`.",{"name":451,"type":605,"description":606,"note":389,"demo":389},"BbTextareaLabelSlotProps","Replaces the default label text rendered above the textarea.",{"name":608,"type":596,"description":609,"note":389,"demo":389},"prefix","Inline content rendered at the start of the textarea field area, before the text.",{"name":611,"type":596,"description":612,"note":389,"demo":389},"prepend","Content rendered before the textarea, at the start of the inner container.",{"name":614,"type":596,"description":615,"note":389,"demo":389},"prepend:outer","Content rendered before the entire textarea control, outside the input chrome.",{"name":617,"type":596,"description":618,"note":619,"demo":415},"suffix","Inline content rendered at the end of the textarea field area, after the text.","The home for a character counter: beside the value rather than below it, where it would compete with the hint.",[],{"parts":622,"states":655},[623,626,628,630,633,635,638,640,643,646,648,650,653],{"name":624,"description":625},"root","The field's outer container: the label, the box and the lines under it.",{"name":451,"description":627},"The label text above the box (the `label` prop).",{"name":418,"description":629},"The muted line under the label (the `description` prop).",{"name":631,"description":632},"message","The errors \u002F warnings line under the box. A node of its own: it can show at the same time as `hint`.",{"name":441,"description":634},"The helper line (the `hint` prop), shown on focus, or always with `persistent-hint`.",{"name":636,"description":637},"box","The bordered box around the input — border, background and radius; the `variant` paints here.",{"name":568,"description":639},"The native input element inside the box.",{"name":641,"description":642},"icon","The content icons, prepend and append — a broadcast. Chrome (the clear ✕, a chevron, the error \u002F warning glyph) is never in it.",{"name":644,"description":645},"spinner","The spinner inside the box while `loading`.",{"name":608,"description":647},"The `#prefix` slot's wrapper, inside the box before the input.",{"name":617,"description":649},"The `#suffix` slot's wrapper, inside the box after the input.",{"name":651,"description":652},"clear","The ✕ that empties this control (`clearable`) — one node, never a chip's own ✕.",{"name":415,"description":654},"The character count at the end of the hint row (`counter`): `42`, or `42 \u002F 140` with `maxlength`.",[656,659,661,663,666,669,671,674,677,679,682],{"name":657,"description":658},"atLimit","Component-wide: with `counter` and `maxlength`, the value has reached the limit.",{"name":421,"description":660},"Component-wide: the control is `disabled`.",{"name":424,"description":662},"Component-wide: the control is in its error state (`errors` \u002F `has-errors`, or its validation) — the message line and the box turn red.",{"name":664,"description":665},"ghost","On the field's parts: `variant: 'ghost'`. Below the real states, like every variant.",{"name":667,"description":668},"hasValue","Component-wide: the control holds a value, by its own rule (`0` counts on `BbNumberInput`, `''` on `BbColorInput`).",{"name":474,"description":670},"Component-wide: `loading` is on; the box shows its `spinner`.",{"name":672,"description":673},"nearLimit","Component-wide: with `counter` and `maxlength`, the value is at 90 % of the limit or more, and still below it.",{"name":675,"description":676},"outline","On the field's parts: `variant: 'outline'`. Merged after the part's base entry and before its states, so the real states still win.",{"name":508,"description":678},"Component-wide: the control is `readonly` — shown, focusable, not editable.",{"name":680,"description":681},"secondary","On the field's parts: `variant: 'secondary'`. Below the real states, like every variant.",{"name":539,"description":683},"Component-wide: the control is in its warning state (`warnings` \u002F `has-warnings`) and not in an error state — errors win, so the two are never on together.",{"removed":685,"renamed":715},[686,693,698,702,705,710],{"name":687,"surface":688,"replacedBy":599,"hint":389,"since":689,"migration":690,"silent":453,"fix":691},"append-outer","slot","3.0.0-beta.41","ai\u002Fguides\u002Fmigration\u002Fv2-to-v3.md",{"kind":692},"rename",{"name":694,"surface":695,"replacedBy":413,"hint":389,"since":696,"migration":690,"silent":453,"fix":697},"direction","prop","3.0.0-beta.33",{"kind":692},{"name":699,"surface":695,"replacedBy":435,"hint":389,"since":700,"migration":690,"silent":453,"fix":701},"hasWarning","3.0.0-beta.26",{"kind":692},{"name":703,"surface":688,"replacedBy":614,"hint":389,"since":689,"migration":690,"silent":453,"fix":704},"prepend-outer",{"kind":692},{"name":706,"surface":695,"replacedBy":530,"hint":707,"since":689,"migration":690,"silent":453,"fix":708},"validateOn","an array of events became one mode (`aggressive` | `balanced` | `lazy` | `submit-only` | `submit-live`). The old defaults (`['blur']`, `['inactive']`, a toggle's `['update:modelValue', 'change', 'blur']`) are `balanced`, the new default: delete the prop. A text field on `['update:modelValue']` is `validation-mode=\"aggressive\"`. Set it once on `\u003CBbForm validation-mode>` instead of per field",{"kind":709},"manual",{"name":711,"surface":695,"replacedBy":389,"hint":712,"since":689,"migration":690,"silent":453,"fix":713},"vid","a display name (v2: `vid=\"Email address\"`) is now `validation-label`; a field path (3.0 betas: `vid=\"address.city\"`) is now `name` (brackets for a native post: `address[city]`). `check --fix` picks by the value",{"kind":714,"display":527,"key":482},"byValue",[716,718,720,722,724],{"from":687,"to":599,"surface":688,"since":689,"migration":690,"fix":717},{"kind":692},{"from":694,"to":413,"surface":695,"since":696,"migration":690,"fix":719},{"kind":692},{"from":699,"to":435,"surface":695,"since":700,"migration":690,"fix":721},{"kind":692},{"from":703,"to":614,"surface":688,"since":689,"migration":690,"fix":723},{"kind":692},{"from":706,"to":530,"surface":695,"since":689,"migration":690,"fix":725},{"kind":709},1793055154508]