46 lines
1.1 KiB
TypeScript
46 lines
1.1 KiB
TypeScript
import {
|
|
addDependenciesToPackageJson,
|
|
convertNxGenerator,
|
|
formatFiles,
|
|
GeneratorCallback,
|
|
Tree,
|
|
} from '@nrwl/devkit';
|
|
import { Schema } from './schema';
|
|
import { swcCoreVersion, swcHelpersVersion } from '@nrwl/js/src/utils/versions';
|
|
import { swcLoaderVersion, tsLibVersion } from '../../utils/versions';
|
|
import { addBabelInputs } from '@nrwl/js/src/utils/add-babel-inputs';
|
|
|
|
export async function rollupInitGenerator(tree: Tree, schema: Schema) {
|
|
let task: GeneratorCallback;
|
|
|
|
if (schema.compiler === 'babel') {
|
|
addBabelInputs(tree);
|
|
}
|
|
|
|
if (schema.compiler === 'swc') {
|
|
task = addDependenciesToPackageJson(
|
|
tree,
|
|
{},
|
|
{
|
|
'@swc/helpers': swcHelpersVersion,
|
|
'@swc/core': swcCoreVersion,
|
|
'swc-loader': swcLoaderVersion,
|
|
}
|
|
);
|
|
}
|
|
|
|
if (schema.compiler === 'tsc') {
|
|
task = addDependenciesToPackageJson(tree, {}, { tslib: tsLibVersion });
|
|
}
|
|
|
|
if (!schema.skipFormat) {
|
|
await formatFiles(tree);
|
|
}
|
|
|
|
return task;
|
|
}
|
|
|
|
export default rollupInitGenerator;
|
|
|
|
export const rollupInitSchematic = convertNxGenerator(rollupInitGenerator);
|