[{"data":1,"prerenderedAt":4062},["ShallowReactive",2],{"navigation_docs":3,"-frontend-orchestr-filters":1409,"-frontend-orchestr-filters-surround":4057},[4,132,391,524,1094,1166,1172,1178,1237,1336],{"title":5,"path":6,"stem":7,"children":8},"Getting Started","/getting-started","0.getting-started/0.index",[9,10,14,18,56,81,115,128],{"title":5,"path":6,"stem":7},{"title":11,"path":12,"stem":13},"Starting new project","/getting-started/starting-new-project","0.getting-started/1.starting-new-project",{"title":15,"path":16,"stem":17},"What is Laioutr?","/getting-started/what-is-laioutr","0.getting-started/2.what-is-laioutr",{"title":19,"path":20,"stem":21,"children":22,"page":55},"Key Concepts","/getting-started/key-concepts","0.getting-started/3.key-concepts",[23,27,31,35,39,43,47,51],{"title":24,"path":25,"stem":26},"Architecture","/getting-started/key-concepts/architecture","0.getting-started/3.key-concepts/1.architecture",{"title":28,"path":29,"stem":30},"Data Model","/getting-started/key-concepts/data-model","0.getting-started/3.key-concepts/2.data-model",{"title":32,"path":33,"stem":34},"Internationalization","/getting-started/key-concepts/5.internationalization","0.getting-started/3.key-concepts/3.5.internationalization",{"title":36,"path":37,"stem":38},"Data Flow","/getting-started/key-concepts/data-flow","0.getting-started/3.key-concepts/3.data-flow",{"title":40,"path":41,"stem":42},"Extensibility","/getting-started/key-concepts/extensibility","0.getting-started/3.key-concepts/4.extensibility",{"title":44,"path":45,"stem":46},"Philosophy","/getting-started/key-concepts/philosophy","0.getting-started/3.key-concepts/5.philosophy",{"title":48,"path":49,"stem":50},"CI/CD Pipeline","/getting-started/key-concepts/ci-cd-pipeline","0.getting-started/3.key-concepts/6.ci-cd-pipeline",{"title":52,"path":53,"stem":54},"Multi-tenancy","/getting-started/key-concepts/multi-tenancy","0.getting-started/3.key-concepts/multi-tenancy",false,{"title":57,"path":58,"stem":59,"children":60,"page":55},"Next Steps","/getting-started/next-steps","0.getting-started/4.next-steps",[61,65,69,73,77],{"title":62,"path":63,"stem":64},"Create Organization and Project","/getting-started/next-steps/create-org-and-project","0.getting-started/4.next-steps/0.create-org-and-project",{"title":66,"path":67,"stem":68},"First Project Configuration","/getting-started/next-steps/first-project-config","0.getting-started/4.next-steps/1.first-project-config",{"title":70,"path":71,"stem":72},"Setup Local Development Environment","/getting-started/next-steps/local-setup","0.getting-started/4.next-steps/3.local-setup",{"title":74,"path":75,"stem":76},"Create your first custom app","/getting-started/next-steps/create-custom-app","0.getting-started/4.next-steps/4.create-custom-app",{"title":78,"path":79,"stem":80},"CLI","/getting-started/next-steps/cli","0.getting-started/4.next-steps/5.cli",{"title":82,"path":83,"stem":84,"children":85},"Changelogs","/getting-started/changelogs","0.getting-started/5.Changelogs/0.index",[86,87,91,95,99,103,107,111],{"title":82,"path":83,"stem":84},{"title":88,"path":89,"stem":90},"CLI Changelog","/getting-started/changelogs/cli-changelog","0.getting-started/5.Changelogs/cli-changelog",{"title":92,"path":93,"stem":94},"Cockpit Changelog","/getting-started/changelogs/cockpit-changelog","0.getting-started/5.Changelogs/cockpit-changelog",{"title":96,"path":97,"stem":98},"Figma Kit Changelog","/getting-started/changelogs/figma-kit-changelog","0.getting-started/5.Changelogs/figma-kit-changelog",{"title":100,"path":101,"stem":102},"Frontend Changelog","/getting-started/changelogs/frontend-changelog","0.getting-started/5.Changelogs/frontend-changelog",{"title":104,"path":105,"stem":106},"Orchestr Changelog","/getting-started/changelogs/orchestr-changelog","0.getting-started/5.Changelogs/orchestr-changelog",{"title":108,"path":109,"stem":110},"Orchestr Devtools Changelog","/getting-started/changelogs/orchestr-devtools-changelog","0.getting-started/5.Changelogs/orchestr-devtools-changelog",{"title":112,"path":113,"stem":114},"UI Changelog","/getting-started/changelogs/ui-changelog","0.getting-started/5.Changelogs/ui-changelog",{"title":116,"path":117,"stem":118,"children":119,"page":55},"Hints And Tips","/getting-started/hints-and-tips","0.getting-started/6.Hints-and-Tips",[120,124],{"title":121,"path":122,"stem":123},"Introduction","/getting-started/hints-and-tips/introduction","0.getting-started/6.Hints-and-Tips/0.introduction",{"title":125,"path":126,"stem":127},"Developer tools","/getting-started/hints-and-tips/developer-tools","0.getting-started/6.Hints-and-Tips/1.developer-tools",{"title":129,"path":130,"stem":131},"MCP Server","/getting-started/mcp-server","0.getting-started/7.mcp-server",{"title":133,"path":134,"stem":135,"children":136},"Frontend","/frontend","1.Frontend/0.index",[137,138,149,211,237,275],{"title":133,"path":134,"stem":135},{"title":121,"path":139,"stem":140,"children":141,"page":55},"/frontend/introduction","1.Frontend/1.Introduction",[142,145],{"title":19,"path":143,"stem":144},"/frontend/introduction/key-concepts","1.Frontend/1.Introduction/0.key-concepts",{"title":146,"path":147,"stem":148},"Tech Stack","/frontend/introduction/tech-stack","1.Frontend/1.Introduction/1.tech-stack",{"title":150,"path":151,"stem":152,"children":153},"Features","/frontend/features","1.Frontend/2.Features/0.index",[154,155,159,163,167,171,175,179,183,187,191,195,199,203,207],{"title":150,"path":151,"stem":152},{"title":156,"path":157,"stem":158},"Consent Management","/frontend/features/consent-management","1.Frontend/2.Features/consent-management",{"title":160,"path":161,"stem":162},"Currencies","/frontend/features/currencies","1.Frontend/2.Features/currencies",{"title":164,"path":165,"stem":166},"Environments & Staging","/frontend/features/environments","1.Frontend/2.Features/environments",{"title":168,"path":169,"stem":170},"Hooks","/frontend/features/hooks","1.Frontend/2.Features/hooks",{"title":172,"path":173,"stem":174},"Media and Media Library","/frontend/features/media","1.Frontend/2.Features/media",{"title":176,"path":177,"stem":178},"Multi-language Support","/frontend/features/multi-language-support","1.Frontend/2.Features/multi-language-support",{"title":180,"path":181,"stem":182},"Multi-market","/frontend/features/multi-market","1.Frontend/2.Features/multi-market",{"title":184,"path":185,"stem":186},"Page Types","/frontend/features/pagetypes","1.Frontend/2.Features/pagetypes",{"title":188,"path":189,"stem":190},"PWA","/frontend/features/pwa","1.Frontend/2.Features/pwa",{"title":192,"path":193,"stem":194},"Redirects","/frontend/features/redirects","1.Frontend/2.Features/redirects",{"title":196,"path":197,"stem":198},"Routing","/frontend/features/routing","1.Frontend/2.Features/routing",{"title":200,"path":201,"stem":202},"Server-Side Rendering (SSR) and Caching","/frontend/features/ssr-and-caching","1.Frontend/2.Features/ssr-and-caching",{"title":204,"path":205,"stem":206},"Tracking","/frontend/features/tracking","1.Frontend/2.Features/tracking",{"title":208,"path":209,"stem":210},"Z-Ordering","/frontend/features/z-ordering","1.Frontend/2.Features/z-ordering",{"title":212,"path":213,"stem":214,"children":215},"SEO","/frontend/seo","1.Frontend/3.SEO/0.index",[216,217,221,225,229,233],{"title":212,"path":213,"stem":214},{"title":218,"path":219,"stem":220},"Link Checker","/frontend/seo/link-checker","1.Frontend/3.SEO/link-checker",{"title":222,"path":223,"stem":224},"OG Image","/frontend/seo/og-image","1.Frontend/3.SEO/og-image",{"title":226,"path":227,"stem":228},"Robots.txt","/frontend/seo/robots-txt","1.Frontend/3.SEO/robots-txt",{"title":230,"path":231,"stem":232},"Schema.org","/frontend/seo/schema-org","1.Frontend/3.SEO/schema-org",{"title":234,"path":235,"stem":236},"Sitemap","/frontend/seo/sitemap","1.Frontend/3.SEO/sitemap",{"title":238,"path":239,"stem":240,"children":241},"Backend for Frontend","/frontend/orchestr","1.Frontend/4.Orchestr/0.index",[242,243,247,251,255,259,263,267,271],{"title":238,"path":239,"stem":240},{"title":244,"path":245,"stem":246},"Actions","/frontend/orchestr/actions","1.Frontend/4.Orchestr/Actions",{"title":248,"path":249,"stem":250},"Caching","/frontend/orchestr/caching","1.Frontend/4.Orchestr/Caching",{"title":252,"path":253,"stem":254},"Middleware","/frontend/orchestr/middleware","1.Frontend/4.Orchestr/Middleware",{"title":256,"path":257,"stem":258},"Queries & Links","/frontend/orchestr/queries","1.Frontend/4.Orchestr/Queries",{"title":260,"path":261,"stem":262},"Component Resolvers","/frontend/orchestr/component-resolvers","1.Frontend/4.Orchestr/component-resolvers",{"title":264,"path":265,"stem":266},"Filters","/frontend/orchestr/filters","1.Frontend/4.Orchestr/filters",{"title":268,"path":269,"stem":270},"URL Query Parameters","/frontend/orchestr/url-query-params","1.Frontend/4.Orchestr/url-query-params",{"title":272,"path":273,"stem":274},"Orchestr Wire Format","/frontend/orchestr/wire-format","1.Frontend/4.Orchestr/wire-format",{"title":276,"path":277,"stem":278,"children":279},"API Reference","/frontend/api-reference","1.Frontend/99.api-reference/0.index",[280,281,338,341,357,365,376,384],{"title":276,"path":277,"stem":278},{"title":282,"path":283,"stem":284,"children":285,"page":55},"Entities","/frontend/api-reference/entities","1.Frontend/99.api-reference/01.entities",[286,290,294,298,302,306,310,314,318,322,326,330,334],{"title":287,"path":288,"stem":289},"Product","/frontend/api-reference/entities/product","1.Frontend/99.api-reference/01.entities/1.product",{"title":291,"path":292,"stem":293},"SuggestedSearch","/frontend/api-reference/entities/suggested-search","1.Frontend/99.api-reference/01.entities/10.suggested-search",{"title":295,"path":296,"stem":297},"SuggestedSearchEntry","/frontend/api-reference/entities/suggested-search-entry","1.Frontend/99.api-reference/01.entities/11.suggested-search-entry",{"title":299,"path":300,"stem":301},"BlogCollection","/frontend/api-reference/entities/blog-collection","1.Frontend/99.api-reference/01.entities/12.blog-collection",{"title":303,"path":304,"stem":305},"Comment","/frontend/api-reference/entities/comment","1.Frontend/99.api-reference/01.entities/13.comment",{"title":307,"path":308,"stem":309},"ProductVariant","/frontend/api-reference/entities/product-variant","1.Frontend/99.api-reference/01.entities/2.product-variant",{"title":311,"path":312,"stem":313},"Category","/frontend/api-reference/entities/category","1.Frontend/99.api-reference/01.entities/3.category",{"title":315,"path":316,"stem":317},"Cart","/frontend/api-reference/entities/cart","1.Frontend/99.api-reference/01.entities/4.cart",{"title":319,"path":320,"stem":321},"CartItem","/frontend/api-reference/entities/cart-item","1.Frontend/99.api-reference/01.entities/5.cart-item",{"title":323,"path":324,"stem":325},"Review","/frontend/api-reference/entities/review","1.Frontend/99.api-reference/01.entities/6.review",{"title":327,"path":328,"stem":329},"BreadcrumbItem","/frontend/api-reference/entities/breadcrumb-item","1.Frontend/99.api-reference/01.entities/7.breadcrumb-item",{"title":331,"path":332,"stem":333},"MenuItem","/frontend/api-reference/entities/menu-item","1.Frontend/99.api-reference/01.entities/8.menu-item",{"title":335,"path":336,"stem":337},"BlogPost","/frontend/api-reference/entities/blog-post","1.Frontend/99.api-reference/01.entities/9.blog-post",{"title":184,"path":339,"stem":340},"/frontend/api-reference/page-types","1.Frontend/99.api-reference/02.page-types",{"title":342,"path":343,"stem":344,"children":345,"page":55},"Ecommerce","/frontend/api-reference/ecommerce","1.Frontend/99.api-reference/10.ecommerce",[346,349,353],{"title":244,"path":347,"stem":348},"/frontend/api-reference/ecommerce/actions","1.Frontend/99.api-reference/10.ecommerce/1.actions",{"title":350,"path":351,"stem":352},"Queries","/frontend/api-reference/ecommerce/queries","1.Frontend/99.api-reference/10.ecommerce/2.queries",{"title":354,"path":355,"stem":356},"Errors","/frontend/api-reference/ecommerce/errors","1.Frontend/99.api-reference/10.ecommerce/3.errors",{"title":358,"path":359,"stem":360,"children":361,"page":55},"Newsletter","/frontend/api-reference/newsletter","1.Frontend/99.api-reference/11.newsletter",[362],{"title":244,"path":363,"stem":364},"/frontend/api-reference/newsletter/actions","1.Frontend/99.api-reference/11.newsletter/1.actions",{"title":366,"path":367,"stem":368,"children":369,"page":55},"Blog","/frontend/api-reference/blog","1.Frontend/99.api-reference/12.blog",[370,373],{"title":350,"path":371,"stem":372},"/frontend/api-reference/blog/queries","1.Frontend/99.api-reference/12.blog/1.queries",{"title":354,"path":374,"stem":375},"/frontend/api-reference/blog/errors","1.Frontend/99.api-reference/12.blog/2.errors",{"title":377,"path":378,"stem":379,"children":380,"page":55},"Suggested Search","/frontend/api-reference/suggested-search","1.Frontend/99.api-reference/13.suggested-search",[381],{"title":350,"path":382,"stem":383},"/frontend/api-reference/suggested-search/queries","1.Frontend/99.api-reference/13.suggested-search/1.queries",{"title":204,"path":385,"stem":386,"children":387,"page":55},"/frontend/api-reference/tracking","1.Frontend/99.api-reference/14.tracking",[388],{"title":244,"path":389,"stem":390},"/frontend/api-reference/tracking/actions","1.Frontend/99.api-reference/14.tracking/1.actions",{"title":392,"path":393,"stem":394,"children":395},"Apps","/apps","2.Apps/0.index",[396,397,451],{"title":392,"path":393,"stem":394},{"title":398,"path":399,"stem":400,"children":401},"App Development","/apps/app-development","2.Apps/app-development/0.index",[402,403,407,411,415,419,423,427,431,435,439,443,447],{"title":398,"path":399,"stem":400},{"title":404,"path":405,"stem":406},"App Configuration","/apps/app-development/app-configuration","2.Apps/app-development/app-configuration",{"title":408,"path":409,"stem":410},"App Starter","/apps/app-development/app-starter","2.Apps/app-development/app-starter",{"title":412,"path":413,"stem":414},"Best Practice","/apps/app-development/best-practice","2.Apps/app-development/best-practice",{"title":416,"path":417,"stem":418},"Block Definitions","/apps/app-development/block-definitions","2.Apps/app-development/block-definitions",{"title":420,"path":421,"stem":422},"Coding Standards","/apps/app-development/coding-standards","2.Apps/app-development/coding-standards",{"title":424,"path":425,"stem":426},"Consent Adapters","/apps/app-development/consent-adapters","2.Apps/app-development/consent-adapters",{"title":428,"path":429,"stem":430},"Consuming Query Fields","/apps/app-development/consuming-query-fields","2.Apps/app-development/consuming-query-fields",{"title":432,"path":433,"stem":434},"Implementation Overview","/apps/app-development/implementation-overview","2.Apps/app-development/implementation-overview",{"title":436,"path":437,"stem":438},"Platform Dependencies","/apps/app-development/platform-dependencies","2.Apps/app-development/platform-dependencies",{"title":440,"path":441,"stem":442},"Schema Fields","/apps/app-development/schema-fields","2.Apps/app-development/schema-fields",{"title":444,"path":445,"stem":446},"Section Definitions","/apps/app-development/section-definitions","2.Apps/app-development/section-definitions",{"title":448,"path":449,"stem":450},"Studio Icons","/apps/app-development/studio-icons","2.Apps/app-development/studio-icons",{"title":452,"path":453,"stem":454,"children":455,"page":55},"App Docs","/apps/app-docs","2.Apps/app-docs",[456,460,464,468,472,476,480,484,488,492,496,500,504,508,512,516,520],{"title":457,"path":458,"stem":459},"Adobe Commerce","/apps/app-docs/adobe-commerce","2.Apps/app-docs/adobe-commerce",{"title":461,"path":462,"stem":463},"B2Bsellers","/apps/app-docs/b2bsellers","2.Apps/app-docs/b2bsellers",{"title":465,"path":466,"stem":467},"Battery Included","/apps/app-docs/battery-included","2.Apps/app-docs/battery-included",{"title":469,"path":470,"stem":471},"CCM19","/apps/app-docs/ccm19","2.Apps/app-docs/ccm19",{"title":473,"path":474,"stem":475},"Cookiebot","/apps/app-docs/cookiebot","2.Apps/app-docs/cookiebot",{"title":477,"path":478,"stem":479},"Google Tag Manager (GTM)","/apps/app-docs/gtm","2.Apps/app-docs/gtm",{"title":481,"path":482,"stem":483},"Hygraph","/apps/app-docs/hygraph","2.Apps/app-docs/hygraph",{"title":485,"path":486,"stem":487},"Nimstrata Google Retail API","/apps/app-docs/nimstrata","2.Apps/app-docs/nimstrata",{"title":489,"path":490,"stem":491},"Pimcore","/apps/app-docs/pimcore","2.Apps/app-docs/pimcore",{"title":493,"path":494,"stem":495},"Commercetools","/apps/app-docs/commercetools","2.apps/app-docs/commercetools",{"title":497,"path":498,"stem":499},"Emporix","/apps/app-docs/emporix","2.apps/app-docs/emporix",{"title":501,"path":502,"stem":503},"Klaviyo","/apps/app-docs/klaviyo","2.apps/app-docs/klaviyo",{"title":505,"path":506,"stem":507},"OXID eShop","/apps/app-docs/oxid","2.apps/app-docs/oxid",{"title":509,"path":510,"stem":511},"Shopify","/apps/app-docs/shopify","2.apps/app-docs/shopify",{"title":513,"path":514,"stem":515},"Shopware","/apps/app-docs/shopware","2.apps/app-docs/shopware",{"title":517,"path":518,"stem":519},"Vercel Analytics","/apps/app-docs/vercel-analytics","2.apps/app-docs/vercel-analytics",{"title":521,"path":522,"stem":523},"Vercel Speed Insights","/apps/app-docs/vercel-speed-insights","2.apps/app-docs/vercel-speed-insights",{"title":525,"path":526,"stem":527,"children":528},"Laioutr UI","/laioutr-ui","3.laioutr-ui/0.index",[529,530,554,560,566,672,678,684,738,760,813],{"title":525,"path":526,"stem":527},{"title":5,"path":531,"stem":532,"children":533},"/laioutr-ui/getting-started","3.laioutr-ui/01.getting-started/0.index",[534,535,539,543,547,551],{"title":5,"path":531,"stem":532},{"title":536,"path":537,"stem":538},"Browser support","/laioutr-ui/getting-started/browser-support","3.laioutr-ui/01.getting-started/1.browser-support",{"title":540,"path":541,"stem":542},"Common Data","/laioutr-ui/getting-started/common-data","3.laioutr-ui/01.getting-started/99.common-data",{"title":544,"path":545,"stem":546},"Figma Kit","/laioutr-ui/getting-started/figma-kit","3.laioutr-ui/01.getting-started/figma-kit",{"title":548,"path":549,"stem":550},"Theming","/laioutr-ui/getting-started/theming","3.laioutr-ui/01.getting-started/theming",{"title":208,"path":552,"stem":553},"/laioutr-ui/getting-started/z-ordering","3.laioutr-ui/01.getting-started/z-ordering",{"title":555,"path":556,"stem":557,"children":558},"B2B","/laioutr-ui/b2b","3.laioutr-ui/b2b/0.index",[559],{"title":555,"path":556,"stem":557},{"title":561,"path":562,"stem":563,"children":564},"Booking","/laioutr-ui/booking","3.laioutr-ui/booking/0.index",[565],{"title":561,"path":562,"stem":563},{"title":567,"path":568,"stem":569,"children":570},"CMS","/laioutr-ui/cms","3.laioutr-ui/cms/0.index",[571,572,597,605,617,626,647],{"title":567,"path":568,"stem":569},{"title":573,"path":574,"stem":575,"children":576,"page":55},"Banner","/laioutr-ui/cms/banner","3.laioutr-ui/cms/banner",[577,581,585,589,593],{"title":578,"path":579,"stem":580},"Banner Slider","/laioutr-ui/cms/banner/bannerslider","3.laioutr-ui/cms/banner/BannerSlider",{"title":582,"path":583,"stem":584},"Basic Banner with Image and Text","/laioutr-ui/cms/banner/basicbannerwithimageandtext","3.laioutr-ui/cms/banner/BasicBannerWithImageAndText",{"title":586,"path":587,"stem":588},"Content with Image and Text","/laioutr-ui/cms/banner/contentwithimageandtext","3.laioutr-ui/cms/banner/ContentWithImageAndText",{"title":590,"path":591,"stem":592},"Content With Text Columns","/laioutr-ui/cms/banner/contentwithtextcolumns","3.laioutr-ui/cms/banner/ContentWithTextColumns",{"title":594,"path":595,"stem":596},"USP Banner","/laioutr-ui/cms/banner/uspbanner","3.laioutr-ui/cms/banner/UspBanner",{"title":366,"path":598,"stem":599,"children":600,"page":55},"/laioutr-ui/cms/blog","3.laioutr-ui/cms/blog",[601],{"title":602,"path":603,"stem":604},"Blog Post","/laioutr-ui/cms/blog/blogpost","3.laioutr-ui/cms/blog/BlogPost",{"title":358,"path":606,"stem":607,"children":608,"page":55},"/laioutr-ui/cms/newsletter","3.laioutr-ui/cms/newsletter",[609,613],{"title":610,"path":611,"stem":612},"Input for Newsletter","/laioutr-ui/cms/newsletter/inputnewsletter","3.laioutr-ui/cms/newsletter/InputNewsletter",{"title":614,"path":615,"stem":616},"Newsletter Registration","/laioutr-ui/cms/newsletter/newsletterregistration","3.laioutr-ui/cms/newsletter/NewsletterRegistration",{"title":618,"path":619,"stem":620,"children":621,"page":55},"Quotes","/laioutr-ui/cms/quotes","3.laioutr-ui/cms/quotes",[622],{"title":623,"path":624,"stem":625},"Personal Quote with Text and Image","/laioutr-ui/cms/quotes/personalquote","3.laioutr-ui/cms/quotes/PersonalQuote",{"title":627,"path":628,"stem":629,"children":630,"page":55},"Reviews","/laioutr-ui/cms/reviews","3.laioutr-ui/cms/reviews",[631,635,639,643],{"title":632,"path":633,"stem":634},"Quote Card","/laioutr-ui/cms/reviews/quotecard","3.laioutr-ui/cms/reviews/QuoteCard",{"title":636,"path":637,"stem":638},"Rating","/laioutr-ui/cms/reviews/rating","3.laioutr-ui/cms/reviews/Rating",{"title":640,"path":641,"stem":642},"Rating Form","/laioutr-ui/cms/reviews/ratingform","3.laioutr-ui/cms/reviews/RatingForm",{"title":644,"path":645,"stem":646},"Review Section","/laioutr-ui/cms/reviews/reviewsection","3.laioutr-ui/cms/reviews/ReviewSection",{"title":648,"path":649,"stem":650,"children":651,"page":55},"Slider","/laioutr-ui/cms/slider","3.laioutr-ui/cms/slider",[652,656,660,664,668],{"title":653,"path":654,"stem":655},"Hero Slider","/laioutr-ui/cms/slider/heroslider","3.laioutr-ui/cms/slider/HeroSlider",{"title":657,"path":658,"stem":659},"Logo Slider","/laioutr-ui/cms/slider/logoslider","3.laioutr-ui/cms/slider/LogoSlider",{"title":661,"path":662,"stem":663},"Swiper Navigation with Bullets","/laioutr-ui/cms/slider/swipernavigationbullets","3.laioutr-ui/cms/slider/SwiperNavigationBullets",{"title":665,"path":666,"stem":667},"Swiper Navigation Compact","/laioutr-ui/cms/slider/swipernavigationcompact","3.laioutr-ui/cms/slider/SwiperNavigationCompact",{"title":669,"path":670,"stem":671},"Swiper Navigation with Numbers","/laioutr-ui/cms/slider/swipernavigationnumbers","3.laioutr-ui/cms/slider/SwiperNavigationNumbers",{"title":673,"path":674,"stem":675,"children":676},"Marketplace","/laioutr-ui/marketplace","3.laioutr-ui/marketplace/0.index",[677],{"title":673,"path":674,"stem":675},{"title":679,"path":680,"stem":681,"children":682},"Multichannel","/laioutr-ui/multichannel","3.laioutr-ui/multichannel/0.index",[683],{"title":679,"path":680,"stem":681},{"title":685,"path":686,"stem":687,"children":688},"Navigation & Headers","/laioutr-ui/navigation","3.laioutr-ui/navigation/0.index",[689,690,694,698,702,706,710,714,718,722,726,730,734],{"title":685,"path":686,"stem":687},{"title":691,"path":692,"stem":693},"Basic Header","/laioutr-ui/navigation/basicheader","3.laioutr-ui/navigation/BasicHeader",{"title":695,"path":696,"stem":697},"Color Mode Switch","/laioutr-ui/navigation/colormodeswitch","3.laioutr-ui/navigation/ColorModeSwitch",{"title":699,"path":700,"stem":701},"Desktop Side By Side Menu","/laioutr-ui/navigation/desktopsidebysidemenu","3.laioutr-ui/navigation/DesktopSideBySideMenu",{"title":703,"path":704,"stem":705},"Header with Text Links","/laioutr-ui/navigation/headerwithtextlinks","3.laioutr-ui/navigation/HeaderWithTextLinks",{"title":707,"path":708,"stem":709},"Locale Select","/laioutr-ui/navigation/localeselect","3.laioutr-ui/navigation/LocaleSelect",{"title":711,"path":712,"stem":713},"Mega Menu Desktop","/laioutr-ui/navigation/megamenudesktop","3.laioutr-ui/navigation/MegaMenuDesktop",{"title":715,"path":716,"stem":717},"Mobile Menu","/laioutr-ui/navigation/mobilemenu","3.laioutr-ui/navigation/MobileMenu",{"title":719,"path":720,"stem":721},"Search Overlay Input","/laioutr-ui/navigation/searchoverlayinput","3.laioutr-ui/navigation/SearchOverlayInput",{"title":723,"path":724,"stem":725},"Shop Header","/laioutr-ui/navigation/shopheader","3.laioutr-ui/navigation/ShopHeader",{"title":727,"path":728,"stem":729},"Top Bar","/laioutr-ui/navigation/topbar","3.laioutr-ui/navigation/TopBar",{"title":731,"path":732,"stem":733},"Breadcrumb","/laioutr-ui/navigation/breadcrumb","3.laioutr-ui/navigation/breadcrumb",{"title":735,"path":736,"stem":737},"Footer","/laioutr-ui/navigation/footer","3.laioutr-ui/navigation/footer",{"title":739,"path":740,"stem":741,"children":742},"SaaS","/laioutr-ui/saas","3.laioutr-ui/saas/0.index",[743,744,748,752,756],{"title":739,"path":740,"stem":741},{"title":745,"path":746,"stem":747},"Billing Cycle Switch","/laioutr-ui/saas/billingcycleswitch","3.laioutr-ui/saas/BillingCycleSwitch",{"title":749,"path":750,"stem":751},"Pricing Plan","/laioutr-ui/saas/pricingplan","3.laioutr-ui/saas/pricingplan",{"title":753,"path":754,"stem":755},"Pricing Plans","/laioutr-ui/saas/pricingplans","3.laioutr-ui/saas/pricingplans",{"title":757,"path":758,"stem":759},"Pricing Table","/laioutr-ui/saas/pricingtable","3.laioutr-ui/saas/pricingtable",{"title":761,"path":762,"stem":763,"children":764},"Shop","/laioutr-ui/shop","3.laioutr-ui/shop/0.index",[765,766,770,774,778,782,786,790,794,798,802,806,810],{"title":761,"path":762,"stem":763},{"title":767,"path":768,"stem":769},"Cards Container","/laioutr-ui/shop/cardscontainer","3.laioutr-ui/shop/CardsContainer",{"title":771,"path":772,"stem":773},"Grid Card Content","/laioutr-ui/shop/gridcardcontent","3.laioutr-ui/shop/GridCardContent",{"title":775,"path":776,"stem":777},"Grid Card Text Content","/laioutr-ui/shop/gridcardtextcontent","3.laioutr-ui/shop/GridCardTextContent",{"title":779,"path":780,"stem":781},"Inpage Navigation Basic Grid","/laioutr-ui/shop/inpagenavigationbasicgrid","3.laioutr-ui/shop/InpageNavigationBasicGrid",{"title":783,"path":784,"stem":785},"Inpage Navigation Basic Slider","/laioutr-ui/shop/inpagenavigationbasicslider","3.laioutr-ui/shop/InpageNavigationBasicSlider",{"title":787,"path":788,"stem":789},"Inpage Navigation Big Grid","/laioutr-ui/shop/inpagenavigationbiggrid","3.laioutr-ui/shop/InpageNavigationBigGrid",{"title":791,"path":792,"stem":793},"Inpage Navigation Big Slider","/laioutr-ui/shop/inpagenavigationbigslider","3.laioutr-ui/shop/InpageNavigationBigSlider",{"title":795,"path":796,"stem":797},"Inpage Navigation Compact Grid","/laioutr-ui/shop/inpagenavigationcompactgrid","3.laioutr-ui/shop/InpageNavigationCompactGrid",{"title":799,"path":800,"stem":801},"Inpage Navigation Compact Slider","/laioutr-ui/shop/inpagenavigationcompactslider","3.laioutr-ui/shop/InpageNavigationCompactSlider",{"title":803,"path":804,"stem":805},"Product Card","/laioutr-ui/shop/productcard","3.laioutr-ui/shop/ProductCard",{"title":807,"path":808,"stem":809},"Product Slider","/laioutr-ui/shop/productslider","3.laioutr-ui/shop/ProductSlider",{"title":264,"path":811,"stem":812},"/laioutr-ui/shop/filters","3.laioutr-ui/shop/filters",{"title":814,"path":815,"stem":816,"children":817},"UI Kit","/laioutr-ui/ui-kit","3.laioutr-ui/ui-kit/0.index",[818,819,896,917,938,971,992,1057],{"title":814,"path":815,"stem":816},{"title":820,"path":821,"stem":822,"children":823,"page":55},"General","/laioutr-ui/ui-kit/general","3.laioutr-ui/ui-kit/01.general",[824,828,832,836,840,844,848,852,856,860,864,868,872,876,880,884,888,892],{"title":825,"path":826,"stem":827},"Accordion","/laioutr-ui/ui-kit/general/accordion","3.laioutr-ui/ui-kit/01.general/Accordion",{"title":829,"path":830,"stem":831},"Avatar","/laioutr-ui/ui-kit/general/avatar","3.laioutr-ui/ui-kit/01.general/Avatar",{"title":833,"path":834,"stem":835},"Backdrop","/laioutr-ui/ui-kit/general/backdrop","3.laioutr-ui/ui-kit/01.general/Backdrop",{"title":837,"path":838,"stem":839},"Color Swatch","/laioutr-ui/ui-kit/general/colorswatch","3.laioutr-ui/ui-kit/01.general/ColorSwatch",{"title":841,"path":842,"stem":843},"Dropdown Menu","/laioutr-ui/ui-kit/general/dropdownmenu","3.laioutr-ui/ui-kit/01.general/DropdownMenu",{"title":845,"path":846,"stem":847},"Edge Glow","/laioutr-ui/ui-kit/general/edgeglow","3.laioutr-ui/ui-kit/01.general/EdgeGlow",{"title":849,"path":850,"stem":851},"Empty State","/laioutr-ui/ui-kit/general/emptystate","3.laioutr-ui/ui-kit/01.general/EmptyState",{"title":853,"path":854,"stem":855},"Icon","/laioutr-ui/ui-kit/general/icon","3.laioutr-ui/ui-kit/01.general/Icon",{"title":857,"path":858,"stem":859},"Image Contrast Overlay","/laioutr-ui/ui-kit/general/imagecontrastoverlay","3.laioutr-ui/ui-kit/01.general/ImageContrastOverlay",{"title":861,"path":862,"stem":863},"Image Variant Thumbnail","/laioutr-ui/ui-kit/general/imagevariantthumbnail","3.laioutr-ui/ui-kit/01.general/ImageVariantThumbnail",{"title":865,"path":866,"stem":867},"Loading Spinner","/laioutr-ui/ui-kit/general/loadingspinner","3.laioutr-ui/ui-kit/01.general/LoadingSpinner",{"title":869,"path":870,"stem":871},"Media","/laioutr-ui/ui-kit/general/media","3.laioutr-ui/ui-kit/01.general/Media",{"title":873,"path":874,"stem":875},"Navigation Bullets","/laioutr-ui/ui-kit/general/navigationbullets","3.laioutr-ui/ui-kit/01.general/NavigationBullets",{"title":877,"path":878,"stem":879},"Placeholder","/laioutr-ui/ui-kit/general/placeholder","3.laioutr-ui/ui-kit/01.general/Placeholder",{"title":881,"path":882,"stem":883},"Progress Bar","/laioutr-ui/ui-kit/general/progressbar","3.laioutr-ui/ui-kit/01.general/ProgressBar",{"title":885,"path":886,"stem":887},"Scrollbar","/laioutr-ui/ui-kit/general/scrollbar","3.laioutr-ui/ui-kit/01.general/Scrollbar",{"title":889,"path":890,"stem":891},"Swatch Preview","/laioutr-ui/ui-kit/general/swatchpreview","3.laioutr-ui/ui-kit/01.general/SwatchPreview",{"title":893,"path":894,"stem":895},"Thumbnail","/laioutr-ui/ui-kit/general/thumbnail","3.laioutr-ui/ui-kit/01.general/Thumbnail",{"title":897,"path":898,"stem":899,"children":900,"page":55},"Typography","/laioutr-ui/ui-kit/typography","3.laioutr-ui/ui-kit/02.typography",[901,905,909,913],{"title":902,"path":903,"stem":904},"Icon List","/laioutr-ui/ui-kit/typography/iconlist","3.laioutr-ui/ui-kit/02.typography/IconList",{"title":906,"path":907,"stem":908},"Link","/laioutr-ui/ui-kit/typography/link","3.laioutr-ui/ui-kit/02.typography/Link",{"title":910,"path":911,"stem":912},"Rich Content","/laioutr-ui/ui-kit/typography/richcontent","3.laioutr-ui/ui-kit/02.typography/RichContent",{"title":914,"path":915,"stem":916},"Text","/laioutr-ui/ui-kit/typography/text","3.laioutr-ui/ui-kit/02.typography/Text",{"title":918,"path":919,"stem":920,"children":921,"page":55},"Layout","/laioutr-ui/ui-kit/layout","3.laioutr-ui/ui-kit/03.layout",[922,926,930,934],{"title":923,"path":924,"stem":925},"Grid Fill","/laioutr-ui/ui-kit/layout/gridfill","3.laioutr-ui/ui-kit/03.layout/GridFill",{"title":927,"path":928,"stem":929},"Grid Masonry","/laioutr-ui/ui-kit/layout/gridmasonry","3.laioutr-ui/ui-kit/03.layout/GridMasonry",{"title":931,"path":932,"stem":933},"Scroll Area","/laioutr-ui/ui-kit/layout/scrollarea","3.laioutr-ui/ui-kit/03.layout/ScrollArea",{"title":935,"path":936,"stem":937},"Separator","/laioutr-ui/ui-kit/layout/separator","3.laioutr-ui/ui-kit/03.layout/Separator",{"title":939,"path":940,"stem":941,"children":942,"page":55},"Content","/laioutr-ui/ui-kit/content","3.laioutr-ui/ui-kit/04.content",[943,947,951,955,959,963,967],{"title":944,"path":945,"stem":946},"Card","/laioutr-ui/ui-kit/content/card","3.laioutr-ui/ui-kit/04.content/Card",{"title":948,"path":949,"stem":950},"CTA Banner Basic","/laioutr-ui/ui-kit/content/ctabannerbasic","3.laioutr-ui/ui-kit/04.content/CtaBannerBasic",{"title":952,"path":953,"stem":954},"CTA Banner Integrated","/laioutr-ui/ui-kit/content/ctabannerintegrated","3.laioutr-ui/ui-kit/04.content/CtaBannerIntegrated",{"title":956,"path":957,"stem":958},"CTA Banner Showcase","/laioutr-ui/ui-kit/content/ctabannershowcase","3.laioutr-ui/ui-kit/04.content/CtaBannerShowcase",{"title":960,"path":961,"stem":962},"Link Tile Basic","/laioutr-ui/ui-kit/content/linktilebasic","3.laioutr-ui/ui-kit/04.content/LinkTileBasic",{"title":964,"path":965,"stem":966},"Link Tile Big","/laioutr-ui/ui-kit/content/linktilebig","3.laioutr-ui/ui-kit/04.content/LinkTileBig",{"title":968,"path":969,"stem":970},"Link Tile Compact","/laioutr-ui/ui-kit/content/linktilecompact","3.laioutr-ui/ui-kit/04.content/LinkTileCompact",{"title":972,"path":973,"stem":974,"children":975,"page":55},"Surfaces","/laioutr-ui/ui-kit/surfaces","3.laioutr-ui/ui-kit/05.surfaces",[976,980,984,988],{"title":977,"path":978,"stem":979},"Alert Dialog","/laioutr-ui/ui-kit/surfaces/alertdialog","3.laioutr-ui/ui-kit/05.surfaces/AlertDialog",{"title":981,"path":982,"stem":983},"Sheet","/laioutr-ui/ui-kit/surfaces/sheet","3.laioutr-ui/ui-kit/05.surfaces/Sheet",{"title":985,"path":986,"stem":987},"Toast","/laioutr-ui/ui-kit/surfaces/toast","3.laioutr-ui/ui-kit/05.surfaces/Toast",{"title":989,"path":990,"stem":991},"Toaster","/laioutr-ui/ui-kit/surfaces/toaster","3.laioutr-ui/ui-kit/05.surfaces/Toaster",{"title":993,"path":994,"stem":995,"children":996,"page":55},"Form","/laioutr-ui/ui-kit/form","3.laioutr-ui/ui-kit/06.form",[997,1001,1005,1009,1013,1017,1021,1025,1029,1033,1037,1041,1045,1049,1053],{"title":998,"path":999,"stem":1000},"Button","/laioutr-ui/ui-kit/form/button","3.laioutr-ui/ui-kit/06.form/Button",{"title":1002,"path":1003,"stem":1004},"Checkbox","/laioutr-ui/ui-kit/form/checkbox","3.laioutr-ui/ui-kit/06.form/Checkbox",{"title":1006,"path":1007,"stem":1008},"Field","/laioutr-ui/ui-kit/form/field","3.laioutr-ui/ui-kit/06.form/Field",{"title":1010,"path":1011,"stem":1012},"Input","/laioutr-ui/ui-kit/form/input","3.laioutr-ui/ui-kit/06.form/Input",{"title":1014,"path":1015,"stem":1016},"Input Checkbox","/laioutr-ui/ui-kit/form/inputcheckbox","3.laioutr-ui/ui-kit/06.form/InputCheckbox",{"title":1018,"path":1019,"stem":1020},"Password Input","/laioutr-ui/ui-kit/form/inputpassword","3.laioutr-ui/ui-kit/06.form/InputPassword",{"title":1022,"path":1023,"stem":1024},"Search Input","/laioutr-ui/ui-kit/form/inputsearch","3.laioutr-ui/ui-kit/06.form/InputSearch",{"title":1026,"path":1027,"stem":1028},"Label","/laioutr-ui/ui-kit/form/label","3.laioutr-ui/ui-kit/06.form/Label",{"title":1030,"path":1031,"stem":1032},"Load More","/laioutr-ui/ui-kit/form/loadmore","3.laioutr-ui/ui-kit/06.form/LoadMore",{"title":1034,"path":1035,"stem":1036},"Pagination","/laioutr-ui/ui-kit/form/pagination","3.laioutr-ui/ui-kit/06.form/Pagination",{"title":1038,"path":1039,"stem":1040},"Quantity Picker","/laioutr-ui/ui-kit/form/quantitypicker","3.laioutr-ui/ui-kit/06.form/QuantityPicker",{"title":1042,"path":1043,"stem":1044},"Radio Group","/laioutr-ui/ui-kit/form/radioselect","3.laioutr-ui/ui-kit/06.form/RadioSelect",{"title":1046,"path":1047,"stem":1048},"Select","/laioutr-ui/ui-kit/form/select","3.laioutr-ui/ui-kit/06.form/Select",{"title":1050,"path":1051,"stem":1052},"Switch","/laioutr-ui/ui-kit/form/switch","3.laioutr-ui/ui-kit/06.form/Switch",{"title":1054,"path":1055,"stem":1056},"Variant Select Button","/laioutr-ui/ui-kit/form/variantselectbutton","3.laioutr-ui/ui-kit/06.form/VariantSelectButton",{"title":1058,"path":1059,"stem":1060,"children":1061,"page":55},"Indicators","/laioutr-ui/ui-kit/indicators","3.laioutr-ui/ui-kit/07.indicators",[1062,1066,1070,1074,1078,1082,1086,1090],{"title":1063,"path":1064,"stem":1065},"Badge","/laioutr-ui/ui-kit/indicators/badge","3.laioutr-ui/ui-kit/07.indicators/Badge",{"title":1067,"path":1068,"stem":1069},"Caption Flag","/laioutr-ui/ui-kit/indicators/captionflag","3.laioutr-ui/ui-kit/07.indicators/CaptionFlag",{"title":1071,"path":1072,"stem":1073},"Category Node Flag","/laioutr-ui/ui-kit/indicators/categorynodeflag","3.laioutr-ui/ui-kit/07.indicators/CategoryNodeFlag",{"title":1075,"path":1076,"stem":1077},"Product Tile Flag","/laioutr-ui/ui-kit/indicators/producttileflag","3.laioutr-ui/ui-kit/07.indicators/ProductTileFlag",{"title":1079,"path":1080,"stem":1081},"Rating Summary","/laioutr-ui/ui-kit/indicators/ratingsummary","3.laioutr-ui/ui-kit/07.indicators/RatingSummary",{"title":1083,"path":1084,"stem":1085},"Rating Summary Small","/laioutr-ui/ui-kit/indicators/ratingsummarysmall","3.laioutr-ui/ui-kit/07.indicators/RatingSummarySmall",{"title":1087,"path":1088,"stem":1089},"Savings Badge","/laioutr-ui/ui-kit/indicators/savingsbadge","3.laioutr-ui/ui-kit/07.indicators/SavingsBadge",{"title":1091,"path":1092,"stem":1093},"Stars Rating","/laioutr-ui/ui-kit/indicators/starsrating","3.laioutr-ui/ui-kit/07.indicators/StarsRating",{"title":1095,"path":1096,"stem":1097,"children":1098},"Hosting","/hosting","4.hosting/0.index",[1099,1100,1106,1136],{"title":1095,"path":1096,"stem":1097},{"title":1101,"path":1102,"stem":1103,"children":1104},"Laioutr Cloud","/hosting/laioutr-cloud","4.hosting/0.laioutr-cloud/0.index",[1105],{"title":1101,"path":1102,"stem":1103},{"title":1107,"path":1108,"stem":1109,"children":1110},"Hosting Adapter","/hosting/hosting-adapter","4.hosting/1.hosting-adapter/0.index",[1111,1112,1116,1120,1124,1128,1132],{"title":1107,"path":1108,"stem":1109},{"title":1113,"path":1114,"stem":1115},"AWS Adapter","/hosting/hosting-adapter/aws-adapter","4.hosting/1.hosting-adapter/aws-adapter",{"title":1117,"path":1118,"stem":1119},"Azure Adapter","/hosting/hosting-adapter/azure-adapter","4.hosting/1.hosting-adapter/azure-adapter",{"title":1121,"path":1122,"stem":1123},"Google Adapter","/hosting/hosting-adapter/google-adapter","4.hosting/1.hosting-adapter/google-adapter",{"title":1125,"path":1126,"stem":1127},"Netlify Adapter","/hosting/hosting-adapter/netlify-adapter","4.hosting/1.hosting-adapter/netlify-adapter",{"title":1129,"path":1130,"stem":1131},"Scale Commerce Adapter","/hosting/hosting-adapter/scale-commerce-adapter","4.hosting/1.hosting-adapter/scale-commerce-adapter",{"title":1133,"path":1134,"stem":1135},"Vercel Adapter","/hosting/hosting-adapter/vercel-adapter","4.hosting/1.hosting-adapter/vercel-adapter",{"title":1137,"path":1138,"stem":1139,"children":1140},"Bring Your Own Server (BYOS)","/hosting/bring-your-own-server-byos","4.hosting/2.bring-your-own-server-byos/0.index",[1141,1142,1146,1150,1154,1158,1162],{"title":1137,"path":1138,"stem":1139},{"title":1143,"path":1144,"stem":1145},"BYOS Agent","/hosting/bring-your-own-server-byos/byos-agent","4.hosting/2.bring-your-own-server-byos/byos-agent",{"title":1147,"path":1148,"stem":1149},"Changelog","/hosting/bring-your-own-server-byos/changelog","4.hosting/2.bring-your-own-server-byos/changelog",{"title":1151,"path":1152,"stem":1153},"DevOps Components","/hosting/bring-your-own-server-byos/devops","4.hosting/2.bring-your-own-server-byos/devops",{"title":1155,"path":1156,"stem":1157},"Infrastructure Requirements","/hosting/bring-your-own-server-byos/infrastructure","4.hosting/2.bring-your-own-server-byos/infrastructure",{"title":1159,"path":1160,"stem":1161},"Software Requirements","/hosting/bring-your-own-server-byos/software","4.hosting/2.bring-your-own-server-byos/software",{"title":1163,"path":1164,"stem":1165},"Webhook Configuration","/hosting/bring-your-own-server-byos/webhook-config","4.hosting/2.bring-your-own-server-byos/webhook-config",{"title":1167,"path":1168,"stem":1169,"children":1170},"Checkout","/checkout","5.Checkout/0.index",[1171],{"title":1167,"path":1168,"stem":1169},{"title":1173,"path":1174,"stem":1175,"children":1176},"Larry AI","/larry-ai","6.Larry-AI/0.index",[1177],{"title":1173,"path":1174,"stem":1175},{"title":544,"path":1179,"stem":1180,"children":1181},"/figma-kit","7.Figma Kit/0.index",[1182,1183,1199],{"title":544,"path":1179,"stem":1180},{"title":121,"path":1184,"stem":1185,"children":1186,"page":55},"/figma-kit/introduction","7.Figma Kit/1.Introduction",[1187,1191,1195],{"title":1188,"path":1189,"stem":1190},"How to Start","/figma-kit/introduction/howtostart","7.Figma Kit/1.Introduction/0.howtostart",{"title":1192,"path":1193,"stem":1194},"Figma Variables","/figma-kit/introduction/figma-variables","7.Figma Kit/1.Introduction/figma-variables",{"title":1196,"path":1197,"stem":1198},"Library Connections","/figma-kit/introduction/library-connections","7.Figma Kit/1.Introduction/library-connections",{"title":1200,"path":1201,"stem":1202,"children":1203,"page":55},"Kits","/figma-kit/kits","7.Figma Kit/Kits",[1204,1207,1210,1213,1217,1220,1224,1228,1231,1234],{"title":555,"path":1205,"stem":1206},"/figma-kit/kits/b2b","7.Figma Kit/Kits/b2b",{"title":561,"path":1208,"stem":1209},"/figma-kit/kits/booking","7.Figma Kit/Kits/booking",{"title":567,"path":1211,"stem":1212},"/figma-kit/kits/cms","7.Figma Kit/Kits/cms",{"title":1214,"path":1215,"stem":1216},"Inpage Navigation","/figma-kit/kits/inpage-navigation","7.Figma Kit/Kits/inpage-navigation",{"title":673,"path":1218,"stem":1219},"/figma-kit/kits/marketplace","7.Figma Kit/Kits/marketplace",{"title":1221,"path":1222,"stem":1223},"Retail & Multichannel","/figma-kit/kits/multichannel","7.Figma Kit/Kits/multichannel",{"title":1225,"path":1226,"stem":1227},"Navigation","/figma-kit/kits/navigation","7.Figma Kit/Kits/navigation",{"title":739,"path":1229,"stem":1230},"/figma-kit/kits/saas","7.Figma Kit/Kits/saas",{"title":761,"path":1232,"stem":1233},"/figma-kit/kits/shop","7.Figma Kit/Kits/shop",{"title":814,"path":1235,"stem":1236},"/figma-kit/kits/ui-kit","7.Figma Kit/Kits/ui-kit",{"title":1238,"path":1239,"stem":1240,"children":1241},"Cockpit","/cockpit","8.Cockpit/0.index",[1242,1243,1273,1290,1307],{"title":1238,"path":1239,"stem":1240},{"title":150,"path":1244,"stem":1245,"children":1246,"page":55},"/cockpit/features","8.Cockpit/1.Features",[1247,1250,1254,1258,1262,1265,1269],{"title":392,"path":1248,"stem":1249},"/cockpit/features/apps","8.Cockpit/1.Features/apps",{"title":1251,"path":1252,"stem":1253},"Content (Collections)","/cockpit/features/content-collections","8.Cockpit/1.Features/content-collections",{"title":1255,"path":1256,"stem":1257},"Deployments","/cockpit/features/deployments","8.Cockpit/1.Features/deployments",{"title":1259,"path":1260,"stem":1261},"Markets","/cockpit/features/markets","8.Cockpit/1.Features/markets",{"title":192,"path":1263,"stem":1264},"/cockpit/features/redirects","8.Cockpit/1.Features/redirects",{"title":1266,"path":1267,"stem":1268},"Studio","/cockpit/features/studio","8.Cockpit/1.Features/studio",{"title":1270,"path":1271,"stem":1272},"Translations","/cockpit/features/translations","8.Cockpit/1.Features/translations",{"title":1274,"path":1275,"stem":1276,"children":1277,"page":55},"Project Settings","/cockpit/project-settings","8.Cockpit/2.Project-Settings",[1278,1282,1286],{"title":1279,"path":1280,"stem":1281},"Delete a project","/cockpit/project-settings/delete-project","8.Cockpit/2.Project-Settings/delete-project",{"title":1283,"path":1284,"stem":1285},"NPM","/cockpit/project-settings/npm","8.Cockpit/2.Project-Settings/npm",{"title":1287,"path":1288,"stem":1289},"Project secret key","/cockpit/project-settings/project-secret-key","8.Cockpit/2.Project-Settings/project-secret-key",{"title":1291,"path":1292,"stem":1293,"children":1294,"page":55},"Account Settings","/cockpit/account-settings","8.Cockpit/3.Account-Settings",[1295,1299,1303],{"title":1296,"path":1297,"stem":1298},"Notifications","/cockpit/account-settings/notifications","8.Cockpit/3.Account-Settings/notifications",{"title":1300,"path":1301,"stem":1302},"Preferences","/cockpit/account-settings/preferences","8.Cockpit/3.Account-Settings/preferences",{"title":1304,"path":1305,"stem":1306},"Security","/cockpit/account-settings/security","8.Cockpit/3.Account-Settings/security",{"title":1308,"path":1309,"stem":1310,"children":1311,"page":55},"Organisation Settings","/cockpit/organisation-settings","8.Cockpit/4.Organisation-Settings",[1312,1316,1320,1324,1328,1332],{"title":1313,"path":1314,"stem":1315},"API keys","/cockpit/organisation-settings/api-keys","8.Cockpit/4.Organisation-Settings/api-keys",{"title":1317,"path":1318,"stem":1319},"Billing","/cockpit/organisation-settings/billing","8.Cockpit/4.Organisation-Settings/billing",{"title":1321,"path":1322,"stem":1323},"General settings","/cockpit/organisation-settings/general-settings","8.Cockpit/4.Organisation-Settings/general-settings",{"title":1325,"path":1326,"stem":1327},"Members","/cockpit/organisation-settings/members","8.Cockpit/4.Organisation-Settings/members",{"title":1329,"path":1330,"stem":1331},"Projects","/cockpit/organisation-settings/projects","8.Cockpit/4.Organisation-Settings/projects",{"title":1333,"path":1334,"stem":1335},"Roles","/cockpit/organisation-settings/roles","8.Cockpit/4.Organisation-Settings/roles",{"title":1337,"path":1338,"stem":1339,"children":1340},"Offering","/offering","9.Offering/0.index",[1341,1342,1374,1387,1400],{"title":1337,"path":1338,"stem":1339},{"title":1343,"path":1344,"stem":1345,"children":1346},"Products","/offering/products","9.Offering/1.Products/0.index",[1347,1348,1353,1358,1363,1369],{"title":1343,"path":1344,"stem":1345},{"title":133,"path":1349,"stem":1350,"children":1351},"/offering/products/frontend","9.Offering/1.Products/1.Frontend/0.index",[1352],{"title":133,"path":1349,"stem":1350},{"title":1238,"path":1354,"stem":1355,"children":1356},"/offering/products/cockpit","9.Offering/1.Products/2.Cockpit/0.index",[1357],{"title":1238,"path":1354,"stem":1355},{"title":1167,"path":1359,"stem":1360,"children":1361},"/offering/products/checkout","9.Offering/1.Products/3.Checkout/0.index",[1362],{"title":1167,"path":1359,"stem":1360},{"title":1364,"path":1365,"stem":1366,"children":1367},"Cloud","/offering/products/cloud","9.Offering/1.Products/4.cloud/0.index",[1368],{"title":1364,"path":1365,"stem":1366},{"title":1173,"path":1370,"stem":1371,"children":1372},"/offering/products/larry-ai","9.Offering/1.Products/5.larry-ai/0.index",[1373],{"title":1173,"path":1370,"stem":1371},{"title":1375,"path":1376,"stem":1377,"children":1378,"page":55},"Service Level Agreement","/offering/service-level-agreement","9.Offering/2.service-level-agreement",[1379,1383],{"title":1380,"path":1381,"stem":1382},"Standard Service Level Agreement Composable Frontend","/offering/service-level-agreement/standard-service-level-agreement","9.Offering/2.service-level-agreement/1.standard-service-level-agreement",{"title":1384,"path":1385,"stem":1386},"Backups","/offering/service-level-agreement/backups","9.Offering/2.service-level-agreement/backups",{"title":1388,"path":1389,"stem":1390,"children":1391,"page":55},"Customer Support","/offering/customer-support","9.Offering/3.customer-support",[1392,1396],{"title":1393,"path":1394,"stem":1395},"Standard Customer Support","/offering/customer-support/standard-customer-support","9.Offering/3.customer-support/1.standard-customer-support",{"title":1397,"path":1398,"stem":1399},"Customer Support Severity Levels of Laioutr products","/offering/customer-support/maximum-serverity-levels","9.Offering/3.customer-support/maximum-serverity-levels",{"title":1401,"path":1402,"stem":1403,"children":1404,"page":55},"Compliance","/offering/compliance","9.Offering/4.Compliance",[1405],{"title":1406,"path":1407,"stem":1408},"Fair usage policy","/offering/compliance/fair-usage-policy","9.Offering/4.Compliance/fair-usage-policy",{"id":1410,"title":264,"body":1411,"description":4047,"extension":4048,"meta":4049,"navigation":3246,"path":265,"seo":4050,"sitemap":4052,"stem":266,"__hash__":4056},"docs/1.Frontend/4.Orchestr/filters.md",{"type":1412,"value":1413,"toc":4031},"minimark",[1414,1418,1439,1444,1447,1612,1615,1683,1698,1703,1713,1931,1939,1943,1952,2010,2014,2017,2045,2049,2052,2330,2345,2348,2377,2381,2384,2549,2572,2576,2590,2761,2780,2804,2808,2811,3021,3037,3050,3053,3059,3084,3087,3171,3184,3188,3191,3888,3891,3983,3987,3999,4003,4027],[1415,1416,1417],"p",{},"A customer narrows a product listing by color, picks a price range, and toggles \"in stock\". Two things have to line up for that to work: your handler needs to know which filters the customer selected, and the response needs to describe which filters and values are still available so the UI can render the next round of choices.",[1415,1419,1420,1421,1425,1426,1430,1431,1434,1435,1438],{},"This page documents both sides of that contract: the ",[1422,1423,1424],"strong",{},"request"," shape your handler receives in its ",[1427,1428,1429],"code",{},"filter"," argument, and the ",[1422,1432,1433],{},"response"," shape your handler returns under ",[1427,1436,1437],{},"availableFilters",". The same shapes apply to query handlers and link handlers; the filter contract is identical for both.",[1440,1441,1443],"h2",{"id":1442},"request-format","Request format",[1415,1445,1446],{},"When a multi-query or multi-link runs, the handler receives the user's selected filters as a record from filter id to value:",[1448,1449,1455],"pre",{"className":1450,"code":1451,"language":1452,"meta":1453,"style":1454},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import type { QueryWireRequestFilter } from '@laioutr-core/orchestr/types';\n// ---cut---\nconst filter: QueryWireRequestFilter = {\n  color: ['red', 'blue'],\n  inStock: true,\n  price: { min: 1000, max: 5000 },\n};\n","ts","twoslash","",[1427,1456,1457,1496,1503,1525,1560,1574,1606],{"__ignoreMap":1454},[1458,1459,1462,1466,1469,1473,1477,1480,1483,1486,1490,1493],"span",{"class":1460,"line":1461},"line",1,[1458,1463,1465],{"class":1464},"s7zQu","import",[1458,1467,1468],{"class":1464}," type",[1458,1470,1472],{"class":1471},"sMK4o"," {",[1458,1474,1476],{"class":1475},"sTEyZ"," QueryWireRequestFilter",[1458,1478,1479],{"class":1471}," }",[1458,1481,1482],{"class":1464}," from",[1458,1484,1485],{"class":1471}," '",[1458,1487,1489],{"class":1488},"sfazB","@laioutr-core/orchestr/types",[1458,1491,1492],{"class":1471},"'",[1458,1494,1495],{"class":1471},";\n",[1458,1497,1499],{"class":1460,"line":1498},2,[1458,1500,1502],{"class":1501},"sHwdD","// ---cut---\n",[1458,1504,1506,1510,1513,1516,1519,1522],{"class":1460,"line":1505},3,[1458,1507,1509],{"class":1508},"spNyl","const",[1458,1511,1512],{"class":1475}," filter",[1458,1514,1515],{"class":1471},":",[1458,1517,1476],{"class":1518},"sBMFI",[1458,1520,1521],{"class":1471}," =",[1458,1523,1524],{"class":1471}," {\n",[1458,1526,1528,1532,1534,1537,1539,1542,1544,1547,1549,1552,1554,1557],{"class":1460,"line":1527},4,[1458,1529,1531],{"class":1530},"swJcz","  color",[1458,1533,1515],{"class":1471},[1458,1535,1536],{"class":1475}," [",[1458,1538,1492],{"class":1471},[1458,1540,1541],{"class":1488},"red",[1458,1543,1492],{"class":1471},[1458,1545,1546],{"class":1471},",",[1458,1548,1485],{"class":1471},[1458,1550,1551],{"class":1488},"blue",[1458,1553,1492],{"class":1471},[1458,1555,1556],{"class":1475},"]",[1458,1558,1559],{"class":1471},",\n",[1458,1561,1563,1566,1568,1572],{"class":1460,"line":1562},5,[1458,1564,1565],{"class":1530},"  inStock",[1458,1567,1515],{"class":1471},[1458,1569,1571],{"class":1570},"sfNiH"," true",[1458,1573,1559],{"class":1471},[1458,1575,1577,1580,1582,1584,1587,1589,1593,1595,1598,1600,1603],{"class":1460,"line":1576},6,[1458,1578,1579],{"class":1530},"  price",[1458,1581,1515],{"class":1471},[1458,1583,1472],{"class":1471},[1458,1585,1586],{"class":1530}," min",[1458,1588,1515],{"class":1471},[1458,1590,1592],{"class":1591},"sbssI"," 1000",[1458,1594,1546],{"class":1471},[1458,1596,1597],{"class":1530}," max",[1458,1599,1515],{"class":1471},[1458,1601,1602],{"class":1591}," 5000",[1458,1604,1605],{"class":1471}," },\n",[1458,1607,1609],{"class":1460,"line":1608},7,[1458,1610,1611],{"class":1471},"};\n",[1415,1613,1614],{},"Filter values use one of three shapes:",[1616,1617,1618,1634],"table",{},[1619,1620,1621],"thead",{},[1622,1623,1624,1628,1631],"tr",{},[1625,1626,1627],"th",{},"Type",[1625,1629,1630],{},"TypeScript",[1625,1632,1633],{},"Example",[1635,1636,1637,1653,1668],"tbody",{},[1622,1638,1639,1643,1648],{},[1640,1641,1642],"td",{},"List",[1640,1644,1645],{},[1427,1646,1647],{},"string[]",[1640,1649,1650],{},[1427,1651,1652],{},"['red', 'blue']",[1622,1654,1655,1658,1663],{},[1640,1656,1657],{},"Boolean",[1640,1659,1660],{},[1427,1661,1662],{},"boolean",[1640,1664,1665],{},[1427,1666,1667],{},"true",[1622,1669,1670,1673,1678],{},[1640,1671,1672],{},"Range",[1640,1674,1675],{},[1427,1676,1677],{},"{ min?: number, max?: number }",[1640,1679,1680],{},[1427,1681,1682],{},"{ min: 1000 }",[1415,1684,1685,1686,1689,1690,1693,1694,1697],{},"Range filters can have ",[1427,1687,1688],{},"min",", ",[1427,1691,1692],{},"max",", or both. The other side stays ",[1427,1695,1696],{},"undefined"," when only one bound is set.",[1699,1700,1702],"h3",{"id":1701},"detecting-range-filters","Detecting range filters",[1415,1704,1705,1706,1709,1710,1712],{},"Filter values are a discriminated union by shape rather than by tag, so use the ",[1427,1707,1708],{},"isRangeFilter"," helper from ",[1427,1711,1489],{}," to narrow safely:",[1448,1714,1716],{"className":1450,"code":1715,"language":1452,"meta":1453,"style":1454},"import type { QueryWireRequestFilter } from '@laioutr-core/orchestr/types';\nimport { isRangeFilter } from '@laioutr-core/orchestr/types';\n// ---cut---\nfunction mapFilters(filter: QueryWireRequestFilter) {\n  for (const id in filter) {\n    const value = filter[id];\n    if (isRangeFilter(value)) {\n      // value: { min?: number, max?: number }\n    } else if (typeof value === 'boolean') {\n      // boolean filter\n    } else {\n      // list filter (string[])\n    }\n  }\n}\n",[1427,1717,1718,1740,1761,1765,1789,1813,1835,1854,1860,1892,1898,1907,1913,1919,1925],{"__ignoreMap":1454},[1458,1719,1720,1722,1724,1726,1728,1730,1732,1734,1736,1738],{"class":1460,"line":1461},[1458,1721,1465],{"class":1464},[1458,1723,1468],{"class":1464},[1458,1725,1472],{"class":1471},[1458,1727,1476],{"class":1475},[1458,1729,1479],{"class":1471},[1458,1731,1482],{"class":1464},[1458,1733,1485],{"class":1471},[1458,1735,1489],{"class":1488},[1458,1737,1492],{"class":1471},[1458,1739,1495],{"class":1471},[1458,1741,1742,1744,1746,1749,1751,1753,1755,1757,1759],{"class":1460,"line":1498},[1458,1743,1465],{"class":1464},[1458,1745,1472],{"class":1471},[1458,1747,1748],{"class":1475}," isRangeFilter",[1458,1750,1479],{"class":1471},[1458,1752,1482],{"class":1464},[1458,1754,1485],{"class":1471},[1458,1756,1489],{"class":1488},[1458,1758,1492],{"class":1471},[1458,1760,1495],{"class":1471},[1458,1762,1763],{"class":1460,"line":1505},[1458,1764,1502],{"class":1501},[1458,1766,1767,1770,1774,1777,1780,1782,1784,1787],{"class":1460,"line":1527},[1458,1768,1769],{"class":1508},"function",[1458,1771,1773],{"class":1772},"s2Zo4"," mapFilters",[1458,1775,1776],{"class":1471},"(",[1458,1778,1429],{"class":1779},"sHdIc",[1458,1781,1515],{"class":1471},[1458,1783,1476],{"class":1518},[1458,1785,1786],{"class":1471},")",[1458,1788,1524],{"class":1471},[1458,1790,1791,1794,1797,1799,1802,1805,1807,1810],{"class":1460,"line":1562},[1458,1792,1793],{"class":1464},"  for",[1458,1795,1796],{"class":1530}," (",[1458,1798,1509],{"class":1508},[1458,1800,1801],{"class":1475}," id",[1458,1803,1804],{"class":1471}," in",[1458,1806,1512],{"class":1475},[1458,1808,1809],{"class":1530},") ",[1458,1811,1812],{"class":1471},"{\n",[1458,1814,1815,1818,1821,1823,1825,1828,1831,1833],{"class":1460,"line":1576},[1458,1816,1817],{"class":1508},"    const",[1458,1819,1820],{"class":1475}," value",[1458,1822,1521],{"class":1471},[1458,1824,1512],{"class":1475},[1458,1826,1827],{"class":1530},"[",[1458,1829,1830],{"class":1475},"id",[1458,1832,1556],{"class":1530},[1458,1834,1495],{"class":1471},[1458,1836,1837,1840,1842,1844,1846,1849,1852],{"class":1460,"line":1608},[1458,1838,1839],{"class":1464},"    if",[1458,1841,1796],{"class":1530},[1458,1843,1708],{"class":1772},[1458,1845,1776],{"class":1530},[1458,1847,1848],{"class":1475},"value",[1458,1850,1851],{"class":1530},")) ",[1458,1853,1812],{"class":1471},[1458,1855,1857],{"class":1460,"line":1856},8,[1458,1858,1859],{"class":1501},"      // value: { min?: number, max?: number }\n",[1458,1861,1863,1866,1869,1872,1874,1877,1879,1882,1884,1886,1888,1890],{"class":1460,"line":1862},9,[1458,1864,1865],{"class":1471},"    }",[1458,1867,1868],{"class":1464}," else",[1458,1870,1871],{"class":1464}," if",[1458,1873,1796],{"class":1530},[1458,1875,1876],{"class":1471},"typeof",[1458,1878,1820],{"class":1475},[1458,1880,1881],{"class":1471}," ===",[1458,1883,1485],{"class":1471},[1458,1885,1662],{"class":1488},[1458,1887,1492],{"class":1471},[1458,1889,1809],{"class":1530},[1458,1891,1812],{"class":1471},[1458,1893,1895],{"class":1460,"line":1894},10,[1458,1896,1897],{"class":1501},"      // boolean filter\n",[1458,1899,1901,1903,1905],{"class":1460,"line":1900},11,[1458,1902,1865],{"class":1471},[1458,1904,1868],{"class":1464},[1458,1906,1524],{"class":1471},[1458,1908,1910],{"class":1460,"line":1909},12,[1458,1911,1912],{"class":1501},"      // list filter (string[])\n",[1458,1914,1916],{"class":1460,"line":1915},13,[1458,1917,1918],{"class":1471},"    }\n",[1458,1920,1922],{"class":1460,"line":1921},14,[1458,1923,1924],{"class":1471},"  }\n",[1458,1926,1928],{"class":1460,"line":1927},15,[1458,1929,1930],{"class":1471},"}\n",[1415,1932,1933,1934,1938],{},"For how these values arrive in the URL, see ",[1935,1936,268],"a",{"href":1937},"/frontend/orchestr/url-query-params#filter-types",".",[1440,1940,1942],{"id":1941},"response-format","Response format",[1415,1944,1945,1946,1948,1949,1515],{},"A multi-query or multi-link handler describes the facets available for the current result set under ",[1427,1947,1437],{},". Each entry is one of four variants, distinguished by ",[1427,1950,1951],{},"type",[1616,1953,1954,1963],{},[1619,1955,1956],{},[1622,1957,1958,1960],{},[1625,1959,1627],{},[1625,1961,1962],{},"When to use",[1635,1964,1965,1975,1984,2000],{},[1622,1966,1967,1972],{},[1640,1968,1969],{},[1427,1970,1971],{},"list",[1640,1973,1974],{},"A discrete set of values, optionally with counts and swatches.",[1622,1976,1977,1981],{},[1640,1978,1979],{},[1427,1980,1662],{},[1640,1982,1983],{},"A single yes/no toggle (in stock, on sale, free shipping).",[1622,1985,1986,1991],{},[1640,1987,1988],{},[1427,1989,1990],{},"range",[1640,1992,1993,1994,1996,1997,1999],{},"A continuous numeric range with ",[1427,1995,1688],{}," and ",[1427,1998,1692],{}," bounds.",[1622,2001,2002,2007],{},[1640,2003,2004],{},[1427,2005,2006],{},"intervals",[1640,2008,2009],{},"Pre-bucketed ranges with counts (e.g. price brackets).",[1699,2011,2013],{"id":2012},"common-fields","Common fields",[1415,2015,2016],{},"All variants share the same base:",[2018,2019,2020,2028,2032,2036],"field-group",{},[2021,2022,2024,2025,2027],"field",{"name":1830,"type":2023,":required":1667},"string","Stable identifier for this filter. Used as the key in the ",[1427,2026,1429],{}," request and in URL query params.",[2021,2029,2031],{"name":2030,"type":2023,":required":1667},"label","Human-readable name for the filter, shown in the UI.",[2021,2033,2035],{"name":1951,"type":2034,":required":1667},"'list' | 'boolean' | 'range' | 'intervals'","Discriminator for the variant.",[2021,2037,2040,2041,1938],{"name":2038,"type":2039},"wellKnownName","WellKnownFilterName","Optional cosmetic hint. See ",[1935,2042,2044],{"href":2043},"#well-known-filter-names","Well-known filter names",[1699,2046,2048],{"id":2047},"list-filters","List filters",[1415,2050,2051],{},"A list filter offers a fixed set of choices the user can multi-select.",[1448,2053,2055],{"className":1450,"code":2054,"language":1452,"meta":1453,"style":1454},"import type { AvailableFilter } from '@laioutr-core/orchestr/types';\n// ---cut---\nconst colorFilter: AvailableFilter = {\n  type: 'list',\n  id: 'color',\n  label: 'Color',\n  wellKnownName: 'color',\n  presentation: 'swatch',\n  values: [\n    { id: 'red', label: 'Red', count: 12, swatch: ['color', '#ff0000'] },\n    { id: 'blue', label: 'Blue', count: 8, swatch: ['color', '#0000ff'] },\n  ],\n};\n",[1427,2056,2057,2080,2084,2099,2114,2130,2146,2161,2177,2187,2256,2319,2326],{"__ignoreMap":1454},[1458,2058,2059,2061,2063,2065,2068,2070,2072,2074,2076,2078],{"class":1460,"line":1461},[1458,2060,1465],{"class":1464},[1458,2062,1468],{"class":1464},[1458,2064,1472],{"class":1471},[1458,2066,2067],{"class":1475}," AvailableFilter",[1458,2069,1479],{"class":1471},[1458,2071,1482],{"class":1464},[1458,2073,1485],{"class":1471},[1458,2075,1489],{"class":1488},[1458,2077,1492],{"class":1471},[1458,2079,1495],{"class":1471},[1458,2081,2082],{"class":1460,"line":1498},[1458,2083,1502],{"class":1501},[1458,2085,2086,2088,2091,2093,2095,2097],{"class":1460,"line":1505},[1458,2087,1509],{"class":1508},[1458,2089,2090],{"class":1475}," colorFilter",[1458,2092,1515],{"class":1471},[1458,2094,2067],{"class":1518},[1458,2096,1521],{"class":1471},[1458,2098,1524],{"class":1471},[1458,2100,2101,2104,2106,2108,2110,2112],{"class":1460,"line":1527},[1458,2102,2103],{"class":1530},"  type",[1458,2105,1515],{"class":1471},[1458,2107,1485],{"class":1471},[1458,2109,1971],{"class":1488},[1458,2111,1492],{"class":1471},[1458,2113,1559],{"class":1471},[1458,2115,2116,2119,2121,2123,2126,2128],{"class":1460,"line":1562},[1458,2117,2118],{"class":1530},"  id",[1458,2120,1515],{"class":1471},[1458,2122,1485],{"class":1471},[1458,2124,2125],{"class":1488},"color",[1458,2127,1492],{"class":1471},[1458,2129,1559],{"class":1471},[1458,2131,2132,2135,2137,2139,2142,2144],{"class":1460,"line":1576},[1458,2133,2134],{"class":1530},"  label",[1458,2136,1515],{"class":1471},[1458,2138,1485],{"class":1471},[1458,2140,2141],{"class":1488},"Color",[1458,2143,1492],{"class":1471},[1458,2145,1559],{"class":1471},[1458,2147,2148,2151,2153,2155,2157,2159],{"class":1460,"line":1608},[1458,2149,2150],{"class":1530},"  wellKnownName",[1458,2152,1515],{"class":1471},[1458,2154,1485],{"class":1471},[1458,2156,2125],{"class":1488},[1458,2158,1492],{"class":1471},[1458,2160,1559],{"class":1471},[1458,2162,2163,2166,2168,2170,2173,2175],{"class":1460,"line":1856},[1458,2164,2165],{"class":1530},"  presentation",[1458,2167,1515],{"class":1471},[1458,2169,1485],{"class":1471},[1458,2171,2172],{"class":1488},"swatch",[1458,2174,1492],{"class":1471},[1458,2176,1559],{"class":1471},[1458,2178,2179,2182,2184],{"class":1460,"line":1862},[1458,2180,2181],{"class":1530},"  values",[1458,2183,1515],{"class":1471},[1458,2185,2186],{"class":1475}," [\n",[1458,2188,2189,2192,2194,2196,2198,2200,2202,2204,2207,2209,2211,2214,2216,2218,2221,2223,2226,2228,2231,2233,2235,2237,2239,2241,2243,2245,2248,2250,2253],{"class":1460,"line":1894},[1458,2190,2191],{"class":1471},"    {",[1458,2193,1801],{"class":1530},[1458,2195,1515],{"class":1471},[1458,2197,1485],{"class":1471},[1458,2199,1541],{"class":1488},[1458,2201,1492],{"class":1471},[1458,2203,1546],{"class":1471},[1458,2205,2206],{"class":1530}," label",[1458,2208,1515],{"class":1471},[1458,2210,1485],{"class":1471},[1458,2212,2213],{"class":1488},"Red",[1458,2215,1492],{"class":1471},[1458,2217,1546],{"class":1471},[1458,2219,2220],{"class":1530}," count",[1458,2222,1515],{"class":1471},[1458,2224,2225],{"class":1591}," 12",[1458,2227,1546],{"class":1471},[1458,2229,2230],{"class":1530}," swatch",[1458,2232,1515],{"class":1471},[1458,2234,1536],{"class":1475},[1458,2236,1492],{"class":1471},[1458,2238,2125],{"class":1488},[1458,2240,1492],{"class":1471},[1458,2242,1546],{"class":1471},[1458,2244,1485],{"class":1471},[1458,2246,2247],{"class":1488},"#ff0000",[1458,2249,1492],{"class":1471},[1458,2251,2252],{"class":1475},"] ",[1458,2254,2255],{"class":1471},"},\n",[1458,2257,2258,2260,2262,2264,2266,2268,2270,2272,2274,2276,2278,2281,2283,2285,2287,2289,2292,2294,2296,2298,2300,2302,2304,2306,2308,2310,2313,2315,2317],{"class":1460,"line":1900},[1458,2259,2191],{"class":1471},[1458,2261,1801],{"class":1530},[1458,2263,1515],{"class":1471},[1458,2265,1485],{"class":1471},[1458,2267,1551],{"class":1488},[1458,2269,1492],{"class":1471},[1458,2271,1546],{"class":1471},[1458,2273,2206],{"class":1530},[1458,2275,1515],{"class":1471},[1458,2277,1485],{"class":1471},[1458,2279,2280],{"class":1488},"Blue",[1458,2282,1492],{"class":1471},[1458,2284,1546],{"class":1471},[1458,2286,2220],{"class":1530},[1458,2288,1515],{"class":1471},[1458,2290,2291],{"class":1591}," 8",[1458,2293,1546],{"class":1471},[1458,2295,2230],{"class":1530},[1458,2297,1515],{"class":1471},[1458,2299,1536],{"class":1475},[1458,2301,1492],{"class":1471},[1458,2303,2125],{"class":1488},[1458,2305,1492],{"class":1471},[1458,2307,1546],{"class":1471},[1458,2309,1485],{"class":1471},[1458,2311,2312],{"class":1488},"#0000ff",[1458,2314,1492],{"class":1471},[1458,2316,2252],{"class":1475},[1458,2318,2255],{"class":1471},[1458,2320,2321,2324],{"class":1460,"line":1909},[1458,2322,2323],{"class":1475},"  ]",[1458,2325,1559],{"class":1471},[1458,2327,2328],{"class":1460,"line":1915},[1458,2329,1611],{"class":1471},[2018,2331,2332,2340],{},[2021,2333,2336,2337,2339],{"name":2334,"type":2335,":required":1667},"presentation","'text' | 'swatch'","Rendering hint: text labels or visual swatches. Values without a ",[1427,2338,2172],{}," field are allowed but may render blank.",[2021,2341,2344],{"name":2342,"type":2343,":required":1667},"values","AvailableFilterListValue[]","The selectable values.",[1415,2346,2347],{},"Each list value has the following shape:",[2018,2349,2350,2357,2361,2366],{},[2021,2351,2353,2354,2356],{"name":2352,"type":2023,":required":1667},"values[].id","The value passed back in the ",[1427,2355,1429],{}," request when selected.",[2021,2358,2360],{"name":2359,"type":2023,":required":1667},"values[].label","The label shown in the UI.",[2021,2362,2365],{"name":2363,"type":2364},"values[].count","number","How many results match if this value is selected. May be approximate.",[2021,2367,2370,2371,2373,2374,1938],{"name":2368,"type":2369},"values[].swatch","Swatch","Visual representation: a single color, multiple colors, a gradient, or an image. See ",[1427,2372,2369],{}," in ",[1427,2375,2376],{},"@laioutr-core/core-types/common",[1699,2378,2380],{"id":2379},"boolean-filters","Boolean filters",[1415,2382,2383],{},"A boolean filter is a single on/off toggle.",[1448,2385,2387],{"className":1450,"code":2386,"language":1452,"meta":1453,"style":1454},"import type { AvailableFilter } from '@laioutr-core/orchestr/types';\n// ---cut---\nconst inStockFilter: AvailableFilter = {\n  type: 'boolean',\n  id: 'inStock',\n  label: 'Availability',\n  wellKnownName: 'in-stock',\n  trueLabel: 'In stock',\n  falseLabel: 'Out of stock',\n  trueCount: 142,\n  falseCount: 18,\n};\n",[1427,2388,2389,2411,2415,2430,2444,2459,2474,2489,2505,2521,2533,2545],{"__ignoreMap":1454},[1458,2390,2391,2393,2395,2397,2399,2401,2403,2405,2407,2409],{"class":1460,"line":1461},[1458,2392,1465],{"class":1464},[1458,2394,1468],{"class":1464},[1458,2396,1472],{"class":1471},[1458,2398,2067],{"class":1475},[1458,2400,1479],{"class":1471},[1458,2402,1482],{"class":1464},[1458,2404,1485],{"class":1471},[1458,2406,1489],{"class":1488},[1458,2408,1492],{"class":1471},[1458,2410,1495],{"class":1471},[1458,2412,2413],{"class":1460,"line":1498},[1458,2414,1502],{"class":1501},[1458,2416,2417,2419,2422,2424,2426,2428],{"class":1460,"line":1505},[1458,2418,1509],{"class":1508},[1458,2420,2421],{"class":1475}," inStockFilter",[1458,2423,1515],{"class":1471},[1458,2425,2067],{"class":1518},[1458,2427,1521],{"class":1471},[1458,2429,1524],{"class":1471},[1458,2431,2432,2434,2436,2438,2440,2442],{"class":1460,"line":1527},[1458,2433,2103],{"class":1530},[1458,2435,1515],{"class":1471},[1458,2437,1485],{"class":1471},[1458,2439,1662],{"class":1488},[1458,2441,1492],{"class":1471},[1458,2443,1559],{"class":1471},[1458,2445,2446,2448,2450,2452,2455,2457],{"class":1460,"line":1562},[1458,2447,2118],{"class":1530},[1458,2449,1515],{"class":1471},[1458,2451,1485],{"class":1471},[1458,2453,2454],{"class":1488},"inStock",[1458,2456,1492],{"class":1471},[1458,2458,1559],{"class":1471},[1458,2460,2461,2463,2465,2467,2470,2472],{"class":1460,"line":1576},[1458,2462,2134],{"class":1530},[1458,2464,1515],{"class":1471},[1458,2466,1485],{"class":1471},[1458,2468,2469],{"class":1488},"Availability",[1458,2471,1492],{"class":1471},[1458,2473,1559],{"class":1471},[1458,2475,2476,2478,2480,2482,2485,2487],{"class":1460,"line":1608},[1458,2477,2150],{"class":1530},[1458,2479,1515],{"class":1471},[1458,2481,1485],{"class":1471},[1458,2483,2484],{"class":1488},"in-stock",[1458,2486,1492],{"class":1471},[1458,2488,1559],{"class":1471},[1458,2490,2491,2494,2496,2498,2501,2503],{"class":1460,"line":1856},[1458,2492,2493],{"class":1530},"  trueLabel",[1458,2495,1515],{"class":1471},[1458,2497,1485],{"class":1471},[1458,2499,2500],{"class":1488},"In stock",[1458,2502,1492],{"class":1471},[1458,2504,1559],{"class":1471},[1458,2506,2507,2510,2512,2514,2517,2519],{"class":1460,"line":1862},[1458,2508,2509],{"class":1530},"  falseLabel",[1458,2511,1515],{"class":1471},[1458,2513,1485],{"class":1471},[1458,2515,2516],{"class":1488},"Out of stock",[1458,2518,1492],{"class":1471},[1458,2520,1559],{"class":1471},[1458,2522,2523,2526,2528,2531],{"class":1460,"line":1894},[1458,2524,2525],{"class":1530},"  trueCount",[1458,2527,1515],{"class":1471},[1458,2529,2530],{"class":1591}," 142",[1458,2532,1559],{"class":1471},[1458,2534,2535,2538,2540,2543],{"class":1460,"line":1900},[1458,2536,2537],{"class":1530},"  falseCount",[1458,2539,1515],{"class":1471},[1458,2541,2542],{"class":1591}," 18",[1458,2544,1559],{"class":1471},[1458,2546,2547],{"class":1460,"line":1909},[1458,2548,1611],{"class":1471},[2018,2550,2551,2555,2559,2566],{},[2021,2552,2554],{"name":2553,"type":2023},"trueLabel","Label for the true state, when \"yes\" needs different wording than the filter's main label.",[2021,2556,2558],{"name":2557,"type":2023},"falseLabel","Label for the false state.",[2021,2560,2562,2563,2565],{"name":2561,"type":2364},"trueCount","Result count if the filter is set to ",[1427,2564,1667],{},". May be approximate.",[2021,2567,2562,2569,2565],{"name":2568,"type":2364},"falseCount",[1427,2570,2571],{},"false",[1699,2573,2575],{"id":2574},"range-filters","Range filters",[1415,2577,2578,2579,1996,2581,2583,2584,2586,2587,1938],{},"A range filter offers a continuous numeric range. The ",[1427,2580,1688],{},[1427,2582,1692],{}," bounds describe the range itself, not the selected window. The selected window comes back in the ",[1427,2585,1429],{}," request as ",[1427,2588,2589],{},"{ min?, max? }",[1448,2591,2593],{"className":1450,"code":2592,"language":1452,"meta":1453,"style":1454},"import type { AvailableFilter } from '@laioutr-core/orchestr/types';\n// ---cut---\nconst priceFilter: AvailableFilter = {\n  type: 'range',\n  id: 'price',\n  label: 'Price',\n  wellKnownName: 'price',\n  min: { amount: 0, currency: 'EUR' },\n  max: { amount: 99900, currency: 'EUR' },\n};\n",[1427,2594,2595,2617,2621,2636,2650,2665,2680,2694,2727,2757],{"__ignoreMap":1454},[1458,2596,2597,2599,2601,2603,2605,2607,2609,2611,2613,2615],{"class":1460,"line":1461},[1458,2598,1465],{"class":1464},[1458,2600,1468],{"class":1464},[1458,2602,1472],{"class":1471},[1458,2604,2067],{"class":1475},[1458,2606,1479],{"class":1471},[1458,2608,1482],{"class":1464},[1458,2610,1485],{"class":1471},[1458,2612,1489],{"class":1488},[1458,2614,1492],{"class":1471},[1458,2616,1495],{"class":1471},[1458,2618,2619],{"class":1460,"line":1498},[1458,2620,1502],{"class":1501},[1458,2622,2623,2625,2628,2630,2632,2634],{"class":1460,"line":1505},[1458,2624,1509],{"class":1508},[1458,2626,2627],{"class":1475}," priceFilter",[1458,2629,1515],{"class":1471},[1458,2631,2067],{"class":1518},[1458,2633,1521],{"class":1471},[1458,2635,1524],{"class":1471},[1458,2637,2638,2640,2642,2644,2646,2648],{"class":1460,"line":1527},[1458,2639,2103],{"class":1530},[1458,2641,1515],{"class":1471},[1458,2643,1485],{"class":1471},[1458,2645,1990],{"class":1488},[1458,2647,1492],{"class":1471},[1458,2649,1559],{"class":1471},[1458,2651,2652,2654,2656,2658,2661,2663],{"class":1460,"line":1562},[1458,2653,2118],{"class":1530},[1458,2655,1515],{"class":1471},[1458,2657,1485],{"class":1471},[1458,2659,2660],{"class":1488},"price",[1458,2662,1492],{"class":1471},[1458,2664,1559],{"class":1471},[1458,2666,2667,2669,2671,2673,2676,2678],{"class":1460,"line":1576},[1458,2668,2134],{"class":1530},[1458,2670,1515],{"class":1471},[1458,2672,1485],{"class":1471},[1458,2674,2675],{"class":1488},"Price",[1458,2677,1492],{"class":1471},[1458,2679,1559],{"class":1471},[1458,2681,2682,2684,2686,2688,2690,2692],{"class":1460,"line":1608},[1458,2683,2150],{"class":1530},[1458,2685,1515],{"class":1471},[1458,2687,1485],{"class":1471},[1458,2689,2660],{"class":1488},[1458,2691,1492],{"class":1471},[1458,2693,1559],{"class":1471},[1458,2695,2696,2699,2701,2703,2706,2708,2711,2713,2716,2718,2720,2723,2725],{"class":1460,"line":1856},[1458,2697,2698],{"class":1530},"  min",[1458,2700,1515],{"class":1471},[1458,2702,1472],{"class":1471},[1458,2704,2705],{"class":1530}," amount",[1458,2707,1515],{"class":1471},[1458,2709,2710],{"class":1591}," 0",[1458,2712,1546],{"class":1471},[1458,2714,2715],{"class":1530}," currency",[1458,2717,1515],{"class":1471},[1458,2719,1485],{"class":1471},[1458,2721,2722],{"class":1488},"EUR",[1458,2724,1492],{"class":1471},[1458,2726,1605],{"class":1471},[1458,2728,2729,2732,2734,2736,2738,2740,2743,2745,2747,2749,2751,2753,2755],{"class":1460,"line":1862},[1458,2730,2731],{"class":1530},"  max",[1458,2733,1515],{"class":1471},[1458,2735,1472],{"class":1471},[1458,2737,2705],{"class":1530},[1458,2739,1515],{"class":1471},[1458,2741,2742],{"class":1591}," 99900",[1458,2744,1546],{"class":1471},[1458,2746,2715],{"class":1530},[1458,2748,1515],{"class":1471},[1458,2750,1485],{"class":1471},[1458,2752,2722],{"class":1488},[1458,2754,1492],{"class":1471},[1458,2756,1605],{"class":1471},[1458,2758,2759],{"class":1460,"line":1894},[1458,2760,1611],{"class":1471},[2018,2762,2763,2775],{},[2021,2764,2766,2767,2770,2771,2774],{"name":1688,"type":2765,":required":1667},"number | Money | Measurement","Lower bound of the range. Use ",[1427,2768,2769],{},"Money"," for currency-denominated ranges and ",[1427,2772,2773],{},"Measurement"," for physical quantities (weight, length, volume).",[2021,2776,2777,2778,1938],{"name":1692,"type":2765,":required":1667},"Upper bound of the range. Same shape as ",[1427,2779,1688],{},[1415,2781,2782,2783,2785,2786,2788,2789,2792,2793,2795,2796,2799,2800,2803],{},"The request side is always plain numbers, so when responding with ",[1427,2784,2769],{}," or ",[1427,2787,2773],{}," your handler is responsible for matching the user's selected ",[1427,2790,2791],{},"{ min, max }"," (in plain numbers) against the right unit or currency. For ",[1427,2794,2769],{},", the request numbers are interpreted in the smallest unit of currency (",[1427,2797,2798],{},"Money.amount","), so a ",[1427,2801,2802],{},"{ min: 1000, max: 5000 }"," selection against an EUR price filter means 10.00 EUR to 50.00 EUR.",[1699,2805,2807],{"id":2806},"intervals-filters","Intervals filters",[1415,2809,2810],{},"An intervals filter is a pre-bucketed range. Use it when you want to show \"0 to 25\", \"25 to 50\", \"50 to 100\" with counts rather than a continuous slider.",[1448,2812,2814],{"className":1450,"code":2813,"language":1452,"meta":1453,"style":1454},"import type { AvailableFilter } from '@laioutr-core/orchestr/types';\n// ---cut---\nconst priceBucketsFilter: AvailableFilter = {\n  type: 'intervals',\n  id: 'price',\n  label: 'Price',\n  wellKnownName: 'price',\n  intervals: [\n    { min: 0, max: 25, count: 42 },\n    { min: 25, max: 50, count: 31 },\n    { min: 50, max: 100, count: 18 },\n  ],\n};\n",[1427,2815,2816,2838,2842,2857,2871,2885,2899,2913,2922,2952,2982,3011,3017],{"__ignoreMap":1454},[1458,2817,2818,2820,2822,2824,2826,2828,2830,2832,2834,2836],{"class":1460,"line":1461},[1458,2819,1465],{"class":1464},[1458,2821,1468],{"class":1464},[1458,2823,1472],{"class":1471},[1458,2825,2067],{"class":1475},[1458,2827,1479],{"class":1471},[1458,2829,1482],{"class":1464},[1458,2831,1485],{"class":1471},[1458,2833,1489],{"class":1488},[1458,2835,1492],{"class":1471},[1458,2837,1495],{"class":1471},[1458,2839,2840],{"class":1460,"line":1498},[1458,2841,1502],{"class":1501},[1458,2843,2844,2846,2849,2851,2853,2855],{"class":1460,"line":1505},[1458,2845,1509],{"class":1508},[1458,2847,2848],{"class":1475}," priceBucketsFilter",[1458,2850,1515],{"class":1471},[1458,2852,2067],{"class":1518},[1458,2854,1521],{"class":1471},[1458,2856,1524],{"class":1471},[1458,2858,2859,2861,2863,2865,2867,2869],{"class":1460,"line":1527},[1458,2860,2103],{"class":1530},[1458,2862,1515],{"class":1471},[1458,2864,1485],{"class":1471},[1458,2866,2006],{"class":1488},[1458,2868,1492],{"class":1471},[1458,2870,1559],{"class":1471},[1458,2872,2873,2875,2877,2879,2881,2883],{"class":1460,"line":1562},[1458,2874,2118],{"class":1530},[1458,2876,1515],{"class":1471},[1458,2878,1485],{"class":1471},[1458,2880,2660],{"class":1488},[1458,2882,1492],{"class":1471},[1458,2884,1559],{"class":1471},[1458,2886,2887,2889,2891,2893,2895,2897],{"class":1460,"line":1576},[1458,2888,2134],{"class":1530},[1458,2890,1515],{"class":1471},[1458,2892,1485],{"class":1471},[1458,2894,2675],{"class":1488},[1458,2896,1492],{"class":1471},[1458,2898,1559],{"class":1471},[1458,2900,2901,2903,2905,2907,2909,2911],{"class":1460,"line":1608},[1458,2902,2150],{"class":1530},[1458,2904,1515],{"class":1471},[1458,2906,1485],{"class":1471},[1458,2908,2660],{"class":1488},[1458,2910,1492],{"class":1471},[1458,2912,1559],{"class":1471},[1458,2914,2915,2918,2920],{"class":1460,"line":1856},[1458,2916,2917],{"class":1530},"  intervals",[1458,2919,1515],{"class":1471},[1458,2921,2186],{"class":1475},[1458,2923,2924,2926,2928,2930,2932,2934,2936,2938,2941,2943,2945,2947,2950],{"class":1460,"line":1862},[1458,2925,2191],{"class":1471},[1458,2927,1586],{"class":1530},[1458,2929,1515],{"class":1471},[1458,2931,2710],{"class":1591},[1458,2933,1546],{"class":1471},[1458,2935,1597],{"class":1530},[1458,2937,1515],{"class":1471},[1458,2939,2940],{"class":1591}," 25",[1458,2942,1546],{"class":1471},[1458,2944,2220],{"class":1530},[1458,2946,1515],{"class":1471},[1458,2948,2949],{"class":1591}," 42",[1458,2951,1605],{"class":1471},[1458,2953,2954,2956,2958,2960,2962,2964,2966,2968,2971,2973,2975,2977,2980],{"class":1460,"line":1894},[1458,2955,2191],{"class":1471},[1458,2957,1586],{"class":1530},[1458,2959,1515],{"class":1471},[1458,2961,2940],{"class":1591},[1458,2963,1546],{"class":1471},[1458,2965,1597],{"class":1530},[1458,2967,1515],{"class":1471},[1458,2969,2970],{"class":1591}," 50",[1458,2972,1546],{"class":1471},[1458,2974,2220],{"class":1530},[1458,2976,1515],{"class":1471},[1458,2978,2979],{"class":1591}," 31",[1458,2981,1605],{"class":1471},[1458,2983,2984,2986,2988,2990,2992,2994,2996,2998,3001,3003,3005,3007,3009],{"class":1460,"line":1900},[1458,2985,2191],{"class":1471},[1458,2987,1586],{"class":1530},[1458,2989,1515],{"class":1471},[1458,2991,2970],{"class":1591},[1458,2993,1546],{"class":1471},[1458,2995,1597],{"class":1530},[1458,2997,1515],{"class":1471},[1458,2999,3000],{"class":1591}," 100",[1458,3002,1546],{"class":1471},[1458,3004,2220],{"class":1530},[1458,3006,1515],{"class":1471},[1458,3008,2542],{"class":1591},[1458,3010,1605],{"class":1471},[1458,3012,3013,3015],{"class":1460,"line":1909},[1458,3014,2323],{"class":1475},[1458,3016,1559],{"class":1471},[1458,3018,3019],{"class":1460,"line":1915},[1458,3020,1611],{"class":1471},[2018,3022,3023],{},[2021,3024,3026,3027,3029,3030,3032,3033,3036],{"name":2006,"type":3025,":required":1667},"Array\u003C{ min: number | Money | Measurement, max: number | Money | Measurement, count?: number }>","Each interval has the same ",[1427,3028,1688],{},"/",[1427,3031,1692],{}," shape as a range filter, plus an optional ",[1427,3034,3035],{},"count"," of matching results.",[1415,3038,3039,3040,3042,3043,3045,3046,2785,3048,1938],{},"The user's selection still arrives in the ",[1427,3041,1429],{}," request as a ",[1427,3044,2791],{}," range, so handlers can treat the request side identically whether they responded with ",[1427,3047,1990],{},[1427,3049,2006],{},[1440,3051,2044],{"id":3052},"well-known-filter-names",[1415,3054,3055,3056,3058],{},"Some filter ids are common across catalogs (color, price, size, brand). The optional ",[1427,3057,2038],{}," field lets the UI apply consistent icons or grouping without your handler having to use a specific id.",[3060,3061,3062,3064,3065,3068,3069,2785,3071,3073,3074,3077,3078,3080,3081,3083],"warning",{},[1427,3063,2038],{}," is ",[1422,3066,3067],{},"cosmetic only",". It does not imply the filter's ",[1427,3070,1951],{},[1427,3072,2334],{},". A filter with ",[1427,3075,3076],{},"wellKnownName: 'color'"," could be a ",[1427,3079,1971],{}," of swatches, a ",[1427,3082,1971],{}," of text labels, or any other variant.",[1415,3085,3086],{},"The exported enum lists the well-known names:",[1448,3088,3090],{"className":1450,"code":3089,"language":1452,"meta":1453,"style":1454},"import { WellKnownFilterName } from '@laioutr-core/orchestr/types';\n// ---cut---\nWellKnownFilterName.color;       // 'color'\nWellKnownFilterName.price;       // 'price'\nWellKnownFilterName.inStock;     // 'in-stock'\nWellKnownFilterName.bestSeller;  // 'best-seller'\n",[1427,3091,3092,3113,3117,3131,3144,3157],{"__ignoreMap":1454},[1458,3093,3094,3096,3098,3101,3103,3105,3107,3109,3111],{"class":1460,"line":1461},[1458,3095,1465],{"class":1464},[1458,3097,1472],{"class":1471},[1458,3099,3100],{"class":1475}," WellKnownFilterName",[1458,3102,1479],{"class":1471},[1458,3104,1482],{"class":1464},[1458,3106,1485],{"class":1471},[1458,3108,1489],{"class":1488},[1458,3110,1492],{"class":1471},[1458,3112,1495],{"class":1471},[1458,3114,3115],{"class":1460,"line":1498},[1458,3116,1502],{"class":1501},[1458,3118,3119,3121,3123,3125,3128],{"class":1460,"line":1505},[1458,3120,2039],{"class":1475},[1458,3122,1938],{"class":1471},[1458,3124,2125],{"class":1475},[1458,3126,3127],{"class":1471},";",[1458,3129,3130],{"class":1501},"       // 'color'\n",[1458,3132,3133,3135,3137,3139,3141],{"class":1460,"line":1527},[1458,3134,2039],{"class":1475},[1458,3136,1938],{"class":1471},[1458,3138,2660],{"class":1475},[1458,3140,3127],{"class":1471},[1458,3142,3143],{"class":1501},"       // 'price'\n",[1458,3145,3146,3148,3150,3152,3154],{"class":1460,"line":1562},[1458,3147,2039],{"class":1475},[1458,3149,1938],{"class":1471},[1458,3151,2454],{"class":1475},[1458,3153,3127],{"class":1471},[1458,3155,3156],{"class":1501},"     // 'in-stock'\n",[1458,3158,3159,3161,3163,3166,3168],{"class":1460,"line":1576},[1458,3160,2039],{"class":1475},[1458,3162,1938],{"class":1471},[1458,3164,3165],{"class":1475},"bestSeller",[1458,3167,3127],{"class":1471},[1458,3169,3170],{"class":1501},"  // 'best-seller'\n",[1415,3172,3173,3174,3176,3177,3183],{},"The ",[1427,3175,2038],{}," field accepts any string, so you can use names outside this list. Stick to the well-known set when possible so frontends can recognize them without app-specific configuration. When picking new names, the ",[1935,3178,3182],{"href":3179,"rel":3180},"https://shopify.github.io/product-taxonomy/releases/unstable/attributes/",[3181],"nofollow","Shopify product taxonomy"," is a useful reference for sensible attribute identifiers.",[1440,3185,3187],{"id":3186},"mapping-example","Mapping example",[1415,3189,3190],{},"A typical search handler maps facet data from an upstream API into the response shape, and selected filters into the upstream API's request shape. The pattern from the battery-included integration:",[1448,3192,3194],{"className":1450,"code":3193,"language":1452,"meta":1454,"style":1454},"import type { AvailableFilter, QueryWireRequestFilter } from '@laioutr-core/orchestr/types';\nimport { isRangeFilter } from '@laioutr-core/orchestr/types';\n\nexport const mapFacetsToAvailableFilters = (facets: Facet[]): AvailableFilter[] => {\n  return facets.map((facet) => {\n    if (facet.type === 'select') {\n      return {\n        type: 'list',\n        id: facet.field_name,\n        label: facet.field_label,\n        presentation: 'text',\n        values: facet.counts.map((c) => ({ id: c.value, label: c.value, count: c.count })),\n      };\n    }\n    return {\n      type: 'range',\n      id: facet.field_name,\n      label: facet.field_label,\n      min: facet.stats.min,\n      max: facet.stats.max,\n    };\n  });\n};\n\nexport const mapSelectedFiltersToApi = (filters: QueryWireRequestFilter) => {\n  const params: Record\u003Cstring, unknown> = {};\n  for (const id in filters) {\n    const value = filters[id];\n    if (isRangeFilter(value)) {\n      params[`f[${id}][from]`] = value.min ?? Number.MIN_SAFE_INTEGER;\n      params[`f[${id}][till]`] = value.max ?? Number.MAX_SAFE_INTEGER;\n    } else {\n      params[`f[${id}]`] = value;\n    }\n  }\n  return params;\n};\n",[1427,3195,3196,3222,3242,3248,3288,3315,3340,3347,3362,3379,3395,3411,3487,3492,3496,3503,3519,3535,3551,3572,3592,3598,3608,3613,3618,3645,3677,3697,3716,3733,3783,3826,3835,3864,3869,3874,3883],{"__ignoreMap":1454},[1458,3197,3198,3200,3202,3204,3206,3208,3210,3212,3214,3216,3218,3220],{"class":1460,"line":1461},[1458,3199,1465],{"class":1464},[1458,3201,1468],{"class":1464},[1458,3203,1472],{"class":1471},[1458,3205,2067],{"class":1475},[1458,3207,1546],{"class":1471},[1458,3209,1476],{"class":1475},[1458,3211,1479],{"class":1471},[1458,3213,1482],{"class":1464},[1458,3215,1485],{"class":1471},[1458,3217,1489],{"class":1488},[1458,3219,1492],{"class":1471},[1458,3221,1495],{"class":1471},[1458,3223,3224,3226,3228,3230,3232,3234,3236,3238,3240],{"class":1460,"line":1498},[1458,3225,1465],{"class":1464},[1458,3227,1472],{"class":1471},[1458,3229,1748],{"class":1475},[1458,3231,1479],{"class":1471},[1458,3233,1482],{"class":1464},[1458,3235,1485],{"class":1471},[1458,3237,1489],{"class":1488},[1458,3239,1492],{"class":1471},[1458,3241,1495],{"class":1471},[1458,3243,3244],{"class":1460,"line":1505},[1458,3245,3247],{"emptyLinePlaceholder":3246},true,"\n",[1458,3249,3250,3253,3256,3259,3262,3264,3267,3269,3272,3275,3278,3280,3283,3286],{"class":1460,"line":1527},[1458,3251,3252],{"class":1464},"export",[1458,3254,3255],{"class":1508}," const",[1458,3257,3258],{"class":1475}," mapFacetsToAvailableFilters ",[1458,3260,3261],{"class":1471},"=",[1458,3263,1796],{"class":1471},[1458,3265,3266],{"class":1779},"facets",[1458,3268,1515],{"class":1471},[1458,3270,3271],{"class":1518}," Facet",[1458,3273,3274],{"class":1475},"[]",[1458,3276,3277],{"class":1471},"):",[1458,3279,2067],{"class":1518},[1458,3281,3282],{"class":1475},"[] ",[1458,3284,3285],{"class":1508},"=>",[1458,3287,1524],{"class":1471},[1458,3289,3290,3293,3296,3298,3301,3303,3305,3308,3310,3313],{"class":1460,"line":1562},[1458,3291,3292],{"class":1464},"  return",[1458,3294,3295],{"class":1475}," facets",[1458,3297,1938],{"class":1471},[1458,3299,3300],{"class":1772},"map",[1458,3302,1776],{"class":1530},[1458,3304,1776],{"class":1471},[1458,3306,3307],{"class":1779},"facet",[1458,3309,1786],{"class":1471},[1458,3311,3312],{"class":1508}," =>",[1458,3314,1524],{"class":1471},[1458,3316,3317,3319,3321,3323,3325,3327,3329,3331,3334,3336,3338],{"class":1460,"line":1576},[1458,3318,1839],{"class":1464},[1458,3320,1796],{"class":1530},[1458,3322,3307],{"class":1475},[1458,3324,1938],{"class":1471},[1458,3326,1951],{"class":1475},[1458,3328,1881],{"class":1471},[1458,3330,1485],{"class":1471},[1458,3332,3333],{"class":1488},"select",[1458,3335,1492],{"class":1471},[1458,3337,1809],{"class":1530},[1458,3339,1812],{"class":1471},[1458,3341,3342,3345],{"class":1460,"line":1608},[1458,3343,3344],{"class":1464},"      return",[1458,3346,1524],{"class":1471},[1458,3348,3349,3352,3354,3356,3358,3360],{"class":1460,"line":1856},[1458,3350,3351],{"class":1530},"        type",[1458,3353,1515],{"class":1471},[1458,3355,1485],{"class":1471},[1458,3357,1971],{"class":1488},[1458,3359,1492],{"class":1471},[1458,3361,1559],{"class":1471},[1458,3363,3364,3367,3369,3372,3374,3377],{"class":1460,"line":1862},[1458,3365,3366],{"class":1530},"        id",[1458,3368,1515],{"class":1471},[1458,3370,3371],{"class":1475}," facet",[1458,3373,1938],{"class":1471},[1458,3375,3376],{"class":1475},"field_name",[1458,3378,1559],{"class":1471},[1458,3380,3381,3384,3386,3388,3390,3393],{"class":1460,"line":1894},[1458,3382,3383],{"class":1530},"        label",[1458,3385,1515],{"class":1471},[1458,3387,3371],{"class":1475},[1458,3389,1938],{"class":1471},[1458,3391,3392],{"class":1475},"field_label",[1458,3394,1559],{"class":1471},[1458,3396,3397,3400,3402,3404,3407,3409],{"class":1460,"line":1900},[1458,3398,3399],{"class":1530},"        presentation",[1458,3401,1515],{"class":1471},[1458,3403,1485],{"class":1471},[1458,3405,3406],{"class":1488},"text",[1458,3408,1492],{"class":1471},[1458,3410,1559],{"class":1471},[1458,3412,3413,3416,3418,3420,3422,3425,3427,3429,3431,3433,3436,3438,3440,3442,3445,3447,3449,3452,3454,3456,3458,3460,3462,3464,3466,3468,3470,3472,3474,3476,3478,3480,3482,3485],{"class":1460,"line":1909},[1458,3414,3415],{"class":1530},"        values",[1458,3417,1515],{"class":1471},[1458,3419,3371],{"class":1475},[1458,3421,1938],{"class":1471},[1458,3423,3424],{"class":1475},"counts",[1458,3426,1938],{"class":1471},[1458,3428,3300],{"class":1772},[1458,3430,1776],{"class":1530},[1458,3432,1776],{"class":1471},[1458,3434,3435],{"class":1779},"c",[1458,3437,1786],{"class":1471},[1458,3439,3312],{"class":1508},[1458,3441,1796],{"class":1530},[1458,3443,3444],{"class":1471},"{",[1458,3446,1801],{"class":1530},[1458,3448,1515],{"class":1471},[1458,3450,3451],{"class":1475}," c",[1458,3453,1938],{"class":1471},[1458,3455,1848],{"class":1475},[1458,3457,1546],{"class":1471},[1458,3459,2206],{"class":1530},[1458,3461,1515],{"class":1471},[1458,3463,3451],{"class":1475},[1458,3465,1938],{"class":1471},[1458,3467,1848],{"class":1475},[1458,3469,1546],{"class":1471},[1458,3471,2220],{"class":1530},[1458,3473,1515],{"class":1471},[1458,3475,3451],{"class":1475},[1458,3477,1938],{"class":1471},[1458,3479,3035],{"class":1475},[1458,3481,1479],{"class":1471},[1458,3483,3484],{"class":1530},"))",[1458,3486,1559],{"class":1471},[1458,3488,3489],{"class":1460,"line":1915},[1458,3490,3491],{"class":1471},"      };\n",[1458,3493,3494],{"class":1460,"line":1921},[1458,3495,1918],{"class":1471},[1458,3497,3498,3501],{"class":1460,"line":1927},[1458,3499,3500],{"class":1464},"    return",[1458,3502,1524],{"class":1471},[1458,3504,3506,3509,3511,3513,3515,3517],{"class":1460,"line":3505},16,[1458,3507,3508],{"class":1530},"      type",[1458,3510,1515],{"class":1471},[1458,3512,1485],{"class":1471},[1458,3514,1990],{"class":1488},[1458,3516,1492],{"class":1471},[1458,3518,1559],{"class":1471},[1458,3520,3522,3525,3527,3529,3531,3533],{"class":1460,"line":3521},17,[1458,3523,3524],{"class":1530},"      id",[1458,3526,1515],{"class":1471},[1458,3528,3371],{"class":1475},[1458,3530,1938],{"class":1471},[1458,3532,3376],{"class":1475},[1458,3534,1559],{"class":1471},[1458,3536,3538,3541,3543,3545,3547,3549],{"class":1460,"line":3537},18,[1458,3539,3540],{"class":1530},"      label",[1458,3542,1515],{"class":1471},[1458,3544,3371],{"class":1475},[1458,3546,1938],{"class":1471},[1458,3548,3392],{"class":1475},[1458,3550,1559],{"class":1471},[1458,3552,3554,3557,3559,3561,3563,3566,3568,3570],{"class":1460,"line":3553},19,[1458,3555,3556],{"class":1530},"      min",[1458,3558,1515],{"class":1471},[1458,3560,3371],{"class":1475},[1458,3562,1938],{"class":1471},[1458,3564,3565],{"class":1475},"stats",[1458,3567,1938],{"class":1471},[1458,3569,1688],{"class":1475},[1458,3571,1559],{"class":1471},[1458,3573,3575,3578,3580,3582,3584,3586,3588,3590],{"class":1460,"line":3574},20,[1458,3576,3577],{"class":1530},"      max",[1458,3579,1515],{"class":1471},[1458,3581,3371],{"class":1475},[1458,3583,1938],{"class":1471},[1458,3585,3565],{"class":1475},[1458,3587,1938],{"class":1471},[1458,3589,1692],{"class":1475},[1458,3591,1559],{"class":1471},[1458,3593,3595],{"class":1460,"line":3594},21,[1458,3596,3597],{"class":1471},"    };\n",[1458,3599,3601,3604,3606],{"class":1460,"line":3600},22,[1458,3602,3603],{"class":1471},"  }",[1458,3605,1786],{"class":1530},[1458,3607,1495],{"class":1471},[1458,3609,3611],{"class":1460,"line":3610},23,[1458,3612,1611],{"class":1471},[1458,3614,3616],{"class":1460,"line":3615},24,[1458,3617,3247],{"emptyLinePlaceholder":3246},[1458,3619,3621,3623,3625,3628,3630,3632,3635,3637,3639,3641,3643],{"class":1460,"line":3620},25,[1458,3622,3252],{"class":1464},[1458,3624,3255],{"class":1508},[1458,3626,3627],{"class":1475}," mapSelectedFiltersToApi ",[1458,3629,3261],{"class":1471},[1458,3631,1796],{"class":1471},[1458,3633,3634],{"class":1779},"filters",[1458,3636,1515],{"class":1471},[1458,3638,1476],{"class":1518},[1458,3640,1786],{"class":1471},[1458,3642,3312],{"class":1508},[1458,3644,1524],{"class":1471},[1458,3646,3648,3651,3654,3656,3659,3662,3664,3666,3669,3672,3674],{"class":1460,"line":3647},26,[1458,3649,3650],{"class":1508},"  const",[1458,3652,3653],{"class":1475}," params",[1458,3655,1515],{"class":1471},[1458,3657,3658],{"class":1518}," Record",[1458,3660,3661],{"class":1471},"\u003C",[1458,3663,2023],{"class":1518},[1458,3665,1546],{"class":1471},[1458,3667,3668],{"class":1518}," unknown",[1458,3670,3671],{"class":1471},">",[1458,3673,1521],{"class":1471},[1458,3675,3676],{"class":1471}," {};\n",[1458,3678,3680,3682,3684,3686,3688,3690,3693,3695],{"class":1460,"line":3679},27,[1458,3681,1793],{"class":1464},[1458,3683,1796],{"class":1530},[1458,3685,1509],{"class":1508},[1458,3687,1801],{"class":1475},[1458,3689,1804],{"class":1471},[1458,3691,3692],{"class":1475}," filters",[1458,3694,1809],{"class":1530},[1458,3696,1812],{"class":1471},[1458,3698,3700,3702,3704,3706,3708,3710,3712,3714],{"class":1460,"line":3699},28,[1458,3701,1817],{"class":1508},[1458,3703,1820],{"class":1475},[1458,3705,1521],{"class":1471},[1458,3707,3692],{"class":1475},[1458,3709,1827],{"class":1530},[1458,3711,1830],{"class":1475},[1458,3713,1556],{"class":1530},[1458,3715,1495],{"class":1471},[1458,3717,3719,3721,3723,3725,3727,3729,3731],{"class":1460,"line":3718},29,[1458,3720,1839],{"class":1464},[1458,3722,1796],{"class":1530},[1458,3724,1708],{"class":1772},[1458,3726,1776],{"class":1530},[1458,3728,1848],{"class":1475},[1458,3730,1851],{"class":1530},[1458,3732,1812],{"class":1471},[1458,3734,3736,3739,3741,3744,3747,3750,3752,3755,3758,3760,3762,3764,3766,3768,3770,3773,3776,3778,3781],{"class":1460,"line":3735},30,[1458,3737,3738],{"class":1475},"      params",[1458,3740,1827],{"class":1530},[1458,3742,3743],{"class":1471},"`",[1458,3745,3746],{"class":1488},"f[",[1458,3748,3749],{"class":1471},"${",[1458,3751,1830],{"class":1475},[1458,3753,3754],{"class":1471},"}",[1458,3756,3757],{"class":1488},"][from]",[1458,3759,3743],{"class":1471},[1458,3761,2252],{"class":1530},[1458,3763,3261],{"class":1471},[1458,3765,1820],{"class":1475},[1458,3767,1938],{"class":1471},[1458,3769,1688],{"class":1475},[1458,3771,3772],{"class":1471}," ??",[1458,3774,3775],{"class":1475}," Number",[1458,3777,1938],{"class":1471},[1458,3779,3780],{"class":1530},"MIN_SAFE_INTEGER",[1458,3782,1495],{"class":1471},[1458,3784,3786,3788,3790,3792,3794,3796,3798,3800,3803,3805,3807,3809,3811,3813,3815,3817,3819,3821,3824],{"class":1460,"line":3785},31,[1458,3787,3738],{"class":1475},[1458,3789,1827],{"class":1530},[1458,3791,3743],{"class":1471},[1458,3793,3746],{"class":1488},[1458,3795,3749],{"class":1471},[1458,3797,1830],{"class":1475},[1458,3799,3754],{"class":1471},[1458,3801,3802],{"class":1488},"][till]",[1458,3804,3743],{"class":1471},[1458,3806,2252],{"class":1530},[1458,3808,3261],{"class":1471},[1458,3810,1820],{"class":1475},[1458,3812,1938],{"class":1471},[1458,3814,1692],{"class":1475},[1458,3816,3772],{"class":1471},[1458,3818,3775],{"class":1475},[1458,3820,1938],{"class":1471},[1458,3822,3823],{"class":1530},"MAX_SAFE_INTEGER",[1458,3825,1495],{"class":1471},[1458,3827,3829,3831,3833],{"class":1460,"line":3828},32,[1458,3830,1865],{"class":1471},[1458,3832,1868],{"class":1464},[1458,3834,1524],{"class":1471},[1458,3836,3838,3840,3842,3844,3846,3848,3850,3852,3854,3856,3858,3860,3862],{"class":1460,"line":3837},33,[1458,3839,3738],{"class":1475},[1458,3841,1827],{"class":1530},[1458,3843,3743],{"class":1471},[1458,3845,3746],{"class":1488},[1458,3847,3749],{"class":1471},[1458,3849,1830],{"class":1475},[1458,3851,3754],{"class":1471},[1458,3853,1556],{"class":1488},[1458,3855,3743],{"class":1471},[1458,3857,2252],{"class":1530},[1458,3859,3261],{"class":1471},[1458,3861,1820],{"class":1475},[1458,3863,1495],{"class":1471},[1458,3865,3867],{"class":1460,"line":3866},34,[1458,3868,1918],{"class":1471},[1458,3870,3872],{"class":1460,"line":3871},35,[1458,3873,1924],{"class":1471},[1458,3875,3877,3879,3881],{"class":1460,"line":3876},36,[1458,3878,3292],{"class":1464},[1458,3880,3653],{"class":1475},[1458,3882,1495],{"class":1471},[1458,3884,3886],{"class":1460,"line":3885},37,[1458,3887,1611],{"class":1471},[1415,3889,3890],{},"The query handler then wires both sides together:",[1448,3892,3894],{"className":1450,"code":3893,"language":1452,"meta":1454,"style":1454},"return {\n  ids: data.hits.map((hit) => hit.id),\n  total: data.found,\n  availableFilters: mapFacetsToAvailableFilters(data.facet_counts),\n};\n",[1427,3895,3896,3903,3943,3959,3979],{"__ignoreMap":1454},[1458,3897,3898,3901],{"class":1460,"line":1461},[1458,3899,3900],{"class":1464},"return",[1458,3902,1524],{"class":1471},[1458,3904,3905,3908,3910,3913,3915,3918,3920,3922,3924,3926,3929,3931,3933,3936,3938,3941],{"class":1460,"line":1498},[1458,3906,3907],{"class":1530},"  ids",[1458,3909,1515],{"class":1471},[1458,3911,3912],{"class":1475}," data",[1458,3914,1938],{"class":1471},[1458,3916,3917],{"class":1475},"hits",[1458,3919,1938],{"class":1471},[1458,3921,3300],{"class":1772},[1458,3923,1776],{"class":1475},[1458,3925,1776],{"class":1471},[1458,3927,3928],{"class":1779},"hit",[1458,3930,1786],{"class":1471},[1458,3932,3312],{"class":1508},[1458,3934,3935],{"class":1475}," hit",[1458,3937,1938],{"class":1471},[1458,3939,3940],{"class":1475},"id)",[1458,3942,1559],{"class":1471},[1458,3944,3945,3948,3950,3952,3954,3957],{"class":1460,"line":1505},[1458,3946,3947],{"class":1530},"  total",[1458,3949,1515],{"class":1471},[1458,3951,3912],{"class":1475},[1458,3953,1938],{"class":1471},[1458,3955,3956],{"class":1475},"found",[1458,3958,1559],{"class":1471},[1458,3960,3961,3964,3966,3969,3972,3974,3977],{"class":1460,"line":1527},[1458,3962,3963],{"class":1530},"  availableFilters",[1458,3965,1515],{"class":1471},[1458,3967,3968],{"class":1772}," mapFacetsToAvailableFilters",[1458,3970,3971],{"class":1475},"(data",[1458,3973,1938],{"class":1471},[1458,3975,3976],{"class":1475},"facet_counts)",[1458,3978,1559],{"class":1471},[1458,3980,3981],{"class":1460,"line":1562},[1458,3982,1611],{"class":1471},[1440,3984,3986],{"id":3985},"consuming-in-a-block-or-section","Consuming in a block or section",[1415,3988,3989,3990,3992,3993,3996,3997,1938],{},"For how blocks and sections read ",[1427,3991,1437],{}," / ",[1427,3994,3995],{},"availableSortings"," and update the URL when the user picks one, see ",[1935,3998,428],{"href":429},[1440,4000,4002],{"id":4001},"related","Related",[4004,4005,4006,4010,4016],"card-group",{},[4007,4008,4009],"card",{"title":350,"to":257},"How query handlers and link handlers receive filters and return results.",[4007,4011,4012,4013,4015],{"title":268,"to":269},"How the request ",[1427,4014,1429],{}," shape maps to URL query strings.",[4007,4017,4019,4020,4022,4023,4026],{"title":4018,"to":273},"Wire Format","Where ",[1427,4021,1437],{}," appears in the streamed ",[1427,4024,4025],{},"queryResult"," chunk.",[4028,4029,4030],"style",{},"html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}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 .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}",{"title":1454,"searchDepth":1498,"depth":1498,"links":4032},[4033,4036,4043,4044,4045,4046],{"id":1442,"depth":1498,"text":1443,"children":4034},[4035],{"id":1701,"depth":1505,"text":1702},{"id":1941,"depth":1498,"text":1942,"children":4037},[4038,4039,4040,4041,4042],{"id":2012,"depth":1505,"text":2013},{"id":2047,"depth":1505,"text":2048},{"id":2379,"depth":1505,"text":2380},{"id":2574,"depth":1505,"text":2575},{"id":2806,"depth":1505,"text":2807},{"id":3052,"depth":1498,"text":2044},{"id":3186,"depth":1498,"text":3187},{"id":3985,"depth":1498,"text":3986},{"id":4001,"depth":1498,"text":4002},"Request and response shapes for filters in query handlers and link handlers, including faceted search and well-known filter names.","md",{},{"title":4051,"description":4047},"Filters | Laioutr",{"loc":265,"lastmod":4053,"changefreq":4054,"priority":4055},"2026-05-05","monthly",0.9,"UhLe0aLNK4kJKBA1ZS-g3TMnhJk1ytfq-KAjLp5T1wQ",[4058,4060],{"title":260,"path":261,"stem":262,"description":4059,"children":-1},"Component resolvers map backend data to entity components. They are how you extend the data model — add new data to existing entities or create entirely new entity types.",{"title":268,"path":269,"stem":270,"description":4061,"children":-1},"How Orchestr maps pagination, sorting, and filters to URL query parameters, and how to customize URL generation with hooks.",1777971360898]