mirror of https://github.com/status-im/metro.git
c0f446d7e2
Summary:We found that moving the preloaded modules to the startup section of the RAM Bundle improves TTI quite a bit by saving lots of through the bridge calls and injecting multiple modules at once on JSC. However, doing this on a non hacky way required a lot of work. The main changes this diff does are: - Add to `BundleBase` additional bundling options. This options are fetched based on the entry file we're building by invoking a module that exports a function (`getBundleOptionsModulePath`). - Implement `BundleOptions` module to include the `numPreloadedModules` attribute as a bundle additional option. This value is computed by getting the dependencies the entry file has and looking for the first module that exports a module we don't want to preload. The `numPreloadedModules` attribute is then used to decide where to splice the array of modules. - Additional kung fu to make sure sourcemaps work for both preloaded and non preloaded modules. Reviewed By: davidaurelio Differential Revision: D3046534 fb-gh-sync-id: 80b676222ca3bb8b9eecc912a7963be94d3dee1a shipit-source-id: 80b676222ca3bb8b9eecc912a7963be94d3dee1a |
||
---|---|---|
.. | ||
src | ||
.npmignore | ||
index.js | ||
rn-babelrc.json |