Metro couldn't resolve hoisted packages (@maplibre, @gorhom, etc.) because it only looked in apps/mobile/node_modules. Configure watchFolders and nodeModulesPaths to include the monorepo root. Also revert MapLibre fallback — direct import is correct, the issue was Metro resolution, not a missing native module. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
18 lines
516 B
JavaScript
18 lines
516 B
JavaScript
const { getDefaultConfig } = require("expo/metro-config");
|
|
const path = require("path");
|
|
|
|
const projectRoot = __dirname;
|
|
const monorepoRoot = path.resolve(projectRoot, "../..");
|
|
|
|
const config = getDefaultConfig(projectRoot);
|
|
|
|
// Watch all files in the monorepo
|
|
config.watchFolders = [monorepoRoot];
|
|
|
|
// Resolve modules from both the project and monorepo root
|
|
config.resolver.nodeModulesPaths = [
|
|
path.resolve(projectRoot, "node_modules"),
|
|
path.resolve(monorepoRoot, "node_modules"),
|
|
];
|
|
|
|
module.exports = config;
|