I am using react native and expo eas in my monorepo.
The app lives in
clients/mobile/<react native app>
My metro.config.js lives inside the mobile folder
const { getDefaultConfig } = require('expo/metro-config');
const path = require('path');
// Find the project and workspace directories
const projectRoot = __dirname;
// This can be replaced with `find-yarn-workspace-root`
const monorepoRoot = path.resolve(projectRoot, '../..');
const config = getDefaultConfig(projectRoot);
// 1. Watch all files within the monorepo
config.watchFolders = [monorepoRoot];
// 2. Let Metro know where to resolve packages and in what order
config.resolver.nodeModulesPaths = [
path.resolve(projectRoot, 'node_modules'),
path.resolve(monorepoRoot, 'node_modules'),
];
module.exports = config;
I am using typescript as well.
I am getting this error
Error: Unable to resolve module @react-native-firebase/analytics from /home/expo/workingdir/build/node_modules/@react-native-firebase/crashlytics/lib/handlers.js: @react-native-firebase/analytics could not be found within the project or in these directories:
../../node_modules
node_modules
../../node_modules
17 |
18 | import { isError, once } from '@react-native-firebase/app/lib/common';
> 19 | import { getAnalytics, logEvent } from '@react-native-firebase/analytics';
I am not sure why. Any help would be much appreciated.