[{"data":1,"prerenderedAt":455},["ShallowReactive",2],{"navigation_docs":3,"-docs-getting-started-configuration":77,"-docs-getting-started-configuration-surround":450},[4,19,41,63],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":18},"Getting Started","i-ph-rocket-launch-duotone","\u002Fdocs\u002Fgetting-started","docs\u002F1.getting-started",[10,14],{"title":11,"path":12,"stem":13},"Installation","\u002Fdocs\u002Fgetting-started\u002Finstallation","docs\u002F1.getting-started\u002F1.installation",{"title":15,"path":16,"stem":17},"Configuration","\u002Fdocs\u002Fgetting-started\u002Fconfiguration","docs\u002F1.getting-started\u002F2.configuration",false,{"title":20,"icon":21,"path":22,"stem":23,"children":24,"page":18},"Storage","i-ph-database-duotone","\u002Fdocs\u002Fstorage","docs\u002F2.storage",[25,29,33,37],{"title":26,"path":27,"stem":28},"Overview","\u002Fdocs\u002Fstorage\u002Foverview","docs\u002F2.storage\u002F1.overview",{"title":30,"path":31,"stem":32},"NuxtHub","\u002Fdocs\u002Fstorage\u002Fnuxthub","docs\u002F2.storage\u002F2.nuxthub",{"title":34,"path":35,"stem":36},"Nitro Storage","\u002Fdocs\u002Fstorage\u002Fnitro","docs\u002F2.storage\u002F3.nitro",{"title":38,"path":39,"stem":40},"Memory","\u002Fdocs\u002Fstorage\u002Fmemory","docs\u002F2.storage\u002F4.memory",{"title":42,"icon":43,"path":44,"stem":45,"children":46,"page":18},"Composables","i-ph-puzzle-piece-duotone","\u002Fdocs\u002Fcomposables","docs\u002F3.composables",[47,51,55,59],{"title":48,"path":49,"stem":50},"useFlag()","\u002Fdocs\u002Fcomposables\u002Fuse-flag","docs\u002F3.composables\u002F1.use-flag",{"title":52,"path":53,"stem":54},"useVariant()","\u002Fdocs\u002Fcomposables\u002Fuse-variant","docs\u002F3.composables\u002F2.use-variant",{"title":56,"path":57,"stem":58},"useAllFlags()","\u002Fdocs\u002Fcomposables\u002Fuse-all-flags","docs\u002F3.composables\u002F3.use-all-flags",{"title":60,"path":61,"stem":62},"useFlagsStatus()","\u002Fdocs\u002Fcomposables\u002Fuse-flags-status","docs\u002F3.composables\u002F4.use-flags-status",{"title":64,"icon":65,"path":66,"stem":67,"children":68,"page":18},"Server","i-ph-cloud-duotone","\u002Fdocs\u002Fserver","docs\u002F4.server",[69,73],{"title":70,"path":71,"stem":72},"API Route","\u002Fdocs\u002Fserver\u002Fapi-route","docs\u002F4.server\u002F1.api-route",{"title":74,"path":75,"stem":76},"Server Utils","\u002Fdocs\u002Fserver\u002Fserver-utils","docs\u002F4.server\u002F2.server-utils",{"id":78,"title":15,"body":79,"description":442,"extension":443,"links":444,"meta":445,"navigation":447,"path":16,"seo":448,"stem":17,"__hash__":449},"docs\u002Fdocs\u002F1.getting-started\u002F2.configuration.md",{"type":80,"value":81,"toc":438},"minimark",[82,87,100,294,347,351,354,418,434],[83,84,86],"h2",{"id":85},"module-options","Module Options",[88,89,90,91,95,96,99],"p",{},"Configure the module in your ",[92,93,94],"code",{},"nuxt.config.ts"," under the ",[92,97,98],{},"unleash"," key:",[101,102,107],"pre",{"className":103,"code":104,"filename":94,"language":105,"meta":106,"style":106},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineNuxtConfig({\n  unleash: {\n    url: 'https:\u002F\u002Fyour-proxy.example.com\u002Fapi\u002Ffrontend',\n    token: 'your-frontend-api-token',\n    appName: 'my-app',\n    environment: 'default',\n    refreshInterval: 15_000,\n    clientRefreshInterval: 30_000,\n    storage: 'memory',\n    storageKey: 'unleash:flags',\n  },\n})\n","ts","",[92,108,109,133,146,167,184,201,218,232,245,262,279,285],{"__ignoreMap":106},[110,111,114,118,121,125,129],"span",{"class":112,"line":113},"line",1,[110,115,117],{"class":116},"s7zQu","export",[110,119,120],{"class":116}," default",[110,122,124],{"class":123},"s2Zo4"," defineNuxtConfig",[110,126,128],{"class":127},"sTEyZ","(",[110,130,132],{"class":131},"sMK4o","{\n",[110,134,136,140,143],{"class":112,"line":135},2,[110,137,139],{"class":138},"swJcz","  unleash",[110,141,142],{"class":131},":",[110,144,145],{"class":131}," {\n",[110,147,149,152,154,157,161,164],{"class":112,"line":148},3,[110,150,151],{"class":138},"    url",[110,153,142],{"class":131},[110,155,156],{"class":131}," '",[110,158,160],{"class":159},"sfazB","https:\u002F\u002Fyour-proxy.example.com\u002Fapi\u002Ffrontend",[110,162,163],{"class":131},"'",[110,165,166],{"class":131},",\n",[110,168,170,173,175,177,180,182],{"class":112,"line":169},4,[110,171,172],{"class":138},"    token",[110,174,142],{"class":131},[110,176,156],{"class":131},[110,178,179],{"class":159},"your-frontend-api-token",[110,181,163],{"class":131},[110,183,166],{"class":131},[110,185,187,190,192,194,197,199],{"class":112,"line":186},5,[110,188,189],{"class":138},"    appName",[110,191,142],{"class":131},[110,193,156],{"class":131},[110,195,196],{"class":159},"my-app",[110,198,163],{"class":131},[110,200,166],{"class":131},[110,202,204,207,209,211,214,216],{"class":112,"line":203},6,[110,205,206],{"class":138},"    environment",[110,208,142],{"class":131},[110,210,156],{"class":131},[110,212,213],{"class":159},"default",[110,215,163],{"class":131},[110,217,166],{"class":131},[110,219,221,224,226,230],{"class":112,"line":220},7,[110,222,223],{"class":138},"    refreshInterval",[110,225,142],{"class":131},[110,227,229],{"class":228},"sbssI"," 15_000",[110,231,166],{"class":131},[110,233,235,238,240,243],{"class":112,"line":234},8,[110,236,237],{"class":138},"    clientRefreshInterval",[110,239,142],{"class":131},[110,241,242],{"class":228}," 30_000",[110,244,166],{"class":131},[110,246,248,251,253,255,258,260],{"class":112,"line":247},9,[110,249,250],{"class":138},"    storage",[110,252,142],{"class":131},[110,254,156],{"class":131},[110,256,257],{"class":159},"memory",[110,259,163],{"class":131},[110,261,166],{"class":131},[110,263,265,268,270,272,275,277],{"class":112,"line":264},10,[110,266,267],{"class":138},"    storageKey",[110,269,142],{"class":131},[110,271,156],{"class":131},[110,273,274],{"class":159},"unleash:flags",[110,276,163],{"class":131},[110,278,166],{"class":131},[110,280,282],{"class":112,"line":281},11,[110,283,284],{"class":131},"  },\n",[110,286,288,291],{"class":112,"line":287},12,[110,289,290],{"class":131},"}",[110,292,293],{"class":127},")\n",[295,296,297,304,308,312,317,323,332,342],"field-group",{},[298,299,303],"field",{"name":300,"type":301,":required":302},"url","string","true","Unleash Proxy Frontend API URL.",[298,305,307],{"name":306,"type":301,":required":302},"token","Frontend API token. Stays server-side only — never exposed to the client.",[298,309,311],{"name":310,"type":301,":required":302},"appName","Application name sent to the Unleash proxy.",[298,313,316],{"name":314,"type":301,"default":315},"environment","'default'","Environment name.",[298,318,322],{"name":319,"type":320,"default":321},"refreshInterval","number","15000","Server-side stale-while-revalidate TTL in milliseconds. When cached flags are older than this, the next request triggers a background refresh.",[298,324,327,328,331],{"name":325,"type":320,"default":326},"clientRefreshInterval","30000","Client-side polling interval in milliseconds. Set to ",[92,329,330],{},"0"," to disable client polling entirely.",[298,333,337,338,341],{"name":334,"type":335,"default":336},"storage","'nuxthub' | 'nitro' | 'memory'","'memory'","Storage backend for caching flags. See ",[339,340,20],"a",{"href":27}," for details.",[298,343,346],{"name":344,"type":301,"default":345},"storageKey","'unleash:flags'","Key prefix used in storage.",[83,348,350],{"id":349},"runtime-config","Runtime Config",[88,352,353],{},"The module splits config into private (server-only) and public (client + server):",[355,356,357,373],"table",{},[358,359,360],"thead",{},[361,362,363,367,370],"tr",{},[364,365,366],"th",{},"Key",[364,368,369],{},"Scope",[364,371,372],{},"Contains",[374,375,376,400],"tbody",{},[361,377,378,384,387],{},[379,380,381],"td",{},[92,382,383],{},"runtimeConfig.unleash",[379,385,386],{},"Server only",[379,388,389,391,392,391,394,391,396,391,398],{},[92,390,300],{},", ",[92,393,306],{},[92,395,310],{},[92,397,314],{},[92,399,319],{},[361,401,402,407,410],{},[379,403,404],{},[92,405,406],{},"runtimeConfig.public.unleash",[379,408,409],{},"Client + Server",[379,411,412,391,414,391,416],{},[92,413,310],{},[92,415,314],{},[92,417,325],{},[419,420,421,422,424,425,429,430,433],"warning",{},"The ",[92,423,306],{}," is ",[426,427,428],"strong",{},"never"," sent to the client. All client communication goes through the internal ",[92,431,432],{},"\u002Fapi\u002F_unleash\u002Fflags"," route.",[435,436,437],"style",{},"html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}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 .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":106,"searchDepth":135,"depth":135,"links":439},[440,441],{"id":85,"depth":135,"text":86},{"id":349,"depth":135,"text":350},"All configuration options for nuxt-unleash.","md",null,{"icon":446},"i-ph-sliders-horizontal-duotone",true,{"title":15,"description":442},"Br4oTVOcUSRPT5Mic2r8F1T3R4-0Jl6J67B3LNPXzRY",[451,453],{"title":11,"path":12,"stem":13,"description":452,"children":-1},"Install and configure nuxt-unleash in your Nuxt project.",{"title":26,"path":27,"stem":28,"description":454,"children":-1},"How nuxt-unleash caches feature flags across different runtimes.",1775559945628]