polyv-live-cli
Version:
CLI tool for managing PolyV live streaming services.
48 lines • 2.77 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.registerPartnerCommands = registerPartnerCommands;
const partner_handler_1 = require("../handlers/partner.handler");
const errors_1 = require("../utils/errors");
const api_command_1 = require("../utils/api-command");
function withPartnerHandler(program, run) {
return (async () => {
try {
const { authConfig, serviceConfig } = await (0, api_command_1.loadApiCommandConfig)((0, api_command_1.commandParentOptions)(program));
await run(new partner_handler_1.PartnerHandler(authConfig, serviceConfig));
}
catch (error) {
(0, errors_1.logError)(error instanceof Error ? error : new Error(String(error)));
process.exit(1);
}
})();
}
function registerPartnerCommands(program) {
const partnerCmd = program.command('partner').description('Manage partner account tools');
partnerCmd.command('user-register')
.description('Register a partner customer account')
.requiredOption('--company <company>', 'company name')
.requiredOption('--mobile <mobile>', 'mobile number')
.requiredOption('--contact <contact>', 'contact name')
.requiredOption('--email <email>', 'email')
.option('--type <type>', 'account type')
.option('--remark <remark>', 'remark')
.option('-f, --force', 'skip confirmation prompt')
.option('-o, --output <format>', 'output format (table|json)', api_command_1.validateOutputFormat, 'table')
.action((options) => withPartnerHandler(program, handler => handler.registerUser(options)));
const tencentCmd = partnerCmd.command('tencent-order').description('Tencent order APIs');
tencentCmd.command('create')
.description('Create Tencent cloud government/enterprise order')
.requiredOption('--uin <uin>', 'Tencent cloud uin')
.requiredOption('--order-id <orderId>', 'order ID')
.requiredOption('--email <email>', 'email')
.requiredOption('--mobile <mobile>', 'mobile number')
.option('--company <company>', 'company name')
.option('--contact <contact>', 'contact name')
.option('--basic-service <json>', 'basic service JSON array', api_command_1.parseJsonArray)
.option('--premium-service <json>', 'premium service JSON array', api_command_1.parseJsonArray)
.option('--remark <remark>', 'remark')
.option('-f, --force', 'skip confirmation prompt')
.option('-o, --output <format>', 'output format (table|json)', api_command_1.validateOutputFormat, 'table')
.action((options) => withPartnerHandler(program, handler => handler.createTencentOrder(options)));
}
//# sourceMappingURL=partner.commands.js.map