-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmetro.config.js
More file actions
32 lines (26 loc) · 834 Bytes
/
metro.config.js
File metadata and controls
32 lines (26 loc) · 834 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
const path = require("path");
const escape = require("escape-string-regexp");
const exclusionList = require("metro-config/src/defaults/exclusionList");
const { getDefaultConfig } = require("@expo/metro-config");
const root = path.resolve(__dirname, "..");
const packageJson = require("../package.json");
const modules = [
...Object.keys(packageJson.peerDependencies || {}),
"react",
"react-native",
];
const config = getDefaultConfig(__dirname);
config.watchFolders = [root];
config.resolver = {
...config.resolver,
blacklistRE: exclusionList(
modules.map(
(m) => new RegExp(`^${escape(path.join(root, "node_modules", m))}\\/.*$`)
)
),
extraNodeModules: modules.reduce((acc, name) => {
acc[name] = path.join(__dirname, "node_modules", name);
return acc;
}, {}),
};
module.exports = config;