@storm-stack/core
Version:
A build toolkit and runtime used by Storm Software in TypeScript applications
128 lines (120 loc) • 4.19 kB
JavaScript
var chunkVPRHO3PM_cjs = require('./chunk-VPRHO3PM.cjs');
var chunkWEEAPJJD_cjs = require('./chunk-WEEAPJJD.cjs');
var chunkA43FUIC2_cjs = require('./chunk-A43FUIC2.cjs');
var defu = require('defu');
var unplugin = require('unplugin');
var joinPaths = require('@stryke/path/join-paths');
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
var defu__default = /*#__PURE__*/_interopDefault(defu);
// src/unplugin/vite.ts
chunkA43FUIC2_cjs.init_cjs_shims();
// src/lib/vite/options.ts
chunkA43FUIC2_cjs.init_cjs_shims();
function resolveViteOptions(context, override = {}) {
return defu__default.default({
resolve: {
alias: context.vfs.runtimeIdMap.keys().reduce((ret, id) => {
const path = context.vfs.runtimeIdMap.get(id);
if (path) {
ret[id] = path;
}
return ret;
}, {})
}
}, override, context.options.variant === "vite" ? context.options.override : {}, {
external: context.options.external,
noExternal: context.options.noExternal,
skipNodeModulesBundle: context.options.skipNodeModulesBundle
}, {
rootDir: context.options.sourceRoot,
mode: context.options.mode === "development" ? "development" : "production",
cacheDir: joinPaths.joinPaths(context.cachePath, "vite"),
build: {
minify: context.options.mode !== "development",
metafile: context.options.mode === "development",
sourcemap: context.options.mode === "development",
outDir: context.options.output.outputPath,
tsconfig: context.tsconfig.tsconfigFilePath,
tsconfigRaw: context.tsconfig.tsconfigJson
},
esbuild: chunkVPRHO3PM_cjs.resolveESBuildOptions(context),
assetsInclude: context.options.output.assets,
logLevel: context.options.logLevel,
envDir: context.options.projectRoot,
noExternal: Array.from(context.vfs.runtimeIdMap.keys())
}, context.options.variant === "vite" ? context.options.build : {}, {
resolve: {
extensions: [
".mjs",
".js",
".mts",
".ts",
".jsx",
".tsx",
".json"
]
},
json: {
stringify: true
},
logLevel: "silent",
clearScreen: true
});
}
chunkA43FUIC2_cjs.__name(resolveViteOptions, "resolveViteOptions");
// src/unplugin/vite.ts
var vite = unplugin.createVitePlugin(chunkWEEAPJJD_cjs.createUnpluginFactory({
framework: "vite",
decorate: /* @__PURE__ */ chunkA43FUIC2_cjs.__name((engine, plugin) => {
return {
...plugin,
vite: {
async config(config, env) {
engine.context.options.isPreview = !!env.isPreview;
engine.context.options.isSsrBuild = !!env.isSsrBuild;
engine.context.options.mode = env.mode === "development" ? "development" : "production";
const resolvedOptions = resolveViteOptions(engine.context, defu__default.default(engine.context.options.override, config));
await engine.hooks.callHook("vite:config", engine.context, {
config: resolvedOptions,
env
});
return resolvedOptions;
},
async configResolved(config) {
await engine.hooks.callHook("vite:configResolved", engine.context, {
config
});
},
async configureServer(server) {
await engine.hooks.callHook("vite:configureServer", engine.context, {
server
});
},
async configurePreviewServer(server) {
await engine.hooks.callHook("vite:configurePreviewServer", engine.context, {
server
});
},
async transformIndexHtml(html, ctx) {
const result = null;
await engine.hooks.callHook("vite:transformIndexHtml", engine.context, {
html,
ctx,
result
});
},
async handleHotUpdate(ctx) {
const result = null;
await engine.hooks.callHook("vite:handleHotUpdate", engine.context, {
ctx,
result
});
}
}
};
}, "decorate")
}));
var vite_default = vite;
exports.vite = vite;
exports.vite_default = vite_default;
;