From c8812cf3b53d6c4714c87a2d7eb459c2da01a7d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Lorber?= Date: Fri, 14 May 2021 10:21:52 +0200 Subject: [PATCH] fix(v2): transpile libs with too recent syntax with babel (#4789) --- packages/docusaurus/src/webpack/base.ts | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/packages/docusaurus/src/webpack/base.ts b/packages/docusaurus/src/webpack/base.ts index a43019b69e..66dae51dc7 100644 --- a/packages/docusaurus/src/webpack/base.ts +++ b/packages/docusaurus/src/webpack/base.ts @@ -24,6 +24,14 @@ const CSS_REGEX = /\.css$/; const CSS_MODULE_REGEX = /\.module\.css$/; export const clientDir = path.join(__dirname, '..', 'client'); +const LibrariesToTranspile = [ + 'copy-text-to-clipboard', // contains optional catch binding, incompatible with recent versions of Edge +]; + +const LibrariesToTranspileRegex = new RegExp( + LibrariesToTranspile.map((libName) => `(node_modules/${libName})`).join('|'), +); + export function excludeJS(modulePath: string): boolean { // always transpile client dir if (modulePath.startsWith(clientDir)) { @@ -32,7 +40,8 @@ export function excludeJS(modulePath: string): boolean { // Don't transpile node_modules except any docusaurus npm package return ( /node_modules/.test(modulePath) && - !/(docusaurus)((?!node_modules).)*\.jsx?$/.test(modulePath) + !/(docusaurus)((?!node_modules).)*\.jsx?$/.test(modulePath) && + !LibrariesToTranspileRegex.test(modulePath) ); }