mirror of
https://github.com/zoriya/react-native-svg.git
synced 2025-12-06 07:06:11 +00:00
PR bumping the library code to compile on new arch on RN 0.73.x and restoring the proper configuration of Image component on new arch on Android. Also bumping the FabricExample to check if the code works correctly.
54 lines
1.3 KiB
JavaScript
54 lines
1.3 KiB
JavaScript
const {getDefaultConfig, mergeConfig} = require('@react-native/metro-config');
|
|
|
|
/**
|
|
* Metro configuration
|
|
* https://facebook.github.io/metro/docs/configuration
|
|
*
|
|
* @type {import('metro-config').MetroConfig}
|
|
*/
|
|
|
|
/* eslint-disable import/no-commonjs */
|
|
|
|
const path = require('path');
|
|
const exclusionList = require('metro-config/src/defaults/exclusionList');
|
|
const escape = require('escape-string-regexp');
|
|
const pack = require('../package.json');
|
|
|
|
const root = path.resolve(__dirname, '..');
|
|
|
|
const modules = [
|
|
...Object.keys(pack.peerDependencies),
|
|
];
|
|
|
|
const config = {
|
|
projectRoot: __dirname,
|
|
watchFolders: [root],
|
|
|
|
// We need to make sure that only one version is loaded for peerDependencies
|
|
// So we exclude them at the root, and alias them to the versions in example's node_modules
|
|
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;
|
|
}, {}),
|
|
},
|
|
|
|
transformer: {
|
|
getTransformOptions: async () => ({
|
|
transform: {
|
|
experimentalImportSupport: false,
|
|
inlineRequires: true,
|
|
},
|
|
}),
|
|
},
|
|
};
|
|
|
|
module.exports = mergeConfig(getDefaultConfig(__dirname), config);
|