Initial Upload
Some checks failed
CI / Lint & Typecheck (push) Has been cancelled
CI / Test (routes) (push) Has been cancelled
CI / Test (security) (push) Has been cancelled
CI / Test (services) (push) Has been cancelled
CI / Test (unit) (push) Has been cancelled
CI / Test (integration) (push) Has been cancelled
CI / Test Coverage (push) Has been cancelled
CI / Build (push) Has been cancelled
Some checks failed
CI / Lint & Typecheck (push) Has been cancelled
CI / Test (routes) (push) Has been cancelled
CI / Test (security) (push) Has been cancelled
CI / Test (services) (push) Has been cancelled
CI / Test (unit) (push) Has been cancelled
CI / Test (integration) (push) Has been cancelled
CI / Test Coverage (push) Has been cancelled
CI / Build (push) Has been cancelled
This commit is contained in:
38
apps/mobile/metro.config.js
Normal file
38
apps/mobile/metro.config.js
Normal file
@@ -0,0 +1,38 @@
|
||||
const { getDefaultConfig } = require('expo/metro-config');
|
||||
const { withNativewind } = require('nativewind/metro');
|
||||
const path = require('path');
|
||||
|
||||
// Find the project and workspace directories
|
||||
const projectRoot = __dirname;
|
||||
const monorepoRoot = path.resolve(projectRoot, '../..');
|
||||
|
||||
const config = getDefaultConfig(projectRoot);
|
||||
|
||||
// 1. Watch all files within the monorepo (include default watchFolders)
|
||||
config.watchFolders = [...(config.watchFolders || []), monorepoRoot];
|
||||
|
||||
// 2. Let Metro know where to resolve packages from
|
||||
config.resolver.nodeModulesPaths = [
|
||||
path.resolve(projectRoot, 'node_modules'),
|
||||
path.resolve(monorepoRoot, 'node_modules'),
|
||||
];
|
||||
|
||||
// 3. Enable symlink support for pnpm
|
||||
config.resolver.unstable_enableSymlinks = true;
|
||||
|
||||
// 4. Handle .js imports that should resolve to .ts files (NodeNext compatibility)
|
||||
// TypeScript with moduleResolution: NodeNext requires .js extensions in imports
|
||||
// even for .ts source files. Metro needs help resolving these correctly.
|
||||
config.resolver.resolveRequest = (context, moduleName, platform) => {
|
||||
if (moduleName.startsWith('.') && moduleName.endsWith('.js')) {
|
||||
const tsModuleName = moduleName.replace(/\.js$/, '.ts');
|
||||
try {
|
||||
return context.resolveRequest(context, tsModuleName, platform);
|
||||
} catch {
|
||||
// Fall through to default resolution if .ts doesn't exist
|
||||
}
|
||||
}
|
||||
return context.resolveRequest(context, moduleName, platform);
|
||||
};
|
||||
|
||||
module.exports = withNativewind(config, { input: './global.css' });
|
||||
Reference in New Issue
Block a user