From 63f02f8fc125a21c0338850ef9060f27a9ebb87b Mon Sep 17 00:00:00 2001 From: Adam Bradley Date: Wed, 5 Aug 2020 04:23:39 -0500 Subject: [PATCH] fix(safari): fix safari10 builds --- src/compiler/optimize/optimize-module.ts | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/compiler/optimize/optimize-module.ts b/src/compiler/optimize/optimize-module.ts index 55e2fc718c2..3218bce6c3a 100644 --- a/src/compiler/optimize/optimize-module.ts +++ b/src/compiler/optimize/optimize-module.ts @@ -31,7 +31,14 @@ export const optimizeModule = async (config: Config, compilerCtx: CompilerCtx, o } let minifyOpts: MinifyOptions; - if (opts.minify) { + let code = opts.input; + if (opts.isCore) { + // IS_ESM_BUILD is replaced at build time so systemjs and esm builds have diff values + // not using the BUILD conditional since rollup would input the same value + code = code.replace(/\/\* IS_ESM_BUILD \*\//g, '&& false /* IS_SYSTEM_JS_BUILD */'); + } + + if (opts.sourceTarget === 'es5' && opts.minify) { minifyOpts = getTerserOptions(config, opts.sourceTarget, isDebug); const compressOpts = minifyOpts.compress as CompressOptions; const mangleOptions = minifyOpts.mangle as MangleOptions; @@ -59,7 +66,7 @@ export const optimizeModule = async (config: Config, compilerCtx: CompilerCtx, o } const shouldTranspile = opts.sourceTarget === 'es5'; - const results = await compilerCtx.worker.prepareModule(opts.input, minifyOpts, shouldTranspile, opts.inlineHelpers); + const results = await compilerCtx.worker.prepareModule(code, minifyOpts, shouldTranspile, opts.inlineHelpers); if (results != null && typeof results.output === 'string' && results.diagnostics.length === 0 && compilerCtx != null) { if (opts.isCore) { results.output = results.output.replace(/disconnectedCallback\(\)\{\},/g, '');