[{"data":1,"prerenderedAt":1561},["ShallowReactive",2],{"locale-alternates":3,"docs-nav-en":124,"api-none":352,"page-en-\u002Fguides\u002Fmigration":353},{"\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",null,{"id":354,"title":133,"body":355,"component":352,"description":1546,"extension":1547,"group":126,"meta":1548,"navigation":1381,"order":135,"path":134,"sections":1549,"seo":1558,"stem":1559,"__hash__":1560},"docs_en\u002Fguides\u002Fmigration.md",{"type":356,"value":357,"toc":1536},"minimark",[358,362,365,373,376,439,445,460,481,487,499,502,508,552,570,581,587,602,617,921,971,1015,1021,1028,1040,1050,1056,1059,1093,1484,1490,1496,1499,1518,1521,1532],[359,360,361],"p",{},"Most of a v2 → v3 upgrade is work the compiler does for you. With typed\ntemplates, renamed props, removed props and unregistered variants all fail\nloudly, component by component.",[359,363,364],{},"The part worth reading carefully is the other one: a set of boolean defaults\nflipped, two visual defaults changed, and neither the type-checker nor the\nconsole will mention it.",[366,367,369],"h2",{"id":368},"order",[370,371,372],"span",{},"Do it in this order",[359,374,375],{},"The order matters. Steps 1 and 2 have to land before anything renders correctly,\nand step 3 has to land before a visual review means anything.",[377,378,379,387,402,408,414,424],"ol",{},[380,381,382,386],"li",{},[383,384,385],"strong",{},"Swap the setup."," Install the build plugin and the runtime plugin. Nothing\nrenders correctly until this is done.",[380,388,389,392,393,397,398,401],{},[383,390,391],{},"Move your config."," Everything you passed to ",[394,395,396],"code",{},"useBbConfig().setConfig()","\nexcept ",[394,399,400],{},"locale"," now lives in the build-plugin options.",[380,403,404,407],{},[383,405,406],{},"Re-base your theme."," Token names and defaults changed, including the\nprimary colour itself.",[380,409,410,413],{},[383,411,412],{},"Fix what the compiler finds."," Renamed props, removed props, unregistered\nvariants. Work component by component.",[380,415,416,419,420,423],{},[383,417,418],{},"Audit what the compiler cannot find."," Untyped templates, ",[394,421,422],{},"v-bind","\nobjects, and behavioural flips are silent. Run the grep pass.",[380,425,426,429,430,433,434,438],{},[383,427,428],{},"Convert class overrides to variants."," A userland\n",[394,431,432],{},"class=\"bb-button--outline\""," keeps ",[435,436,437],"em",{},"working",", but the variant prop is typed\nand is the only form the registry validates.",[366,440,442],{"id":441},"plugin",[370,443,444],{},"The plugin pattern",[359,446,447,448,451,452,455,456,459],{},"v3 is a plugin, not a bag of exports. Two pieces are always required: a ",[383,449,450],{},"build\nplugin"," that generates the config, icon registry and typed variant lists, and a\n",[383,453,454],{},"runtime plugin"," that injects styles and registers the directives.\n",[457,458,129],"a",{"href":114}," covers the wiring for Vite, Nuxt and\nInertia.",[461,462,463],"warning",{},[359,464,465,466,469,470,473,474,477,478,480],{},"A hand-rolled ",[394,467,468],{},"provide('icons', …)"," is ",[383,471,472],{},"shadowed, not merged",", by the plugin's\nown registry. If your v2 app registered icons that way, they silently stop\nresolving. Move them into ",[394,475,476],{},"iconDir"," — see ",[457,479,163],{"href":110},".",[366,482,484],{"id":483},"config",[370,485,486],{},"Config moves to build time",[359,488,489,490,492,493,495,496,480],{},"Everything that used to go through ",[394,491,396],{}," is now a\nbuild-plugin option. Only ",[394,494,400],{}," stays runtime-editable, through\n",[394,497,498],{},"useBbConfig()",[359,500,501],{},"This is the change that makes the variant registries and the typed icon names\npossible: the plugin knows at build time what names exist, so an unregistered one\nis a compile error rather than an unstyled element.",[366,503,505],{"id":504},"tokens",[370,506,507],{},"Re-base your theme",[461,509,510,515,549],{},[359,511,512],{},[383,513,514],{},"Two visual defaults changed with no rename to grep for.",[516,517,518,536],"ul",{},[380,519,520,523,524,527,528,531,532,535],{},[394,521,522],{},"--bb-primary"," is now ",[383,525,526],{},"black"," (",[394,529,530],{},"rgb(0 0 0)","), not v2's blue\n(",[394,533,534],{},"rgb(37 29 255)","). If you never overrode primary because the blue suited you,\nyour whole app changes colour on upgrade. Set your brand colour explicitly.",[380,537,538,541,542,545,546,480],{},[394,539,540],{},"--bb-radius"," went from ",[394,543,544],{},"4px"," to ",[394,547,548],{},"8px",[359,550,551],{},"Six more tokens changed value without changing name, so they are invisible to a\nrename map and to every grep below.",[359,553,554,555,558,559,558,562,565,566,569],{},"The token layer also shrank — 91 properties, down from around 140 — and the old\n",[394,556,557],{},"--x-light"," \u002F ",[394,560,561],{},"--x-dark",[394,563,564],{},"--x"," triple is gone. One name per token; ",[394,567,568],{},".dark","\nre-declares only the knobs that change.",[359,571,572,573,575,576,580],{},"Re-declare your brand theme before you look at a single screen.\n",[457,574,140],{"href":106}," is the new architecture, and the\n",[457,577,579],{"href":578},"\u002Fen\u002Ftheme-builder","theme builder"," is the fastest way to get a starting block.",[366,582,584],{"id":583},"polarity",[370,585,586],{},"The polarity wave",[359,588,589,590,597,598,601],{},"The v3 rule: ",[383,591,592,593,596],{},"a boolean prop defaults to ",[394,594,595],{},"false",", and its name states what\nturning it on does."," Props that defaulted to ",[394,599,600],{},"true"," were renamed to their\ninverse.",[359,603,604,605,608,609,612,613,616],{},"So if you passed the old prop at its default (",[394,606,607],{},":show-close=\"true\"","), delete it.\nIf you passed the non-default (",[394,610,611],{},":show-close=\"false\"","), switch to the new name\n(",[394,614,615],{},"hide-close",").",[618,619,620,636],"table",{},[621,622,623],"thead",{},[624,625,626,630,633],"tr",{},[627,628,629],"th",{},"Component(s)",[627,631,632],{},"v2 (default)",[627,634,635],{},"v3 (default)",[637,638,639,671,691,717,741,759,778,798,820,851,877,895],"tbody",{},[624,640,641,651,659],{},[642,643,644,646,647,646,649],"td",{},[394,645,311],{},", ",[394,648,266],{},[394,650,275],{},[642,652,653,527,656,658],{},[394,654,655],{},"showClose",[394,657,600],{},")",[642,660,661,527,664,666,667,670],{},[394,662,663],{},"hideClose",[394,665,595],{},") — also on ",[394,668,669],{},"toast()"," options",[624,672,673,677,684],{},[642,674,675],{},[394,676,338],{},[642,678,679,527,682,658],{},[394,680,681],{},"allowSelectAll",[394,683,600],{},[642,685,686,527,689,658],{},[394,687,688],{},"disableSelectAll",[394,690,595],{},[624,692,693,697,707],{},[642,694,695],{},[394,696,302],{},[642,698,699,558,702,527,705,658],{},[394,700,701],{},"animateX",[394,703,704],{},"animateY",[394,706,600],{},[642,708,709,558,712,527,715,658],{},[394,710,711],{},"disableAnimateX",[394,713,714],{},"disableAnimateY",[394,716,595],{},[624,718,719,723,730],{},[642,720,721],{},[394,722,185],{},[642,724,725,527,728,658],{},[394,726,727],{},"autoLoading",[394,729,595],{},[642,731,732,527,735,737,738],{},[394,733,734],{},"disableAutoLoading",[394,736,595],{},") — ",[383,739,740],{},"silent behaviour flip",[624,742,743,747,753],{},[642,744,745],{},[394,746,272],{},[642,748,749,527,751,658],{},[394,750,727],{},[394,752,600],{},[642,754,755,527,757,658],{},[394,756,734],{},[394,758,595],{},[624,760,761,765,772],{},[642,762,763],{},[394,764,272],{},[642,766,767,527,770,658],{},[394,768,769],{},"disabledWhileLoading",[394,771,600],{},[642,773,774,777],{},[383,775,776],{},"removed"," — always disabled while loading",[624,779,780,784,791],{},[642,781,782],{},[394,783,245],{},[642,785,786,527,789,658],{},[394,787,788],{},"thumbTranslate",[394,790,600],{},[642,792,793,527,796,658],{},[394,794,795],{},"disableThumbTranslate",[394,797,595],{},[624,799,800,806,813],{},[642,801,802,646,804],{},[394,803,257],{},[394,805,242],{},[642,807,808,527,811,658],{},[394,809,810],{},"flip",[394,812,600],{},[642,814,815,527,818,658],{},[394,816,817],{},"disableFlip",[394,819,595],{},[624,821,822,830,837],{},[642,823,824,646,826,646,828],{},[394,825,239],{},[394,827,242],{},[394,829,191],{},[642,831,832,527,835,658],{},[394,833,834],{},"allowWriting",[394,836,600],{},[642,838,839,527,842,737,844,847,848],{},[394,840,841],{},"disableWriting",[394,843,595],{},[394,845,846],{},"allow-writing=\"not-mobile\""," becomes ",[394,849,850],{},"disable-writing=\"mobile\"",[624,852,853,861,868],{},[642,854,855,646,857,646,859],{},[394,856,224],{},[394,858,230],{},[394,860,248],{},[642,862,863,527,866,658],{},[394,864,865],{},"reverse",[394,867,600],{},[642,869,870,527,872,646,874,658],{},[394,871,865],{},[394,873,595],{},[383,875,876],{},"meaning inverted",[624,878,879,883,890],{},[642,880,881],{},[394,882,311],{},[642,884,885,527,888,658],{},[394,886,887],{},"ariaAtomic",[394,889,600],{},[642,891,892,894],{},[383,893,776],{}," — correct live-region behaviour is hardcoded",[624,896,897,902,909],{},[642,898,899],{},[394,900,901],{},"BbChip",[642,903,904,527,907,658],{},[394,905,906],{},"clearable",[394,908,600],{},[642,910,911,914,915,918,919],{},[383,912,913],{},"removed with the component","; ",[394,916,917],{},"BbBadge.clearable"," defaults ",[394,920,595],{},[461,922,923,933],{},[359,924,925,928,929,932],{},[383,926,927],{},"This is a per-component rename, not a find-and-replace."," A few components\ndropped the feature outright instead of inverting it, and there the correct\nmigration is to ",[435,930,931],{},"delete"," the prop.",[359,934,935,936,940,941,945,946,949,950,952,953,955,956,958,959,646,961,963,964,966,967,970],{},"The one that bites: neither ",[457,937,938],{"href":56},[394,939,278],{}," nor\n",[457,942,943],{"href":96},[394,944,284],{}," has a close button in v3, so\n",[394,947,948],{},"show-close"," is removed rather than renamed — ",[394,951,615],{}," on either is not a\nvalid prop. ",[394,954,655],{}," → ",[394,957,663],{}," applies to ",[394,960,311],{},[394,962,266],{}," and\n",[394,965,275],{}," only. ",[394,968,969],{},"npx bitboss-ui check"," catches both spellings if you slip.",[359,972,973,974,978,979,982,983,986,987,989,990,994,995,999,1000,1004,1005,1008,1009,1011,1012,1014],{},"Two of these change behaviour rather than only spelling.\n",[457,975,976],{"href":18},[394,977,185],{}," now shows the loading spinner and disables\nitself for an async ",[394,980,981],{},"@click"," handler; pass ",[394,984,985],{},"disable-auto-loading"," to keep the v2\nbehaviour. And ",[394,988,865],{}," on ",[457,991,992],{"href":20},[394,993,224],{},",\n",[457,996,997],{"href":60},[394,998,230],{}," and ",[457,1001,1002],{"href":76},[394,1003,248],{},"\nmeans the opposite of what it did: unset renders identically, but a v2\n",[394,1006,1007],{},":reverse=\"false\""," becomes a bare ",[394,1010,865],{},", and a v2 ",[394,1013,865],{}," is deleted.",[366,1016,1018],{"id":1017},"variants",[370,1019,1020],{},"Variants became typed",[359,1022,1023,1024,1027],{},"In v2, ",[394,1025,1026],{},"theme"," took any string and a class override did the rest. In v3, variant\nnames are typed per family, and a name that is neither built-in nor registered\nthrough the plugin fails to compile.",[461,1029,1030],{},[359,1031,1032,1033,1035,1036,1039],{},"A ",[394,1034,1026],{}," value that did ",[383,1037,1038],{},"nothing"," in v2 may do something in v3. v2 shipped no\nCSS for several of them, so the prop was decoration. Before converting a value,\ngrep your own stylesheets for the matching modifier class: if nothing styled it,\ndropping it is the honest edit.",[359,1041,1042,1043,1046,1047,480],{},"Registering a name is first-class and expected — see\n",[457,1044,143],{"href":1045},"\u002Fen\u002Fguides\u002Fdesign-language#custom-variant"," for the plugin\noption and the stylesheet block that go with it. Both halves are required: a\nregistered name with no CSS is an unstyled pill, and CSS with no registration\nfails ",[394,1048,1049],{},"vue-tsc",[366,1051,1053],{"id":1052},"audit",[370,1054,1055],{},"The silent-failure audit",[359,1057,1058],{},"Everything the compiler cannot catch, in one pass. Run each in the consumer\nproject; every hit needs a decision, not necessarily a change.",[359,1060,1061,1062,1068,1069,999,1072,1075,1076,1078,1079,999,1082,1085,1086,1089,1090,1092],{},"Two surfaces have no other net. ",[383,1063,1064,1065],{},"Composable option objects live in ",[394,1066,1067],{},".ts"," —\n",[394,1070,1071],{},"toast({ … })",[394,1073,1074],{},"confirm({ … })"," inside stores, interceptors and helpers — and\nneither gate reaches them: ",[394,1077,969],{}," opens only ",[394,1080,1081],{},".vue",[394,1083,1084],{},".md",",\nand the eslint plugin walks template ASTs. ",[383,1087,1088],{},"Nothing reads CSS at all"," — not the\nCLI, not eslint, not ",[394,1091,1049],{},", not the browser console.",[1094,1095,1100],"pre",{"className":1096,"code":1097,"language":1098,"meta":1099,"style":1099},"language-bash shiki shiki-themes github-light-high-contrast github-dark-high-contrast","# Props, slots and markup\nrg -in 'querykey'                         # → queryKey (URL params silently move)\nrg -n 'show-close|showClose'              # → hide-close, or delete on popover\u002Ftooltip\nrg -n 'allow-select-all|allowSelectAll'   # → disable-select-all, inverted\nrg -n 'auto-loading|autoLoading'          # BbButton behaviour flip \u002F rename\nrg -n 'disabled-while-loading|disabledWhileLoading'   # removed\nrg -n 'animate-x|animate-y|animateX|animateY'         # → disableAnimate*\nrg -n 'thumb-translate|thumbTranslate'    # → disable-thumb-translate\nrg -n ':flip=|flip=\"'                     # → disable-flip\nrg -n 'hide-arrow|show-arrow|arrow-padding'           # removed off tooltips\nrg -n '\u003CBbChip'                           # removed → BbBadge clearable\nrg -n '\u003CBbBadge'                          # v2 badges are v3 indicators — review each\nrg -n '\u003CBbTab\\b'                          # → BbTabs\nrg -n '#label-'                           # BbTabs label slot → #label:\u003CslotKey>\nrg -n 'label-position|labelPosition'      # groups → legend-position\nrg -n 'prefill=\"focus\"'                   # → 'interaction'\nrg -n ':prefill=\"false\"'                  # now search-first, not load-on-open\nrg -n 'allow-writing|allowWriting'        # → disable-writing, inverted\nrg -n 'filter-by|filterBy'                # function\u002Fstring → string[]\nrg -n 'option:prepend|option:append|#chevron'         # removed slots\nrg -n 'disabled:' --type ts --type vue    # item.disabled → the selectable predicate\n\n# Composable option objects (.ts \u002F .js)\nrg -n 'timeout' --type ts --type js       # toast()\u002Fconfirm() options → duration\nrg -n 'theme' --type ts --type js         # toast()\u002Fconfirm() options → variant\nrg -n 'dismissAll'                        # useToast().dismissAll() → dismiss()\nrg -n 'autoClose|auto-close'              # confirm(): opt-in in v2, default true in v3\nrg -n 'yesText|noText|onYes|onNo'         # collapsed into the yes\u002Fno configs\nrg -n \"provide\\('icons'\"                  # shadowed by the plugin's registry\n","bash","",[394,1101,1102,1109,1126,1139,1151,1163,1175,1187,1199,1211,1223,1235,1248,1261,1274,1287,1300,1313,1326,1339,1352,1376,1383,1389,1411,1432,1445,1458,1471],{"__ignoreMap":1099},[370,1103,1105],{"class":1104,"line":131},"line",[370,1106,1108],{"class":1107},"sLBg1","# Props, slots and markup\n",[370,1110,1111,1115,1119,1123],{"class":1104,"line":135},[370,1112,1114],{"class":1113},"soyes","rg",[370,1116,1118],{"class":1117},"s-5SL"," -in",[370,1120,1122],{"class":1121},"sT6z2"," 'querykey'",[370,1124,1125],{"class":1107},"                         # → queryKey (URL params silently move)\n",[370,1127,1128,1130,1133,1136],{"class":1104,"line":157},[370,1129,1114],{"class":1113},[370,1131,1132],{"class":1117}," -n",[370,1134,1135],{"class":1121}," 'show-close|showClose'",[370,1137,1138],{"class":1107},"              # → hide-close, or delete on popover\u002Ftooltip\n",[370,1140,1141,1143,1145,1148],{"class":1104,"line":161},[370,1142,1114],{"class":1113},[370,1144,1132],{"class":1117},[370,1146,1147],{"class":1121}," 'allow-select-all|allowSelectAll'",[370,1149,1150],{"class":1107},"   # → disable-select-all, inverted\n",[370,1152,1153,1155,1157,1160],{"class":1104,"line":165},[370,1154,1114],{"class":1113},[370,1156,1132],{"class":1117},[370,1158,1159],{"class":1121}," 'auto-loading|autoLoading'",[370,1161,1162],{"class":1107},"          # BbButton behaviour flip \u002F rename\n",[370,1164,1165,1167,1169,1172],{"class":1104,"line":199},[370,1166,1114],{"class":1113},[370,1168,1132],{"class":1117},[370,1170,1171],{"class":1121}," 'disabled-while-loading|disabledWhileLoading'",[370,1173,1174],{"class":1107},"   # removed\n",[370,1176,1177,1179,1181,1184],{"class":1104,"line":203},[370,1178,1114],{"class":1113},[370,1180,1132],{"class":1117},[370,1182,1183],{"class":1121}," 'animate-x|animate-y|animateX|animateY'",[370,1185,1186],{"class":1107},"         # → disableAnimate*\n",[370,1188,1189,1191,1193,1196],{"class":1104,"line":207},[370,1190,1114],{"class":1113},[370,1192,1132],{"class":1117},[370,1194,1195],{"class":1121}," 'thumb-translate|thumbTranslate'",[370,1197,1198],{"class":1107},"    # → disable-thumb-translate\n",[370,1200,1201,1203,1205,1208],{"class":1104,"line":211},[370,1202,1114],{"class":1113},[370,1204,1132],{"class":1117},[370,1206,1207],{"class":1121}," ':flip=|flip=\"'",[370,1209,1210],{"class":1107},"                     # → disable-flip\n",[370,1212,1213,1215,1217,1220],{"class":1104,"line":215},[370,1214,1114],{"class":1113},[370,1216,1132],{"class":1117},[370,1218,1219],{"class":1121}," 'hide-arrow|show-arrow|arrow-padding'",[370,1221,1222],{"class":1107},"           # removed off tooltips\n",[370,1224,1225,1227,1229,1232],{"class":1104,"line":219},[370,1226,1114],{"class":1113},[370,1228,1132],{"class":1117},[370,1230,1231],{"class":1121}," '\u003CBbChip'",[370,1233,1234],{"class":1107},"                           # removed → BbBadge clearable\n",[370,1236,1238,1240,1242,1245],{"class":1104,"line":1237},12,[370,1239,1114],{"class":1113},[370,1241,1132],{"class":1117},[370,1243,1244],{"class":1121}," '\u003CBbBadge'",[370,1246,1247],{"class":1107},"                          # v2 badges are v3 indicators — review each\n",[370,1249,1251,1253,1255,1258],{"class":1104,"line":1250},13,[370,1252,1114],{"class":1113},[370,1254,1132],{"class":1117},[370,1256,1257],{"class":1121}," '\u003CBbTab\\b'",[370,1259,1260],{"class":1107},"                          # → BbTabs\n",[370,1262,1264,1266,1268,1271],{"class":1104,"line":1263},14,[370,1265,1114],{"class":1113},[370,1267,1132],{"class":1117},[370,1269,1270],{"class":1121}," '#label-'",[370,1272,1273],{"class":1107},"                           # BbTabs label slot → #label:\u003CslotKey>\n",[370,1275,1277,1279,1281,1284],{"class":1104,"line":1276},15,[370,1278,1114],{"class":1113},[370,1280,1132],{"class":1117},[370,1282,1283],{"class":1121}," 'label-position|labelPosition'",[370,1285,1286],{"class":1107},"      # groups → legend-position\n",[370,1288,1290,1292,1294,1297],{"class":1104,"line":1289},16,[370,1291,1114],{"class":1113},[370,1293,1132],{"class":1117},[370,1295,1296],{"class":1121}," 'prefill=\"focus\"'",[370,1298,1299],{"class":1107},"                   # → 'interaction'\n",[370,1301,1303,1305,1307,1310],{"class":1104,"line":1302},17,[370,1304,1114],{"class":1113},[370,1306,1132],{"class":1117},[370,1308,1309],{"class":1121}," ':prefill=\"false\"'",[370,1311,1312],{"class":1107},"                  # now search-first, not load-on-open\n",[370,1314,1316,1318,1320,1323],{"class":1104,"line":1315},18,[370,1317,1114],{"class":1113},[370,1319,1132],{"class":1117},[370,1321,1322],{"class":1121}," 'allow-writing|allowWriting'",[370,1324,1325],{"class":1107},"        # → disable-writing, inverted\n",[370,1327,1329,1331,1333,1336],{"class":1104,"line":1328},19,[370,1330,1114],{"class":1113},[370,1332,1132],{"class":1117},[370,1334,1335],{"class":1121}," 'filter-by|filterBy'",[370,1337,1338],{"class":1107},"                # function\u002Fstring → string[]\n",[370,1340,1342,1344,1346,1349],{"class":1104,"line":1341},20,[370,1343,1114],{"class":1113},[370,1345,1132],{"class":1117},[370,1347,1348],{"class":1121}," 'option:prepend|option:append|#chevron'",[370,1350,1351],{"class":1107},"         # removed slots\n",[370,1353,1355,1357,1359,1362,1365,1368,1370,1373],{"class":1104,"line":1354},21,[370,1356,1114],{"class":1113},[370,1358,1132],{"class":1117},[370,1360,1361],{"class":1121}," 'disabled:'",[370,1363,1364],{"class":1117}," --type",[370,1366,1367],{"class":1121}," ts",[370,1369,1364],{"class":1117},[370,1371,1372],{"class":1121}," vue",[370,1374,1375],{"class":1107},"    # item.disabled → the selectable predicate\n",[370,1377,1379],{"class":1104,"line":1378},22,[370,1380,1382],{"emptyLinePlaceholder":1381},true,"\n",[370,1384,1386],{"class":1104,"line":1385},23,[370,1387,1388],{"class":1107},"# Composable option objects (.ts \u002F .js)\n",[370,1390,1392,1394,1396,1399,1401,1403,1405,1408],{"class":1104,"line":1391},24,[370,1393,1114],{"class":1113},[370,1395,1132],{"class":1117},[370,1397,1398],{"class":1121}," 'timeout'",[370,1400,1364],{"class":1117},[370,1402,1367],{"class":1121},[370,1404,1364],{"class":1117},[370,1406,1407],{"class":1121}," js",[370,1409,1410],{"class":1107},"       # toast()\u002Fconfirm() options → duration\n",[370,1412,1414,1416,1418,1421,1423,1425,1427,1429],{"class":1104,"line":1413},25,[370,1415,1114],{"class":1113},[370,1417,1132],{"class":1117},[370,1419,1420],{"class":1121}," 'theme'",[370,1422,1364],{"class":1117},[370,1424,1367],{"class":1121},[370,1426,1364],{"class":1117},[370,1428,1407],{"class":1121},[370,1430,1431],{"class":1107},"         # toast()\u002Fconfirm() options → variant\n",[370,1433,1435,1437,1439,1442],{"class":1104,"line":1434},26,[370,1436,1114],{"class":1113},[370,1438,1132],{"class":1117},[370,1440,1441],{"class":1121}," 'dismissAll'",[370,1443,1444],{"class":1107},"                        # useToast().dismissAll() → dismiss()\n",[370,1446,1448,1450,1452,1455],{"class":1104,"line":1447},27,[370,1449,1114],{"class":1113},[370,1451,1132],{"class":1117},[370,1453,1454],{"class":1121}," 'autoClose|auto-close'",[370,1456,1457],{"class":1107},"              # confirm(): opt-in in v2, default true in v3\n",[370,1459,1461,1463,1465,1468],{"class":1104,"line":1460},28,[370,1462,1114],{"class":1113},[370,1464,1132],{"class":1117},[370,1466,1467],{"class":1121}," 'yesText|noText|onYes|onNo'",[370,1469,1470],{"class":1107},"         # collapsed into the yes\u002Fno configs\n",[370,1472,1474,1476,1478,1481],{"class":1104,"line":1473},29,[370,1475,1114],{"class":1113},[370,1477,1132],{"class":1117},[370,1479,1480],{"class":1121}," \"provide\\('icons'\"",[370,1482,1483],{"class":1107},"                  # shadowed by the plugin's registry\n",[359,1485,1486,1489],{},[394,1487,1488],{},"rg -n 'reverse' --type ts --type js"," deserves its own line: the checkbox, radio\nand switch flip is the one change in this list that renders identically until\nsomeone passed the prop explicitly.",[366,1491,1493],{"id":1492},"per-component",[370,1494,1495],{},"Where the rest lives",[359,1497,1498],{},"This page is the shape of the upgrade. The detail is on the component pages,\nwhere you will actually be standing when you hit it:",[516,1500,1501,1508],{},[380,1502,1503,1504,1507],{},"Every component's ",[383,1505,1506],{},"Examples page"," carries its v2 notes inline, folded into a\n\"Coming from v2\" block beside the behaviour they concern.",[380,1509,1503,1510,1513,1514,1517],{},[383,1511,1512],{},"API page"," ends with a generated ",[383,1515,1516],{},"Changes from v2"," table\n— props removed or renamed in 3.0, and which ones fail silently.",[359,1519,1520],{},"Start from the component the compiler pointed at, not from here.",[359,1522,1523,1524,1526,1527,999,1529,1531],{},"Once the compiler is clean, run ",[394,1525,969],{}," over the migrated\n",[394,1528,1081],{},[394,1530,1084],{}," files, then repeat the grep audit above for composable options\nand CSS. Finish with a visual pass only after the theme tokens are in place.\nThis order keeps type errors, silent API changes and intentional visual changes\nas three separate review steps.",[1533,1534,1535],"style",{},"html pre.shiki code .sLBg1, html code.shiki .sLBg1{--shiki-default:#66707B;--shiki-dark:#BDC4CC}html pre.shiki code .soyes, html code.shiki .soyes{--shiki-default:#702C00;--shiki-dark:#FFB757}html pre.shiki code .s-5SL, html code.shiki .s-5SL{--shiki-default:#023B95;--shiki-dark:#91CBFF}html pre.shiki code .sT6z2, html code.shiki .sT6z2{--shiki-default:#032563;--shiki-dark:#ADDCFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":1099,"searchDepth":157,"depth":157,"links":1537},[1538,1539,1540,1541,1542,1543,1544,1545],{"id":368,"depth":135,"text":372},{"id":441,"depth":135,"text":444},{"id":483,"depth":135,"text":486},{"id":504,"depth":135,"text":507},{"id":583,"depth":135,"text":586},{"id":1017,"depth":135,"text":1020},{"id":1052,"depth":135,"text":1055},{"id":1492,"depth":135,"text":1495},"Upgrade in a safe order, handle inverted boolean defaults, and audit changes the compiler cannot find.","md",{},[1550,1551,1552,1553,1554,1555,1556,1557],{"id":368,"title":372},{"id":441,"title":444},{"id":483,"title":486},{"id":504,"title":507},{"id":583,"title":586},{"id":1017,"title":1020},{"id":1052,"title":1055},{"id":1492,"title":1495},{"title":133,"description":1546},"guides\u002Fmigration","2sxq85ATFYV0ZDEX5-jlDICyJCTxQdfGcwO_AtDZW5Y",1790005168526]