osr-mono/packages/osr-discourse/commands/import-oa.js
2025-01-31 14:45:54 +01:00

89 lines
7.0 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 KB_ROOT = '${KB_ROOT}';
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: './latest_track.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 <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);
if (!opts.verb) {
index_1.logger.error('No verb specified');
return;
}
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))
};
if (opts.verb == 'users') {
let users = (0, users_1.read_users)(_opts.src);
// users = filter_email_only(users)
//users = filter_accepted(users as IImportUser[])
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);
(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);
(0, write_1.sync)((0, users_1.getDataPath)('./invalidUsersEMail.json'), usersInvalidEmail.map((u) => {
return {
...u.detail,
id: u._id
};
}));
console.log('invalid users : ', usersInvalidEmail.length);
await (0, users_1.importUsers)(discourse, options, users);
// await updateUsers(discourse, options, users)
// const items = await discourse.search('Sheetpress - Cell','tags:sheetpress')
// logger.info('items',items)
}
return;
});
};
exports.register = register;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LW9hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbW1hbmRzL2ltcG9ydC1vYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSxrQ0FBNEM7QUFDNUMsd0NBQWtDO0FBRWxDLG9DQUE4QztBQUU5QyxnREFBMkM7QUFFM0MsZ0RBQW9EO0FBRXBELDJDQVV3QjtBQUd4Qiw2QkFBNEI7QUFDNUIsdURBQXdEO0FBSXhELE1BQU0sT0FBTyxHQUFHLFlBQVksQ0FBQTtBQUU1QixNQUFNLGNBQWMsR0FBRyxDQUFDLEtBQWUsRUFBRSxFQUFFO0lBQ3ZDLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUU7UUFDekIsT0FBTyxFQUFFLEtBQUs7UUFDZCxRQUFRLEVBQUUsZ0JBQWdCO1FBQzFCLElBQUksRUFBRSxTQUFTO0tBQ2xCLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFO1FBQ2IsT0FBTyxFQUFFLDZCQUE2QjtRQUN0QyxJQUFJLEVBQUUsUUFBUTtLQUNqQixDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRTtRQUNmLE9BQU8sRUFBRSxxQkFBcUI7UUFDOUIsSUFBSSxFQUFFLFFBQVE7S0FDakIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUU7UUFDakIsT0FBTyxFQUFFLFlBQVk7UUFDckIsUUFBUSxFQUFFLHFDQUFxQztLQUNsRCxDQUFDLENBQUE7QUFDTixDQUFDLENBQUE7QUFFRCxJQUFJLE9BQU8sR0FBRyxDQUFDLEtBQWUsRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFBO0FBRWpELE1BQU0sUUFBUSxHQUFHLENBQUMsR0FBYSxFQUFFLEVBQUU7SUFDdEMsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQW1CLEVBQUUsRUFBRTtRQUUxRixJQUFBLGVBQVEsR0FBRSxDQUFBO1FBRVYs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