{"version":3,"sources":["../src/frameworks/vite.ts"],"names":[],"mappings":";;;;;;;;AAce,SAAR,MACN,SACS;AACT,MAAI;AACJ,MAAI;AAEJ,SAAO;AAAA,IACN;AAAA,IACA,eAAe,QAAQ;AACtB,mBAAa;AAAA,IACd;AAAA,IACA,gBAAgB,QAAQ;AACvB,aAAO;AAAA,IACR;AAAA,IACA,KAAK,IAAI;AA5BX;AA6BG,YAAM,SACL,WAAW,YAAY,YACpB,UAAK,iBAAL,mBAAmB,MAAM,OAAM,KAC/B,WAAW,MAAM;AACrB,aAAO,UAAU,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;AAAA,IAC5C;AAAA,EACD;AACD","sourcesContent":["import type { IconPrerenderPluginOptions } from \"@/types\";\nimport { PLUGIN_NAME } from \"@/types\";\nimport type { Plugin, ResolvedConfig, ViteDevServer } from \"vite\";\nimport { useLoader } from \"../loader/loader\";\n\nexport interface IconPrerenderPluginViteOptions\n\textends IconPrerenderPluginOptions {}\n\n/**\n * Vite plugin to replace icons with the actual SVG element at build time.\n *\n * @param options\n * @returns\n */\nexport default function icons(\n\toptions?: IconPrerenderPluginViteOptions\n): Plugin {\n\tlet vite: ViteDevServer;\n\tlet userConfig: ResolvedConfig;\n\n\treturn {\n\t\tname: PLUGIN_NAME,\n\t\tconfigResolved(config) {\n\t\t\tuserConfig = config;\n\t\t},\n\t\tconfigureServer(server) {\n\t\t\tvite = server;\n\t\t},\n\t\tload(id) {\n\t\t\tconst outDir =\n\t\t\t\tuserConfig.command === \"serve\"\n\t\t\t\t\t? vite.resolvedUrls?.local[0] ?? \"\"\n\t\t\t\t\t: userConfig.build.outDir;\n\t\t\treturn useLoader(id, { outDir, ...options });\n\t\t},\n\t};\n}\n"]}