1import crypto from 'crypto'; 2import { readFileSync } from 'fs'; 3 4export const cacheKeyParts = [ 5 readFileSync(__filename), 6 // Since babel-preset-fbjs cannot be safely resolved relative to the 7 // project root, use this environment variable that we define earlier. 8 process.env.EXPO_METRO_CACHE_KEY_VERSION || '3.3.0', 9 // require('babel-preset-fbjs/package.json').version, 10]; 11 12// Matches upstream 13export function getCacheKey(): string { 14 const key = crypto.createHash('md5'); 15 cacheKeyParts.forEach((part) => key.update(part)); 16 return key.digest('hex'); 17} 18