mirror of https://github.com/status-im/metro.git
Bring back programmatic packager API
Summary: Brings back parts of the programmatic API removed in 7762f374d50d3b1df8513c826862c2056e8718f9. This is used by a few people. Also updates the docs accordingly. cc akaila Reviewed By: jeanlauliac Differential Revision: D4226348 fbshipit-source-id: e5c0794f9c5415f14b54d16c6f35f902eafc3064
This commit is contained in:
parent
719126bae2
commit
bb1279694b
33
README.md
33
README.md
|
@ -90,10 +90,11 @@ ReactPackager is how you mainly interact with the API.
|
||||||
var ReactPackager = require('./react-packager');
|
var ReactPackager = require('./react-packager');
|
||||||
```
|
```
|
||||||
|
|
||||||
### ReactPackager.middleware(options)
|
### ReactPackager.buildBundle(serverOptions, bundleOptions)
|
||||||
|
|
||||||
Returns a function that can be used in a connect-like
|
Builds a bundle according to the provided options.
|
||||||
middleware. Takes the following options:
|
|
||||||
|
#### `serverOptions`
|
||||||
|
|
||||||
* `projectRoots` array (required): Is the roots where your JavaScript
|
* `projectRoots` array (required): Is the roots where your JavaScript
|
||||||
file will exist
|
file will exist
|
||||||
|
@ -109,21 +110,25 @@ middleware. Takes the following options:
|
||||||
* `nonPersistent` boolean, defaults to false: Whether the server
|
* `nonPersistent` boolean, defaults to false: Whether the server
|
||||||
should be used as a persistent deamon to watch files and update
|
should be used as a persistent deamon to watch files and update
|
||||||
itself
|
itself
|
||||||
* `assetRoots` array: Where should the packager look for assets
|
|
||||||
* `getTransformOptionsModulePath` string: Path to module that exports a function
|
* `getTransformOptionsModulePath` string: Path to module that exports a function
|
||||||
that acts as a middleware for generating options to pass to the transformer
|
that acts as a middleware for generating options to pass to the transformer
|
||||||
based on the bundle and module being transformed.
|
based on the bundle being built.
|
||||||
|
|
||||||
### ReactPackager.buildPackageFromUrl(options, url)
|
#### `bundleOptions`
|
||||||
|
|
||||||
Build a package from a url (see the `.bundle` endpoint). `options` is
|
* `entryFile` string (required): the entry file of the bundle, relative to one
|
||||||
the same options that is passed to `ReactPackager.middleware`
|
of the asset roots.
|
||||||
|
* `dev` boolean (defaults to `true`): sets a global `__DEV__` variable
|
||||||
### ReactPackager.getDependencies(options, main)
|
which will effect how the React Native core libraries behave.
|
||||||
|
* `minify` boolean: Whether to minify code and apply production optimizations.
|
||||||
Given an entry point module. Recursively collect all the dependent
|
* `runModule` boolean (defaults to `true`): whether to require your entry
|
||||||
modules and return it as an array. `options` is the same options that
|
point module.
|
||||||
is passed to `ReactPackager.middleware`
|
* `inlineSourceMap` boolean, defaults to false: whether to inline
|
||||||
|
source maps.
|
||||||
|
* `platform` string: The target platform for the build
|
||||||
|
* `generateSourceMaps` boolean: Whether to generate source maps.
|
||||||
|
* `sourceMapUrl` string: The url of the source map (will be appended to
|
||||||
|
the bundle).
|
||||||
|
|
||||||
## Debugging
|
## Debugging
|
||||||
|
|
||||||
|
|
|
@ -15,6 +15,16 @@ const Logger = require('./src/Logger');
|
||||||
|
|
||||||
exports.createServer = createServer;
|
exports.createServer = createServer;
|
||||||
exports.Logger = Logger;
|
exports.Logger = Logger;
|
||||||
|
|
||||||
|
exports.buildBundle = function(options, bundleOptions) {
|
||||||
|
var server = createNonPersistentServer(options);
|
||||||
|
return server.buildBundle(bundleOptions)
|
||||||
|
.then(p => {
|
||||||
|
server.end();
|
||||||
|
return p;
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
exports.getOrderedDependencyPaths = function(options, bundleOptions) {
|
exports.getOrderedDependencyPaths = function(options, bundleOptions) {
|
||||||
var server = createNonPersistentServer(options);
|
var server = createNonPersistentServer(options);
|
||||||
return server.getOrderedDependencyPaths(bundleOptions)
|
return server.getOrderedDependencyPaths(bundleOptions)
|
||||||
|
|
Loading…
Reference in New Issue