[{"data":1,"prerenderedAt":2266},["ShallowReactive",2],{"locale-alternates":3,"docs-nav-en":134,"api-none":377,"page-en-\u002Fguides\u002Ffetching-data":378},{"\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":169,"body":380,"component":377,"description":2253,"extension":2254,"group":163,"meta":2255,"navigation":495,"order":145,"path":170,"sections":2256,"seo":2263,"stem":2264,"__hash__":2265},"docs_en\u002Fguides\u002Ffetching-data.md",{"type":381,"value":382,"toc":2245},"minimark",[383,397,407,415,426,813,839,845,936,947,970,989,994,1011,1028,1051,1055,1067,1095,1108,1111,1250,1286,1306,1309,1347,1364,1370,1373,1418,1449,1557,1563,1570,1738,1752,1758,1764,1815,1828,1995,2004,2134,2174,2184,2190,2193,2202,2211,2226,2241],[384,385,386,387,391,392,396],"p",{},"Pass a ",[388,389,390],"strong",{},"function"," to ",[393,394,395],"code",{},"items"," instead of an array and the component runs it,\ntracks loading, and discards stale responses. A static array bypasses the\nprovider entirely.",[384,398,399,400,403,404,406],{},"Read ",[401,402,166],"a",{"href":126}," first: mapping and value\nidentity work the same either way. ",[401,405,172],{"href":108}," picks up\nwhere this page ends, with what happens to a bound value when a fetch returns\ndifferent options.",[408,409,411],"h2",{"id":410},"signatures",[412,413,414],"span",{},"The provider context",[384,416,417,418,421,422,425],{},"Every provider is called with ",[388,419,420],{},"one object"," and returns ",[393,423,424],{},"T[]"," or a promise of\nit. One type per component names the shape it passes:",[427,428,433],"pre",{"className":429,"code":430,"language":431,"meta":432,"style":432},"language-ts shiki shiki-themes github-light-high-contrast github-dark-high-contrast","import type {\n    BbSelectItemsContext, \u002F\u002F = BbSelectPopoverItemsContext\n    BbTableItemsContext,\n    BbCheckboxGroupItemsContext, \u002F\u002F = BbRadioGroup \u002F BbSwitchGroup\n    BbDropdownGroupItemsContext,\n} from 'bitboss-ui';\n\n\u002F\u002F BbSelect, BbSelectPopover\ntype BbSelectItemsContext = {\n    query: string; \u002F\u002F what the user typed, '' until they type\n    reason: 'search' | 'initial' | 'dependencies' | 'model' | 'reopen';\n    modelValue: any; \u002F\u002F your v-model: an array with `multiple`, else the value or null\n    signal: AbortSignal;\n};\n\u002F\u002F BbTable: no search field, so no `query`\ntype BbTableItemsContext = {\n    reason: 'initial' | 'dependencies' | 'pagination';\n    modelValue: any; \u002F\u002F the selection\n    signal: AbortSignal;\n};\n\u002F\u002F BbCheckboxGroup, BbRadioGroup, BbSwitchGroup: no `query`\ntype BbCheckboxGroupItemsContext = {\n    reason: 'initial' | 'dependencies' | 'model';\n    modelValue: any;\n    signal: AbortSignal;\n};\n\u002F\u002F a BbDropdown pipeline group: `query` only when it is `searchable`\ntype BbDropdownGroupItemsContext = {\n    query?: string;\n    reason: 'initial' | 'search' | 'dependencies';\n    modelValue: any; \u002F\u002F the group's own selection\n    signal: AbortSignal;\n};\n","ts","",[393,434,435,449,458,463,471,476,491,497,502,516,534,567,583,596,602,608,620,640,654,665,670,676,688,707,718,729,734,740,752,764,783,797,808],{"__ignoreMap":432},[412,436,438,442,445],{"class":437,"line":141},"line",[412,439,441],{"class":440},"sHUrx","import",[412,443,444],{"class":440}," type",[412,446,448],{"class":447},"suds8"," {\n",[412,450,451,454],{"class":437,"line":145},[412,452,453],{"class":447},"    BbSelectItemsContext, ",[412,455,457],{"class":456},"sLBg1","\u002F\u002F = BbSelectPopoverItemsContext\n",[412,459,460],{"class":437,"line":149},[412,461,462],{"class":447},"    BbTableItemsContext,\n",[412,464,465,468],{"class":437,"line":177},[412,466,467],{"class":447},"    BbCheckboxGroupItemsContext, ",[412,469,470],{"class":456},"\u002F\u002F = BbRadioGroup \u002F BbSwitchGroup\n",[412,472,473],{"class":437,"line":181},[412,474,475],{"class":447},"    BbDropdownGroupItemsContext,\n",[412,477,478,481,484,488],{"class":437,"line":185},[412,479,480],{"class":447},"} ",[412,482,483],{"class":440},"from",[412,485,487],{"class":486},"sT6z2"," 'bitboss-ui'",[412,489,490],{"class":447},";\n",[412,492,493],{"class":437,"line":225},[412,494,496],{"emptyLinePlaceholder":495},true,"\n",[412,498,499],{"class":437,"line":229},[412,500,501],{"class":456},"\u002F\u002F BbSelect, BbSelectPopover\n",[412,503,504,507,511,514],{"class":437,"line":233},[412,505,506],{"class":440},"type",[412,508,510],{"class":509},"soyes"," BbSelectItemsContext",[412,512,513],{"class":440}," =",[412,515,448],{"class":447},[412,517,518,521,524,528,531],{"class":437,"line":237},[412,519,520],{"class":509},"    query",[412,522,523],{"class":440},":",[412,525,527],{"class":526},"s-5SL"," string",[412,529,530],{"class":447},"; ",[412,532,533],{"class":456},"\u002F\u002F what the user typed, '' until they type\n",[412,535,536,539,541,544,547,550,552,555,557,560,562,565],{"class":437,"line":241},[412,537,538],{"class":509},"    reason",[412,540,523],{"class":440},[412,542,543],{"class":486}," 'search'",[412,545,546],{"class":440}," |",[412,548,549],{"class":486}," 'initial'",[412,551,546],{"class":440},[412,553,554],{"class":486}," 'dependencies'",[412,556,546],{"class":440},[412,558,559],{"class":486}," 'model'",[412,561,546],{"class":440},[412,563,564],{"class":486}," 'reopen'",[412,566,490],{"class":447},[412,568,570,573,575,578,580],{"class":437,"line":569},12,[412,571,572],{"class":509},"    modelValue",[412,574,523],{"class":440},[412,576,577],{"class":526}," any",[412,579,530],{"class":447},[412,581,582],{"class":456},"\u002F\u002F your v-model: an array with `multiple`, else the value or null\n",[412,584,586,589,591,594],{"class":437,"line":585},13,[412,587,588],{"class":509},"    signal",[412,590,523],{"class":440},[412,592,593],{"class":509}," AbortSignal",[412,595,490],{"class":447},[412,597,599],{"class":437,"line":598},14,[412,600,601],{"class":447},"};\n",[412,603,605],{"class":437,"line":604},15,[412,606,607],{"class":456},"\u002F\u002F BbTable: no search field, so no `query`\n",[412,609,611,613,616,618],{"class":437,"line":610},16,[412,612,506],{"class":440},[412,614,615],{"class":509}," BbTableItemsContext",[412,617,513],{"class":440},[412,619,448],{"class":447},[412,621,623,625,627,629,631,633,635,638],{"class":437,"line":622},17,[412,624,538],{"class":509},[412,626,523],{"class":440},[412,628,549],{"class":486},[412,630,546],{"class":440},[412,632,554],{"class":486},[412,634,546],{"class":440},[412,636,637],{"class":486}," 'pagination'",[412,639,490],{"class":447},[412,641,643,645,647,649,651],{"class":437,"line":642},18,[412,644,572],{"class":509},[412,646,523],{"class":440},[412,648,577],{"class":526},[412,650,530],{"class":447},[412,652,653],{"class":456},"\u002F\u002F the selection\n",[412,655,657,659,661,663],{"class":437,"line":656},19,[412,658,588],{"class":509},[412,660,523],{"class":440},[412,662,593],{"class":509},[412,664,490],{"class":447},[412,666,668],{"class":437,"line":667},20,[412,669,601],{"class":447},[412,671,673],{"class":437,"line":672},21,[412,674,675],{"class":456},"\u002F\u002F BbCheckboxGroup, BbRadioGroup, BbSwitchGroup: no `query`\n",[412,677,679,681,684,686],{"class":437,"line":678},22,[412,680,506],{"class":440},[412,682,683],{"class":509}," BbCheckboxGroupItemsContext",[412,685,513],{"class":440},[412,687,448],{"class":447},[412,689,691,693,695,697,699,701,703,705],{"class":437,"line":690},23,[412,692,538],{"class":509},[412,694,523],{"class":440},[412,696,549],{"class":486},[412,698,546],{"class":440},[412,700,554],{"class":486},[412,702,546],{"class":440},[412,704,559],{"class":486},[412,706,490],{"class":447},[412,708,710,712,714,716],{"class":437,"line":709},24,[412,711,572],{"class":509},[412,713,523],{"class":440},[412,715,577],{"class":526},[412,717,490],{"class":447},[412,719,721,723,725,727],{"class":437,"line":720},25,[412,722,588],{"class":509},[412,724,523],{"class":440},[412,726,593],{"class":509},[412,728,490],{"class":447},[412,730,732],{"class":437,"line":731},26,[412,733,601],{"class":447},[412,735,737],{"class":437,"line":736},27,[412,738,739],{"class":456},"\u002F\u002F a BbDropdown pipeline group: `query` only when it is `searchable`\n",[412,741,743,745,748,750],{"class":437,"line":742},28,[412,744,506],{"class":440},[412,746,747],{"class":509}," BbDropdownGroupItemsContext",[412,749,513],{"class":440},[412,751,448],{"class":447},[412,753,755,757,760,762],{"class":437,"line":754},29,[412,756,520],{"class":509},[412,758,759],{"class":440},"?:",[412,761,527],{"class":526},[412,763,490],{"class":447},[412,765,767,769,771,773,775,777,779,781],{"class":437,"line":766},30,[412,768,538],{"class":509},[412,770,523],{"class":440},[412,772,549],{"class":486},[412,774,546],{"class":440},[412,776,543],{"class":486},[412,778,546],{"class":440},[412,780,554],{"class":486},[412,782,490],{"class":447},[412,784,786,788,790,792,794],{"class":437,"line":785},31,[412,787,572],{"class":509},[412,789,523],{"class":440},[412,791,577],{"class":526},[412,793,530],{"class":447},[412,795,796],{"class":456},"\u002F\u002F the group's own selection\n",[412,798,800,802,804,806],{"class":437,"line":799},32,[412,801,588],{"class":509},[412,803,523],{"class":440},[412,805,593],{"class":509},[412,807,490],{"class":447},[412,809,811],{"class":437,"line":810},33,[412,812,601],{"class":447},[384,814,815,816,819,820,823,824,826,827,830,831,834,835,838],{},"Every context type takes your model type as a parameter, so\n",[393,817,818],{},"({ modelValue }: BbSelectItemsContext\u003Cstring[]>)"," types it ",[393,821,822],{},"string[]"," and the\n",[393,825,395],{}," prop accepts the annotated provider as it is. A provider shared between a\nselect and a dropdown group writes ",[393,828,829],{},"({ query = '', reason, modelValue, signal })",".\nPass ",[393,832,833],{},"signal"," to every request: it is aborted when a newer call starts or the\ncomponent is disposed, never on a ",[393,836,837],{},"KeepAlive"," deactivation. A rejection or late\nanswer from an aborted call is dropped silently, so there is nothing to catch.\nAnything else the request needs (filters, the parent\nrecord) you read from your own refs; a zero-argument provider still works.",[408,840,842],{"id":841},"when",[412,843,844],{},"When the provider runs",[846,847,848,864],"table",{},[849,850,851],"thead",{},[852,853,854,858,861],"tr",{},[855,856,857],"th",{},"Component",[855,859,860],{},"First load",[855,862,863],{},"User types",[865,866,867,891,904,916],"tbody",{},[852,868,869,877,886],{},[870,871,872,874,875],"td",{},[393,873,261],{},", ",[393,876,264],{},[870,878,879,882,883],{},[393,880,881],{},"'initial'",", per ",[393,884,885],{},"prefill",[870,887,888],{},[393,889,890],{},"'search'",[852,892,893,896,901],{},[870,894,895],{},"Groups",[870,897,898,900],{},[393,899,881],{}," on mount",[870,902,903],{},"—",[852,905,906,910,914],{},[870,907,908],{},[393,909,363],{},[870,911,912,900],{},[393,913,881],{},[870,915,903],{},[852,917,918,921,928],{},[870,919,920],{},"Dropdown group",[870,922,923,925,926],{},[393,924,881],{},", per its ",[393,927,885],{},[870,929,930,932,933],{},[393,931,890],{}," if ",[393,934,935],{},"searchable",[384,937,938,939,942,943,946],{},"A ",[393,940,941],{},"dependencies"," change runs every one of them again with ",[393,944,945],{},"'dependencies'",". A\nretry arrives the same way. Three other triggers belong to one family each:",[948,949,950,958,964],"ul",{},[951,952,953,954,957],"li",{},"A model set from outside that the options cannot resolve runs the selects and\nthe groups with ",[393,955,956],{},"'model'",".",[951,959,960,961,957],{},"A select's panel reopened over a searched list runs it with ",[393,962,963],{},"'reopen'",[951,965,966,967,957],{},"A provider-backed table whose page or page size moves runs with\n",[393,968,969],{},"'pagination'",[384,971,972,973,976,977,980,981,984,985,988],{},"Non-search calls carry the typed query too, so apply ",[393,974,975],{},"query"," on\nevery call. Every call after the first is debounced: ",[393,978,979],{},"query-debounce-time"," for\ntyping (500 ms on a select, 300 ms on a dropdown), ",[393,982,983],{},"deps-debounce-time"," for\ndependencies and ",[393,986,987],{},"model-value-debounce-time"," for an outside model change.",[408,990,991],{"id":885},[412,992,993],{},"The reason and the prefill prop",[384,995,996,999,1000,1004,1005,1007,1008,957],{},[393,997,998],{},"reason"," tells you ",[1001,1002,1003],"em",{},"who asked","; the ",[393,1006,885],{}," prop tells you ",[1001,1009,1010],{},"when the first load\nhappens",[384,1012,1013,1016,1017,1019,1020,1023,1024,1027],{},[388,1014,1015],{},"The reason."," ",[393,1018,890],{}," means exactly one thing, everywhere: ",[388,1021,1022],{},"the user\ntyped."," Every other call is the component's own and carries its own name. Each\none expects the current selection to stay resolvable in the response. Branch on\n",[393,1025,1026],{},"reason !== 'search'",", never on one non-search value, so every call the\ncomponent fires lands on the right side.",[384,1029,1030,1031,1033,1034,1036,1037,1040,1041,1047,1048,957],{},"Open the select below and its first call, the component's own load, arrives with\n",[393,1032,881],{},". Type a name and every search arrives with ",[393,1035,890],{},". An empty query\nreturns the provider's idle ",[393,1038,1039],{},"[]",", which\n",[401,1042,1044],{"href":1043},"\u002Fen\u002Fcomponents\u002Fbb-select\u002Fapi#prop-emptyText",[393,1045,1046],{},"empty-text"," turns into a sentence.\nPick someone and search again: every call carries the selection as its\n",[393,1049,1050],{},"modelValue",[1052,1053],"demo",{"name":1054},"Guides\u002FProviderCalls",[384,1056,1057,1060,1061,1063,1064,1066],{},[388,1058,1059],{},"The prop",", on ",[393,1062,261],{}," and ",[393,1065,264],{},", controls when the first load\nhappens:",[948,1068,1069,1075,1085],{},[951,1070,1071,1074],{},[393,1072,1073],{},"'interaction'"," (default) waits for the first user interaction.",[951,1076,1077,1080,1081,1084],{},[393,1078,1079],{},"true"," loads on mount. Under ",[393,1082,1083],{},"bitboss-ui\u002Fnuxt"," it also runs on the server,\nand the rows ride the payload to the browser.",[951,1086,1087,1090,1091,1094],{},[393,1088,1089],{},"false"," is ",[388,1092,1093],{},"search-first",": nothing loads until the user types. Opening the\npanel fetches nothing and the list shows a hint until the first query. Reach\nfor it when the result set is too large or expensive to browse and a query is\nthe only sensible entry point.",[384,1096,1097,1063,1099,1101,1102,1104,1105,1107],{},[393,1098,1089],{},[393,1100,1073],{}," differ on exactly that point. Both skip the mount\nload, but ",[393,1103,1073],{}," fetches on open and ",[393,1106,1089],{}," waits for a query.",[384,1109,1110],{},"On any other SSR host (plain Vue SSR, Inertia SSR) providers run in the browser\nonly, unless you provide an SSR-state adapter with two methods. Your payload has\nto be readable before the app mounts:",[427,1112,1114],{"className":429,"code":1113,"language":431,"meta":432,"style":432},"import {\n    SSR_STATE_INJECTION_KEY,\n    type SsrStateAdapter,\n} from 'bitboss-ui';\n\nconst adapter: SsrStateAdapter = {\n    get: (key) => payload[key], \u002F\u002F browser, during setup\n    set: (key, value) => {\n        payload[key] = value; \u002F\u002F server, in onServerPrefetch\n    },\n};\napp.provide(SSR_STATE_INJECTION_KEY, adapter);\n",[393,1115,1116,1122,1127,1135,1145,1149,1166,1190,1210,1224,1229,1233],{"__ignoreMap":432},[412,1117,1118,1120],{"class":437,"line":141},[412,1119,441],{"class":440},[412,1121,448],{"class":447},[412,1123,1124],{"class":437,"line":145},[412,1125,1126],{"class":447},"    SSR_STATE_INJECTION_KEY,\n",[412,1128,1129,1132],{"class":437,"line":149},[412,1130,1131],{"class":440},"    type",[412,1133,1134],{"class":447}," SsrStateAdapter,\n",[412,1136,1137,1139,1141,1143],{"class":437,"line":177},[412,1138,480],{"class":447},[412,1140,483],{"class":440},[412,1142,487],{"class":486},[412,1144,490],{"class":447},[412,1146,1147],{"class":437,"line":181},[412,1148,496],{"emptyLinePlaceholder":495},[412,1150,1151,1154,1157,1159,1162,1164],{"class":437,"line":185},[412,1152,1153],{"class":440},"const",[412,1155,1156],{"class":526}," adapter",[412,1158,523],{"class":440},[412,1160,1161],{"class":509}," SsrStateAdapter",[412,1163,513],{"class":440},[412,1165,448],{"class":447},[412,1167,1168,1172,1175,1178,1181,1184,1187],{"class":437,"line":225},[412,1169,1171],{"class":1170},"sKwhi","    get",[412,1173,1174],{"class":447},": (",[412,1176,1177],{"class":509},"key",[412,1179,1180],{"class":447},") ",[412,1182,1183],{"class":440},"=>",[412,1185,1186],{"class":447}," payload[key], ",[412,1188,1189],{"class":456},"\u002F\u002F browser, during setup\n",[412,1191,1192,1195,1197,1199,1201,1204,1206,1208],{"class":437,"line":229},[412,1193,1194],{"class":1170},"    set",[412,1196,1174],{"class":447},[412,1198,1177],{"class":509},[412,1200,874],{"class":447},[412,1202,1203],{"class":509},"value",[412,1205,1180],{"class":447},[412,1207,1183],{"class":440},[412,1209,448],{"class":447},[412,1211,1212,1215,1218,1221],{"class":437,"line":233},[412,1213,1214],{"class":447},"        payload[key] ",[412,1216,1217],{"class":440},"=",[412,1219,1220],{"class":447}," value; ",[412,1222,1223],{"class":456},"\u002F\u002F server, in onServerPrefetch\n",[412,1225,1226],{"class":437,"line":237},[412,1227,1228],{"class":447},"    },\n",[412,1230,1231],{"class":437,"line":241},[412,1232,601],{"class":447},[412,1234,1235,1238,1241,1244,1247],{"class":437,"line":569},[412,1236,1237],{"class":447},"app.",[412,1239,1240],{"class":1170},"provide",[412,1242,1243],{"class":447},"(",[412,1245,1246],{"class":526},"SSR_STATE_INJECTION_KEY",[412,1248,1249],{"class":447},", adapter);\n",[948,1251,1252,1258,1271,1277],{},[951,1253,1254,1257],{},[388,1255,1256],{},"Rows must be plain and serializable",": no class instances, nothing with\nmethods.",[951,1259,1260,1263,1264,1267,1268,957],{},[388,1261,1262],{},"The provider must run on both sides",": no ",[393,1265,1266],{},"window",", no ",[393,1269,1270],{},"document",[951,1272,1273,1276],{},[388,1274,1275],{},"Only the first load travels."," Searches, dependency changes and table pages\nload in the browser.",[951,1278,1279,1282,1283,957],{},[388,1280,1281],{},"A long list you don't need in the first paint"," bloats the payload: give it\n",[393,1284,1285],{},"prefill=\"interaction\"",[384,1287,938,1288,1290,1291,1293,1294,1296,1297,1299,1300,1302,1303,1305],{},[393,1289,291],{}," pipeline group takes the same three values as its own ",[393,1292,885],{},"\nfield. ",[393,1295,1079],{}," loads when the dropdown mounts and ",[393,1298,1073],{}," (the default)\nwhen the group first shows. ",[393,1301,1089],{}," loads on the first keystroke in a\n",[393,1304,935],{}," group; a group that is not searchable falls back to loading when\nit shows. Dropdown groups never load on the server, whatever the value.",[384,1307,1308],{},"Four cases ignore the prop and load anyway, because deferring would buy nothing\nor break a promise the component already made:",[948,1310,1311,1319,1328,1339],{},[951,1312,1313,1318],{},[388,1314,1315,1317],{},[393,1316,395],{}," is an array."," There is no request to defer.",[951,1320,1321,1327],{},[388,1322,1323,1326],{},[393,1324,1325],{},"enforce-coherence"," over a non-empty model."," Validating a value is\nimpossible without options. An empty model stays lazy, because empty is\nalways coherent.",[951,1329,1330,1016,1335,1338],{},[388,1331,1332,1334],{},[393,1333,1089],{}," with writing disabled.",[393,1336,1337],{},"disable-writing"," hides the search field,\nso a search-first load could never be triggered.",[951,1340,1341,1346],{},[388,1342,1343,1345],{},[393,1344,1089],{}," with a non-empty model."," The selection's text has to resolve in\norder to render.",[384,1348,1349,1351,1352,1356,1357,1360,1361,957],{},[393,1350,261],{}," additionally upgrades any non-empty model to an immediate prefill so\nthe in-field selection can show its text. A standalone\n",[401,1353,1354],{"href":72},[393,1355,264],{}," does ",[388,1358,1359],{},"not",": the trigger\nis yours, so label it from your own state rather than reaching for\n",[393,1362,1363],{},"prefill: true",[408,1365,1367],{"id":1366},"guarantees",[412,1368,1369],{},"What the component handles",[384,1371,1372],{},"Four things you do not write:",[948,1374,1375,1383,1393,1406],{},[951,1376,1377,1380,1381,957],{},[388,1378,1379],{},"Race protection."," Out-of-order responses are discarded; only the latest\nrequest may write ",[393,1382,395],{},[951,1384,1385,1388,1389,1392],{},[388,1386,1387],{},"Loading."," In-flight requests are tracked internally. Do not add your own\n",[393,1390,1391],{},"loading"," ref for option fetching.",[951,1394,1395,1016,1398,874,1400,1402,1403,1405],{},[388,1396,1397],{},"Debouncing.",[393,1399,979],{},[393,1401,983],{}," and\n",[393,1404,987],{}," cover it. A hand-rolled debounce around the\nprovider fights them.",[951,1407,1408,1016,1411,1413,1414,1417],{},[388,1409,1410],{},"Dependency comparison.",[393,1412,941],{}," are compared by hashed value, not by\nreference, so ",[393,1415,1416],{},":dependencies=\"[filters]\""," refetches when the content changes\nand not merely when the array identity does.",[384,1419,1420,1421,1424,1425,1428,1429,1431,1432,1438,1439,1442,1443,1446,1447,957],{},"One thing you do write: ",[388,1422,1423],{},"failure",". A provider ",[388,1426,1427],{},"throws"," to fail; it never\nreturns ",[393,1430,1039],{}," for one, because an empty array is a real result. On a failed call\nthe component clears the rows, logs the error and shows\n",[401,1433,1435],{"href":1434},"\u002Fen\u002Fcomponents\u002Fbb-select\u002Fapi#prop-failedText",[393,1436,1437],{},"failed-text"," in its empty state;\nthe ",[393,1440,1441],{},"#empty"," slot receives what you threw as ",[393,1444,1445],{},"error",". There is no built-in retry:\nbump a counter you list in ",[393,1448,941],{},[427,1450,1454],{"className":1451,"code":1452,"language":1453,"meta":432,"style":432},"language-vue shiki shiki-themes github-light-high-contrast github-dark-high-contrast","\u003CBbTable\n    :items=\"fetchInvoices\"\n    :dependencies=\"[status, retry]\"\n    failed-text=\"The invoices could not be loaded\"\n>\n    \u003Ctemplate #empty=\"{ error }\">\n        \u003Ctemplate v-if=\"error\">\n            Couldn't load the invoices.\n            \u003CBbButton size=\"sm\" variant=\"ghost\" @click=\"retry++\">Try again\u003C\u002FBbButton>\n        \u003C\u002Ftemplate>\n        \u003Ctemplate v-else>No invoices match these filters.\u003C\u002Ftemplate>\n    \u003C\u002Ftemplate>\n\u003C\u002FBbTable>\n","vue",[393,1455,1456,1465,1483,1498,1508,1513,1518,1523,1528,1533,1538,1543,1548],{"__ignoreMap":432},[412,1457,1458,1461],{"class":437,"line":141},[412,1459,1460],{"class":447},"\u003C",[412,1462,1464],{"class":1463},"sne4z","BbTable\n",[412,1466,1467,1470,1472,1474,1477,1480],{"class":437,"line":145},[412,1468,1469],{"class":447},"    :",[412,1471,395],{"class":526},[412,1473,1217],{"class":447},[412,1475,1476],{"class":447},"\"",[412,1478,1479],{"class":447},"fetchInvoices",[412,1481,1482],{"class":447},"\"\n",[412,1484,1485,1487,1489,1491,1493,1496],{"class":437,"line":149},[412,1486,1469],{"class":447},[412,1488,941],{"class":526},[412,1490,1217],{"class":447},[412,1492,1476],{"class":447},[412,1494,1495],{"class":447},"[status, retry]",[412,1497,1482],{"class":447},[412,1499,1500,1503,1505],{"class":437,"line":177},[412,1501,1502],{"class":526},"    failed-text",[412,1504,1217],{"class":447},[412,1506,1507],{"class":486},"\"The invoices could not be loaded\"\n",[412,1509,1510],{"class":437,"line":181},[412,1511,1512],{"class":447},">\n",[412,1514,1515],{"class":437,"line":185},[412,1516,1517],{"class":447},"    \u003Ctemplate #empty=\"{ error }\">\n",[412,1519,1520],{"class":437,"line":225},[412,1521,1522],{"class":447},"        \u003Ctemplate v-if=\"error\">\n",[412,1524,1525],{"class":437,"line":229},[412,1526,1527],{"class":447},"            Couldn't load the invoices.\n",[412,1529,1530],{"class":437,"line":233},[412,1531,1532],{"class":447},"            \u003CBbButton size=\"sm\" variant=\"ghost\" @click=\"retry++\">Try again\u003C\u002FBbButton>\n",[412,1534,1535],{"class":437,"line":237},[412,1536,1537],{"class":447},"        \u003C\u002Ftemplate>\n",[412,1539,1540],{"class":437,"line":241},[412,1541,1542],{"class":447},"        \u003Ctemplate v-else>No invoices match these filters.\u003C\u002Ftemplate>\n",[412,1544,1545],{"class":437,"line":569},[412,1546,1547],{"class":447},"    \u003C\u002Ftemplate>\n",[412,1549,1550,1553,1555],{"class":437,"line":585},[412,1551,1552],{"class":447},"\u003C\u002F",[412,1554,363],{"class":1463},[412,1556,1512],{"class":447},[408,1558,1560],{"id":1559},"patterns",[412,1561,1562],{},"Canonical patterns",[384,1564,1565,1566,1569],{},"A query component branches explicitly and returns the ",[388,1567,1568],{},"same item shape"," from\nevery path:",[427,1571,1573],{"className":429,"code":1572,"language":431,"meta":432,"style":432},"const searchMembers = async ({\n    query,\n    reason,\n    modelValue,\n    signal,\n}: BbSelectItemsContext\u003Cstring[]>): Promise\u003CMember[]> => {\n    \u002F\u002F Component-initiated: keep the current selection resolvable.\n    if (reason !== 'search' && modelValue.length) {\n        return api.members.byIds(modelValue, { signal });\n    }\n    if (!query.trim()) return []; \u002F\u002F project-defined idle behaviour\n    return api.members.search({ query }, { signal });\n};\n",[393,1574,1575,1590,1595,1600,1605,1610,1644,1649,1674,1688,1693,1721,1734],{"__ignoreMap":432},[412,1576,1577,1579,1582,1584,1587],{"class":437,"line":141},[412,1578,1153],{"class":440},[412,1580,1581],{"class":1170}," searchMembers",[412,1583,513],{"class":440},[412,1585,1586],{"class":440}," async",[412,1588,1589],{"class":447}," ({\n",[412,1591,1592],{"class":437,"line":145},[412,1593,1594],{"class":447},"    query,\n",[412,1596,1597],{"class":437,"line":149},[412,1598,1599],{"class":447},"    reason,\n",[412,1601,1602],{"class":437,"line":177},[412,1603,1604],{"class":447},"    modelValue,\n",[412,1606,1607],{"class":437,"line":181},[412,1608,1609],{"class":447},"    signal,\n",[412,1611,1612,1615,1617,1619,1621,1624,1627,1629,1632,1634,1637,1640,1642],{"class":437,"line":185},[412,1613,1614],{"class":447},"}",[412,1616,523],{"class":440},[412,1618,510],{"class":509},[412,1620,1460],{"class":447},[412,1622,1623],{"class":526},"string",[412,1625,1626],{"class":447},"[]>)",[412,1628,523],{"class":440},[412,1630,1631],{"class":509}," Promise",[412,1633,1460],{"class":447},[412,1635,1636],{"class":509},"Member",[412,1638,1639],{"class":447},"[]> ",[412,1641,1183],{"class":440},[412,1643,448],{"class":447},[412,1645,1646],{"class":437,"line":225},[412,1647,1648],{"class":456},"    \u002F\u002F Component-initiated: keep the current selection resolvable.\n",[412,1650,1651,1654,1657,1660,1662,1665,1668,1671],{"class":437,"line":229},[412,1652,1653],{"class":440},"    if",[412,1655,1656],{"class":447}," (reason ",[412,1658,1659],{"class":440},"!==",[412,1661,543],{"class":486},[412,1663,1664],{"class":440}," &&",[412,1666,1667],{"class":447}," modelValue.",[412,1669,1670],{"class":526},"length",[412,1672,1673],{"class":447},") {\n",[412,1675,1676,1679,1682,1685],{"class":437,"line":233},[412,1677,1678],{"class":440},"        return",[412,1680,1681],{"class":447}," api.members.",[412,1683,1684],{"class":1170},"byIds",[412,1686,1687],{"class":447},"(modelValue, { signal });\n",[412,1689,1690],{"class":437,"line":237},[412,1691,1692],{"class":447},"    }\n",[412,1694,1695,1697,1700,1703,1706,1709,1712,1715,1718],{"class":437,"line":241},[412,1696,1653],{"class":440},[412,1698,1699],{"class":447}," (",[412,1701,1702],{"class":440},"!",[412,1704,1705],{"class":447},"query.",[412,1707,1708],{"class":1170},"trim",[412,1710,1711],{"class":447},"()) ",[412,1713,1714],{"class":440},"return",[412,1716,1717],{"class":447}," []; ",[412,1719,1720],{"class":456},"\u002F\u002F project-defined idle behaviour\n",[412,1722,1723,1726,1728,1731],{"class":437,"line":569},[412,1724,1725],{"class":440},"    return",[412,1727,1681],{"class":447},[412,1729,1730],{"class":1170},"search",[412,1732,1733],{"class":447},"({ query }, { signal });\n",[412,1735,1736],{"class":437,"line":585},[412,1737,601],{"class":447},[384,1739,1740,1741,1744,1745,1747,1748,1751],{},"That branch only keeps the current pick resolvable. To also list the picks\nbeside each page of results, pair the provider with ",[393,1742,1743],{},"stash",". Make the ids\nrequest fail soft, so a deleted id cannot lose the page. Under\n",[393,1746,1325],{}," the ids request is ",[388,1749,1750],{},"required",", create forms included,\nbecause enforcement checks the fetched rows alone.",[384,1753,1754,1755,1757],{},"A selected row the page holds keeps its place in the page, so an ordered list\nstays ordered. Picks the page lacks (the ones ",[393,1756,1743],{}," still names) are listed\nfirst, leading their group, and keep that place until the panel closes; when a\nlater load brings one, it moves to its place in the list.",[384,1759,1760,1761,1763],{},"A non-query component has no ",[393,1762,975],{}," in its context:",[427,1765,1767],{"className":429,"code":1766,"language":431,"meta":432,"style":432},"const fetchRoles = ({ modelValue, signal }: BbCheckboxGroupItemsContext\u003Cstring[]>) =>\n    api.roles.list({ selectedIds: modelValue }, { signal });\n",[393,1768,1769,1804],{"__ignoreMap":432},[412,1770,1771,1773,1776,1778,1781,1783,1785,1787,1790,1792,1794,1796,1798,1801],{"class":437,"line":141},[412,1772,1153],{"class":440},[412,1774,1775],{"class":1170}," fetchRoles",[412,1777,513],{"class":440},[412,1779,1780],{"class":447}," ({ ",[412,1782,1050],{"class":509},[412,1784,874],{"class":447},[412,1786,833],{"class":509},[412,1788,1789],{"class":447}," }",[412,1791,523],{"class":440},[412,1793,683],{"class":509},[412,1795,1460],{"class":447},[412,1797,1623],{"class":526},[412,1799,1800],{"class":447},"[]>) ",[412,1802,1803],{"class":440},"=>\n",[412,1805,1806,1809,1812],{"class":437,"line":145},[412,1807,1808],{"class":447},"    api.roles.",[412,1810,1811],{"class":1170},"list",[412,1813,1814],{"class":447},"({ selectedIds: modelValue }, { signal });\n",[384,1816,1817,1821,1822,1824,1825,1827],{},[401,1818,1819],{"href":84},[393,1820,363],{}," ships ",[393,1823,1325],{}," too, so reach for\nthe prop before writing reconciliation by hand. Do not combine it with\nprovider-fed pagination, where every page turn is a load. A paginated table\nreconciles in the provider instead, where ",[393,1826,1050],{}," is the current selection\nand the new rows are known:",[427,1829,1831],{"className":429,"code":1830,"language":431,"meta":432,"style":432},"const fetchMembers = async ({\n    modelValue: selectedIds,\n    signal,\n}: BbTableItemsContext\u003Cstring[] | undefined>) => {\n    const rows = await api.members.list({ role: role.value }, { signal });\n    if (selectedIds?.length) {\n        const ids = new Set(rows.map((row) => row.id));\n        selected.value = selectedIds.filter((id) => ids.has(id));\n    }\n    return rows;\n};\n",[393,1832,1833,1846,1851,1855,1883,1903,1914,1949,1980,1984,1991],{"__ignoreMap":432},[412,1834,1835,1837,1840,1842,1844],{"class":437,"line":141},[412,1836,1153],{"class":440},[412,1838,1839],{"class":1170}," fetchMembers",[412,1841,513],{"class":440},[412,1843,1586],{"class":440},[412,1845,1589],{"class":447},[412,1847,1848],{"class":437,"line":145},[412,1849,1850],{"class":447},"    modelValue: selectedIds,\n",[412,1852,1853],{"class":437,"line":149},[412,1854,1609],{"class":447},[412,1856,1857,1859,1861,1863,1865,1867,1870,1873,1876,1879,1881],{"class":437,"line":177},[412,1858,1614],{"class":447},[412,1860,523],{"class":440},[412,1862,615],{"class":509},[412,1864,1460],{"class":447},[412,1866,1623],{"class":526},[412,1868,1869],{"class":447},"[] ",[412,1871,1872],{"class":440},"|",[412,1874,1875],{"class":526}," undefined",[412,1877,1878],{"class":447},">) ",[412,1880,1183],{"class":440},[412,1882,448],{"class":447},[412,1884,1885,1888,1891,1893,1896,1898,1900],{"class":437,"line":181},[412,1886,1887],{"class":440},"    const",[412,1889,1890],{"class":526}," rows",[412,1892,513],{"class":440},[412,1894,1895],{"class":440}," await",[412,1897,1681],{"class":447},[412,1899,1811],{"class":1170},[412,1901,1902],{"class":447},"({ role: role.value }, { signal });\n",[412,1904,1905,1907,1910,1912],{"class":437,"line":185},[412,1906,1653],{"class":440},[412,1908,1909],{"class":447}," (selectedIds?.",[412,1911,1670],{"class":526},[412,1913,1673],{"class":447},[412,1915,1916,1919,1922,1924,1927,1930,1933,1936,1939,1942,1944,1946],{"class":437,"line":225},[412,1917,1918],{"class":440},"        const",[412,1920,1921],{"class":526}," ids",[412,1923,513],{"class":440},[412,1925,1926],{"class":440}," new",[412,1928,1929],{"class":1170}," Set",[412,1931,1932],{"class":447},"(rows.",[412,1934,1935],{"class":1170},"map",[412,1937,1938],{"class":447},"((",[412,1940,1941],{"class":509},"row",[412,1943,1180],{"class":447},[412,1945,1183],{"class":440},[412,1947,1948],{"class":447}," row.id));\n",[412,1950,1951,1954,1956,1959,1962,1964,1967,1969,1971,1974,1977],{"class":437,"line":229},[412,1952,1953],{"class":447},"        selected.value ",[412,1955,1217],{"class":440},[412,1957,1958],{"class":447}," selectedIds.",[412,1960,1961],{"class":1170},"filter",[412,1963,1938],{"class":447},[412,1965,1966],{"class":509},"id",[412,1968,1180],{"class":447},[412,1970,1183],{"class":440},[412,1972,1973],{"class":447}," ids.",[412,1975,1976],{"class":1170},"has",[412,1978,1979],{"class":447},"(id));\n",[412,1981,1982],{"class":437,"line":233},[412,1983,1692],{"class":447},[412,1985,1986,1988],{"class":437,"line":237},[412,1987,1725],{"class":440},[412,1989,1990],{"class":447}," rows;\n",[412,1992,1993],{"class":437,"line":241},[412,1994,601],{"class":447},[384,1996,1997,1998,2000,2001,523],{},"On a server-driven table, forward the page state and refetch through\n",[393,1999,941],{}," rather than a manual ",[393,2002,2003],{},"watch",[427,2005,2007],{"className":429,"code":2006,"language":431,"meta":432,"style":432},"const fetchInvoices = async ({\n    signal,\n}: BbTableItemsContext): Promise\u003CInvoice[]> => {\n    const res = await api.invoices.list({\n        search: search.value,\n        status: status.value,\n        orderBy: sort.value, \u002F\u002F the v-model:sort array, forwarded as-is\n        page: page.value,\n        signal,\n    });\n    if (!signal.aborted) totalItems.value = res.total; \u002F\u002F a superseded answer must not write it\n    return res.data;\n};\n",[393,2008,2009,2022,2026,2052,2071,2076,2081,2089,2094,2099,2104,2123,2130],{"__ignoreMap":432},[412,2010,2011,2013,2016,2018,2020],{"class":437,"line":141},[412,2012,1153],{"class":440},[412,2014,2015],{"class":1170}," fetchInvoices",[412,2017,513],{"class":440},[412,2019,1586],{"class":440},[412,2021,1589],{"class":447},[412,2023,2024],{"class":437,"line":145},[412,2025,1609],{"class":447},[412,2027,2028,2030,2032,2034,2037,2039,2041,2043,2046,2048,2050],{"class":437,"line":149},[412,2029,1614],{"class":447},[412,2031,523],{"class":440},[412,2033,615],{"class":509},[412,2035,2036],{"class":447},")",[412,2038,523],{"class":440},[412,2040,1631],{"class":509},[412,2042,1460],{"class":447},[412,2044,2045],{"class":509},"Invoice",[412,2047,1639],{"class":447},[412,2049,1183],{"class":440},[412,2051,448],{"class":447},[412,2053,2054,2056,2059,2061,2063,2066,2068],{"class":437,"line":177},[412,2055,1887],{"class":440},[412,2057,2058],{"class":526}," res",[412,2060,513],{"class":440},[412,2062,1895],{"class":440},[412,2064,2065],{"class":447}," api.invoices.",[412,2067,1811],{"class":1170},[412,2069,2070],{"class":447},"({\n",[412,2072,2073],{"class":437,"line":181},[412,2074,2075],{"class":447},"        search: search.value,\n",[412,2077,2078],{"class":437,"line":185},[412,2079,2080],{"class":447},"        status: status.value,\n",[412,2082,2083,2086],{"class":437,"line":225},[412,2084,2085],{"class":447},"        orderBy: sort.value, ",[412,2087,2088],{"class":456},"\u002F\u002F the v-model:sort array, forwarded as-is\n",[412,2090,2091],{"class":437,"line":229},[412,2092,2093],{"class":447},"        page: page.value,\n",[412,2095,2096],{"class":437,"line":233},[412,2097,2098],{"class":447},"        signal,\n",[412,2100,2101],{"class":437,"line":237},[412,2102,2103],{"class":447},"    });\n",[412,2105,2106,2108,2110,2112,2115,2117,2120],{"class":437,"line":241},[412,2107,1653],{"class":440},[412,2109,1699],{"class":447},[412,2111,1702],{"class":440},[412,2113,2114],{"class":447},"signal.aborted) totalItems.value ",[412,2116,1217],{"class":440},[412,2118,2119],{"class":447}," res.total; ",[412,2121,2122],{"class":456},"\u002F\u002F a superseded answer must not write it\n",[412,2124,2125,2127],{"class":437,"line":569},[412,2126,1725],{"class":440},[412,2128,2129],{"class":447}," res.data;\n",[412,2131,2132],{"class":437,"line":585},[412,2133,601],{"class":447},[427,2135,2137],{"className":1451,"code":2136,"language":1453,"meta":432,"style":432},"\u003CBbTable :items=\"fetchInvoices\" :dependencies=\"[search, status, sort]\" \u002F>\n",[393,2138,2139],{"__ignoreMap":432},[412,2140,2141,2143,2145,2148,2150,2152,2154,2156,2158,2160,2162,2164,2166,2169,2171],{"class":437,"line":141},[412,2142,1460],{"class":447},[412,2144,363],{"class":1463},[412,2146,2147],{"class":447}," :",[412,2149,395],{"class":526},[412,2151,1217],{"class":447},[412,2153,1476],{"class":447},[412,2155,1479],{"class":447},[412,2157,1476],{"class":447},[412,2159,2147],{"class":447},[412,2161,941],{"class":526},[412,2163,1217],{"class":447},[412,2165,1476],{"class":447},[412,2167,2168],{"class":447},"[search, status, sort]",[412,2170,1476],{"class":447},[412,2172,2173],{"class":447}," \u002F>\n",[384,2175,2176,2179,2180,2183],{},[393,2177,2178],{},"page"," is deliberately not in that list: a provider-backed table already\nrefetches when its shared page moves, with ",[393,2181,2182],{},"reason: 'pagination'",". List only\nyour own filters and sort.",[408,2185,2187],{"id":2186},"idle",[412,2188,2189],{},"The idle state",[384,2191,2192],{},"What a query component returns for an empty query is a product decision, not a\ndefault. Make it once and keep it deterministic across the app.",[384,2194,2195,2198,2199,2201],{},[388,2196,2197],{},"Empty query, nothing selected:"," return ",[393,2200,1039],{}," for an explicit empty state, or\na default list for guided discovery.",[384,2203,2204,2207,2208,2210],{},[388,2205,2206],{},"Empty query, values selected:"," return at least the selected items, alone or\nmerged with a default list, so the selection is never orphaned. Enabling ",[393,2209,1743],{},"\non the select keeps already-picked options resolvable across searches without\nre-including them in every response.",[384,2212,2213,2214,1063,2217,2219,2220,1063,2223,2225],{},"Fill the panel's own states with ",[393,2215,2216],{},"loading-text",[393,2218,1046],{},", or the\n",[393,2221,2222],{},"#loading",[393,2224,1441],{}," slots. An empty panel with no words in it reads as a\nbroken request.",[384,2227,2228,2229,2231,2232,2234,2235,2240],{},"Build the provider in three passes: return a deterministic result for an empty\nquery, keep selected values resolvable on every ",[393,2230,1026],{}," call, then add\n",[393,2233,941],{}," for external filters. If a dependency can make the model\ninvalid, finish the flow with\n",[401,2236,2238],{"href":2237},"\u002Fen\u002Fguides\u002Fcoherence#props",[393,2239,1325],{}," instead of a reset watcher.",[2242,2243,2244],"style",{},"html pre.shiki code .sHUrx, html code.shiki .sHUrx{--shiki-default:#A0111F;--shiki-dark:#FF9492}html pre.shiki code .suds8, html code.shiki .suds8{--shiki-default:#0E1116;--shiki-dark:#F0F3F6}html pre.shiki code .sLBg1, html code.shiki .sLBg1{--shiki-default:#66707B;--shiki-dark:#BDC4CC}html pre.shiki code .sT6z2, html code.shiki .sT6z2{--shiki-default:#032563;--shiki-dark:#ADDCFF}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 .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);}html pre.shiki code .sKwhi, html code.shiki .sKwhi{--shiki-default:#622CBC;--shiki-dark:#DBB7FF}html pre.shiki code .sne4z, html code.shiki .sne4z{--shiki-default:#024C1A;--shiki-dark:#72F088}",{"title":432,"searchDepth":149,"depth":149,"links":2246},[2247,2248,2249,2250,2251,2252],{"id":410,"depth":145,"text":414},{"id":841,"depth":145,"text":844},{"id":885,"depth":145,"text":993},{"id":1366,"depth":145,"text":1369},{"id":1559,"depth":145,"text":1562},{"id":2186,"depth":145,"text":2189},"When items is a function: the context object every provider receives, when each one runs, and what prefill means.","md",{},[2257,2258,2259,2260,2261,2262],{"id":410,"title":414},{"id":841,"title":844},{"id":885,"title":993},{"id":1366,"title":1369},{"id":1559,"title":1562},{"id":2186,"title":2189},{"title":169,"description":2253},"guides\u002Ffetching-data","38uCu0h0_8U-oPKoYR2SjX8FjumoHCOR_r-JitBdIU4",1793055148196]