@acoustic-content-sdk/cli
Version:
Command line utility for the Acoustic Content SDK.
64 lines • 7.24 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: commands/generate.keys.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { createChalkLoggerService, createReadDirectory, generateKeys, 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 generateKeysCommand(program) {
// register our commands
/** @type {?} */
var cmd = program
.command('generate-keys')
.description('Generates keys into the content.')
.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 content items to include.')
.option('--exclude <exclude>', 'Regular expression of the content items to exclude.')
.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 = generateKeys({
data: '/',
include: splitParams(cmd.include),
exclude: splitParams(cmd.exclude)
});
// 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUua2V5cy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhY291c3RpYy1jb250ZW50LXNkay9jbGkvIiwic291cmNlcyI6WyJjb21tYW5kcy9nZW5lcmF0ZS5rZXlzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUNMLHdCQUF3QixFQUN4QixtQkFBbUIsRUFDbkIsWUFBWSxFQUNaLGlCQUFpQixFQUNqQixVQUFVLEVBQ1gsTUFBTSwrQkFBK0IsQ0FBQztBQUN2QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFMUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUM5QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7Ozs7QUFFdEMsTUFBTSxVQUFVLG1CQUFtQixDQUFDLE9BQWdCOzs7UUFFNUMsR0FBRyxHQUFHLE9BQU87U0FDaEIsT0FBTyxDQUFDLGVBQWUsQ0FBQztTQUN4QixXQUFXLENBQUMsa0NBQWtDLENBQUM7U0FDL0MsTUFBTSxDQUFDLGVBQWUsRUFBRSxpQ0FBaUMsQ0FBQztTQUMxRCxNQUFNLENBQ0wsYUFBYSxFQUNiLG1FQUFtRSxDQUNwRTtTQUNBLE1BQU0sQ0FDTCxxQkFBcUIsRUFDckIscURBQXFELENBQ3REO1NBQ0EsTUFBTSxDQUNMLHFCQUFxQixFQUNyQixxREFBcUQsQ0FDdEQ7U0FDQSxNQUFNOzs7SUFBQzs7O1lBRUEsTUFBTSxHQUFHLE9BQU8sQ0FBQyxPQUFPO1lBQzVCLENBQUMsQ0FBQyx3QkFBd0IsRUFBRTtZQUM1QixDQUFDLENBQUMsbUJBQW1COzs7WUFFakIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDOzs7WUFFL0IsVUFBVSxHQUFHLEdBQUcsRUFBRTs7WUFDbEIsT0FBTyxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUM7OztZQUV6RCxNQUFNLEdBQUcsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksT0FBTyxDQUFDO1FBQzVDLFdBQVc7UUFDWCxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDOzs7WUFFNUMsT0FBTyxHQUFHLFlBQVksQ0FBQztZQUMzQixJQUFJLEVBQUUsR0FBRztZQUNULE9BQU8sRUFBRSxXQUFXLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQztZQUNqQyxPQUFPLEVBQUUsV0FBVyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUM7U0FDbEMsQ0FBQzs7O1lBRUksTUFBTSxHQUFHLE1BQU0sQ0FDbkIsT0FBTyxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxFQUFFLE1BQU0sQ0FBQyxFQUM3QyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQ2xCLGlCQUFpQixFQUFFLEVBQ25CLGNBQWMsRUFBRSxDQUNqQjtRQUNELFlBQVk7UUFDWixPQUFPLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUM1QixDQUFDLEVBQUM7SUFFSixLQUFLO0lBQ0wsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgY3JlYXRlQ2hhbGtMb2dnZXJTZXJ2aWNlLFxuICBjcmVhdGVSZWFkRGlyZWN0b3J5LFxuICBnZW5lcmF0ZUtleXMsXG4gIGxvZ0ZpbGVEZXNjcmlwdG9yLFxuICB3cml0ZUZpbGVzXG59IGZyb20gJ0BhY291c3RpYy1jb250ZW50LXNkay90b29saW5nJztcbmltcG9ydCB7IE5PT1BfTE9HR0VSX1NFUlZJQ0UsIHJ4UGlwZSB9IGZyb20gJ0BhY291c3RpYy1jb250ZW50LXNkay91dGlscyc7XG5pbXBvcnQgeyBDb21tYW5kIH0gZnJvbSAnY29tbWFuZGVyJztcbmltcG9ydCB7IGpvaW4sIG5vcm1hbGl6ZSB9IGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgY3dkIH0gZnJvbSAncHJvY2Vzcyc7XG5pbXBvcnQgeyBpZ25vcmVFbGVtZW50cyB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgc3BsaXRQYXJhbXMgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlS2V5c0NvbW1hbmQocHJvZ3JhbTogQ29tbWFuZCk6IENvbW1hbmQge1xuICAvLyByZWdpc3RlciBvdXIgY29tbWFuZHNcbiAgY29uc3QgY21kID0gcHJvZ3JhbVxuICAgIC5jb21tYW5kKCdnZW5lcmF0ZS1rZXlzJylcbiAgICAuZGVzY3JpcHRpb24oJ0dlbmVyYXRlcyBrZXlzIGludG8gdGhlIGNvbnRlbnQuJylcbiAgICAub3B0aW9uKCctLWRhdGEgPGRhdGE+JywgJ0xvY2F0aW9uIG9mIHRoZSBkYXRhIGRpcmVjdG9yeS4nKVxuICAgIC5vcHRpb24oXG4gICAgICAnLS1kaXIgPGRpcj4nLFxuICAgICAgJ0xvY2F0aW9uIG9mIHRoZSB0YXJnZXQgZGlyZWN0b3J5LiBEZWZhdWx0cyB0byB0aGUgZGF0YSBkaXJlY3RvcnkuJ1xuICAgIClcbiAgICAub3B0aW9uKFxuICAgICAgJy0taW5jbHVkZSA8aW5jbHVkZT4nLFxuICAgICAgJ1JlZ3VsYXIgZXhwcmVzc2lvbiBvZiB0aGUgY29udGVudCBpdGVtcyB0byBpbmNsdWRlLidcbiAgICApXG4gICAgLm9wdGlvbihcbiAgICAgICctLWV4Y2x1ZGUgPGV4Y2x1ZGU+JyxcbiAgICAgICdSZWd1bGFyIGV4cHJlc3Npb24gb2YgdGhlIGNvbnRlbnQgaXRlbXMgdG8gZXhjbHVkZS4nXG4gICAgKVxuICAgIC5hY3Rpb24oKCkgPT4ge1xuICAgICAgLy8gc2VydmljZVxuICAgICAgY29uc3QgbG9nU3ZjID0gcHJvZ3JhbS52ZXJib3NlXG4gICAgICAgID8gY3JlYXRlQ2hhbGtMb2dnZXJTZXJ2aWNlKClcbiAgICAgICAgOiBOT09QX0xPR0dFUl9TRVJWSUNFO1xuICAgICAgLy8gbG9nZ2VyXG4gICAgICBjb25zdCBsb2dnZXIgPSBsb2dTdmMuZ2V0KGNtZC5uYW1lKCkpO1xuICAgICAgLy8gd3JpdGUgY2FsbGJhY2tcbiAgICAgIGNvbnN0IGN1cnJlbnREaXIgPSBjd2QoKTtcbiAgICAgIGNvbnN0IGRhdGFEaXIgPSBub3JtYWxpemUoY21kLmRhdGEgfHwgam9pbihjdXJyZW50RGlyLCAnZGF0YScpKTtcbiAgICAgIC8vIHRhcmdldCBkaXJlXG4gICAgICBjb25zdCBkc3REaXIgPSBub3JtYWxpemUoY21kLmRpciB8fCBkYXRhRGlyKTtcbiAgICAgIC8vIGxvZyB0aGlzXG4gICAgICBsb2dnZXIuaW5mbygnZGF0YURpcicsIGRhdGFEaXIsICdkc3REaXInLCBkc3REaXIpO1xuICAgICAgLy8gZXhlY3V0ZSB0aGUgY29tbWFuZFxuICAgICAgY29uc3QgY29tbWFuZCA9IGdlbmVyYXRlS2V5cyh7XG4gICAgICAgIGRhdGE6ICcvJyxcbiAgICAgICAgaW5jbHVkZTogc3BsaXRQYXJhbXMoY21kLmluY2x1ZGUpLFxuICAgICAgICBleGNsdWRlOiBzcGxpdFBhcmFtcyhjbWQuZXhjbHVkZSlcbiAgICAgIH0pO1xuICAgICAgLy8gZXhlY3V0ZSB0aGUgY29tbWFuZFxuICAgICAgY29uc3QgZmlsZXMkID0gcnhQaXBlKFxuICAgICAgICBjb21tYW5kKGNyZWF0ZVJlYWREaXJlY3RvcnkoZGF0YURpciksIGxvZ1N2YyksXG4gICAgICAgIHdyaXRlRmlsZXMoZHN0RGlyKSxcbiAgICAgICAgbG9nRmlsZURlc2NyaXB0b3IoKSxcbiAgICAgICAgaWdub3JlRWxlbWVudHMoKVxuICAgICAgKTtcbiAgICAgIC8vIHN1YnNjcmliZVxuICAgICAgcmV0dXJuIGZpbGVzJC50b1Byb21pc2UoKTtcbiAgICB9KTtcblxuICAvLyBva1xuICByZXR1cm4gY21kO1xufVxuIl19