Skip to content

Commit

Permalink
feat: add extraBundlerOptions and extraHermesFlags params
Browse files Browse the repository at this point in the history
  • Loading branch information
Ryan committed Apr 26, 2022
1 parent c845191 commit 6fda542
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 2 deletions.
5 changes: 3 additions & 2 deletions src/command-executor.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1395,6 +1395,7 @@ export var releaseReact = (command: cli.IReleaseReactCommand): Promise<void> =>
platform,
command.sourcemapOutput,
command.config,
command.extraBundlerOptions,
),
)
.then(() => {
Expand All @@ -1405,7 +1406,7 @@ export var releaseReact = (command: cli.IReleaseReactCommand): Promise<void> =>
bundleName,
outputFolder,
command.sourcemapOutput,
[], // TODO: extra flags
command.extraHermesFlags,
);
}
});
Expand All @@ -1416,7 +1417,7 @@ export var releaseReact = (command: cli.IReleaseReactCommand): Promise<void> =>
bundleName,
outputFolder,
command.sourcemapOutput,
[], // TODO: extra flags
command.extraHermesFlags,
);
}
});
Expand Down
18 changes: 18 additions & 0 deletions src/command-parser.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1077,6 +1077,20 @@ var argv = yargs
description: 'Path to the React Native CLI configuration file',
type: 'string',
})
.option('extraBundlerOptions', {
default: [],
demand: false,
description:
'Option that gets passed to react-native bundler. Can be specified multiple times',
type: 'array',
})
.option('extraHermesFlags', {
default: [],
demand: false,
description:
'Flag that gets passed to Hermes, JavaScript to bytecode compiler. Can be specified multiple times',
type: 'array',
})
.check((argv: any, aliases: { [aliases: string]: string }): any => {
return checkValidReleaseOptions(argv);
});
Expand Down Expand Up @@ -1540,6 +1554,10 @@ function createCommand(): cli.ICommand {
releaseReactCommand.sourcemapOutputDir = argv['sourcemapOutputDir'] as string;
releaseReactCommand.outputDir = argv['outputDir'] as string;
releaseReactCommand.config = argv['config'] as string;
releaseReactCommand.extraBundlerOptions = argv[
'extraBundlerOptions'
] as string[];
releaseReactCommand.extraHermesFlags = argv['extraHermesFlags'] as string[];
}
break;

Expand Down
2 changes: 2 additions & 0 deletions src/definitions/cli.ts
Original file line number Diff line number Diff line change
Expand Up @@ -206,6 +206,8 @@ export interface IReleaseReactCommand extends IReleaseBaseCommand {
sourcemapOutputDir?: string;
outputDir?: string;
config?: string;
extraBundlerOptions?: string[];
extraHermesFlags?: string[];
}

export interface IRollbackCommand extends ICommand {
Expand Down
2 changes: 2 additions & 0 deletions src/lib/react-native-utils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -270,6 +270,7 @@ export function runReactNativeBundleCommand(
platform: string,
sourcemapOutput: string,
config: string,
extraBundlerOptions?: string[],
): Promise<void> {
let reactNativeBundleArgs: string[] = [];
let envNodeArgs: string = process.env.CODE_PUSH_NODE_ARGS;
Expand All @@ -291,6 +292,7 @@ export function runReactNativeBundleCommand(
entryFile,
'--platform',
platform,
...extraBundlerOptions,
]);

if (sourcemapOutput) {
Expand Down

0 comments on commit 6fda542

Please sign in to comment.