[{"data":1,"prerenderedAt":245},["ShallowReactive",2],{"navigation_docs":3,"diagnostic-content-VITE0002":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":235,"description":236,"docsUrl":54,"extension":237,"fix":77,"framework":238,"meta":239,"navigation":240,"pack":56,"path":241,"ruleId":57,"rulePath":58,"seo":242,"severity":59,"source":60,"sourceUrl":61,"stem":243,"why":70,"__hash__":244},"diagnostics\u002Fdiagnostics\u002FVITE0002.md","VITE0002: Do not import public media assets",{"type":48,"value":49,"toc":223},"minimark",[50,62,67,71,75,78,82,87,90,127,130,153,157,160,191,195,207,211,219],[51,52],"rule-metadata",{"category":53,"docsUrl":54,"fix":55,"pack":56,"ruleId":57,"rulePath":58,"severity":59,"source":60,"sourceUrl":61},"assets","https:\u002F\u002Fvite.dev\u002Fguide\u002Fassets.html#the-public-directory","no","vite-doctor\u002Fvite","vite\u002Fassets\u002Fno-public-src-import","\u002Fvite\u002Frules\u002Fassets\u002Fno-public-src-import","warn","src\u002Frule-packs\u002Fvite\u002Frules\u002Fassets.ts","https:\u002F\u002Fgithub.com\u002Fonmax\u002Fvite-doctor\u002Fblob\u002Fmain\u002Fsrc\u002Frule-packs\u002Fvite\u002Frules\u002Fassets.ts",[63,64,66],"h2",{"id":65},"why-it-happens","Why it happens",[68,69,70],"p",{},"Files in public are copied as-is and served from the root URL. Import image, font, and media assets from source when they need bundling, or reference public assets by URL when they should stay static. Dependency subpaths and source folders named public are not the project public directory. This rule resolves relative paths and standard Nuxt aliases against Project Inventory and uses the resolved publicDir supplied by the Vite Plugin Surface, including disabled directories. Without that inventory it assumes the default root public directory; custom Vite aliases and executable config settings are not inferred. Static JSON data imports are allowed because SSR pages may need build-time data instead of a runtime fetch.",[63,72,74],{"id":73},"fix","Fix",[68,76,77],{},"Reference public media and font assets by root-relative URL, or move bundled assets into source.",[63,79,81],{"id":80},"example","Example",[83,84,86],"h3",{"id":85},"reference-public-assets-by-url","Reference public assets by URL",[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","import logoUrl from '..\u002Fpublic\u002Flogo.svg'\n","ts","",[98,99,100],"code",{"__ignoreMap":96},[101,102,105,109,113,116,120,124],"span",{"class":103,"line":104},"line",1,[101,106,108],{"class":107},"s7zQu","import",[101,110,112],{"class":111},"sTEyZ"," logoUrl ",[101,114,115],{"class":107},"from",[101,117,119],{"class":118},"sMK4o"," '",[101,121,123],{"class":122},"sfazB","..\u002Fpublic\u002Flogo.svg",[101,125,126],{"class":118},"'\n",[68,128,129],{},"After",[91,131,133],{"className":93,"code":132,"language":95,"meta":96,"style":96},"const logoUrl = '\u002Flogo.svg'\n",[98,134,135],{"__ignoreMap":96},[101,136,137,141,143,146,148,151],{"class":103,"line":104},[101,138,140],{"class":139},"spNyl","const",[101,142,112],{"class":111},[101,144,145],{"class":118},"=",[101,147,119],{"class":118},[101,149,150],{"class":122},"\u002Flogo.svg",[101,152,126],{"class":118},[63,154,156],{"id":155},"verify-the-fix","Verify the fix",[68,158,159],{},"Run only this rule after editing so the report stays focused on the diagnostic you are closing:",[91,161,165],{"className":162,"code":163,"language":164,"meta":96,"style":96},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","pnpm vite-doctor . --framework vite --rules vite\u002Fassets\u002Fno-public-src-import\n","bash",[98,166,167],{"__ignoreMap":96},[101,168,169,173,176,179,182,185,188],{"class":103,"line":104},[101,170,172],{"class":171},"sBMFI","pnpm",[101,174,175],{"class":122}," vite-doctor",[101,177,178],{"class":122}," .",[101,180,181],{"class":122}," --framework",[101,183,184],{"class":122}," vite",[101,186,187],{"class":122}," --rules",[101,189,190],{"class":122}," vite\u002Fassets\u002Fno-public-src-import\n",[63,192,194],{"id":193},"useful-links","Useful links",[196,197,198],"ul",{},[199,200,201],"li",{},[202,203,206],"a",{"href":54,"rel":204},[205],"nofollow","Upstream docs",[63,208,210],{"id":209},"related-rule","Related rule",[196,212,213],{},[199,214,215],{},[202,216,217],{"href":58},[98,218,57],{},[220,221,222],"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 .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 .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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}",{"title":96,"searchDepth":224,"depth":224,"links":225},2,[226,227,228,232,233,234],{"id":65,"depth":224,"text":66},{"id":73,"depth":224,"text":74},{"id":80,"depth":224,"text":81,"children":229},[230],{"id":85,"depth":231,"text":86},3,{"id":155,"depth":224,"text":156},{"id":193,"depth":224,"text":194},{"id":209,"depth":224,"text":210},"VITE0002","Flags media and font imports from the project's root public directory.","md","vite",{},true,"\u002Fdiagnostics\u002Fvite0002",{"title":46,"description":236},"diagnostics\u002FVITE0002","Uc_e5U7QtU3qk8rAr0pKyZKM80qPzzm1tRc2j7nNGXU",1791309483707]