UNPKG

@storm-stack/core

Version:

A build toolkit and runtime used by Storm Software in TypeScript applications

72 lines (67 loc) 3.12 kB
'use strict'; var chunkJ5FGHGMA_cjs = require('./chunk-J5FGHGMA.cjs'); var chunkUY2GAVJJ_cjs = require('./chunk-UY2GAVJJ.cjs'); var chunk3ONWID2V_cjs = require('./chunk-3ONWID2V.cjs'); var build = require('@storm-software/esbuild/build'); var filePathFns = require('@stryke/path/file-path-fns'); var replace = require('@stryke/path/replace'); var isFunction = require('@stryke/type-checks/is-function'); var defu = require('defu'); function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; } var defu__default = /*#__PURE__*/_interopDefault(defu); async function esbuild(context, override = {}) { const options = defu__default.default(override ?? {}, context.options.esbuild.override, { entry: context.entry.reduce((ret, entry) => { ret[entry.output || replace.replacePath(entry.input.file, context.projectJson?.sourceRoot || context.options.projectRoot).replace(filePathFns.findFileExtension(entry.input.file) || "", "") || replace.replacePath(entry.file, context.projectJson?.sourceRoot || context.options.projectRoot).replace(filePathFns.findFileExtension(entry.file) || "", "")] = entry.file; return ret; }, {}), assets: context.options.output.assets, outputPath: context.options.output.outputPath, mode: context.options.mode, platform: context.options.platform, projectRoot: context.options.projectRoot, sourceRoot: context.options.sourceRoot, tsconfig: context.tsconfig.tsconfigFilePath, tsconfigRaw: context.tsconfig.tsconfigJson, external: context.options.external, noExternal: context.options.noExternal, skipNodeModulesBundle: context.options.skipNodeModulesBundle }, context.options.esbuild, { banner: { js: context.options.mode !== "production" ? "\n// \u26A1 Built with Storm Stack \n" : " " }, reflectionLevel: "minimal", minify: context.options.mode !== "development", metafile: context.options.mode === "development", sourcemap: context.options.mode === "development", dts: context.options.projectType !== "application", noExternal: Array.from(context.vfs.runtimeIdMap.keys()) }); await build.build(defu__default.default({ config: false, clean: true, esbuildOptions(opts, ctx) { if (isFunction.isFunction(options.esbuildOptions)) { options.esbuildOptions(opts, ctx); } opts.alias = defu__default.default(opts.alias ?? {}, Array.from(context.vfs.runtimeIdMap.keys()).reduce((ret, id) => { if (context.vfs.runtimeIdMap.has(id) && context.vfs.runtimeIdMap.get(id)) { ret[id] = context.vfs.runtimeIdMap.get(id); } return ret; }, {})); }, esbuildPlugins: [ chunkJ5FGHGMA_cjs.resolverPlugin(context, { external: options.external, noExternal: options.noExternal, skipNodeModulesBundle: options.skipNodeModulesBundle }), chunkUY2GAVJJ_cjs.compilerPlugin(context) ] }, options)); } chunk3ONWID2V_cjs.__name(esbuild, "esbuild"); exports.esbuild = esbuild; //# sourceMappingURL=chunk-ZIWSOBSL.cjs.map //# sourceMappingURL=chunk-ZIWSOBSL.cjs.map