[{"data":1,"prerenderedAt":1225},["ShallowReactive",2],{"navigation":3,"docs-path-index":208,"-docs-modules-nitro-storage":272,"-docs-modules-nitro-storage-surround":1220},[4],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":52},"Docs","i-lucide-book-marked","\u002Fdocs","docs",[10,26,53,169,190],{"title":11,"path":12,"stem":13,"children":14,"icon":25},"Getting Started","\u002Fdocs\u002Fgetting-started","docs\u002F1.getting-started\u002F1.index",[15,17,21],{"title":16,"path":12,"stem":13},"Introduction",{"title":18,"path":19,"stem":20},"Installation","\u002Fdocs\u002Fgetting-started\u002Finstallation","docs\u002F1.getting-started\u002F2.installation",{"title":22,"path":23,"stem":24},"Examples","\u002Fdocs\u002Fgetting-started\u002Fexamples","docs\u002F1.getting-started\u002F3.examples","i-lucide-rocket",{"title":27,"icon":28,"path":29,"stem":30,"children":31,"page":52},"Core features","i-lucide-square-function","\u002Fdocs\u002Fcore-features","docs\u002F2.core-features",[32,36,40,44,48],{"title":33,"path":34,"stem":35},"Configuration","\u002Fdocs\u002Fcore-features\u002Fconfiguration","docs\u002F2.core-features\u002F0.configuration",{"title":37,"path":38,"stem":39},"Dependency Injection","\u002Fdocs\u002Fcore-features\u002Fcontainer","docs\u002F2.core-features\u002F1.container",{"title":41,"path":42,"stem":43},"Controllers","\u002Fdocs\u002Fcore-features\u002Fcontrollers","docs\u002F2.core-features\u002F2.controllers",{"title":45,"path":46,"stem":47},"Middlewares","\u002Fdocs\u002Fcore-features\u002Fmiddlewares","docs\u002F2.core-features\u002F3.middlewares",{"title":49,"path":50,"stem":51},"Validation","\u002Fdocs\u002Fcore-features\u002Fvalidation","docs\u002F2.core-features\u002F4.validation",false,{"title":54,"icon":55,"defaultOpen":56,"path":57,"stem":58,"children":59,"page":52},"Modules","i-lucide-boxes",true,"\u002Fdocs\u002Fmodules","docs\u002F3.modules",[60,77,93,101,116,127,142,161],{"title":61,"icon":52,"defaultOpen":52,"path":62,"stem":63,"children":64,"page":52},"Auth","\u002Fdocs\u002Fmodules\u002Fauth","docs\u002F3.modules\u002F1.auth",[65,69,73],{"title":66,"path":67,"stem":68},"Overview","\u002Fdocs\u002Fmodules\u002Fauth\u002Foverview","docs\u002F3.modules\u002F1.auth\u002F0.overview",{"title":70,"path":71,"stem":72},"Decorators","\u002Fdocs\u002Fmodules\u002Fauth\u002Fdecorators","docs\u002F3.modules\u002F1.auth\u002F1.decorators",{"title":74,"path":75,"stem":76},"API Reference","\u002Fdocs\u002Fmodules\u002Fauth\u002Fapi","docs\u002F3.modules\u002F1.auth\u002F2.api",{"title":78,"icon":52,"defaultOpen":52,"path":79,"stem":80,"children":81,"page":52},"Logger","\u002Fdocs\u002Fmodules\u002Flogger","docs\u002F3.modules\u002F2.logger",[82,85,89],{"title":66,"path":83,"stem":84},"\u002Fdocs\u002Fmodules\u002Flogger\u002Foverview","docs\u002F3.modules\u002F2.logger\u002F0.overview",{"title":86,"path":87,"stem":88},"Drains & Adapters","\u002Fdocs\u002Fmodules\u002Flogger\u002Fdrivers","docs\u002F3.modules\u002F2.logger\u002F1.drivers",{"title":90,"path":91,"stem":92},"API","\u002Fdocs\u002Fmodules\u002Flogger\u002Fapi","docs\u002F3.modules\u002F2.logger\u002F2.api",{"title":94,"icon":52,"defaultOpen":52,"path":95,"stem":96,"children":97,"page":52},"Serverless","\u002Fdocs\u002Fmodules\u002Fserverless","docs\u002F3.modules\u002F3.serverless",[98],{"title":66,"path":99,"stem":100},"\u002Fdocs\u002Fmodules\u002Fserverless\u002Foverview","docs\u002F3.modules\u002F3.serverless\u002F0.overview",{"title":102,"icon":52,"defaultOpen":52,"path":103,"stem":104,"children":105,"page":52},"Storage","\u002Fdocs\u002Fmodules\u002Fstorage","docs\u002F3.modules\u002F4.storage",[106,109,113],{"title":66,"path":107,"stem":108},"\u002Fdocs\u002Fmodules\u002Fstorage\u002Foverview","docs\u002F3.modules\u002F4.storage\u002F0.overview",{"title":110,"path":111,"stem":112},"Drivers","\u002Fdocs\u002Fmodules\u002Fstorage\u002Fdrivers","docs\u002F3.modules\u002F4.storage\u002F1.drivers",{"title":90,"path":114,"stem":115},"\u002Fdocs\u002Fmodules\u002Fstorage\u002Fapi","docs\u002F3.modules\u002F4.storage\u002F2.api",{"title":117,"icon":52,"defaultOpen":52,"path":118,"stem":119,"children":120,"page":52},"Web Sockets","\u002Fdocs\u002Fmodules\u002Fweb-sockets","docs\u002F3.modules\u002F5.web-sockets",[121,124],{"title":66,"path":122,"stem":123},"\u002Fdocs\u002Fmodules\u002Fweb-sockets\u002Foverview","docs\u002F3.modules\u002F5.web-sockets\u002F0.overview",{"title":90,"path":125,"stem":126},"\u002Fdocs\u002Fmodules\u002Fweb-sockets\u002Fapi","docs\u002F3.modules\u002F5.web-sockets\u002F1.api",{"title":128,"icon":52,"defaultOpen":52,"path":129,"stem":130,"children":131,"page":52},"Schema","\u002Fdocs\u002Fmodules\u002Fschema","docs\u002F3.modules\u002F6.schema",[132,135,138],{"title":66,"path":133,"stem":134},"\u002Fdocs\u002Fmodules\u002Fschema\u002Foverview","docs\u002F3.modules\u002F6.schema\u002F0.overview",{"title":70,"path":136,"stem":137},"\u002Fdocs\u002Fmodules\u002Fschema\u002Fdecorators","docs\u002F3.modules\u002F6.schema\u002F1.decorators",{"title":139,"path":140,"stem":141},"Scalar","\u002Fdocs\u002Fmodules\u002Fschema\u002Fscalar","docs\u002F3.modules\u002F6.schema\u002F2.scalar",{"title":143,"icon":52,"defaultOpen":52,"path":144,"stem":145,"children":146,"page":52},"Nitro","\u002Fdocs\u002Fmodules\u002Fnitro","docs\u002F3.modules\u002F7.nitro",[147,150,153,157],{"title":66,"path":148,"stem":149},"\u002Fdocs\u002Fmodules\u002Fnitro\u002Foverview","docs\u002F3.modules\u002F7.nitro\u002F0.overview",{"title":102,"path":151,"stem":152},"\u002Fdocs\u002Fmodules\u002Fnitro\u002Fstorage","docs\u002F3.modules\u002F7.nitro\u002F1.storage",{"title":154,"path":155,"stem":156},"File-Based Routes","\u002Fdocs\u002Fmodules\u002Fnitro\u002Ffile-based-routes","docs\u002F3.modules\u002F7.nitro\u002F2.file-based-routes",{"title":158,"path":159,"stem":160},"Middleware","\u002Fdocs\u002Fmodules\u002Fnitro\u002Fmiddleware","docs\u002F3.modules\u002F7.nitro\u002F3.middleware",{"title":162,"icon":52,"defaultOpen":52,"path":163,"stem":164,"children":165,"page":52},"Vite","\u002Fdocs\u002Fmodules\u002Fvite","docs\u002F3.modules\u002F8.vite",[166],{"title":66,"path":167,"stem":168},"\u002Fdocs\u002Fmodules\u002Fvite\u002Foverview","docs\u002F3.modules\u002F8.vite\u002F0.overview",{"title":170,"icon":171,"path":172,"stem":173,"children":174,"page":52},"Deployment","i-lucide-cloud-upload","\u002Fdocs\u002Fdeployment","docs\u002F4.deployment",[175,178,182,186],{"title":66,"path":176,"stem":177},"\u002Fdocs\u002Fdeployment\u002Foverview","docs\u002F4.deployment\u002F0.overview",{"title":179,"path":180,"stem":181},"Vercel","\u002Fdocs\u002Fdeployment\u002Fvercel","docs\u002F4.deployment\u002F1.vercel",{"title":183,"path":184,"stem":185},"AWS Lambda","\u002Fdocs\u002Fdeployment\u002Faws-lambda","docs\u002F4.deployment\u002F2.aws-lambda",{"title":187,"path":188,"stem":189},"Azure Functions","\u002Fdocs\u002Fdeployment\u002Fazure-functions","docs\u002F4.deployment\u002F3.azure-functions",{"title":191,"icon":192,"path":193,"stem":194,"children":195,"page":52},"Advanced","i-lucide-brain","\u002Fdocs\u002Fadvanced","docs\u002F99.advanced",[196,200,204],{"title":197,"path":198,"stem":199},"Custom Decorator","\u002Fdocs\u002Fadvanced\u002Fcustom-decorator","docs\u002F99.advanced\u002F1.custom-decorator",{"title":201,"path":202,"stem":203},"Plugins","\u002Fdocs\u002Fadvanced\u002Fcustom-plugin","docs\u002F99.advanced\u002F2.custom-plugin",{"title":205,"path":206,"stem":207},"Custom CLI Command","\u002Fdocs\u002Fadvanced\u002Fcustom-cli-command","docs\u002F99.advanced\u002F3.custom-cli-command",[209,211,213,214,215,216,218,219,220,221,222,223,225,227,228,229,230,232,233,234,235,237,238,240,241,242,243,245,246,247,249,250,251,252,254,255,256,257,258,260,261,263,264,265,266,267,269,270,271],{"path":210},"\u002Fdocs\u002F.navigation",{"path":212},"\u002Fdocs\u002Fgetting-started\u002F.navigation",{"path":12},{"path":19},{"path":23},{"path":217},"\u002Fdocs\u002Fcore-features\u002F.navigation",{"path":34},{"path":38},{"path":42},{"path":46},{"path":50},{"path":224},"\u002Fdocs\u002Fmodules\u002F.navigation",{"path":226},"\u002Fdocs\u002Fmodules\u002Fauth\u002F.navigation",{"path":67},{"path":71},{"path":75},{"path":231},"\u002Fdocs\u002Fmodules\u002Flogger\u002F.navigation",{"path":83},{"path":87},{"path":91},{"path":236},"\u002Fdocs\u002Fmodules\u002Fserverless\u002F.navigation",{"path":99},{"path":239},"\u002Fdocs\u002Fmodules\u002Fstorage\u002F.navigation",{"path":107},{"path":111},{"path":114},{"path":244},"\u002Fdocs\u002Fmodules\u002Fweb-sockets\u002F.navigation",{"path":122},{"path":125},{"path":248},"\u002Fdocs\u002Fmodules\u002Fschema\u002F.navigation",{"path":133},{"path":136},{"path":140},{"path":253},"\u002Fdocs\u002Fmodules\u002Fnitro\u002F.navigation",{"path":148},{"path":151},{"path":155},{"path":159},{"path":259},"\u002Fdocs\u002Fmodules\u002Fvite\u002F.navigation",{"path":167},{"path":262},"\u002Fdocs\u002Fdeployment\u002F.navigation",{"path":176},{"path":180},{"path":184},{"path":188},{"path":268},"\u002Fdocs\u002Fadvanced\u002F.navigation",{"path":198},{"path":202},{"path":206},{"id":273,"title":102,"body":274,"description":1214,"extension":1215,"links":1216,"meta":1217,"navigation":56,"path":151,"seo":1218,"stem":152,"__hash__":1219},"docs\u002Fdocs\u002F3.modules\u002F7.nitro\u002F1.storage.md",{"type":275,"value":276,"toc":1208},"minimark",[277,297,301,312,511,515,521,939,943,951,1090,1093,1097,1204],[278,279,280,281,285,286,289,290,293,294,296],"p",{},"The Nitro integration replaces the default ",[282,283,284],"code",{},"StorageManager"," with ",[282,287,288],{},"NitroStorageManager",", which delegates all operations to Nitro's built-in ",[282,291,292],{},"useStorage()"," API. Your controllers use the same ",[282,295,284],{}," interface - no code changes needed.",[298,299,33],"h2",{"id":300},"configuration",[278,302,303,304,307,308,311],{},"Storage drivers are configured in ",[282,305,306],{},"nitro.config.ts",", not at runtime. The standard ",[282,309,310],{},"StorageManager.mount()"," method is not supported and will log a warning if called.",[313,314,319],"pre",{"className":315,"code":316,"filename":306,"language":317,"meta":318,"style":318},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { vercubeNitro } from '@vercube\u002Fnitro';\nimport { defineConfig } from 'nitro';\n\nexport default defineConfig({\n  modules: [vercubeNitro()],\n  storage: {\n    cache: {\n      driver: 'redis',\n      url: process.env.REDIS_URL,\n    },\n  },\n});\n","ts","",[282,320,321,357,380,386,404,426,437,447,464,488,494,500],{"__ignoreMap":318},[322,323,326,330,334,338,341,344,347,351,354],"span",{"class":324,"line":325},"line",1,[322,327,329],{"class":328},"s7zQu","import",[322,331,333],{"class":332},"sMK4o"," {",[322,335,337],{"class":336},"sTEyZ"," vercubeNitro",[322,339,340],{"class":332}," }",[322,342,343],{"class":328}," from",[322,345,346],{"class":332}," '",[322,348,350],{"class":349},"sfazB","@vercube\u002Fnitro",[322,352,353],{"class":332},"'",[322,355,356],{"class":332},";\n",[322,358,360,362,364,367,369,371,373,376,378],{"class":324,"line":359},2,[322,361,329],{"class":328},[322,363,333],{"class":332},[322,365,366],{"class":336}," defineConfig",[322,368,340],{"class":332},[322,370,343],{"class":328},[322,372,346],{"class":332},[322,374,375],{"class":349},"nitro",[322,377,353],{"class":332},[322,379,356],{"class":332},[322,381,383],{"class":324,"line":382},3,[322,384,385],{"emptyLinePlaceholder":56},"\n",[322,387,389,392,395,398,401],{"class":324,"line":388},4,[322,390,391],{"class":328},"export",[322,393,394],{"class":328}," default",[322,396,366],{"class":397},"s2Zo4",[322,399,400],{"class":336},"(",[322,402,403],{"class":332},"{\n",[322,405,407,411,414,417,420,423],{"class":324,"line":406},5,[322,408,410],{"class":409},"swJcz","  modules",[322,412,413],{"class":332},":",[322,415,416],{"class":336}," [",[322,418,419],{"class":397},"vercubeNitro",[322,421,422],{"class":336},"()]",[322,424,425],{"class":332},",\n",[322,427,429,432,434],{"class":324,"line":428},6,[322,430,431],{"class":409},"  storage",[322,433,413],{"class":332},[322,435,436],{"class":332}," {\n",[322,438,440,443,445],{"class":324,"line":439},7,[322,441,442],{"class":409},"    cache",[322,444,413],{"class":332},[322,446,436],{"class":332},[322,448,450,453,455,457,460,462],{"class":324,"line":449},8,[322,451,452],{"class":409},"      driver",[322,454,413],{"class":332},[322,456,346],{"class":332},[322,458,459],{"class":349},"redis",[322,461,353],{"class":332},[322,463,425],{"class":332},[322,465,467,470,472,475,478,481,483,486],{"class":324,"line":466},9,[322,468,469],{"class":409},"      url",[322,471,413],{"class":332},[322,473,474],{"class":336}," process",[322,476,477],{"class":332},".",[322,479,480],{"class":336},"env",[322,482,477],{"class":332},[322,484,485],{"class":336},"REDIS_URL",[322,487,425],{"class":332},[322,489,491],{"class":324,"line":490},10,[322,492,493],{"class":332},"    },\n",[322,495,497],{"class":324,"line":496},11,[322,498,499],{"class":332},"  },\n",[322,501,503,506,509],{"class":324,"line":502},12,[322,504,505],{"class":332},"}",[322,507,508],{"class":336},")",[322,510,356],{"class":332},[298,512,514],{"id":513},"using-storage-in-a-controller","Using Storage in a Controller",[278,516,517,518,520],{},"Inject ",[282,519,284],{}," exactly as you would in a standalone Vercube app:",[313,522,525],{"className":315,"code":523,"filename":524,"language":317,"meta":318,"style":318},"import { Controller, Get, Param } from '@vercube\u002Fcore';\nimport { Inject } from '@vercube\u002Fdi';\nimport { StorageManager } from '@vercube\u002Fstorage';\n\n@Controller('\u002Fapi\u002Fcache')\nexport class CacheController {\n\n  @Inject(StorageManager)\n  private storage: StorageManager;\n\n  @Get('\u002F:key')\n  async get(@Param('key') key: string) {\n    const value = await this.storage.getItem\u003Cstring>({ key });\n    return { key, value };\n  }\n\n  @Get('\u002Fset\u002F:key\u002F:value')\n  async set(@Param('key') key: string, @Param('value') value: string) {\n    await this.storage.setItem({ key, value });\n    return { key, value };\n  }\n}\n","src\u002Froutes\u002FCacheController.ts",[282,526,527,560,582,604,608,628,642,646,657,671,675,693,731,780,797,803,808,826,882,913,928,933],{"__ignoreMap":318},[322,528,529,531,533,536,539,542,544,547,549,551,553,556,558],{"class":324,"line":325},[322,530,329],{"class":328},[322,532,333],{"class":332},[322,534,535],{"class":336}," Controller",[322,537,538],{"class":332},",",[322,540,541],{"class":336}," Get",[322,543,538],{"class":332},[322,545,546],{"class":336}," Param",[322,548,340],{"class":332},[322,550,343],{"class":328},[322,552,346],{"class":332},[322,554,555],{"class":349},"@vercube\u002Fcore",[322,557,353],{"class":332},[322,559,356],{"class":332},[322,561,562,564,566,569,571,573,575,578,580],{"class":324,"line":359},[322,563,329],{"class":328},[322,565,333],{"class":332},[322,567,568],{"class":336}," Inject",[322,570,340],{"class":332},[322,572,343],{"class":328},[322,574,346],{"class":332},[322,576,577],{"class":349},"@vercube\u002Fdi",[322,579,353],{"class":332},[322,581,356],{"class":332},[322,583,584,586,588,591,593,595,597,600,602],{"class":324,"line":382},[322,585,329],{"class":328},[322,587,333],{"class":332},[322,589,590],{"class":336}," StorageManager",[322,592,340],{"class":332},[322,594,343],{"class":328},[322,596,346],{"class":332},[322,598,599],{"class":349},"@vercube\u002Fstorage",[322,601,353],{"class":332},[322,603,356],{"class":332},[322,605,606],{"class":324,"line":388},[322,607,385],{"emptyLinePlaceholder":56},[322,609,610,613,616,618,620,623,625],{"class":324,"line":406},[322,611,612],{"class":332},"@",[322,614,615],{"class":397},"Controller",[322,617,400],{"class":336},[322,619,353],{"class":332},[322,621,622],{"class":349},"\u002Fapi\u002Fcache",[322,624,353],{"class":332},[322,626,627],{"class":336},")\n",[322,629,630,632,636,640],{"class":324,"line":428},[322,631,391],{"class":328},[322,633,635],{"class":634},"spNyl"," class",[322,637,639],{"class":638},"sBMFI"," CacheController",[322,641,436],{"class":332},[322,643,644],{"class":324,"line":439},[322,645,385],{"emptyLinePlaceholder":56},[322,647,648,651,654],{"class":324,"line":449},[322,649,650],{"class":332},"  @",[322,652,653],{"class":397},"Inject",[322,655,656],{"class":336},"(StorageManager)\n",[322,658,659,662,665,667,669],{"class":324,"line":466},[322,660,661],{"class":634},"  private",[322,663,664],{"class":409}," storage",[322,666,413],{"class":332},[322,668,590],{"class":638},[322,670,356],{"class":332},[322,672,673],{"class":324,"line":490},[322,674,385],{"emptyLinePlaceholder":56},[322,676,677,679,682,684,686,689,691],{"class":324,"line":496},[322,678,650],{"class":332},[322,680,681],{"class":397},"Get",[322,683,400],{"class":336},[322,685,353],{"class":332},[322,687,688],{"class":349},"\u002F:key",[322,690,353],{"class":332},[322,692,627],{"class":336},[322,694,695,698,701,704,707,709,711,714,716,719,722,724,727,729],{"class":324,"line":502},[322,696,697],{"class":634},"  async",[322,699,700],{"class":409}," get",[322,702,703],{"class":332},"(@",[322,705,706],{"class":397},"Param",[322,708,400],{"class":336},[322,710,353],{"class":332},[322,712,713],{"class":349},"key",[322,715,353],{"class":332},[322,717,718],{"class":336},") ",[322,720,713],{"class":721},"sHdIc",[322,723,413],{"class":332},[322,725,726],{"class":638}," string",[322,728,508],{"class":332},[322,730,436],{"class":332},[322,732,734,737,740,743,746,749,752,754,757,760,763,766,768,771,774,776,778],{"class":324,"line":733},13,[322,735,736],{"class":634},"    const",[322,738,739],{"class":336}," value",[322,741,742],{"class":332}," =",[322,744,745],{"class":328}," await",[322,747,748],{"class":332}," this.",[322,750,751],{"class":336},"storage",[322,753,477],{"class":332},[322,755,756],{"class":397},"getItem",[322,758,759],{"class":332},"\u003C",[322,761,762],{"class":638},"string",[322,764,765],{"class":332},">",[322,767,400],{"class":409},[322,769,770],{"class":332},"{",[322,772,773],{"class":336}," key",[322,775,340],{"class":332},[322,777,508],{"class":409},[322,779,356],{"class":332},[322,781,783,786,788,790,792,794],{"class":324,"line":782},14,[322,784,785],{"class":328},"    return",[322,787,333],{"class":332},[322,789,773],{"class":336},[322,791,538],{"class":332},[322,793,739],{"class":336},[322,795,796],{"class":332}," };\n",[322,798,800],{"class":324,"line":799},15,[322,801,802],{"class":332},"  }\n",[322,804,806],{"class":324,"line":805},16,[322,807,385],{"emptyLinePlaceholder":56},[322,809,811,813,815,817,819,822,824],{"class":324,"line":810},17,[322,812,650],{"class":332},[322,814,681],{"class":397},[322,816,400],{"class":336},[322,818,353],{"class":332},[322,820,821],{"class":349},"\u002Fset\u002F:key\u002F:value",[322,823,353],{"class":332},[322,825,627],{"class":336},[322,827,829,831,834,836,838,840,842,844,846,848,850,852,854,856,859,861,863,865,868,870,872,874,876,878,880],{"class":324,"line":828},18,[322,830,697],{"class":634},[322,832,833],{"class":409}," set",[322,835,703],{"class":332},[322,837,706],{"class":397},[322,839,400],{"class":336},[322,841,353],{"class":332},[322,843,713],{"class":349},[322,845,353],{"class":332},[322,847,718],{"class":336},[322,849,713],{"class":721},[322,851,413],{"class":332},[322,853,726],{"class":638},[322,855,538],{"class":332},[322,857,858],{"class":332}," @",[322,860,706],{"class":397},[322,862,400],{"class":336},[322,864,353],{"class":332},[322,866,867],{"class":349},"value",[322,869,353],{"class":332},[322,871,718],{"class":336},[322,873,867],{"class":721},[322,875,413],{"class":332},[322,877,726],{"class":638},[322,879,508],{"class":332},[322,881,436],{"class":332},[322,883,885,888,890,892,894,897,899,901,903,905,907,909,911],{"class":324,"line":884},19,[322,886,887],{"class":328},"    await",[322,889,748],{"class":332},[322,891,751],{"class":336},[322,893,477],{"class":332},[322,895,896],{"class":397},"setItem",[322,898,400],{"class":409},[322,900,770],{"class":332},[322,902,773],{"class":336},[322,904,538],{"class":332},[322,906,739],{"class":336},[322,908,340],{"class":332},[322,910,508],{"class":409},[322,912,356],{"class":332},[322,914,916,918,920,922,924,926],{"class":324,"line":915},20,[322,917,785],{"class":328},[322,919,333],{"class":332},[322,921,773],{"class":336},[322,923,538],{"class":332},[322,925,739],{"class":336},[322,927,796],{"class":332},[322,929,931],{"class":324,"line":930},21,[322,932,802],{"class":332},[322,934,936],{"class":324,"line":935},22,[322,937,938],{"class":332},"}\n",[298,940,942],{"id":941},"named-storage","Named Storage",[278,944,945,946,948,949,413],{},"Pass the ",[282,947,751],{}," option to target a named storage defined in ",[282,950,306],{},[313,952,954],{"className":315,"code":953,"language":317,"meta":318,"style":318},"\u002F\u002F Read from the 'cache' storage\nconst value = await this.storage.getItem\u003Cstring>({ storage: 'cache', key: 'foo' });\n\n\u002F\u002F Write to the 'cache' storage\nawait this.storage.setItem({ storage: 'cache', key: 'foo', value: 'bar' });\n",[282,955,956,962,1023,1027,1032],{"__ignoreMap":318},[322,957,958],{"class":324,"line":325},[322,959,961],{"class":960},"sHwdD","\u002F\u002F Read from the 'cache' storage\n",[322,963,964,967,970,973,975,977,979,981,983,985,987,989,991,993,995,997,999,1002,1004,1006,1008,1010,1012,1015,1017,1019,1021],{"class":324,"line":359},[322,965,966],{"class":634},"const",[322,968,969],{"class":336}," value ",[322,971,972],{"class":332},"=",[322,974,745],{"class":328},[322,976,748],{"class":332},[322,978,751],{"class":336},[322,980,477],{"class":332},[322,982,756],{"class":397},[322,984,759],{"class":332},[322,986,762],{"class":638},[322,988,765],{"class":332},[322,990,400],{"class":336},[322,992,770],{"class":332},[322,994,664],{"class":409},[322,996,413],{"class":332},[322,998,346],{"class":332},[322,1000,1001],{"class":349},"cache",[322,1003,353],{"class":332},[322,1005,538],{"class":332},[322,1007,773],{"class":409},[322,1009,413],{"class":332},[322,1011,346],{"class":332},[322,1013,1014],{"class":349},"foo",[322,1016,353],{"class":332},[322,1018,340],{"class":332},[322,1020,508],{"class":336},[322,1022,356],{"class":332},[322,1024,1025],{"class":324,"line":382},[322,1026,385],{"emptyLinePlaceholder":56},[322,1028,1029],{"class":324,"line":388},[322,1030,1031],{"class":960},"\u002F\u002F Write to the 'cache' storage\n",[322,1033,1034,1037,1039,1041,1043,1045,1047,1049,1051,1053,1055,1057,1059,1061,1063,1065,1067,1069,1071,1073,1075,1077,1079,1082,1084,1086,1088],{"class":324,"line":406},[322,1035,1036],{"class":328},"await",[322,1038,748],{"class":332},[322,1040,751],{"class":336},[322,1042,477],{"class":332},[322,1044,896],{"class":397},[322,1046,400],{"class":336},[322,1048,770],{"class":332},[322,1050,664],{"class":409},[322,1052,413],{"class":332},[322,1054,346],{"class":332},[322,1056,1001],{"class":349},[322,1058,353],{"class":332},[322,1060,538],{"class":332},[322,1062,773],{"class":409},[322,1064,413],{"class":332},[322,1066,346],{"class":332},[322,1068,1014],{"class":349},[322,1070,353],{"class":332},[322,1072,538],{"class":332},[322,1074,739],{"class":409},[322,1076,413],{"class":332},[322,1078,346],{"class":332},[322,1080,1081],{"class":349},"bar",[322,1083,353],{"class":332},[322,1085,340],{"class":332},[322,1087,508],{"class":336},[322,1089,356],{"class":332},[278,1091,1092],{},"If the named storage doesn't exist, Nitro's default storage is used as a fallback.",[298,1094,1096],{"id":1095},"supported-operations","Supported Operations",[1098,1099,1100,1113],"table",{},[1101,1102,1103],"thead",{},[1104,1105,1106,1110],"tr",{},[1107,1108,1109],"th",{},"Method",[1107,1111,1112],{},"Support",[1114,1115,1116,1126,1135,1143,1152,1161,1170,1179,1192],"tbody",{},[1104,1117,1118,1123],{},[1119,1120,1121],"td",{},[282,1122,756],{},[1119,1124,1125],{},"✅",[1104,1127,1128,1133],{},[1119,1129,1130],{},[282,1131,1132],{},"getItems",[1119,1134,1125],{},[1104,1136,1137,1141],{},[1119,1138,1139],{},[282,1140,896],{},[1119,1142,1125],{},[1104,1144,1145,1150],{},[1119,1146,1147],{},[282,1148,1149],{},"deleteItem",[1119,1151,1125],{},[1104,1153,1154,1159],{},[1119,1155,1156],{},[282,1157,1158],{},"hasItem",[1119,1160,1125],{},[1104,1162,1163,1168],{},[1119,1164,1165],{},[282,1166,1167],{},"getKeys",[1119,1169,1125],{},[1104,1171,1172,1177],{},[1119,1173,1174],{},[282,1175,1176],{},"clear",[1119,1178,1125],{},[1104,1180,1181,1186],{},[1119,1182,1183],{},[282,1184,1185],{},"size",[1119,1187,1188,1189],{},"⚠️ Always returns ",[282,1190,1191],{},"0",[1104,1193,1194,1199],{},[1119,1195,1196],{},[282,1197,1198],{},"mount",[1119,1200,1201,1202],{},"❌ Not supported - use ",[282,1203,306],{},[1205,1206,1207],"style",{},"html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}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 .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .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 .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}",{"title":318,"searchDepth":325,"depth":359,"links":1209},[1210,1211,1212,1213],{"id":300,"depth":359,"text":33},{"id":513,"depth":359,"text":514},{"id":941,"depth":359,"text":942},{"id":1095,"depth":359,"text":1096},"Using Vercube StorageManager backed by Nitro's built-in storage","md",null,{},{"title":102,"description":1214},"q-ksLUfHTpDrPjg55X0qPrHJYO9grpRDhoLS_cR4OfQ",[1221,1223],{"title":66,"path":148,"stem":149,"description":1222,"children":-1},"Use Vercube controllers and DI inside a Nitro application - experimental",{"title":154,"path":155,"stem":156,"description":1224,"children":-1},"Mixing Nitro file-based routes with Vercube controllers",1782807892206]