mono/packages/discourse/commands/import-oa-users.js

88 lines
7.4 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.register = void 0;
const _cli_1 = require("../_cli");
const options_1 = require("../options");
const index_1 = require("../index");
const discourse_1 = require("../lib/discourse");
const write_1 = require("@plastichub/fs/write");
const users_1 = require("../lib/oa/users");
const path = require("path");
const fs_1 = require("@plastichub/osr-commons");
const defaultOptions = (yargs) => {
return yargs.option('debug', {
default: false,
describe: 'debug messages',
type: 'boolean'
}).option('src', {
default: '${OA_ROOT}/data/latest.json',
type: 'string',
}).option('track', {
default: '${OSR_ROOT}/osr-directory/pp/merged.json',
type: 'string',
}).option('env_key', {
default: 'OSR-CONFIG',
describe: 'Environment key to the config path.'
});
};
let options = (yargs) => defaultOptions(yargs);
const register = (cli) => {
return cli.command('import-users <verb>', 'Import oa-users', options, async (argv) => {
(0, _cli_1.defaults)();
if (argv.help) {
return;
}
const args = argv;
let options = (0, _cli_1.sanitize)(argv);
if (!options) {
return;
}
options.debug && index_1.logger.debug(`CLI Args In`, argv);
let opts = (0, options_1.parse)(options, args);
const discourse = (0, discourse_1.Instance)();
const _opts = {
verb: argv.verb,
src: path.resolve((0, fs_1.resolve)(options.src)),
track: path.resolve((0, fs_1.resolve)(options.track))
};
let users = (0, users_1.read_users)(_opts.src);
users = (0, users_1.filter_valid)(users);
//////////////////////////
//
// store invalid
let usersInvalid = (0, users_1.read_users)(_opts.src);
usersInvalid = (0, users_1.filter_email_only)(usersInvalid);
usersInvalid = (0, users_1.filter_invalid)(usersInvalid);
index_1.logger.debug('write invalidUsers.json : ', (0, users_1.getDataPath)('/invalidUsers.json'));
(0, write_1.sync)((0, users_1.getDataPath)('/invalidUsers.json'), usersInvalid.map((u) => {
return {
...u.detail,
id: u._id,
email: (0, users_1.oa_user_email)(u)
};
}));
let usersInvalidEmail = (0, users_1.read_users)(_opts.src);
usersInvalidEmail = (0, users_1.filter_email_missing)(usersInvalidEmail);
index_1.logger.debug('write invalidUsersEMail.json : ', (0, users_1.getDataPath)('/invalidUsersEMail.json'));
(0, write_1.sync)((0, users_1.getDataPath)('./invalidUsersEMail.json'), usersInvalidEmail.map((u) => {
return {
...u.detail,
id: u._id
};
}));
index_1.logger.debug('invalid users email : ', usersInvalidEmail.length);
index_1.logger.debug('invalid users : ', usersInvalid.length);
if (opts.verb == 'index') {
await (0, users_1.indexUsers)(discourse, options, users);
}
if (opts.verb == 'import') {
await (0, users_1.importUsers)(discourse, options, users);
}
if (opts.verb == 'update') {
await (0, users_1.updateUsers)(discourse, options, users);
}
return;
});
};
exports.register = register;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LW9hLXVzZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbW1hbmRzL2ltcG9ydC1vYS11c2Vycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSxrQ0FBNEM7QUFDNUMsd0NBQWtDO0FBRWxDLG9DQUE4QztBQUU5QyxnREFBMkM7QUFFM0MsZ0RBQW9EO0FBSXBELDJDQVV3QjtBQUV4Qiw2QkFBNEI7QUFDNUIsdURBQXdEO0FBRXhELE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBZSxFQUFFLEVBQUU7SUFDdkMsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRTtRQUN6QixPQUFPLEVBQUUsS0FBSztRQUNkLFFBQVEsRUFBRSxnQkFBZ0I7UUFDMUIsSUFBSSxFQUFFLFNBQVM7S0FDbEIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUU7UUFDYixPQUFPLEVBQUUsNkJBQTZCO1FBQ3RDLElBQUksRUFBRSxRQUFRO0tBQ2pCLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFO1FBQ2YsT0FBTyxFQUFFLDBDQUEwQztRQUNuRCxJQUFJLEVBQUUsUUFBUTtLQUNqQixDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRTtRQUNqQixPQUFPLEVBQUUsWUFBWTtRQUNyQixRQUFRLEVBQUUscUNBQXFDO0tBQ2xELENBQUMsQ0FBQTtBQUNOLENBQUMsQ0FBQTtBQUVELElBQUksT0FBTyxHQUFHLENBQUMsS0FBZSxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUE7QUFFakQsTUFBTSxRQUFRLEdBQUcsQ0FBQyxHQUFhLEVBQUUsRUFBRTtJQUN0QyxPQUFPLEdBQUcsQ0FBQyxPQUFPLENBQUMscUJBQXFCLEVBQUUsaUJBQWlCLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFtQixFQUFFLEVBQUU7UUFFaEcsSUFBQSxlQUFRLEdBQUUsQ0FBQTtRQUVWLElBQUksSUFBSSxDQUFDLElB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