fix(dev-server-hmr): remove usage of optional chaining

This commit is contained in:
Lars den Bakker
2020-11-25 08:31:25 +01:00
parent 63f7ac3531
commit a71fcac8c4
3 changed files with 16 additions and 11 deletions

View File

@@ -0,0 +1,5 @@
---
'@open-wc/dev-server-hmr': patch
---
remove usage of optional chaining

View File

@@ -31,7 +31,7 @@ async function babelTransform(code, filename, options) {
sourceType: 'module',
});
if (!result?.code) {
if (!result || !result.code) {
throw createError(`Failed to babel transform ${filename}`);
}
return result.code;

View File

@@ -70,7 +70,7 @@ function hmrPlugin(pluginConfig) {
return source;
}
return baseHmrPlugin.resolveImport?.(...args);
return baseHmrPlugin.resolveImport && baseHmrPlugin.resolveImport(...args);
},
serve(...args) {
@@ -80,14 +80,14 @@ function hmrPlugin(pluginConfig) {
}
if (context.path === WC_HMR_MODULE_PATCH) {
return pluginConfig.patches?.join('\n') || '';
return (pluginConfig.patches && pluginConfig.patches.join('\n')) || '';
}
return baseHmrPlugin.serve?.(...args);
return baseHmrPlugin.serve && baseHmrPlugin.serve(...args);
},
serverStart(...args) {
if (args[0].config.plugins?.find(pl => pl.name === 'hmr')) {
if (!args[0].config.plugins || args[0].config.plugins.find(pl => pl.name === 'hmr')) {
throw createError(
`Cannot include both @web/dev-server-hmr and @open-wc/dev-server-hmr plugins.`,
);
@@ -102,7 +102,7 @@ function hmrPlugin(pluginConfig) {
matchExclude = createMatchers(rootDir, parsedPluginConfig.exclude);
}
return baseHmrPlugin.serverStart?.(...args);
return baseHmrPlugin.serverStart && baseHmrPlugin.serverStart(...args);
},
async transform(...args) {
@@ -135,21 +135,21 @@ function hmrPlugin(pluginConfig) {
}
}
return baseHmrPlugin.transform?.(...args);
return baseHmrPlugin.transform && baseHmrPlugin.transform(...args);
},
// forward all other plugin hooks
serverStop(...args) {
return baseHmrPlugin.serverStop?.(...args);
return baseHmrPlugin.serverStop && baseHmrPlugin.serverStop(...args);
},
transformCacheKey(...args) {
return baseHmrPlugin.transformCacheKey?.(...args);
return baseHmrPlugin.transformCacheKey && baseHmrPlugin.transformCacheKey(...args);
},
transformImport(...args) {
return baseHmrPlugin.transformImport?.(...args);
return baseHmrPlugin.transformImport && baseHmrPlugin.transformImport(...args);
},
resolveMimeType(...args) {
return baseHmrPlugin.resolveMimeType?.(...args);
return baseHmrPlugin.resolveMimeType && baseHmrPlugin.resolveMimeType(...args);
},
};
}