[{"data":1,"prerenderedAt":1740},["ShallowReactive",2],{"navigation_docs":3,"-docs-storefront-sdk-nuxt-layer-composables":357,"-docs-storefront-sdk-nuxt-layer-composables-surround":1735,"docs-site-config":1725},[4,74,135,139,161,195,273],{"title":5,"path":6,"stem":7,"children":8},"Assets API","\u002Fdocs\u002Fassets","docs\u002Fassets\u002Findex",[9,10,32,57],{"title":5,"path":6,"stem":7},{"title":11,"path":12,"stem":13,"children":14,"page":31},"Getting Started","\u002Fdocs\u002Fassets\u002Fgetting-started","docs\u002Fassets\u002F1.getting-started",[15,19,23,27],{"title":16,"path":17,"stem":18},"Base URL","\u002Fdocs\u002Fassets\u002Fgetting-started\u002Fbase-url","docs\u002Fassets\u002F1.getting-started\u002F1.base-url",{"title":20,"path":21,"stem":22},"Important Notes","\u002Fdocs\u002Fassets\u002Fgetting-started\u002Fimportant-notes","docs\u002Fassets\u002F1.getting-started\u002F2.important-notes",{"title":24,"path":25,"stem":26},"URL Format","\u002Fdocs\u002Fassets\u002Fgetting-started\u002Furl-format","docs\u002Fassets\u002F1.getting-started\u002F3.url-format",{"title":28,"path":29,"stem":30},"Custom Domains","\u002Fdocs\u002Fassets\u002Fgetting-started\u002Fcustom-domains","docs\u002Fassets\u002F1.getting-started\u002F4.custom-domains",false,{"title":33,"path":34,"stem":35,"children":36,"page":31},"Usage","\u002Fdocs\u002Fassets\u002Fusage","docs\u002Fassets\u002F2.usage",[37,41,45,49,53],{"title":38,"path":39,"stem":40},"Transforms","\u002Fdocs\u002Fassets\u002Fusage\u002Ftransforms","docs\u002Fassets\u002F2.usage\u002F1.transforms",{"title":42,"path":43,"stem":44},"Caching","\u002Fdocs\u002Fassets\u002Fusage\u002Fcaching","docs\u002Fassets\u002F2.usage\u002F2.caching",{"title":46,"path":47,"stem":48},"Recipes","\u002Fdocs\u002Fassets\u002Fusage\u002Frecipes","docs\u002Fassets\u002F2.usage\u002F3.recipes",{"title":50,"path":51,"stem":52},"Best Practices","\u002Fdocs\u002Fassets\u002Fusage\u002Fbest-practices","docs\u002Fassets\u002F2.usage\u002F4.best-practices",{"title":54,"path":55,"stem":56},"Reference","\u002Fdocs\u002Fassets\u002Fusage\u002Freference","docs\u002Fassets\u002F2.usage\u002F5.reference",{"title":58,"path":59,"stem":60,"children":61,"page":31},"Integration","\u002Fdocs\u002Fassets\u002Fintegration","docs\u002Fassets\u002F3.integration",[62,66,70],{"title":63,"path":64,"stem":65},"Nuxt","\u002Fdocs\u002Fassets\u002Fintegration\u002Fnuxt","docs\u002Fassets\u002F3.integration\u002F1.nuxt",{"title":67,"path":68,"stem":69},"Next.js","\u002Fdocs\u002Fassets\u002Fintegration\u002Fnextjs","docs\u002Fassets\u002F3.integration\u002F2.nextjs",{"title":71,"path":72,"stem":73},"Plain HTML","\u002Fdocs\u002Fassets\u002Fintegration\u002Fhtml","docs\u002Fassets\u002F3.integration\u002F3.html",{"title":75,"path":76,"stem":77,"children":78},"Avvyr CMS","\u002Fdocs\u002Fcms","docs\u002Fcms\u002Findex",[79,80,92,105,118,131],{"title":75,"path":76,"stem":77},{"title":11,"path":81,"stem":82,"children":83,"page":31},"\u002Fdocs\u002Fcms\u002Fgetting-started","docs\u002Fcms\u002F1.getting-started",[84,88],{"title":85,"path":86,"stem":87},"Quickstart","\u002Fdocs\u002Fcms\u002Fgetting-started\u002Fquickstart","docs\u002Fcms\u002F1.getting-started\u002F1.quickstart",{"title":89,"path":90,"stem":91},"Keys and access","\u002Fdocs\u002Fcms\u002Fgetting-started\u002Fkeys-and-access","docs\u002Fcms\u002F1.getting-started\u002F2.keys-and-access",{"title":93,"path":94,"stem":95,"children":96,"page":31},"Content Model","\u002Fdocs\u002Fcms\u002Fcontent-model","docs\u002Fcms\u002F2.content-model",[97,101],{"title":98,"path":99,"stem":100},"Types and fields","\u002Fdocs\u002Fcms\u002Fcontent-model\u002Ftypes-and-fields","docs\u002Fcms\u002F2.content-model\u002F1.types-and-fields",{"title":102,"path":103,"stem":104},"Entries and publishing","\u002Fdocs\u002Fcms\u002Fcontent-model\u002Fentries-and-publishing","docs\u002Fcms\u002F2.content-model\u002F2.entries-and-publishing",{"title":106,"path":107,"stem":108,"children":109,"page":31},"Delivery","\u002Fdocs\u002Fcms\u002Fdelivery","docs\u002Fcms\u002F3.delivery",[110,114],{"title":111,"path":112,"stem":113},"Delivery API","\u002Fdocs\u002Fcms\u002Fdelivery\u002Fdelivery-api","docs\u002Fcms\u002F3.delivery\u002F1.delivery-api",{"title":115,"path":116,"stem":117},"Preview and live editing","\u002Fdocs\u002Fcms\u002Fdelivery\u002Fpreview","docs\u002Fcms\u002F3.delivery\u002F2.preview",{"title":119,"path":120,"stem":121,"children":122,"page":31},"Frameworks","\u002Fdocs\u002Fcms\u002Fframeworks","docs\u002Fcms\u002F4.frameworks",[123,127],{"title":124,"path":125,"stem":126},"JavaScript client","\u002Fdocs\u002Fcms\u002Fframeworks\u002Fjavascript-client","docs\u002Fcms\u002F4.frameworks\u002F1.javascript-client",{"title":128,"path":129,"stem":130},"Nuxt layer","\u002Fdocs\u002Fcms\u002Fframeworks\u002Fnuxt","docs\u002Fcms\u002F4.frameworks\u002F2.nuxt",{"title":132,"path":133,"stem":134},"Management API","\u002Fdocs\u002Fcms\u002Fmanagement-api","docs\u002Fcms\u002F5.management-api",{"title":136,"path":137,"stem":138},"Early Access","\u002Fdocs\u002Fearly-access","docs\u002Fearly-access",{"title":140,"path":141,"stem":142,"children":143},"Events API","\u002Fdocs\u002Fevents","docs\u002Fevents\u002Findex",[144,145],{"title":140,"path":141,"stem":142},{"title":11,"path":146,"stem":147,"children":148,"page":31},"\u002Fdocs\u002Fevents\u002Fgetting-started","docs\u002Fevents\u002F1.getting-started",[149,153,157],{"title":150,"path":151,"stem":152},"Subscribing","\u002Fdocs\u002Fevents\u002Fgetting-started\u002Fsubscribing","docs\u002Fevents\u002F1.getting-started\u002F1.subscribing",{"title":154,"path":155,"stem":156},"Event Delivery","\u002Fdocs\u002Fevents\u002Fgetting-started\u002Fevent-delivery","docs\u002Fevents\u002F1.getting-started\u002F2.event-delivery",{"title":158,"path":159,"stem":160},"Event Reference","\u002Fdocs\u002Fevents\u002Fgetting-started\u002Fevent-reference","docs\u002Fevents\u002F1.getting-started\u002F3.event-reference",{"title":162,"path":163,"stem":164,"children":165},"Integrations API","\u002Fdocs\u002Fintegrations","docs\u002Fintegrations\u002Findex",[166,167],{"title":162,"path":163,"stem":164},{"title":11,"path":168,"stem":169,"children":170,"page":31},"\u002Fdocs\u002Fintegrations\u002Fgetting-started","docs\u002Fintegrations\u002F1.getting-started",[171,175,179,183,187,191],{"title":172,"path":173,"stem":174},"Why Use It?","\u002Fdocs\u002Fintegrations\u002Fgetting-started\u002Fwhy-integrations-api","docs\u002Fintegrations\u002F1.getting-started\u002F1.why-integrations-api",{"title":176,"path":177,"stem":178},"Use Cases","\u002Fdocs\u002Fintegrations\u002Fgetting-started\u002Fwho-is-it-for","docs\u002Fintegrations\u002F1.getting-started\u002F2.who-is-it-for",{"title":180,"path":181,"stem":182},"Pre-built Connectors","\u002Fdocs\u002Fintegrations\u002Fgetting-started\u002Fpre-built-integrations","docs\u002Fintegrations\u002F1.getting-started\u002F3.pre-built-integrations",{"title":184,"path":185,"stem":186},"Custom Inbound","\u002Fdocs\u002Fintegrations\u002Fgetting-started\u002Fcustom-inbound-api","docs\u002Fintegrations\u002F1.getting-started\u002F4.custom-inbound-api",{"title":188,"path":189,"stem":190},"Event Lifecycle","\u002Fdocs\u002Fintegrations\u002Fgetting-started\u002Fevent-lifecycle","docs\u002Fintegrations\u002F1.getting-started\u002F5.event-lifecycle",{"title":192,"path":193,"stem":194},"API Endpoints","\u002Fdocs\u002Fintegrations\u002Fgetting-started\u002Fmanagement-api-endpoints","docs\u002Fintegrations\u002F1.getting-started\u002F6.management-api-endpoints",{"title":196,"path":197,"stem":198,"children":199},"MCP Server","\u002Fdocs\u002Fmcp","docs\u002Fmcp\u002Findex",[200,201,225,234,244],{"title":196,"path":197,"stem":198},{"title":11,"path":202,"stem":203,"children":204,"page":31},"\u002Fdocs\u002Fmcp\u002Fgetting-started","docs\u002Fmcp\u002F1.getting-started",[205,209,213,217,221],{"title":206,"path":207,"stem":208},"Claude","\u002Fdocs\u002Fmcp\u002Fgetting-started\u002Fclaude","docs\u002Fmcp\u002F1.getting-started\u002F1.claude",{"title":210,"path":211,"stem":212},"Claude Code","\u002Fdocs\u002Fmcp\u002Fgetting-started\u002Fclaude-code","docs\u002Fmcp\u002F1.getting-started\u002F2.claude-code",{"title":214,"path":215,"stem":216},"VS Code","\u002Fdocs\u002Fmcp\u002Fgetting-started\u002Fvscode","docs\u002Fmcp\u002F1.getting-started\u002F3.vscode",{"title":218,"path":219,"stem":220},"Cursor","\u002Fdocs\u002Fmcp\u002Fgetting-started\u002Fcursor","docs\u002Fmcp\u002F1.getting-started\u002F4.cursor",{"title":222,"path":223,"stem":224},"Verify the connection","\u002Fdocs\u002Fmcp\u002Fgetting-started\u002Fverify","docs\u002Fmcp\u002F1.getting-started\u002F5.verify",{"title":226,"path":227,"stem":228,"children":229,"page":31},"Docs Server","\u002Fdocs\u002Fmcp\u002Fdocs-server","docs\u002Fmcp\u002F2.docs-server",[230],{"title":231,"path":232,"stem":233},"Docs server tools","\u002Fdocs\u002Fmcp\u002Fdocs-server\u002Ftools","docs\u002Fmcp\u002F2.docs-server\u002F1.tools",{"title":235,"path":236,"stem":237,"children":238},"API Server","\u002Fdocs\u002Fmcp\u002Fapi-server","docs\u002Fmcp\u002F3.api-server\u002Findex",[239,240],{"title":235,"path":236,"stem":237},{"title":241,"path":242,"stem":243},"Available tools","\u002Fdocs\u002Fmcp\u002Fapi-server\u002Ftools","docs\u002Fmcp\u002F3.api-server\u002F1.tools",{"title":245,"path":246,"stem":247,"children":248,"page":31},"Examples","\u002Fdocs\u002Fmcp\u002Fexamples","docs\u002Fmcp\u002F4.examples",[249,253,257,261,265,269],{"title":250,"path":251,"stem":252},"Exploring an API","\u002Fdocs\u002Fmcp\u002Fexamples\u002Fexploring-an-api","docs\u002Fmcp\u002F4.examples\u002F1.exploring-an-api",{"title":254,"path":255,"stem":256},"Building a Feature","\u002Fdocs\u002Fmcp\u002Fexamples\u002Fbuilding-a-feature","docs\u002Fmcp\u002F4.examples\u002F2.building-a-feature",{"title":258,"path":259,"stem":260},"Understanding Models","\u002Fdocs\u002Fmcp\u002Fexamples\u002Funderstanding-models","docs\u002Fmcp\u002F4.examples\u002F3.understanding-models",{"title":262,"path":263,"stem":264},"Code Review","\u002Fdocs\u002Fmcp\u002Fexamples\u002Fcode-review","docs\u002Fmcp\u002F4.examples\u002F4.code-review",{"title":266,"path":267,"stem":268},"Combining MCP Servers","\u002Fdocs\u002Fmcp\u002Fexamples\u002Fmulti-mcp","docs\u002Fmcp\u002F4.examples\u002F5.multi-mcp",{"title":270,"path":271,"stem":272},"Tips","\u002Fdocs\u002Fmcp\u002Fexamples\u002Ftips","docs\u002Fmcp\u002F4.examples\u002F6.tips",{"title":274,"path":275,"stem":276,"children":277,"page":31},"Storefront SDK","\u002Fdocs\u002Fstorefront-sdk","docs\u002Fstorefront-sdk",[278,290,323,338],{"title":11,"path":279,"stem":280,"children":281,"page":31},"\u002Fdocs\u002Fstorefront-sdk\u002Fgetting-started","docs\u002Fstorefront-sdk\u002F1.getting-started",[282,286],{"title":283,"path":284,"stem":285},"Installation","\u002Fdocs\u002Fstorefront-sdk\u002Fgetting-started\u002Finstallation","docs\u002Fstorefront-sdk\u002F1.getting-started\u002F1.installation",{"title":287,"path":288,"stem":289},"Configuration","\u002Fdocs\u002Fstorefront-sdk\u002Fgetting-started\u002Fconfiguration","docs\u002Fstorefront-sdk\u002F1.getting-started\u002F2.configuration",{"title":291,"path":292,"stem":293,"children":294,"page":31},"Resources","\u002Fdocs\u002Fstorefront-sdk\u002Fresources","docs\u002Fstorefront-sdk\u002F2.resources",[295,299,303,307,311,315,319],{"title":296,"path":297,"stem":298},"Products","\u002Fdocs\u002Fstorefront-sdk\u002Fresources\u002Fproducts","docs\u002Fstorefront-sdk\u002F2.resources\u002F1.products",{"title":300,"path":301,"stem":302},"Cart","\u002Fdocs\u002Fstorefront-sdk\u002Fresources\u002Fcart","docs\u002Fstorefront-sdk\u002F2.resources\u002F2.cart",{"title":304,"path":305,"stem":306},"Auth","\u002Fdocs\u002Fstorefront-sdk\u002Fresources\u002Fauth","docs\u002Fstorefront-sdk\u002F2.resources\u002F3.auth",{"title":308,"path":309,"stem":310},"Checkout & Shipping","\u002Fdocs\u002Fstorefront-sdk\u002Fresources\u002Fcheckout-shipping","docs\u002Fstorefront-sdk\u002F2.resources\u002F4.checkout-shipping",{"title":312,"path":313,"stem":314},"Orders, Returns & Reviews","\u002Fdocs\u002Fstorefront-sdk\u002Fresources\u002Forders-returns-reviews","docs\u002Fstorefront-sdk\u002F2.resources\u002F5.orders-returns-reviews",{"title":316,"path":317,"stem":318},"Customer assistant","\u002Fdocs\u002Fstorefront-sdk\u002Fresources\u002Fassistant","docs\u002Fstorefront-sdk\u002F2.resources\u002F6.assistant",{"title":320,"path":321,"stem":322},"Products in images","\u002Fdocs\u002Fstorefront-sdk\u002Fresources\u002Fproducts-in-images","docs\u002Fstorefront-sdk\u002F2.resources\u002F7.products-in-images",{"title":128,"path":324,"stem":325,"children":326,"page":31},"\u002Fdocs\u002Fstorefront-sdk\u002Fnuxt-layer","docs\u002Fstorefront-sdk\u002F3.nuxt-layer",[327,331,335],{"title":328,"path":329,"stem":330},"Overview","\u002Fdocs\u002Fstorefront-sdk\u002Fnuxt-layer\u002Foverview","docs\u002Fstorefront-sdk\u002F3.nuxt-layer\u002F1.overview",{"title":332,"path":333,"stem":334},"Composables","\u002Fdocs\u002Fstorefront-sdk\u002Fnuxt-layer\u002Fcomposables","docs\u002Fstorefront-sdk\u002F3.nuxt-layer\u002F2.composables",{"title":316,"path":336,"stem":337},"\u002Fdocs\u002Fstorefront-sdk\u002Fnuxt-layer\u002Fassistant","docs\u002Fstorefront-sdk\u002F3.nuxt-layer\u002F3.assistant",{"title":67,"path":339,"stem":340,"children":341,"page":31},"\u002Fdocs\u002Fstorefront-sdk\u002Fnextjs","docs\u002Fstorefront-sdk\u002F4.nextjs",[342,345,349,353],{"title":328,"path":343,"stem":344},"\u002Fdocs\u002Fstorefront-sdk\u002Fnextjs\u002Foverview","docs\u002Fstorefront-sdk\u002F4.nextjs\u002F1.overview",{"title":346,"path":347,"stem":348},"Hooks","\u002Fdocs\u002Fstorefront-sdk\u002Fnextjs\u002Fhooks","docs\u002Fstorefront-sdk\u002F4.nextjs\u002F2.hooks",{"title":350,"path":351,"stem":352},"Server helpers and proxy","\u002Fdocs\u002Fstorefront-sdk\u002Fnextjs\u002Fserver","docs\u002Fstorefront-sdk\u002F4.nextjs\u002F3.server",{"title":354,"path":355,"stem":356},"Components","\u002Fdocs\u002Fstorefront-sdk\u002Fnextjs\u002Fcomponents","docs\u002Fstorefront-sdk\u002F4.nextjs\u002F4.components",{"id":358,"title":332,"body":359,"description":1723,"extension":1724,"links":1725,"meta":1726,"navigation":602,"path":333,"seo":1733,"stem":334,"__hash__":1734},"docs\u002Fdocs\u002Fstorefront-sdk\u002F3.nuxt-layer\u002F2.composables.md",{"type":360,"value":361,"toc":1707},"minimark",[362,370,378,544,550,711,714,720,723,831,837,872,879,881,894,901,1016,1018,1024,1027,1113,1115,1124,1199,1201,1207,1344,1346,1352,1442,1444,1456,1542,1544,1550,1553,1591,1593,1599,1602,1635,1637,1643,1650,1703],[363,364,366],"h2",{"id":365},"usecart",[367,368,369],"code",{},"useCart()",[371,372,373,374,377],"p",{},"Reactive cart with SSR-safe ",[367,375,376],{},"useState",". Token is persisted in a cookie and restored on load.",[379,380,385],"pre",{"className":381,"code":382,"language":383,"meta":384,"style":384},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","const {\n  cart,          \u002F\u002F Ref\u003CStorefrontCart | null>\n  cartLoading,   \u002F\u002F Ref\u003Cboolean>\n  create,\n  get,\n  previewShared, \u002F\u002F POS-shared carts, step 1: read-only proposal\n  redeemShared,  \u002F\u002F POS-shared carts, step 2: take over the cart\n  addItem,\n  removeItem,\n  setCustomer,\n  setCustomerType,\n  setShipping,\n  applyCode,\n  removeCode,\n  complete,\n} = useCart()\n","ts","",[367,386,387,400,414,425,434,442,453,464,472,480,488,496,504,512,520,528],{"__ignoreMap":384},[388,389,392,396],"span",{"class":390,"line":391},"line",1,[388,393,395],{"class":394},"spNyl","const",[388,397,399],{"class":398},"sMK4o"," {\n",[388,401,403,407,410],{"class":390,"line":402},2,[388,404,406],{"class":405},"sTEyZ","  cart",[388,408,409],{"class":398},",",[388,411,413],{"class":412},"sHwdD","          \u002F\u002F Ref\u003CStorefrontCart | null>\n",[388,415,417,420,422],{"class":390,"line":416},3,[388,418,419],{"class":405},"  cartLoading",[388,421,409],{"class":398},[388,423,424],{"class":412},"   \u002F\u002F Ref\u003Cboolean>\n",[388,426,428,431],{"class":390,"line":427},4,[388,429,430],{"class":405},"  create",[388,432,433],{"class":398},",\n",[388,435,437,440],{"class":390,"line":436},5,[388,438,439],{"class":405},"  get",[388,441,433],{"class":398},[388,443,445,448,450],{"class":390,"line":444},6,[388,446,447],{"class":405},"  previewShared",[388,449,409],{"class":398},[388,451,452],{"class":412}," \u002F\u002F POS-shared carts, step 1: read-only proposal\n",[388,454,456,459,461],{"class":390,"line":455},7,[388,457,458],{"class":405},"  redeemShared",[388,460,409],{"class":398},[388,462,463],{"class":412},"  \u002F\u002F POS-shared carts, step 2: take over the cart\n",[388,465,467,470],{"class":390,"line":466},8,[388,468,469],{"class":405},"  addItem",[388,471,433],{"class":398},[388,473,475,478],{"class":390,"line":474},9,[388,476,477],{"class":405},"  removeItem",[388,479,433],{"class":398},[388,481,483,486],{"class":390,"line":482},10,[388,484,485],{"class":405},"  setCustomer",[388,487,433],{"class":398},[388,489,491,494],{"class":390,"line":490},11,[388,492,493],{"class":405},"  setCustomerType",[388,495,433],{"class":398},[388,497,499,502],{"class":390,"line":498},12,[388,500,501],{"class":405},"  setShipping",[388,503,433],{"class":398},[388,505,507,510],{"class":390,"line":506},13,[388,508,509],{"class":405},"  applyCode",[388,511,433],{"class":398},[388,513,515,518],{"class":390,"line":514},14,[388,516,517],{"class":405},"  removeCode",[388,519,433],{"class":398},[388,521,523,526],{"class":390,"line":522},15,[388,524,525],{"class":405},"  complete",[388,527,433],{"class":398},[388,529,531,534,537,541],{"class":390,"line":530},16,[388,532,533],{"class":398},"}",[388,535,536],{"class":398}," =",[388,538,540],{"class":539},"s2Zo4"," useCart",[388,542,543],{"class":405},"()\n",[371,545,546],{},[547,548,549],"strong",{},"POS shared cart handoff (two steps — viewing does not commit the customer):",[379,551,553],{"className":381,"code":552,"language":383,"meta":384,"style":384},"\u002F\u002F On \u002Fcart\u002F:cartId\u002Fshared?t=\u003Ctoken>\nconst route = useRoute()\nconst { previewShared, redeemShared } = useCart()\n\n\u002F\u002F Step 1: show the proposal. Repeatable, consumes nothing.\nconst proposal = await previewShared(cartId, route.query.t as string)\n\n\u002F\u002F Step 2: on \"Go to checkout\" — the customer takes over the cart.\nawait redeemShared(cartId, route.query.t as string)\nawait navigateTo('\u002Fcheckout')\n",[367,554,555,560,575,598,604,609,653,657,662,690],{"__ignoreMap":384},[388,556,557],{"class":390,"line":391},[388,558,559],{"class":412},"\u002F\u002F On \u002Fcart\u002F:cartId\u002Fshared?t=\u003Ctoken>\n",[388,561,562,564,567,570,573],{"class":390,"line":402},[388,563,395],{"class":394},[388,565,566],{"class":405}," route ",[388,568,569],{"class":398},"=",[388,571,572],{"class":539}," useRoute",[388,574,543],{"class":405},[388,576,577,579,582,585,587,590,592,594,596],{"class":390,"line":416},[388,578,395],{"class":394},[388,580,581],{"class":398}," {",[388,583,584],{"class":405}," previewShared",[388,586,409],{"class":398},[388,588,589],{"class":405}," redeemShared ",[388,591,533],{"class":398},[388,593,536],{"class":398},[388,595,540],{"class":539},[388,597,543],{"class":405},[388,599,600],{"class":390,"line":427},[388,601,603],{"emptyLinePlaceholder":602},true,"\n",[388,605,606],{"class":390,"line":436},[388,607,608],{"class":412},"\u002F\u002F Step 1: show the proposal. Repeatable, consumes nothing.\n",[388,610,611,613,616,618,622,624,627,629,632,635,638,640,643,646,650],{"class":390,"line":444},[388,612,395],{"class":394},[388,614,615],{"class":405}," proposal ",[388,617,569],{"class":398},[388,619,621],{"class":620},"s7zQu"," await",[388,623,584],{"class":539},[388,625,626],{"class":405},"(cartId",[388,628,409],{"class":398},[388,630,631],{"class":405}," route",[388,633,634],{"class":398},".",[388,636,637],{"class":405},"query",[388,639,634],{"class":398},[388,641,642],{"class":405},"t ",[388,644,645],{"class":620},"as",[388,647,649],{"class":648},"sBMFI"," string",[388,651,652],{"class":405},")\n",[388,654,655],{"class":390,"line":455},[388,656,603],{"emptyLinePlaceholder":602},[388,658,659],{"class":390,"line":466},[388,660,661],{"class":412},"\u002F\u002F Step 2: on \"Go to checkout\" — the customer takes over the cart.\n",[388,663,664,667,670,672,674,676,678,680,682,684,686,688],{"class":390,"line":474},[388,665,666],{"class":620},"await",[388,668,669],{"class":539}," redeemShared",[388,671,626],{"class":405},[388,673,409],{"class":398},[388,675,631],{"class":405},[388,677,634],{"class":398},[388,679,637],{"class":405},[388,681,634],{"class":398},[388,683,642],{"class":405},[388,685,645],{"class":620},[388,687,649],{"class":648},[388,689,652],{"class":405},[388,691,692,694,697,700,703,707,709],{"class":390,"line":482},[388,693,666],{"class":620},[388,695,696],{"class":539}," navigateTo",[388,698,699],{"class":405},"(",[388,701,702],{"class":398},"'",[388,704,706],{"class":705},"sfazB","\u002Fcheckout",[388,708,702],{"class":398},[388,710,652],{"class":405},[712,713],"hr",{},[363,715,717],{"id":716},"useauth",[367,718,719],{},"useAuth()",[371,721,722],{},"Manages customer session state and persists tokens in cookies.",[379,724,726],{"className":381,"code":725,"language":383,"meta":384,"style":384},"const {\n  customer,        \u002F\u002F Ref\u003CCustomerProfile | null>\n  isAuthenticated, \u002F\u002F Ref\u003Cboolean>\n  authLoading,     \u002F\u002F Ref\u003Cboolean>\n  login,\n  register,\n  sendMagicLink,\n  verifyMagicLink,\n  verifyMagicLinkCode,\n  logout,\n  getProfile,\n  updateProfile,\n} = useAuth()\n",[367,727,728,734,744,754,764,771,778,785,792,799,806,813,820],{"__ignoreMap":384},[388,729,730,732],{"class":390,"line":391},[388,731,395],{"class":394},[388,733,399],{"class":398},[388,735,736,739,741],{"class":390,"line":402},[388,737,738],{"class":405},"  customer",[388,740,409],{"class":398},[388,742,743],{"class":412},"        \u002F\u002F Ref\u003CCustomerProfile | null>\n",[388,745,746,749,751],{"class":390,"line":416},[388,747,748],{"class":405},"  isAuthenticated",[388,750,409],{"class":398},[388,752,753],{"class":412}," \u002F\u002F Ref\u003Cboolean>\n",[388,755,756,759,761],{"class":390,"line":427},[388,757,758],{"class":405},"  authLoading",[388,760,409],{"class":398},[388,762,763],{"class":412},"     \u002F\u002F Ref\u003Cboolean>\n",[388,765,766,769],{"class":390,"line":436},[388,767,768],{"class":405},"  login",[388,770,433],{"class":398},[388,772,773,776],{"class":390,"line":444},[388,774,775],{"class":405},"  register",[388,777,433],{"class":398},[388,779,780,783],{"class":390,"line":455},[388,781,782],{"class":405},"  sendMagicLink",[388,784,433],{"class":398},[388,786,787,790],{"class":390,"line":466},[388,788,789],{"class":405},"  verifyMagicLink",[388,791,433],{"class":398},[388,793,794,797],{"class":390,"line":474},[388,795,796],{"class":405},"  verifyMagicLinkCode",[388,798,433],{"class":398},[388,800,801,804],{"class":390,"line":482},[388,802,803],{"class":405},"  logout",[388,805,433],{"class":398},[388,807,808,811],{"class":390,"line":490},[388,809,810],{"class":405},"  getProfile",[388,812,433],{"class":398},[388,814,815,818],{"class":390,"line":498},[388,816,817],{"class":405},"  updateProfile",[388,819,433],{"class":398},[388,821,822,824,826,829],{"class":390,"line":506},[388,823,533],{"class":398},[388,825,536],{"class":398},[388,827,828],{"class":539}," useAuth",[388,830,543],{"class":405},[371,832,833,836],{},[547,834,835],{},"Auth middleware"," — protect a page with one line:",[379,838,840],{"className":381,"code":839,"language":383,"meta":384,"style":384},"definePageMeta({ middleware: 'auth' })\n",[367,841,842],{"__ignoreMap":384},[388,843,844,847,849,852,856,859,862,865,867,870],{"class":390,"line":391},[388,845,846],{"class":539},"definePageMeta",[388,848,699],{"class":405},[388,850,851],{"class":398},"{",[388,853,855],{"class":854},"swJcz"," middleware",[388,857,858],{"class":398},":",[388,860,861],{"class":398}," '",[388,863,864],{"class":705},"auth",[388,866,702],{"class":398},[388,868,869],{"class":398}," }",[388,871,652],{"class":405},[371,873,874,875,878],{},"Unauthenticated users are redirected to ",[367,876,877],{},"\u002Flogin"," automatically.",[712,880],{},[363,882,884,887,888,887,891],{"id":883},"useproductsearchparams-useproductbyhandlehandle-useproductbyskusku",[367,885,886],{},"useProductSearch(params)"," \u002F ",[367,889,890],{},"useProductByHandle(handle)",[367,892,893],{},"useProductBySku(sku)",[371,895,896,897,900],{},"All product composables return a ",[367,898,899],{},"useAsyncData"," result and re-fetch reactively when params change.",[379,902,904],{"className":381,"code":903,"language":383,"meta":384,"style":384},"\u002F\u002F Search with reactive params\nconst searchParams = ref({ q: '', limit: 24 })\nconst { data, pending } = useProductSearch(searchParams)\n\n\u002F\u002F PDP\nconst { data: product } = useProductByHandle(route.params.handle)\n",[367,905,906,911,950,974,978,983],{"__ignoreMap":384},[388,907,908],{"class":390,"line":391},[388,909,910],{"class":412},"\u002F\u002F Search with reactive params\n",[388,912,913,915,918,920,923,925,927,930,932,935,937,940,942,946,948],{"class":390,"line":402},[388,914,395],{"class":394},[388,916,917],{"class":405}," searchParams ",[388,919,569],{"class":398},[388,921,922],{"class":539}," ref",[388,924,699],{"class":405},[388,926,851],{"class":398},[388,928,929],{"class":854}," q",[388,931,858],{"class":398},[388,933,934],{"class":398}," ''",[388,936,409],{"class":398},[388,938,939],{"class":854}," limit",[388,941,858],{"class":398},[388,943,945],{"class":944},"sbssI"," 24",[388,947,869],{"class":398},[388,949,652],{"class":405},[388,951,952,954,956,959,961,964,966,968,971],{"class":390,"line":416},[388,953,395],{"class":394},[388,955,581],{"class":398},[388,957,958],{"class":405}," data",[388,960,409],{"class":398},[388,962,963],{"class":405}," pending ",[388,965,533],{"class":398},[388,967,536],{"class":398},[388,969,970],{"class":539}," useProductSearch",[388,972,973],{"class":405},"(searchParams)\n",[388,975,976],{"class":390,"line":427},[388,977,603],{"emptyLinePlaceholder":602},[388,979,980],{"class":390,"line":436},[388,981,982],{"class":412},"\u002F\u002F PDP\n",[388,984,985,987,989,991,993,996,998,1000,1003,1006,1008,1011,1013],{"class":390,"line":444},[388,986,395],{"class":394},[388,988,581],{"class":398},[388,990,958],{"class":854},[388,992,858],{"class":398},[388,994,995],{"class":405}," product ",[388,997,533],{"class":398},[388,999,536],{"class":398},[388,1001,1002],{"class":539}," useProductByHandle",[388,1004,1005],{"class":405},"(route",[388,1007,634],{"class":398},[388,1009,1010],{"class":405},"params",[388,1012,634],{"class":398},[388,1014,1015],{"class":405},"handle)\n",[712,1017],{},[363,1019,1021],{"id":1020},"useproductlistingparams",[367,1022,1023],{},"useProductListing(params)",[371,1025,1026],{},"Combines search, filters, and facets for category\u002Flisting pages.",[379,1028,1030],{"className":381,"code":1029,"language":383,"meta":384,"style":384},"const { products, facets, total, pending, loadMore } = useProductListing({\n  categoryId: category.value?.id,\n  limit: 24,\n})\n",[367,1031,1032,1073,1096,1107],{"__ignoreMap":384},[388,1033,1034,1036,1038,1041,1043,1046,1048,1051,1053,1056,1058,1061,1063,1065,1068,1070],{"class":390,"line":391},[388,1035,395],{"class":394},[388,1037,581],{"class":398},[388,1039,1040],{"class":405}," products",[388,1042,409],{"class":398},[388,1044,1045],{"class":405}," facets",[388,1047,409],{"class":398},[388,1049,1050],{"class":405}," total",[388,1052,409],{"class":398},[388,1054,1055],{"class":405}," pending",[388,1057,409],{"class":398},[388,1059,1060],{"class":405}," loadMore ",[388,1062,533],{"class":398},[388,1064,536],{"class":398},[388,1066,1067],{"class":539}," useProductListing",[388,1069,699],{"class":405},[388,1071,1072],{"class":398},"{\n",[388,1074,1075,1078,1080,1083,1085,1088,1091,1094],{"class":390,"line":402},[388,1076,1077],{"class":854},"  categoryId",[388,1079,858],{"class":398},[388,1081,1082],{"class":405}," category",[388,1084,634],{"class":398},[388,1086,1087],{"class":405},"value",[388,1089,1090],{"class":398},"?.",[388,1092,1093],{"class":405},"id",[388,1095,433],{"class":398},[388,1097,1098,1101,1103,1105],{"class":390,"line":416},[388,1099,1100],{"class":854},"  limit",[388,1102,858],{"class":398},[388,1104,945],{"class":944},[388,1106,433],{"class":398},[388,1108,1109,1111],{"class":390,"line":427},[388,1110,533],{"class":398},[388,1112,652],{"class":405},[712,1114],{},[363,1116,1118,887,1121],{"id":1117},"usecategories-usecategorynav",[367,1119,1120],{},"useCategories()",[367,1122,1123],{},"useCategoryNav()",[379,1125,1127],{"className":381,"code":1126,"language":383,"meta":384,"style":384},"\u002F\u002F Get a specific category\nconst { data: category } = useCategories().getByHandle(route.params.handle)\n\n\u002F\u002F Full nav tree for header menus\nconst { tree } = useCategoryNav()\n",[367,1128,1129,1134,1172,1176,1181],{"__ignoreMap":384},[388,1130,1131],{"class":390,"line":391},[388,1132,1133],{"class":412},"\u002F\u002F Get a specific category\n",[388,1135,1136,1138,1140,1142,1144,1147,1149,1151,1154,1157,1159,1162,1164,1166,1168,1170],{"class":390,"line":402},[388,1137,395],{"class":394},[388,1139,581],{"class":398},[388,1141,958],{"class":854},[388,1143,858],{"class":398},[388,1145,1146],{"class":405}," category ",[388,1148,533],{"class":398},[388,1150,536],{"class":398},[388,1152,1153],{"class":539}," useCategories",[388,1155,1156],{"class":405},"()",[388,1158,634],{"class":398},[388,1160,1161],{"class":539},"getByHandle",[388,1163,1005],{"class":405},[388,1165,634],{"class":398},[388,1167,1010],{"class":405},[388,1169,634],{"class":398},[388,1171,1015],{"class":405},[388,1173,1174],{"class":390,"line":416},[388,1175,603],{"emptyLinePlaceholder":602},[388,1177,1178],{"class":390,"line":427},[388,1179,1180],{"class":412},"\u002F\u002F Full nav tree for header menus\n",[388,1182,1183,1185,1187,1190,1192,1194,1197],{"class":390,"line":436},[388,1184,395],{"class":394},[388,1186,581],{"class":398},[388,1188,1189],{"class":405}," tree ",[388,1191,533],{"class":398},[388,1193,536],{"class":398},[388,1195,1196],{"class":539}," useCategoryNav",[388,1198,543],{"class":405},[712,1200],{},[363,1202,1204],{"id":1203},"usecheckout",[367,1205,1206],{},"useCheckout()",[379,1208,1210],{"className":381,"code":1209,"language":383,"meta":384,"style":384},"const { init, getConfirmation, loading } = useCheckout()\n\n\u002F\u002F On checkout page\nconst session = await init({ cartId: cart.value.id, provider: 'klarna', ... })\n\n\u002F\u002F On confirmation page\nconst { data: confirmation } = getConfirmation(route.params.reference)\n",[367,1211,1212,1240,1244,1249,1305,1309,1314],{"__ignoreMap":384},[388,1213,1214,1216,1218,1221,1223,1226,1228,1231,1233,1235,1238],{"class":390,"line":391},[388,1215,395],{"class":394},[388,1217,581],{"class":398},[388,1219,1220],{"class":405}," init",[388,1222,409],{"class":398},[388,1224,1225],{"class":405}," getConfirmation",[388,1227,409],{"class":398},[388,1229,1230],{"class":405}," loading ",[388,1232,533],{"class":398},[388,1234,536],{"class":398},[388,1236,1237],{"class":539}," useCheckout",[388,1239,543],{"class":405},[388,1241,1242],{"class":390,"line":402},[388,1243,603],{"emptyLinePlaceholder":602},[388,1245,1246],{"class":390,"line":416},[388,1247,1248],{"class":412},"\u002F\u002F On checkout page\n",[388,1250,1251,1253,1256,1258,1260,1262,1264,1266,1269,1271,1274,1276,1278,1280,1282,1284,1287,1289,1291,1294,1296,1298,1301,1303],{"class":390,"line":427},[388,1252,395],{"class":394},[388,1254,1255],{"class":405}," session ",[388,1257,569],{"class":398},[388,1259,621],{"class":620},[388,1261,1220],{"class":539},[388,1263,699],{"class":405},[388,1265,851],{"class":398},[388,1267,1268],{"class":854}," cartId",[388,1270,858],{"class":398},[388,1272,1273],{"class":405}," cart",[388,1275,634],{"class":398},[388,1277,1087],{"class":405},[388,1279,634],{"class":398},[388,1281,1093],{"class":405},[388,1283,409],{"class":398},[388,1285,1286],{"class":854}," provider",[388,1288,858],{"class":398},[388,1290,861],{"class":398},[388,1292,1293],{"class":705},"klarna",[388,1295,702],{"class":398},[388,1297,409],{"class":398},[388,1299,1300],{"class":398}," ...",[388,1302,869],{"class":398},[388,1304,652],{"class":405},[388,1306,1307],{"class":390,"line":436},[388,1308,603],{"emptyLinePlaceholder":602},[388,1310,1311],{"class":390,"line":444},[388,1312,1313],{"class":412},"\u002F\u002F On confirmation page\n",[388,1315,1316,1318,1320,1322,1324,1327,1329,1331,1333,1335,1337,1339,1341],{"class":390,"line":455},[388,1317,395],{"class":394},[388,1319,581],{"class":398},[388,1321,958],{"class":854},[388,1323,858],{"class":398},[388,1325,1326],{"class":405}," confirmation ",[388,1328,533],{"class":398},[388,1330,536],{"class":398},[388,1332,1225],{"class":539},[388,1334,1005],{"class":405},[388,1336,634],{"class":398},[388,1338,1010],{"class":405},[388,1340,634],{"class":398},[388,1342,1343],{"class":405},"reference)\n",[712,1345],{},[363,1347,1349],{"id":1348},"useshipping",[367,1350,1351],{},"useShipping()",[379,1353,1355],{"className":381,"code":1354,"language":383,"meta":384,"style":384},"const { options, loading, fetchOptions } = useShipping()\nawait fetchOptions({ cartId: cart.value.id, countryCode: 'SE', postalCode: '11120' })\n",[367,1356,1357,1385],{"__ignoreMap":384},[388,1358,1359,1361,1363,1366,1368,1371,1373,1376,1378,1380,1383],{"class":390,"line":391},[388,1360,395],{"class":394},[388,1362,581],{"class":398},[388,1364,1365],{"class":405}," options",[388,1367,409],{"class":398},[388,1369,1370],{"class":405}," loading",[388,1372,409],{"class":398},[388,1374,1375],{"class":405}," fetchOptions ",[388,1377,533],{"class":398},[388,1379,536],{"class":398},[388,1381,1382],{"class":539}," useShipping",[388,1384,543],{"class":405},[388,1386,1387,1389,1392,1394,1396,1398,1400,1402,1404,1406,1408,1410,1412,1415,1417,1419,1422,1424,1426,1429,1431,1433,1436,1438,1440],{"class":390,"line":402},[388,1388,666],{"class":620},[388,1390,1391],{"class":539}," fetchOptions",[388,1393,699],{"class":405},[388,1395,851],{"class":398},[388,1397,1268],{"class":854},[388,1399,858],{"class":398},[388,1401,1273],{"class":405},[388,1403,634],{"class":398},[388,1405,1087],{"class":405},[388,1407,634],{"class":398},[388,1409,1093],{"class":405},[388,1411,409],{"class":398},[388,1413,1414],{"class":854}," countryCode",[388,1416,858],{"class":398},[388,1418,861],{"class":398},[388,1420,1421],{"class":705},"SE",[388,1423,702],{"class":398},[388,1425,409],{"class":398},[388,1427,1428],{"class":854}," postalCode",[388,1430,858],{"class":398},[388,1432,861],{"class":398},[388,1434,1435],{"class":705},"11120",[388,1437,702],{"class":398},[388,1439,869],{"class":398},[388,1441,652],{"class":405},[712,1443],{},[363,1445,1447,887,1450,887,1453],{"id":1446},"useorders-usereturns-usereviews",[367,1448,1449],{},"useOrders()",[367,1451,1452],{},"useReturns()",[367,1454,1455],{},"useReviews()",[379,1457,1459],{"className":381,"code":1458,"language":383,"meta":384,"style":384},"const { orders, loadMore } = useOrders()\n\nconst { returns, create: createReturn } = useReturns()\n\nconst { reviews, statistics } = useReviews()\n",[367,1460,1461,1483,1487,1515,1519],{"__ignoreMap":384},[388,1462,1463,1465,1467,1470,1472,1474,1476,1478,1481],{"class":390,"line":391},[388,1464,395],{"class":394},[388,1466,581],{"class":398},[388,1468,1469],{"class":405}," orders",[388,1471,409],{"class":398},[388,1473,1060],{"class":405},[388,1475,533],{"class":398},[388,1477,536],{"class":398},[388,1479,1480],{"class":539}," useOrders",[388,1482,543],{"class":405},[388,1484,1485],{"class":390,"line":402},[388,1486,603],{"emptyLinePlaceholder":602},[388,1488,1489,1491,1493,1496,1498,1501,1503,1506,1508,1510,1513],{"class":390,"line":416},[388,1490,395],{"class":394},[388,1492,581],{"class":398},[388,1494,1495],{"class":405}," returns",[388,1497,409],{"class":398},[388,1499,1500],{"class":854}," create",[388,1502,858],{"class":398},[388,1504,1505],{"class":405}," createReturn ",[388,1507,533],{"class":398},[388,1509,536],{"class":398},[388,1511,1512],{"class":539}," useReturns",[388,1514,543],{"class":405},[388,1516,1517],{"class":390,"line":427},[388,1518,603],{"emptyLinePlaceholder":602},[388,1520,1521,1523,1525,1528,1530,1533,1535,1537,1540],{"class":390,"line":436},[388,1522,395],{"class":394},[388,1524,581],{"class":398},[388,1526,1527],{"class":405}," reviews",[388,1529,409],{"class":398},[388,1531,1532],{"class":405}," statistics ",[388,1534,533],{"class":398},[388,1536,536],{"class":398},[388,1538,1539],{"class":539}," useReviews",[388,1541,543],{"class":405},[712,1543],{},[363,1545,1547],{"id":1546},"usemarket",[367,1548,1549],{},"useMarket()",[371,1551,1552],{},"Active market resolved from URL path or domain.",[379,1554,1556],{"className":381,"code":1555,"language":383,"meta":384,"style":384},"const { marketId, market, switchMarket } = useMarket()\n\u002F\u002F market.value → { id, name, locale, currency, ... }\n",[367,1557,1558,1586],{"__ignoreMap":384},[388,1559,1560,1562,1564,1567,1569,1572,1574,1577,1579,1581,1584],{"class":390,"line":391},[388,1561,395],{"class":394},[388,1563,581],{"class":398},[388,1565,1566],{"class":405}," marketId",[388,1568,409],{"class":398},[388,1570,1571],{"class":405}," market",[388,1573,409],{"class":398},[388,1575,1576],{"class":405}," switchMarket ",[388,1578,533],{"class":398},[388,1580,536],{"class":398},[388,1582,1583],{"class":539}," useMarket",[388,1585,543],{"class":405},[388,1587,1588],{"class":390,"line":402},[388,1589,1590],{"class":412},"\u002F\u002F market.value → { id, name, locale, currency, ... }\n",[712,1592],{},[363,1594,1596],{"id":1595},"usecustomertype",[367,1597,1598],{},"useCustomerType()",[371,1600,1601],{},"Persists B2B\u002FB2C type in state.",[379,1603,1605],{"className":381,"code":1604,"language":383,"meta":384,"style":384},"const { customerType, setCustomerType } = useCustomerType()\n\u002F\u002F customerType: 'private' | 'business'\n",[367,1606,1607,1630],{"__ignoreMap":384},[388,1608,1609,1611,1613,1616,1618,1621,1623,1625,1628],{"class":390,"line":391},[388,1610,395],{"class":394},[388,1612,581],{"class":398},[388,1614,1615],{"class":405}," customerType",[388,1617,409],{"class":398},[388,1619,1620],{"class":405}," setCustomerType ",[388,1622,533],{"class":398},[388,1624,536],{"class":398},[388,1626,1627],{"class":539}," useCustomerType",[388,1629,543],{"class":405},[388,1631,1632],{"class":390,"line":402},[388,1633,1634],{"class":412},"\u002F\u002F customerType: 'private' | 'business'\n",[712,1636],{},[363,1638,1640],{"id":1639},"usestorefrontclient",[367,1641,1642],{},"useStorefrontClient()",[371,1644,1645,1646,1649],{},"Returns the raw ",[367,1647,1648],{},"StorefrontClient"," instance. Use when you need direct access to the SDK outside a composable.",[379,1651,1653],{"className":381,"code":1652,"language":383,"meta":384,"style":384},"const client = useStorefrontClient()\nconst product = await client.products.getBySku('SKU-123')\n",[367,1654,1655,1669],{"__ignoreMap":384},[388,1656,1657,1659,1662,1664,1667],{"class":390,"line":391},[388,1658,395],{"class":394},[388,1660,1661],{"class":405}," client ",[388,1663,569],{"class":398},[388,1665,1666],{"class":539}," useStorefrontClient",[388,1668,543],{"class":405},[388,1670,1671,1673,1675,1677,1679,1682,1684,1687,1689,1692,1694,1696,1699,1701],{"class":390,"line":402},[388,1672,395],{"class":394},[388,1674,995],{"class":405},[388,1676,569],{"class":398},[388,1678,621],{"class":620},[388,1680,1681],{"class":405}," client",[388,1683,634],{"class":398},[388,1685,1686],{"class":405},"products",[388,1688,634],{"class":398},[388,1690,1691],{"class":539},"getBySku",[388,1693,699],{"class":405},[388,1695,702],{"class":398},[388,1697,1698],{"class":705},"SKU-123",[388,1700,702],{"class":398},[388,1702,652],{"class":405},[1704,1705,1706],"style",{},"html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .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 .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}",{"title":384,"searchDepth":402,"depth":402,"links":1708},[1709,1710,1711,1713,1714,1716,1717,1718,1720,1721,1722],{"id":365,"depth":402,"text":369},{"id":716,"depth":402,"text":719},{"id":883,"depth":402,"text":1712},"useProductSearch(params) \u002F useProductByHandle(handle) \u002F useProductBySku(sku)",{"id":1020,"depth":402,"text":1023},{"id":1117,"depth":402,"text":1715},"useCategories() \u002F useCategoryNav()",{"id":1203,"depth":402,"text":1206},{"id":1348,"depth":402,"text":1351},{"id":1446,"depth":402,"text":1719},"useOrders() \u002F useReturns() \u002F useReviews()",{"id":1546,"depth":402,"text":1549},{"id":1595,"depth":402,"text":1598},{"id":1639,"depth":402,"text":1642},"All composables provided by @avvyr\u002Fstorefront-nuxt","md",null,{"questions":1727},{"en":1728},[1729,1730,1731,1732],"How do I protect a page so only signed-in customers can see it?","How do I build a category listing page with facets?","How do I handle a POS shared cart with useCart?","How do I get the raw SDK client in a Nuxt page?",{"title":332,"description":1723},"bpE6DTmkGXqhvgxX4fOVU0K8sm_1inr2UySYtyns3ho",[1736,1738],{"title":328,"path":329,"stem":330,"description":1737,"children":-1},"What @avvyr\u002Fstorefront-nuxt gives you and how to install it",{"title":316,"path":336,"stem":337,"description":1739,"children":-1},"The drop-in chat widget \u003CAvvyrAssistant \u002F> and the useAssistant() composable",1793388941537]