Skip to content

Commit

Permalink
change isPolyfill to type = 'module' | 'script'
Browse files Browse the repository at this point in the history
Summary: When building, we will process modules in a special way, *not* polyfillys. We will also add more types of (virtual) files that are not modules. That’s why a “type” property makes more sense.

Reviewed By: cpojer

Differential Revision: D4244583

fbshipit-source-id: 92a0b4a0a2026d0b97ba88034483a6ce4e0c1ebb
  • Loading branch information
davidaurelio authored and Facebook Github Bot committed Nov 30, 2016
1 parent 021b313 commit da079f7
Show file tree
Hide file tree
Showing 4 changed files with 11 additions and 9 deletions.
2 changes: 1 addition & 1 deletion packager/react-packager/src/ModuleGraph/Graph.js
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ type LoadQueue =
Async$Queue<{id: string, parent: string}, Callback<File, Array<string>>>;

const createParentModule =
() => ({file: {code: '', isPolyfill: false, path: ''}, dependencies: []});
() => ({file: {code: '', type: 'script', path: ''}, dependencies: []});

const noop = () => {};
const NO_OPTIONS = {};
Expand Down
6 changes: 4 additions & 2 deletions packager/react-packager/src/ModuleGraph/types.flow.js
Original file line number Diff line number Diff line change
Expand Up @@ -40,11 +40,13 @@ type Dependency = {|

export type File = {|
code: string,
isPolyfill: boolean,
map?: ?Object,
path: string,
type: FileTypes,
|};

type FileTypes = 'module' | 'script';

export type Module = {|
dependencies: Array<Dependency>,
file: File,
Expand Down Expand Up @@ -82,9 +84,9 @@ export type TransformedFile = {
code: string,
file: string,
hasteID: ?string,
isPolyfill: boolean,
package?: PackageData,
transformed: {[variant: string]: TransformResult},
type: FileTypes,
};

export type PackageData = {|
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,16 +62,16 @@ describe('transforming JS modules:', () => {
});
});

it('sets `isPolyfill` to `false` by default', done => {
it('sets `type` to `"module"` by default', done => {
transformModule(sourceCode, options(), (error, result) => {
expect(result).toEqual(objectContaining({isPolyfill: false}));
expect(result).toEqual(objectContaining({type: 'module'}));
done();
});
});

it('sets `isPolyfill` to `true` if the input is a polyfill', done => {
it('sets `type` to `"script"` if the input is a polyfill', done => {
transformModule(sourceCode, {...options(), polyfill: true}, (error, result) => {
expect(result).toEqual(objectContaining({isPolyfill: true}));
expect(result).toEqual(objectContaining({type: 'script'}));
done();
});
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -75,9 +75,9 @@ function transformModule(
callback(null, {
code,
file: filename,
isPolyfill: !!options.polyfill,
hasteID: annotations.providesModule || annotations.provide || null,
transformed,
type: options.polyfill ? 'script' : 'module',
});
});
}
Expand Down Expand Up @@ -105,8 +105,8 @@ function transformJSON(json, options, callback) {
code: json,
file: filename,
hasteID: value.name,
isPolyfill: false,
transformed,
type: 'module',
};

if (basename(filename) === 'package.json') {
Expand Down

0 comments on commit da079f7

Please sign in to comment.