[{"data":1,"prerenderedAt":4276},["ShallowReactive",2],{"navigation_docs":3,"-laioutr-ui-publishers-media-feed":2103,"-laioutr-ui-publishers-media-feed-surround":3918,"changelog-data":3923,"didYouMean--MediaFeed":2105,"didYouMean--MediaFeedItem":2105,"didYouMean--MediaFeedIconButton":2105,"didYouMean--MediaFeedItemInformation":2105,"/laioutr-ui/publishers/media-feed-MediaFeed-2.12.0-0-note":4043,"/laioutr-ui/publishers/media-feed-items-description":4127,"/laioutr-ui/publishers/media-feed-title-description":4136,"/laioutr-ui/publishers/media-feed-autoplay-description":4153,"/laioutr-ui/publishers/media-feed-urlParam-description":4162,"/laioutr-ui/publishers/media-feed-id-description":4178,"/laioutr-ui/publishers/media-feed-active-description":4187,"/laioutr-ui/publishers/media-feed-detail-description":4196,"/laioutr-ui/publishers/media-feed-badges-description":4212,"/laioutr-ui/publishers/media-feed-features-description":4227,"/laioutr-ui/publishers/media-feed-teaser-description":4242,"/laioutr-ui/publishers/media-feed-label-description":4251,"/laioutr-ui/publishers/media-feed-caption-description":4267},[4,136,545,573,689,877,1804,1894,1899,1904,1963,2061],{"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,323],{"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,315,319],{"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,"children":313},"Page Index","/frontend/orchestr/page-index","1.Frontend/4.Orchestr/page-index",[314],{"title":310,"path":311,"stem":312},{"title":316,"path":317,"stem":318},"URL Query Parameters","/frontend/orchestr/url-query-params","1.Frontend/4.Orchestr/url-query-params",{"title":320,"path":321,"stem":322},"Orchestr Wire Format","/frontend/orchestr/wire-format","1.Frontend/4.Orchestr/wire-format",{"title":324,"path":325,"stem":326,"children":327},"API Reference","/frontend/api-reference","1.Frontend/99.api-reference/0.index",[328,329,447,450,484,500,508,519,527,534],{"title":324,"path":325,"stem":326},{"title":330,"path":331,"stem":332,"children":333},"Entities","/frontend/api-reference/entities","1.Frontend/99.api-reference/01.entities/0.index",[334,335,339,343,347,351,355,359,363,367,371,375,379,383,387,391,395,399,403,407,411,415,419,423,427,431,435,439,443],{"title":330,"path":331,"stem":332},{"title":336,"path":337,"stem":338},"Product","/frontend/api-reference/entities/product","1.Frontend/99.api-reference/01.entities/1.product",{"title":340,"path":341,"stem":342},"SuggestedSearch","/frontend/api-reference/entities/suggested-search","1.Frontend/99.api-reference/01.entities/10.suggested-search",{"title":344,"path":345,"stem":346},"SuggestedSearchEntry","/frontend/api-reference/entities/suggested-search-entry","1.Frontend/99.api-reference/01.entities/11.suggested-search-entry",{"title":348,"path":349,"stem":350},"BlogCollection","/frontend/api-reference/entities/blog-collection","1.Frontend/99.api-reference/01.entities/12.blog-collection",{"title":352,"path":353,"stem":354},"Comment","/frontend/api-reference/entities/comment","1.Frontend/99.api-reference/01.entities/13.comment",{"title":356,"path":357,"stem":358},"Location","/frontend/api-reference/entities/location","1.Frontend/99.api-reference/01.entities/14.location",{"title":360,"path":361,"stem":362},"Glossary","/frontend/api-reference/entities/glossary","1.Frontend/99.api-reference/01.entities/15.glossary",{"title":364,"path":365,"stem":366},"Product List","/frontend/api-reference/entities/product-list","1.Frontend/99.api-reference/01.entities/16.product-list",{"title":368,"path":369,"stem":370},"Product List Item","/frontend/api-reference/entities/product-list-item","1.Frontend/99.api-reference/01.entities/17.product-list-item",{"title":372,"path":373,"stem":374},"Organization","/frontend/api-reference/entities/organization","1.Frontend/99.api-reference/01.entities/18.organization",{"title":376,"path":377,"stem":378},"Employee","/frontend/api-reference/entities/employee","1.Frontend/99.api-reference/01.entities/19.employee",{"title":380,"path":381,"stem":382},"ProductVariant","/frontend/api-reference/entities/product-variant","1.Frontend/99.api-reference/01.entities/2.product-variant",{"title":384,"path":385,"stem":386},"Cost Center","/frontend/api-reference/entities/cost-center","1.Frontend/99.api-reference/01.entities/20.cost-center",{"title":388,"path":389,"stem":390},"Budget","/frontend/api-reference/entities/budget","1.Frontend/99.api-reference/01.entities/21.budget",{"title":392,"path":393,"stem":394},"Quote","/frontend/api-reference/entities/quote","1.Frontend/99.api-reference/01.entities/22.quote",{"title":396,"path":397,"stem":398},"Quote Item","/frontend/api-reference/entities/quote-item","1.Frontend/99.api-reference/01.entities/23.quote-item",{"title":400,"path":401,"stem":402},"Approval Flow","/frontend/api-reference/entities/approval-flow","1.Frontend/99.api-reference/01.entities/24.approval-flow",{"title":404,"path":405,"stem":406},"Approval Rule","/frontend/api-reference/entities/approval-rule","1.Frontend/99.api-reference/01.entities/25.approval-rule",{"title":408,"path":409,"stem":410},"Fee","/frontend/api-reference/entities/fee","1.Frontend/99.api-reference/01.entities/26.fee",{"title":412,"path":413,"stem":414},"Stock Location","/frontend/api-reference/entities/stock-location","1.Frontend/99.api-reference/01.entities/27.stock-location",{"title":416,"path":417,"stem":418},"Stock Level","/frontend/api-reference/entities/stock-level","1.Frontend/99.api-reference/01.entities/28.stock-level",{"title":420,"path":421,"stem":422},"Category","/frontend/api-reference/entities/category","1.Frontend/99.api-reference/01.entities/3.category",{"title":424,"path":425,"stem":426},"Cart","/frontend/api-reference/entities/cart","1.Frontend/99.api-reference/01.entities/4.cart",{"title":428,"path":429,"stem":430},"CartItem","/frontend/api-reference/entities/cart-item","1.Frontend/99.api-reference/01.entities/5.cart-item",{"title":432,"path":433,"stem":434},"Review","/frontend/api-reference/entities/review","1.Frontend/99.api-reference/01.entities/6.review",{"title":436,"path":437,"stem":438},"BreadcrumbItem","/frontend/api-reference/entities/breadcrumb-item","1.Frontend/99.api-reference/01.entities/7.breadcrumb-item",{"title":440,"path":441,"stem":442},"MenuItem","/frontend/api-reference/entities/menu-item","1.Frontend/99.api-reference/01.entities/8.menu-item",{"title":444,"path":445,"stem":446},"BlogPost","/frontend/api-reference/entities/blog-post","1.Frontend/99.api-reference/01.entities/9.blog-post",{"title":192,"path":448,"stem":449},"/frontend/api-reference/page-types","1.Frontend/99.api-reference/02.page-types",{"title":451,"path":452,"stem":453,"children":454},"Common Types","/frontend/api-reference/common-types","1.Frontend/99.api-reference/03.common-types/0.index",[455,456,460,464,468,472,476,480],{"title":451,"path":452,"stem":453},{"title":457,"path":458,"stem":459},"Link","/frontend/api-reference/common-types/link","1.Frontend/99.api-reference/03.common-types/1.link",{"title":461,"path":462,"stem":463},"Media","/frontend/api-reference/common-types/media","1.Frontend/99.api-reference/03.common-types/2.media",{"title":465,"path":466,"stem":467},"Money","/frontend/api-reference/common-types/money","1.Frontend/99.api-reference/03.common-types/3.money",{"title":469,"path":470,"stem":471},"UnitPrice","/frontend/api-reference/common-types/unit-price","1.Frontend/99.api-reference/03.common-types/4.unit-price",{"title":473,"path":474,"stem":475},"Measurement","/frontend/api-reference/common-types/measurement","1.Frontend/99.api-reference/03.common-types/5.measurement",{"title":477,"path":478,"stem":479},"Opening Hours","/frontend/api-reference/common-types/opening-hours","1.Frontend/99.api-reference/03.common-types/6.opening-hours",{"title":481,"path":482,"stem":483},"Commerce Value Types","/frontend/api-reference/common-types/commerce-values","1.Frontend/99.api-reference/03.common-types/7.commerce-values",{"title":485,"path":486,"stem":487,"children":488,"page":55},"Ecommerce","/frontend/api-reference/ecommerce","1.Frontend/99.api-reference/10.ecommerce",[489,492,496],{"title":278,"path":490,"stem":491},"/frontend/api-reference/ecommerce/actions","1.Frontend/99.api-reference/10.ecommerce/1.actions",{"title":493,"path":494,"stem":495},"Queries","/frontend/api-reference/ecommerce/queries","1.Frontend/99.api-reference/10.ecommerce/2.queries",{"title":497,"path":498,"stem":499},"Errors","/frontend/api-reference/ecommerce/errors","1.Frontend/99.api-reference/10.ecommerce/3.errors",{"title":501,"path":502,"stem":503,"children":504,"page":55},"Newsletter","/frontend/api-reference/newsletter","1.Frontend/99.api-reference/11.newsletter",[505],{"title":278,"path":506,"stem":507},"/frontend/api-reference/newsletter/actions","1.Frontend/99.api-reference/11.newsletter/1.actions",{"title":509,"path":510,"stem":511,"children":512,"page":55},"Blog","/frontend/api-reference/blog","1.Frontend/99.api-reference/12.blog",[513,516],{"title":493,"path":514,"stem":515},"/frontend/api-reference/blog/queries","1.Frontend/99.api-reference/12.blog/1.queries",{"title":497,"path":517,"stem":518},"/frontend/api-reference/blog/errors","1.Frontend/99.api-reference/12.blog/2.errors",{"title":520,"path":521,"stem":522,"children":523,"page":55},"Suggested Search","/frontend/api-reference/suggested-search","1.Frontend/99.api-reference/13.suggested-search",[524],{"title":493,"path":525,"stem":526},"/frontend/api-reference/suggested-search/queries","1.Frontend/99.api-reference/13.suggested-search/1.queries",{"title":356,"path":528,"stem":529,"children":530,"page":55},"/frontend/api-reference/location","1.Frontend/99.api-reference/15.location",[531],{"title":493,"path":532,"stem":533},"/frontend/api-reference/location/queries","1.Frontend/99.api-reference/15.location/1.queries",{"title":535,"path":536,"stem":537,"children":538,"page":55},"B2b","/frontend/api-reference/b2b","1.Frontend/99.api-reference/16.b2b",[539,542],{"title":278,"path":540,"stem":541},"/frontend/api-reference/b2b/actions","1.Frontend/99.api-reference/16.b2b/1.actions",{"title":497,"path":543,"stem":544},"/frontend/api-reference/b2b/errors","1.Frontend/99.api-reference/16.b2b/2.errors",{"title":546,"path":547,"stem":548,"children":549},"Agent API","/agent-api","10.Agent-API/0.index",[550,551],{"title":546,"path":547,"stem":548},{"title":552,"path":553,"stem":554,"children":555},"Laioutr MCP","/agent-api/laioutr-mcp","10.Agent-API/1.Laioutr-MCP/0.index",[556,557,561,565,569],{"title":552,"path":553,"stem":554},{"title":558,"path":559,"stem":560},"Connecting to Laioutr MCP","/agent-api/laioutr-mcp/connecting-to-laioutr-mcp","10.Agent-API/1.Laioutr-MCP/1.connecting-to-laioutr-mcp",{"title":562,"path":563,"stem":564},"Supported tools","/agent-api/laioutr-mcp/supported-tools","10.Agent-API/1.Laioutr-MCP/2.supported-tools",{"title":566,"path":567,"stem":568},"Security best practices","/agent-api/laioutr-mcp/security-best-practices","10.Agent-API/1.Laioutr-MCP/3.security-best-practices",{"title":570,"path":571,"stem":572},"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":574,"path":575,"stem":576,"children":577},"Offering","/offering","11.Offering/0.index",[578,579,614,627,640,674,683],{"title":574,"path":575,"stem":576},{"title":580,"path":581,"stem":582,"children":583},"Products","/offering/products","11.Offering/1.Products/0.index",[584,585,590,596,602,608],{"title":580,"path":581,"stem":582},{"title":137,"path":586,"stem":587,"children":588},"/offering/products/frontend","11.Offering/1.Products/1.Frontend/0.index",[589],{"title":137,"path":586,"stem":587},{"title":591,"path":592,"stem":593,"children":594},"Cockpit","/offering/products/cockpit","11.Offering/1.Products/2.Cockpit/0.index",[595],{"title":591,"path":592,"stem":593},{"title":597,"path":598,"stem":599,"children":600},"Checkout","/offering/products/checkout","11.Offering/1.Products/3.Checkout/0.index",[601],{"title":597,"path":598,"stem":599},{"title":603,"path":604,"stem":605,"children":606},"Cloud","/offering/products/cloud","11.Offering/1.Products/4.cloud/0.index",[607],{"title":603,"path":604,"stem":605},{"title":609,"path":610,"stem":611,"children":612},"Larry AI","/offering/products/larry-ai","11.Offering/1.Products/5.larry-ai/0.index",[613],{"title":609,"path":610,"stem":611},{"title":615,"path":616,"stem":617,"children":618,"page":55},"Service Level Agreement","/offering/service-level-agreement","11.Offering/2.service-level-agreement",[619,623],{"title":620,"path":621,"stem":622},"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":624,"path":625,"stem":626},"Backups","/offering/service-level-agreement/backups","11.Offering/2.service-level-agreement/backups",{"title":628,"path":629,"stem":630,"children":631,"page":55},"Customer Support","/offering/customer-support","11.Offering/3.customer-support",[632,636],{"title":633,"path":634,"stem":635},"Standard Customer Support","/offering/customer-support/standard-customer-support","11.Offering/3.customer-support/1.standard-customer-support",{"title":637,"path":638,"stem":639},"Customer Support Severity Levels of Laioutr products","/offering/customer-support/maximum-serverity-levels","11.Offering/3.customer-support/maximum-serverity-levels",{"title":641,"path":642,"stem":643,"children":644},"Trust Center","/offering/trust-center","11.Offering/4.trust-center/0.index",[645,646,650,654,658,662,666,670],{"title":641,"path":642,"stem":643},{"title":647,"path":648,"stem":649},"Data Protection (GDPR)","/offering/trust-center/data-protection","11.Offering/4.trust-center/1.data-protection",{"title":651,"path":652,"stem":653},"Subprocessors","/offering/trust-center/subprocessors","11.Offering/4.trust-center/2.subprocessors",{"title":655,"path":656,"stem":657},"Infrastructure & Hosting","/offering/trust-center/infrastructure","11.Offering/4.trust-center/3.infrastructure",{"title":659,"path":660,"stem":661},"Security Measures","/offering/trust-center/security-measures","11.Offering/4.trust-center/4.security-measures",{"title":663,"path":664,"stem":665},"Incident Response","/offering/trust-center/incident-response","11.Offering/4.trust-center/5.incident-response",{"title":667,"path":668,"stem":669},"Compliance & Certifications","/offering/trust-center/compliance","11.Offering/4.trust-center/6.compliance",{"title":671,"path":672,"stem":673},"FAQ","/offering/trust-center/faq","11.Offering/4.trust-center/7.faq",{"title":675,"path":676,"stem":677,"children":678,"page":55},"Policies","/offering/policies","11.Offering/5.policies",[679],{"title":680,"path":681,"stem":682},"Fair usage policy","/offering/policies/fair-usage-policy","11.Offering/5.policies/fair-usage-policy",{"title":684,"path":685,"stem":686,"children":687},"Academy","/offering/academy","11.Offering/6.academy/0.index",[688],{"title":684,"path":685,"stem":686},{"title":690,"path":691,"stem":692,"children":693},"Apps","/apps","2.apps/0.index",[694,695,775,861],{"title":690,"path":691,"stem":692},{"title":696,"path":697,"stem":698,"children":699},"App Development","/apps/app-development","2.apps/app-development/0.index",[700,701,723,727,731,735,739,743,747,751,755,759,763,767,771],{"title":696,"path":697,"stem":698},{"title":702,"path":703,"stem":704,"children":705},"Guides","/apps/app-development/guides","2.apps/app-development/99.guides/0.index",[706,707,711,715,719],{"title":702,"path":703,"stem":704},{"title":708,"path":709,"stem":710},"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":712,"path":713,"stem":714},"Section config standard","/apps/app-development/guides/section-config-standard","2.apps/app-development/99.guides/section-config-standard",{"title":716,"path":717,"stem":718},"Shared field factories","/apps/app-development/guides/shared-field-factories","2.apps/app-development/99.guides/shared-field-factories",{"title":720,"path":721,"stem":722},"How to write CSS","/apps/app-development/guides/writing-css","2.apps/app-development/99.guides/writing-css",{"title":724,"path":725,"stem":726},"App Configuration","/apps/app-development/app-configuration","2.apps/app-development/app-configuration",{"title":728,"path":729,"stem":730},"App Starter","/apps/app-development/app-starter","2.apps/app-development/app-starter",{"title":732,"path":733,"stem":734},"Best Practice","/apps/app-development/best-practice","2.apps/app-development/best-practice",{"title":736,"path":737,"stem":738},"Block Definitions","/apps/app-development/block-definitions","2.apps/app-development/block-definitions",{"title":740,"path":741,"stem":742},"Coding Standards","/apps/app-development/coding-standards","2.apps/app-development/coding-standards",{"title":744,"path":745,"stem":746},"Consent Adapters","/apps/app-development/consent-adapters","2.apps/app-development/consent-adapters",{"title":748,"path":749,"stem":750},"Consuming Query Fields","/apps/app-development/consuming-query-fields","2.apps/app-development/consuming-query-fields",{"title":752,"path":753,"stem":754},"Implementation Overview","/apps/app-development/implementation-overview","2.apps/app-development/implementation-overview",{"title":756,"path":757,"stem":758},"Media Libraries","/apps/app-development/media-libraries","2.apps/app-development/media-libraries",{"title":760,"path":761,"stem":762},"Platform Dependencies","/apps/app-development/platform-dependencies","2.apps/app-development/platform-dependencies",{"title":764,"path":765,"stem":766},"Schema Fields","/apps/app-development/schema-fields","2.apps/app-development/schema-fields",{"title":768,"path":769,"stem":770},"Section Definitions","/apps/app-development/section-definitions","2.apps/app-development/section-definitions",{"title":772,"path":773,"stem":774},"Studio Icons","/apps/app-development/studio-icons","2.apps/app-development/studio-icons",{"title":776,"path":777,"stem":778,"children":779},"App Docs","/apps/app-docs","2.apps/app-docs/0.index",[780,781,785,789,793,797,801,805,809,813,817,821,825,829,833,837,841,845,849,853,857],{"title":776,"path":777,"stem":778},{"title":782,"path":783,"stem":784},"Actindo","/apps/app-docs/actindo","2.apps/app-docs/actindo",{"title":786,"path":787,"stem":788},"Adobe Commerce","/apps/app-docs/adobe-commerce","2.apps/app-docs/adobe-commerce",{"title":790,"path":791,"stem":792},"B2Bsellers","/apps/app-docs/b2bsellers","2.apps/app-docs/b2bsellers",{"title":794,"path":795,"stem":796},"Battery Included","/apps/app-docs/battery-included","2.apps/app-docs/battery-included",{"title":798,"path":799,"stem":800},"CCM19","/apps/app-docs/ccm19","2.apps/app-docs/ccm19",{"title":802,"path":803,"stem":804},"Commercetools","/apps/app-docs/commercetools","2.apps/app-docs/commercetools",{"title":806,"path":807,"stem":808},"Cookiebot","/apps/app-docs/cookiebot","2.apps/app-docs/cookiebot",{"title":810,"path":811,"stem":812},"Emporix","/apps/app-docs/emporix","2.apps/app-docs/emporix",{"title":814,"path":815,"stem":816},"Google Tag Manager (GTM)","/apps/app-docs/gtm","2.apps/app-docs/gtm",{"title":818,"path":819,"stem":820},"Hygraph","/apps/app-docs/hygraph","2.apps/app-docs/hygraph",{"title":822,"path":823,"stem":824},"JTL Platform","/apps/app-docs/jtl-platform","2.apps/app-docs/jtl-platform",{"title":826,"path":827,"stem":828},"Klaviyo","/apps/app-docs/klaviyo","2.apps/app-docs/klaviyo",{"title":830,"path":831,"stem":832},"Nimstrata Google Retail API","/apps/app-docs/nimstrata","2.apps/app-docs/nimstrata",{"title":834,"path":835,"stem":836},"OXID eShop","/apps/app-docs/oxid","2.apps/app-docs/oxid",{"title":838,"path":839,"stem":840},"Pimcore","/apps/app-docs/pimcore","2.apps/app-docs/pimcore",{"title":842,"path":843,"stem":844},"Shopify","/apps/app-docs/shopify","2.apps/app-docs/shopify",{"title":846,"path":847,"stem":848},"Shopware","/apps/app-docs/shopware","2.apps/app-docs/shopware",{"title":850,"path":851,"stem":852},"Sylius","/apps/app-docs/sylius","2.apps/app-docs/sylius",{"title":854,"path":855,"stem":856},"Vercel Analytics","/apps/app-docs/vercel-analytics","2.apps/app-docs/vercel-analytics",{"title":858,"path":859,"stem":860},"Vercel Speed Insights","/apps/app-docs/vercel-speed-insights","2.apps/app-docs/vercel-speed-insights",{"title":862,"path":863,"stem":864,"children":865,"page":55},"Essentials","/apps/essentials","2.apps/essentials",[866,870,874],{"title":867,"path":868,"stem":869},"Legal","/apps/essentials/legal","2.apps/essentials/legal",{"title":871,"path":872,"stem":873},"Mailer","/apps/essentials/mailer","2.apps/essentials/mailer",{"title":220,"path":875,"stem":876},"/apps/essentials/seo","2.apps/essentials/seo",{"title":878,"path":879,"stem":880,"children":881},"Laioutr UI","/laioutr-ui","3.laioutr-ui/0.index",[882,883,915,921,927,1123,1144,1150,1156,1210,1220,1238,1372],{"title":878,"path":879,"stem":880},{"title":5,"path":884,"stem":885,"children":886},"/laioutr-ui/getting-started","3.laioutr-ui/01.getting-started/0.index",[887,888,892,896,900,904,908,912],{"title":5,"path":884,"stem":885},{"title":889,"path":890,"stem":891},"Browser support","/laioutr-ui/getting-started/browser-support","3.laioutr-ui/01.getting-started/1.browser-support",{"title":893,"path":894,"stem":895},"Common Data","/laioutr-ui/getting-started/common-data","3.laioutr-ui/01.getting-started/99.common-data",{"title":897,"path":898,"stem":899},"CSS Layers","/laioutr-ui/getting-started/css-layers","3.laioutr-ui/01.getting-started/css-layers",{"title":901,"path":902,"stem":903},"Figma Kit","/laioutr-ui/getting-started/figma-kit","3.laioutr-ui/01.getting-started/figma-kit",{"title":905,"path":906,"stem":907},"Surface Tone","/laioutr-ui/getting-started/surface-tone","3.laioutr-ui/01.getting-started/surface-tone",{"title":909,"path":910,"stem":911},"Theming","/laioutr-ui/getting-started/theming","3.laioutr-ui/01.getting-started/theming",{"title":216,"path":913,"stem":914},"/laioutr-ui/getting-started/z-ordering","3.laioutr-ui/01.getting-started/z-ordering",{"title":916,"path":917,"stem":918,"children":919},"B2B","/laioutr-ui/b2b","3.laioutr-ui/b2b/0.index",[920],{"title":916,"path":917,"stem":918},{"title":922,"path":923,"stem":924,"children":925},"Booking","/laioutr-ui/booking","3.laioutr-ui/booking/0.index",[926],{"title":922,"path":923,"stem":924},{"title":928,"path":929,"stem":930,"children":931},"CMS","/laioutr-ui/cms","3.laioutr-ui/cms/0.index",[932,933,939,964,976,980,984,988,992,996,1008,1029,1033,1054,1070,1119],{"title":928,"path":929,"stem":930},{"title":934,"path":935,"stem":936,"children":937},"Alphabetical Index","/laioutr-ui/cms/alphabetical-index","3.laioutr-ui/cms/alphabetical-index",[938],{"title":934,"path":935,"stem":936},{"title":940,"path":941,"stem":942,"children":943,"page":55},"Banner","/laioutr-ui/cms/banner","3.laioutr-ui/cms/banner",[944,948,952,956,960],{"title":945,"path":946,"stem":947},"Banner Basic","/laioutr-ui/cms/banner/banner-basic","3.laioutr-ui/cms/banner/banner-basic",{"title":949,"path":950,"stem":951},"Banner Integrated","/laioutr-ui/cms/banner/banner-integrated","3.laioutr-ui/cms/banner/banner-integrated",{"title":953,"path":954,"stem":955},"Banner Showcase","/laioutr-ui/cms/banner/banner-showcase","3.laioutr-ui/cms/banner/banner-showcase",{"title":957,"path":958,"stem":959},"Media + Text","/laioutr-ui/cms/banner/media-text","3.laioutr-ui/cms/banner/media-text",{"title":961,"path":962,"stem":963},"USP Banner","/laioutr-ui/cms/banner/usp-banner","3.laioutr-ui/cms/banner/usp-banner",{"title":509,"path":965,"stem":966,"children":967,"page":55},"/laioutr-ui/cms/blog","3.laioutr-ui/cms/blog",[968,972],{"title":969,"path":970,"stem":971},"Article Detail","/laioutr-ui/cms/blog/article-detail","3.laioutr-ui/cms/blog/article-detail",{"title":973,"path":974,"stem":975},"Blog Post Listing","/laioutr-ui/cms/blog/blog-post-listing","3.laioutr-ui/cms/blog/blog-post-listing",{"title":977,"path":978,"stem":979},"Brand Hero","/laioutr-ui/cms/brand-hero","3.laioutr-ui/cms/brand-hero",{"title":981,"path":982,"stem":983},"Container","/laioutr-ui/cms/container","3.laioutr-ui/cms/container",{"title":985,"path":986,"stem":987},"Content Grid","/laioutr-ui/cms/content-grid","3.laioutr-ui/cms/content-grid",{"title":989,"path":990,"stem":991},"Editorial Grid","/laioutr-ui/cms/editorial-grid","3.laioutr-ui/cms/editorial-grid",{"title":993,"path":994,"stem":995},"Media Gallery","/laioutr-ui/cms/media-gallery","3.laioutr-ui/cms/media-gallery",{"title":501,"path":997,"stem":998,"children":999,"page":55},"/laioutr-ui/cms/newsletter","3.laioutr-ui/cms/newsletter",[1000,1004],{"title":1001,"path":1002,"stem":1003},"Email Input Form","/laioutr-ui/cms/newsletter/email-input-form","3.laioutr-ui/cms/newsletter/email-input-form",{"title":1005,"path":1006,"stem":1007},"Newsletter Registration","/laioutr-ui/cms/newsletter/newsletter-registration","3.laioutr-ui/cms/newsletter/newsletter-registration",{"title":1009,"path":1010,"stem":1011,"children":1012,"page":55},"Popups","/laioutr-ui/cms/popups","3.laioutr-ui/cms/popups",[1013,1017,1021,1025],{"title":1014,"path":1015,"stem":1016},"PopUp","/laioutr-ui/cms/popups/pop-up","3.laioutr-ui/cms/popups/pop-up",{"title":1018,"path":1019,"stem":1020},"PopUp Info","/laioutr-ui/cms/popups/pop-up-info","3.laioutr-ui/cms/popups/pop-up-info",{"title":1022,"path":1023,"stem":1024},"PopUp Newsletter","/laioutr-ui/cms/popups/pop-up-newsletter","3.laioutr-ui/cms/popups/pop-up-newsletter",{"title":1026,"path":1027,"stem":1028},"PopUp Promotion","/laioutr-ui/cms/popups/pop-up-promotion","3.laioutr-ui/cms/popups/pop-up-promotion",{"title":1030,"path":1031,"stem":1032},"Promotion Banner","/laioutr-ui/cms/promotion-banner","3.laioutr-ui/cms/promotion-banner",{"title":1034,"path":1035,"stem":1036,"children":1037,"page":55},"Quotes","/laioutr-ui/cms/quotes","3.laioutr-ui/cms/quotes",[1038,1042,1046,1050],{"title":1039,"path":1040,"stem":1041},"Persona Quote","/laioutr-ui/cms/quotes/persona-quote","3.laioutr-ui/cms/quotes/persona-quote",{"title":1043,"path":1044,"stem":1045},"Persona Quote Slider","/laioutr-ui/cms/quotes/persona-quote-slider","3.laioutr-ui/cms/quotes/persona-quote-slider",{"title":1047,"path":1048,"stem":1049},"Quote Card","/laioutr-ui/cms/quotes/quote-card","3.laioutr-ui/cms/quotes/quote-card",{"title":1051,"path":1052,"stem":1053},"Quote Card Slider","/laioutr-ui/cms/quotes/quote-card-slider","3.laioutr-ui/cms/quotes/quote-card-slider",{"title":1055,"path":1056,"stem":1057,"children":1058,"page":55},"Reviews","/laioutr-ui/cms/reviews","3.laioutr-ui/cms/reviews",[1059,1062,1066],{"title":432,"path":1060,"stem":1061},"/laioutr-ui/cms/reviews/review","3.laioutr-ui/cms/reviews/review",{"title":1063,"path":1064,"stem":1065},"Review Form","/laioutr-ui/cms/reviews/review-form","3.laioutr-ui/cms/reviews/review-form",{"title":1067,"path":1068,"stem":1069},"Social Share","/laioutr-ui/cms/reviews/social-share","3.laioutr-ui/cms/reviews/social-share",{"title":1071,"path":1072,"stem":1073,"children":1074,"page":55},"Slider","/laioutr-ui/cms/slider","3.laioutr-ui/cms/slider",[1075,1079,1083,1087,1091,1095,1099,1103,1107,1111,1115],{"title":1076,"path":1077,"stem":1078},"Content Slider","/laioutr-ui/cms/slider/content-slider","3.laioutr-ui/cms/slider/content-slider",{"title":1080,"path":1081,"stem":1082},"Hero Slider","/laioutr-ui/cms/slider/hero-slider","3.laioutr-ui/cms/slider/hero-slider",{"title":1084,"path":1085,"stem":1086},"Logo Grid","/laioutr-ui/cms/slider/logo-grid","3.laioutr-ui/cms/slider/logo-grid",{"title":1088,"path":1089,"stem":1090},"Logo Slider","/laioutr-ui/cms/slider/logo-slider","3.laioutr-ui/cms/slider/logo-slider",{"title":1092,"path":1093,"stem":1094},"Swiper Arrows","/laioutr-ui/cms/slider/swiper-arrows","3.laioutr-ui/cms/slider/swiper-arrows",{"title":1096,"path":1097,"stem":1098},"Swiper Bullets","/laioutr-ui/cms/slider/swiper-bullets","3.laioutr-ui/cms/slider/swiper-bullets",{"title":1100,"path":1101,"stem":1102},"Swiper Chrome","/laioutr-ui/cms/slider/swiper-chrome","3.laioutr-ui/cms/slider/swiper-chrome",{"title":1104,"path":1105,"stem":1106},"Swiper Nav Bar","/laioutr-ui/cms/slider/swiper-nav-bar","3.laioutr-ui/cms/slider/swiper-nav-bar",{"title":1108,"path":1109,"stem":1110},"Swiper Numbers","/laioutr-ui/cms/slider/swiper-numbers","3.laioutr-ui/cms/slider/swiper-numbers",{"title":1112,"path":1113,"stem":1114},"Swiper Scrollbar","/laioutr-ui/cms/slider/swiper-scrollbar","3.laioutr-ui/cms/slider/swiper-scrollbar",{"title":1116,"path":1117,"stem":1118},"Thumbnails Slider","/laioutr-ui/cms/slider/thumbnails-slider","3.laioutr-ui/cms/slider/thumbnails-slider",{"title":1120,"path":1121,"stem":1122},"Withdrawal Form","/laioutr-ui/cms/withdrawal-form","3.laioutr-ui/cms/withdrawal-form",{"title":356,"path":1124,"stem":1125,"children":1126},"/laioutr-ui/location","3.laioutr-ui/location/0.index",[1127,1128,1132,1136,1140],{"title":356,"path":1124,"stem":1125},{"title":1129,"path":1130,"stem":1131},"Location Card","/laioutr-ui/location/location-card","3.laioutr-ui/location/location-card",{"title":1133,"path":1134,"stem":1135},"Location Detail","/laioutr-ui/location/location-detail","3.laioutr-ui/location/location-detail",{"title":1137,"path":1138,"stem":1139},"Location Finder","/laioutr-ui/location/location-finder","3.laioutr-ui/location/location-finder",{"title":1141,"path":1142,"stem":1143},"Table Opening Hours","/laioutr-ui/location/table-opening-hours","3.laioutr-ui/location/table-opening-hours",{"title":1145,"path":1146,"stem":1147,"children":1148},"Marketplace","/laioutr-ui/marketplace","3.laioutr-ui/marketplace/0.index",[1149],{"title":1145,"path":1146,"stem":1147},{"title":1151,"path":1152,"stem":1153,"children":1154},"Multichannel","/laioutr-ui/multichannel","3.laioutr-ui/multichannel/0.index",[1155],{"title":1151,"path":1152,"stem":1153},{"title":1157,"path":1158,"stem":1159,"children":1160},"Navigation & Headers","/laioutr-ui/navigation","3.laioutr-ui/navigation/0.index",[1161,1162,1166,1170,1174,1178,1182,1186,1190,1194,1198,1202,1206],{"title":1157,"path":1158,"stem":1159},{"title":1163,"path":1164,"stem":1165},"Breadcrumbs","/laioutr-ui/navigation/breadcrumbs","3.laioutr-ui/navigation/breadcrumbs",{"title":1167,"path":1168,"stem":1169},"Footer","/laioutr-ui/navigation/footer","3.laioutr-ui/navigation/footer",{"title":1171,"path":1172,"stem":1173},"Footer Menu","/laioutr-ui/navigation/footer-menu","3.laioutr-ui/navigation/footer-menu",{"title":1175,"path":1176,"stem":1177},"Header Basic","/laioutr-ui/navigation/header-basic","3.laioutr-ui/navigation/header-basic",{"title":1179,"path":1180,"stem":1181},"Header Shop","/laioutr-ui/navigation/header-shop","3.laioutr-ui/navigation/header-shop",{"title":1183,"path":1184,"stem":1185},"Mega Menu","/laioutr-ui/navigation/mega-menu","3.laioutr-ui/navigation/mega-menu",{"title":1187,"path":1188,"stem":1189},"Menu Side by Side","/laioutr-ui/navigation/menu-side-by-side","3.laioutr-ui/navigation/menu-side-by-side",{"title":1191,"path":1192,"stem":1193},"Mobile Menu (Basic)","/laioutr-ui/navigation/mobile-menu-basic","3.laioutr-ui/navigation/mobile-menu-basic",{"title":1195,"path":1196,"stem":1197},"Mobile Menu (Shop)","/laioutr-ui/navigation/mobile-menu-shop","3.laioutr-ui/navigation/mobile-menu-shop",{"title":1199,"path":1200,"stem":1201},"Page Not Found","/laioutr-ui/navigation/page-not-found","3.laioutr-ui/navigation/page-not-found",{"title":1203,"path":1204,"stem":1205},"Search Auto-Suggest","/laioutr-ui/navigation/search-auto-suggest","3.laioutr-ui/navigation/search-auto-suggest",{"title":1207,"path":1208,"stem":1209},"Top Bar","/laioutr-ui/navigation/top-bar","3.laioutr-ui/navigation/top-bar",{"title":1211,"path":1212,"stem":1213,"children":1214},"Publishers & Media","/laioutr-ui/publishers","3.laioutr-ui/publishers/0.index",[1215,1216],{"title":1211,"path":1212,"stem":1213},{"title":1217,"path":1218,"stem":1219},"Media Feed","/laioutr-ui/publishers/media-feed","3.laioutr-ui/publishers/media-feed",{"title":1221,"path":1222,"stem":1223,"children":1224},"SaaS","/laioutr-ui/saas","3.laioutr-ui/saas/0.index",[1225,1226,1230,1234],{"title":1221,"path":1222,"stem":1223},{"title":1227,"path":1228,"stem":1229},"Plan Card","/laioutr-ui/saas/plan-card","3.laioutr-ui/saas/plan-card",{"title":1231,"path":1232,"stem":1233},"Plan Card Slider","/laioutr-ui/saas/plan-card-slider","3.laioutr-ui/saas/plan-card-slider",{"title":1235,"path":1236,"stem":1237},"Plan Comparison Table","/laioutr-ui/saas/plan-comparison-table","3.laioutr-ui/saas/plan-comparison-table",{"title":1239,"path":1240,"stem":1241,"children":1242},"Shop","/laioutr-ui/shop","3.laioutr-ui/shop/0.index",[1243,1244,1272,1276,1280,1284,1288,1348,1352,1356,1360,1364,1368],{"title":1239,"path":1240,"stem":1241},{"title":424,"path":1245,"stem":1246,"children":1247,"page":55},"/laioutr-ui/shop/cart","3.laioutr-ui/shop/cart",[1248,1252,1256,1260,1264,1268],{"title":1249,"path":1250,"stem":1251},"Cart Coupon Code Accordion","/laioutr-ui/shop/cart/cart-coupon-code-accordion","3.laioutr-ui/shop/cart/cart-coupon-code-accordion",{"title":1253,"path":1254,"stem":1255},"Cart List Item","/laioutr-ui/shop/cart/cart-list-item","3.laioutr-ui/shop/cart/cart-list-item",{"title":1257,"path":1258,"stem":1259},"Cart Sheet","/laioutr-ui/shop/cart/cart-sheet","3.laioutr-ui/shop/cart/cart-sheet",{"title":1261,"path":1262,"stem":1263},"Cart Summary Box","/laioutr-ui/shop/cart/cart-summary-box","3.laioutr-ui/shop/cart/cart-summary-box",{"title":1265,"path":1266,"stem":1267},"Empty State Cart","/laioutr-ui/shop/cart/empty-state-cart","3.laioutr-ui/shop/cart/empty-state-cart",{"title":1269,"path":1270,"stem":1271},"Free Delivery Progress","/laioutr-ui/shop/cart/free-delivery-progress","3.laioutr-ui/shop/cart/free-delivery-progress",{"title":1273,"path":1274,"stem":1275},"Category Card Grid","/laioutr-ui/shop/category-card-grid","3.laioutr-ui/shop/category-card-grid",{"title":1277,"path":1278,"stem":1279},"Category Card Slider","/laioutr-ui/shop/category-card-slider","3.laioutr-ui/shop/category-card-slider",{"title":1281,"path":1282,"stem":1283},"Filter Bar","/laioutr-ui/shop/filter-bar","3.laioutr-ui/shop/filter-bar",{"title":1285,"path":1286,"stem":1287},"Filter Off Canvas","/laioutr-ui/shop/filter-off-canvas","3.laioutr-ui/shop/filter-off-canvas",{"title":1289,"path":1290,"stem":1291,"children":1292,"page":55},"Product Detail","/laioutr-ui/shop/product-detail","3.laioutr-ui/shop/product-detail",[1293,1297,1301,1305,1309,1313,1316,1320,1324,1328,1332,1336,1340,1344],{"title":1294,"path":1295,"stem":1296},"Add to Cart","/laioutr-ui/shop/product-detail/add-to-cart","3.laioutr-ui/shop/product-detail/add-to-cart",{"title":1298,"path":1299,"stem":1300},"Benefits Box","/laioutr-ui/shop/product-detail/benefits-box","3.laioutr-ui/shop/product-detail/benefits-box",{"title":1302,"path":1303,"stem":1304},"Coupon Box","/laioutr-ui/shop/product-detail/coupon-box","3.laioutr-ui/shop/product-detail/coupon-box",{"title":1306,"path":1307,"stem":1308},"Energy Label","/laioutr-ui/shop/product-detail/energy-label","3.laioutr-ui/shop/product-detail/energy-label",{"title":1310,"path":1311,"stem":1312},"Price Info","/laioutr-ui/shop/product-detail/price-info","3.laioutr-ui/shop/product-detail/price-info",{"title":1289,"path":1314,"stem":1315},"/laioutr-ui/shop/product-detail/product-detail","3.laioutr-ui/shop/product-detail/product-detail",{"title":1317,"path":1318,"stem":1319},"Product Image Gallery","/laioutr-ui/shop/product-detail/product-image-gallery","3.laioutr-ui/shop/product-detail/product-image-gallery",{"title":1321,"path":1322,"stem":1323},"Product Specifications Table","/laioutr-ui/shop/product-detail/product-specifications","3.laioutr-ui/shop/product-detail/product-specifications",{"title":1325,"path":1326,"stem":1327},"Product Title","/laioutr-ui/shop/product-detail/product-title","3.laioutr-ui/shop/product-detail/product-title",{"title":1329,"path":1330,"stem":1331},"Quantity Discount","/laioutr-ui/shop/product-detail/quantity-discount","3.laioutr-ui/shop/product-detail/quantity-discount",{"title":1333,"path":1334,"stem":1335},"Variant Off Canvas","/laioutr-ui/shop/product-detail/variant-off-canvas","3.laioutr-ui/shop/product-detail/variant-off-canvas",{"title":1337,"path":1338,"stem":1339},"Variant Selector Configurator","/laioutr-ui/shop/product-detail/variant-selector-configurator","3.laioutr-ui/shop/product-detail/variant-selector-configurator",{"title":1341,"path":1342,"stem":1343},"Variant Selector (Multiple)","/laioutr-ui/shop/product-detail/variant-selector-multiple","3.laioutr-ui/shop/product-detail/variant-selector-multiple",{"title":1345,"path":1346,"stem":1347},"Variant Selector Options","/laioutr-ui/shop/product-detail/variant-selector-options","3.laioutr-ui/shop/product-detail/variant-selector-options",{"title":1349,"path":1350,"stem":1351},"Product Listing Grid","/laioutr-ui/shop/product-listing-grid","3.laioutr-ui/shop/product-listing-grid",{"title":1353,"path":1354,"stem":1355},"Product Slider","/laioutr-ui/shop/product-slider","3.laioutr-ui/shop/product-slider",{"title":1357,"path":1358,"stem":1359},"Product Slider Showcase","/laioutr-ui/shop/product-slider-showcase","3.laioutr-ui/shop/product-slider-showcase",{"title":1361,"path":1362,"stem":1363},"Product Tile (Basic)","/laioutr-ui/shop/product-tile-basic","3.laioutr-ui/shop/product-tile-basic",{"title":1365,"path":1366,"stem":1367},"Search Result Hero","/laioutr-ui/shop/search-result-hero","3.laioutr-ui/shop/search-result-hero",{"title":1369,"path":1370,"stem":1371},"Sort Modes","/laioutr-ui/shop/sort-modes","3.laioutr-ui/shop/sort-modes",{"title":1373,"path":1374,"stem":1375,"children":1376},"UI Kit","/laioutr-ui/ui-kit","3.laioutr-ui/ui-kit/0.index",[1377,1378,1550,1574,1595,1612,1649,1762,1791],{"title":1373,"path":1374,"stem":1375},{"title":1379,"path":1380,"stem":1381,"children":1382,"page":55},"General","/laioutr-ui/ui-kit/general","3.laioutr-ui/ui-kit/01.general",[1383,1387,1391,1395,1399,1403,1407,1411,1415,1419,1423,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,1530,1534,1538,1542,1546],{"title":1384,"path":1385,"stem":1386},"Accordion","/laioutr-ui/ui-kit/general/accordion","3.laioutr-ui/ui-kit/01.general/Accordion",{"title":1388,"path":1389,"stem":1390},"Avatar","/laioutr-ui/ui-kit/general/avatar","3.laioutr-ui/ui-kit/01.general/Avatar",{"title":1392,"path":1393,"stem":1394},"Backdrop","/laioutr-ui/ui-kit/general/backdrop","3.laioutr-ui/ui-kit/01.general/Backdrop",{"title":1396,"path":1397,"stem":1398},"Dropdown Menu","/laioutr-ui/ui-kit/general/dropdownmenu","3.laioutr-ui/ui-kit/01.general/DropdownMenu",{"title":1400,"path":1401,"stem":1402},"Edge Glow","/laioutr-ui/ui-kit/general/edgeglow","3.laioutr-ui/ui-kit/01.general/EdgeGlow",{"title":1404,"path":1405,"stem":1406},"Empty State","/laioutr-ui/ui-kit/general/emptystate","3.laioutr-ui/ui-kit/01.general/EmptyState",{"title":1408,"path":1409,"stem":1410},"Icon","/laioutr-ui/ui-kit/general/icon","3.laioutr-ui/ui-kit/01.general/Icon",{"title":1412,"path":1413,"stem":1414},"Image Contrast Overlay","/laioutr-ui/ui-kit/general/imagecontrastoverlay","3.laioutr-ui/ui-kit/01.general/ImageContrastOverlay",{"title":1416,"path":1417,"stem":1418},"Lightbox","/laioutr-ui/ui-kit/general/lightbox","3.laioutr-ui/ui-kit/01.general/Lightbox",{"title":1420,"path":1421,"stem":1422},"Loading Spinner","/laioutr-ui/ui-kit/general/loadingspinner","3.laioutr-ui/ui-kit/01.general/LoadingSpinner",{"title":461,"path":1424,"stem":1425},"/laioutr-ui/ui-kit/general/media","3.laioutr-ui/ui-kit/01.general/Media",{"title":1427,"path":1428,"stem":1429},"Navigation Bullets","/laioutr-ui/ui-kit/general/navigationbullets","3.laioutr-ui/ui-kit/01.general/NavigationBullets",{"title":1431,"path":1432,"stem":1433},"Placeholder","/laioutr-ui/ui-kit/general/placeholder","3.laioutr-ui/ui-kit/01.general/Placeholder",{"title":1435,"path":1436,"stem":1437},"Progress Bar","/laioutr-ui/ui-kit/general/progressbar","3.laioutr-ui/ui-kit/01.general/ProgressBar",{"title":1439,"path":1440,"stem":1441},"Scrollbar","/laioutr-ui/ui-kit/general/scrollbar","3.laioutr-ui/ui-kit/01.general/Scrollbar",{"title":1443,"path":1444,"stem":1445},"Swatch","/laioutr-ui/ui-kit/general/swatch","3.laioutr-ui/ui-kit/01.general/Swatch",{"title":1447,"path":1448,"stem":1449},"SwiperScrollbar","/laioutr-ui/ui-kit/general/swiperscrollbar","3.laioutr-ui/ui-kit/01.general/SwiperScrollbar",{"title":1451,"path":1452,"stem":1453},"Thumbnail","/laioutr-ui/ui-kit/general/thumbnail","3.laioutr-ui/ui-kit/01.general/Thumbnail",{"title":1455,"path":1456,"stem":1457},"Tooltip","/laioutr-ui/ui-kit/general/tooltip","3.laioutr-ui/ui-kit/01.general/Tooltip",{"title":1459,"path":1460,"stem":1461},"Amount Pill","/laioutr-ui/ui-kit/general/amount-pill","3.laioutr-ui/ui-kit/01.general/amount-pill",{"title":1463,"path":1464,"stem":1465},"Animated Icon","/laioutr-ui/ui-kit/general/animated-icon","3.laioutr-ui/ui-kit/01.general/animated-icon",{"title":1467,"path":1468,"stem":1469},"Countdown","/laioutr-ui/ui-kit/general/countdown","3.laioutr-ui/ui-kit/01.general/countdown",{"title":1471,"path":1472,"stem":1473},"Countdown Boxed","/laioutr-ui/ui-kit/general/countdown-boxed","3.laioutr-ui/ui-kit/01.general/countdown-boxed",{"title":1475,"path":1476,"stem":1477},"Dark Mode Switch","/laioutr-ui/ui-kit/general/dark-mode-switch","3.laioutr-ui/ui-kit/01.general/dark-mode-switch",{"title":1479,"path":1480,"stem":1481},"Language Switcher","/laioutr-ui/ui-kit/general/language-switcher","3.laioutr-ui/ui-kit/01.general/language-switcher",{"title":1483,"path":1484,"stem":1485},"Media Preview","/laioutr-ui/ui-kit/general/media-preview","3.laioutr-ui/ui-kit/01.general/media-preview",{"title":1487,"path":1488,"stem":1489},"Media Stage","/laioutr-ui/ui-kit/general/media-stage","3.laioutr-ui/ui-kit/01.general/media-stage",{"title":1491,"path":1492,"stem":1493},"Nav Link Item","/laioutr-ui/ui-kit/general/nav-link-item","3.laioutr-ui/ui-kit/01.general/nav-link-item",{"title":1495,"path":1496,"stem":1497},"Nav Section Heading","/laioutr-ui/ui-kit/general/nav-section-heading","3.laioutr-ui/ui-kit/01.general/nav-section-heading",{"title":1499,"path":1500,"stem":1501},"OnSurface","/laioutr-ui/ui-kit/general/on-surface","3.laioutr-ui/ui-kit/01.general/on-surface",{"title":1503,"path":1504,"stem":1505},"Opening Status","/laioutr-ui/ui-kit/general/opening-status","3.laioutr-ui/ui-kit/01.general/opening-status",{"title":1507,"path":1508,"stem":1509},"Opening Status Detail","/laioutr-ui/ui-kit/general/opening-status-detail","3.laioutr-ui/ui-kit/01.general/opening-status-detail",{"title":1511,"path":1512,"stem":1513},"Opening Status Indicator","/laioutr-ui/ui-kit/general/opening-status-indicator","3.laioutr-ui/ui-kit/01.general/opening-status-indicator",{"title":1515,"path":1516,"stem":1517},"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":1519,"path":1520,"stem":1521},"Status Message","/laioutr-ui/ui-kit/general/status-message","3.laioutr-ui/ui-kit/01.general/status-message",{"title":1523,"path":1524,"stem":1525},"Stock Info Summary","/laioutr-ui/ui-kit/general/stock-info-summary","3.laioutr-ui/ui-kit/01.general/stock-info-summary",{"title":1527,"path":1528,"stem":1529},"Swatch Chip","/laioutr-ui/ui-kit/general/swatch-chip","3.laioutr-ui/ui-kit/01.general/swatch-chip",{"title":1531,"path":1532,"stem":1533},"Swatch Option","/laioutr-ui/ui-kit/general/swatch-option","3.laioutr-ui/ui-kit/01.general/swatch-option",{"title":1535,"path":1536,"stem":1537},"Swatch Summary","/laioutr-ui/ui-kit/general/swatch-summary","3.laioutr-ui/ui-kit/01.general/swatch-summary",{"title":1539,"path":1540,"stem":1541},"Table of Contents","/laioutr-ui/ui-kit/general/table-of-contents","3.laioutr-ui/ui-kit/01.general/table-of-contents",{"title":1543,"path":1544,"stem":1545},"Zoom Level (Segmented)","/laioutr-ui/ui-kit/general/zoom-level-segmented","3.laioutr-ui/ui-kit/01.general/zoom-level-segmented",{"title":1547,"path":1548,"stem":1549},"Zoom Level (Stepper)","/laioutr-ui/ui-kit/general/zoom-level-stepper","3.laioutr-ui/ui-kit/01.general/zoom-level-stepper",{"title":1551,"path":1552,"stem":1553,"children":1554,"page":55},"Typography","/laioutr-ui/ui-kit/typography","3.laioutr-ui/ui-kit/02.typography",[1555,1559,1562,1566,1570],{"title":1556,"path":1557,"stem":1558},"Icon List","/laioutr-ui/ui-kit/typography/iconlist","3.laioutr-ui/ui-kit/02.typography/IconList",{"title":457,"path":1560,"stem":1561},"/laioutr-ui/ui-kit/typography/link","3.laioutr-ui/ui-kit/02.typography/Link",{"title":1563,"path":1564,"stem":1565},"Rich Content","/laioutr-ui/ui-kit/typography/richcontent","3.laioutr-ui/ui-kit/02.typography/RichContent",{"title":1567,"path":1568,"stem":1569},"Text","/laioutr-ui/ui-kit/typography/text","3.laioutr-ui/ui-kit/02.typography/Text",{"title":1571,"path":1572,"stem":1573},"Text Group","/laioutr-ui/ui-kit/typography/text-group","3.laioutr-ui/ui-kit/02.typography/text-group",{"title":1575,"path":1576,"stem":1577,"children":1578,"page":55},"Layout","/laioutr-ui/ui-kit/layout","3.laioutr-ui/ui-kit/03.layout",[1579,1583,1587,1591],{"title":1580,"path":1581,"stem":1582},"Grid Fill","/laioutr-ui/ui-kit/layout/gridfill","3.laioutr-ui/ui-kit/03.layout/GridFill",{"title":1584,"path":1585,"stem":1586},"Grid Masonry","/laioutr-ui/ui-kit/layout/gridmasonry","3.laioutr-ui/ui-kit/03.layout/GridMasonry",{"title":1588,"path":1589,"stem":1590},"Scroll Area","/laioutr-ui/ui-kit/layout/scrollarea","3.laioutr-ui/ui-kit/03.layout/ScrollArea",{"title":1592,"path":1593,"stem":1594},"Separator","/laioutr-ui/ui-kit/layout/separator","3.laioutr-ui/ui-kit/03.layout/Separator",{"title":1596,"path":1597,"stem":1598,"children":1599,"page":55},"Content","/laioutr-ui/ui-kit/content","3.laioutr-ui/ui-kit/04.content",[1600,1604,1608],{"title":1601,"path":1602,"stem":1603},"Card","/laioutr-ui/ui-kit/content/card","3.laioutr-ui/ui-kit/04.content/Card",{"title":1605,"path":1606,"stem":1607},"Basic Table","/laioutr-ui/ui-kit/content/basic-table","3.laioutr-ui/ui-kit/04.content/basic-table",{"title":1609,"path":1610,"stem":1611},"Link Tile","/laioutr-ui/ui-kit/content/link-tile","3.laioutr-ui/ui-kit/04.content/link-tile",{"title":1613,"path":1614,"stem":1615,"children":1616,"page":55},"Surfaces","/laioutr-ui/ui-kit/surfaces","3.laioutr-ui/ui-kit/05.surfaces",[1617,1621,1625,1629,1633,1637,1641,1645],{"title":1618,"path":1619,"stem":1620},"Alert Dialog","/laioutr-ui/ui-kit/surfaces/alertdialog","3.laioutr-ui/ui-kit/05.surfaces/AlertDialog",{"title":1622,"path":1623,"stem":1624},"Popover","/laioutr-ui/ui-kit/surfaces/popover","3.laioutr-ui/ui-kit/05.surfaces/Popover",{"title":1626,"path":1627,"stem":1628},"Sheet","/laioutr-ui/ui-kit/surfaces/sheet","3.laioutr-ui/ui-kit/05.surfaces/Sheet",{"title":1630,"path":1631,"stem":1632},"Tabs","/laioutr-ui/ui-kit/surfaces/tabs","3.laioutr-ui/ui-kit/05.surfaces/Tabs",{"title":1634,"path":1635,"stem":1636},"Toast","/laioutr-ui/ui-kit/surfaces/toast","3.laioutr-ui/ui-kit/05.surfaces/Toast",{"title":1638,"path":1639,"stem":1640},"Toaster","/laioutr-ui/ui-kit/surfaces/toaster","3.laioutr-ui/ui-kit/05.surfaces/Toaster",{"title":1642,"path":1643,"stem":1644},"Context Menu","/laioutr-ui/ui-kit/surfaces/context-menu","3.laioutr-ui/ui-kit/05.surfaces/context-menu",{"title":1646,"path":1647,"stem":1648},"Navigation Menu","/laioutr-ui/ui-kit/surfaces/navigation-menu","3.laioutr-ui/ui-kit/05.surfaces/navigation-menu",{"title":1650,"path":1651,"stem":1652,"children":1653,"page":55},"Form","/laioutr-ui/ui-kit/form","3.laioutr-ui/ui-kit/06.form",[1654,1658,1662,1666,1670,1674,1678,1682,1686,1690,1694,1698,1702,1706,1710,1714,1718,1722,1726,1730,1734,1738,1742,1746,1750,1754,1758],{"title":1655,"path":1656,"stem":1657},"Button","/laioutr-ui/ui-kit/form/button","3.laioutr-ui/ui-kit/06.form/Button",{"title":1659,"path":1660,"stem":1661},"Checkbox","/laioutr-ui/ui-kit/form/checkbox","3.laioutr-ui/ui-kit/06.form/Checkbox",{"title":1663,"path":1664,"stem":1665},"Field","/laioutr-ui/ui-kit/form/field","3.laioutr-ui/ui-kit/06.form/Field",{"title":1667,"path":1668,"stem":1669},"Input","/laioutr-ui/ui-kit/form/input","3.laioutr-ui/ui-kit/06.form/Input",{"title":1671,"path":1672,"stem":1673},"Label","/laioutr-ui/ui-kit/form/label","3.laioutr-ui/ui-kit/06.form/Label",{"title":1675,"path":1676,"stem":1677},"Load More","/laioutr-ui/ui-kit/form/loadmore","3.laioutr-ui/ui-kit/06.form/LoadMore",{"title":1679,"path":1680,"stem":1681},"Pagination","/laioutr-ui/ui-kit/form/pagination","3.laioutr-ui/ui-kit/06.form/Pagination",{"title":1683,"path":1684,"stem":1685},"Quantity Picker","/laioutr-ui/ui-kit/form/quantitypicker","3.laioutr-ui/ui-kit/06.form/QuantityPicker",{"title":1687,"path":1688,"stem":1689},"Select","/laioutr-ui/ui-kit/form/select","3.laioutr-ui/ui-kit/06.form/Select",{"title":1691,"path":1692,"stem":1693},"Switch","/laioutr-ui/ui-kit/form/switch","3.laioutr-ui/ui-kit/06.form/Switch",{"title":1695,"path":1696,"stem":1697},"Animated Button","/laioutr-ui/ui-kit/form/animated-button","3.laioutr-ui/ui-kit/06.form/animated-button",{"title":1699,"path":1700,"stem":1701},"Highlight Toggle","/laioutr-ui/ui-kit/form/highlight-toggle","3.laioutr-ui/ui-kit/06.form/highlight-toggle",{"title":1703,"path":1704,"stem":1705},"Icon Button","/laioutr-ui/ui-kit/form/icon-button","3.laioutr-ui/ui-kit/06.form/icon-button",{"title":1707,"path":1708,"stem":1709},"Input Autocomplete","/laioutr-ui/ui-kit/form/input-autocomplete","3.laioutr-ui/ui-kit/06.form/input-autocomplete",{"title":1711,"path":1712,"stem":1713},"Input Checkbox","/laioutr-ui/ui-kit/form/input-checkbox","3.laioutr-ui/ui-kit/06.form/input-checkbox",{"title":1715,"path":1716,"stem":1717},"Input Combobox","/laioutr-ui/ui-kit/form/input-combobox","3.laioutr-ui/ui-kit/06.form/input-combobox",{"title":1719,"path":1720,"stem":1721},"Input Group","/laioutr-ui/ui-kit/form/input-group","3.laioutr-ui/ui-kit/06.form/input-group",{"title":1723,"path":1724,"stem":1725},"Input Password","/laioutr-ui/ui-kit/form/input-password","3.laioutr-ui/ui-kit/06.form/input-password",{"title":1727,"path":1728,"stem":1729},"Input Pin","/laioutr-ui/ui-kit/form/input-pin","3.laioutr-ui/ui-kit/06.form/input-pin",{"title":1731,"path":1732,"stem":1733},"Input Radio","/laioutr-ui/ui-kit/form/input-radio","3.laioutr-ui/ui-kit/06.form/input-radio",{"title":1735,"path":1736,"stem":1737},"Input Rating","/laioutr-ui/ui-kit/form/input-rating","3.laioutr-ui/ui-kit/06.form/input-rating",{"title":1739,"path":1740,"stem":1741},"Input Search","/laioutr-ui/ui-kit/form/input-search","3.laioutr-ui/ui-kit/06.form/input-search",{"title":1743,"path":1744,"stem":1745},"Input Slider","/laioutr-ui/ui-kit/form/input-slider","3.laioutr-ui/ui-kit/06.form/input-slider",{"title":1747,"path":1748,"stem":1749},"Listbox","/laioutr-ui/ui-kit/form/listbox","3.laioutr-ui/ui-kit/06.form/listbox",{"title":1751,"path":1752,"stem":1753},"Option Tile (Image)","/laioutr-ui/ui-kit/form/option-tile-image","3.laioutr-ui/ui-kit/06.form/option-tile-image",{"title":1755,"path":1756,"stem":1757},"Option Tile (Text)","/laioutr-ui/ui-kit/form/option-tile-text","3.laioutr-ui/ui-kit/06.form/option-tile-text",{"title":1759,"path":1760,"stem":1761},"Variant Selection Card","/laioutr-ui/ui-kit/form/variant-selection-card","3.laioutr-ui/ui-kit/06.form/variant-selection-card",{"title":1763,"path":1764,"stem":1765,"children":1766,"page":55},"Indicators","/laioutr-ui/ui-kit/indicators","3.laioutr-ui/ui-kit/07.indicators",[1767,1771,1775,1779,1783,1787],{"title":1768,"path":1769,"stem":1770},"Badge","/laioutr-ui/ui-kit/indicators/badge","3.laioutr-ui/ui-kit/07.indicators/Badge",{"title":1772,"path":1773,"stem":1774},"Caption Flag","/laioutr-ui/ui-kit/indicators/captionflag","3.laioutr-ui/ui-kit/07.indicators/CaptionFlag",{"title":1776,"path":1777,"stem":1778},"Product Tile Flag","/laioutr-ui/ui-kit/indicators/producttileflag","3.laioutr-ui/ui-kit/07.indicators/ProductTileFlag",{"title":1780,"path":1781,"stem":1782},"Rating Summary","/laioutr-ui/ui-kit/indicators/ratingsummary","3.laioutr-ui/ui-kit/07.indicators/RatingSummary",{"title":1784,"path":1785,"stem":1786},"Stars Rating","/laioutr-ui/ui-kit/indicators/starsrating","3.laioutr-ui/ui-kit/07.indicators/StarsRating",{"title":1788,"path":1789,"stem":1790},"Badge Promotion","/laioutr-ui/ui-kit/indicators/badge-promotion","3.laioutr-ui/ui-kit/07.indicators/badge-promotion",{"title":1792,"path":1793,"stem":1794,"children":1795,"page":55},"Utility Components","/laioutr-ui/ui-kit/utility-components","3.laioutr-ui/ui-kit/08.utility-components",[1796,1800],{"title":1797,"path":1798,"stem":1799},"Highlighted Text","/laioutr-ui/ui-kit/utility-components/highlighted-text","3.laioutr-ui/ui-kit/08.utility-components/highlighted-text",{"title":1801,"path":1802,"stem":1803},"Sizer","/laioutr-ui/ui-kit/utility-components/sizer","3.laioutr-ui/ui-kit/08.utility-components/sizer",{"title":1805,"path":1806,"stem":1807,"children":1808},"Hosting","/hosting","4.hosting/0.index",[1809,1810,1816,1846,1864],{"title":1805,"path":1806,"stem":1807},{"title":1811,"path":1812,"stem":1813,"children":1814},"Laioutr Cloud","/hosting/laioutr-cloud","4.hosting/0.laioutr-cloud/0.index",[1815],{"title":1811,"path":1812,"stem":1813},{"title":1817,"path":1818,"stem":1819,"children":1820},"Hyperscaler","/hosting/hyperscaler","4.hosting/1.hyperscaler/0.index",[1821,1822,1826,1830,1834,1838,1842],{"title":1817,"path":1818,"stem":1819},{"title":1823,"path":1824,"stem":1825},"Akamai Adapter","/hosting/hyperscaler/akamai-adapter","4.hosting/1.hyperscaler/akamai-adapter",{"title":1827,"path":1828,"stem":1829},"AWS Adapter","/hosting/hyperscaler/aws-adapter","4.hosting/1.hyperscaler/aws-adapter",{"title":1831,"path":1832,"stem":1833},"Azure Adapter","/hosting/hyperscaler/azure-adapter","4.hosting/1.hyperscaler/azure-adapter",{"title":1835,"path":1836,"stem":1837},"Google Adapter","/hosting/hyperscaler/google-adapter","4.hosting/1.hyperscaler/google-adapter",{"title":1839,"path":1840,"stem":1841},"Netlify Adapter","/hosting/hyperscaler/netlify-adapter","4.hosting/1.hyperscaler/netlify-adapter",{"title":1843,"path":1844,"stem":1845},"Vercel Adapter","/hosting/hyperscaler/vercel-adapter","4.hosting/1.hyperscaler/vercel-adapter",{"title":1847,"path":1848,"stem":1849,"children":1850},"Native Hosting","/hosting/native-hosting-providers","4.hosting/2.native-hosting-providers/0.index",[1851,1852,1856,1860],{"title":1847,"path":1848,"stem":1849},{"title":1853,"path":1854,"stem":1855},"maxcluster","/hosting/native-hosting-providers/maxcluster","4.hosting/2.native-hosting-providers/maxcluster",{"title":1857,"path":1858,"stem":1859},"profihost","/hosting/native-hosting-providers/profihost","4.hosting/2.native-hosting-providers/profihost",{"title":1861,"path":1862,"stem":1863},"ScaleCommerce","/hosting/native-hosting-providers/scale-commerce","4.hosting/2.native-hosting-providers/scale-commerce",{"title":1865,"path":1866,"stem":1867,"children":1868},"Bring Your Own Server (BYOS)","/hosting/bring-your-own-server-byos","4.hosting/3.bring-your-own-server-byos/0.index",[1869,1870,1874,1878,1882,1886,1890],{"title":1865,"path":1866,"stem":1867},{"title":1871,"path":1872,"stem":1873},"BYOS Agent","/hosting/bring-your-own-server-byos/byos-agent","4.hosting/3.bring-your-own-server-byos/byos-agent",{"title":1875,"path":1876,"stem":1877},"Changelog","/hosting/bring-your-own-server-byos/changelog","4.hosting/3.bring-your-own-server-byos/changelog",{"title":1879,"path":1880,"stem":1881},"DevOps Components","/hosting/bring-your-own-server-byos/devops","4.hosting/3.bring-your-own-server-byos/devops",{"title":1883,"path":1884,"stem":1885},"Infrastructure Requirements","/hosting/bring-your-own-server-byos/infrastructure","4.hosting/3.bring-your-own-server-byos/infrastructure",{"title":1887,"path":1888,"stem":1889},"Software Requirements","/hosting/bring-your-own-server-byos/software","4.hosting/3.bring-your-own-server-byos/software",{"title":1891,"path":1892,"stem":1893},"Webhook Configuration","/hosting/bring-your-own-server-byos/webhook-config","4.hosting/3.bring-your-own-server-byos/webhook-config",{"title":597,"path":1895,"stem":1896,"children":1897},"/checkout","5.Checkout/0.index",[1898],{"title":597,"path":1895,"stem":1896},{"title":609,"path":1900,"stem":1901,"children":1902},"/larry-ai","6.Larry-AI/0.index",[1903],{"title":609,"path":1900,"stem":1901},{"title":901,"path":1905,"stem":1906,"children":1907},"/figma-kit","7.Figma Kit/0.index",[1908,1909,1925],{"title":901,"path":1905,"stem":1906},{"title":121,"path":1910,"stem":1911,"children":1912,"page":55},"/figma-kit/introduction","7.Figma Kit/1.Introduction",[1913,1917,1921],{"title":1914,"path":1915,"stem":1916},"How to Start","/figma-kit/introduction/howtostart","7.Figma Kit/1.Introduction/0.howtostart",{"title":1918,"path":1919,"stem":1920},"Figma Variables","/figma-kit/introduction/figma-variables","7.Figma Kit/1.Introduction/figma-variables",{"title":1922,"path":1923,"stem":1924},"Library Connections","/figma-kit/introduction/library-connections","7.Figma Kit/1.Introduction/library-connections",{"title":1926,"path":1927,"stem":1928,"children":1929,"page":55},"Kits","/figma-kit/kits","7.Figma Kit/Kits",[1930,1933,1936,1939,1943,1946,1950,1954,1957,1960],{"title":916,"path":1931,"stem":1932},"/figma-kit/kits/b2b","7.Figma Kit/Kits/b2b",{"title":922,"path":1934,"stem":1935},"/figma-kit/kits/booking","7.Figma Kit/Kits/booking",{"title":928,"path":1937,"stem":1938},"/figma-kit/kits/cms","7.Figma Kit/Kits/cms",{"title":1940,"path":1941,"stem":1942},"Inpage Navigation","/figma-kit/kits/inpage-navigation","7.Figma Kit/Kits/inpage-navigation",{"title":1145,"path":1944,"stem":1945},"/figma-kit/kits/marketplace","7.Figma Kit/Kits/marketplace",{"title":1947,"path":1948,"stem":1949},"Retail & Multichannel","/figma-kit/kits/multichannel","7.Figma Kit/Kits/multichannel",{"title":1951,"path":1952,"stem":1953},"Navigation","/figma-kit/kits/navigation","7.Figma Kit/Kits/navigation",{"title":1221,"path":1955,"stem":1956},"/figma-kit/kits/saas","7.Figma Kit/Kits/saas",{"title":1239,"path":1958,"stem":1959},"/figma-kit/kits/shop","7.Figma Kit/Kits/shop",{"title":1373,"path":1961,"stem":1962},"/figma-kit/kits/ui-kit","7.Figma Kit/Kits/ui-kit",{"title":591,"path":1964,"stem":1965,"children":1966},"/cockpit","8.Cockpit/0.index",[1967,1968,1998,2015,2032],{"title":591,"path":1964,"stem":1965},{"title":154,"path":1969,"stem":1970,"children":1971,"page":55},"/cockpit/features","8.Cockpit/1.Features",[1972,1975,1979,1983,1987,1990,1994],{"title":690,"path":1973,"stem":1974},"/cockpit/features/apps","8.Cockpit/1.Features/apps",{"title":1976,"path":1977,"stem":1978},"Content (Collections)","/cockpit/features/content-collections","8.Cockpit/1.Features/content-collections",{"title":1980,"path":1981,"stem":1982},"Deployments","/cockpit/features/deployments","8.Cockpit/1.Features/deployments",{"title":1984,"path":1985,"stem":1986},"Markets","/cockpit/features/markets","8.Cockpit/1.Features/markets",{"title":200,"path":1988,"stem":1989},"/cockpit/features/redirects","8.Cockpit/1.Features/redirects",{"title":1991,"path":1992,"stem":1993},"Studio","/cockpit/features/studio","8.Cockpit/1.Features/studio",{"title":1995,"path":1996,"stem":1997},"Translations","/cockpit/features/translations","8.Cockpit/1.Features/translations",{"title":1999,"path":2000,"stem":2001,"children":2002,"page":55},"Project Settings","/cockpit/project-settings","8.Cockpit/2.Project-Settings",[2003,2007,2011],{"title":2004,"path":2005,"stem":2006},"Delete a project","/cockpit/project-settings/delete-project","8.Cockpit/2.Project-Settings/delete-project",{"title":2008,"path":2009,"stem":2010},"NPM","/cockpit/project-settings/npm","8.Cockpit/2.Project-Settings/npm",{"title":2012,"path":2013,"stem":2014},"Project secret key","/cockpit/project-settings/project-secret-key","8.Cockpit/2.Project-Settings/project-secret-key",{"title":2016,"path":2017,"stem":2018,"children":2019,"page":55},"Account Settings","/cockpit/account-settings","8.Cockpit/3.Account-Settings",[2020,2024,2028],{"title":2021,"path":2022,"stem":2023},"Notifications","/cockpit/account-settings/notifications","8.Cockpit/3.Account-Settings/notifications",{"title":2025,"path":2026,"stem":2027},"Preferences","/cockpit/account-settings/preferences","8.Cockpit/3.Account-Settings/preferences",{"title":2029,"path":2030,"stem":2031},"Security","/cockpit/account-settings/security","8.Cockpit/3.Account-Settings/security",{"title":2033,"path":2034,"stem":2035,"children":2036,"page":55},"Organisation Settings","/cockpit/organisation-settings","8.Cockpit/4.Organisation-Settings",[2037,2041,2045,2049,2053,2057],{"title":2038,"path":2039,"stem":2040},"API keys","/cockpit/organisation-settings/api-keys","8.Cockpit/4.Organisation-Settings/api-keys",{"title":2042,"path":2043,"stem":2044},"Billing","/cockpit/organisation-settings/billing","8.Cockpit/4.Organisation-Settings/billing",{"title":2046,"path":2047,"stem":2048},"General settings","/cockpit/organisation-settings/general-settings","8.Cockpit/4.Organisation-Settings/general-settings",{"title":2050,"path":2051,"stem":2052},"Members","/cockpit/organisation-settings/members","8.Cockpit/4.Organisation-Settings/members",{"title":2054,"path":2055,"stem":2056},"Projects","/cockpit/organisation-settings/projects","8.Cockpit/4.Organisation-Settings/projects",{"title":2058,"path":2059,"stem":2060},"Roles","/cockpit/organisation-settings/roles","8.Cockpit/4.Organisation-Settings/roles",{"title":2062,"path":2063,"stem":2064,"children":2065},"Data API","/data-api","9.Data-API/0.index",[2066,2067,2087,2097],{"title":2062,"path":2063,"stem":2064},{"title":2068,"path":2069,"stem":2070,"children":2071,"page":55},"Api Info","/data-api/api-info","9.Data-API/1.API-Info",[2072,2076,2080,2083],{"title":2073,"path":2074,"stem":2075},"API Basics","/data-api/api-info/api-basics","9.Data-API/1.API-Info/1.api-basics",{"title":2077,"path":2078,"stem":2079},"Authentication","/data-api/api-info/authentication","9.Data-API/1.API-Info/2.authentication",{"title":497,"path":2081,"stem":2082},"/data-api/api-info/errors","9.Data-API/1.API-Info/3.errors",{"title":2084,"path":2085,"stem":2086},"HTTP details","/data-api/api-info/http-details","9.Data-API/1.API-Info/4.http-details",{"title":2088,"path":2089,"stem":2090,"children":2091},"Management API","/data-api/management-api","9.Data-API/2.Management-API/0.index",[2092,2093],{"title":2088,"path":2089,"stem":2090},{"title":2094,"path":2095,"stem":2096},"Assets","/data-api/management-api/assets","9.Data-API/2.Management-API/1.assets",{"title":2098,"path":2099,"stem":2100,"children":2101},"Delivery API","/data-api/delivery-api","9.Data-API/3.Delivery-API/0.index",[2102],{"title":2098,"path":2099,"stem":2100},{"id":2104,"title":1217,"aliases":2105,"body":2106,"changelogKeys":3903,"description":3904,"extension":3905,"links":3906,"meta":3907,"navigation":2211,"path":1218,"playground":3908,"seo":3912,"sitemap":3914,"stem":1219,"__hash__":3917},"docs/3.laioutr-ui/publishers/media-feed.md",null,{"type":2107,"value":2108,"toc":3878},"minimark",[2109,2114,2120,2128,2131,2505,2509,2525,2528,2531,2648,2651,2655,2660,2670,2674,2684,2768,2789,2795,2799,2806,2876,2883,2887,2894,2961,2968,2971,2981,2985,3082,3088,3490,3506,3509,3512,3531,3534,3538,3549,3559,3563,3566,3652,3655,3658,3666,3789,3837,3840,3843,3847,3850,3853,3856,3859,3862,3864,3867,3869,3872,3874],[2110,2111,2113],"h2",{"id":2112},"overview","Overview",[2115,2116],"since-version",{"changelog":2117,"packages":2118,"version":2119},"ui","@laioutr-core/ui","2.12.0",[2121,2122,2123,2127],"p",{},[2124,2125,2126],"code",{},"MediaFeed"," is the full-screen vertical feed visitors know from TikTok and Reels. Items snap one to a viewport, the one in view plays and the rest do not, and each carries its own captions, badges, action rail, and call to action. A read-more sheet holds the long copy so the item itself stays a picture rather than a page.",[2121,2129,2130],{},"It renders as a modal dialog over the whole viewport. Give it items and open it:",[2132,2133,2138],"pre",{"className":2134,"code":2135,"language":2136,"meta":2137,"style":2137},"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cscript setup lang=\"ts\">\nimport { ref } from 'vue';\n\nconst isOpen = ref(false);\nconst reels = [\n  {\n    id: 'summer-collection',\n    media: summerClip,\n    title: 'Summer Collection',\n    captions: ['@laioutr'],\n    teaser: 'Linen, and rather a lot of it.',\n    detail: '\u003Cp>The full story behind the collection…\u003C/p>',\n  },\n];\n\u003C/script>\n\n\u003Ctemplate>\n  \u003CButton @click=\"isOpen = true\">Open the feed\u003C/Button>\n  \u003CMediaFeed :items=\"reels\" title=\"Reels\" v-model:open=\"isOpen\" />\n\u003C/template>\n","vue","",[2124,2139,2140,2175,2206,2213,2239,2252,2258,2277,2290,2307,2330,2347,2364,2370,2377,2387,2392,2402,2443,2496],{"__ignoreMap":2137},[2141,2142,2145,2149,2153,2157,2160,2163,2166,2170,2172],"span",{"class":2143,"line":2144},"line",1,[2141,2146,2148],{"class":2147},"sMK4o","\u003C",[2141,2150,2152],{"class":2151},"swJcz","script",[2141,2154,2156],{"class":2155},"spNyl"," setup",[2141,2158,2159],{"class":2155}," lang",[2141,2161,2162],{"class":2147},"=",[2141,2164,2165],{"class":2147},"\"",[2141,2167,2169],{"class":2168},"sfazB","ts",[2141,2171,2165],{"class":2147},[2141,2173,2174],{"class":2147},">\n",[2141,2176,2178,2182,2185,2189,2192,2195,2198,2200,2203],{"class":2143,"line":2177},2,[2141,2179,2181],{"class":2180},"s7zQu","import",[2141,2183,2184],{"class":2147}," {",[2141,2186,2188],{"class":2187},"sTEyZ"," ref",[2141,2190,2191],{"class":2147}," }",[2141,2193,2194],{"class":2180}," from",[2141,2196,2197],{"class":2147}," '",[2141,2199,2136],{"class":2168},[2141,2201,2202],{"class":2147},"'",[2141,2204,2205],{"class":2147},";\n",[2141,2207,2209],{"class":2143,"line":2208},3,[2141,2210,2212],{"emptyLinePlaceholder":2211},true,"\n",[2141,2214,2216,2219,2222,2224,2227,2230,2234,2237],{"class":2143,"line":2215},4,[2141,2217,2218],{"class":2155},"const",[2141,2220,2221],{"class":2187}," isOpen ",[2141,2223,2162],{"class":2147},[2141,2225,2188],{"class":2226},"s2Zo4",[2141,2228,2229],{"class":2187},"(",[2141,2231,2233],{"class":2232},"sfNiH","false",[2141,2235,2236],{"class":2187},")",[2141,2238,2205],{"class":2147},[2141,2240,2242,2244,2247,2249],{"class":2143,"line":2241},5,[2141,2243,2218],{"class":2155},[2141,2245,2246],{"class":2187}," reels ",[2141,2248,2162],{"class":2147},[2141,2250,2251],{"class":2187}," [\n",[2141,2253,2255],{"class":2143,"line":2254},6,[2141,2256,2257],{"class":2147},"  {\n",[2141,2259,2261,2264,2267,2269,2272,2274],{"class":2143,"line":2260},7,[2141,2262,2263],{"class":2151},"    id",[2141,2265,2266],{"class":2147},":",[2141,2268,2197],{"class":2147},[2141,2270,2271],{"class":2168},"summer-collection",[2141,2273,2202],{"class":2147},[2141,2275,2276],{"class":2147},",\n",[2141,2278,2280,2283,2285,2288],{"class":2143,"line":2279},8,[2141,2281,2282],{"class":2151},"    media",[2141,2284,2266],{"class":2147},[2141,2286,2287],{"class":2187}," summerClip",[2141,2289,2276],{"class":2147},[2141,2291,2293,2296,2298,2300,2303,2305],{"class":2143,"line":2292},9,[2141,2294,2295],{"class":2151},"    title",[2141,2297,2266],{"class":2147},[2141,2299,2197],{"class":2147},[2141,2301,2302],{"class":2168},"Summer Collection",[2141,2304,2202],{"class":2147},[2141,2306,2276],{"class":2147},[2141,2308,2310,2313,2315,2318,2320,2323,2325,2328],{"class":2143,"line":2309},10,[2141,2311,2312],{"class":2151},"    captions",[2141,2314,2266],{"class":2147},[2141,2316,2317],{"class":2187}," [",[2141,2319,2202],{"class":2147},[2141,2321,2322],{"class":2168},"@laioutr",[2141,2324,2202],{"class":2147},[2141,2326,2327],{"class":2187},"]",[2141,2329,2276],{"class":2147},[2141,2331,2333,2336,2338,2340,2343,2345],{"class":2143,"line":2332},11,[2141,2334,2335],{"class":2151},"    teaser",[2141,2337,2266],{"class":2147},[2141,2339,2197],{"class":2147},[2141,2341,2342],{"class":2168},"Linen, and rather a lot of it.",[2141,2344,2202],{"class":2147},[2141,2346,2276],{"class":2147},[2141,2348,2350,2353,2355,2357,2360,2362],{"class":2143,"line":2349},12,[2141,2351,2352],{"class":2151},"    detail",[2141,2354,2266],{"class":2147},[2141,2356,2197],{"class":2147},[2141,2358,2359],{"class":2168},"\u003Cp>The full story behind the collection…\u003C/p>",[2141,2361,2202],{"class":2147},[2141,2363,2276],{"class":2147},[2141,2365,2367],{"class":2143,"line":2366},13,[2141,2368,2369],{"class":2147},"  },\n",[2141,2371,2373,2375],{"class":2143,"line":2372},14,[2141,2374,2327],{"class":2187},[2141,2376,2205],{"class":2147},[2141,2378,2380,2383,2385],{"class":2143,"line":2379},15,[2141,2381,2382],{"class":2147},"\u003C/",[2141,2384,2152],{"class":2151},[2141,2386,2174],{"class":2147},[2141,2388,2390],{"class":2143,"line":2389},16,[2141,2391,2212],{"emptyLinePlaceholder":2211},[2141,2393,2395,2397,2400],{"class":2143,"line":2394},17,[2141,2396,2148],{"class":2147},[2141,2398,2399],{"class":2151},"template",[2141,2401,2174],{"class":2147},[2141,2403,2405,2408,2410,2413,2416,2418,2420,2423,2426,2429,2431,2434,2437,2439,2441],{"class":2143,"line":2404},18,[2141,2406,2407],{"class":2147},"  \u003C",[2141,2409,1655],{"class":2151},[2141,2411,2412],{"class":2147}," @",[2141,2414,2415],{"class":2155},"click",[2141,2417,2162],{"class":2147},[2141,2419,2165],{"class":2147},[2141,2421,2422],{"class":2187},"isOpen",[2141,2424,2425],{"class":2147}," = ",[2141,2427,2428],{"class":2232},"true",[2141,2430,2165],{"class":2147},[2141,2432,2433],{"class":2147},">",[2141,2435,2436],{"class":2187},"Open the feed",[2141,2438,2382],{"class":2147},[2141,2440,1655],{"class":2151},[2141,2442,2174],{"class":2147},[2141,2444,2446,2448,2450,2453,2456,2458,2460,2463,2465,2468,2470,2472,2475,2477,2480,2482,2485,2487,2489,2491,2493],{"class":2143,"line":2445},19,[2141,2447,2407],{"class":2147},[2141,2449,2126],{"class":2151},[2141,2451,2452],{"class":2147}," :",[2141,2454,2455],{"class":2155},"items",[2141,2457,2162],{"class":2147},[2141,2459,2165],{"class":2147},[2141,2461,2462],{"class":2187},"reels",[2141,2464,2165],{"class":2147},[2141,2466,2467],{"class":2155}," title",[2141,2469,2162],{"class":2147},[2141,2471,2165],{"class":2147},[2141,2473,2474],{"class":2168},"Reels",[2141,2476,2165],{"class":2147},[2141,2478,2479],{"class":2155}," v-model",[2141,2481,2266],{"class":2147},[2141,2483,2484],{"class":2155},"open",[2141,2486,2162],{"class":2147},[2141,2488,2165],{"class":2147},[2141,2490,2422],{"class":2187},[2141,2492,2165],{"class":2147},[2141,2494,2495],{"class":2147}," />\n",[2141,2497,2499,2501,2503],{"class":2143,"line":2498},20,[2141,2500,2382],{"class":2147},[2141,2502,2399],{"class":2151},[2141,2504,2174],{"class":2147},[2110,2506,2508],{"id":2507},"key-business-ux-benefits","Key Business & UX Benefits",[2510,2511,2512,2516,2519,2522],"ul",{},[2513,2514,2515],"li",{},"Puts merchandising inside a format visitors already know how to use, so the interaction needs no explanation.",[2513,2517,2518],{},"Every item is individually shareable through the URL, so a single clip can carry traffic back into the storefront rather than into a feed's first item.",[2513,2520,2521],{},"Action rails and calls to action are slots, so likes, saves, and add-to-cart run through your own queries and mutations instead of a shape the component imposes.",[2513,2523,2524],{},"Only the item in view loads and plays, so a long feed does not spend the visitor's data on clips they never reach.",[2110,2526,2527],{"id":2455},"Items",[2121,2529,2530],{},"An item is the unit a ui-app wrapper maps one of your entities into:",[2532,2533,2534,2546],"table",{},[2535,2536,2537],"thead",{},[2538,2539,2540,2543],"tr",{},[2541,2542,1663],"th",{},[2541,2544,2545],{},"Purpose",[2547,2548,2549,2560,2576,2586,2596,2613,2625,2635],"tbody",{},[2538,2550,2551,2557],{},[2552,2553,2554],"td",{},[2124,2555,2556],{},"id",[2552,2558,2559],{},"Stable identity, and the value the feed puts in the URL",[2538,2561,2562,2567],{},[2552,2563,2564],{},[2124,2565,2566],{},"media",[2552,2568,2569,2570,2575],{},"The ",[2571,2572,2573],"a",{"href":462},[2124,2574,461],{}," value — a video or an image",[2538,2577,2578,2583],{},[2552,2579,2580],{},[2124,2581,2582],{},"title",[2552,2584,2585],{},"Headline over the media",[2538,2587,2588,2593],{},[2552,2589,2590],{},[2124,2591,2592],{},"captions",[2552,2594,2595],{},"Small lines above the title, such as a handle or a date",[2538,2597,2598,2603],{},[2552,2599,2600],{},[2124,2601,2602],{},"badges",[2552,2604,2605,2606,2612],{},"Rendered as ",[2571,2607,2608,2611],{"href":1769},[2124,2609,2610],{},"glass-black"," badges",", legible over arbitrary media",[2538,2614,2615,2620],{},[2552,2616,2617],{},[2124,2618,2619],{},"features",[2552,2621,2605,2622,2611],{},[2124,2623,2624],{},"plain",[2538,2626,2627,2632],{},[2552,2628,2629],{},[2124,2630,2631],{},"teaser",[2552,2633,2634],{},"Short copy, truncated with a \"more\" affordance that opens the sheet",[2538,2636,2637,2642],{},[2552,2638,2639],{},[2124,2640,2641],{},"detail",[2552,2643,2644,2645],{},"The full body the sheet reveals — a string or an ",[2124,2646,2647],{},"HtmlFragment",[2121,2649,2650],{},"Images and videos mix freely in one feed. An image has nothing to pause, so it carries no playback affordance; a video carries one over the whole backdrop.",[2110,2652,2654],{"id":2653},"two-ways-to-drive-it","Two ways to drive it",[2656,2657,2659],"h3",{"id":2658},"from-props","From props",[2121,2661,2662,2663,2665,2666,2669],{},"Pass ",[2124,2664,2455],{}," and bind ",[2124,2667,2668],{},"v-model:open",". The feed owns nothing globally, which suits a page that already has the items in hand.",[2656,2671,2673],{"id":2672},"from-the-store","From the store",[2121,2675,2676,2677,2679,2680,2683],{},"Leave ",[2124,2678,2455],{}," off and drive it from anywhere on the page with ",[2124,2681,2682],{},"useMediaFeedStore()",". This is the mode for a tile in a slider or a card in a grid opening a feed that lives elsewhere in the tree:",[2132,2685,2688],{"className":2686,"code":2687,"language":2169,"meta":2137,"style":2137},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","const { openFeed, setItems } = useMediaFeedStore();\n\n// Seed on mount, so a shared link resolves before anyone has opened the feed.\nsetItems(reels);\n\n// A tile opens at a position or at an item id.\nopenFeed(reels, 'summer-collection');\n",[2124,2689,2690,2719,2723,2729,2739,2743,2748],{"__ignoreMap":2137},[2141,2691,2692,2694,2696,2699,2702,2705,2708,2711,2714,2717],{"class":2143,"line":2144},[2141,2693,2218],{"class":2155},[2141,2695,2184],{"class":2147},[2141,2697,2698],{"class":2187}," openFeed",[2141,2700,2701],{"class":2147},",",[2141,2703,2704],{"class":2187}," setItems ",[2141,2706,2707],{"class":2147},"}",[2141,2709,2710],{"class":2147}," =",[2141,2712,2713],{"class":2226}," useMediaFeedStore",[2141,2715,2716],{"class":2187},"()",[2141,2718,2205],{"class":2147},[2141,2720,2721],{"class":2143,"line":2177},[2141,2722,2212],{"emptyLinePlaceholder":2211},[2141,2724,2725],{"class":2143,"line":2208},[2141,2726,2728],{"class":2727},"sHwdD","// Seed on mount, so a shared link resolves before anyone has opened the feed.\n",[2141,2730,2731,2734,2737],{"class":2143,"line":2215},[2141,2732,2733],{"class":2226},"setItems",[2141,2735,2736],{"class":2187},"(reels)",[2141,2738,2205],{"class":2147},[2141,2740,2741],{"class":2143,"line":2241},[2141,2742,2212],{"emptyLinePlaceholder":2211},[2141,2744,2745],{"class":2143,"line":2254},[2141,2746,2747],{"class":2727},"// A tile opens at a position or at an item id.\n",[2141,2749,2750,2753,2756,2758,2760,2762,2764,2766],{"class":2143,"line":2260},[2141,2751,2752],{"class":2226},"openFeed",[2141,2754,2755],{"class":2187},"(reels",[2141,2757,2701],{"class":2147},[2141,2759,2197],{"class":2147},[2141,2761,2271],{"class":2168},[2141,2763,2202],{"class":2147},[2141,2765,2236],{"class":2187},[2141,2767,2205],{"class":2147},[2121,2769,2770,2771,2773,2774,2776,2777,2780,2781,2773,2783,2776,2785,2788],{},"The store exposes ",[2124,2772,2455],{},", ",[2124,2775,2422],{},", and ",[2124,2778,2779],{},"activeIndex"," as refs, plus ",[2124,2782,2733],{},[2124,2784,2752],{},[2124,2786,2787],{},"closeFeed",". Items outlive a close on purpose — the URL parameter still has to resolve against them afterwards.",[2121,2790,2791,2792,2794],{},"Supplying ",[2124,2793,2455],{}," switches the feed to props mode entirely; it then ignores the store rather than merging with it.",[2110,2796,2798],{"id":2797},"sound","Sound",[2121,2800,2801,2802,2805],{},"Browsers only permit autoplay while the media is muted, so the feed starts silent. The top bar carries a mute toggle back to sound, bound to ",[2124,2803,2804],{},"v-model:muted",", and it is left out when no item in the set is a video — a control that cannot do anything is worse than no control.",[2132,2807,2809],{"className":2134,"code":2808,"language":2136,"meta":2137,"style":2137},"\u003Ctemplate>\n  \u003CMediaFeed :items=\"reels\" v-model:open=\"isOpen\" v-model:muted=\"muted\" />\n\u003C/template>\n",[2124,2810,2811,2819,2868],{"__ignoreMap":2137},[2141,2812,2813,2815,2817],{"class":2143,"line":2144},[2141,2814,2148],{"class":2147},[2141,2816,2399],{"class":2151},[2141,2818,2174],{"class":2147},[2141,2820,2821,2823,2825,2827,2829,2831,2833,2835,2837,2839,2841,2843,2845,2847,2849,2851,2853,2855,2858,2860,2862,2864,2866],{"class":2143,"line":2177},[2141,2822,2407],{"class":2147},[2141,2824,2126],{"class":2151},[2141,2826,2452],{"class":2147},[2141,2828,2455],{"class":2155},[2141,2830,2162],{"class":2147},[2141,2832,2165],{"class":2147},[2141,2834,2462],{"class":2187},[2141,2836,2165],{"class":2147},[2141,2838,2479],{"class":2155},[2141,2840,2266],{"class":2147},[2141,2842,2484],{"class":2155},[2141,2844,2162],{"class":2147},[2141,2846,2165],{"class":2147},[2141,2848,2422],{"class":2187},[2141,2850,2165],{"class":2147},[2141,2852,2479],{"class":2155},[2141,2854,2266],{"class":2147},[2141,2856,2857],{"class":2155},"muted",[2141,2859,2162],{"class":2147},[2141,2861,2165],{"class":2147},[2141,2863,2857],{"class":2187},[2141,2865,2165],{"class":2147},[2141,2867,2495],{"class":2147},[2141,2869,2870,2872,2874],{"class":2143,"line":2208},[2141,2871,2382],{"class":2147},[2141,2873,2399],{"class":2151},[2141,2875,2174],{"class":2147},[2121,2877,2878,2879,2882],{},"Replace the control through the ",[2124,2880,2881],{},"top-bar-end"," slot if it belongs somewhere else in your chrome.",[2110,2884,2886],{"id":2885},"sharing-and-the-back-button","Sharing and the back button",[2121,2888,2889,2890,2893],{},"Set ",[2124,2891,2892],{},"urlParam"," and the item in view syncs to a query parameter:",[2132,2895,2897],{"className":2134,"code":2896,"language":2136,"meta":2137,"style":2137},"\u003Ctemplate>\n  \u003CMediaFeed :items=\"reels\" url-param=\"reel\" v-model:open=\"isOpen\" />\n\u003C/template>\n",[2124,2898,2899,2907,2953],{"__ignoreMap":2137},[2141,2900,2901,2903,2905],{"class":2143,"line":2144},[2141,2902,2148],{"class":2147},[2141,2904,2399],{"class":2151},[2141,2906,2174],{"class":2147},[2141,2908,2909,2911,2913,2915,2917,2919,2921,2923,2925,2928,2930,2932,2935,2937,2939,2941,2943,2945,2947,2949,2951],{"class":2143,"line":2177},[2141,2910,2407],{"class":2147},[2141,2912,2126],{"class":2151},[2141,2914,2452],{"class":2147},[2141,2916,2455],{"class":2155},[2141,2918,2162],{"class":2147},[2141,2920,2165],{"class":2147},[2141,2922,2462],{"class":2187},[2141,2924,2165],{"class":2147},[2141,2926,2927],{"class":2155}," url-param",[2141,2929,2162],{"class":2147},[2141,2931,2165],{"class":2147},[2141,2933,2934],{"class":2168},"reel",[2141,2936,2165],{"class":2147},[2141,2938,2479],{"class":2155},[2141,2940,2266],{"class":2147},[2141,2942,2484],{"class":2155},[2141,2944,2162],{"class":2147},[2141,2946,2165],{"class":2147},[2141,2948,2422],{"class":2187},[2141,2950,2165],{"class":2147},[2141,2952,2495],{"class":2147},[2141,2954,2955,2957,2959],{"class":2143,"line":2208},[2141,2956,2382],{"class":2147},[2141,2958,2399],{"class":2151},[2141,2960,2174],{"class":2147},[2121,2962,2963,2964,2967],{},"The feed then puts ",[2124,2965,2966],{},"?reel=\u003Cid>"," in the address bar. Opening pushes one history entry and moving between items replaces it, so the back button closes the feed rather than walking the visitor back through every item they scrolled past — and rather than leaving the page altogether.",[2121,2969,2970],{},"The parameter carries the item id, not its position, so a shared link survives the feed being reordered. A parameter whose id the current set cannot resolve is left in the address bar untouched and retried as the set changes, so items that arrive after the page does still open at the right one.",[2121,2972,2973,2974,2980],{},"This is ",[2571,2975,2977],{"href":2976},"#useoverlayhistory",[2124,2978,2979],{},"useOverlayHistory"," underneath, and it is available for your own overlays.",[2110,2982,2984],{"id":2983},"slots","Slots",[2532,2986,2987,3000],{},[2535,2988,2989],{},[2538,2990,2991,2994,2997],{},[2541,2992,2993],{},"Slot",[2541,2995,2996],{},"Scope",[2541,2998,2999],{},"For",[2547,3001,3002,3023,3041,3058,3071],{},[2538,3003,3004,3009,3020],{},[2552,3005,3006],{},[2124,3007,3008],{},"actions",[2552,3010,3011,2773,3014,2773,3017],{},[2124,3012,3013],{},"item",[2124,3015,3016],{},"index",[2124,3018,3019],{},"active",[2552,3021,3022],{},"The rail down the right of each item",[2538,3024,3025,3030,3038],{},[2552,3026,3027],{},[2124,3028,3029],{},"cta",[2552,3031,3032,2773,3034,2773,3036],{},[2124,3033,3013],{},[2124,3035,3016],{},[2124,3037,3019],{},[2552,3039,3040],{},"The call to action under the item's copy",[2538,3042,3043,3048,3052],{},[2552,3044,3045],{},[2124,3046,3047],{},"sheet",[2552,3049,3050],{},[2124,3051,3013],{},[2552,3053,3054,3055,3057],{},"Replaces the rendered ",[2124,3056,2641],{}," in the read-more sheet",[2538,3059,3060,3065,3068],{},[2552,3061,3062],{},[2124,3063,3064],{},"top-bar-start",[2552,3066,3067],{},"—",[2552,3069,3070],{},"Replaces the close button",[2538,3072,3073,3077,3079],{},[2552,3074,3075],{},[2124,3076,2881],{},[2552,3078,3067],{},[2552,3080,3081],{},"Replaces the mute toggle",[2121,3083,3084,3085,3087],{},"The rail and the call to action are slots rather than item fields because favourite state, counts, and cart behaviour come from your own queries and mutations. ",[2124,3086,3019],{}," tells you whether the item is the one in view, which is what a pulsing call to action should key off:",[2132,3089,3091],{"className":2134,"code":3090,"language":2136,"meta":2137,"style":2137},"\u003Ctemplate>\n  \u003CMediaFeed :items=\"reels\" v-model:open=\"isOpen\">\n    \u003Ctemplate #actions=\"{ item }\">\n      \u003CMediaFeedIconButton\n        label=\"Like\"\n        icon=\"essentials/heart-outline\"\n        :caption=\"likeCounts[item.id]\"\n        :active=\"!!liked[item.id]\"\n        @click=\"toggleLike(item.id)\"\n      >\n        \u003Ctemplate #icon>\n          \u003CAnimatedIcon\n            icon=\"essentials/heart-outline\"\n            active-icon=\"essentials/heart-filled\"\n            :active=\"!!liked[item.id]\"\n          />\n        \u003C/template>\n      \u003C/MediaFeedIconButton>\n    \u003C/template>\n\n    \u003Ctemplate #cta=\"{ active }\">\n      \u003CAnimatedButton :paused=\"!active\">Shop the look\u003C/AnimatedButton>\n    \u003C/template>\n  \u003C/MediaFeed>\n\u003C/template>\n",[2124,3092,3093,3101,3135,3163,3171,3186,3200,3229,3257,3283,3288,3302,3310,3323,3337,3364,3369,3378,3388,3397,3401,3427,3462,3471,3481],{"__ignoreMap":2137},[2141,3094,3095,3097,3099],{"class":2143,"line":2144},[2141,3096,2148],{"class":2147},[2141,3098,2399],{"class":2151},[2141,3100,2174],{"class":2147},[2141,3102,3103,3105,3107,3109,3111,3113,3115,3117,3119,3121,3123,3125,3127,3129,3131,3133],{"class":2143,"line":2177},[2141,3104,2407],{"class":2147},[2141,3106,2126],{"class":2151},[2141,3108,2452],{"class":2147},[2141,3110,2455],{"class":2155},[2141,3112,2162],{"class":2147},[2141,3114,2165],{"class":2147},[2141,3116,2462],{"class":2187},[2141,3118,2165],{"class":2147},[2141,3120,2479],{"class":2155},[2141,3122,2266],{"class":2147},[2141,3124,2484],{"class":2155},[2141,3126,2162],{"class":2147},[2141,3128,2165],{"class":2147},[2141,3130,2422],{"class":2187},[2141,3132,2165],{"class":2147},[2141,3134,2174],{"class":2147},[2141,3136,3137,3140,3142,3145,3147,3149,3151,3154,3157,3159,3161],{"class":2143,"line":2208},[2141,3138,3139],{"class":2147},"    \u003C",[2141,3141,2399],{"class":2151},[2141,3143,3144],{"class":2147}," #",[2141,3146,3008],{"class":2155},[2141,3148,2162],{"class":2147},[2141,3150,2165],{"class":2147},[2141,3152,3153],{"class":2147},"{",[2141,3155,3156],{"class":2187}," item ",[2141,3158,2707],{"class":2147},[2141,3160,2165],{"class":2147},[2141,3162,2174],{"class":2147},[2141,3164,3165,3168],{"class":2143,"line":2215},[2141,3166,3167],{"class":2147},"      \u003C",[2141,3169,3170],{"class":2151},"MediaFeedIconButton\n",[2141,3172,3173,3176,3178,3180,3183],{"class":2143,"line":2241},[2141,3174,3175],{"class":2155},"        label",[2141,3177,2162],{"class":2147},[2141,3179,2165],{"class":2147},[2141,3181,3182],{"class":2168},"Like",[2141,3184,3185],{"class":2147},"\"\n",[2141,3187,3188,3191,3193,3195,3198],{"class":2143,"line":2254},[2141,3189,3190],{"class":2155},"        icon",[2141,3192,2162],{"class":2147},[2141,3194,2165],{"class":2147},[2141,3196,3197],{"class":2168},"essentials/heart-outline",[2141,3199,3185],{"class":2147},[2141,3201,3202,3205,3208,3210,3212,3215,3218,3220,3223,3225,3227],{"class":2143,"line":2260},[2141,3203,3204],{"class":2147},"        :",[2141,3206,3207],{"class":2155},"caption",[2141,3209,2162],{"class":2147},[2141,3211,2165],{"class":2147},[2141,3213,3214],{"class":2187},"likeCounts",[2141,3216,3217],{"class":2147},"[",[2141,3219,3013],{"class":2187},[2141,3221,3222],{"class":2147},".",[2141,3224,2556],{"class":2187},[2141,3226,2327],{"class":2147},[2141,3228,3185],{"class":2147},[2141,3230,3231,3233,3235,3237,3239,3242,3245,3247,3249,3251,3253,3255],{"class":2143,"line":2279},[2141,3232,3204],{"class":2147},[2141,3234,3019],{"class":2155},[2141,3236,2162],{"class":2147},[2141,3238,2165],{"class":2147},[2141,3240,3241],{"class":2147},"!!",[2141,3243,3244],{"class":2187},"liked",[2141,3246,3217],{"class":2147},[2141,3248,3013],{"class":2187},[2141,3250,3222],{"class":2147},[2141,3252,2556],{"class":2187},[2141,3254,2327],{"class":2147},[2141,3256,3185],{"class":2147},[2141,3258,3259,3262,3264,3266,3268,3271,3273,3275,3277,3279,3281],{"class":2143,"line":2292},[2141,3260,3261],{"class":2147},"        @",[2141,3263,2415],{"class":2155},[2141,3265,2162],{"class":2147},[2141,3267,2165],{"class":2147},[2141,3269,3270],{"class":2226},"toggleLike",[2141,3272,2229],{"class":2147},[2141,3274,3013],{"class":2187},[2141,3276,3222],{"class":2147},[2141,3278,2556],{"class":2187},[2141,3280,2236],{"class":2147},[2141,3282,3185],{"class":2147},[2141,3284,3285],{"class":2143,"line":2309},[2141,3286,3287],{"class":2147},"      >\n",[2141,3289,3290,3293,3295,3297,3300],{"class":2143,"line":2332},[2141,3291,3292],{"class":2147},"        \u003C",[2141,3294,2399],{"class":2151},[2141,3296,3144],{"class":2147},[2141,3298,3299],{"class":2155},"icon",[2141,3301,2174],{"class":2147},[2141,3303,3304,3307],{"class":2143,"line":2349},[2141,3305,3306],{"class":2147},"          \u003C",[2141,3308,3309],{"class":2151},"AnimatedIcon\n",[2141,3311,3312,3315,3317,3319,3321],{"class":2143,"line":2366},[2141,3313,3314],{"class":2155},"            icon",[2141,3316,2162],{"class":2147},[2141,3318,2165],{"class":2147},[2141,3320,3197],{"class":2168},[2141,3322,3185],{"class":2147},[2141,3324,3325,3328,3330,3332,3335],{"class":2143,"line":2372},[2141,3326,3327],{"class":2155},"            active-icon",[2141,3329,2162],{"class":2147},[2141,3331,2165],{"class":2147},[2141,3333,3334],{"class":2168},"essentials/heart-filled",[2141,3336,3185],{"class":2147},[2141,3338,3339,3342,3344,3346,3348,3350,3352,3354,3356,3358,3360,3362],{"class":2143,"line":2379},[2141,3340,3341],{"class":2147},"            :",[2141,3343,3019],{"class":2155},[2141,3345,2162],{"class":2147},[2141,3347,2165],{"class":2147},[2141,3349,3241],{"class":2147},[2141,3351,3244],{"class":2187},[2141,3353,3217],{"class":2147},[2141,3355,3013],{"class":2187},[2141,3357,3222],{"class":2147},[2141,3359,2556],{"class":2187},[2141,3361,2327],{"class":2147},[2141,3363,3185],{"class":2147},[2141,3365,3366],{"class":2143,"line":2389},[2141,3367,3368],{"class":2147},"          />\n",[2141,3370,3371,3374,3376],{"class":2143,"line":2394},[2141,3372,3373],{"class":2147},"        \u003C/",[2141,3375,2399],{"class":2151},[2141,3377,2174],{"class":2147},[2141,3379,3380,3383,3386],{"class":2143,"line":2404},[2141,3381,3382],{"class":2147},"      \u003C/",[2141,3384,3385],{"class":2151},"MediaFeedIconButton",[2141,3387,2174],{"class":2147},[2141,3389,3390,3393,3395],{"class":2143,"line":2445},[2141,3391,3392],{"class":2147},"    \u003C/",[2141,3394,2399],{"class":2151},[2141,3396,2174],{"class":2147},[2141,3398,3399],{"class":2143,"line":2498},[2141,3400,2212],{"emptyLinePlaceholder":2211},[2141,3402,3404,3406,3408,3410,3412,3414,3416,3418,3421,3423,3425],{"class":2143,"line":3403},21,[2141,3405,3139],{"class":2147},[2141,3407,2399],{"class":2151},[2141,3409,3144],{"class":2147},[2141,3411,3029],{"class":2155},[2141,3413,2162],{"class":2147},[2141,3415,2165],{"class":2147},[2141,3417,3153],{"class":2147},[2141,3419,3420],{"class":2187}," active ",[2141,3422,2707],{"class":2147},[2141,3424,2165],{"class":2147},[2141,3426,2174],{"class":2147},[2141,3428,3430,3432,3435,3437,3440,3442,3444,3447,3449,3451,3453,3456,3458,3460],{"class":2143,"line":3429},22,[2141,3431,3167],{"class":2147},[2141,3433,3434],{"class":2151},"AnimatedButton",[2141,3436,2452],{"class":2147},[2141,3438,3439],{"class":2155},"paused",[2141,3441,2162],{"class":2147},[2141,3443,2165],{"class":2147},[2141,3445,3446],{"class":2147},"!",[2141,3448,3019],{"class":2187},[2141,3450,2165],{"class":2147},[2141,3452,2433],{"class":2147},[2141,3454,3455],{"class":2187},"Shop the look",[2141,3457,2382],{"class":2147},[2141,3459,3434],{"class":2151},[2141,3461,2174],{"class":2147},[2141,3463,3465,3467,3469],{"class":2143,"line":3464},23,[2141,3466,3392],{"class":2147},[2141,3468,2399],{"class":2151},[2141,3470,2174],{"class":2147},[2141,3472,3474,3477,3479],{"class":2143,"line":3473},24,[2141,3475,3476],{"class":2147},"  \u003C/",[2141,3478,2126],{"class":2151},[2141,3480,2174],{"class":2147},[2141,3482,3484,3486,3488],{"class":2143,"line":3483},25,[2141,3485,2382],{"class":2147},[2141,3487,2399],{"class":2151},[2141,3489,2174],{"class":2147},[2121,3491,3492,3493,3495,3496,3501,3502,3505],{},"A numeric ",[2124,3494,3207],{}," on ",[2571,3497,3499],{"href":3498},"#the-compound-parts",[2124,3500,3385],{}," formats compactly for the locale, so a like count arrives as ",[2124,3503,3504],{},"1.2K"," in English without the call site formatting it.",[2110,3507,1951],{"id":3508},"navigation",[2121,3510,3511],{},"The feed is a scroller, so the visitor's own scroll, swipe, or trackpad gesture is the primary way through it — snapping is the browser's. On top of that:",[2510,3513,3514,3517],{},[2513,3515,3516],{},"Arrow up and arrow down move one item.",[2513,3518,3519,3520,3523,3524,3527,3528,3222],{},"Desktop gets previous and next buttons plus a pagination indicator. Turn the indicator off with ",[2124,3521,3522],{},":show-pagination=\"false\"",", and swap the arrows with ",[2124,3525,3526],{},"prevIcon"," and ",[2124,3529,3530],{},"nextIcon",[2121,3532,3533],{},"All three inputs resolve through the same snap, so the item in view is decided in one place rather than three.",[2110,3535,3537],{"id":3536},"accessibility","Accessibility",[2121,3539,3540,3541,3544,3545,3548],{},"Only the item in view is interactive. Every other item is ",[2124,3542,3543],{},"inert",", so tab never reaches a control that is off screen, and assistive technology is not offered five items' worth of buttons at once. Each item carries ",[2124,3546,3547],{},"data-state=\"active\" | \"inactive\""," for styling and for querying in tests.",[2121,3550,3551,3552,3554,3555,3558],{},"The feed is a modal dialog with a visually hidden title, falling back to a localized label when no ",[2124,3553,2582],{}," is set. Video items expose the whole backdrop as the play/pause control, with the glass button over it marked ",[2124,3556,3557],{},"aria-hidden"," so the same action is not two tab stops.",[2110,3560,3562],{"id":3561},"the-compound-parts","The compound parts",[2121,3564,3565],{},"The pieces are exported so a bespoke feed can compose them directly rather than replacing the whole component:",[2532,3567,3568,3578],{},[2535,3569,3570],{},[2538,3571,3572,3575],{},[2541,3573,3574],{},"Component",[2541,3576,3577],{},"Role",[2547,3579,3580,3590,3600,3612,3622,3632,3642],{},[2538,3581,3582,3587],{},[2552,3583,3584],{},[2124,3585,3586],{},"MediaFeedItem",[2552,3588,3589],{},"One full-viewport item: media, gradient, playback affordance, information, rail",[2538,3591,3592,3597],{},[2552,3593,3594],{},[2124,3595,3596],{},"MediaFeedItemInformation",[2552,3598,3599],{},"The captions, title, badges, features, and teaser stack",[2538,3601,3602,3606],{},[2552,3603,3604],{},[2124,3605,3385],{},[2552,3607,3608,3609],{},"A rail button — icon, optional caption, ",[2124,3610,3611],{},"aria-pressed",[2538,3613,3614,3619],{},[2552,3615,3616],{},[2124,3617,3618],{},"MediaFeedTopBar",[2552,3620,3621],{},"The floating bar with start, centre, and end regions",[2538,3623,3624,3629],{},[2552,3625,3626],{},[2124,3627,3628],{},"MediaFeedDesktopNavigation",[2552,3630,3631],{},"Previous/next arrows and the pagination indicator",[2538,3633,3634,3639],{},[2552,3635,3636],{},[2124,3637,3638],{},"MediaFeedDisclosureTeaser",[2552,3640,3641],{},"Truncated teaser copy with the \"more\" affordance",[2538,3643,3644,3649],{},[2552,3645,3646],{},[2124,3647,3648],{},"MediaFeedOffCanvasSheet",[2552,3650,3651],{},"The read-more sheet",[2110,3653,2979],{"id":3654},"useoverlayhistory",[2115,3656],{"changelog":2117,"packages":3657,"version":2119},"@laioutr-core/ui-kit",[2121,3659,3660,3662,3663,3665],{},[2124,3661,2979],{}," is the composable behind the URL sync. ",[2124,3664,2126],{}," uses it internally, but it is a UI Kit composable and works for any overlay that has an open state and a current item — a lightbox, a cart drawer, a product quick-view.",[2132,3667,3669],{"className":2686,"code":3668,"language":2169,"meta":2137,"style":2137},"function useOverlayHistory(options: {\n  param: MaybeRefOrGetter\u003Cstring | undefined>;\n  open: Ref\u003Cboolean>;\n  value: Ref\u003Cstring | undefined>;\n  paused?: Ref\u003Cboolean>;\n  throttleMs?: number;\n}): void;\n",[2124,3670,3671,3690,3715,3732,3751,3767,3779],{"__ignoreMap":2137},[2141,3672,3673,3676,3679,3681,3685,3687],{"class":2143,"line":2144},[2141,3674,3675],{"class":2155},"function",[2141,3677,3678],{"class":2226}," useOverlayHistory",[2141,3680,2229],{"class":2147},[2141,3682,3684],{"class":3683},"sHdIc","options",[2141,3686,2266],{"class":2147},[2141,3688,3689],{"class":2147}," {\n",[2141,3691,3692,3695,3697,3701,3703,3706,3709,3712],{"class":2143,"line":2177},[2141,3693,3694],{"class":2151},"  param",[2141,3696,2266],{"class":2147},[2141,3698,3700],{"class":3699},"sBMFI"," MaybeRefOrGetter",[2141,3702,2148],{"class":2147},[2141,3704,3705],{"class":3699},"string",[2141,3707,3708],{"class":2147}," |",[2141,3710,3711],{"class":3699}," undefined",[2141,3713,3714],{"class":2147},">;\n",[2141,3716,3717,3720,3722,3725,3727,3730],{"class":2143,"line":2208},[2141,3718,3719],{"class":2151},"  open",[2141,3721,2266],{"class":2147},[2141,3723,3724],{"class":3699}," Ref",[2141,3726,2148],{"class":2147},[2141,3728,3729],{"class":3699},"boolean",[2141,3731,3714],{"class":2147},[2141,3733,3734,3737,3739,3741,3743,3745,3747,3749],{"class":2143,"line":2215},[2141,3735,3736],{"class":2151},"  value",[2141,3738,2266],{"class":2147},[2141,3740,3724],{"class":3699},[2141,3742,2148],{"class":2147},[2141,3744,3705],{"class":3699},[2141,3746,3708],{"class":2147},[2141,3748,3711],{"class":3699},[2141,3750,3714],{"class":2147},[2141,3752,3753,3756,3759,3761,3763,3765],{"class":2143,"line":2241},[2141,3754,3755],{"class":2151},"  paused",[2141,3757,3758],{"class":2147},"?:",[2141,3760,3724],{"class":3699},[2141,3762,2148],{"class":2147},[2141,3764,3729],{"class":3699},[2141,3766,3714],{"class":2147},[2141,3768,3769,3772,3774,3777],{"class":2143,"line":2254},[2141,3770,3771],{"class":2151},"  throttleMs",[2141,3773,3758],{"class":2147},[2141,3775,3776],{"class":3699}," number",[2141,3778,2205],{"class":2147},[2141,3780,3781,3784,3787],{"class":2143,"line":2260},[2141,3782,3783],{"class":2147},"}):",[2141,3785,3786],{"class":3699}," void",[2141,3788,2205],{"class":2147},[2510,3790,3791,3807,3814,3822,3829],{},[2513,3792,3793,3799,3800,3802,3803,3806],{},[3794,3795,3796],"strong",{},[2124,3797,3798],{},"param"," — the query parameter to own, such as ",[2124,3801,2934],{},". Inert while ",[2124,3804,3805],{},"undefined",", because a composable cannot be called conditionally — this is how an opt-in feature stays opt-in.",[2513,3808,3809,3813],{},[3794,3810,3811],{},[2124,3812,2484],{}," — the overlay's open state. Writable: a back navigation closes the overlay through it.",[2513,3815,3816,3821],{},[3794,3817,3818],{},[2124,3819,3820],{},"value"," — the stable id of the item in view. Writable: a deep link and a back/forward drive it from the URL.",[2513,3823,3824,3828],{},[3794,3825,3826],{},[2124,3827,3439],{}," — suspends writes while a drag or transition is in flight, so a scroll does not write an entry per item it passes.",[2513,3830,3831,3836],{},[3794,3832,3833],{},[2124,3834,3835],{},"throttleMs"," — throttle for item changes, defaulting to 150ms. Opening is never throttled.",[2121,3838,3839],{},"Opening pushes one history entry; each item change replaces it. So back closes the overlay rather than stepping through its history. A value the consumer cannot resolve reads as \"closed\" and is left in the address bar untouched, so an item set that loads late still opens at the right item.",[2121,3841,3842],{},"One overlay at a time may own a given parameter — a second on the same parameter would pop the first one's entry on close and send the visitor a page back instead of up a level. Overlays on different parameters run independently.",[2110,3844,3846],{"id":3845},"feature-list","Feature List",[2619,3848],{":items":3849},"[\"Full-screen vertical feed with scroll-snap, one item to a viewport, in the TikTok and Reels pattern\",\"Only the item in view plays; the rest are paused and rewound, so a clip scrolled back to starts from the beginning\",\"Drive it from props (`items` plus `v-model:open`) or from anywhere on the page with `useMediaFeedStore()`\",\"Videos and images mix in one feed; video items carry a play/pause affordance over the whole backdrop, image items carry none\",\"Starts muted because browsers require it, with a mute toggle in the top bar that is omitted when no item is a video\",\"`urlParam` syncs the item in view to a query parameter by id, so a link is shareable and the back button closes the feed\",\"Action rail and call to action are scoped slots carrying `item`, `index`, and `active`, so favourites and counts come from your own queries\",\"Off-screen items are `inert` and every item exposes `data-state=\\\"active\\\" | \\\"inactive\\\"`\",\"Read-more sheet holds the long copy, rendered once at feed level from the active item rather than once per item\",\"Keyboard arrows, desktop previous/next buttons, and a pagination indicator, all resolving through the same snap\",\"Compound parts exported for bespoke composition\"]",[2110,3851,324],{"id":3852},"api-reference",[2656,3854,2126],{"id":3855},"mediafeed",[3857,3858],"component-meta",{":name":2126},[2656,3860,3586],{"id":3861},"mediafeeditem",[3857,3863],{":name":3586},[2656,3865,3385],{"id":3866},"mediafeediconbutton",[3857,3868],{":name":3385},[2656,3870,3596],{"id":3871},"mediafeediteminformation",[3857,3873],{":name":3596},[3875,3876,3877],"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 .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 .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 pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}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 .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}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}",{"title":2137,"searchDepth":2177,"depth":2177,"links":3879},[3880,3881,3882,3883,3887,3888,3889,3890,3891,3892,3893,3894,3895,3901],{"id":2112,"depth":2177,"text":2113},{"id":2507,"depth":2177,"text":2508},{"id":2455,"depth":2177,"text":2527},{"id":2653,"depth":2177,"text":2654,"children":3884},[3885,3886],{"id":2658,"depth":2208,"text":2659},{"id":2672,"depth":2208,"text":2673},{"id":2797,"depth":2177,"text":2798},{"id":2885,"depth":2177,"text":2886},{"id":2983,"depth":2177,"text":2984},{"id":3508,"depth":2177,"text":1951},{"id":3536,"depth":2177,"text":3537},{"id":3561,"depth":2177,"text":3562},{"id":3654,"depth":2177,"text":2979},{"id":3845,"depth":2177,"text":3846},{"id":3852,"depth":2177,"text":324,"children":3896},[3897,3898,3899,3900],{"id":3855,"depth":2208,"text":2126},{"id":3861,"depth":2208,"text":3586},{"id":3866,"depth":2208,"text":3385},{"id":3871,"depth":2208,"text":3596},{"id":3902,"text":1875,"depth":2177},"changelog",[2126],"A full-screen vertical media feed in the TikTok and Reels pattern — scroll-snap, one item playing at a time, an action rail, a mute toggle, and a read-more sheet.","md",[],{},{"name":2126,"base":3909,"defaultStory":3910,"height":3911},"growth-kit-publishers-media-features-mediafeed","default","640px",{"title":1217,"description":3913},"A full-screen vertical media feed in the TikTok and Reels pattern, with scroll-snap, one item playing at a time, an action rail, a mute toggle, and a shareable URL.",{"loc":1218,"lastmod":3915,"changefreq":3916,"priority":2144},"2026-08-13","monthly","5Cl1JBfmpVhxqU0JbrtLJ0W174VlBCHlob3CNF3GZwc",[3919,3921],{"title":1211,"path":1212,"stem":1213,"description":3920,"children":-1},"Components for publishers, media brands, and content-led retailers — the short-form feed and reel formats audiences already know from social apps, wired to your own content and catalogue.",{"title":1221,"path":1222,"stem":1223,"description":3922,"children":-1},"The SaaS package provides ready-made UI patterns for subscription pricing pages, including plan cards, pricing grids, and feature comparison tables.",{"id":3924,"extension":3925,"meta":3926,"stem":3902,"__hash__":4042},"changelog/changelog.yml","yml",{"AlphabeticalIndex":3927,"AnimatedButton":3937,"AnimatedIcon":3941,"ArticleDetail":3944,"Badge":3950,"BasicTable":3953,"BannerBasic":3958,"BannerIntegrated":3961,"BannerShowcase":3964,"CouponBox":3967,"EmailInputForm":3970,"GridFill":3973,"Input":3976,"LocationFinder":3979,"Media":3982,"MediaLibrary":3996,"MediaComponent":4004,"MediaFeed":4013,"MediaText":4016,"MegaMenu":4019,"MenuSideBySide":4022,"NavigationMenuTextItem":4025,"SectionGlossaryDetail":4028,"SchemaCondition":4031,"TableOpeningHours":4035,"TableProductSpecifications":4039},[3928,3932],{"version":3929,"type":3930,"changelog":2117,"note":3931},"2.4.0","fixed","Group content is now top-aligned (`align-items: flex-start` instead of `center`), so columns of uneven height line up along their top edge.",{"version":3933,"type":3934,"breaking":2211,"changelog":2117,"note":3935,"migration":3936},"2.3.0","changed","Renamed from `BrandList` and generalized beyond brands — pass any `items` and a `heading` instead of `brands`.","Import from the new component, rename the `brands` prop to `items`, and\npass `heading` explicitly — the old built-in `\"Brands\"` translation no\nlonger renders automatically.\n\n```ts\n// Before\ninterface BrandListProps {\n  brands: { name: string; href: string; count?: number }[];\n}\n\n// After\ninterface AlphabeticalIndexProps {\n  heading?: string;\n  items: { name: string; href: string; count?: number }[];\n}\n```\n",[3938],{"version":2119,"type":3939,"changelog":2117,"note":3940},"added","New component. A `Button` that pulses on a two-second loop, for the single call to action on a media-heavy screen that has to be found before it is read. Takes every `Button` prop and forwards it. The pulse pauses on hover, under `prefers-reduced-motion`, and via the `paused` prop. See [Animated Button](/laioutr-ui/ui-kit/form/animated-button).",[3942],{"version":2119,"type":3939,"changelog":2117,"note":3943},"New component. An icon reflecting a parent-owned `active` boolean: on the false to true transition the two artworks cross-fade while three copies of the active one fly up and outwards. Motion is sized in multiples of the icon box, so it holds at every `size`, and `--animated-icon-active-color` colours the active artwork and its burst. See [Animated Icon](/laioutr-ui/ui-kit/general/animated-icon).",[3945,3948],{"version":3929,"type":3934,"breaking":2211,"changelog":2117,"note":3946,"migration":3947},"`BlogPostDetail` was renamed to `ArticleDetail` and promoted to the shared reading view behind both the Blog Post and Glossary sections. There is no backwards-compatible alias.","Update imports and template tags.\n\n```diff\n- import BlogPostDetail from '#ui/components/BlogPostDetail/BlogPostDetail.vue';\n+ import ArticleDetail from '#ui/components/ArticleDetail/ArticleDetail.vue';\n\n- \u003CLBlogPostDetail :title :media :body />\n+ \u003CLArticleDetail :title :media :body />\n```\n",{"version":3929,"type":3939,"changelog":2117,"note":3949},"New optional `showSocialShare` prop (default `false`) toggles the trailing `SocialShare` row. `SectionBlogPostDetail` enables it; `SectionGlossaryDetail` leaves it off.",[3951],{"version":2119,"type":3939,"changelog":2117,"note":3952},"New `glass-black` variant for badges sitting over arbitrary media — a translucent dark chip with a backdrop blur, so the text keeps its contrast whatever the media does underneath. See [Over media](/laioutr-ui/ui-kit/indicators/badge#over-media).",[3954],{"version":3955,"type":3934,"breaking":2211,"changelog":2117,"note":3956,"migration":3957},"2.5.0","Renamed from `DescriptionList` (and `DescriptionListItem` → `BasicTableRow`), now rendered as a semantic description list (`\u003Cdl>` with `\u003Cdt>`/`\u003Cdd>` rows) instead of presentational `\u003Cdiv>`s. The label column is overridable via the new public `--basic-table-label-col` custom property; the grid/subgrid layout and CSS surface (`.basic-table` class, BEM classes) are unchanged.","```diff\n- import DescriptionList from '#ui-kit/components/DescriptionList/DescriptionList.vue';\n- import DescriptionListItem from '#ui-kit/components/DescriptionList/DescriptionListItem.vue';\n+ import BasicTable from '#ui-kit/components/BasicTable/BasicTable.vue';\n+ import BasicTableRow from '#ui-kit/components/BasicTable/BasicTableRow.vue';\n```\n",[3959],{"version":3929,"type":3939,"changelog":2117,"note":3960},"New `contentPadding` prop (`'default' | 'm' | 's' | 'none'`) with matching `.banner-basic--content-padding-{m,s,none}` modifier classes. Unset preserves the existing padding. In Studio it surfaces as the Design → Layout **Content Padding** control.",[3962],{"version":3929,"type":3939,"changelog":2117,"note":3963},"New `contentPadding` prop (`'default' | 'm' | 's' | 'none'`) with matching `.banner-integrated--content-padding-{m,s,none}` modifier classes. Unset preserves the existing padding, and the Design → Layout **Content Padding** control exposes it in Studio.",[3965],{"version":3929,"type":3939,"changelog":2117,"note":3966},"New `contentPadding` prop (`'default' | 'm' | 's' | 'none'`) with matching `.banner-showcase--content-padding-{m,s,none}` modifier classes. Unset preserves the existing padding, and the Design → Layout **Content Padding** control exposes it in Studio.",[3968],{"version":3929,"type":3939,"changelog":2117,"note":3969},"New `BlockProductDetailCouponBox` wraps `CouponBox` for placement in the Product Detail section's content slot. Editors configure the text, code, optional discount badge, and icon; the block hard-wires `action=\"copy\"` so shoppers copy the code to the clipboard.",[3971],{"version":3929,"type":3939,"changelog":2117,"note":3972},"`EmailInputForm` and `EmailInputFormDisplay` gained a `variant` (`'boxed' | 'plain'`) prop, forwarded to the underlying `Input`. The `plain` variant paints resting backgrounds and borders from the `--input-field-plain-*` tokens, so a footer or popup signup can sit flush on an already-styled surface.",[3974],{"version":3929,"type":3939,"changelog":2117,"note":3975},"New `justify` and `align` props (`'start' | 'center' | 'end'`, both default `'start'`) set main- and cross-axis item alignment. They are stated logically: under `sizing=\"greedy-first\"` GridFill internally un-mirrors the reversed axis, so `start`/`end` resolve to the intended physical direction. `Container` maps its 2D `alignment` onto these, fixing mirrored alignment under \"Greedy First\" sizing.",[3977],{"version":3929,"type":3939,"changelog":2117,"note":3978},"A `plain` variant joins `outline` (default) and `subtle`. It paints resting, hover, focus, disabled, and error backgrounds/borders from the `--input-field-plain-*` tokens, for inputs that sit on an already-styled surface.",[3980],{"version":3929,"type":3934,"changelog":2117,"note":3981},"The container-style control moved to the shared `containerStyleField` toggle (`'full-width' | 'boxed'`); the field name and stored values are unchanged, so no re-authoring is needed. In `boxed` mode `.location-finder--boxed` now clamps to `--container-max-width` and centres with `margin-inline: auto` from the `--lg` breakpoint up.",[3983,3987,3990,3993],{"version":3984,"type":3939,"changelog":3985,"note":3986},"0.34.0","frontend","Every source gained an optional [`origin`](/frontend/api-reference/common-types/media#source-origin) (`{ libraryId, externalId? }`) recording the media library that produced it and that library's stable asset id. It is stamped automatically when an asset is picked from a media library, and is management-plane only — the renderer never reads it. Additive and optional, so media stored before it existed stay valid.",{"version":3988,"type":3939,"changelog":3985,"note":3989},"0.30.1","Added an [`audio`](/frontend/api-reference/common-types/media#mediaaudio) variant, plus [text tracks](/frontend/api-reference/common-types/media#text-tracks) and [streaming formats](/frontend/api-reference/common-types/media#streaming-formats) for video. Studio `media` fields can restrict to it with `allowedTypes: ['audio']`.",{"version":3988,"type":3934,"breaking":2211,"changelog":3985,"note":3991,"migration":3992},"`MediaVideo.preview` was renamed to `MediaVideo.poster` to match the HTML `\u003Cvideo poster>` attribute.","Rename the field on every `MediaVideo` you construct or read.\n\n```ts\n// Before\nconst video: MediaVideo = { type: 'video', sources, preview: posterImage };\n// After\nconst video: MediaVideo = { type: 'video', sources, poster: posterImage };\n```\n",{"version":3988,"type":3934,"breaking":2211,"changelog":3985,"note":3994,"migration":3995},"The `Media` union was widened to include `MediaAudio`, so `media.type` can now be `'audio'`.","Any exhaustive `switch (media.type)` without a `default` branch must add an\n`'audio'` case, or TypeScript reports a non-exhaustive switch.\n\n```ts\nswitch (media.type) {\n  case 'image': return renderImage(media);\n  case 'video': return renderVideo(media);\n  case 'audio': return renderAudio(media); // new\n}\n```\n",[3997,4001],{"version":3998,"type":3934,"breaking":2211,"changelog":3985,"note":3999,"migration":4000},"0.35.0","A media library connector is now declared with `defineX.mediaLibrary(...)` on the app's Orchestr builder instead of the standalone `defineMediaLibraryProvider` factory. Identity comes from the builder's `.meta()`; the connector declares static `capabilities` and its handlers receive the app's per-request `ctx`. Browsing moves to opaque-cursor pagination with folders, an explicit type filter, and per-file upload results (proxied or staged).","Move the connector onto your app's Orchestr builder. Identity moves from\nthe provider's `name`/`label`/`iconSrc` to the builder's `.meta()`,\npagination moves from `offset`/`limit` to an opaque `cursor`, and `list`\nreturns a `MediaListResult` and takes `ctx` as a second argument.\n\n```ts\n// Before\nexport default defineMediaLibraryProvider({\n  name: 'my-dam',\n  label: 'My DAM',\n  list: async ({ offset, limit, search, sort }) => ({ items, total, offset, limit }),\n});\n// After\nexport default defineMyDam.mediaLibrary({\n  capabilities: { search: true, folders: false, sorts: [] },\n  list: async (query, ctx) => ({ items, nextCursor, total }),\n});\n```\n",{"version":3998,"type":4002,"changelog":3985,"note":4003},"deprecated","`defineMediaLibraryProvider(...)` is deprecated in favour of `defineX.mediaLibrary(...)`. It keeps working as a compatibility shim, in a degraded mode (no folders, no staged upload, no declared sorts, no server-side type filtering), and logs a one-time warning at registration.",[4005,4007,4009,4011],{"version":2119,"type":3934,"changelog":2117,"note":4006},"Videos now wait until they are within a screen of the viewport before fetching, so a page or feed carrying several no longer loads them all up front. `preload` alone could not carry this — `autoplay` overrides it and a `play()` call fetches regardless — so the attributes and the play call are held back together. Wrap a hero in `MediaAboveTheFoldProvider` to opt out, or set the new `videoPreload` prop to spell out one video's loading. See [Deferred loading](/laioutr-ui/ui-kit/general/media#deferred-loading).",{"version":2119,"type":3939,"changelog":2117,"note":4008},"`\u003CMedia>` gained `v-model:currentTime`, the sibling of `v-model:paused`. Assigning to it seeks and the element reports its own progress back, so a scrubber, chapter link, or rewind needs no template ref. See [Seeking and reading progress](/laioutr-ui/ui-kit/general/media#seeking-and-reading-progress).",{"version":3929,"type":3939,"changelog":2117,"note":4010},"`\u003CMedia>` gained a `playback` mode for video. `playback=\"background\"` is a one-switch decorative loop (`autoplay`, `muted`, `loop`, `playsinline`, `disablePictureInPicture` on, `controls` off); `interactive` (the default) is the native player. Each attribute still has its own overriding prop. `\u003CMedia>` now exposes `v-model:paused` so consumers render their own WCAG 2.2.2 pause control, and suppresses autoplay under reduced motion. See [Background video](/laioutr-ui/ui-kit/general/media#background-video).",{"version":3933,"type":3939,"changelog":2117,"note":4012},"`\u003CMedia>` is now a dispatcher that renders video and audio, not only images. Built-in native `\u003Cvideo>` and `\u003Caudio>` players handle progressive sources out of the box (the video `poster` and audio `cover` are shown automatically), and playback is set with props on `\u003CMedia>` (`controls`, `autoplay`, `muted`, `loop`, `playsinline`). Register a renderer with `provideMediaRenderers` to override the built-in for adaptive streaming (HLS/DASH) or a custom player UI. See [Rendering video and audio](/laioutr-ui/ui-kit/general/media#rendering-video-and-audio).",[4014],{"version":2119,"type":3939,"changelog":2117,"note":4015},"New component. A full-screen vertical media feed in the TikTok and Reels pattern: scroll-snap, one item playing at a time, an action rail, a mute toggle, and a read-more sheet. Render it from `items` plus `v-model:open`, or drive it from anywhere on the page with `useMediaFeedStore()`. Set `urlParam` to sync the item in view to a query parameter by id, so a link is shareable and the back button closes the feed. Off-screen items are `inert`. See [Media Feed](/laioutr-ui/publishers/media-feed).",[4017],{"version":3929,"type":3939,"changelog":2117,"note":4018},"New `innerBlockPadding` prop (`'s' | 'm' | 'l'`) forwarded to `Backdrop`, surfaced as the Design → Layout **Padding** control (none/S/M/L). Unset defaults to none, so existing sections render unchanged.",[4020],{"version":3929,"type":3939,"changelog":2117,"note":4021},"`MegaMenuItem` gained an optional `textColor` (`ColorFieldValue`) that overrides the surface-tone label color of a top-level trigger. In Studio, `BlockMegaMenu` exposes a per-item color picker via an `as: 'style'` decorator on author-typed titles.",[4023],{"version":3929,"type":3939,"changelog":2117,"note":4024},"`NavigationNode` gained an optional `textColor` (`ColorFieldValue`) that overrides the surface-tone label color of a top-level node. In Studio, `BlockMenuSideBySide` and `BlockMenuBasic` expose a per-item color picker via an `as: 'style'` decorator on author-typed titles.",[4026],{"version":3929,"type":3939,"changelog":2117,"note":4027},"New optional `textColor` prop accepting a resolved CSS color string. When set it overrides the surface-tone label color for that item; unset, the item inherits the surrounding surface tone.",[4029],{"version":3929,"type":3939,"changelog":2117,"note":4030},"New section that renders a single glossary entry through the shared `ArticleDetail` reading view, bound to the `Glossary` entity's `base` and `content` components.",[4032],{"version":4033,"type":3939,"changelog":3985,"note":4034},"0.30.0","Field and fieldset definitions gained an optional `if` expression that hides a control in the Studio sidebar — see [Conditional visibility](/apps/app-development/schema-fields#conditional-visibility).",[4036],{"version":3955,"type":3934,"breaking":2211,"changelog":2117,"note":4037,"migration":4038},"Moved out of UI Kit into `@laioutr-core/ui` (renamed from `OpeningHoursWeeklyTable`), now built on the `BasicTable` primitive and gaining an `outlined` / `plain` `variant`. The weekday-grouping behavior is unchanged.","```diff\n- import OpeningHoursWeeklyTable from '#ui-kit/components/OpeningHoursWeeklyTable/OpeningHoursWeeklyTable.vue';\n+ import TableOpeningHours from '#ui/components/TableOpeningHours/TableOpeningHours.vue';\n```\n",[4040],{"version":3955,"type":3939,"changelog":2117,"note":4041},"Product specification sheet built on `BasicTable`. Rows carry a `label` and a typed `value` (`string | number | boolean | Measurement | Money`) formatted per locale by the `TableProductSpecificationsValue` subcomponent, with optional per-row `sectionName` grouping. Consumes a Product's `specifications` component or manually authored rows.","M04CHQlhMFgBLVRxvahqEct3ZLOWTS63bCkiHQgkue8",{"body":4044,"excerpt":-1},{"type":4045,"children":4046},"root",[4047],{"type":4048,"tag":2121,"props":4049,"children":4050,"position":-1},"element",{},[4051,4054,4063,4067,4075,4079,4087,4091,4099,4103,4111,4115,4124],{"type":4052,"value":4053,"position":-1},"text","New component. A full-screen vertical media feed in the TikTok and Reels pattern: scroll-snap, one item playing at a time, an action rail, a mute toggle, and a read-more sheet. Render it from ",{"type":4048,"tag":2124,"props":4055,"children":4057,"position":4062},{"className":4056},[],[4058],{"type":4052,"value":2455,"position":4059},{"start":4060,"end":4061},192,199,{"start":4060,"end":4061},{"type":4052,"value":4064,"position":4065}," plus ",{"start":4061,"end":4066},205,{"type":4048,"tag":2124,"props":4068,"children":4070,"position":4074},{"className":4069},[],[4071],{"type":4052,"value":2668,"position":4072},{"start":4066,"end":4073},219,{"start":4066,"end":4073},{"type":4052,"value":4076,"position":4077},", or drive it from anywhere on the page with ",{"start":4073,"end":4078},264,{"type":4048,"tag":2124,"props":4080,"children":4082,"position":4086},{"className":4081},[],[4083],{"type":4052,"value":2682,"position":4084},{"start":4078,"end":4085},285,{"start":4078,"end":4085},{"type":4052,"value":4088,"position":4089},". Set ",{"start":4085,"end":4090},291,{"type":4048,"tag":2124,"props":4092,"children":4094,"position":4098},{"className":4093},[],[4095],{"type":4052,"value":2892,"position":4096},{"start":4090,"end":4097},301,{"start":4090,"end":4097},{"type":4052,"value":4100,"position":4101}," to sync the item in view to a query parameter by id, so a link is shareable and the back button closes the feed. Off-screen items are ",{"start":4097,"end":4102},436,{"type":4048,"tag":2124,"props":4104,"children":4106,"position":4110},{"className":4105},[],[4107],{"type":4052,"value":3543,"position":4108},{"start":4102,"end":4109},443,{"start":4102,"end":4109},{"type":4052,"value":4112,"position":4113},". See ",{"start":4109,"end":4114},449,{"type":4048,"tag":2571,"props":4116,"children":4117,"position":4122},{"href":1218},[4118],{"type":4052,"value":1217,"position":4119},{"start":4120,"end":4121},450,460,{"start":4114,"end":4123},496,{"type":4052,"value":3222,"position":4125},{"start":4123,"end":4126},497,{"data":4128,"body":4129},{},{"type":4045,"children":4130},[4131],{"type":4048,"tag":2121,"props":4132,"children":4133},{},[4134],{"type":4052,"value":4135},"Props mode. When set, the feed renders these and ignores the store.",{"data":4137,"body":4138},{},{"type":4045,"children":4139},[4140],{"type":4048,"tag":2121,"props":4141,"children":4142},{},[4143,4145,4151],{"type":4052,"value":4144},"Top-bar centre. ",{"type":4048,"tag":2124,"props":4146,"children":4148},{"className":4147},[],[4149],{"type":4052,"value":4150},"logo",{"type":4052,"value":4152}," wins when both are set; neither = empty centre.",{"data":4154,"body":4155},{},{"type":4045,"children":4156},[4157],{"type":4048,"tag":2121,"props":4158,"children":4159},{},[4160],{"type":4052,"value":4161},"Studio playback settings, forwarded to every item.",{"data":4163,"body":4164},{},{"type":4045,"children":4165},[4166],{"type":4048,"tag":2121,"props":4167,"children":4168},{},[4169,4171,4176],{"type":4052,"value":4170},"Query parameter to sync the active item to, e.g. ",{"type":4048,"tag":2124,"props":4172,"children":4174},{"className":4173},[],[4175],{"type":4052,"value":2934},{"type":4052,"value":4177},". Omit to disable.",{"data":4179,"body":4180},{},{"type":4045,"children":4181},[4182],{"type":4048,"tag":2121,"props":4183,"children":4184},{},[4185],{"type":4052,"value":4186},"Stable id, and the value the feed syncs to its URL parameter.",{"data":4188,"body":4189},{},{"type":4045,"children":4190},[4191],{"type":4048,"tag":2121,"props":4192,"children":4193},{},[4194],{"type":4052,"value":4195},"Set by the feed — the item currently in view. Drives playback and the CTA pulse.",{"data":4197,"body":4198},{},{"type":4045,"children":4199},[4200],{"type":4048,"tag":2121,"props":4201,"children":4202},{},[4203,4205,4210],{"type":4052,"value":4204},"Full body revealed by the disclosure sheet. Overridden by the ",{"type":4048,"tag":2124,"props":4206,"children":4208},{"className":4207},[],[4209],{"type":4052,"value":3047},{"type":4052,"value":4211}," slot.",{"data":4213,"body":4214},{},{"type":4045,"children":4215},[4216],{"type":4048,"tag":2121,"props":4217,"children":4218},{},[4219,4220,4225],{"type":4052,"value":2605},{"type":4048,"tag":2124,"props":4221,"children":4223},{"className":4222},[],[4224],{"type":4052,"value":2610},{"type":4052,"value":4226}," badges — legible over arbitrary media.",{"data":4228,"body":4229},{},{"type":4045,"children":4230},[4231],{"type":4048,"tag":2121,"props":4232,"children":4233},{},[4234,4235,4240],{"type":4052,"value":2605},{"type":4048,"tag":2124,"props":4236,"children":4238},{"className":4237},[],[4239],{"type":4052,"value":2624},{"type":4052,"value":4241}," badges.",{"data":4243,"body":4244},{},{"type":4045,"children":4245},[4246],{"type":4048,"tag":2121,"props":4247,"children":4248},{},[4249],{"type":4052,"value":4250},"Teaser copy. Omit to hide the teaser entirely.",{"data":4252,"body":4253},{},{"type":4045,"children":4254},[4255],{"type":4048,"tag":2121,"props":4256,"children":4257},{},[4258,4260,4266],{"type":4052,"value":4259},"Accessible name, always required. Rendered as ",{"type":4048,"tag":2124,"props":4261,"children":4263},{"className":4262},[],[4264],{"type":4052,"value":4265},"aria-label",{"type":4052,"value":3222},{"data":4268,"body":4269},{},{"type":4045,"children":4270},[4271],{"type":4048,"tag":2121,"props":4272,"children":4273},{},[4274],{"type":4052,"value":4275},"Visible caption under the icon. Omit for icon-only. Numbers format compactly for the locale.",1787053799337]