diff --git a/src/compiler/config/test/validate-config.spec.ts b/src/compiler/config/test/validate-config.spec.ts index 81f0bef07ea..1a1060988dd 100644 --- a/src/compiler/config/test/validate-config.spec.ts +++ b/src/compiler/config/test/validate-config.spec.ts @@ -293,4 +293,19 @@ describe('validation', () => { const { config } = validateConfig(userConfig); expect(config.outputTargets.some(o => o.type === 'www')).toBe(true); }); + + it('should set extras defaults', () => { + const { config } = validateConfig(userConfig); + expect(config.extras.appendChildSlotFix).toBe(false); + expect(config.extras.cloneNodeFix).toBe(false); + expect(config.extras.cssVarsShim).toBe(false); + expect(config.extras.dynamicImportShim).toBe(false); + expect(config.extras.lifecycleDOMEvents).toBe(false); + expect(config.extras.safari10).toBe(false); + expect(config.extras.scriptDataOpts).toBe(false); + expect(config.extras.shadowDomShim).toBe(false); + expect(config.extras.slotChildNodesFix).toBe(false); + expect(config.extras.initializeNextTick).toBe(false); + expect(config.extras.tagNameTransform).toBe(false); + }); }); diff --git a/src/compiler/config/validate-config.ts b/src/compiler/config/validate-config.ts index 93c363c942c..bfebb2cb9a0 100644 --- a/src/compiler/config/validate-config.ts +++ b/src/compiler/config/validate-config.ts @@ -31,14 +31,14 @@ export const validateConfig = (userConfig?: Config) => { config.extras = config.extras || {}; config.extras.appendChildSlotFix = !!config.extras.appendChildSlotFix; config.extras.cloneNodeFix = !!config.extras.cloneNodeFix; - config.extras.cssVarsShim = config.extras.cssVarsShim !== false; - config.extras.dynamicImportShim = config.extras.dynamicImportShim !== false; + config.extras.cssVarsShim = !!config.extras.cssVarsShim; + config.extras.dynamicImportShim = !!config.extras.dynamicImportShim; config.extras.lifecycleDOMEvents = !!config.extras.lifecycleDOMEvents; - config.extras.safari10 = config.extras.safari10 !== false; - config.extras.scriptDataOpts = config.extras.scriptDataOpts !== false; - config.extras.shadowDomShim = config.extras.shadowDomShim !== false; + config.extras.safari10 = !!config.extras.safari10; + config.extras.scriptDataOpts = !!config.extras.scriptDataOpts; + config.extras.shadowDomShim = !!config.extras.shadowDomShim; config.extras.slotChildNodesFix = !!config.extras.slotChildNodesFix; - config.extras.initializeNextTick = config.extras.initializeNextTick !== false; + config.extras.initializeNextTick = !!config.extras.initializeNextTick; config.extras.tagNameTransform = !!config.extras.tagNameTransform; setBooleanConfig(config, 'minifyCss', null, !config.devMode);