@acoustic-content-sdk/cli
Version:
Command line utility for the Acoustic Content SDK.
66 lines • 7.3 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: commands/generate.feature.module.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { createChalkLoggerService, createReadTextFile, logFileDescriptor, writeFiles } from '@acoustic-content-sdk/tooling';
import { generateFeatureModule } from '@acoustic-content-sdk/tooling-feature-module';
import { NOOP_LOGGER_SERVICE, rxPipe } from '@acoustic-content-sdk/utils';
import { cwd } from 'process';
import { ignoreElements } from 'rxjs/operators';
import { getFullPath } from './utils';
/** @type {?} */
export var GENERATE_FEATURE_MODULE_COMMAND = 'generate-feature-module';
/**
*
*
* @param {?} program - the commander instance to attach the command to
* @return {?} the commander instance
*/
export function generateFeatureModuleCommand(program) {
// register our commands
/** @type {?} */
var cmd = program
.command("" + GENERATE_FEATURE_MODULE_COMMAND)
.description('Adds support for the ng-add schematic to feature modules.')
.option('--src <dir>', 'Location of the directory that contains the package.json to analyze. Defaults to the current working directory.')
.requiredOption('--module <modules>', 'NgModule to export from the feature module. May be a comma separated list.')
.action((/**
* @return {?}
*/
function () {
// service
/** @type {?} */
var logSvc = program.verbose
? createChalkLoggerService()
: NOOP_LOGGER_SERVICE;
// logger
/** @type {?} */
var logger = logSvc.get(cmd.name());
// write callback
/** @type {?} */
var currentDir = cwd();
// module
/** @type {?} */
var module = cmd.module;
// source dir
/** @type {?} */
var srcDir = getFullPath(currentDir, cmd.src || '');
// log this
logger.info('module', module);
logger.info('srcDir', srcDir);
// execute the command
/** @type {?} */
var command = generateFeatureModule({
module: module
});
// execute the command
/** @type {?} */
var files$ = rxPipe(command(createReadTextFile(srcDir), logSvc), writeFiles(srcDir), logFileDescriptor(), ignoreElements());
// subscribe
return files$.toPromise();
}));
// ok
return cmd;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUuZmVhdHVyZS5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWNvdXN0aWMtY29udGVudC1zZGsvY2xpLyIsInNvdXJjZXMiOlsiY29tbWFuZHMvZ2VuZXJhdGUuZmVhdHVyZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQ0wsd0JBQXdCLEVBQ3hCLGtCQUFrQixFQUNsQixpQkFBaUIsRUFDakIsVUFBVSxFQUNYLE1BQU0sK0JBQStCLENBQUM7QUFDdkMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDckYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDOUIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWhELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxTQUFTLENBQUM7O0FBRXRDLE1BQU0sS0FBTywrQkFBK0IsR0FBRyx5QkFBeUI7Ozs7Ozs7QUFReEUsTUFBTSxVQUFVLDRCQUE0QixDQUFDLE9BQWdCOzs7UUFFckQsR0FBRyxHQUFHLE9BQU87U0FDaEIsT0FBTyxDQUFDLEtBQUcsK0JBQWlDLENBQUM7U0FDN0MsV0FBVyxDQUFDLDJEQUEyRCxDQUFDO1NBQ3hFLE1BQU0sQ0FDTCxhQUFhLEVBQ2IsaUhBQWlILENBQ2xIO1NBQ0EsY0FBYyxDQUNiLG9CQUFvQixFQUNwQiw0RUFBNEUsQ0FDN0U7U0FDQSxNQUFNOzs7SUFBQzs7O1lBRUEsTUFBTSxHQUFHLE9BQU8sQ0FBQyxPQUFPO1lBQzVCLENBQUMsQ0FBQyx3QkFBd0IsRUFBRTtZQUM1QixDQUFDLENBQUMsbUJBQW1COzs7WUFFakIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDOzs7WUFFL0IsVUFBVSxHQUFHLEdBQUcsRUFBRTs7O1lBRWxCLE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTTs7O1lBRW5CLE1BQU0sR0FBRyxXQUFXLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDO1FBQ3JELFdBQVc7UUFDWCxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUM5QixNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQzs7O1lBRXhCLE9BQU8sR0FBRyxxQkFBcUIsQ0FBQztZQUNwQyxNQUFNLFFBQUE7U0FDUCxDQUFDOzs7WUFFSSxNQUFNLEdBQUcsTUFBTSxDQUNuQixPQUFPLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLEVBQUUsTUFBTSxDQUFDLEVBQzNDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFDbEIsaUJBQWlCLEVBQUUsRUFDbkIsY0FBYyxFQUFFLENBQ2pCO1FBQ0QsWUFBWTtRQUNaLE9BQU8sTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQzVCLENBQUMsRUFBQztJQUVKLEtBQUs7SUFDTCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBjcmVhdGVDaGFsa0xvZ2dlclNlcnZpY2UsXG4gIGNyZWF0ZVJlYWRUZXh0RmlsZSxcbiAgbG9nRmlsZURlc2NyaXB0b3IsXG4gIHdyaXRlRmlsZXNcbn0gZnJvbSAnQGFjb3VzdGljLWNvbnRlbnQtc2RrL3Rvb2xpbmcnO1xuaW1wb3J0IHsgZ2VuZXJhdGVGZWF0dXJlTW9kdWxlIH0gZnJvbSAnQGFjb3VzdGljLWNvbnRlbnQtc2RrL3Rvb2xpbmctZmVhdHVyZS1tb2R1bGUnO1xuaW1wb3J0IHsgTk9PUF9MT0dHRVJfU0VSVklDRSwgcnhQaXBlIH0gZnJvbSAnQGFjb3VzdGljLWNvbnRlbnQtc2RrL3V0aWxzJztcbmltcG9ydCB7IENvbW1hbmQgfSBmcm9tICdjb21tYW5kZXInO1xuaW1wb3J0IHsgY3dkIH0gZnJvbSAncHJvY2Vzcyc7XG5pbXBvcnQgeyBpZ25vcmVFbGVtZW50cyB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgZ2V0RnVsbFBhdGggfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IEdFTkVSQVRFX0ZFQVRVUkVfTU9EVUxFX0NPTU1BTkQgPSAnZ2VuZXJhdGUtZmVhdHVyZS1tb2R1bGUnO1xuXG4vKipcbiAqXG4gKlxuICogQHBhcmFtIHByb2dyYW0gLSB0aGUgY29tbWFuZGVyIGluc3RhbmNlIHRvIGF0dGFjaCB0aGUgY29tbWFuZCB0b1xuICogQHJldHVybnMgdGhlIGNvbW1hbmRlciBpbnN0YW5jZVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVGZWF0dXJlTW9kdWxlQ29tbWFuZChwcm9ncmFtOiBDb21tYW5kKTogQ29tbWFuZCB7XG4gIC8vIHJlZ2lzdGVyIG91ciBjb21tYW5kc1xuICBjb25zdCBjbWQgPSBwcm9ncmFtXG4gICAgLmNvbW1hbmQoYCR7R0VORVJBVEVfRkVBVFVSRV9NT0RVTEVfQ09NTUFORH1gKVxuICAgIC5kZXNjcmlwdGlvbignQWRkcyBzdXBwb3J0IGZvciB0aGUgbmctYWRkIHNjaGVtYXRpYyB0byBmZWF0dXJlIG1vZHVsZXMuJylcbiAgICAub3B0aW9uKFxuICAgICAgJy0tc3JjIDxkaXI+JyxcbiAgICAgICdMb2NhdGlvbiBvZiB0aGUgZGlyZWN0b3J5IHRoYXQgY29udGFpbnMgdGhlIHBhY2thZ2UuanNvbiB0byBhbmFseXplLiBEZWZhdWx0cyB0byB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4nXG4gICAgKVxuICAgIC5yZXF1aXJlZE9wdGlvbihcbiAgICAgICctLW1vZHVsZSA8bW9kdWxlcz4nLFxuICAgICAgJ05nTW9kdWxlIHRvIGV4cG9ydCBmcm9tIHRoZSBmZWF0dXJlIG1vZHVsZS4gTWF5IGJlIGEgY29tbWEgc2VwYXJhdGVkIGxpc3QuJ1xuICAgIClcbiAgICAuYWN0aW9uKCgpID0+IHtcbiAgICAgIC8vIHNlcnZpY2VcbiAgICAgIGNvbnN0IGxvZ1N2YyA9IHByb2dyYW0udmVyYm9zZVxuICAgICAgICA/IGNyZWF0ZUNoYWxrTG9nZ2VyU2VydmljZSgpXG4gICAgICAgIDogTk9PUF9MT0dHRVJfU0VSVklDRTtcbiAgICAgIC8vIGxvZ2dlclxuICAgICAgY29uc3QgbG9nZ2VyID0gbG9nU3ZjLmdldChjbWQubmFtZSgpKTtcbiAgICAgIC8vIHdyaXRlIGNhbGxiYWNrXG4gICAgICBjb25zdCBjdXJyZW50RGlyID0gY3dkKCk7XG4gICAgICAvLyBtb2R1bGVcbiAgICAgIGNvbnN0IG1vZHVsZSA9IGNtZC5tb2R1bGU7XG4gICAgICAvLyBzb3VyY2UgZGlyXG4gICAgICBjb25zdCBzcmNEaXIgPSBnZXRGdWxsUGF0aChjdXJyZW50RGlyLCBjbWQuc3JjIHx8ICcnKTtcbiAgICAgIC8vIGxvZyB0aGlzXG4gICAgICBsb2dnZXIuaW5mbygnbW9kdWxlJywgbW9kdWxlKTtcbiAgICAgIGxvZ2dlci5pbmZvKCdzcmNEaXInLCBzcmNEaXIpO1xuICAgICAgLy8gZXhlY3V0ZSB0aGUgY29tbWFuZFxuICAgICAgY29uc3QgY29tbWFuZCA9IGdlbmVyYXRlRmVhdHVyZU1vZHVsZSh7XG4gICAgICAgIG1vZHVsZVxuICAgICAgfSk7XG4gICAgICAvLyBleGVjdXRlIHRoZSBjb21tYW5kXG4gICAgICBjb25zdCBmaWxlcyQgPSByeFBpcGUoXG4gICAgICAgIGNvbW1hbmQoY3JlYXRlUmVhZFRleHRGaWxlKHNyY0RpciksIGxvZ1N2YyksXG4gICAgICAgIHdyaXRlRmlsZXMoc3JjRGlyKSxcbiAgICAgICAgbG9nRmlsZURlc2NyaXB0b3IoKSxcbiAgICAgICAgaWdub3JlRWxlbWVudHMoKVxuICAgICAgKTtcbiAgICAgIC8vIHN1YnNjcmliZVxuICAgICAgcmV0dXJuIGZpbGVzJC50b1Byb21pc2UoKTtcbiAgICB9KTtcblxuICAvLyBva1xuICByZXR1cm4gY21kO1xufVxuIl19