This addresses ENG-9678, which tracks a regression caused by D13700.
Before that diff, we had just one version of metro-react-native-babel-transformer shared by Expo and React Native. After the diff, we have two versions:
- The old metro-react-native-babel-transformer@0.72.3, used by Expo, and patched here.
- The new metro-react-native-babel-transformer@0.72.4. It's in two places: as a transitive dependency of metro and a transitive dependency of metro-react-native-babel-transformer.
Because we now have two versions, the old patch only applies to one version, and the issue addressed by the patch was reintroduced.
I did some testing and found that of the three locations, we need two of them for the issue to be addressed: the old location, and one of the new locations, which is patched here. For some reason, the transitive dependency of metro itself does not appear to need to be patched.