[{"data":1,"prerenderedAt":1362},["ShallowReactive",2],{"locale-alternates":3,"docs-nav-en":134,"api-none":377,"page-en-\u002Fcomponents\u002Fbb-select-popover":378,"pt-showcase-BbSelectPopover":909,"bb-items:v-0-2-1-27-1-3":1280},{"\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",null,{"id":379,"title":264,"body":380,"component":264,"description":895,"extension":896,"group":243,"meta":897,"navigation":898,"order":225,"path":265,"sections":899,"seo":906,"stem":907,"__hash__":908},"docs_en\u002Fcomponents\u002Fbb-select-popover.md",{"type":381,"value":382,"toc":887},"minimark",[383,431,442,453,461,474,478,493,517,530,536,545,548,557,563,587,590,615,634,637,676,682,697,700,717,747,768,771,774,780,783,786,789,795,813,832,835,849],[384,385,386,394],"when",{},[387,388,389,390,393],"p",{},"Use ",[391,392,264],"code",{}," when someone chooses a value from a trigger you design: a\nstatus pill, filter chip, avatar stack or table cell. It provides the select\nengine without drawing a form field.",[395,396,398],"template",{"v-slot:else":397},"",[399,400,401,410,417,424],"ul",{},[402,403,404,409],"li",{},[405,406,407],"a",{"href":70},[391,408,261],{},": you need a labelled field with\nguidance and validation",[402,411,412,416],{},[405,413,414],{"href":66},[391,415,255],{},": a short exclusive choice\nshould remain visible",[402,418,419,423],{},[405,420,421],{"href":40},[391,422,291],{},": the rows run commands",[402,425,426,430],{},[405,427,428],{"href":60},[391,429,303],{},": the panel contains arbitrary\ncontent instead of options",[387,432,433,434,436,437,436,439,441],{},"Also see: ",[405,435,166],{"href":126},", ",[405,438,169],{"href":114},[405,440,172],{"href":108},".",[387,443,444,445,448,449,441],{},"Item mapping, ",[391,446,447],{},"item-props",", custom rows and option identity follow\n",[405,450,451],{"href":70},[391,452,261],{},[454,455,457],"h2",{"id":456},"activator",[458,459,460],"span",{},"Build a reliable trigger",[387,462,463,464,469,470,473],{},"Spread the ",[405,465,467],{"href":466},"\u002Fen\u002Fcomponents\u002Fbb-select-popover\u002Fapi#slot-activator",[391,468,456],{}," slot's ",[391,471,472],{},"props"," onto the focusable element, give it an explicit\naccessible name and derive its label from application state.",[475,476],"demo",{"name":477},"BbSelectPopover\u002FAssigneePill",[387,479,480,481,484,485,488,489,492],{},"Do not label the trigger from slot ",[391,482,483],{},"text"," or ",[391,486,487],{},"selectedOptions",": provider-backed\noptions are unresolved until they load, so the trigger can start blank. Reflect\n",[391,490,491],{},"shown"," visually when the panel is open.",[387,494,495,496,498,499,505,506,512,513,516],{},"The popover has no message area and never joins a ",[391,497,220],{},". For an invalid value, render the message next to your trigger and pass its id to ",[405,500,502],{"href":501},"\u002Fen\u002Fcomponents\u002Fbb-select-popover\u002Fapi#prop-ariaDescribedby",[391,503,504],{},"aria-describedby","; ",[405,507,509],{"href":508},"\u002Fen\u002Fcomponents\u002Fbb-select-popover\u002Fapi#prop-hasErrors",[391,510,511],{},"has-errors"," sets ",[391,514,515],{},"aria-invalid"," and marks the search field. The pill above does this while nobody is assigned.",[518,519,520],"migration",{},[387,521,522,523,525,526,529],{},"As on ",[391,524,261],{},", clicking the current single value now keeps it selected and\ncloses the panel. Use the slot ",[391,527,528],{},"clear"," callback for an explicit reset.",[454,531,533],{"id":532},"multiple",[458,534,535],{},"Multiple selection",[387,537,538,539,544],{},"Seed an array when using ",[405,540,542],{"href":541},"\u002Fen\u002Fcomponents\u002Fbb-select-popover\u002Fapi#prop-multiple",[391,543,532],{},", then summarize it on the trigger you own.",[475,546],{"name":547},"BbSelectPopover\u002FReviewerFilter",[387,549,550,556],{},[405,551,553],{"href":552},"\u002Fen\u002Fcomponents\u002Fbb-select-popover\u002Fapi#prop-max",[391,554,555],{},"max"," limits the count without locking selected options.",[454,558,560],{"id":559},"panel",[458,561,562],{},"Panel actions and short lists",[387,564,389,565,571,572,578,579,582,583,586],{},[405,566,568],{"href":567},"\u002Fen\u002Fcomponents\u002Fbb-select-popover\u002Fapi#slot-header",[391,569,570],{},"header"," to name the panel and ",[405,573,575],{"href":574},"\u002Fen\u002Fcomponents\u002Fbb-select-popover\u002Fapi#slot-footer",[391,576,577],{},"footer"," for clear or done actions.\nBind the scope's ",[391,580,581],{},"titleId"," as the title's ",[391,584,585],{},"id",": on the phone sheet it names the\ndialog.",[475,588],{"name":589},"BbSelectPopover\u002FTitledPanel",[387,591,592,593,436,595,436,598,436,601,604,605,607,608,614],{},"The panel slots expose ",[391,594,528],{},[391,596,597],{},"close",[391,599,600],{},"focus",[391,602,603],{},"query"," and\n",[391,606,487],{},". The ",[405,609,611],{"href":610},"\u002Fen\u002Fcomponents\u002Fbb-select-popover\u002Fapi#prop-clearable",[391,612,613],{},"clearable"," prop puts a clear button inside the\nsearch field instead, so it does nothing on a list without one.",[387,616,617,618,621,622,628,629,441],{},"An array of fewer than six options opens without a search field, unless you listen to ",[391,619,620],{},"option:add","; a provider always keeps it. ",[405,623,625],{"href":624},"\u002Fen\u002Fcomponents\u002Fbb-select-popover\u002Fapi#prop-disableWriting",[391,626,627],{},"disable-writing"," drops it on any list, as it does for the six statuses below. Without the field there is no filtering and no ",[405,630,632],{"href":631},"\u002Fen\u002Fcomponents\u002Fbb-select-popover\u002Fapi#event-option:add",[391,633,620],{},[475,635],{"name":636},"BbSelectPopover\u002FScrollOnlyStatus",[518,638,640],{"title":639},"allowWriting → disableWriting",[387,641,642,644,645,647,648,436,651,654,655,658,659,661,662,665,666,669,670,484,673,441],{},[391,643,570],{}," and ",[391,646,577],{}," replace ",[391,649,650],{},"options:prepend",[391,652,653],{},"options:append"," and their\n",[391,656,657],{},":outer"," variants. ",[391,660,627],{}," replaces and inverts ",[391,663,664],{},"allow-writing",", and\n",[391,667,668],{},"filter-by"," accepts ",[391,671,672],{},"string[]",[391,674,675],{},"false",[454,677,679],{"id":678},"fetching",[458,680,681],{},"Fetching and dependent pickers",[387,683,684,685,688,689,692,693,696],{},"A provider receives one object, ",[391,686,687],{},"{ query, reason, modelValue, signal }",". Return\nselected rows on every call whose ",[391,690,691],{},"reason"," is not ",[391,694,695],{},"'search'"," so values remain resolvable.",[475,698],{"name":699},"BbSelectPopover\u002FDestinationSearch",[387,701,702,703,705,706,709,710,716],{},"Unlike ",[391,704,261],{},", a seeded model does not force an eager provider call. Keep the\ntrigger independent of loaded options instead of adding ",[391,707,708],{},"prefill: true"," only to\nrender its label. Provider results pass through the local substring filter unless\nyou set ",[405,711,713],{"href":712},"\u002Fen\u002Fcomponents\u002Fbb-select-popover\u002Fapi#prop-filterBy",[391,714,715],{},":filter-by=\"false\"",", as this demo does: its provider matches\nthe query, accents aside, on every call.",[518,718,719],{},[387,720,721,724,725,728,729,732,733,644,736,739,740,743,744,441],{},[391,722,723],{},"prefill=\"focus\""," becomes ",[391,726,727],{},"'interaction'",". ",[391,730,731],{},"prefill: false"," is search-first;\nremove it to load on first open. ",[391,734,735],{},"no-data-text",[391,737,738],{},"#no-data"," are ",[391,741,742],{},"empty-text","\nand ",[391,745,746],{},"#empty",[387,748,389,749,755,756,762,763,767],{},[405,750,752],{"href":751},"\u002Fen\u002Fcomponents\u002Fbb-select-popover\u002Fapi#prop-dependencies",[391,753,754],{},"dependencies"," to refetch and ",[405,757,759],{"href":758},"\u002Fen\u002Fcomponents\u002Fbb-select-popover\u002Fapi#prop-enforceCoherence",[391,760,761],{},"enforce-coherence"," to remove values absent\nfrom the refreshed options. Switch the team to ",[764,765,766],"strong",{},"Design"," and the owner filter resets.",[475,769],{"name":770},"BbSelectPopover\u002FMilestoneFilter",[387,772,773],{},"Enforcement validates the seeded model on its first load. Each provider-backed\ninstance therefore makes its own request; an empty response can clear a valid\nselection.",[454,775,777],{"id":776},"table-rows",[458,778,779],{},"One picker per table row",[387,781,782],{},"Resolve shared options once, pass the same array to every row and keep edits in\na draft map keyed by row id.",[475,784],{"name":785},"BbSelectPopover\u002FInlineStatusCell",[387,787,788],{},"Give each picker its own model. One shared ref lets every instance judge and\noverwrite the same value; one provider per row makes request count follow row\ncount.",[454,790,792],{"id":791},"sizing",[458,793,794],{},"Width, placement and mobile",[387,796,797,798,804,805,808,809,812],{},"Set a concrete ",[405,799,801],{"href":800},"\u002Fen\u002Fcomponents\u002Fbb-select-popover\u002Fapi#prop-width",[391,802,803],{},"width"," for compact triggers; avoid ",[391,806,807],{},"'auto'",", which expands\nagainst the viewport on this fixed-positioned panel. ",[391,810,811],{},"placement=\"bottom-start\""," lines the panel up with the trigger's leading edge.",[387,814,815,816,818,819,825,826,831],{},"When ",[391,817,472],{}," lands on a button inside a wider pill, pass the pill's ref to ",[405,820,822],{"href":821},"\u002Fen\u002Fcomponents\u002Fbb-select-popover\u002Fapi#prop-anchor",[391,823,824],{},"anchor"," so the panel lines up with what people see, as the trip destination picker under panel actions does. To open the popover from an element rendered elsewhere, pass that element's ref to ",[405,827,829],{"href":828},"\u002Fen\u002Fcomponents\u002Fbb-select-popover\u002Fapi#prop-activator",[391,830,456],{}," instead of using the slot.",[475,833],{"name":834},"BbSelectPopover\u002FPanelWidth",[387,836,837,838,841,842,845,846,441],{},"Below the mobile breakpoint the panel becomes a sheet and placement props stop\napplying. Style the visible surface with ",[391,839,840],{},"pt:panel",", the search field with\n",[391,843,844],{},"pt:input"," and sheet-only corrections with ",[391,847,848],{},"pt:sheet",[518,850,852],{"title":851},"flip → disableFlip",[387,853,389,854,857,858,728,861,644,864,867,868,871,872,436,875,871,878,644,881,871,884,441],{},[391,855,856],{},"disable-flip"," instead of ",[391,859,860],{},"flip",[391,862,863],{},"hide-arrow",[391,865,866],{},"arrow-padding"," are\nremoved because this panel has no arrow. Classes: ",[391,869,870],{},"bb-select-popover__search-input"," is\n",[391,873,874],{},"bb-select-popover__input",[391,876,877],{},"bb-select-popover__search-clear",[391,879,880],{},"bb-select-popover__clear",[391,882,883],{},"bb-select-popover-offcanvas",[391,885,886],{},"bb-select-popover__sheet",{"title":397,"searchDepth":149,"depth":149,"links":888},[889,890,891,892,893,894],{"id":456,"depth":145,"text":460},{"id":532,"depth":145,"text":535},{"id":559,"depth":145,"text":562},{"id":678,"depth":145,"text":681},{"id":776,"depth":145,"text":779},{"id":791,"depth":145,"text":794},"A searchable picker behind a pill, badge, toolbar control or table cell.","md",{},true,[900,901,902,903,904,905],{"id":456,"title":460},{"id":532,"title":535},{"id":559,"title":562},{"id":678,"title":681},{"id":776,"title":779},{"id":791,"title":794},{"title":264,"description":895},"components\u002Fbb-select-popover","4-6LHjLRmT0vE9W0NM-2L2snqcZCxVFuA-TuEDvahJc",{"name":264,"slug":910,"group":243,"description":911,"entrypoint":912,"docs":913,"props":916,"models":1116,"events":1119,"slots":1163,"exposed":1190,"pt":1191,"validated":377,"migration":1231},"bb-select-popover","Provides popover-driven option selection and search.","bitboss-ui",{"contract":914,"source":915},"ai\u002FBbSelectPopover.md","ai\u002Fsource\u002FBbSelectPopover.md",[917,921,927,930,935,938,943,947,950,953,958,963,966,970,975,978,982,986,991,995,999,1002,1005,1007,1011,1015,1020,1025,1030,1034,1037,1040,1044,1048,1051,1054,1058,1062,1066,1071,1077,1081,1086,1090,1093,1098,1103,1107,1111],{"name":456,"type":918,"required":919,"default":377,"description":920,"note":377,"demo":377},"Record\u003Cstring, any> | HTMLElement | null | undefined",false,"External activator element or component ref. When provided, the activator slot is not rendered and event listeners are attached programmatically to the referenced element.",{"name":922,"type":923,"required":919,"default":924,"description":925,"note":926,"demo":791},"adaptive","boolean | undefined","`config.adaptive` (`true`)","On mobile, the panel opens as a bottom sheet instead of a floating popover, with the same search and list. Unset, the global `config.adaptive` applies.","Set it per instance only to disagree with the app-wide `config.adaptive`. Below the mobile breakpoint the placement props stop applying, because the panel is a sheet rather than a flyout.",{"name":824,"type":918,"required":919,"default":928,"description":929,"note":377,"demo":377},"null","Override the element used for popover positioning and width measurement. Useful when the focusable activator is narrower than its visual container (e.g. a button inside a wrapper). Falls back to `activatorEl` when omitted.",{"name":931,"type":932,"required":919,"default":377,"description":933,"note":934,"demo":456},"ariaDescribedby","string | string[] | undefined","Space-separated IDREF(s) that describe this field for assistive technologies. Accepts either a string or array of ids.","The popover has no message area. Render the error or warning next to your trigger and pass its id here: it lands on the trigger and on the search field.",{"name":936,"type":923,"required":919,"default":377,"description":937,"note":377,"demo":377},"ariaInvalid","Explicit invalid state for accessibility semantics. Falls back to `hasErrors` when not provided.",{"name":939,"type":940,"required":919,"default":941,"description":942,"note":377,"demo":377},"autocomplete","string | undefined","\"off\"","Browser autocomplete hint for the popover search input.",{"name":944,"type":945,"required":919,"default":377,"description":946,"note":377,"demo":377},"boundary","string | Record\u003Cstring, any> | HTMLElement | null | undefined","Constrains the popover to a specific boundary element: it stays inside it alongside its trigger (sideways for a popover above or below); away from the trigger it may pass the edge, and it flips at the viewport only.",{"name":613,"type":923,"required":919,"default":675,"description":948,"note":949,"demo":559},"Shows a clear button in the search field, in the lens' place while there is a query or a selection; it resets both. None without a search field. Leave it off when the activator already clears (as BbSelect's does).","Puts a small clear button inside the search field's icon stack (not on your trigger), so a list without a search field gets none. For an explicit \"empty this\" most triggers want the `clear` callback from the activator or panel slot scope instead.",{"name":951,"type":923,"required":919,"default":675,"description":952,"note":377,"demo":377},"compact","Apply the compact density variant.",{"name":754,"type":954,"required":919,"default":955,"description":956,"note":957,"demo":678},"unknown[] | undefined","[]","Additional dependencies that trigger item reloading when changed.","Compared by value hash, not by reference. Pair it with `enforceCoherence` rather than with a watcher that clears the model on every upstream change.",{"name":959,"type":960,"required":919,"default":961,"description":962,"note":377,"demo":377},"depsDebounceTime","number | undefined","0","Debounce delay (ms) for dependency-triggered reloads.",{"name":964,"type":923,"required":919,"default":675,"description":965,"note":377,"demo":377},"disabled","Disables the component.",{"name":967,"type":923,"required":919,"default":675,"description":968,"note":969,"demo":791},"disableFlip","Disables the automatic flip to the opposite side when the popover would overflow (flipping is on by default).","Inverts v2's `flip`, and the old name is silent: `:flip=\"false\"` becomes `disable-flip`. The related `hideArrow` and `arrowPadding` are gone entirely: this panel is a frame and never draws an arrow.",{"name":971,"type":972,"required":919,"default":807,"description":973,"note":974,"demo":559},"disableWriting","boolean | \"auto\" | \"mobile\" | \"desktop\" | undefined","Hides the panel's search field: `true` everywhere, `'mobile'` \u002F `'desktop'` on that platform only. `'auto'` hides it, per open, for an array `items` shorter than the plugin's `autoDisableWritingThreshold` (6); never for a provider or with an `option:add` listener.","Removes the search field, and with it typing, `filterBy` and `option:add`. It inverts v2's `allowWriting` silently: `:allow-writing=\"false\"` becomes `disable-writing`, `allow-writing=\"not-mobile\"` becomes `disable-writing=\"mobile\"`.",{"name":976,"type":940,"required":919,"default":377,"description":977,"note":377,"demo":377},"emptyText","Message displayed when no items are available.",{"name":979,"type":923,"required":919,"default":675,"description":980,"note":981,"demo":678},"enforceCoherence","Drops the picks the items no longer contain (single: `null`). Checked after every applied, successful load whose `reason` is not `'search'` (an empty one included), against the FETCHED rows only (a `stash` does not count); a search or failed load never prunes.","Opts each instance into a load of its own, because validating a seeded value is impossible without options. One filter costs one request; fifty provider-backed rows cost fifty. That is the reason a table hands every row the same array instead.",{"name":983,"type":940,"required":919,"default":984,"description":985,"note":377,"demo":377},"failedText","the localized `common.failedText` (\"Couldn't load items\")","Message displayed in the empty state while the latest load FAILED (the provider threw): the twin of `emptyText` for that case.",{"name":987,"type":988,"required":919,"default":955,"description":989,"note":990,"demo":559},"filterBy","false | string[] | undefined","What typing filters on: empty = the display text and description; item paths = those fields (`['name', 'email']`); `false` = no filtering. Use `false` when the provider matched the query on the server, or its email\u002Faccent matches show as \"No results\".","Replaces the match against the display text rather than adding to it, and every listed path must exist on every item or matching throws. With a provider it still applies on top of the response; `false` turns it off, for a provider that matches on the server.",{"name":992,"type":993,"required":919,"default":377,"description":994,"note":377,"demo":377},"groupBy","string | ((item: Item) => string | number | symbol) | undefined","Path to item property for grouping options.",{"name":996,"type":923,"required":919,"default":675,"description":997,"note":998,"demo":456},"hasErrors","Marks the component as being in error state.","Paints the error icon in the search field and sets `aria-invalid` on the trigger. It shows no message: that is yours, wired through `ariaDescribedby`.",{"name":1000,"type":923,"required":919,"default":675,"description":1001,"note":377,"demo":377},"hasWarnings","Marks the component as being in a warning state. Visually mirrors `hasErrors` but uses `--bb-warn` chrome; errors take priority when both are set.",{"name":1003,"type":960,"required":919,"default":377,"description":1004,"note":377,"demo":377},"headerHeight","Height of group headers in the listbox (px). Defaults to 32px (24px compact; 36px \u002F 32px on mobile viewports). Only applies when `groupBy` is set. An explicit value wins on every viewport.",{"name":585,"type":940,"required":919,"default":377,"description":1006,"note":377,"demo":377},"Seeds the ids the popover sets: its listbox is `\u003Cid>_listbox` (the activator's `aria-controls`) and each option's id derives from it. Generated when omitted.",{"name":1008,"type":960,"required":919,"default":1009,"description":1010,"note":377,"demo":377},"itemHeight","28","Height of the options in the listbox (px). Defaults to 28px (24px compact; 44px \u002F 36px on mobile viewports). An explicit value wins on every viewport.",{"name":1012,"type":1013,"required":919,"default":377,"description":1014,"note":377,"demo":377},"itemProps","BbSelectItemProps\u003CItem> | undefined","ADDITIONAL row fields, never the text or value: `description` (a muted line under the label), `prepend:icon`, `append:icon`. An object of paths or getters per field, or a function of the item. Nothing is read implicitly; none shows in the trigger or the chips.",{"name":1016,"type":1017,"required":898,"default":955,"description":1018,"note":1019,"demo":678},"items","Item[] | ((context: BbSelectPopoverItemsContext) => Item[] | Promise\u003CItem[]>)","The options: an array, or a sync or async provider given a `BbSelectPopoverItemsContext` (`query`, `reason`, `modelValue`, `signal`). Branch on `reason !== 'search'` to resolve the selection by id. A provider fails by THROWING, never by returning `[]`.","An array resolves on mount and costs nothing per instance, which is what makes one popover per table row viable. A function is per-instance, so reach for it only when the options genuinely depend on that instance.",{"name":1021,"type":1022,"required":919,"default":1023,"description":1024,"note":377,"demo":377},"itemText","ItemAccessor\u003CItem, string> | undefined","own `label`, else `text`, else `JSON.stringify(item)`","Path to item property for display text or function to extract it.\n\nUnset: own `label`, else `text` (`{ label, value }` needs no accessor).",{"name":1026,"type":1027,"required":919,"default":1028,"description":1029,"note":377,"demo":377},"itemValue","ItemAccessor\u003CItem> | undefined","own `value`, else the whole item","Path to item property for value or function to extract it.\n\nUnset: own `value`, even `null`.",{"name":1031,"type":1032,"required":919,"default":377,"description":1033,"note":377,"demo":377},"knownItems","([Known] extends [undefined] ? BbSelectKnownItems : Known) | undefined","`{ value, label }` rows naming the value the app already holds, whatever the options' shape: the activator's `text` with no request until the first open (`prefill: true` still loads). Not options: accessors never run on them; slots get one as `item`, `known: true`, until the list brings its own.",{"name":1035,"type":923,"required":919,"default":675,"description":1036,"note":377,"demo":377},"loading","Display the loading state styles.",{"name":1038,"type":940,"required":919,"default":377,"description":1039,"note":377,"demo":377},"loadingText","Message shown while items are being loaded.",{"name":555,"type":960,"required":919,"default":1041,"description":1042,"note":1043,"demo":532},"Infinity","Maximum number of selectable items (limits selection when `multiple` is true).","Applies to `multiple` only. At the cap the unselected options disable themselves while selected ones never do, so the reader can always trade one choice for another.",{"name":1045,"type":1046,"required":898,"default":377,"description":1047,"note":377,"demo":377},"modelValue","any","v-model value. Single value for single select, array for multiple select.",{"name":1049,"type":960,"required":919,"default":961,"description":1050,"note":377,"demo":377},"modelValueDebounceTime","Debounce delay (ms) for modelValue change handling.",{"name":532,"type":923,"required":919,"default":675,"description":1052,"note":1053,"demo":532},"Enable multiple item selection. When true, modelValue must be an array.","The model must already be an array on the first render, and there is no chip row: summarising the selection on your trigger is part of owning it.",{"name":1055,"type":1056,"required":919,"default":377,"description":1057,"note":377,"demo":377},"offCanvasProps","Partial\u003CBbOffCanvasProps> | undefined","Props for the phone sheet (the `BbOffCanvas` that `adaptive` renders on mobile), spread over its defaults. A `pt` inside it styles only the sheet (passthrough guide § Inside the sheet).",{"name":1059,"type":960,"required":919,"default":1060,"description":1061,"note":377,"demo":377},"offset","4","Distance (px) between the activator and the popover.",{"name":1063,"type":960,"required":919,"default":1064,"description":1065,"note":377,"demo":377},"padding","10","Minimum page padding used by floating shift middleware.",{"name":1067,"type":1068,"required":919,"default":1069,"description":1070,"note":377,"demo":377},"placement","Placement | undefined","\"bottom\"","Floating placement of the popover.",{"name":1072,"type":1073,"required":919,"default":1074,"description":1075,"note":1076,"demo":678},"prefill","boolean | \"interaction\" | undefined","\"interaction\"","When the options first load: `'interaction'` on first open, `true` on mount (and in SSR), `false` once the user types (on open with `disable-writing` or a non-empty model). An array `items` always resolves on mount; else a seeded model's text waits for the first open.","Unlike an in-field `BbSelect`, a standalone popover does **not** upgrade a seeded model to an eager load: a fetch per instance is something you ask for. Do not reach for `true` to populate a trigger label; resolve the label from your own state instead.",{"name":1078,"type":1079,"required":919,"default":377,"description":1080,"note":377,"demo":377},"pt","PtItemMap\u003CBbSelectPopoverPtPart, BbSelectPopoverOptionPtPart, BbSelectPopoverPtState, Item, never, BbSelectSlotRow\u003CItem, Known>> | undefined","Passthrough, object form: the same keys as the `pt:*` attributes without the prefix. See the `pt:\u003Cpart>` row.",{"name":1082,"type":1083,"required":919,"default":377,"description":1084,"note":377,"demo":1085},"pt:\u003Cpart>","PtValue | ((ctx: PtItemCtx\u003CItem, BbSelectPopoverPtState, never, BbSelectSlotRow\u003CItem, Known>>) => PtItemResult) | undefined","Passthrough, attribute form: one attribute per part, `pt:\u003Cpart>`, and per part and state, `pt:\u003Cpart>:\u003Cstate>`. Parts: `clear`, `footer`, `header`, `input`, `itemDescription`, `itemIcon`, `itemText`, `list`, `option`, `panel`, `root`, `sheet`. States: `disabled`, `open`, `selected`.","passthrough",{"name":1087,"type":960,"required":919,"default":1088,"description":1089,"note":377,"demo":377},"queryDebounceTime","500","Debounce delay (ms) before triggering search queries after user input stops.",{"name":1091,"type":923,"required":919,"default":675,"description":1092,"note":377,"demo":377},"readonly","Prevents opening the popover while keeping the activator accessible.",{"name":1094,"type":940,"required":919,"default":1095,"description":1096,"note":1097,"demo":456},"searchInputAriaLabel","`t('select.searchLabel')` (`'Search options'`)","Accessible label used by the search input rendered inside the popover. Falls back to the localized `select.searchLabel` key when omitted.","Names the in-panel search field, which defaults to the localized \"Search options\". It is not the trigger's name: that is the `aria-label` you put on the activator yourself.",{"name":1099,"type":1100,"required":919,"default":1101,"description":1102,"note":377,"demo":377},"selectable","boolean | ((item: Item) => boolean) | undefined","true","Defines whether options are selectable. Can be a global boolean that affects all options or a function that accepts an item and returns a boolean that only affects that item. Non-selectable options are rendered disabled.",{"name":1104,"type":923,"required":919,"default":675,"description":1105,"note":1106,"demo":678},"stash","Keeps picked options named across searches: a pick stays resolvable when a later search or a failed load no longer returns it. It follows the model, and does not keep a pick valid: `enforce-coherence` still prunes it.","Keeps picked options resolvable across searches. It does not help a trigger label, which should never depend on what the component has loaded.",{"name":1108,"type":960,"required":919,"default":1109,"description":1110,"note":377,"demo":377},"transitionDuration","250","Transition duration (ms) for popover show\u002Fhide animations.",{"name":803,"type":1112,"required":919,"default":1113,"description":1114,"note":1115,"demo":791},"string | number | undefined","\"200\"","Width of the popover in pixels, percentage, or `'auto'`. A bare number is read as pixels — the default is the string `'200'`, not the number `200`.","Defaults to `'200'` (pixels), which is sized for a field-shaped picker. Pass a smaller number for a chip or table-cell trigger, and never `'auto'`: the panel is fixed-positioned, so `auto` resolves against the viewport and blows it out to the width of the page.",[1117],{"name":1045,"type":1046,"note":1118,"demo":456},"Holds a single value, or an array under `multiple`. Give every instance its own model: several popovers bound to one ref each judge the same value against their own options, and every instance that disagrees emits `null`.",[1120,1124,1128,1132,1136,1138,1141,1144,1148,1151,1154,1157,1159],{"name":1121,"signature":1122,"description":1123,"note":377,"demo":377},"active","(): void","Emitted when the component becomes active (focus enters it).",{"name":1125,"signature":1126,"description":1127,"note":377,"demo":377},"blur","(event: FocusEvent): void","Emitted when the activator loses focus.",{"name":1129,"signature":1130,"description":1131,"note":377,"demo":377},"change","(event: Event): void","Emitted when the value changes via native change event.",{"name":1133,"signature":1134,"description":1135,"note":377,"demo":377},"click","(event: MouseEvent): void","Emitted when the activator is clicked.",{"name":600,"signature":1126,"description":1137,"note":377,"demo":377},"Emitted when the activator receives focus.",{"name":1139,"signature":1122,"description":1140,"note":377,"demo":377},"hidden","Emitted once the options surface has finished closing.",{"name":1142,"signature":1122,"description":1143,"note":377,"demo":377},"hide","Emitted as soon as the options surface starts to close.",{"name":1145,"signature":1122,"description":1146,"note":1147,"demo":456},"inactive","Emitted when focus moves outside the entire component after it was active.","React on this, not on `blur`. Focus legitimately moves into the panel while it is open; `inactive` fires when focus has left both the trigger and the panel.",{"name":1149,"signature":1130,"description":1150,"note":377,"demo":377},"input","Emitted on native input events from the search input.",{"name":620,"signature":1152,"description":1153,"note":377,"demo":377},"(text: string): void","Emitted when the user types a new value and confirms it (Enter key) while writing is enabled (i.e. `disableWriting` does not suppress the search input for the current surface).",{"name":1155,"signature":1122,"description":1156,"note":377,"demo":377},"show","Emitted as soon as the options surface starts to open (the popover, or the sheet on a phone).",{"name":491,"signature":1122,"description":1158,"note":377,"demo":377},"Emitted once the options surface is open and its open transition has finished.",{"name":1160,"signature":1161,"description":1162,"note":377,"demo":377},"update:modelValue","(value: any): void","Emitted with the next selection value whenever selection changes.",[1164,1168,1172,1176,1180,1183,1186],{"name":456,"type":1165,"description":1166,"note":1167,"demo":456},"BbSelectPopoverActivatorSlotProps","Replaces the default trigger element that opens the select popover.","Spread `props` onto the focusable element itself: the button inside a badge, not the badge around it. Label the trigger from your own state: `text` and `selectedOptions` resolve against loaded options, so with a provider they are empty until the panel first opens.",{"name":1169,"type":1170,"description":1171,"note":377,"demo":377},"empty","{ query: string; focus: () => void; error: unknown; }","Content shown when no options match the query or the list is empty. `error` is what the latest failed load threw, untouched (`null` when none).",{"name":577,"type":1173,"description":1174,"note":1175,"demo":559},"BbSelectPopoverPanelSlotProps","Content pinned to the bottom of the panel, below the options list. Rendered in both the desktop popover and the adaptive sheet.","Renders below the options list in the desktop popover and the mobile sheet alike. Your trigger is not a form field, so it has no clear button of its own; `clear` from this slot's scope gives people an explicit reset.",{"name":1177,"type":1178,"description":1179,"note":377,"demo":377},"group","BbSelectPopoverGroupSlotProps\u003CItem>","Replaces the default group header rendered above grouped options. Not called for rows with no group (`group-by` gives `null`\u002F`undefined`, known rows): they are listed without a header.",{"name":570,"type":1173,"description":1181,"note":1182,"demo":559},"Content pinned to the top of the panel, above the search field. Rendered in both the desktop popover and the adaptive sheet.","Renders above the search field. On a trigger with no label, a title here is often the only place the panel says what it is for.",{"name":1035,"type":1184,"description":1185,"note":377,"demo":377},"{ query: string; }","Content shown inside the options dropdown while items are loading.",{"name":1187,"type":1188,"description":1189,"note":377,"demo":377},"option","BbSelectPopoverOptionSlotProps\u003CItem, Known>","Replaces the default rendering of each option row in the dropdown. With `known-items` bound, a row the list has not brought yet is the known `{ value, label }` row, `known: true`: check `known` before reading an option field off `item`.",[],{"parts":1192,"states":1222},[1193,1196,1198,1201,1203,1205,1208,1210,1212,1215,1218,1220],{"name":1194,"description":1195},"root","The floating element — an invisible positioning wrapper; a `class` on the component lands here. No node on the phone sheet: style what you see with `panel`.",{"name":559,"description":1197},"The options surface you see — the popover's painted bubble on desktop, the sheet itself on a phone.",{"name":1199,"description":1200},"sheet","The bottom sheet the surface becomes on a phone (the `BbOffCanvas` root) — never the desktop surface. Applied after `panel`, so it wins a conflict there.",{"name":1149,"description":1202},"The search field.",{"name":528,"description":1204},"The ✕ that empties the search field.",{"name":1206,"description":1207},"list","The `role=\"listbox\"` node that holds the options. Virtualised: its height is written inline and its rows are positioned by the list, which limits what a layout utility can do there. The listbox's groups and the chips are not parts.",{"name":1187,"description":1209},"One listbox option — a broadcast resolved per option. Also takes a per-item function, called with the option's raw item.",{"name":1021,"description":1211},"An option's label — resolved with that option's states. A custom `#option` slot replaces it. Also takes a per-item function.",{"name":1213,"description":1214},"itemIcon","An option's prepend \u002F append icons (`itemProps`) — resolved with that option's states. Also takes a per-item function.",{"name":1216,"description":1217},"itemDescription","An option's second line (its description) — resolved with that option's states. A custom `#option` slot replaces it. Also takes a per-item function.",{"name":570,"description":1219},"The flyout's header band.",{"name":577,"description":1221},"The flyout's footer band.",[1223,1225,1228],{"name":964,"description":1224},"Per node, on `option` and its `item-*` parts: an option that is disabled.",{"name":1226,"description":1227},"open","Component-wide: the options surface is showing.",{"name":1229,"description":1230},"selected","Per node, on `option` and its `item-*` parts: a chosen option.",{"removed":1232,"renamed":1268},[1233,1242,1246,1248,1254,1257,1262,1265],{"name":1234,"surface":1235,"replacedBy":971,"hint":377,"since":1236,"migration":1237,"silent":898,"fix":1238},"allowWriting","prop","3.0.0-alpha.1","ai\u002Fguides\u002Fmigration\u002Fcomponents\u002Fbb-select-popover.md",{"kind":1239,"valueMap":1240},"invert",{"not-mobile":1241},"mobile",{"name":1243,"surface":1235,"replacedBy":377,"hint":377,"since":1236,"migration":1237,"silent":898,"fix":1244},"arrowPadding",{"kind":1245},"remove",{"name":860,"surface":1235,"replacedBy":967,"hint":377,"since":1236,"migration":1237,"silent":898,"fix":1247},{"kind":1239},{"name":1249,"surface":1235,"replacedBy":1000,"hint":377,"since":1250,"migration":1251,"silent":898,"fix":1252},"hasWarning","3.0.0-beta.26","ai\u002Fguides\u002Fmigration\u002Fv2-to-v3.md",{"kind":1253},"rename",{"name":1255,"surface":1235,"replacedBy":377,"hint":377,"since":1236,"migration":1237,"silent":898,"fix":1256},"hideArrow",{"kind":1245},{"name":1258,"surface":1259,"replacedBy":1169,"hint":377,"since":1260,"migration":1251,"silent":898,"fix":1261},"no-data","slot","3.0.0-beta.41",{"kind":1253},{"name":1263,"surface":1235,"replacedBy":976,"hint":377,"since":1260,"migration":1251,"silent":898,"fix":1264},"noDataText",{"kind":1253},{"name":1266,"surface":1235,"replacedBy":377,"hint":377,"since":1236,"migration":1237,"silent":898,"fix":1267},"showArrow",{"kind":1245},[1269,1272,1274,1276,1278],{"from":1234,"to":971,"surface":1235,"since":1236,"migration":1237,"fix":1270},{"kind":1239,"valueMap":1271},{"not-mobile":1241},{"from":860,"to":967,"surface":1235,"since":1236,"migration":1237,"fix":1273},{"kind":1239},{"from":1249,"to":1000,"surface":1235,"since":1250,"migration":1251,"fix":1275},{"kind":1253},{"from":1258,"to":1169,"surface":1259,"since":1260,"migration":1251,"fix":1277},{"kind":1253},{"from":1263,"to":976,"surface":1235,"since":1260,"migration":1251,"fix":1279},{"kind":1253},[1281,1293,1304,1314,1323,1332,1342,1352],{"id":145,"firstName":1282,"lastName":1283,"fullName":1284,"initials":1285,"email":1286,"role":1287,"team":1288,"jobTitle":1289,"avatar":1290,"photo":1291,"active":898,"joinedAt":1292},"Lukas","Brandt","Lukas Brandt","LB","lukas.brandt@vantera.io","Admin","Engineering","Engineering Manager","data:image\u002Fsvg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2296%22%20height%3D%2296%22%20viewBox%3D%220%200%2096%2096%22%3E%3Crect%20width%3D%2296%22%20height%3D%2296%22%20fill%3D%22%23db2777%22%2F%3E%3Ctext%20x%3D%2248%22%20y%3D%2249%22%20fill%3D%22%23ffffff%22%20font-family%3D%22ui-sans-serif%2C%20system-ui%2C%20sans-serif%22%20font-size%3D%2238%22%20font-weight%3D%22600%22%20text-anchor%3D%22middle%22%20dominant-baseline%3D%22central%22%3ELB%3C%2Ftext%3E%3C%2Fsvg%3E","\u002Fdemo\u002Fportraits\u002Fphoto-1507003211169-0a1dd7228f2d.jpg","2019-09-16",{"id":177,"firstName":1294,"lastName":1295,"fullName":1296,"initials":1297,"email":1298,"role":1299,"team":1288,"jobTitle":1300,"avatar":1301,"photo":1302,"active":898,"joinedAt":1303},"Amara","Okonkwo","Amara Okonkwo","AO","amara.okonkwo@vantera.io","Developer","Staff Engineer","data:image\u002Fsvg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2296%22%20height%3D%2296%22%20viewBox%3D%220%200%2096%2096%22%3E%3Crect%20width%3D%2296%22%20height%3D%2296%22%20fill%3D%22%23ea580c%22%2F%3E%3Ctext%20x%3D%2248%22%20y%3D%2249%22%20fill%3D%22%23ffffff%22%20font-family%3D%22ui-sans-serif%2C%20system-ui%2C%20sans-serif%22%20font-size%3D%2238%22%20font-weight%3D%22600%22%20text-anchor%3D%22middle%22%20dominant-baseline%3D%22central%22%3EAO%3C%2Ftext%3E%3C%2Fsvg%3E","\u002Fdemo\u002Fportraits\u002Fphoto-1544005313-94ddf0286df2.jpg","2020-05-25",{"id":181,"firstName":1305,"lastName":1306,"fullName":1307,"initials":1308,"email":1309,"role":1299,"team":1288,"jobTitle":1310,"avatar":1311,"photo":1312,"active":898,"joinedAt":1313},"Hugo","Ferreira","Hugo Ferreira","HF","hugo.ferreira@vantera.io","Backend Engineer","data:image\u002Fsvg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2296%22%20height%3D%2296%22%20viewBox%3D%220%200%2096%2096%22%3E%3Crect%20width%3D%2296%22%20height%3D%2296%22%20fill%3D%22%23ca8a04%22%2F%3E%3Ctext%20x%3D%2248%22%20y%3D%2249%22%20fill%3D%22%23ffffff%22%20font-family%3D%22ui-sans-serif%2C%20system-ui%2C%20sans-serif%22%20font-size%3D%2238%22%20font-weight%3D%22600%22%20text-anchor%3D%22middle%22%20dominant-baseline%3D%22central%22%3EHF%3C%2Ftext%3E%3C%2Fsvg%3E","\u002Fdemo\u002Fportraits\u002Fphoto-1500648767791-00dcc994a43e.jpg","2020-11-02",{"id":233,"firstName":1315,"lastName":1316,"fullName":1317,"initials":1318,"email":1319,"role":1299,"team":1288,"jobTitle":1320,"avatar":1321,"photo":377,"active":898,"joinedAt":1322},"Idris","Bello","Idris Bello","IB","idris.bello@vantera.io","Frontend Engineer","data:image\u002Fsvg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2296%22%20height%3D%2296%22%20viewBox%3D%220%200%2096%2096%22%3E%3Crect%20width%3D%2296%22%20height%3D%2296%22%20fill%3D%22%234f46e5%22%2F%3E%3Ctext%20x%3D%2248%22%20y%3D%2249%22%20fill%3D%22%23ffffff%22%20font-family%3D%22ui-sans-serif%2C%20system-ui%2C%20sans-serif%22%20font-size%3D%2238%22%20font-weight%3D%22600%22%20text-anchor%3D%22middle%22%20dominant-baseline%3D%22central%22%3EIB%3C%2Ftext%3E%3C%2Fsvg%3E","2021-08-30",{"id":241,"firstName":1324,"lastName":1325,"fullName":1326,"initials":1327,"email":1328,"role":1299,"team":1288,"jobTitle":1329,"avatar":1330,"photo":377,"active":919,"joinedAt":1331},"Tomas","Delgado","Tomas Delgado","TD","tomas.delgado@vantera.io","Platform Engineer","data:image\u002Fsvg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2296%22%20height%3D%2296%22%20viewBox%3D%220%200%2096%2096%22%3E%3Crect%20width%3D%2296%22%20height%3D%2296%22%20fill%3D%22%237c3aed%22%2F%3E%3Ctext%20x%3D%2248%22%20y%3D%2249%22%20fill%3D%22%23ffffff%22%20font-family%3D%22ui-sans-serif%2C%20system-ui%2C%20sans-serif%22%20font-size%3D%2238%22%20font-weight%3D%22600%22%20text-anchor%3D%22middle%22%20dominant-baseline%3D%22central%22%3ETD%3C%2Ftext%3E%3C%2Fsvg%3E","2021-11-22",{"id":1333,"firstName":1334,"lastName":1335,"fullName":1336,"initials":1337,"email":1338,"role":1299,"team":1288,"jobTitle":1339,"avatar":1340,"photo":377,"active":898,"joinedAt":1341},14,"Mateusz","Kowalski","Mateusz Kowalski","MK","mateusz.kowalski@vantera.io","Infrastructure Engineer","data:image\u002Fsvg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2296%22%20height%3D%2296%22%20viewBox%3D%220%200%2096%2096%22%3E%3Crect%20width%3D%2296%22%20height%3D%2296%22%20fill%3D%22%23ea580c%22%2F%3E%3Ctext%20x%3D%2248%22%20y%3D%2249%22%20fill%3D%22%23ffffff%22%20font-family%3D%22ui-sans-serif%2C%20system-ui%2C%20sans-serif%22%20font-size%3D%2238%22%20font-weight%3D%22600%22%20text-anchor%3D%22middle%22%20dominant-baseline%3D%22central%22%3EMK%3C%2Ftext%3E%3C%2Fsvg%3E","2022-05-30",{"id":1343,"firstName":1344,"lastName":1345,"fullName":1346,"initials":1347,"email":1348,"role":1299,"team":1288,"jobTitle":1349,"avatar":1350,"photo":377,"active":919,"joinedAt":1351},18,"Kwame","Mensah","Kwame Mensah","KM","kwame.mensah@vantera.io","Mobile Engineer","data:image\u002Fsvg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2296%22%20height%3D%2296%22%20viewBox%3D%220%200%2096%2096%22%3E%3Crect%20width%3D%2296%22%20height%3D%2296%22%20fill%3D%22%230284c7%22%2F%3E%3Ctext%20x%3D%2248%22%20y%3D%2249%22%20fill%3D%22%23ffffff%22%20font-family%3D%22ui-sans-serif%2C%20system-ui%2C%20sans-serif%22%20font-size%3D%2238%22%20font-weight%3D%22600%22%20text-anchor%3D%22middle%22%20dominant-baseline%3D%22central%22%3EKM%3C%2Ftext%3E%3C%2Fsvg%3E","2023-01-23",{"id":1353,"firstName":1354,"lastName":1355,"fullName":1356,"initials":1357,"email":1358,"role":1299,"team":1288,"jobTitle":1359,"avatar":1360,"photo":377,"active":898,"joinedAt":1361},20,"Andrei","Popescu","Andrei Popescu","AP","andrei.popescu@vantera.io","QA Engineer","data:image\u002Fsvg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2296%22%20height%3D%2296%22%20viewBox%3D%220%200%2096%2096%22%3E%3Crect%20width%3D%2296%22%20height%3D%2296%22%20fill%3D%22%232563eb%22%2F%3E%3Ctext%20x%3D%2248%22%20y%3D%2249%22%20fill%3D%22%23ffffff%22%20font-family%3D%22ui-sans-serif%2C%20system-ui%2C%20sans-serif%22%20font-size%3D%2238%22%20font-weight%3D%22600%22%20text-anchor%3D%22middle%22%20dominant-baseline%3D%22central%22%3EAP%3C%2Ftext%3E%3C%2Fsvg%3E","2023-06-12",1793055144228]