UNPKG

@lark-project/cli

Version:

飞书项目插件开发工具

83 lines (82 loc) 3.33 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.addEnvCommand = void 0; const settings_1 = require("../../utils/settings"); const logger_1 = require("../../utils/logger"); function printAllSettings() { var _a; const s = (0, settings_1.loadSettings)(); logger_1.logger.info(`tt-env: ${(_a = s.ttEnv) !== null && _a !== void 0 ? _a : '(unset)'}`); logger_1.logger.info(`local-schema: ${s.useLocalSchema ? 'on' : 'off'}`); } function addEnvCommand(program) { const root = program .command('debug-env', { hidden: true }) .description('Local debug settings (hidden). Run "lpm debug-env --help" for subcommands.') .action(() => { printAllSettings(); root.outputHelp(); }); // tt-env: persistent test environment header (x-tt-env) const ttEnv = root.command('tt-env').description('Persistent test environment header (x-tt-env)'); ttEnv .command('set <value>') .description('Set persistent test environment, e.g. "boe_xxx" or "ppe_xxx"') .action((value) => { (0, settings_1.saveSettings)({ ttEnv: value }); logger_1.logger.success(`Test environment set to: ${value}`); logger_1.logger.info('All subsequent commands will use this environment automatically.'); }); ttEnv .command('get') .description('Show current persistent test environment') .action(() => { const settings = (0, settings_1.loadSettings)(); if (settings.ttEnv) { console.log(settings.ttEnv); } else { logger_1.logger.info('No persistent test environment configured.'); } }); ttEnv .command('clear') .description('Clear persistent test environment (revert to production)') .action(() => { (0, settings_1.saveSettings)({ ttEnv: undefined }); logger_1.logger.success('Test environment cleared. Using production environment.'); }); // local-schema: bypass remote schema endpoint, use bundled schema/developer-plugin.yaml const localSchema = root .command('local-schema') .description('Bypass remote schema endpoint, use bundled schema/developer-plugin.yaml'); localSchema .command('on') .description('Enable local schema') .action(() => { (0, settings_1.saveSettings)({ useLocalSchema: true }); logger_1.logger.success('Local schema enabled. Subsequent commands skip the remote schema endpoint.'); }); localSchema .command('off') .description('Disable local schema (use remote)') .action(() => { (0, settings_1.saveSettings)({ useLocalSchema: undefined }); logger_1.logger.success('Local schema disabled. Remote schema endpoint will be used.'); }); localSchema .command('status') .description('Show current local-schema flag') .action(() => { const enabled = (0, settings_1.loadSettings)().useLocalSchema === true; console.log(enabled ? 'on' : 'off'); }); // list: print all debug settings root .command('list') .description('List all debug-env settings and current values') .action(() => { printAllSettings(); }); } exports.addEnvCommand = addEnvCommand;