UNPKG

@acoustic-content-sdk/cli

Version:

Command line utility for the Acoustic Content SDK.

68 lines 8.43 kB
/** * @fileoverview added by tsickle * Generated from: commands/generate.layouts.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { createChalkLoggerService, createReadDirectory, generateLayouts, logFileDescriptor, writeFiles } from '@acoustic-content-sdk/tooling'; import { NOOP_LOGGER_SERVICE, rxPipe } from '@acoustic-content-sdk/utils'; import { join, normalize } from 'path'; import { cwd } from 'process'; import { ignoreElements } from 'rxjs/operators'; import { splitParams } from './utils'; /** * @param {?} program * @return {?} */ export function generateLayoutsCommand(program) { // register our commands /** @type {?} */ var cmd = program .command('generate-layouts') .description('Generates layouts and layout mappings based on type information in a batch in the wchtools folder. The names of the artifacts are derived from the type names.') .option('--data <data>', 'Location of the data directory.') .option('--dir <dir>', 'Location of the target directory. Defaults to the data directory.') .option('--include <include>', 'Regular expression of the types to include.') .option('--exclude <exclude>', 'Regular expression of the types to exclude.') .option('--templateType <templateType>', 'Type of the rendering template to use, can be "angular" or "handlebars".') .option('--tags <tags>', 'Tags to add to the new layouts.') .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(); /** @type {?} */ var dataDir = normalize(cmd.data || join(currentDir, 'data')); // target dire /** @type {?} */ var dstDir = normalize(cmd.dir || dataDir); // log this logger.info('dataDir', dataDir, 'dstDir', dstDir); // execute the command /** @type {?} */ var command = generateLayouts({ data: '/', tags: splitParams(cmd.tags), include: splitParams(cmd.include), exclude: splitParams(cmd.exclude), templateType: cmd.templateType }); // execute the command /** @type {?} */ var files$ = rxPipe(command(createReadDirectory(dataDir), logSvc), writeFiles(dstDir), logFileDescriptor(), ignoreElements()); // subscribe return files$.toPromise(); })); // ok return cmd; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUubGF5b3V0cy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhY291c3RpYy1jb250ZW50LXNkay9jbGkvIiwic291cmNlcyI6WyJjb21tYW5kcy9nZW5lcmF0ZS5sYXlvdXRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUNMLHdCQUF3QixFQUN4QixtQkFBbUIsRUFDbkIsZUFBZSxFQUNmLGlCQUFpQixFQUNqQixVQUFVLEVBQ1gsTUFBTSwrQkFBK0IsQ0FBQztBQUN2QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFMUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUM5QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7Ozs7QUFFdEMsTUFBTSxVQUFVLHNCQUFzQixDQUFDLE9BQWdCOzs7UUFFL0MsR0FBRyxHQUFHLE9BQU87U0FDaEIsT0FBTyxDQUFDLGtCQUFrQixDQUFDO1NBQzNCLFdBQVcsQ0FDVixnS0FBZ0ssQ0FDaks7U0FDQSxNQUFNLENBQUMsZUFBZSxFQUFFLGlDQUFpQyxDQUFDO1NBQzFELE1BQU0sQ0FDTCxhQUFhLEVBQ2IsbUVBQW1FLENBQ3BFO1NBQ0EsTUFBTSxDQUNMLHFCQUFxQixFQUNyQiw2Q0FBNkMsQ0FDOUM7U0FDQSxNQUFNLENBQ0wscUJBQXFCLEVBQ3JCLDZDQUE2QyxDQUM5QztTQUNBLE1BQU0sQ0FDTCwrQkFBK0IsRUFDL0IsMEVBQTBFLENBQzNFO1NBQ0EsTUFBTSxDQUFDLGVBQWUsRUFBRSxpQ0FBaUMsQ0FBQztTQUMxRCxNQUFNOzs7SUFBQzs7O1lBRUEsTUFBTSxHQUFHLE9BQU8sQ0FBQyxPQUFPO1lBQzVCLENBQUMsQ0FBQyx3QkFBd0IsRUFBRTtZQUM1QixDQUFDLENBQUMsbUJBQW1COzs7WUFFakIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDOzs7WUFFL0IsVUFBVSxHQUFHLEdBQUcsRUFBRTs7WUFDbEIsT0FBTyxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUM7OztZQUV6RCxNQUFNLEdBQUcsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksT0FBTyxDQUFDO1FBQzVDLFdBQVc7UUFDWCxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDOzs7WUFFNUMsT0FBTyxHQUFHLGVBQWUsQ0FBQztZQUM5QixJQUFJLEVBQUUsR0FBRztZQUNULElBQUksRUFBRSxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztZQUMzQixPQUFPLEVBQUUsV0FBVyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUM7WUFDakMsT0FBTyxFQUFFLFdBQVcsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDO1lBQ2pDLFlBQVksRUFBRSxHQUFHLENBQUMsWUFBWTtTQUMvQixDQUFDOzs7WUFFSSxNQUFNLEdBQUcsTUFBTSxDQUNuQixPQUFPLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLEVBQUUsTUFBTSxDQUFDLEVBQzdDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFDbEIsaUJBQWlCLEVBQUUsRUFDbkIsY0FBYyxFQUFFLENBQ2pCO1FBQ0QsWUFBWTtRQUNaLE9BQU8sTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQzVCLENBQUMsRUFBQztJQUVKLEtBQUs7SUFDTCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBjcmVhdGVDaGFsa0xvZ2dlclNlcnZpY2UsXG4gIGNyZWF0ZVJlYWREaXJlY3RvcnksXG4gIGdlbmVyYXRlTGF5b3V0cyxcbiAgbG9nRmlsZURlc2NyaXB0b3IsXG4gIHdyaXRlRmlsZXNcbn0gZnJvbSAnQGFjb3VzdGljLWNvbnRlbnQtc2RrL3Rvb2xpbmcnO1xuaW1wb3J0IHsgTk9PUF9MT0dHRVJfU0VSVklDRSwgcnhQaXBlIH0gZnJvbSAnQGFjb3VzdGljLWNvbnRlbnQtc2RrL3V0aWxzJztcbmltcG9ydCB7IENvbW1hbmQgfSBmcm9tICdjb21tYW5kZXInO1xuaW1wb3J0IHsgam9pbiwgbm9ybWFsaXplIH0gZnJvbSAncGF0aCc7XG5pbXBvcnQgeyBjd2QgfSBmcm9tICdwcm9jZXNzJztcbmltcG9ydCB7IGlnbm9yZUVsZW1lbnRzIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBzcGxpdFBhcmFtcyB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVMYXlvdXRzQ29tbWFuZChwcm9ncmFtOiBDb21tYW5kKTogQ29tbWFuZCB7XG4gIC8vIHJlZ2lzdGVyIG91ciBjb21tYW5kc1xuICBjb25zdCBjbWQgPSBwcm9ncmFtXG4gICAgLmNvbW1hbmQoJ2dlbmVyYXRlLWxheW91dHMnKVxuICAgIC5kZXNjcmlwdGlvbihcbiAgICAgICdHZW5lcmF0ZXMgbGF5b3V0cyBhbmQgbGF5b3V0IG1hcHBpbmdzIGJhc2VkIG9uIHR5cGUgaW5mb3JtYXRpb24gaW4gYSBiYXRjaCBpbiB0aGUgd2NodG9vbHMgZm9sZGVyLiBUaGUgbmFtZXMgb2YgdGhlIGFydGlmYWN0cyBhcmUgZGVyaXZlZCBmcm9tIHRoZSB0eXBlIG5hbWVzLidcbiAgICApXG4gICAgLm9wdGlvbignLS1kYXRhIDxkYXRhPicsICdMb2NhdGlvbiBvZiB0aGUgZGF0YSBkaXJlY3RvcnkuJylcbiAgICAub3B0aW9uKFxuICAgICAgJy0tZGlyIDxkaXI+JyxcbiAgICAgICdMb2NhdGlvbiBvZiB0aGUgdGFyZ2V0IGRpcmVjdG9yeS4gRGVmYXVsdHMgdG8gdGhlIGRhdGEgZGlyZWN0b3J5LidcbiAgICApXG4gICAgLm9wdGlvbihcbiAgICAgICctLWluY2x1ZGUgPGluY2x1ZGU+JyxcbiAgICAgICdSZWd1bGFyIGV4cHJlc3Npb24gb2YgdGhlIHR5cGVzIHRvIGluY2x1ZGUuJ1xuICAgIClcbiAgICAub3B0aW9uKFxuICAgICAgJy0tZXhjbHVkZSA8ZXhjbHVkZT4nLFxuICAgICAgJ1JlZ3VsYXIgZXhwcmVzc2lvbiBvZiB0aGUgdHlwZXMgdG8gZXhjbHVkZS4nXG4gICAgKVxuICAgIC5vcHRpb24oXG4gICAgICAnLS10ZW1wbGF0ZVR5cGUgPHRlbXBsYXRlVHlwZT4nLFxuICAgICAgJ1R5cGUgb2YgdGhlIHJlbmRlcmluZyB0ZW1wbGF0ZSB0byB1c2UsIGNhbiBiZSBcImFuZ3VsYXJcIiBvciBcImhhbmRsZWJhcnNcIi4nXG4gICAgKVxuICAgIC5vcHRpb24oJy0tdGFncyA8dGFncz4nLCAnVGFncyB0byBhZGQgdG8gdGhlIG5ldyBsYXlvdXRzLicpXG4gICAgLmFjdGlvbigoKSA9PiB7XG4gICAgICAvLyBzZXJ2aWNlXG4gICAgICBjb25zdCBsb2dTdmMgPSBwcm9ncmFtLnZlcmJvc2VcbiAgICAgICAgPyBjcmVhdGVDaGFsa0xvZ2dlclNlcnZpY2UoKVxuICAgICAgICA6IE5PT1BfTE9HR0VSX1NFUlZJQ0U7XG4gICAgICAvLyBsb2dnZXJcbiAgICAgIGNvbnN0IGxvZ2dlciA9IGxvZ1N2Yy5nZXQoY21kLm5hbWUoKSk7XG4gICAgICAvLyB3cml0ZSBjYWxsYmFja1xuICAgICAgY29uc3QgY3VycmVudERpciA9IGN3ZCgpO1xuICAgICAgY29uc3QgZGF0YURpciA9IG5vcm1hbGl6ZShjbWQuZGF0YSB8fCBqb2luKGN1cnJlbnREaXIsICdkYXRhJykpO1xuICAgICAgLy8gdGFyZ2V0IGRpcmVcbiAgICAgIGNvbnN0IGRzdERpciA9IG5vcm1hbGl6ZShjbWQuZGlyIHx8IGRhdGFEaXIpO1xuICAgICAgLy8gbG9nIHRoaXNcbiAgICAgIGxvZ2dlci5pbmZvKCdkYXRhRGlyJywgZGF0YURpciwgJ2RzdERpcicsIGRzdERpcik7XG4gICAgICAvLyBleGVjdXRlIHRoZSBjb21tYW5kXG4gICAgICBjb25zdCBjb21tYW5kID0gZ2VuZXJhdGVMYXlvdXRzKHtcbiAgICAgICAgZGF0YTogJy8nLFxuICAgICAgICB0YWdzOiBzcGxpdFBhcmFtcyhjbWQudGFncyksXG4gICAgICAgIGluY2x1ZGU6IHNwbGl0UGFyYW1zKGNtZC5pbmNsdWRlKSxcbiAgICAgICAgZXhjbHVkZTogc3BsaXRQYXJhbXMoY21kLmV4Y2x1ZGUpLFxuICAgICAgICB0ZW1wbGF0ZVR5cGU6IGNtZC50ZW1wbGF0ZVR5cGVcbiAgICAgIH0pO1xuICAgICAgLy8gZXhlY3V0ZSB0aGUgY29tbWFuZFxuICAgICAgY29uc3QgZmlsZXMkID0gcnhQaXBlKFxuICAgICAgICBjb21tYW5kKGNyZWF0ZVJlYWREaXJlY3RvcnkoZGF0YURpciksIGxvZ1N2YyksXG4gICAgICAgIHdyaXRlRmlsZXMoZHN0RGlyKSxcbiAgICAgICAgbG9nRmlsZURlc2NyaXB0b3IoKSxcbiAgICAgICAgaWdub3JlRWxlbWVudHMoKVxuICAgICAgKTtcbiAgICAgIC8vIHN1YnNjcmliZVxuICAgICAgcmV0dXJuIGZpbGVzJC50b1Byb21pc2UoKTtcbiAgICB9KTtcblxuICAvLyBva1xuICByZXR1cm4gY21kO1xufVxuIl19