[{"data":1,"prerenderedAt":3568},["ShallowReactive",2],{"navigation_docs":3,"-frontend-features-content-preview":2079,"-frontend-features-content-preview-surround":3563},[4,136,539,567,683,871,1780,1870,1875,1880,1939,2037],{"title":5,"path":6,"stem":7,"children":8},"Getting Started","/getting-started","0.getting-started/0.index",[9,10,14,18,56,81,115,132],{"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},"Canonical Types Changelog","/getting-started/changelogs/canonical-types-changelog","0.getting-started/5.Changelogs/canonical-types-changelog",{"title":92,"path":93,"stem":94},"CLI Changelog","/getting-started/changelogs/cli-changelog","0.getting-started/5.Changelogs/cli-changelog",{"title":96,"path":97,"stem":98},"Cockpit Changelog","/getting-started/changelogs/cockpit-changelog","0.getting-started/5.Changelogs/cockpit-changelog",{"title":100,"path":101,"stem":102},"Figma Kit Changelog","/getting-started/changelogs/figma-kit-changelog","0.getting-started/5.Changelogs/figma-kit-changelog",{"title":104,"path":105,"stem":106},"Frontend Changelog","/getting-started/changelogs/frontend-changelog","0.getting-started/5.Changelogs/frontend-changelog",{"title":108,"path":109,"stem":110},"Orchestr Changelog","/getting-started/changelogs/orchestr-changelog","0.getting-started/5.Changelogs/orchestr-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,128],{"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},"Claude Code plugin","/getting-started/hints-and-tips/claude-marketplace","0.getting-started/6.Hints-and-Tips/2.claude-marketplace",{"title":133,"path":134,"stem":135},"Documentation MCP Server","/getting-started/documentation-mcp-server","0.getting-started/7.documentation-mcp-server",{"title":137,"path":138,"stem":139,"children":140},"Frontend","/frontend","1.Frontend/0.index",[141,142,153,219,245,317],{"title":137,"path":138,"stem":139},{"title":121,"path":143,"stem":144,"children":145,"page":55},"/frontend/introduction","1.Frontend/1.Introduction",[146,149],{"title":19,"path":147,"stem":148},"/frontend/introduction/key-concepts","1.Frontend/1.Introduction/0.key-concepts",{"title":150,"path":151,"stem":152},"Tech Stack","/frontend/introduction/tech-stack","1.Frontend/1.Introduction/1.tech-stack",{"title":154,"path":155,"stem":156,"children":157},"Features","/frontend/features","1.Frontend/2.Features/0.index",[158,159,163,167,171,175,179,183,187,191,195,199,203,207,211,215],{"title":154,"path":155,"stem":156},{"title":160,"path":161,"stem":162},"Consent Management","/frontend/features/consent-management","1.Frontend/2.Features/consent-management",{"title":164,"path":165,"stem":166},"Content Preview","/frontend/features/content-preview","1.Frontend/2.Features/content-preview",{"title":168,"path":169,"stem":170},"Currencies","/frontend/features/currencies","1.Frontend/2.Features/currencies",{"title":172,"path":173,"stem":174},"Environments & Staging","/frontend/features/environments","1.Frontend/2.Features/environments",{"title":176,"path":177,"stem":178},"Hooks","/frontend/features/hooks","1.Frontend/2.Features/hooks",{"title":180,"path":181,"stem":182},"Media and Media Library","/frontend/features/media","1.Frontend/2.Features/media",{"title":184,"path":185,"stem":186},"Multi-language Support","/frontend/features/multi-language-support","1.Frontend/2.Features/multi-language-support",{"title":188,"path":189,"stem":190},"Multi-market","/frontend/features/multi-market","1.Frontend/2.Features/multi-market",{"title":192,"path":193,"stem":194},"Page Types","/frontend/features/pagetypes","1.Frontend/2.Features/pagetypes",{"title":196,"path":197,"stem":198},"PWA","/frontend/features/pwa","1.Frontend/2.Features/pwa",{"title":200,"path":201,"stem":202},"Redirects","/frontend/features/redirects","1.Frontend/2.Features/redirects",{"title":204,"path":205,"stem":206},"Routing","/frontend/features/routing","1.Frontend/2.Features/routing",{"title":208,"path":209,"stem":210},"Server-Side Rendering (SSR) and Caching","/frontend/features/ssr-and-caching","1.Frontend/2.Features/ssr-and-caching",{"title":212,"path":213,"stem":214},"Tracking","/frontend/features/tracking","1.Frontend/2.Features/tracking",{"title":216,"path":217,"stem":218},"Z-Ordering","/frontend/features/z-ordering","1.Frontend/2.Features/z-ordering",{"title":220,"path":221,"stem":222,"children":223},"SEO","/frontend/seo","1.Frontend/3.SEO/0.index",[224,225,229,233,237,241],{"title":220,"path":221,"stem":222},{"title":226,"path":227,"stem":228},"Link Checker","/frontend/seo/link-checker","1.Frontend/3.SEO/link-checker",{"title":230,"path":231,"stem":232},"OG Image","/frontend/seo/og-image","1.Frontend/3.SEO/og-image",{"title":234,"path":235,"stem":236},"Robots.txt","/frontend/seo/robots-txt","1.Frontend/3.SEO/robots-txt",{"title":238,"path":239,"stem":240},"Schema.org","/frontend/seo/schema-org","1.Frontend/3.SEO/schema-org",{"title":242,"path":243,"stem":244},"Sitemap","/frontend/seo/sitemap","1.Frontend/3.SEO/sitemap",{"title":246,"path":247,"stem":248,"children":249},"Backend for Frontend","/frontend/orchestr","1.Frontend/4.Orchestr/0.index",[250,251,277,281,285,289,293,297,301,305,309,313],{"title":246,"path":247,"stem":248},{"title":252,"path":253,"stem":254,"children":255},"Recipes","/frontend/orchestr/recipes","1.Frontend/4.Orchestr/99.recipes/0.index",[256,257,261,265,269,273],{"title":252,"path":253,"stem":254},{"title":258,"path":259,"stem":260},"Analytics components from query handlers","/frontend/orchestr/recipes/analytics-from-query-handlers","1.Frontend/4.Orchestr/99.recipes/analytics-from-query-handlers",{"title":262,"path":263,"stem":264},"Identity cookies (cart and visitor IDs)","/frontend/orchestr/recipes/identity-cookies","1.Frontend/4.Orchestr/99.recipes/identity-cookies",{"title":266,"path":267,"stem":268},"System bootstrap in extendRequest","/frontend/orchestr/recipes/system-bootstrap","1.Frontend/4.Orchestr/99.recipes/system-bootstrap",{"title":270,"path":271,"stem":272},"Translating vendor errors","/frontend/orchestr/recipes/translating-vendor-errors","1.Frontend/4.Orchestr/99.recipes/translating-vendor-errors",{"title":274,"path":275,"stem":276},"Userland cache patterns","/frontend/orchestr/recipes/userland-cache-patterns","1.Frontend/4.Orchestr/99.recipes/userland-cache-patterns",{"title":278,"path":279,"stem":280},"Actions","/frontend/orchestr/actions","1.Frontend/4.Orchestr/Actions",{"title":282,"path":283,"stem":284},"Caching","/frontend/orchestr/caching","1.Frontend/4.Orchestr/Caching",{"title":286,"path":287,"stem":288},"Store Devtools","/frontend/orchestr/devtools","1.Frontend/4.Orchestr/Devtools",{"title":290,"path":291,"stem":292},"Middleware","/frontend/orchestr/middleware","1.Frontend/4.Orchestr/Middleware",{"title":294,"path":295,"stem":296},"Queries & Links","/frontend/orchestr/queries","1.Frontend/4.Orchestr/Queries",{"title":298,"path":299,"stem":300},"Client Environment","/frontend/orchestr/client-env","1.Frontend/4.Orchestr/client-env",{"title":302,"path":303,"stem":304},"Component Resolvers","/frontend/orchestr/component-resolvers","1.Frontend/4.Orchestr/component-resolvers",{"title":306,"path":307,"stem":308},"Filters","/frontend/orchestr/filters","1.Frontend/4.Orchestr/filters",{"title":310,"path":311,"stem":312},"URL Query Parameters","/frontend/orchestr/url-query-params","1.Frontend/4.Orchestr/url-query-params",{"title":314,"path":315,"stem":316},"Orchestr Wire Format","/frontend/orchestr/wire-format","1.Frontend/4.Orchestr/wire-format",{"title":318,"path":319,"stem":320,"children":321},"API Reference","/frontend/api-reference","1.Frontend/99.api-reference/0.index",[322,323,441,444,478,494,502,513,521,528],{"title":318,"path":319,"stem":320},{"title":324,"path":325,"stem":326,"children":327},"Entities","/frontend/api-reference/entities","1.Frontend/99.api-reference/01.entities/0.index",[328,329,333,337,341,345,349,353,357,361,365,369,373,377,381,385,389,393,397,401,405,409,413,417,421,425,429,433,437],{"title":324,"path":325,"stem":326},{"title":330,"path":331,"stem":332},"Product","/frontend/api-reference/entities/product","1.Frontend/99.api-reference/01.entities/1.product",{"title":334,"path":335,"stem":336},"SuggestedSearch","/frontend/api-reference/entities/suggested-search","1.Frontend/99.api-reference/01.entities/10.suggested-search",{"title":338,"path":339,"stem":340},"SuggestedSearchEntry","/frontend/api-reference/entities/suggested-search-entry","1.Frontend/99.api-reference/01.entities/11.suggested-search-entry",{"title":342,"path":343,"stem":344},"BlogCollection","/frontend/api-reference/entities/blog-collection","1.Frontend/99.api-reference/01.entities/12.blog-collection",{"title":346,"path":347,"stem":348},"Comment","/frontend/api-reference/entities/comment","1.Frontend/99.api-reference/01.entities/13.comment",{"title":350,"path":351,"stem":352},"Location","/frontend/api-reference/entities/location","1.Frontend/99.api-reference/01.entities/14.location",{"title":354,"path":355,"stem":356},"Glossary","/frontend/api-reference/entities/glossary","1.Frontend/99.api-reference/01.entities/15.glossary",{"title":358,"path":359,"stem":360},"Product List","/frontend/api-reference/entities/product-list","1.Frontend/99.api-reference/01.entities/16.product-list",{"title":362,"path":363,"stem":364},"Product List Item","/frontend/api-reference/entities/product-list-item","1.Frontend/99.api-reference/01.entities/17.product-list-item",{"title":366,"path":367,"stem":368},"Organization","/frontend/api-reference/entities/organization","1.Frontend/99.api-reference/01.entities/18.organization",{"title":370,"path":371,"stem":372},"Employee","/frontend/api-reference/entities/employee","1.Frontend/99.api-reference/01.entities/19.employee",{"title":374,"path":375,"stem":376},"ProductVariant","/frontend/api-reference/entities/product-variant","1.Frontend/99.api-reference/01.entities/2.product-variant",{"title":378,"path":379,"stem":380},"Cost Center","/frontend/api-reference/entities/cost-center","1.Frontend/99.api-reference/01.entities/20.cost-center",{"title":382,"path":383,"stem":384},"Budget","/frontend/api-reference/entities/budget","1.Frontend/99.api-reference/01.entities/21.budget",{"title":386,"path":387,"stem":388},"Quote","/frontend/api-reference/entities/quote","1.Frontend/99.api-reference/01.entities/22.quote",{"title":390,"path":391,"stem":392},"Quote Item","/frontend/api-reference/entities/quote-item","1.Frontend/99.api-reference/01.entities/23.quote-item",{"title":394,"path":395,"stem":396},"Approval Flow","/frontend/api-reference/entities/approval-flow","1.Frontend/99.api-reference/01.entities/24.approval-flow",{"title":398,"path":399,"stem":400},"Approval Rule","/frontend/api-reference/entities/approval-rule","1.Frontend/99.api-reference/01.entities/25.approval-rule",{"title":402,"path":403,"stem":404},"Fee","/frontend/api-reference/entities/fee","1.Frontend/99.api-reference/01.entities/26.fee",{"title":406,"path":407,"stem":408},"Stock Location","/frontend/api-reference/entities/stock-location","1.Frontend/99.api-reference/01.entities/27.stock-location",{"title":410,"path":411,"stem":412},"Stock Level","/frontend/api-reference/entities/stock-level","1.Frontend/99.api-reference/01.entities/28.stock-level",{"title":414,"path":415,"stem":416},"Category","/frontend/api-reference/entities/category","1.Frontend/99.api-reference/01.entities/3.category",{"title":418,"path":419,"stem":420},"Cart","/frontend/api-reference/entities/cart","1.Frontend/99.api-reference/01.entities/4.cart",{"title":422,"path":423,"stem":424},"CartItem","/frontend/api-reference/entities/cart-item","1.Frontend/99.api-reference/01.entities/5.cart-item",{"title":426,"path":427,"stem":428},"Review","/frontend/api-reference/entities/review","1.Frontend/99.api-reference/01.entities/6.review",{"title":430,"path":431,"stem":432},"BreadcrumbItem","/frontend/api-reference/entities/breadcrumb-item","1.Frontend/99.api-reference/01.entities/7.breadcrumb-item",{"title":434,"path":435,"stem":436},"MenuItem","/frontend/api-reference/entities/menu-item","1.Frontend/99.api-reference/01.entities/8.menu-item",{"title":438,"path":439,"stem":440},"BlogPost","/frontend/api-reference/entities/blog-post","1.Frontend/99.api-reference/01.entities/9.blog-post",{"title":192,"path":442,"stem":443},"/frontend/api-reference/page-types","1.Frontend/99.api-reference/02.page-types",{"title":445,"path":446,"stem":447,"children":448},"Common Types","/frontend/api-reference/common-types","1.Frontend/99.api-reference/03.common-types/0.index",[449,450,454,458,462,466,470,474],{"title":445,"path":446,"stem":447},{"title":451,"path":452,"stem":453},"Link","/frontend/api-reference/common-types/link","1.Frontend/99.api-reference/03.common-types/1.link",{"title":455,"path":456,"stem":457},"Media","/frontend/api-reference/common-types/media","1.Frontend/99.api-reference/03.common-types/2.media",{"title":459,"path":460,"stem":461},"Money","/frontend/api-reference/common-types/money","1.Frontend/99.api-reference/03.common-types/3.money",{"title":463,"path":464,"stem":465},"UnitPrice","/frontend/api-reference/common-types/unit-price","1.Frontend/99.api-reference/03.common-types/4.unit-price",{"title":467,"path":468,"stem":469},"Measurement","/frontend/api-reference/common-types/measurement","1.Frontend/99.api-reference/03.common-types/5.measurement",{"title":471,"path":472,"stem":473},"Opening Hours","/frontend/api-reference/common-types/opening-hours","1.Frontend/99.api-reference/03.common-types/6.opening-hours",{"title":475,"path":476,"stem":477},"Commerce Value Types","/frontend/api-reference/common-types/commerce-values","1.Frontend/99.api-reference/03.common-types/7.commerce-values",{"title":479,"path":480,"stem":481,"children":482,"page":55},"Ecommerce","/frontend/api-reference/ecommerce","1.Frontend/99.api-reference/10.ecommerce",[483,486,490],{"title":278,"path":484,"stem":485},"/frontend/api-reference/ecommerce/actions","1.Frontend/99.api-reference/10.ecommerce/1.actions",{"title":487,"path":488,"stem":489},"Queries","/frontend/api-reference/ecommerce/queries","1.Frontend/99.api-reference/10.ecommerce/2.queries",{"title":491,"path":492,"stem":493},"Errors","/frontend/api-reference/ecommerce/errors","1.Frontend/99.api-reference/10.ecommerce/3.errors",{"title":495,"path":496,"stem":497,"children":498,"page":55},"Newsletter","/frontend/api-reference/newsletter","1.Frontend/99.api-reference/11.newsletter",[499],{"title":278,"path":500,"stem":501},"/frontend/api-reference/newsletter/actions","1.Frontend/99.api-reference/11.newsletter/1.actions",{"title":503,"path":504,"stem":505,"children":506,"page":55},"Blog","/frontend/api-reference/blog","1.Frontend/99.api-reference/12.blog",[507,510],{"title":487,"path":508,"stem":509},"/frontend/api-reference/blog/queries","1.Frontend/99.api-reference/12.blog/1.queries",{"title":491,"path":511,"stem":512},"/frontend/api-reference/blog/errors","1.Frontend/99.api-reference/12.blog/2.errors",{"title":514,"path":515,"stem":516,"children":517,"page":55},"Suggested Search","/frontend/api-reference/suggested-search","1.Frontend/99.api-reference/13.suggested-search",[518],{"title":487,"path":519,"stem":520},"/frontend/api-reference/suggested-search/queries","1.Frontend/99.api-reference/13.suggested-search/1.queries",{"title":350,"path":522,"stem":523,"children":524,"page":55},"/frontend/api-reference/location","1.Frontend/99.api-reference/15.location",[525],{"title":487,"path":526,"stem":527},"/frontend/api-reference/location/queries","1.Frontend/99.api-reference/15.location/1.queries",{"title":529,"path":530,"stem":531,"children":532,"page":55},"B2b","/frontend/api-reference/b2b","1.Frontend/99.api-reference/16.b2b",[533,536],{"title":278,"path":534,"stem":535},"/frontend/api-reference/b2b/actions","1.Frontend/99.api-reference/16.b2b/1.actions",{"title":491,"path":537,"stem":538},"/frontend/api-reference/b2b/errors","1.Frontend/99.api-reference/16.b2b/2.errors",{"title":540,"path":541,"stem":542,"children":543},"Agent API","/agent-api","10.Agent-API/0.index",[544,545],{"title":540,"path":541,"stem":542},{"title":546,"path":547,"stem":548,"children":549},"Laioutr MCP","/agent-api/laioutr-mcp","10.Agent-API/1.Laioutr-MCP/0.index",[550,551,555,559,563],{"title":546,"path":547,"stem":548},{"title":552,"path":553,"stem":554},"Connecting to Laioutr MCP","/agent-api/laioutr-mcp/connecting-to-laioutr-mcp","10.Agent-API/1.Laioutr-MCP/1.connecting-to-laioutr-mcp",{"title":556,"path":557,"stem":558},"Supported tools","/agent-api/laioutr-mcp/supported-tools","10.Agent-API/1.Laioutr-MCP/2.supported-tools",{"title":560,"path":561,"stem":562},"Security best practices","/agent-api/laioutr-mcp/security-best-practices","10.Agent-API/1.Laioutr-MCP/3.security-best-practices",{"title":564,"path":565,"stem":566},"Integrating your own MCP client","/agent-api/laioutr-mcp/integrating-your-own-mcp-client","10.Agent-API/1.Laioutr-MCP/4.integrating-your-own-mcp-client",{"title":568,"path":569,"stem":570,"children":571},"Offering","/offering","11.Offering/0.index",[572,573,608,621,634,668,677],{"title":568,"path":569,"stem":570},{"title":574,"path":575,"stem":576,"children":577},"Products","/offering/products","11.Offering/1.Products/0.index",[578,579,584,590,596,602],{"title":574,"path":575,"stem":576},{"title":137,"path":580,"stem":581,"children":582},"/offering/products/frontend","11.Offering/1.Products/1.Frontend/0.index",[583],{"title":137,"path":580,"stem":581},{"title":585,"path":586,"stem":587,"children":588},"Cockpit","/offering/products/cockpit","11.Offering/1.Products/2.Cockpit/0.index",[589],{"title":585,"path":586,"stem":587},{"title":591,"path":592,"stem":593,"children":594},"Checkout","/offering/products/checkout","11.Offering/1.Products/3.Checkout/0.index",[595],{"title":591,"path":592,"stem":593},{"title":597,"path":598,"stem":599,"children":600},"Cloud","/offering/products/cloud","11.Offering/1.Products/4.cloud/0.index",[601],{"title":597,"path":598,"stem":599},{"title":603,"path":604,"stem":605,"children":606},"Larry AI","/offering/products/larry-ai","11.Offering/1.Products/5.larry-ai/0.index",[607],{"title":603,"path":604,"stem":605},{"title":609,"path":610,"stem":611,"children":612,"page":55},"Service Level Agreement","/offering/service-level-agreement","11.Offering/2.service-level-agreement",[613,617],{"title":614,"path":615,"stem":616},"Standard Service Level Agreement Composable Frontend","/offering/service-level-agreement/standard-service-level-agreement","11.Offering/2.service-level-agreement/1.standard-service-level-agreement",{"title":618,"path":619,"stem":620},"Backups","/offering/service-level-agreement/backups","11.Offering/2.service-level-agreement/backups",{"title":622,"path":623,"stem":624,"children":625,"page":55},"Customer Support","/offering/customer-support","11.Offering/3.customer-support",[626,630],{"title":627,"path":628,"stem":629},"Standard Customer Support","/offering/customer-support/standard-customer-support","11.Offering/3.customer-support/1.standard-customer-support",{"title":631,"path":632,"stem":633},"Customer Support Severity Levels of Laioutr products","/offering/customer-support/maximum-serverity-levels","11.Offering/3.customer-support/maximum-serverity-levels",{"title":635,"path":636,"stem":637,"children":638},"Trust Center","/offering/trust-center","11.Offering/4.trust-center/0.index",[639,640,644,648,652,656,660,664],{"title":635,"path":636,"stem":637},{"title":641,"path":642,"stem":643},"Data Protection (GDPR)","/offering/trust-center/data-protection","11.Offering/4.trust-center/1.data-protection",{"title":645,"path":646,"stem":647},"Subprocessors","/offering/trust-center/subprocessors","11.Offering/4.trust-center/2.subprocessors",{"title":649,"path":650,"stem":651},"Infrastructure & Hosting","/offering/trust-center/infrastructure","11.Offering/4.trust-center/3.infrastructure",{"title":653,"path":654,"stem":655},"Security Measures","/offering/trust-center/security-measures","11.Offering/4.trust-center/4.security-measures",{"title":657,"path":658,"stem":659},"Incident Response","/offering/trust-center/incident-response","11.Offering/4.trust-center/5.incident-response",{"title":661,"path":662,"stem":663},"Compliance & Certifications","/offering/trust-center/compliance","11.Offering/4.trust-center/6.compliance",{"title":665,"path":666,"stem":667},"FAQ","/offering/trust-center/faq","11.Offering/4.trust-center/7.faq",{"title":669,"path":670,"stem":671,"children":672,"page":55},"Policies","/offering/policies","11.Offering/5.policies",[673],{"title":674,"path":675,"stem":676},"Fair usage policy","/offering/policies/fair-usage-policy","11.Offering/5.policies/fair-usage-policy",{"title":678,"path":679,"stem":680,"children":681},"Academy","/offering/academy","11.Offering/6.academy/0.index",[682],{"title":678,"path":679,"stem":680},{"title":684,"path":685,"stem":686,"children":687},"Apps","/apps","2.apps/0.index",[688,689,769,855],{"title":684,"path":685,"stem":686},{"title":690,"path":691,"stem":692,"children":693},"App Development","/apps/app-development","2.apps/app-development/0.index",[694,695,717,721,725,729,733,737,741,745,749,753,757,761,765],{"title":690,"path":691,"stem":692},{"title":696,"path":697,"stem":698,"children":699},"Guides","/apps/app-development/guides","2.apps/app-development/99.guides/0.index",[700,701,705,709,713],{"title":696,"path":697,"stem":698},{"title":702,"path":703,"stem":704},"Separate schema components from UI components","/apps/app-development/guides/schema-components-vs-ui-components","2.apps/app-development/99.guides/schema-components-vs-ui-components",{"title":706,"path":707,"stem":708},"Section config standard","/apps/app-development/guides/section-config-standard","2.apps/app-development/99.guides/section-config-standard",{"title":710,"path":711,"stem":712},"Shared field factories","/apps/app-development/guides/shared-field-factories","2.apps/app-development/99.guides/shared-field-factories",{"title":714,"path":715,"stem":716},"How to write CSS","/apps/app-development/guides/writing-css","2.apps/app-development/99.guides/writing-css",{"title":718,"path":719,"stem":720},"App Configuration","/apps/app-development/app-configuration","2.apps/app-development/app-configuration",{"title":722,"path":723,"stem":724},"App Starter","/apps/app-development/app-starter","2.apps/app-development/app-starter",{"title":726,"path":727,"stem":728},"Best Practice","/apps/app-development/best-practice","2.apps/app-development/best-practice",{"title":730,"path":731,"stem":732},"Block Definitions","/apps/app-development/block-definitions","2.apps/app-development/block-definitions",{"title":734,"path":735,"stem":736},"Coding Standards","/apps/app-development/coding-standards","2.apps/app-development/coding-standards",{"title":738,"path":739,"stem":740},"Consent Adapters","/apps/app-development/consent-adapters","2.apps/app-development/consent-adapters",{"title":742,"path":743,"stem":744},"Consuming Query Fields","/apps/app-development/consuming-query-fields","2.apps/app-development/consuming-query-fields",{"title":746,"path":747,"stem":748},"Implementation Overview","/apps/app-development/implementation-overview","2.apps/app-development/implementation-overview",{"title":750,"path":751,"stem":752},"Media Libraries","/apps/app-development/media-libraries","2.apps/app-development/media-libraries",{"title":754,"path":755,"stem":756},"Platform Dependencies","/apps/app-development/platform-dependencies","2.apps/app-development/platform-dependencies",{"title":758,"path":759,"stem":760},"Schema Fields","/apps/app-development/schema-fields","2.apps/app-development/schema-fields",{"title":762,"path":763,"stem":764},"Section Definitions","/apps/app-development/section-definitions","2.apps/app-development/section-definitions",{"title":766,"path":767,"stem":768},"Studio Icons","/apps/app-development/studio-icons","2.apps/app-development/studio-icons",{"title":770,"path":771,"stem":772,"children":773},"App Docs","/apps/app-docs","2.apps/app-docs/0.index",[774,775,779,783,787,791,795,799,803,807,811,815,819,823,827,831,835,839,843,847,851],{"title":770,"path":771,"stem":772},{"title":776,"path":777,"stem":778},"Actindo","/apps/app-docs/actindo","2.apps/app-docs/actindo",{"title":780,"path":781,"stem":782},"Adobe Commerce","/apps/app-docs/adobe-commerce","2.apps/app-docs/adobe-commerce",{"title":784,"path":785,"stem":786},"B2Bsellers","/apps/app-docs/b2bsellers","2.apps/app-docs/b2bsellers",{"title":788,"path":789,"stem":790},"Battery Included","/apps/app-docs/battery-included","2.apps/app-docs/battery-included",{"title":792,"path":793,"stem":794},"CCM19","/apps/app-docs/ccm19","2.apps/app-docs/ccm19",{"title":796,"path":797,"stem":798},"Commercetools","/apps/app-docs/commercetools","2.apps/app-docs/commercetools",{"title":800,"path":801,"stem":802},"Cookiebot","/apps/app-docs/cookiebot","2.apps/app-docs/cookiebot",{"title":804,"path":805,"stem":806},"Emporix","/apps/app-docs/emporix","2.apps/app-docs/emporix",{"title":808,"path":809,"stem":810},"Google Tag Manager (GTM)","/apps/app-docs/gtm","2.apps/app-docs/gtm",{"title":812,"path":813,"stem":814},"Hygraph","/apps/app-docs/hygraph","2.apps/app-docs/hygraph",{"title":816,"path":817,"stem":818},"JTL Platform","/apps/app-docs/jtl-platform","2.apps/app-docs/jtl-platform",{"title":820,"path":821,"stem":822},"Klaviyo","/apps/app-docs/klaviyo","2.apps/app-docs/klaviyo",{"title":824,"path":825,"stem":826},"Nimstrata Google Retail API","/apps/app-docs/nimstrata","2.apps/app-docs/nimstrata",{"title":828,"path":829,"stem":830},"OXID eShop","/apps/app-docs/oxid","2.apps/app-docs/oxid",{"title":832,"path":833,"stem":834},"Pimcore","/apps/app-docs/pimcore","2.apps/app-docs/pimcore",{"title":836,"path":837,"stem":838},"Shopify","/apps/app-docs/shopify","2.apps/app-docs/shopify",{"title":840,"path":841,"stem":842},"Shopware","/apps/app-docs/shopware","2.apps/app-docs/shopware",{"title":844,"path":845,"stem":846},"Sylius","/apps/app-docs/sylius","2.apps/app-docs/sylius",{"title":848,"path":849,"stem":850},"Vercel Analytics","/apps/app-docs/vercel-analytics","2.apps/app-docs/vercel-analytics",{"title":852,"path":853,"stem":854},"Vercel Speed Insights","/apps/app-docs/vercel-speed-insights","2.apps/app-docs/vercel-speed-insights",{"title":856,"path":857,"stem":858,"children":859,"page":55},"Essentials","/apps/essentials","2.apps/essentials",[860,864,868],{"title":861,"path":862,"stem":863},"Legal","/apps/essentials/legal","2.apps/essentials/legal",{"title":865,"path":866,"stem":867},"Mailer","/apps/essentials/mailer","2.apps/essentials/mailer",{"title":220,"path":869,"stem":870},"/apps/essentials/seo","2.apps/essentials/seo",{"title":872,"path":873,"stem":874,"children":875},"Laioutr UI","/laioutr-ui","3.laioutr-ui/0.index",[876,877,909,915,921,1117,1138,1144,1150,1204,1222,1356],{"title":872,"path":873,"stem":874},{"title":5,"path":878,"stem":879,"children":880},"/laioutr-ui/getting-started","3.laioutr-ui/01.getting-started/0.index",[881,882,886,890,894,898,902,906],{"title":5,"path":878,"stem":879},{"title":883,"path":884,"stem":885},"Browser support","/laioutr-ui/getting-started/browser-support","3.laioutr-ui/01.getting-started/1.browser-support",{"title":887,"path":888,"stem":889},"Common Data","/laioutr-ui/getting-started/common-data","3.laioutr-ui/01.getting-started/99.common-data",{"title":891,"path":892,"stem":893},"CSS Layers","/laioutr-ui/getting-started/css-layers","3.laioutr-ui/01.getting-started/css-layers",{"title":895,"path":896,"stem":897},"Figma Kit","/laioutr-ui/getting-started/figma-kit","3.laioutr-ui/01.getting-started/figma-kit",{"title":899,"path":900,"stem":901},"Surface Tone","/laioutr-ui/getting-started/surface-tone","3.laioutr-ui/01.getting-started/surface-tone",{"title":903,"path":904,"stem":905},"Theming","/laioutr-ui/getting-started/theming","3.laioutr-ui/01.getting-started/theming",{"title":216,"path":907,"stem":908},"/laioutr-ui/getting-started/z-ordering","3.laioutr-ui/01.getting-started/z-ordering",{"title":910,"path":911,"stem":912,"children":913},"B2B","/laioutr-ui/b2b","3.laioutr-ui/b2b/0.index",[914],{"title":910,"path":911,"stem":912},{"title":916,"path":917,"stem":918,"children":919},"Booking","/laioutr-ui/booking","3.laioutr-ui/booking/0.index",[920],{"title":916,"path":917,"stem":918},{"title":922,"path":923,"stem":924,"children":925},"CMS","/laioutr-ui/cms","3.laioutr-ui/cms/0.index",[926,927,933,958,970,974,978,982,986,990,1002,1023,1027,1048,1064,1113],{"title":922,"path":923,"stem":924},{"title":928,"path":929,"stem":930,"children":931},"Alphabetical Index","/laioutr-ui/cms/alphabetical-index","3.laioutr-ui/cms/alphabetical-index",[932],{"title":928,"path":929,"stem":930},{"title":934,"path":935,"stem":936,"children":937,"page":55},"Banner","/laioutr-ui/cms/banner","3.laioutr-ui/cms/banner",[938,942,946,950,954],{"title":939,"path":940,"stem":941},"Banner Basic","/laioutr-ui/cms/banner/banner-basic","3.laioutr-ui/cms/banner/banner-basic",{"title":943,"path":944,"stem":945},"Banner Integrated","/laioutr-ui/cms/banner/banner-integrated","3.laioutr-ui/cms/banner/banner-integrated",{"title":947,"path":948,"stem":949},"Banner Showcase","/laioutr-ui/cms/banner/banner-showcase","3.laioutr-ui/cms/banner/banner-showcase",{"title":951,"path":952,"stem":953},"Media + Text","/laioutr-ui/cms/banner/media-text","3.laioutr-ui/cms/banner/media-text",{"title":955,"path":956,"stem":957},"USP Banner","/laioutr-ui/cms/banner/usp-banner","3.laioutr-ui/cms/banner/usp-banner",{"title":503,"path":959,"stem":960,"children":961,"page":55},"/laioutr-ui/cms/blog","3.laioutr-ui/cms/blog",[962,966],{"title":963,"path":964,"stem":965},"Article Detail","/laioutr-ui/cms/blog/article-detail","3.laioutr-ui/cms/blog/article-detail",{"title":967,"path":968,"stem":969},"Blog Post Listing","/laioutr-ui/cms/blog/blog-post-listing","3.laioutr-ui/cms/blog/blog-post-listing",{"title":971,"path":972,"stem":973},"Brand Hero","/laioutr-ui/cms/brand-hero","3.laioutr-ui/cms/brand-hero",{"title":975,"path":976,"stem":977},"Container","/laioutr-ui/cms/container","3.laioutr-ui/cms/container",{"title":979,"path":980,"stem":981},"Content Grid","/laioutr-ui/cms/content-grid","3.laioutr-ui/cms/content-grid",{"title":983,"path":984,"stem":985},"Editorial Grid","/laioutr-ui/cms/editorial-grid","3.laioutr-ui/cms/editorial-grid",{"title":987,"path":988,"stem":989},"Media Gallery","/laioutr-ui/cms/media-gallery","3.laioutr-ui/cms/media-gallery",{"title":495,"path":991,"stem":992,"children":993,"page":55},"/laioutr-ui/cms/newsletter","3.laioutr-ui/cms/newsletter",[994,998],{"title":995,"path":996,"stem":997},"Email Input Form","/laioutr-ui/cms/newsletter/email-input-form","3.laioutr-ui/cms/newsletter/email-input-form",{"title":999,"path":1000,"stem":1001},"Newsletter Registration","/laioutr-ui/cms/newsletter/newsletter-registration","3.laioutr-ui/cms/newsletter/newsletter-registration",{"title":1003,"path":1004,"stem":1005,"children":1006,"page":55},"Popups","/laioutr-ui/cms/popups","3.laioutr-ui/cms/popups",[1007,1011,1015,1019],{"title":1008,"path":1009,"stem":1010},"PopUp","/laioutr-ui/cms/popups/pop-up","3.laioutr-ui/cms/popups/pop-up",{"title":1012,"path":1013,"stem":1014},"PopUp Info","/laioutr-ui/cms/popups/pop-up-info","3.laioutr-ui/cms/popups/pop-up-info",{"title":1016,"path":1017,"stem":1018},"PopUp Newsletter","/laioutr-ui/cms/popups/pop-up-newsletter","3.laioutr-ui/cms/popups/pop-up-newsletter",{"title":1020,"path":1021,"stem":1022},"PopUp Promotion","/laioutr-ui/cms/popups/pop-up-promotion","3.laioutr-ui/cms/popups/pop-up-promotion",{"title":1024,"path":1025,"stem":1026},"Promotion Banner","/laioutr-ui/cms/promotion-banner","3.laioutr-ui/cms/promotion-banner",{"title":1028,"path":1029,"stem":1030,"children":1031,"page":55},"Quotes","/laioutr-ui/cms/quotes","3.laioutr-ui/cms/quotes",[1032,1036,1040,1044],{"title":1033,"path":1034,"stem":1035},"Persona Quote","/laioutr-ui/cms/quotes/persona-quote","3.laioutr-ui/cms/quotes/persona-quote",{"title":1037,"path":1038,"stem":1039},"Persona Quote Slider","/laioutr-ui/cms/quotes/persona-quote-slider","3.laioutr-ui/cms/quotes/persona-quote-slider",{"title":1041,"path":1042,"stem":1043},"Quote Card","/laioutr-ui/cms/quotes/quote-card","3.laioutr-ui/cms/quotes/quote-card",{"title":1045,"path":1046,"stem":1047},"Quote Card Slider","/laioutr-ui/cms/quotes/quote-card-slider","3.laioutr-ui/cms/quotes/quote-card-slider",{"title":1049,"path":1050,"stem":1051,"children":1052,"page":55},"Reviews","/laioutr-ui/cms/reviews","3.laioutr-ui/cms/reviews",[1053,1056,1060],{"title":426,"path":1054,"stem":1055},"/laioutr-ui/cms/reviews/review","3.laioutr-ui/cms/reviews/review",{"title":1057,"path":1058,"stem":1059},"Review Form","/laioutr-ui/cms/reviews/review-form","3.laioutr-ui/cms/reviews/review-form",{"title":1061,"path":1062,"stem":1063},"Social Share","/laioutr-ui/cms/reviews/social-share","3.laioutr-ui/cms/reviews/social-share",{"title":1065,"path":1066,"stem":1067,"children":1068,"page":55},"Slider","/laioutr-ui/cms/slider","3.laioutr-ui/cms/slider",[1069,1073,1077,1081,1085,1089,1093,1097,1101,1105,1109],{"title":1070,"path":1071,"stem":1072},"Content Slider","/laioutr-ui/cms/slider/content-slider","3.laioutr-ui/cms/slider/content-slider",{"title":1074,"path":1075,"stem":1076},"Hero Slider","/laioutr-ui/cms/slider/hero-slider","3.laioutr-ui/cms/slider/hero-slider",{"title":1078,"path":1079,"stem":1080},"Logo Grid","/laioutr-ui/cms/slider/logo-grid","3.laioutr-ui/cms/slider/logo-grid",{"title":1082,"path":1083,"stem":1084},"Logo Slider","/laioutr-ui/cms/slider/logo-slider","3.laioutr-ui/cms/slider/logo-slider",{"title":1086,"path":1087,"stem":1088},"Swiper Arrows","/laioutr-ui/cms/slider/swiper-arrows","3.laioutr-ui/cms/slider/swiper-arrows",{"title":1090,"path":1091,"stem":1092},"Swiper Bullets","/laioutr-ui/cms/slider/swiper-bullets","3.laioutr-ui/cms/slider/swiper-bullets",{"title":1094,"path":1095,"stem":1096},"Swiper Chrome","/laioutr-ui/cms/slider/swiper-chrome","3.laioutr-ui/cms/slider/swiper-chrome",{"title":1098,"path":1099,"stem":1100},"Swiper Nav Bar","/laioutr-ui/cms/slider/swiper-nav-bar","3.laioutr-ui/cms/slider/swiper-nav-bar",{"title":1102,"path":1103,"stem":1104},"Swiper Numbers","/laioutr-ui/cms/slider/swiper-numbers","3.laioutr-ui/cms/slider/swiper-numbers",{"title":1106,"path":1107,"stem":1108},"Swiper Scrollbar","/laioutr-ui/cms/slider/swiper-scrollbar","3.laioutr-ui/cms/slider/swiper-scrollbar",{"title":1110,"path":1111,"stem":1112},"Thumbnails Slider","/laioutr-ui/cms/slider/thumbnails-slider","3.laioutr-ui/cms/slider/thumbnails-slider",{"title":1114,"path":1115,"stem":1116},"Withdrawal Form","/laioutr-ui/cms/withdrawal-form","3.laioutr-ui/cms/withdrawal-form",{"title":350,"path":1118,"stem":1119,"children":1120},"/laioutr-ui/location","3.laioutr-ui/location/0.index",[1121,1122,1126,1130,1134],{"title":350,"path":1118,"stem":1119},{"title":1123,"path":1124,"stem":1125},"Location Card","/laioutr-ui/location/location-card","3.laioutr-ui/location/location-card",{"title":1127,"path":1128,"stem":1129},"Location Detail","/laioutr-ui/location/location-detail","3.laioutr-ui/location/location-detail",{"title":1131,"path":1132,"stem":1133},"Location Finder","/laioutr-ui/location/location-finder","3.laioutr-ui/location/location-finder",{"title":1135,"path":1136,"stem":1137},"Table Opening Hours","/laioutr-ui/location/table-opening-hours","3.laioutr-ui/location/table-opening-hours",{"title":1139,"path":1140,"stem":1141,"children":1142},"Marketplace","/laioutr-ui/marketplace","3.laioutr-ui/marketplace/0.index",[1143],{"title":1139,"path":1140,"stem":1141},{"title":1145,"path":1146,"stem":1147,"children":1148},"Multichannel","/laioutr-ui/multichannel","3.laioutr-ui/multichannel/0.index",[1149],{"title":1145,"path":1146,"stem":1147},{"title":1151,"path":1152,"stem":1153,"children":1154},"Navigation & Headers","/laioutr-ui/navigation","3.laioutr-ui/navigation/0.index",[1155,1156,1160,1164,1168,1172,1176,1180,1184,1188,1192,1196,1200],{"title":1151,"path":1152,"stem":1153},{"title":1157,"path":1158,"stem":1159},"Breadcrumbs","/laioutr-ui/navigation/breadcrumbs","3.laioutr-ui/navigation/breadcrumbs",{"title":1161,"path":1162,"stem":1163},"Footer","/laioutr-ui/navigation/footer","3.laioutr-ui/navigation/footer",{"title":1165,"path":1166,"stem":1167},"Footer Menu","/laioutr-ui/navigation/footer-menu","3.laioutr-ui/navigation/footer-menu",{"title":1169,"path":1170,"stem":1171},"Header Basic","/laioutr-ui/navigation/header-basic","3.laioutr-ui/navigation/header-basic",{"title":1173,"path":1174,"stem":1175},"Header Shop","/laioutr-ui/navigation/header-shop","3.laioutr-ui/navigation/header-shop",{"title":1177,"path":1178,"stem":1179},"Mega Menu","/laioutr-ui/navigation/mega-menu","3.laioutr-ui/navigation/mega-menu",{"title":1181,"path":1182,"stem":1183},"Menu Side by Side","/laioutr-ui/navigation/menu-side-by-side","3.laioutr-ui/navigation/menu-side-by-side",{"title":1185,"path":1186,"stem":1187},"Mobile Menu (Basic)","/laioutr-ui/navigation/mobile-menu-basic","3.laioutr-ui/navigation/mobile-menu-basic",{"title":1189,"path":1190,"stem":1191},"Mobile Menu (Shop)","/laioutr-ui/navigation/mobile-menu-shop","3.laioutr-ui/navigation/mobile-menu-shop",{"title":1193,"path":1194,"stem":1195},"Page Not Found","/laioutr-ui/navigation/page-not-found","3.laioutr-ui/navigation/page-not-found",{"title":1197,"path":1198,"stem":1199},"Search Auto-Suggest","/laioutr-ui/navigation/search-auto-suggest","3.laioutr-ui/navigation/search-auto-suggest",{"title":1201,"path":1202,"stem":1203},"Top Bar","/laioutr-ui/navigation/top-bar","3.laioutr-ui/navigation/top-bar",{"title":1205,"path":1206,"stem":1207,"children":1208},"SaaS","/laioutr-ui/saas","3.laioutr-ui/saas/0.index",[1209,1210,1214,1218],{"title":1205,"path":1206,"stem":1207},{"title":1211,"path":1212,"stem":1213},"Plan Card","/laioutr-ui/saas/plan-card","3.laioutr-ui/saas/plan-card",{"title":1215,"path":1216,"stem":1217},"Plan Card Slider","/laioutr-ui/saas/plan-card-slider","3.laioutr-ui/saas/plan-card-slider",{"title":1219,"path":1220,"stem":1221},"Plan Comparison Table","/laioutr-ui/saas/plan-comparison-table","3.laioutr-ui/saas/plan-comparison-table",{"title":1223,"path":1224,"stem":1225,"children":1226},"Shop","/laioutr-ui/shop","3.laioutr-ui/shop/0.index",[1227,1228,1256,1260,1264,1268,1272,1332,1336,1340,1344,1348,1352],{"title":1223,"path":1224,"stem":1225},{"title":418,"path":1229,"stem":1230,"children":1231,"page":55},"/laioutr-ui/shop/cart","3.laioutr-ui/shop/cart",[1232,1236,1240,1244,1248,1252],{"title":1233,"path":1234,"stem":1235},"Cart Coupon Code Accordion","/laioutr-ui/shop/cart/cart-coupon-code-accordion","3.laioutr-ui/shop/cart/cart-coupon-code-accordion",{"title":1237,"path":1238,"stem":1239},"Cart List Item","/laioutr-ui/shop/cart/cart-list-item","3.laioutr-ui/shop/cart/cart-list-item",{"title":1241,"path":1242,"stem":1243},"Cart Sheet","/laioutr-ui/shop/cart/cart-sheet","3.laioutr-ui/shop/cart/cart-sheet",{"title":1245,"path":1246,"stem":1247},"Cart Summary Box","/laioutr-ui/shop/cart/cart-summary-box","3.laioutr-ui/shop/cart/cart-summary-box",{"title":1249,"path":1250,"stem":1251},"Empty State Cart","/laioutr-ui/shop/cart/empty-state-cart","3.laioutr-ui/shop/cart/empty-state-cart",{"title":1253,"path":1254,"stem":1255},"Free Delivery Progress","/laioutr-ui/shop/cart/free-delivery-progress","3.laioutr-ui/shop/cart/free-delivery-progress",{"title":1257,"path":1258,"stem":1259},"Category Card Grid","/laioutr-ui/shop/category-card-grid","3.laioutr-ui/shop/category-card-grid",{"title":1261,"path":1262,"stem":1263},"Category Card Slider","/laioutr-ui/shop/category-card-slider","3.laioutr-ui/shop/category-card-slider",{"title":1265,"path":1266,"stem":1267},"Filter Bar","/laioutr-ui/shop/filter-bar","3.laioutr-ui/shop/filter-bar",{"title":1269,"path":1270,"stem":1271},"Filter Off Canvas","/laioutr-ui/shop/filter-off-canvas","3.laioutr-ui/shop/filter-off-canvas",{"title":1273,"path":1274,"stem":1275,"children":1276,"page":55},"Product Detail","/laioutr-ui/shop/product-detail","3.laioutr-ui/shop/product-detail",[1277,1281,1285,1289,1293,1297,1300,1304,1308,1312,1316,1320,1324,1328],{"title":1278,"path":1279,"stem":1280},"Add to Cart","/laioutr-ui/shop/product-detail/add-to-cart","3.laioutr-ui/shop/product-detail/add-to-cart",{"title":1282,"path":1283,"stem":1284},"Benefits Box","/laioutr-ui/shop/product-detail/benefits-box","3.laioutr-ui/shop/product-detail/benefits-box",{"title":1286,"path":1287,"stem":1288},"Coupon Box","/laioutr-ui/shop/product-detail/coupon-box","3.laioutr-ui/shop/product-detail/coupon-box",{"title":1290,"path":1291,"stem":1292},"Energy Label","/laioutr-ui/shop/product-detail/energy-label","3.laioutr-ui/shop/product-detail/energy-label",{"title":1294,"path":1295,"stem":1296},"Price Info","/laioutr-ui/shop/product-detail/price-info","3.laioutr-ui/shop/product-detail/price-info",{"title":1273,"path":1298,"stem":1299},"/laioutr-ui/shop/product-detail/product-detail","3.laioutr-ui/shop/product-detail/product-detail",{"title":1301,"path":1302,"stem":1303},"Product Image Gallery","/laioutr-ui/shop/product-detail/product-image-gallery","3.laioutr-ui/shop/product-detail/product-image-gallery",{"title":1305,"path":1306,"stem":1307},"Product Specifications Table","/laioutr-ui/shop/product-detail/product-specifications","3.laioutr-ui/shop/product-detail/product-specifications",{"title":1309,"path":1310,"stem":1311},"Product Title","/laioutr-ui/shop/product-detail/product-title","3.laioutr-ui/shop/product-detail/product-title",{"title":1313,"path":1314,"stem":1315},"Quantity Discount","/laioutr-ui/shop/product-detail/quantity-discount","3.laioutr-ui/shop/product-detail/quantity-discount",{"title":1317,"path":1318,"stem":1319},"Variant Off Canvas","/laioutr-ui/shop/product-detail/variant-off-canvas","3.laioutr-ui/shop/product-detail/variant-off-canvas",{"title":1321,"path":1322,"stem":1323},"Variant Selector Configurator","/laioutr-ui/shop/product-detail/variant-selector-configurator","3.laioutr-ui/shop/product-detail/variant-selector-configurator",{"title":1325,"path":1326,"stem":1327},"Variant Selector (Multiple)","/laioutr-ui/shop/product-detail/variant-selector-multiple","3.laioutr-ui/shop/product-detail/variant-selector-multiple",{"title":1329,"path":1330,"stem":1331},"Variant Selector Options","/laioutr-ui/shop/product-detail/variant-selector-options","3.laioutr-ui/shop/product-detail/variant-selector-options",{"title":1333,"path":1334,"stem":1335},"Product Listing Grid","/laioutr-ui/shop/product-listing-grid","3.laioutr-ui/shop/product-listing-grid",{"title":1337,"path":1338,"stem":1339},"Product Slider","/laioutr-ui/shop/product-slider","3.laioutr-ui/shop/product-slider",{"title":1341,"path":1342,"stem":1343},"Product Slider Showcase","/laioutr-ui/shop/product-slider-showcase","3.laioutr-ui/shop/product-slider-showcase",{"title":1345,"path":1346,"stem":1347},"Product Tile (Basic)","/laioutr-ui/shop/product-tile-basic","3.laioutr-ui/shop/product-tile-basic",{"title":1349,"path":1350,"stem":1351},"Search Result Hero","/laioutr-ui/shop/search-result-hero","3.laioutr-ui/shop/search-result-hero",{"title":1353,"path":1354,"stem":1355},"Sort Modes","/laioutr-ui/shop/sort-modes","3.laioutr-ui/shop/sort-modes",{"title":1357,"path":1358,"stem":1359,"children":1360},"UI Kit","/laioutr-ui/ui-kit","3.laioutr-ui/ui-kit/0.index",[1361,1362,1530,1554,1575,1592,1629,1738,1767],{"title":1357,"path":1358,"stem":1359},{"title":1363,"path":1364,"stem":1365,"children":1366,"page":55},"General","/laioutr-ui/ui-kit/general","3.laioutr-ui/ui-kit/01.general",[1367,1371,1375,1379,1383,1387,1391,1395,1399,1403,1407,1410,1414,1418,1422,1426,1430,1434,1438,1442,1446,1450,1454,1458,1462,1466,1470,1474,1478,1482,1486,1490,1494,1498,1502,1506,1510,1514,1518,1522,1526],{"title":1368,"path":1369,"stem":1370},"Accordion","/laioutr-ui/ui-kit/general/accordion","3.laioutr-ui/ui-kit/01.general/Accordion",{"title":1372,"path":1373,"stem":1374},"Avatar","/laioutr-ui/ui-kit/general/avatar","3.laioutr-ui/ui-kit/01.general/Avatar",{"title":1376,"path":1377,"stem":1378},"Backdrop","/laioutr-ui/ui-kit/general/backdrop","3.laioutr-ui/ui-kit/01.general/Backdrop",{"title":1380,"path":1381,"stem":1382},"Dropdown Menu","/laioutr-ui/ui-kit/general/dropdownmenu","3.laioutr-ui/ui-kit/01.general/DropdownMenu",{"title":1384,"path":1385,"stem":1386},"Edge Glow","/laioutr-ui/ui-kit/general/edgeglow","3.laioutr-ui/ui-kit/01.general/EdgeGlow",{"title":1388,"path":1389,"stem":1390},"Empty State","/laioutr-ui/ui-kit/general/emptystate","3.laioutr-ui/ui-kit/01.general/EmptyState",{"title":1392,"path":1393,"stem":1394},"Icon","/laioutr-ui/ui-kit/general/icon","3.laioutr-ui/ui-kit/01.general/Icon",{"title":1396,"path":1397,"stem":1398},"Image Contrast Overlay","/laioutr-ui/ui-kit/general/imagecontrastoverlay","3.laioutr-ui/ui-kit/01.general/ImageContrastOverlay",{"title":1400,"path":1401,"stem":1402},"Lightbox","/laioutr-ui/ui-kit/general/lightbox","3.laioutr-ui/ui-kit/01.general/Lightbox",{"title":1404,"path":1405,"stem":1406},"Loading Spinner","/laioutr-ui/ui-kit/general/loadingspinner","3.laioutr-ui/ui-kit/01.general/LoadingSpinner",{"title":455,"path":1408,"stem":1409},"/laioutr-ui/ui-kit/general/media","3.laioutr-ui/ui-kit/01.general/Media",{"title":1411,"path":1412,"stem":1413},"Navigation Bullets","/laioutr-ui/ui-kit/general/navigationbullets","3.laioutr-ui/ui-kit/01.general/NavigationBullets",{"title":1415,"path":1416,"stem":1417},"Placeholder","/laioutr-ui/ui-kit/general/placeholder","3.laioutr-ui/ui-kit/01.general/Placeholder",{"title":1419,"path":1420,"stem":1421},"Progress Bar","/laioutr-ui/ui-kit/general/progressbar","3.laioutr-ui/ui-kit/01.general/ProgressBar",{"title":1423,"path":1424,"stem":1425},"Scrollbar","/laioutr-ui/ui-kit/general/scrollbar","3.laioutr-ui/ui-kit/01.general/Scrollbar",{"title":1427,"path":1428,"stem":1429},"Swatch","/laioutr-ui/ui-kit/general/swatch","3.laioutr-ui/ui-kit/01.general/Swatch",{"title":1431,"path":1432,"stem":1433},"SwiperScrollbar","/laioutr-ui/ui-kit/general/swiperscrollbar","3.laioutr-ui/ui-kit/01.general/SwiperScrollbar",{"title":1435,"path":1436,"stem":1437},"Thumbnail","/laioutr-ui/ui-kit/general/thumbnail","3.laioutr-ui/ui-kit/01.general/Thumbnail",{"title":1439,"path":1440,"stem":1441},"Tooltip","/laioutr-ui/ui-kit/general/tooltip","3.laioutr-ui/ui-kit/01.general/Tooltip",{"title":1443,"path":1444,"stem":1445},"Amount Pill","/laioutr-ui/ui-kit/general/amount-pill","3.laioutr-ui/ui-kit/01.general/amount-pill",{"title":1447,"path":1448,"stem":1449},"Countdown","/laioutr-ui/ui-kit/general/countdown","3.laioutr-ui/ui-kit/01.general/countdown",{"title":1451,"path":1452,"stem":1453},"Countdown Boxed","/laioutr-ui/ui-kit/general/countdown-boxed","3.laioutr-ui/ui-kit/01.general/countdown-boxed",{"title":1455,"path":1456,"stem":1457},"Dark Mode Switch","/laioutr-ui/ui-kit/general/dark-mode-switch","3.laioutr-ui/ui-kit/01.general/dark-mode-switch",{"title":1459,"path":1460,"stem":1461},"Language Switcher","/laioutr-ui/ui-kit/general/language-switcher","3.laioutr-ui/ui-kit/01.general/language-switcher",{"title":1463,"path":1464,"stem":1465},"Media Preview","/laioutr-ui/ui-kit/general/media-preview","3.laioutr-ui/ui-kit/01.general/media-preview",{"title":1467,"path":1468,"stem":1469},"Media Stage","/laioutr-ui/ui-kit/general/media-stage","3.laioutr-ui/ui-kit/01.general/media-stage",{"title":1471,"path":1472,"stem":1473},"Nav Link Item","/laioutr-ui/ui-kit/general/nav-link-item","3.laioutr-ui/ui-kit/01.general/nav-link-item",{"title":1475,"path":1476,"stem":1477},"Nav Section Heading","/laioutr-ui/ui-kit/general/nav-section-heading","3.laioutr-ui/ui-kit/01.general/nav-section-heading",{"title":1479,"path":1480,"stem":1481},"OnSurface","/laioutr-ui/ui-kit/general/on-surface","3.laioutr-ui/ui-kit/01.general/on-surface",{"title":1483,"path":1484,"stem":1485},"Opening Status","/laioutr-ui/ui-kit/general/opening-status","3.laioutr-ui/ui-kit/01.general/opening-status",{"title":1487,"path":1488,"stem":1489},"Opening Status Detail","/laioutr-ui/ui-kit/general/opening-status-detail","3.laioutr-ui/ui-kit/01.general/opening-status-detail",{"title":1491,"path":1492,"stem":1493},"Opening Status Indicator","/laioutr-ui/ui-kit/general/opening-status-indicator","3.laioutr-ui/ui-kit/01.general/opening-status-indicator",{"title":1495,"path":1496,"stem":1497},"Rating Progress Bar Filter","/laioutr-ui/ui-kit/general/rating-progress-bar-filter","3.laioutr-ui/ui-kit/01.general/rating-progress-bar-filter",{"title":1499,"path":1500,"stem":1501},"Status Message","/laioutr-ui/ui-kit/general/status-message","3.laioutr-ui/ui-kit/01.general/status-message",{"title":1503,"path":1504,"stem":1505},"Stock Info Summary","/laioutr-ui/ui-kit/general/stock-info-summary","3.laioutr-ui/ui-kit/01.general/stock-info-summary",{"title":1507,"path":1508,"stem":1509},"Swatch Chip","/laioutr-ui/ui-kit/general/swatch-chip","3.laioutr-ui/ui-kit/01.general/swatch-chip",{"title":1511,"path":1512,"stem":1513},"Swatch Option","/laioutr-ui/ui-kit/general/swatch-option","3.laioutr-ui/ui-kit/01.general/swatch-option",{"title":1515,"path":1516,"stem":1517},"Swatch Summary","/laioutr-ui/ui-kit/general/swatch-summary","3.laioutr-ui/ui-kit/01.general/swatch-summary",{"title":1519,"path":1520,"stem":1521},"Table of Contents","/laioutr-ui/ui-kit/general/table-of-contents","3.laioutr-ui/ui-kit/01.general/table-of-contents",{"title":1523,"path":1524,"stem":1525},"Zoom Level (Segmented)","/laioutr-ui/ui-kit/general/zoom-level-segmented","3.laioutr-ui/ui-kit/01.general/zoom-level-segmented",{"title":1527,"path":1528,"stem":1529},"Zoom Level (Stepper)","/laioutr-ui/ui-kit/general/zoom-level-stepper","3.laioutr-ui/ui-kit/01.general/zoom-level-stepper",{"title":1531,"path":1532,"stem":1533,"children":1534,"page":55},"Typography","/laioutr-ui/ui-kit/typography","3.laioutr-ui/ui-kit/02.typography",[1535,1539,1542,1546,1550],{"title":1536,"path":1537,"stem":1538},"Icon List","/laioutr-ui/ui-kit/typography/iconlist","3.laioutr-ui/ui-kit/02.typography/IconList",{"title":451,"path":1540,"stem":1541},"/laioutr-ui/ui-kit/typography/link","3.laioutr-ui/ui-kit/02.typography/Link",{"title":1543,"path":1544,"stem":1545},"Rich Content","/laioutr-ui/ui-kit/typography/richcontent","3.laioutr-ui/ui-kit/02.typography/RichContent",{"title":1547,"path":1548,"stem":1549},"Text","/laioutr-ui/ui-kit/typography/text","3.laioutr-ui/ui-kit/02.typography/Text",{"title":1551,"path":1552,"stem":1553},"Text Group","/laioutr-ui/ui-kit/typography/text-group","3.laioutr-ui/ui-kit/02.typography/text-group",{"title":1555,"path":1556,"stem":1557,"children":1558,"page":55},"Layout","/laioutr-ui/ui-kit/layout","3.laioutr-ui/ui-kit/03.layout",[1559,1563,1567,1571],{"title":1560,"path":1561,"stem":1562},"Grid Fill","/laioutr-ui/ui-kit/layout/gridfill","3.laioutr-ui/ui-kit/03.layout/GridFill",{"title":1564,"path":1565,"stem":1566},"Grid Masonry","/laioutr-ui/ui-kit/layout/gridmasonry","3.laioutr-ui/ui-kit/03.layout/GridMasonry",{"title":1568,"path":1569,"stem":1570},"Scroll Area","/laioutr-ui/ui-kit/layout/scrollarea","3.laioutr-ui/ui-kit/03.layout/ScrollArea",{"title":1572,"path":1573,"stem":1574},"Separator","/laioutr-ui/ui-kit/layout/separator","3.laioutr-ui/ui-kit/03.layout/Separator",{"title":1576,"path":1577,"stem":1578,"children":1579,"page":55},"Content","/laioutr-ui/ui-kit/content","3.laioutr-ui/ui-kit/04.content",[1580,1584,1588],{"title":1581,"path":1582,"stem":1583},"Card","/laioutr-ui/ui-kit/content/card","3.laioutr-ui/ui-kit/04.content/Card",{"title":1585,"path":1586,"stem":1587},"Basic Table","/laioutr-ui/ui-kit/content/basic-table","3.laioutr-ui/ui-kit/04.content/basic-table",{"title":1589,"path":1590,"stem":1591},"Link Tile","/laioutr-ui/ui-kit/content/link-tile","3.laioutr-ui/ui-kit/04.content/link-tile",{"title":1593,"path":1594,"stem":1595,"children":1596,"page":55},"Surfaces","/laioutr-ui/ui-kit/surfaces","3.laioutr-ui/ui-kit/05.surfaces",[1597,1601,1605,1609,1613,1617,1621,1625],{"title":1598,"path":1599,"stem":1600},"Alert Dialog","/laioutr-ui/ui-kit/surfaces/alertdialog","3.laioutr-ui/ui-kit/05.surfaces/AlertDialog",{"title":1602,"path":1603,"stem":1604},"Popover","/laioutr-ui/ui-kit/surfaces/popover","3.laioutr-ui/ui-kit/05.surfaces/Popover",{"title":1606,"path":1607,"stem":1608},"Sheet","/laioutr-ui/ui-kit/surfaces/sheet","3.laioutr-ui/ui-kit/05.surfaces/Sheet",{"title":1610,"path":1611,"stem":1612},"Tabs","/laioutr-ui/ui-kit/surfaces/tabs","3.laioutr-ui/ui-kit/05.surfaces/Tabs",{"title":1614,"path":1615,"stem":1616},"Toast","/laioutr-ui/ui-kit/surfaces/toast","3.laioutr-ui/ui-kit/05.surfaces/Toast",{"title":1618,"path":1619,"stem":1620},"Toaster","/laioutr-ui/ui-kit/surfaces/toaster","3.laioutr-ui/ui-kit/05.surfaces/Toaster",{"title":1622,"path":1623,"stem":1624},"Context Menu","/laioutr-ui/ui-kit/surfaces/context-menu","3.laioutr-ui/ui-kit/05.surfaces/context-menu",{"title":1626,"path":1627,"stem":1628},"Navigation Menu","/laioutr-ui/ui-kit/surfaces/navigation-menu","3.laioutr-ui/ui-kit/05.surfaces/navigation-menu",{"title":1630,"path":1631,"stem":1632,"children":1633,"page":55},"Form","/laioutr-ui/ui-kit/form","3.laioutr-ui/ui-kit/06.form",[1634,1638,1642,1646,1650,1654,1658,1662,1666,1670,1674,1678,1682,1686,1690,1694,1698,1702,1706,1710,1714,1718,1722,1726,1730,1734],{"title":1635,"path":1636,"stem":1637},"Button","/laioutr-ui/ui-kit/form/button","3.laioutr-ui/ui-kit/06.form/Button",{"title":1639,"path":1640,"stem":1641},"Checkbox","/laioutr-ui/ui-kit/form/checkbox","3.laioutr-ui/ui-kit/06.form/Checkbox",{"title":1643,"path":1644,"stem":1645},"Field","/laioutr-ui/ui-kit/form/field","3.laioutr-ui/ui-kit/06.form/Field",{"title":1647,"path":1648,"stem":1649},"Input","/laioutr-ui/ui-kit/form/input","3.laioutr-ui/ui-kit/06.form/Input",{"title":1651,"path":1652,"stem":1653},"Label","/laioutr-ui/ui-kit/form/label","3.laioutr-ui/ui-kit/06.form/Label",{"title":1655,"path":1656,"stem":1657},"Load More","/laioutr-ui/ui-kit/form/loadmore","3.laioutr-ui/ui-kit/06.form/LoadMore",{"title":1659,"path":1660,"stem":1661},"Pagination","/laioutr-ui/ui-kit/form/pagination","3.laioutr-ui/ui-kit/06.form/Pagination",{"title":1663,"path":1664,"stem":1665},"Quantity Picker","/laioutr-ui/ui-kit/form/quantitypicker","3.laioutr-ui/ui-kit/06.form/QuantityPicker",{"title":1667,"path":1668,"stem":1669},"Select","/laioutr-ui/ui-kit/form/select","3.laioutr-ui/ui-kit/06.form/Select",{"title":1671,"path":1672,"stem":1673},"Switch","/laioutr-ui/ui-kit/form/switch","3.laioutr-ui/ui-kit/06.form/Switch",{"title":1675,"path":1676,"stem":1677},"Highlight Toggle","/laioutr-ui/ui-kit/form/highlight-toggle","3.laioutr-ui/ui-kit/06.form/highlight-toggle",{"title":1679,"path":1680,"stem":1681},"Icon Button","/laioutr-ui/ui-kit/form/icon-button","3.laioutr-ui/ui-kit/06.form/icon-button",{"title":1683,"path":1684,"stem":1685},"Input Autocomplete","/laioutr-ui/ui-kit/form/input-autocomplete","3.laioutr-ui/ui-kit/06.form/input-autocomplete",{"title":1687,"path":1688,"stem":1689},"Input Checkbox","/laioutr-ui/ui-kit/form/input-checkbox","3.laioutr-ui/ui-kit/06.form/input-checkbox",{"title":1691,"path":1692,"stem":1693},"Input Combobox","/laioutr-ui/ui-kit/form/input-combobox","3.laioutr-ui/ui-kit/06.form/input-combobox",{"title":1695,"path":1696,"stem":1697},"Input Group","/laioutr-ui/ui-kit/form/input-group","3.laioutr-ui/ui-kit/06.form/input-group",{"title":1699,"path":1700,"stem":1701},"Input Password","/laioutr-ui/ui-kit/form/input-password","3.laioutr-ui/ui-kit/06.form/input-password",{"title":1703,"path":1704,"stem":1705},"Input Pin","/laioutr-ui/ui-kit/form/input-pin","3.laioutr-ui/ui-kit/06.form/input-pin",{"title":1707,"path":1708,"stem":1709},"Input Radio","/laioutr-ui/ui-kit/form/input-radio","3.laioutr-ui/ui-kit/06.form/input-radio",{"title":1711,"path":1712,"stem":1713},"Input Rating","/laioutr-ui/ui-kit/form/input-rating","3.laioutr-ui/ui-kit/06.form/input-rating",{"title":1715,"path":1716,"stem":1717},"Input Search","/laioutr-ui/ui-kit/form/input-search","3.laioutr-ui/ui-kit/06.form/input-search",{"title":1719,"path":1720,"stem":1721},"Input Slider","/laioutr-ui/ui-kit/form/input-slider","3.laioutr-ui/ui-kit/06.form/input-slider",{"title":1723,"path":1724,"stem":1725},"Listbox","/laioutr-ui/ui-kit/form/listbox","3.laioutr-ui/ui-kit/06.form/listbox",{"title":1727,"path":1728,"stem":1729},"Option Tile (Image)","/laioutr-ui/ui-kit/form/option-tile-image","3.laioutr-ui/ui-kit/06.form/option-tile-image",{"title":1731,"path":1732,"stem":1733},"Option Tile (Text)","/laioutr-ui/ui-kit/form/option-tile-text","3.laioutr-ui/ui-kit/06.form/option-tile-text",{"title":1735,"path":1736,"stem":1737},"Variant Selection Card","/laioutr-ui/ui-kit/form/variant-selection-card","3.laioutr-ui/ui-kit/06.form/variant-selection-card",{"title":1739,"path":1740,"stem":1741,"children":1742,"page":55},"Indicators","/laioutr-ui/ui-kit/indicators","3.laioutr-ui/ui-kit/07.indicators",[1743,1747,1751,1755,1759,1763],{"title":1744,"path":1745,"stem":1746},"Badge","/laioutr-ui/ui-kit/indicators/badge","3.laioutr-ui/ui-kit/07.indicators/Badge",{"title":1748,"path":1749,"stem":1750},"Caption Flag","/laioutr-ui/ui-kit/indicators/captionflag","3.laioutr-ui/ui-kit/07.indicators/CaptionFlag",{"title":1752,"path":1753,"stem":1754},"Product Tile Flag","/laioutr-ui/ui-kit/indicators/producttileflag","3.laioutr-ui/ui-kit/07.indicators/ProductTileFlag",{"title":1756,"path":1757,"stem":1758},"Rating Summary","/laioutr-ui/ui-kit/indicators/ratingsummary","3.laioutr-ui/ui-kit/07.indicators/RatingSummary",{"title":1760,"path":1761,"stem":1762},"Stars Rating","/laioutr-ui/ui-kit/indicators/starsrating","3.laioutr-ui/ui-kit/07.indicators/StarsRating",{"title":1764,"path":1765,"stem":1766},"Badge Promotion","/laioutr-ui/ui-kit/indicators/badge-promotion","3.laioutr-ui/ui-kit/07.indicators/badge-promotion",{"title":1768,"path":1769,"stem":1770,"children":1771,"page":55},"Utility Components","/laioutr-ui/ui-kit/utility-components","3.laioutr-ui/ui-kit/08.utility-components",[1772,1776],{"title":1773,"path":1774,"stem":1775},"Highlighted Text","/laioutr-ui/ui-kit/utility-components/highlighted-text","3.laioutr-ui/ui-kit/08.utility-components/highlighted-text",{"title":1777,"path":1778,"stem":1779},"Sizer","/laioutr-ui/ui-kit/utility-components/sizer","3.laioutr-ui/ui-kit/08.utility-components/sizer",{"title":1781,"path":1782,"stem":1783,"children":1784},"Hosting","/hosting","4.hosting/0.index",[1785,1786,1792,1822,1840],{"title":1781,"path":1782,"stem":1783},{"title":1787,"path":1788,"stem":1789,"children":1790},"Laioutr Cloud","/hosting/laioutr-cloud","4.hosting/0.laioutr-cloud/0.index",[1791],{"title":1787,"path":1788,"stem":1789},{"title":1793,"path":1794,"stem":1795,"children":1796},"Hyperscaler","/hosting/hyperscaler","4.hosting/1.hyperscaler/0.index",[1797,1798,1802,1806,1810,1814,1818],{"title":1793,"path":1794,"stem":1795},{"title":1799,"path":1800,"stem":1801},"Akamai Adapter","/hosting/hyperscaler/akamai-adapter","4.hosting/1.hyperscaler/akamai-adapter",{"title":1803,"path":1804,"stem":1805},"AWS Adapter","/hosting/hyperscaler/aws-adapter","4.hosting/1.hyperscaler/aws-adapter",{"title":1807,"path":1808,"stem":1809},"Azure Adapter","/hosting/hyperscaler/azure-adapter","4.hosting/1.hyperscaler/azure-adapter",{"title":1811,"path":1812,"stem":1813},"Google Adapter","/hosting/hyperscaler/google-adapter","4.hosting/1.hyperscaler/google-adapter",{"title":1815,"path":1816,"stem":1817},"Netlify Adapter","/hosting/hyperscaler/netlify-adapter","4.hosting/1.hyperscaler/netlify-adapter",{"title":1819,"path":1820,"stem":1821},"Vercel Adapter","/hosting/hyperscaler/vercel-adapter","4.hosting/1.hyperscaler/vercel-adapter",{"title":1823,"path":1824,"stem":1825,"children":1826},"Native Hosting","/hosting/native-hosting-providers","4.hosting/2.native-hosting-providers/0.index",[1827,1828,1832,1836],{"title":1823,"path":1824,"stem":1825},{"title":1829,"path":1830,"stem":1831},"maxcluster","/hosting/native-hosting-providers/maxcluster","4.hosting/2.native-hosting-providers/maxcluster",{"title":1833,"path":1834,"stem":1835},"profihost","/hosting/native-hosting-providers/profihost","4.hosting/2.native-hosting-providers/profihost",{"title":1837,"path":1838,"stem":1839},"ScaleCommerce","/hosting/native-hosting-providers/scale-commerce","4.hosting/2.native-hosting-providers/scale-commerce",{"title":1841,"path":1842,"stem":1843,"children":1844},"Bring Your Own Server (BYOS)","/hosting/bring-your-own-server-byos","4.hosting/3.bring-your-own-server-byos/0.index",[1845,1846,1850,1854,1858,1862,1866],{"title":1841,"path":1842,"stem":1843},{"title":1847,"path":1848,"stem":1849},"BYOS Agent","/hosting/bring-your-own-server-byos/byos-agent","4.hosting/3.bring-your-own-server-byos/byos-agent",{"title":1851,"path":1852,"stem":1853},"Changelog","/hosting/bring-your-own-server-byos/changelog","4.hosting/3.bring-your-own-server-byos/changelog",{"title":1855,"path":1856,"stem":1857},"DevOps Components","/hosting/bring-your-own-server-byos/devops","4.hosting/3.bring-your-own-server-byos/devops",{"title":1859,"path":1860,"stem":1861},"Infrastructure Requirements","/hosting/bring-your-own-server-byos/infrastructure","4.hosting/3.bring-your-own-server-byos/infrastructure",{"title":1863,"path":1864,"stem":1865},"Software Requirements","/hosting/bring-your-own-server-byos/software","4.hosting/3.bring-your-own-server-byos/software",{"title":1867,"path":1868,"stem":1869},"Webhook Configuration","/hosting/bring-your-own-server-byos/webhook-config","4.hosting/3.bring-your-own-server-byos/webhook-config",{"title":591,"path":1871,"stem":1872,"children":1873},"/checkout","5.Checkout/0.index",[1874],{"title":591,"path":1871,"stem":1872},{"title":603,"path":1876,"stem":1877,"children":1878},"/larry-ai","6.Larry-AI/0.index",[1879],{"title":603,"path":1876,"stem":1877},{"title":895,"path":1881,"stem":1882,"children":1883},"/figma-kit","7.Figma Kit/0.index",[1884,1885,1901],{"title":895,"path":1881,"stem":1882},{"title":121,"path":1886,"stem":1887,"children":1888,"page":55},"/figma-kit/introduction","7.Figma Kit/1.Introduction",[1889,1893,1897],{"title":1890,"path":1891,"stem":1892},"How to Start","/figma-kit/introduction/howtostart","7.Figma Kit/1.Introduction/0.howtostart",{"title":1894,"path":1895,"stem":1896},"Figma Variables","/figma-kit/introduction/figma-variables","7.Figma Kit/1.Introduction/figma-variables",{"title":1898,"path":1899,"stem":1900},"Library Connections","/figma-kit/introduction/library-connections","7.Figma Kit/1.Introduction/library-connections",{"title":1902,"path":1903,"stem":1904,"children":1905,"page":55},"Kits","/figma-kit/kits","7.Figma Kit/Kits",[1906,1909,1912,1915,1919,1922,1926,1930,1933,1936],{"title":910,"path":1907,"stem":1908},"/figma-kit/kits/b2b","7.Figma Kit/Kits/b2b",{"title":916,"path":1910,"stem":1911},"/figma-kit/kits/booking","7.Figma Kit/Kits/booking",{"title":922,"path":1913,"stem":1914},"/figma-kit/kits/cms","7.Figma Kit/Kits/cms",{"title":1916,"path":1917,"stem":1918},"Inpage Navigation","/figma-kit/kits/inpage-navigation","7.Figma Kit/Kits/inpage-navigation",{"title":1139,"path":1920,"stem":1921},"/figma-kit/kits/marketplace","7.Figma Kit/Kits/marketplace",{"title":1923,"path":1924,"stem":1925},"Retail & Multichannel","/figma-kit/kits/multichannel","7.Figma Kit/Kits/multichannel",{"title":1927,"path":1928,"stem":1929},"Navigation","/figma-kit/kits/navigation","7.Figma Kit/Kits/navigation",{"title":1205,"path":1931,"stem":1932},"/figma-kit/kits/saas","7.Figma Kit/Kits/saas",{"title":1223,"path":1934,"stem":1935},"/figma-kit/kits/shop","7.Figma Kit/Kits/shop",{"title":1357,"path":1937,"stem":1938},"/figma-kit/kits/ui-kit","7.Figma Kit/Kits/ui-kit",{"title":585,"path":1940,"stem":1941,"children":1942},"/cockpit","8.Cockpit/0.index",[1943,1944,1974,1991,2008],{"title":585,"path":1940,"stem":1941},{"title":154,"path":1945,"stem":1946,"children":1947,"page":55},"/cockpit/features","8.Cockpit/1.Features",[1948,1951,1955,1959,1963,1966,1970],{"title":684,"path":1949,"stem":1950},"/cockpit/features/apps","8.Cockpit/1.Features/apps",{"title":1952,"path":1953,"stem":1954},"Content (Collections)","/cockpit/features/content-collections","8.Cockpit/1.Features/content-collections",{"title":1956,"path":1957,"stem":1958},"Deployments","/cockpit/features/deployments","8.Cockpit/1.Features/deployments",{"title":1960,"path":1961,"stem":1962},"Markets","/cockpit/features/markets","8.Cockpit/1.Features/markets",{"title":200,"path":1964,"stem":1965},"/cockpit/features/redirects","8.Cockpit/1.Features/redirects",{"title":1967,"path":1968,"stem":1969},"Studio","/cockpit/features/studio","8.Cockpit/1.Features/studio",{"title":1971,"path":1972,"stem":1973},"Translations","/cockpit/features/translations","8.Cockpit/1.Features/translations",{"title":1975,"path":1976,"stem":1977,"children":1978,"page":55},"Project Settings","/cockpit/project-settings","8.Cockpit/2.Project-Settings",[1979,1983,1987],{"title":1980,"path":1981,"stem":1982},"Delete a project","/cockpit/project-settings/delete-project","8.Cockpit/2.Project-Settings/delete-project",{"title":1984,"path":1985,"stem":1986},"NPM","/cockpit/project-settings/npm","8.Cockpit/2.Project-Settings/npm",{"title":1988,"path":1989,"stem":1990},"Project secret key","/cockpit/project-settings/project-secret-key","8.Cockpit/2.Project-Settings/project-secret-key",{"title":1992,"path":1993,"stem":1994,"children":1995,"page":55},"Account Settings","/cockpit/account-settings","8.Cockpit/3.Account-Settings",[1996,2000,2004],{"title":1997,"path":1998,"stem":1999},"Notifications","/cockpit/account-settings/notifications","8.Cockpit/3.Account-Settings/notifications",{"title":2001,"path":2002,"stem":2003},"Preferences","/cockpit/account-settings/preferences","8.Cockpit/3.Account-Settings/preferences",{"title":2005,"path":2006,"stem":2007},"Security","/cockpit/account-settings/security","8.Cockpit/3.Account-Settings/security",{"title":2009,"path":2010,"stem":2011,"children":2012,"page":55},"Organisation Settings","/cockpit/organisation-settings","8.Cockpit/4.Organisation-Settings",[2013,2017,2021,2025,2029,2033],{"title":2014,"path":2015,"stem":2016},"API keys","/cockpit/organisation-settings/api-keys","8.Cockpit/4.Organisation-Settings/api-keys",{"title":2018,"path":2019,"stem":2020},"Billing","/cockpit/organisation-settings/billing","8.Cockpit/4.Organisation-Settings/billing",{"title":2022,"path":2023,"stem":2024},"General settings","/cockpit/organisation-settings/general-settings","8.Cockpit/4.Organisation-Settings/general-settings",{"title":2026,"path":2027,"stem":2028},"Members","/cockpit/organisation-settings/members","8.Cockpit/4.Organisation-Settings/members",{"title":2030,"path":2031,"stem":2032},"Projects","/cockpit/organisation-settings/projects","8.Cockpit/4.Organisation-Settings/projects",{"title":2034,"path":2035,"stem":2036},"Roles","/cockpit/organisation-settings/roles","8.Cockpit/4.Organisation-Settings/roles",{"title":2038,"path":2039,"stem":2040,"children":2041},"Data API","/data-api","9.Data-API/0.index",[2042,2043,2063,2073],{"title":2038,"path":2039,"stem":2040},{"title":2044,"path":2045,"stem":2046,"children":2047,"page":55},"Api Info","/data-api/api-info","9.Data-API/1.API-Info",[2048,2052,2056,2059],{"title":2049,"path":2050,"stem":2051},"API Basics","/data-api/api-info/api-basics","9.Data-API/1.API-Info/1.api-basics",{"title":2053,"path":2054,"stem":2055},"Authentication","/data-api/api-info/authentication","9.Data-API/1.API-Info/2.authentication",{"title":491,"path":2057,"stem":2058},"/data-api/api-info/errors","9.Data-API/1.API-Info/3.errors",{"title":2060,"path":2061,"stem":2062},"HTTP details","/data-api/api-info/http-details","9.Data-API/1.API-Info/4.http-details",{"title":2064,"path":2065,"stem":2066,"children":2067},"Management API","/data-api/management-api","9.Data-API/2.Management-API/0.index",[2068,2069],{"title":2064,"path":2065,"stem":2066},{"title":2070,"path":2071,"stem":2072},"Assets","/data-api/management-api/assets","9.Data-API/2.Management-API/1.assets",{"title":2074,"path":2075,"stem":2076,"children":2077},"Delivery API","/data-api/delivery-api","9.Data-API/3.Delivery-API/0.index",[2078],{"title":2074,"path":2075,"stem":2076},{"id":2080,"title":164,"aliases":2081,"body":2082,"changelogKeys":2081,"description":3555,"extension":3556,"links":2081,"meta":3557,"navigation":2332,"path":165,"playground":2081,"seo":3558,"sitemap":3559,"stem":166,"__hash__":3562},"docs/1.Frontend/2.Features/content-preview.md",null,{"type":2083,"value":2084,"toc":3535},"minimark",[2085,2091,2100,2110,2117,2122,2130,2205,2217,2224,2228,2234,2483,2487,2579,2583,2638,2668,2672,2682,2841,2844,2871,2881,2885,2888,2910,2918,3055,3067,3071,3077,3242,3250,3253,3256,3316,3327,3351,3355,3373,3437,3455,3458,3462,3495,3499,3531],[2086,2087],"since-version",{"changelog":2088,"packages":2089,"version":2090},"frontend","@laioutr-core/frontend-core, @laioutr-core/orchestr","0.37.0",[2092,2093,2094,2095,2099],"p",{},"An editor drafts a campaign page in the CMS and wants to see it on the real storefront — real layout, real products, real prices — before anyone else can. Content preview does exactly that: append ",[2096,2097,2098],"code",{},"?preview_token=\u003Ctoken>"," to any storefront URL and the page is server-rendered against unpublished content instead of published content.",[2101,2102,2107],"pre",{"className":2103,"code":2105,"language":2106},[2104],"language-text","https://shop.example.com/campaigns/summer?preview_token=pvtk_3Qm…\n","text",[2096,2108,2105],{"__ignoreMap":2109},"",[2092,2111,2112,2113,2116],{},"Everything else stays the same. Same deployment, same routes, same sections. The only thing that changes is what your connectors return, because they now see ",[2096,2114,2115],{},"clientEnv.isPreview === true",".",[2118,2119,2121],"h2",{"id":2120},"how-the-gate-works","How the gate works",[2092,2123,2124,2125,2129],{},"The token is a ",[2126,2127,2128],"strong",{},"project-level secret",", not a per-user credential. It travels like this:",[2131,2132,2133,2138,2154,2158,2173,2177,2183,2190],"steps",{},[2134,2135,2137],"h3",{"id":2136},"cockpit-stores-it","Cockpit stores it",[2092,2139,2140,2141,2144,2145,2148,2149,2153],{},"Every project has a ",[2126,2142,2143],{},"Content Preview Token",", shown under ",[2126,2146,2147],{},"Project → Settings",". It is separate from the ",[2150,2151,2152],"a",{"href":1989},"project secret key"," and separately rotatable, because it gets pasted into CMS preview-URL templates. It is also what Studio's \"Show preview content\" toggle sends.",[2134,2155,2157],{"id":2156},"the-frontend-receives-it-at-deploy-time","The frontend receives it at deploy time",[2092,2159,2160,2161,2164,2165,2168,2169,2172],{},"The token is written into ",[2096,2162,2163],{},"laioutrrc.json"," as ",[2096,2166,2167],{},"laioutr.previewToken"," and read into ",[2126,2170,2171],{},"private"," runtime config. It never ships in the browser bundle.",[2134,2174,2176],{"id":2175},"the-server-verifies-every-presented-token","The server verifies every presented token",[2092,2178,2179,2182],{},[2096,2180,2181],{},"verifyPreviewToken()"," compares the presented token against the configured one with a timing-safe compare. No token configured means preview is never granted.",[2134,2184,2186,2187],{"id":2185},"the-verdict-becomes-clientenvispreview","The verdict becomes ",[2096,2188,2189],{},"clientEnv.isPreview",[2092,2191,2192,2193,2196,2197,2200,2201,2204],{},"Orchestr's ",[2096,2194,2195],{},"resolveClientEnv()"," sets ",[2096,2198,2199],{},"isPreview"," only when the client asked for preview ",[2126,2202,2203],{},"and"," the server verified the token. The token itself is stripped and never reaches a handler.",[2206,2207,2208,2209,2212,2213,2216],"caution",{},"Rotating the token in Cockpit has ",[2126,2210,2211],{},"no effect until the project redeploys"," — the frontend reads it from ",[2096,2214,2215],{},"laioutrrc"," at deploy time. Until then the storefront keeps accepting the old token, and every CMS preview-URL template that embeds it must be updated with the new one. Rotate, then publish.",[2092,2218,2219,2220,2223],{},"A wrong token is not an error. The page renders published content, exactly as it would for a shopper, and nothing is thrown. The only signal is ",[2096,2221,2222],{},"status === 'rejected'"," in the composable below.",[2118,2225,2227],{"id":2226},"reading-preview-state-in-your-app","Reading preview state in your app",[2092,2229,2230,2233],{},[2096,2231,2232],{},"useContentPreview()"," is auto-imported and safe to call from any component or composable.",[2101,2235,2240],{"className":2236,"code":2237,"filename":2238,"language":2239,"meta":2109,"style":2109},"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cscript setup lang=\"ts\">\nconst { enabled, status, state } = useContentPreview();\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cdiv v-if=\"enabled\" class=\"preview-badge\">\n    Preview mode\n    \u003Cbutton @click=\"enabled = false\">Exit\u003C/button>\n  \u003C/div>\n  \u003Cdiv v-else-if=\"status === 'rejected'\" class=\"preview-badge preview-badge--error\">\n    Invalid preview token — showing published content.\n  \u003C/div>\n\u003C/template>\n","app/components/PreviewBadge.vue","vue",[2096,2241,2242,2277,2317,2327,2334,2344,2379,2385,2418,2428,2459,2465,2474],{"__ignoreMap":2109},[2243,2244,2247,2251,2255,2259,2262,2265,2268,2272,2274],"span",{"class":2245,"line":2246},"line",1,[2243,2248,2250],{"class":2249},"sMK4o","\u003C",[2243,2252,2254],{"class":2253},"swJcz","script",[2243,2256,2258],{"class":2257},"spNyl"," setup",[2243,2260,2261],{"class":2257}," lang",[2243,2263,2264],{"class":2249},"=",[2243,2266,2267],{"class":2249},"\"",[2243,2269,2271],{"class":2270},"sfazB","ts",[2243,2273,2267],{"class":2249},[2243,2275,2276],{"class":2249},">\n",[2243,2278,2280,2283,2286,2290,2293,2296,2298,2301,2304,2307,2311,2314],{"class":2245,"line":2279},2,[2243,2281,2282],{"class":2257},"const",[2243,2284,2285],{"class":2249}," {",[2243,2287,2289],{"class":2288},"sTEyZ"," enabled",[2243,2291,2292],{"class":2249},",",[2243,2294,2295],{"class":2288}," status",[2243,2297,2292],{"class":2249},[2243,2299,2300],{"class":2288}," state ",[2243,2302,2303],{"class":2249},"}",[2243,2305,2306],{"class":2249}," =",[2243,2308,2310],{"class":2309},"s2Zo4"," useContentPreview",[2243,2312,2313],{"class":2288},"()",[2243,2315,2316],{"class":2249},";\n",[2243,2318,2320,2323,2325],{"class":2245,"line":2319},3,[2243,2321,2322],{"class":2249},"\u003C/",[2243,2324,2254],{"class":2253},[2243,2326,2276],{"class":2249},[2243,2328,2330],{"class":2245,"line":2329},4,[2243,2331,2333],{"emptyLinePlaceholder":2332},true,"\n",[2243,2335,2337,2339,2342],{"class":2245,"line":2336},5,[2243,2338,2250],{"class":2249},[2243,2340,2341],{"class":2253},"template",[2243,2343,2276],{"class":2249},[2243,2345,2347,2350,2353,2356,2358,2360,2363,2365,2368,2370,2372,2375,2377],{"class":2245,"line":2346},6,[2243,2348,2349],{"class":2249},"  \u003C",[2243,2351,2352],{"class":2253},"div",[2243,2354,2355],{"class":2257}," v-if",[2243,2357,2264],{"class":2249},[2243,2359,2267],{"class":2249},[2243,2361,2362],{"class":2270},"enabled",[2243,2364,2267],{"class":2249},[2243,2366,2367],{"class":2257}," class",[2243,2369,2264],{"class":2249},[2243,2371,2267],{"class":2249},[2243,2373,2374],{"class":2270},"preview-badge",[2243,2376,2267],{"class":2249},[2243,2378,2276],{"class":2249},[2243,2380,2382],{"class":2245,"line":2381},7,[2243,2383,2384],{"class":2288},"    Preview mode\n",[2243,2386,2388,2391,2394,2397,2399,2401,2404,2406,2409,2412,2414,2416],{"class":2245,"line":2387},8,[2243,2389,2390],{"class":2249},"    \u003C",[2243,2392,2393],{"class":2253},"button",[2243,2395,2396],{"class":2257}," @click",[2243,2398,2264],{"class":2249},[2243,2400,2267],{"class":2249},[2243,2402,2403],{"class":2270},"enabled = false",[2243,2405,2267],{"class":2249},[2243,2407,2408],{"class":2249},">",[2243,2410,2411],{"class":2288},"Exit",[2243,2413,2322],{"class":2249},[2243,2415,2393],{"class":2253},[2243,2417,2276],{"class":2249},[2243,2419,2421,2424,2426],{"class":2245,"line":2420},9,[2243,2422,2423],{"class":2249},"  \u003C/",[2243,2425,2352],{"class":2253},[2243,2427,2276],{"class":2249},[2243,2429,2431,2433,2435,2438,2440,2442,2444,2446,2448,2450,2452,2455,2457],{"class":2245,"line":2430},10,[2243,2432,2349],{"class":2249},[2243,2434,2352],{"class":2253},[2243,2436,2437],{"class":2257}," v-else-if",[2243,2439,2264],{"class":2249},[2243,2441,2267],{"class":2249},[2243,2443,2222],{"class":2270},[2243,2445,2267],{"class":2249},[2243,2447,2367],{"class":2257},[2243,2449,2264],{"class":2249},[2243,2451,2267],{"class":2249},[2243,2453,2454],{"class":2270},"preview-badge preview-badge--error",[2243,2456,2267],{"class":2249},[2243,2458,2276],{"class":2249},[2243,2460,2462],{"class":2245,"line":2461},11,[2243,2463,2464],{"class":2288},"    Invalid preview token — showing published content.\n",[2243,2466,2468,2470,2472],{"class":2245,"line":2467},12,[2243,2469,2423],{"class":2249},[2243,2471,2352],{"class":2253},[2243,2473,2276],{"class":2249},[2243,2475,2477,2479,2481],{"class":2245,"line":2476},13,[2243,2478,2322],{"class":2249},[2243,2480,2341],{"class":2253},[2243,2482,2276],{"class":2249},[2134,2484,2486],{"id":2485},"return-value","Return value",[2488,2489,2490,2506],"table",{},[2491,2492,2493],"thead",{},[2494,2495,2496,2500,2503],"tr",{},[2497,2498,2499],"th",{},"Property",[2497,2501,2502],{},"Type",[2497,2504,2505],{},"Description",[2507,2508,2509,2535,2553],"tbody",{},[2494,2510,2511,2516,2521],{},[2512,2513,2514],"td",{},[2096,2515,2362],{},[2512,2517,2518],{},[2096,2519,2520],{},"WritableComputedRef\u003Cboolean>",[2512,2522,2523,2526,2527,2530,2531,2534],{},[2096,2524,2525],{},"true"," only once the server has verified the token. Safe to use for ",[2096,2528,2529],{},"v-if",". Assign ",[2096,2532,2533],{},"false"," to leave preview.",[2494,2536,2537,2542,2547],{},[2512,2538,2539],{},[2096,2540,2541],{},"status",[2512,2543,2544],{},[2096,2545,2546],{},"ComputedRef\u003CContentPreviewStatus>",[2512,2548,2549,2550,2116],{},"The full state: ",[2096,2551,2552],{},"'off' | 'pending' | 'active' | 'rejected'",[2494,2554,2555,2560,2565],{},[2512,2556,2557],{},[2096,2558,2559],{},"state",[2512,2561,2562],{},[2096,2563,2564],{},"PreviewState",[2512,2566,2567,2568,2571,2572,2575,2576,2116],{},"Nuxt's preview state, a plain object. Read ",[2096,2569,2570],{},"state.token"," — ",[2126,2573,2574],{},"not"," ",[2096,2577,2578],{},"state.value.token",[2134,2580,2582],{"id":2581},"the-four-states","The four states",[2488,2584,2585,2596],{},[2491,2586,2587],{},[2494,2588,2589,2593],{},[2497,2590,2591],{},[2096,2592,2541],{},[2497,2594,2595],{},"Meaning",[2507,2597,2598,2608,2618,2628],{},[2494,2599,2600,2605],{},[2512,2601,2602],{},[2096,2603,2604],{},"'off'",[2512,2606,2607],{},"No preview token was presented. This is the normal shopper path.",[2494,2609,2610,2615],{},[2512,2611,2612],{},[2096,2613,2614],{},"'pending'",[2512,2616,2617],{},"A token was presented and the verdict is still in flight. Only occurs client-side.",[2494,2619,2620,2625],{},[2512,2621,2622],{},[2096,2623,2624],{},"'active'",[2512,2626,2627],{},"The server verified the token. Unpublished content is being served.",[2494,2629,2630,2635],{},[2512,2631,2632],{},[2096,2633,2634],{},"'rejected'",[2512,2636,2637],{},"A token was presented and rejected. Published content is being served.",[2639,2640,2641,2642,2644,2645,2648,2649,2651,2652,2656,2657,2659,2660,2663,2664,2667],"note",{},"Prefer ",[2096,2643,2362],{}," over ",[2096,2646,2647],{},"status !== 'off'",". ",[2096,2650,2362],{}," reports the ",[2653,2654,2655],"em",{},"verified"," result, so a wrong token can never light up your preview chrome. Use ",[2096,2658,2541],{}," only when you want to distinguish ",[2096,2661,2662],{},"pending"," from ",[2096,2665,2666],{},"rejected"," in the UI.",[2118,2669,2671],{"id":2670},"driving-preview-from-a-cookie-or-header","Driving preview from a cookie or header",[2092,2673,2674,2675,2681],{},"The query parameter is the default source, not the only one. Register a handler on ",[2150,2676,2678],{"href":2677},"/frontend/features/hooks#content-preview",[2096,2679,2680],{},"frontend-core:content-preview:resolve-token"," to take it over — useful when your CMS sets a preview cookie, or when you proxy previews behind a gateway that injects a header.",[2101,2683,2687],{"className":2684,"code":2685,"filename":2686,"language":2271,"meta":2109,"style":2109},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineNuxtPlugin({\n  // Must outrank frontend-core's own preview plugin.\n  enforce: 'pre',\n  setup(nuxtApp) {\n    nuxtApp.hook('frontend-core:content-preview:resolve-token', ({ result }) => {\n      result.value = useCookie('cms_preview_token').value ?? undefined;\n    });\n  },\n});\n","app/plugins/preview-from-cookie.ts",[2096,2688,2689,2707,2713,2732,2749,2783,2819,2828,2833],{"__ignoreMap":2109},[2243,2690,2691,2695,2698,2701,2704],{"class":2245,"line":2246},[2243,2692,2694],{"class":2693},"s7zQu","export",[2243,2696,2697],{"class":2693}," default",[2243,2699,2700],{"class":2309}," defineNuxtPlugin",[2243,2702,2703],{"class":2288},"(",[2243,2705,2706],{"class":2249},"{\n",[2243,2708,2709],{"class":2245,"line":2279},[2243,2710,2712],{"class":2711},"sHwdD","  // Must outrank frontend-core's own preview plugin.\n",[2243,2714,2715,2718,2721,2724,2726,2729],{"class":2245,"line":2319},[2243,2716,2717],{"class":2253},"  enforce",[2243,2719,2720],{"class":2249},":",[2243,2722,2723],{"class":2249}," '",[2243,2725,2101],{"class":2270},[2243,2727,2728],{"class":2249},"'",[2243,2730,2731],{"class":2249},",\n",[2243,2733,2734,2737,2739,2743,2746],{"class":2245,"line":2329},[2243,2735,2736],{"class":2253},"  setup",[2243,2738,2703],{"class":2249},[2243,2740,2742],{"class":2741},"sHdIc","nuxtApp",[2243,2744,2745],{"class":2249},")",[2243,2747,2748],{"class":2249}," {\n",[2243,2750,2751,2754,2756,2759,2761,2763,2765,2767,2769,2772,2775,2778,2781],{"class":2245,"line":2336},[2243,2752,2753],{"class":2288},"    nuxtApp",[2243,2755,2116],{"class":2249},[2243,2757,2758],{"class":2309},"hook",[2243,2760,2703],{"class":2253},[2243,2762,2728],{"class":2249},[2243,2764,2680],{"class":2270},[2243,2766,2728],{"class":2249},[2243,2768,2292],{"class":2249},[2243,2770,2771],{"class":2249}," ({",[2243,2773,2774],{"class":2741}," result",[2243,2776,2777],{"class":2249}," })",[2243,2779,2780],{"class":2257}," =>",[2243,2782,2748],{"class":2249},[2243,2784,2785,2788,2790,2793,2795,2798,2800,2802,2805,2807,2809,2811,2813,2816],{"class":2245,"line":2346},[2243,2786,2787],{"class":2288},"      result",[2243,2789,2116],{"class":2249},[2243,2791,2792],{"class":2288},"value",[2243,2794,2306],{"class":2249},[2243,2796,2797],{"class":2309}," useCookie",[2243,2799,2703],{"class":2253},[2243,2801,2728],{"class":2249},[2243,2803,2804],{"class":2270},"cms_preview_token",[2243,2806,2728],{"class":2249},[2243,2808,2745],{"class":2253},[2243,2810,2116],{"class":2249},[2243,2812,2792],{"class":2288},[2243,2814,2815],{"class":2249}," ??",[2243,2817,2818],{"class":2249}," undefined;\n",[2243,2820,2821,2824,2826],{"class":2245,"line":2381},[2243,2822,2823],{"class":2249},"    }",[2243,2825,2745],{"class":2253},[2243,2827,2316],{"class":2249},[2243,2829,2830],{"class":2245,"line":2387},[2243,2831,2832],{"class":2249},"  },\n",[2243,2834,2835,2837,2839],{"class":2245,"line":2420},[2243,2836,2303],{"class":2249},[2243,2838,2745],{"class":2288},[2243,2840,2316],{"class":2249},[2092,2842,2843],{},"Two constraints, both enforced by how the hook is called:",[2845,2846,2847,2857],"ul",{},[2848,2849,2850,2856],"li",{},[2126,2851,2852,2853,2116],{},"The plugin must use ",[2096,2854,2855],{},"enforce: 'pre'"," frontend-core evaluates the token source during its own plugin setup; a handler registered later is never consulted.",[2848,2858,2859,2862,2863,2866,2867,2870],{},[2126,2860,2861],{},"Handlers must be synchronous."," You may read cookies or ",[2096,2864,2865],{},"useRequestHeaders()",", but you must not ",[2096,2868,2869],{},"await"," — a returned promise is ignored.",[2092,2872,2873,2874,2877,2878,2116],{},"The first handler to set ",[2096,2875,2876],{},"result.value"," wins. Leave it unset to fall back to ",[2096,2879,2880],{},"?preview_token=",[2118,2882,2884],{"id":2883},"reacting-to-a-preview-change","Reacting to a preview change",[2092,2886,2887],{},"Entering or leaving preview invalidates data that was fetched under the old assumption. frontend-core already handles its own two caches:",[2845,2889,2890,2904],{},[2848,2891,2892,2895,2896,2899,2900,2903],{},[2096,2893,2894],{},"refreshNuxtData()"," — every ",[2096,2897,2898],{},"useAsyncData"," / ",[2096,2901,2902],{},"useFetch"," in your app re-runs.",[2848,2905,2906,2909],{},[2096,2907,2908],{},"invalidateOrchestrQueries()"," — every stored orchestr query result is dropped.",[2092,2911,2912,2913,2720],{},"If you keep your own cache — a Pinia store hydrated once, a memoized CMS client — invalidate it from ",[2150,2914,2915],{"href":2677},[2096,2916,2917],{},"frontend-core:content-preview:changed",[2101,2919,2922],{"className":2684,"code":2920,"filename":2921,"language":2271,"meta":2109,"style":2109},"export default defineNuxtPlugin((nuxtApp) => {\n  nuxtApp.hook('frontend-core:content-preview:changed', ({ enabled }) => {\n    useMyCmsStore().reset();\n    console.debug(`[preview] now ${enabled ? 'on' : 'off'}`);\n  });\n});\n","app/plugins/preview-invalidation.ts",[2096,2923,2924,2944,2973,2989,3038,3047],{"__ignoreMap":2109},[2243,2925,2926,2928,2930,2932,2934,2936,2938,2940,2942],{"class":2245,"line":2246},[2243,2927,2694],{"class":2693},[2243,2929,2697],{"class":2693},[2243,2931,2700],{"class":2309},[2243,2933,2703],{"class":2288},[2243,2935,2703],{"class":2249},[2243,2937,2742],{"class":2741},[2243,2939,2745],{"class":2249},[2243,2941,2780],{"class":2257},[2243,2943,2748],{"class":2249},[2243,2945,2946,2949,2951,2953,2955,2957,2959,2961,2963,2965,2967,2969,2971],{"class":2245,"line":2279},[2243,2947,2948],{"class":2288},"  nuxtApp",[2243,2950,2116],{"class":2249},[2243,2952,2758],{"class":2309},[2243,2954,2703],{"class":2253},[2243,2956,2728],{"class":2249},[2243,2958,2917],{"class":2270},[2243,2960,2728],{"class":2249},[2243,2962,2292],{"class":2249},[2243,2964,2771],{"class":2249},[2243,2966,2289],{"class":2741},[2243,2968,2777],{"class":2249},[2243,2970,2780],{"class":2257},[2243,2972,2748],{"class":2249},[2243,2974,2975,2978,2980,2982,2985,2987],{"class":2245,"line":2319},[2243,2976,2977],{"class":2309},"    useMyCmsStore",[2243,2979,2313],{"class":2253},[2243,2981,2116],{"class":2249},[2243,2983,2984],{"class":2309},"reset",[2243,2986,2313],{"class":2253},[2243,2988,2316],{"class":2249},[2243,2990,2991,2994,2996,2999,3001,3004,3007,3010,3013,3016,3018,3021,3023,3026,3028,3031,3034,3036],{"class":2245,"line":2329},[2243,2992,2993],{"class":2288},"    console",[2243,2995,2116],{"class":2249},[2243,2997,2998],{"class":2309},"debug",[2243,3000,2703],{"class":2253},[2243,3002,3003],{"class":2249},"`",[2243,3005,3006],{"class":2270},"[preview] now ",[2243,3008,3009],{"class":2249},"${",[2243,3011,3012],{"class":2288},"enabled ",[2243,3014,3015],{"class":2249},"?",[2243,3017,2723],{"class":2249},[2243,3019,3020],{"class":2270},"on",[2243,3022,2728],{"class":2249},[2243,3024,3025],{"class":2249}," :",[2243,3027,2723],{"class":2249},[2243,3029,3030],{"class":2270},"off",[2243,3032,3033],{"class":2249},"'}`",[2243,3035,2745],{"class":2253},[2243,3037,2316],{"class":2249},[2243,3039,3040,3043,3045],{"class":2245,"line":2336},[2243,3041,3042],{"class":2249},"  }",[2243,3044,2745],{"class":2253},[2243,3046,2316],{"class":2249},[2243,3048,3049,3051,3053],{"class":2245,"line":2346},[2243,3050,2303],{"class":2249},[2243,3052,2745],{"class":2288},[2243,3054,2316],{"class":2249},[2092,3056,3057,3058,3060,3061,3063,3064,3066],{},"The hook fires after ",[2096,3059,2362],{}," already holds the new value, on the enable transition, the disable transition, ",[2126,3062,2203],{}," on a token swap — a change from one token to another flips neither ",[2096,3065,2362],{}," nor Nuxt's own lifecycle callbacks, but still needs the same invalidation.",[2118,3068,3070],{"id":3069},"serving-unpublished-content-from-a-handler","Serving unpublished content from a handler",[2092,3072,3073,3074,3076],{},"Preview is only useful if your connectors act on it. Read ",[2096,3075,2189],{}," in any query handler, link handler, component resolver, or action handler:",[2101,3078,3081],{"className":2684,"code":3079,"filename":3080,"language":2271,"meta":2109,"style":2109},"export default defineMyCmsQuery(PageByPathQuery, async ({ context, input, clientEnv }) => {\n  const { id } = await context.cmsClient.page({\n    path: input.path,\n    // Most headless CMSs expose drafts through a separate stage or endpoint.\n    stage: clientEnv.isPreview ? 'DRAFT' : 'PUBLISHED',\n  });\n\n  return { id };\n});\n","server/orchestr/cms/pages.ts",[2096,3082,3083,3121,3155,3171,3176,3210,3218,3222,3234],{"__ignoreMap":2109},[2243,3084,3085,3087,3089,3092,3095,3097,3100,3102,3105,3107,3110,3112,3115,3117,3119],{"class":2245,"line":2246},[2243,3086,2694],{"class":2693},[2243,3088,2697],{"class":2693},[2243,3090,3091],{"class":2309}," defineMyCmsQuery",[2243,3093,3094],{"class":2288},"(PageByPathQuery",[2243,3096,2292],{"class":2249},[2243,3098,3099],{"class":2257}," async",[2243,3101,2771],{"class":2249},[2243,3103,3104],{"class":2741}," context",[2243,3106,2292],{"class":2249},[2243,3108,3109],{"class":2741}," input",[2243,3111,2292],{"class":2249},[2243,3113,3114],{"class":2741}," clientEnv",[2243,3116,2777],{"class":2249},[2243,3118,2780],{"class":2257},[2243,3120,2748],{"class":2249},[2243,3122,3123,3126,3128,3131,3134,3136,3139,3141,3143,3146,3148,3151,3153],{"class":2245,"line":2279},[2243,3124,3125],{"class":2257},"  const",[2243,3127,2285],{"class":2249},[2243,3129,3130],{"class":2288}," id",[2243,3132,3133],{"class":2249}," }",[2243,3135,2306],{"class":2249},[2243,3137,3138],{"class":2693}," await",[2243,3140,3104],{"class":2288},[2243,3142,2116],{"class":2249},[2243,3144,3145],{"class":2288},"cmsClient",[2243,3147,2116],{"class":2249},[2243,3149,3150],{"class":2309},"page",[2243,3152,2703],{"class":2253},[2243,3154,2706],{"class":2249},[2243,3156,3157,3160,3162,3164,3166,3169],{"class":2245,"line":2319},[2243,3158,3159],{"class":2253},"    path",[2243,3161,2720],{"class":2249},[2243,3163,3109],{"class":2288},[2243,3165,2116],{"class":2249},[2243,3167,3168],{"class":2288},"path",[2243,3170,2731],{"class":2249},[2243,3172,3173],{"class":2245,"line":2329},[2243,3174,3175],{"class":2711},"    // Most headless CMSs expose drafts through a separate stage or endpoint.\n",[2243,3177,3178,3181,3183,3185,3187,3189,3192,3194,3197,3199,3201,3203,3206,3208],{"class":2245,"line":2336},[2243,3179,3180],{"class":2253},"    stage",[2243,3182,2720],{"class":2249},[2243,3184,3114],{"class":2288},[2243,3186,2116],{"class":2249},[2243,3188,2199],{"class":2288},[2243,3190,3191],{"class":2249}," ?",[2243,3193,2723],{"class":2249},[2243,3195,3196],{"class":2270},"DRAFT",[2243,3198,2728],{"class":2249},[2243,3200,3025],{"class":2249},[2243,3202,2723],{"class":2249},[2243,3204,3205],{"class":2270},"PUBLISHED",[2243,3207,2728],{"class":2249},[2243,3209,2731],{"class":2249},[2243,3211,3212,3214,3216],{"class":2245,"line":2346},[2243,3213,3042],{"class":2249},[2243,3215,2745],{"class":2253},[2243,3217,2316],{"class":2249},[2243,3219,3220],{"class":2245,"line":2381},[2243,3221,2333],{"emptyLinePlaceholder":2332},[2243,3223,3224,3227,3229,3231],{"class":2245,"line":2387},[2243,3225,3226],{"class":2693},"  return",[2243,3228,2285],{"class":2249},[2243,3230,3130],{"class":2288},[2243,3232,3233],{"class":2249}," };\n",[2243,3235,3236,3238,3240],{"class":2245,"line":2420},[2243,3237,2303],{"class":2249},[2243,3239,2745],{"class":2288},[2243,3241,2316],{"class":2249},[2092,3243,3244,3246,3247,3249],{},[2096,3245,2199],{}," is a server-verified fact by the time your handler sees it — see ",[2150,3248,298],{"href":299}," for the full trust boundary.",[2118,3251,282],{"id":3252},"caching",[2092,3254,3255],{},"Preview content is volatile and per-editor. It is kept out of every cache, deliberately:",[2488,3257,3258,3268],{},[2491,3259,3260],{},[2494,3261,3262,3265],{},[2497,3263,3264],{},"Layer",[2497,3266,3267],{},"Behaviour in preview",[2507,3269,3270,3282,3290,3305],{},[2494,3271,3272,3275],{},[2512,3273,3274],{},"Orchestr query and link caches",[2512,3276,3277,3278,3281],{},"Bypassed entirely — treated as ",[2096,3279,3280],{},"strategy: 'live'",". Nothing is read or written.",[2494,3283,3284,3287],{},[2512,3285,3286],{},"Orchestr component cache",[2512,3288,3289],{},"Bypassed entirely.",[2494,3291,3292,3295],{},[2512,3293,3294],{},"Orchestr cache keys",[2512,3296,3297,3298,2899,3301,3304],{},"Carry a ",[2096,3299,3300],{},"preview",[2096,3302,3303],{},"published"," segment, so the two can never collide.",[2494,3306,3307,3310],{},[2512,3308,3309],{},"The HTTP response",[2512,3311,3312,3313,2116],{},"Sent as ",[2096,3314,3315],{},"Cache-Control: private, no-store",[2092,3317,3318,3319,3322,3323,3326],{},"The ",[2096,3320,3321],{},"private, no-store"," header is set for ",[2126,3324,3325],{},"any"," presented token, granted or rejected. A rejected render still embeds the token in the hydration payload, and a CDN that ignores query strings in its cache key could otherwise hand that response to a shopper.",[2206,3328,3329,3331,3332,3335,3336,3338,3339,3342,3343,3346,3347,3350],{},[2096,3330,3321],{}," keeps the response out of ",[2653,3333,3334],{},"shared"," caches — a CDN, a reverse proxy. It does ",[2126,3337,2574],{}," opt out of Nitro's own route rules. If a route is configured with ",[2096,3340,3341],{},"swr"," or ",[2096,3344,3345],{},"isr"," in ",[2096,3348,3349],{},"routeRules",", add an explicit opt-out for it, or preview responses will be stored by Nitro itself.",[2118,3352,3354],{"id":3353},"the-verify-endpoint","The verify endpoint",[2092,3356,3357,3360,3361,3364,3365,3367,3368,3342,3371,2116],{},[2096,3358,3359],{},"POST /api/frontend/preview-verify"," answers ",[2096,3362,3363],{},"{ granted: boolean }"," for a presented token. The client uses it to resolve ",[2096,3366,2662],{}," into ",[2096,3369,3370],{},"active",[2096,3372,2666],{},[2101,3374,3378],{"className":3375,"code":3376,"language":3377,"meta":2109,"style":2109},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","// POST /api/frontend/preview-verify\n{ \"token\": \"pvtk_3Qm…\" }\n\n// → 200\n{ \"granted\": true }\n","json",[2096,3379,3380,3385,3410,3414,3419],{"__ignoreMap":2109},[2243,3381,3382],{"class":2245,"line":2246},[2243,3383,3384],{"class":2711},"// POST /api/frontend/preview-verify\n",[2243,3386,3387,3390,3393,3396,3398,3400,3402,3405,3407],{"class":2245,"line":2279},[2243,3388,3389],{"class":2249},"{",[2243,3391,3392],{"class":2249}," \"",[2243,3394,3395],{"class":2257},"token",[2243,3397,2267],{"class":2249},[2243,3399,2720],{"class":2249},[2243,3401,3392],{"class":2249},[2243,3403,3404],{"class":2270},"pvtk_3Qm…",[2243,3406,2267],{"class":2249},[2243,3408,3409],{"class":2249}," }\n",[2243,3411,3412],{"class":2245,"line":2319},[2243,3413,2333],{"emptyLinePlaceholder":2332},[2243,3415,3416],{"class":2245,"line":2329},[2243,3417,3418],{"class":2711},"// → 200\n",[2243,3420,3421,3423,3425,3428,3430,3432,3435],{"class":2245,"line":2336},[2243,3422,3389],{"class":2249},[2243,3424,3392],{"class":2249},[2243,3426,3427],{"class":2257},"granted",[2243,3429,2267],{"class":2249},[2243,3431,2720],{"class":2249},[2243,3433,3434],{"class":2249}," true",[2243,3436,3409],{"class":2249},[2092,3438,3439,3440,3443,3444,3447,3448,3450,3451,3454],{},"It is unauthenticated on purpose: the browser calling it carries no project secret, and appending ",[2096,3441,3442],{},"?preview_token=X"," to any page is the same oracle. It is a ",[2126,3445,3446],{},"UI hint only"," — authorization for real data is the gate that runs inside ",[2096,3449,2195],{}," on every orchestr request regardless, so a client that asserts ",[2096,3452,3453],{},"isPreview: true"," without ever calling this endpoint still receives published content. Both paths share one implementation and cannot drift apart.",[2092,3456,3457],{},"Brute-force resistance comes from token entropy. The response never contains the expected token, its length, or a reason.",[2118,3459,3461],{"id":3460},"security-notes","Security notes",[2845,3463,3464,3470,3479,3485],{},[2848,3465,3466,3469],{},[2126,3467,3468],{},"The token is a project-wide secret."," Anyone holding it sees all unpublished content for that project. Share it with editors the way you would share a staging password, and rotate it when someone leaves.",[2848,3471,3472,3475,3476,2116],{},[2126,3473,3474],{},"It is never sent to the browser as configuration."," It lives in private runtime config. It reaches the browser only when ",[2653,3477,3478],{},"someone typed it into a URL",[2848,3480,3481,3484],{},[2126,3482,3483],{},"A wrong token is indistinguishable from no token"," as far as rendered output goes. This is intentional: a preview URL that leaks to a shopper renders the ordinary published page.",[2848,3486,3487,3490,3491,3494],{},[2126,3488,3489],{},"Preview never reaches a shared cache."," See ",[2150,3492,282],{"href":3493},"#caching"," above.",[2118,3496,3498],{"id":3497},"related","Related",[2845,3500,3501,3506,3518,3523],{},[2848,3502,3503,3505],{},[2150,3504,176],{"href":2677}," — the two content-preview hooks in full.",[2848,3507,3508,3510,3511,3513,3514,3517],{},[2150,3509,298],{"href":299}," — how ",[2096,3512,2199],{}," is resolved and what else ",[2096,3515,3516],{},"clientEnv"," carries.",[2848,3519,3520,3522],{},[2150,3521,282],{"href":283}," — orchestr's three cache layers.",[2848,3524,3525,3527,3528,3530],{},[2150,3526,172],{"href":173}," — previewing ",[2653,3529,2096],{}," changes, as opposed to content.",[3532,3533,3534],"style",{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}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 .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 .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 .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":2109,"searchDepth":2279,"depth":2279,"links":3536},[3537,3544,3548,3549,3550,3551,3552,3553,3554],{"id":2120,"depth":2279,"text":2121,"children":3538},[3539,3540,3541,3542],{"id":2136,"depth":2319,"text":2137},{"id":2156,"depth":2319,"text":2157},{"id":2175,"depth":2319,"text":2176},{"id":2185,"depth":2319,"text":3543},"The verdict becomes clientEnv.isPreview",{"id":2226,"depth":2279,"text":2227,"children":3545},[3546,3547],{"id":2485,"depth":2319,"text":2486},{"id":2581,"depth":2319,"text":2582},{"id":2670,"depth":2279,"text":2671},{"id":2883,"depth":2279,"text":2884},{"id":3069,"depth":2279,"text":3070},{"id":3252,"depth":2279,"text":282},{"id":3353,"depth":2279,"text":3354},{"id":3460,"depth":2279,"text":3461},{"id":3497,"depth":2279,"text":3498},"Let editors see unpublished content on the live storefront by opening any URL with a preview token. Server-verified, server-rendered, and never cached.","md",{},{"title":164,"description":3555},{"loc":165,"lastmod":3560,"changefreq":3561,"priority":2246},"2026-07-23","monthly","ktvi6WlUdbtbYRH_pZ9HLtZblEqpF_FMf_LW7rzbHXI",[3564,3566],{"title":160,"path":161,"stem":162,"description":3565,"children":-1},"Laioutr's consent management abstraction gives you a single, provider-agnostic API for cookie and consent state. Use it to gate tracking and marketing scripts, and plug in your own consent provider or one of the ready-to-use apps.",{"title":168,"path":169,"stem":170,"description":3567,"children":-1},"Laioutr uses one currency per market. Developers access it via useCurrency() and format prices with the $money formatter.",1784811385608]