[{"data":1,"prerenderedAt":340},["ShallowReactive",2],{"navigation_docs":3,"diagnostic-content-VITE0005":44},[4,8,12,16,20,24,28,32,36,40],{"title":5,"path":6,"stem":7},"CLI","\u002Fcli","1.cli",{"title":9,"path":10,"stem":11},"Nuxt","\u002Fnuxt","2.nuxt",{"title":13,"path":14,"stem":15},"Vue","\u002Fvue","3.vue",{"title":17,"path":18,"stem":19},"Vite","\u002Fvite","4.vite",{"title":21,"path":22,"stem":23},"Nitro","\u002Fnitro","5.nitro",{"title":25,"path":26,"stem":27},"TypeScript","\u002Ftypescript","6.typescript",{"title":29,"path":30,"stem":31},"shadcn","\u002Fshadcn","7.shadcn",{"title":33,"path":34,"stem":35},"Package","\u002Fpackage","8.package",{"title":37,"path":38,"stem":39},"Extending Doctor","\u002Fextending","9.extending",{"title":41,"path":42,"stem":43},"Pinia","\u002Fpinia","9.pinia",{"id":45,"title":46,"body":47,"category":53,"code":330,"description":331,"docsUrl":54,"extension":332,"fix":77,"framework":333,"meta":334,"navigation":335,"pack":56,"path":336,"ruleId":57,"rulePath":58,"seo":337,"severity":59,"source":60,"sourceUrl":61,"stem":338,"why":70,"__hash__":339},"diagnostics\u002Fdiagnostics\u002FVITE0005.md","VITE0005: Do not expose secrets through Vite define",{"type":48,"value":49,"toc":320},"minimark",[50,62,67,71,75,78,82,87,90,185,188,249,253,256,288,292,304,308,316],[51,52],"rule-metadata",{"category":53,"docsUrl":54,"fix":55,"pack":56,"ruleId":57,"rulePath":58,"severity":59,"source":60,"sourceUrl":61},"security","https:\u002F\u002Fvite.dev\u002Fconfig\u002Fshared-options.html#define","no","vite-doctor\u002Fvite","vite\u002Fdefine\u002Fno-secret-define","\u002Fvite\u002Frules\u002Fdefine\u002Fno-secret-define","error","src\u002Frule-packs\u002Fvite\u002Frules\u002Fdefine.ts","https:\u002F\u002Fgithub.com\u002Fonmax\u002Fvite-doctor\u002Fblob\u002Fmain\u002Fsrc\u002Frule-packs\u002Fvite\u002Frules\u002Fdefine.ts",[63,64,66],"h2",{"id":65},"why-it-happens","Why it happens",[68,69,70],"p",{},"Secrets that reach public runtime config or client bundles can be exposed to every visitor and crawler.",[63,72,74],{"id":73},"fix","Fix",[68,76,77],{},"Remove secret define, or move it to the Vite runtime\u002FAPI that owns that behavior.",[63,79,81],{"id":80},"example","Example",[83,84,86],"h3",{"id":85},"keep-secrets-out-of-define","Keep secrets out of define",[68,88,89],{},"Before",[91,92,97],"pre",{"className":93,"code":94,"language":95,"meta":96,"style":96},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineConfig({\n  define: {\n    __API_SECRET__: JSON.stringify(process.env.API_SECRET),\n  },\n})\n","ts","",[98,99,100,124,137,170,176],"code",{"__ignoreMap":96},[101,102,105,109,112,116,120],"span",{"class":103,"line":104},"line",1,[101,106,108],{"class":107},"s7zQu","export",[101,110,111],{"class":107}," default",[101,113,115],{"class":114},"s2Zo4"," defineConfig",[101,117,119],{"class":118},"sTEyZ","(",[101,121,123],{"class":122},"sMK4o","{\n",[101,125,127,131,134],{"class":103,"line":126},2,[101,128,130],{"class":129},"swJcz","  define",[101,132,133],{"class":122},":",[101,135,136],{"class":122}," {\n",[101,138,140,143,145,148,151,154,157,159,162,164,167],{"class":103,"line":139},3,[101,141,142],{"class":129},"    __API_SECRET__",[101,144,133],{"class":122},[101,146,147],{"class":118}," JSON",[101,149,150],{"class":122},".",[101,152,153],{"class":114},"stringify",[101,155,156],{"class":118},"(process",[101,158,150],{"class":122},[101,160,161],{"class":118},"env",[101,163,150],{"class":122},[101,165,166],{"class":118},"API_SECRET)",[101,168,169],{"class":122},",\n",[101,171,173],{"class":103,"line":172},4,[101,174,175],{"class":122},"  },\n",[101,177,179,182],{"class":103,"line":178},5,[101,180,181],{"class":122},"}",[101,183,184],{"class":118},")\n",[68,186,187],{},"After",[91,189,191],{"className":93,"code":190,"language":95,"meta":96,"style":96},"export default defineConfig({\n  define: {\n    __PUBLIC_VERSION__: JSON.stringify(process.env.npm_package_version),\n  },\n})\n",[98,192,193,205,213,239,243],{"__ignoreMap":96},[101,194,195,197,199,201,203],{"class":103,"line":104},[101,196,108],{"class":107},[101,198,111],{"class":107},[101,200,115],{"class":114},[101,202,119],{"class":118},[101,204,123],{"class":122},[101,206,207,209,211],{"class":103,"line":126},[101,208,130],{"class":129},[101,210,133],{"class":122},[101,212,136],{"class":122},[101,214,215,218,220,222,224,226,228,230,232,234,237],{"class":103,"line":139},[101,216,217],{"class":129},"    __PUBLIC_VERSION__",[101,219,133],{"class":122},[101,221,147],{"class":118},[101,223,150],{"class":122},[101,225,153],{"class":114},[101,227,156],{"class":118},[101,229,150],{"class":122},[101,231,161],{"class":118},[101,233,150],{"class":122},[101,235,236],{"class":118},"npm_package_version)",[101,238,169],{"class":122},[101,240,241],{"class":103,"line":172},[101,242,175],{"class":122},[101,244,245,247],{"class":103,"line":178},[101,246,181],{"class":122},[101,248,184],{"class":118},[63,250,252],{"id":251},"verify-the-fix","Verify the fix",[68,254,255],{},"Run only this rule after editing so the report stays focused on the diagnostic you are closing:",[91,257,261],{"className":258,"code":259,"language":260,"meta":96,"style":96},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","pnpm vite-doctor . --framework vite --rules vite\u002Fdefine\u002Fno-secret-define\n","bash",[98,262,263],{"__ignoreMap":96},[101,264,265,269,273,276,279,282,285],{"class":103,"line":104},[101,266,268],{"class":267},"sBMFI","pnpm",[101,270,272],{"class":271},"sfazB"," vite-doctor",[101,274,275],{"class":271}," .",[101,277,278],{"class":271}," --framework",[101,280,281],{"class":271}," vite",[101,283,284],{"class":271}," --rules",[101,286,287],{"class":271}," vite\u002Fdefine\u002Fno-secret-define\n",[63,289,291],{"id":290},"useful-links","Useful links",[293,294,295],"ul",{},[296,297,298],"li",{},[299,300,303],"a",{"href":54,"rel":301},[302],"nofollow","Upstream docs",[63,305,307],{"id":306},"related-rule","Related rule",[293,309,310],{},[296,311,312],{},[299,313,314],{"href":58},[98,315,57],{},[317,318,319],"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 .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 .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}",{"title":96,"searchDepth":126,"depth":126,"links":321},[322,323,324,327,328,329],{"id":65,"depth":126,"text":66},{"id":73,"depth":126,"text":74},{"id":80,"depth":126,"text":81,"children":325},[326],{"id":85,"depth":139,"text":86},{"id":251,"depth":126,"text":252},{"id":290,"depth":126,"text":291},{"id":306,"depth":126,"text":307},"VITE0005","Flags secret define in Vite define code before it leaks into runtime behavior.","md","vite",{},true,"\u002Fdiagnostics\u002Fvite0005",{"title":46,"description":331},"diagnostics\u002FVITE0005","clCuWlMc02Md__ucghl3hSu180hO8KOuSO-M-VQZh-k",1791309484710]