UNPKG

@withkeystone/cli

Version:

Keystone CLI - Test automation for modern web apps

54 lines 2.34 kB
#!/usr/bin/env node "use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const commander_1 = require("commander"); const server_js_1 = require("./server.js"); const chalk_1 = __importDefault(require("chalk")); const fs_1 = require("fs"); const path_1 = require("path"); // Import auth commands const init_js_1 = require("./commands/init.js"); const logout_js_1 = require("./commands/logout.js"); const auth_status_js_1 = require("./commands/auth-status.js"); // Get package version const packageJson = JSON.parse((0, fs_1.readFileSync)((0, path_1.join)(__dirname, '..', 'package.json'), 'utf-8')); const version = packageJson.version; const program = new commander_1.Command(); program .name('keystone') .description('Keystone CLI - Test automation for modern web apps') .version(version); // Add authentication commands program.addCommand(init_js_1.initCommand); program.addCommand(logout_js_1.logoutCommand); program.addCommand(auth_status_js_1.authStatusCommand); // Runner command (previously 'start') program .command('start') .description('Start local runner server') .option('-p, --port <port>', 'WebSocket port', '9223') .option('--headless', 'Run browser in headless mode') .option('--debug', 'Enable debug logging') .option('--proxy', 'Enable proxy mode for cloud Studio access') .option('--backend-url <url>', 'Backend URL (default: https://api.withkeystone.com)') .action(async (options) => { const displayMode = options.proxy ? 'Proxy Mode' : 'Local Mode'; console.log(chalk_1.default.blue(` ╔═══════════════════════════════════════╗ ║ Keystone CLI v${version} ║ ║ ${displayMode.padEnd(26)} ║ ╚═══════════════════════════════════════╝ `)); await (0, server_js_1.startServer)({ port: parseInt(options.port), headless: options.headless, debug: options.debug, proxy: options.proxy, backendUrl: options.backendUrl }); }); program.parse(); //# sourceMappingURL=index.js.map