const { getDefaultConfig, mergeConfig } = require('@react-native/metro-config'); const path = require('path'); /** * Metro configuration * https://reactnative.dev/docs/metro * * @type {import('@react-native/metro-config').MetroConfig} */ const config = { transformer: { getTransformOptions: async () => ({ transform: { experimentalImportSupport: false, inlineRequires: true, }, }), minifierConfig: { keep_fnames: true, mangle: { keep_fnames: true, }, }, }, resolver: { sourceExts: ['jsx', 'js', 'ts', 'tsx', 'json'], resolverMainFields: ['react-native', 'browser', 'main'], alias: { components: path.resolve(__dirname, 'src/components'), screens: path.resolve(__dirname, 'src/screens'), assets: path.resolve(__dirname, 'src/assets'), api: path.resolve(__dirname, 'src/api'), helpers: path.resolve(__dirname, 'src/helpers'), }, }, maxWorkers: 1, resetCache: false, unstable_allowRequireContext: true, unstable_enableSymlinks: false, }; module.exports = mergeConfig(getDefaultConfig(__dirname), config);