Fix webpack config (by stealing Dave's config)

Without doing something like this it's hard to use `yarn link`ed resources.
pull/11956/head
Travis Ralston 2020-01-20 18:09:48 -07:00
parent 3e324f6544
commit 932c221548
1 changed files with 8 additions and 2 deletions

View File

@ -21,6 +21,12 @@ module.exports = (env, argv) => {
development['devtool'] = 'eval-source-map';
}
// Resolve the directories for the react-sdk and js-sdk for later use. We resolve these early so we
// don't have to call them over and over. We also resolve to the package.json instead of the src
// directory so we don't have to rely on a index.js or similar file existing.
const reactSdkSrcDir = path.resolve(path.join(require.resolve("matrix-react-sdk/package.json"), '..', 'src'));
const jsSdkSrcDir = path.resolve(path.join(require.resolve("matrix-js-sdk/package.json"), '..', 'src'));
return {
...development,
@ -117,8 +123,8 @@ module.exports = (env, argv) => {
// run them through babel. Because the path tested is the resolved, absolute
// path, these could be anywhere thanks to yarn link. We must also not
// include node modules inside these modules, so we add 'src'.
if (f.includes(path.join('matrix-js-sdk', 'src'))) return true;
if (f.includes(path.join('matrix-react-sdk', 'src'))) return true;
if (f.startsWith(reactSdkSrcDir)) return true;
if (f.startsWith(jsSdkSrcDir)) return true;
// but we can't run all of our dependencies through babel (many of them still
// use module.exports which breaks if babel injects an 'include' for its