[{"data":1,"prerenderedAt":587},["ShallowReactive",2],{"locale-alternates":3,"docs-nav-en":124,"api-BbDialog":352,"page-en-\u002Fcomponents\u002Fbb-dialog\u002Fapi":371},{"\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-checkbox":20,"\u002Fen\u002Fcomponents\u002Fbb-checkbox":21,"\u002Fit\u002Fcomponenti\u002Fbb-checkbox-group":22,"\u002Fen\u002Fcomponents\u002Fbb-checkbox-group":23,"\u002Fit\u002Fcomponenti\u002Fbb-collapsible":24,"\u002Fen\u002Fcomponents\u002Fbb-collapsible":25,"\u002Fit\u002Fcomponenti\u002Fbb-color-input":26,"\u002Fen\u002Fcomponents\u002Fbb-color-input":27,"\u002Fit\u002Fcomponenti\u002Fbb-color-palette":28,"\u002Fen\u002Fcomponents\u002Fbb-color-palette":29,"\u002Fit\u002Fcomponenti\u002Fbb-confirm":30,"\u002Fen\u002Fcomponents\u002Fbb-confirm":31,"\u002Fit\u002Fcomponenti\u002Fbb-date-picker":32,"\u002Fen\u002Fcomponents\u002Fbb-date-picker":33,"\u002Fit\u002Fcomponenti\u002Fbb-date-picker-input":34,"\u002Fen\u002Fcomponents\u002Fbb-date-picker-input":35,"\u002Fit\u002Fcomponenti\u002Fbb-dialog":36,"\u002Fen\u002Fcomponents\u002Fbb-dialog":37,"\u002Fit\u002Fcomponenti\u002Fbb-dropdown":38,"\u002Fen\u002Fcomponents\u002Fbb-dropdown":39,"\u002Fit\u002Fcomponenti\u002Fbb-dropdown-button":40,"\u002Fen\u002Fcomponents\u002Fbb-dropdown-button":41,"\u002Fit\u002Fcomponenti\u002Fbb-dropzone":42,"\u002Fen\u002Fcomponents\u002Fbb-dropzone":43,"\u002Fit\u002Fcomponenti\u002Fbb-form":44,"\u002Fen\u002Fcomponents\u002Fbb-form":45,"\u002Fit\u002Fcomponenti\u002Fbb-icon":46,"\u002Fen\u002Fcomponents\u002Fbb-icon":47,"\u002Fit\u002Fcomponenti\u002Fbb-indicator":48,"\u002Fen\u002Fcomponents\u002Fbb-indicator":49,"\u002Fit\u002Fcomponenti\u002Fbb-number-input":50,"\u002Fen\u002Fcomponents\u002Fbb-number-input":51,"\u002Fit\u002Fcomponenti\u002Fbb-off-canvas":52,"\u002Fen\u002Fcomponents\u002Fbb-off-canvas":53,"\u002Fit\u002Fcomponenti\u002Fbb-pagination":54,"\u002Fen\u002Fcomponents\u002Fbb-pagination":55,"\u002Fit\u002Fcomponenti\u002Fbb-popover":56,"\u002Fen\u002Fcomponents\u002Fbb-popover":57,"\u002Fit\u002Fcomponenti\u002Fbb-progress":58,"\u002Fen\u002Fcomponents\u002Fbb-progress":59,"\u002Fit\u002Fcomponenti\u002Fbb-radio":60,"\u002Fen\u002Fcomponents\u002Fbb-radio":61,"\u002Fit\u002Fcomponenti\u002Fbb-radio-group":62,"\u002Fen\u002Fcomponents\u002Fbb-radio-group":63,"\u002Fit\u002Fcomponenti\u002Fbb-rating":64,"\u002Fen\u002Fcomponents\u002Fbb-rating":65,"\u002Fit\u002Fcomponenti\u002Fbb-select":66,"\u002Fen\u002Fcomponents\u002Fbb-select":67,"\u002Fit\u002Fcomponenti\u002Fbb-select-popover":68,"\u002Fen\u002Fcomponents\u002Fbb-select-popover":69,"\u002Fit\u002Fcomponenti\u002Fbb-slider":70,"\u002Fen\u002Fcomponents\u002Fbb-slider":71,"\u002Fit\u002Fcomponenti\u002Fbb-smooth-height":72,"\u002Fen\u002Fcomponents\u002Fbb-smooth-height":73,"\u002Fit\u002Fcomponenti\u002Fbb-spinner":74,"\u002Fen\u002Fcomponents\u002Fbb-spinner":75,"\u002Fit\u002Fcomponenti\u002Fbb-switch":76,"\u002Fen\u002Fcomponents\u002Fbb-switch":77,"\u002Fit\u002Fcomponenti\u002Fbb-switch-group":78,"\u002Fen\u002Fcomponents\u002Fbb-switch-group":79,"\u002Fit\u002Fcomponenti\u002Fbb-table":80,"\u002Fen\u002Fcomponents\u002Fbb-table":81,"\u002Fit\u002Fcomponenti\u002Fbb-tabs":82,"\u002Fen\u002Fcomponents\u002Fbb-tabs":83,"\u002Fit\u002Fcomponenti\u002Fbb-tag":84,"\u002Fen\u002Fcomponents\u002Fbb-tag":85,"\u002Fit\u002Fcomponenti\u002Fbb-text-input":86,"\u002Fen\u002Fcomponents\u002Fbb-text-input":87,"\u002Fit\u002Fcomponenti\u002Fbb-textarea":88,"\u002Fen\u002Fcomponents\u002Fbb-textarea":89,"\u002Fit\u002Fcomponenti\u002Fbb-time-picker":90,"\u002Fen\u002Fcomponents\u002Fbb-time-picker":91,"\u002Fit\u002Fcomponenti\u002Fbb-time-picker-input":92,"\u002Fen\u002Fcomponents\u002Fbb-time-picker-input":93,"\u002Fit\u002Fcomponenti\u002Fbb-toast":94,"\u002Fen\u002Fcomponents\u002Fbb-toast":95,"\u002Fit\u002Fcomponenti\u002Fbb-tooltip":96,"\u002Fen\u002Fcomponents\u002Fbb-tooltip":97,"\u002Fit\u002Fcomponenti\u002Fbb-tree":98,"\u002Fen\u002Fcomponents\u002Fbb-tree":99,"\u002Fit\u002Fguide\u002Fai-agents":100,"\u002Fen\u002Fguides\u002Fai-agents":101,"\u002Fit\u002Fguide\u002Fcoherence":102,"\u002Fen\u002Fguides\u002Fcoherence":103,"\u002Fit\u002Fguide\u002Fdesign-language":104,"\u002Fen\u002Fguides\u002Fdesign-language":105,"\u002Fit\u002Fguide\u002Fdesign-tokens":106,"\u002Fen\u002Fguides\u002Fdesign-tokens":107,"\u002Fit\u002Fguide\u002Ffetching-data":108,"\u002Fen\u002Fguides\u002Ffetching-data":109,"\u002Fit\u002Fguide\u002Ficons":110,"\u002Fen\u002Fguides\u002Ficons":111,"\u002Fit\u002Fguide\u002Finertia":112,"\u002Fen\u002Fguides\u002Finertia":113,"\u002Fit\u002Fguide\u002Finstallation":114,"\u002Fen\u002Fguides\u002Finstallation":115,"\u002Fit\u002Fguide\u002Fmigration":116,"\u002Fen\u002Fguides\u002Fmigration":117,"\u002Fit\u002Fguide\u002Fnuxt":118,"\u002Fen\u002Fguides\u002Fnuxt":119,"\u002Fit\u002Fguide\u002Foptions-and-items":120,"\u002Fen\u002Fguides\u002Foptions-and-items":121,"\u002Fit\u002Fguide\u002Fvalidated-forms":122,"\u002Fen\u002Fguides\u002Fvalidated-forms":123},"\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-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-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\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\u002Fvalidated-forms","\u002Fit\u002Fguide\u002Fvalidated-forms",[125,136,145,166,178,220,253,286,307,328,340,346],{"label":126,"entries":127},"Getting started",[128,132],{"title":129,"path":130,"order":131},"Installation","\u002Fguides\u002Finstallation",1,{"title":133,"path":134,"order":135},"Migrating from v2","\u002Fguides\u002Fmigration",2,{"label":137,"entries":138},"Design system",[139,142],{"title":140,"path":141,"order":131},"Design tokens","\u002Fguides\u002Fdesign-tokens",{"title":143,"path":144,"order":135},"Design language","\u002Fguides\u002Fdesign-language",{"label":146,"entries":147},"Playbooks",[148,151,154,158,162],{"title":149,"path":150,"order":131},"Options and items","\u002Fguides\u002Foptions-and-items",{"title":152,"path":153,"order":135},"Fetching data","\u002Fguides\u002Ffetching-data",{"title":155,"path":156,"order":157},"Coherence","\u002Fguides\u002Fcoherence",3,{"title":159,"path":160,"order":161},"Validated forms","\u002Fguides\u002Fvalidated-forms",4,{"title":163,"path":164,"order":165},"Icons","\u002Fguides\u002Ficons",5,{"label":167,"entries":168},"Ecosystem",[169,172,175],{"title":170,"path":171,"order":131},"Inertia and Laravel","\u002Fguides\u002Finertia",{"title":173,"path":174,"order":135},"Nuxt","\u002Fguides\u002Fnuxt",{"title":176,"path":177,"order":157},"AI agents","\u002Fguides\u002Fai-agents",{"label":179,"entries":180},"Inputs",[181,184,187,190,193,196,200,204,208,212,216],{"title":182,"path":183,"component":182,"order":131},"BbBaseButton","\u002Fcomponents\u002Fbb-base-button",{"title":185,"path":186,"component":185,"order":135},"BbButton","\u002Fcomponents\u002Fbb-button",{"title":188,"path":189,"component":188,"order":157},"BbColorInput","\u002Fcomponents\u002Fbb-color-input",{"title":191,"path":192,"component":191,"order":161},"BbDatePickerInput","\u002Fcomponents\u002Fbb-date-picker-input",{"title":194,"path":195,"component":194,"order":165},"BbDropzone","\u002Fcomponents\u002Fbb-dropzone",{"title":197,"path":198,"component":197,"order":199},"BbForm","\u002Fcomponents\u002Fbb-form",6,{"title":201,"path":202,"component":201,"order":203},"BbNumberInput","\u002Fcomponents\u002Fbb-number-input",7,{"title":205,"path":206,"component":205,"order":207},"BbTag","\u002Fcomponents\u002Fbb-tag",8,{"title":209,"path":210,"component":209,"order":211},"BbTextarea","\u002Fcomponents\u002Fbb-textarea",9,{"title":213,"path":214,"component":213,"order":215},"BbTextInput","\u002Fcomponents\u002Fbb-text-input",10,{"title":217,"path":218,"component":217,"order":219},"BbTimePickerInput","\u002Fcomponents\u002Fbb-time-picker-input",11,{"label":221,"entries":222},"Selection",[223,226,229,232,235,238,241,244,247,250],{"title":224,"path":225,"component":224,"order":131},"BbCheckbox","\u002Fcomponents\u002Fbb-checkbox",{"title":227,"path":228,"component":227,"order":135},"BbCheckboxGroup","\u002Fcomponents\u002Fbb-checkbox-group",{"title":230,"path":231,"component":230,"order":157},"BbRadio","\u002Fcomponents\u002Fbb-radio",{"title":233,"path":234,"component":233,"order":161},"BbRadioGroup","\u002Fcomponents\u002Fbb-radio-group",{"title":236,"path":237,"component":236,"order":165},"BbRating","\u002Fcomponents\u002Fbb-rating",{"title":239,"path":240,"component":239,"order":199},"BbSelect","\u002Fcomponents\u002Fbb-select",{"title":242,"path":243,"component":242,"order":203},"BbSelectPopover","\u002Fcomponents\u002Fbb-select-popover",{"title":245,"path":246,"component":245,"order":207},"BbSlider","\u002Fcomponents\u002Fbb-slider",{"title":248,"path":249,"component":248,"order":211},"BbSwitch","\u002Fcomponents\u002Fbb-switch",{"title":251,"path":252,"component":251,"order":215},"BbSwitchGroup","\u002Fcomponents\u002Fbb-switch-group",{"label":254,"entries":255},"Overlay",[256,259,262,265,268,271,274,277,280,283],{"title":257,"path":258,"component":257,"order":131},"BbColorPalette","\u002Fcomponents\u002Fbb-color-palette",{"title":260,"path":261,"component":260,"order":135},"BbConfirm","\u002Fcomponents\u002Fbb-confirm",{"title":263,"path":264,"component":263,"order":157},"BbDatePicker","\u002Fcomponents\u002Fbb-date-picker",{"title":266,"path":267,"component":266,"order":161},"BbDialog","\u002Fcomponents\u002Fbb-dialog",{"title":269,"path":270,"component":269,"order":165},"BbDropdown","\u002Fcomponents\u002Fbb-dropdown",{"title":272,"path":273,"component":272,"order":199},"BbDropdownButton","\u002Fcomponents\u002Fbb-dropdown-button",{"title":275,"path":276,"component":275,"order":203},"BbOffCanvas","\u002Fcomponents\u002Fbb-off-canvas",{"title":278,"path":279,"component":278,"order":207},"BbPopover","\u002Fcomponents\u002Fbb-popover",{"title":281,"path":282,"component":281,"order":211},"BbTimePicker","\u002Fcomponents\u002Fbb-time-picker",{"title":284,"path":285,"component":284,"order":215},"BbTooltip","\u002Fcomponents\u002Fbb-tooltip",{"label":287,"entries":288},"Navigation",[289,292,295,298,301,304],{"title":290,"path":291,"component":290,"order":131},"BbAccordion","\u002Fcomponents\u002Fbb-accordion",{"title":293,"path":294,"component":293,"order":135},"BbBreadcrumbs","\u002Fcomponents\u002Fbb-breadcrumbs",{"title":296,"path":297,"component":296,"order":157},"BbCollapsible","\u002Fcomponents\u002Fbb-collapsible",{"title":299,"path":300,"component":299,"order":161},"BbPagination","\u002Fcomponents\u002Fbb-pagination",{"title":302,"path":303,"component":302,"order":165},"BbTabs","\u002Fcomponents\u002Fbb-tabs",{"title":305,"path":306,"component":305,"order":199},"BbTree","\u002Fcomponents\u002Fbb-tree",{"label":308,"entries":309},"Feedback",[310,313,316,319,322,325],{"title":311,"path":312,"component":311,"order":131},"BbAlert","\u002Fcomponents\u002Fbb-alert",{"title":314,"path":315,"component":314,"order":135},"BbBadge","\u002Fcomponents\u002Fbb-badge",{"title":317,"path":318,"component":317,"order":157},"BbIndicator","\u002Fcomponents\u002Fbb-indicator",{"title":320,"path":321,"component":320,"order":161},"BbProgress","\u002Fcomponents\u002Fbb-progress",{"title":323,"path":324,"component":323,"order":165},"BbSpinner","\u002Fcomponents\u002Fbb-spinner",{"title":326,"path":327,"component":326,"order":199},"BbToast","\u002Fcomponents\u002Fbb-toast",{"label":329,"entries":330},"Data Display",[331,334,337],{"title":332,"path":333,"component":332,"order":131},"BbAvatar","\u002Fcomponents\u002Fbb-avatar",{"title":335,"path":336,"component":335,"order":135},"BbIcon","\u002Fcomponents\u002Fbb-icon",{"title":338,"path":339,"component":338,"order":157},"BbTable","\u002Fcomponents\u002Fbb-table",{"label":341,"entries":342},"Layout & Utility",[343],{"title":344,"path":345,"component":344,"order":131},"BbSmoothHeight","\u002Fcomponents\u002Fbb-smooth-height",{"label":347,"entries":348},"Other",[349],{"title":350,"path":351,"component":350,"order":131},"BbAsterisk","\u002Fcomponents\u002Fbb-asterisk",{"name":266,"slug":353,"group":254,"description":354,"entrypoint":355,"docs":356,"props":359,"models":484,"events":487,"slots":505,"exposed":527,"pt":528,"validated":371,"migration":556},"bb-dialog","Presents modal dialogs for focused user interactions.","bitboss-ui",{"contract":357,"source":358},"ai\u002FBbDialog.md","ai\u002Fsource\u002FBbDialog.md",[360,368,373,379,384,389,395,399,402,407,411,415,418,420,422,424,426,428,430,432,434,436,438,440,442,444,446,448,450,452,454,456,458,460,462,464,470,474,478],{"name":361,"type":362,"required":363,"default":364,"description":365,"note":366,"demo":367},"adaptive","boolean | undefined",false,"`config.adaptive` (`true`)","Adapt the surface to the viewport: render as a `BbOffCanvas` drawer on\nmobile instead of a centered dialog. The surface is resolved when the\ndialog opens and stays fixed for that session: resizing across the mobile\nbreakpoint while open never swaps it.\n\nWhen unset, falls back to the global `config.adaptive`.","Three-state on purpose: unset falls back to `config.adaptive`, which ships on, so most projects never write it. The surface is latched when the dialog opens, so a resize mid-session never swaps a modal for a sheet.","flow",{"name":369,"type":370,"required":363,"default":371,"description":372,"note":371,"demo":371},"description","string | undefined",null,"One short line under the title, in the header — the shadcn\n`DialogDescription` shape: same block as the title, lower hierarchy,\nmuted.\n\nIt is also what `aria-describedby` points at. That wiring was dropped in\nv3 along with the old `description` prop, on the reasoning that pointing\nit at arbitrary body content would read whole forms aloud — true, and the\nreason it aims at THIS element only. Keep it to a sentence; anything\nlonger belongs in the body.",{"name":374,"type":362,"required":363,"default":375,"description":376,"note":377,"demo":378},"disabled","false","Disable EVERY user-initiated dismissal: backdrop click, Escape AND the\nheader close (×) button (denied attempts play the deny nudge). Use it\nwhile an operation is in flight (e.g. a save) so the dialog cannot be\ndismissed mid-work. Compare `persistent`, which blocks backdrop\u002FEscape\nbut leaves the × working. Programmatic close (v-model) is still allowed.","It guards dismissal and nothing else — the fields and buttons inside stay live, so disable them yourself while the work is in flight.","dismissal",{"name":380,"type":362,"required":363,"default":375,"description":381,"note":382,"demo":383},"eager","Render dialog content immediately instead of waiting for the first open.","Reach for it only when something has to read or measure the body before it has ever been open — a chart, a test, an SSR snapshot. Leaving it off is what keeps a page with many dialogs cheap.","forms",{"name":385,"type":370,"required":363,"default":371,"description":386,"note":387,"demo":388},"focusTarget","CSS selector of the element to focus after opening. Defaults to the first tabbable element.","Chooses where focus starts, never whether it is contained: `showModal()` traps focus and returns it to the trigger either way. Point it at the primary action in a dialog whose real content is its footer.","focus",{"name":390,"type":391,"required":363,"default":371,"description":392,"note":393,"demo":394},"fullscreen","boolean | \"mobile\" | undefined","Display the dialog fullscreen. Use `'mobile'` to restrict fullscreen to small devices.","Fills the viewport minus the page margin (20px, 14px on mobile) — deliberately not edge to edge. It overrides `size` rather than combining with it.","layout",{"name":396,"type":362,"required":363,"default":375,"description":397,"note":398,"demo":378},"hideClose","Hide the default close (×) button. The button is shown by default; set this\nto remove it (e.g. for a `persistent` dialog you don't want dismissible —\nthe × otherwise still closes a persistent dialog).","Inverted from v2's `show-close`, which defaulted to `true`. A leftover `:show-close=\"false\"` type-checks, falls through to `$attrs`, and the × comes back. Removing it also removes the last one-click way out, so the footer then owes the user a visible Cancel.",{"name":400,"type":362,"required":363,"default":375,"description":401,"note":371,"demo":371},"modelValue","Used by v-model to open \u002F close the dialog. A dialog with no `v-model`\nstarts closed.",{"name":403,"type":404,"required":363,"default":371,"description":405,"note":406,"demo":367},"offCanvasProps","Partial\u003CBbOffCanvasProps> | undefined","Props for the phone sheet. A `pt` inside it, object or colon keys, styles\nonly that sheet.\n\nOverrides merged over the offcanvas (mobile) surface's props. The drawer\ndefaults to a bottom, draggable, content-sized sheet\n(`side: 'bottom'`, `draggable: true`, `size: 'auto'`); use this to\noverride those, set other drawer-only options (`stackGap`), or override\nshared props whose meaning differs on the drawer (`stack`). Ignored on the\ndesktop dialog surface.\n\nA `pt` inside it styles ONLY the sheet, in `BbOffCanvas`'s part words\n(`root`, `header`, `title`, `description`, `content`, `footer`, `close`;\nstate `open`), object (`{ pt: { header: '…' } }`) or colon keys\n(`{ 'pt:header': '…' }`) alike. It merges after what this component\nforwards to its sheet, so it wins a conflict and drops nothing — see the\npassthrough guide § Inside the sheet.","Merged last, so it wins over both the forwarded dialog props and the sheet's own defaults. The drawer's edge prop is `side` — `direction` was its v2 name. Spelled `canvas-props` in v2.",{"name":408,"type":362,"required":363,"default":375,"description":409,"note":410,"demo":378},"persistent","Prevent closing via outside clicks or Escape key. The header close (×)\nbutton STILL closes a persistent dialog — that is the documented escape\nhatch; combine with `hideClose` to remove it, or use `disabled` to block\nevery dismissal. Programmatic close is still allowed.","Blocks the backdrop and Escape only. The × still closes, by design, so `persistent` alone never makes a dialog unresolvable — pair it with `hideClose` when the choice must be made explicitly.",{"name":412,"type":413,"required":363,"default":371,"description":414,"note":371,"demo":371},"pt","PtMap\u003CBbDialogPtPart, BbDialogPtState> | undefined","Passthrough, object form: the same keys as the `pt:*` attributes\nwithout the prefix. See the `pt:\u003Cpart>` row.",{"name":416,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:close","PtValue | undefined",{"name":419,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:close:fullscreen",{"name":421,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:close:open",{"name":423,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:content",{"name":425,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:content:fullscreen",{"name":427,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:content:open",{"name":429,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:description",{"name":431,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:description:fullscreen",{"name":433,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:description:open",{"name":435,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:footer",{"name":437,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:footer:fullscreen",{"name":439,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:footer:open",{"name":441,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:header",{"name":443,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:header:fullscreen",{"name":445,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:header:open",{"name":447,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:root",{"name":449,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:root:fullscreen",{"name":451,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:root:open",{"name":453,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:sheet",{"name":455,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:sheet:fullscreen",{"name":457,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:sheet:open",{"name":459,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:title",{"name":461,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:title:fullscreen",{"name":463,"type":417,"required":363,"default":371,"description":371,"note":371,"demo":371},"pt:title:open",{"name":465,"type":466,"required":363,"default":467,"description":468,"note":469,"demo":394},"size","Responsive\u003CNonNullable\u003Cnumber | ({ size?: any; } & string) | keyof BbDialogSizes | undefined>> | undefined","\"sm\"","Controls the maximum width of the dialog. Accepts named presets from `'xs'` to `'2xl'`,\na custom CSS width string, or a numeric pixel value — or a per-breakpoint\nmap (e.g. `{ default: 'sm', lg: 'lg' }`) to switch width responsively.","A maximum width; the height always hugs the content. The v3 presets are narrower than v2's `{ sm: 384, md: 652, lg: 896 }` and nothing warns — pin the old numbers with `dialogDefaultSizes` if a layout assumed them. Only the per-breakpoint map form re-resolves on a resize.",{"name":471,"type":370,"required":363,"default":371,"description":472,"note":473,"demo":367},"stack","Name of the stack this dialog belongs to. Dialogs sharing the same `stack`\nvalue replace one another: only the most recently opened stays visible while\nthe others in the stack are hidden beneath it. Dialogs in different stacks —\nor with no `stack` — never affect each other and remain fully visible.","Members of a dialog stack replace one another. The identically named prop on `BbOffCanvas` does the opposite — parents step back and peek — which matters because an adaptive dialog forwards this value to its mobile sheet.",{"name":475,"type":370,"required":363,"default":371,"description":476,"note":477,"demo":394},"title","Title text announced to assistive technologies. If omitted, no header is\nrendered (unless a `header` slot is supplied) and accessibility must be\nhandled manually.","The accessible name, not just a heading: it wires `aria-labelledby`. Drop it and the header goes too, and naming the dialog becomes your job.",{"name":479,"type":480,"required":363,"default":481,"description":482,"note":483,"demo":383},"transitionDuration","number | undefined","250","Controls the duration of the open and close animations.","Times both the animation and when `hidden` fires. Reopening inside that window keeps the dialog open rather than snapping it shut. Default is 250ms; v2 used 300.",[485],{"name":400,"type":362,"note":486,"demo":383},"The only way to open a dialog. There is no exposed `open()`, and toggling the model back from `@hide` to veto a close is not the way to keep it open — that is what `persistent` is for.",[488,492,495,499,502],{"name":489,"signature":490,"description":371,"note":491,"demo":383},"hidden","(event: \"hidden\"): void","Fires after the close transition, `transitionDuration` later than `hide`. The place to tear down expensive content, not to cancel a close.",{"name":493,"signature":494,"description":371,"note":371,"demo":371},"hide","(event: \"hide\"): void",{"name":496,"signature":497,"description":371,"note":498,"demo":383},"show","(event: \"show\"): void","The hook for seeding a draft: it fires as the model turns true, before the open transition, so the fields render already populated.",{"name":500,"signature":501,"description":371,"note":371,"demo":371},"shown","(event: \"shown\"): void",{"name":503,"signature":504,"description":371,"note":371,"demo":371},"update:modelValue","(event: \"update:modelValue\", value: boolean): void",[506,511,514,519,524],{"name":507,"type":508,"description":509,"note":510,"demo":394},"default","BbDialogDefaultSlotProps","Primary body content of the dialog, rendered in the scrollable body area.","The only region that scrolls, and it renders lazily — nothing inside exists until the first open unless you set `eager`.",{"name":369,"type":512,"description":513,"note":371,"demo":371},"BbDialogDescriptionSlotProps","Replaces the description text under the title. Renders the header even\nwhen `title` and `description` are unset — a slotted description is a\ndescription, the same rule `#title` follows.",{"name":515,"type":516,"description":517,"note":518,"demo":394},"footer","object","Content rendered in the dialog footer, below the body area. Typically used for action buttons.","Stays pinned while the body scrolls. One primary action, aligned to the end, and a Cancel that is never gated on validity.",{"name":520,"type":521,"description":522,"note":523,"demo":394},"header","BbDialogHeaderSlotProps","Replaces the entire dialog header section (title + close button) on both\nsurfaces — the desktop `\u003Cdialog>` and the mobile off-canvas. Because it\nreplaces the default close (✕), the slot owns closing: render your own\ncontrol wired to the `close` prop, and wire `titleId` onto your title\nelement to keep `aria-labelledby` intact.\n\nProviding this slot renders a header even when `title` is unset.\n\nLayout: the header container is a flex row (`justify-content:\nspace-between`), so your root element is a flex item and shrinks to its\ncontent by default — give it `flex: auto` (Tailwind `flex-1`) to fill the\nwidth, or it renders squeezed against the left edge.","Replaces the header on both surfaces, so it also replaces the ×: render your own control wired to `close`, and put `titleId` on your heading or `aria-labelledby` points at nothing. The header is a flex row, so give your root `flex-1` or it hugs the left edge. This is where a v2 `#close` or `#description` goes.",{"name":475,"type":525,"description":526,"note":371,"demo":371},"BbDialogTitleSlotProps","Replaces the default title text inside the header. Remains linked to the\ndialog through `aria-labelledby`. Providing this slot renders the header\neven when `title` is unset — a slotted title is a title.",[],{"parts":529,"states":550},[530,533,536,538,540,542,545,547],{"name":531,"description":532},"root","The `\u003Cdialog>` — the surface itself, so there is no separate `panel`. The backdrop is `::backdrop`: style it in CSS (`.bb-dialog::backdrop`), it has no node for `pt`.",{"name":534,"description":535},"sheet","The bottom sheet on the adaptive `surface=\"canvas\"` (the `BbOffCanvas` root) — never the desktop `\u003Cdialog>`. Applied after `root`, so it wins a conflict there.",{"name":520,"description":537},"The header band.",{"name":475,"description":539},"The title line inside the header. Not rendered when a `#header` slot replaces the header.",{"name":369,"description":541},"The description line inside the header. Not rendered when a `#header` slot replaces the header.",{"name":543,"description":544},"content","The scrolling body. It carries the body's padding (`--px`, `--py`, `--dialog-gap`), so `pt:content=\"px-8\"` or `[--py:20px]` sets it.",{"name":515,"description":546},"The footer band.",{"name":548,"description":549},"close","The ✕ — in the header, or floating when there is none.",[551,553],{"name":390,"description":552},"Component-wide: the dialog fills the viewport — always with `fullscreen`, and with `fullscreen=\"mobile\"` only while the viewport is a phone, so it can flip at runtime. Listed after `open`, so a `pt:root:fullscreen` entry wins a conflict with `pt:root:open` (drop an open-state ring or radius that a full-viewport surface cannot show). Forwarded to the sheet on the adaptive `surface=\"canvas\"`.",{"name":554,"description":555},"open","Component-wide: the dialog is open (follows `v-model`).",{"removed":557,"renamed":582},[558,565,569,572,575,578],{"name":559,"replacedBy":403,"since":560,"migration":561,"silent":562,"fix":563},"canvasProps","3.0.0-unreleased","ai\u002Fguides\u002Fmigration\u002Fcomponents\u002Fbb-dialog.md",true,{"kind":564},"rename",{"name":566,"replacedBy":371,"since":560,"migration":561,"silent":562,"fix":567},"compact",{"kind":568},"manual",{"name":570,"replacedBy":371,"since":560,"migration":561,"silent":562,"fix":571},"hideHeader",{"kind":568},{"name":573,"replacedBy":371,"since":560,"migration":561,"silent":562,"fix":574},"overlayClasses",{"kind":568},{"name":576,"replacedBy":371,"since":560,"migration":561,"silent":562,"fix":577},"panelClasses",{"kind":568},{"name":579,"replacedBy":396,"since":560,"migration":561,"silent":562,"fix":580},"showClose",{"kind":581},"invert",[583,585],{"from":559,"to":403,"since":560,"migration":561,"fix":584},{"kind":564},{"from":579,"to":396,"since":560,"migration":561,"fix":586},{"kind":581},1790062844505]