growthbook
Version:
The GrowthBook command-line interface (CLI) for working with the GrowthBook A/B testing, feature flagging, and experimentation platform
43 lines (42 loc) • 1.7 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const core_1 = require("@oclif/core");
const cli_1 = require("../../utils/cli");
const constants_1 = require("../../utils/constants");
const config_1 = require("../../utils/config");
const visual_changesets_repository_1 = require("../../repositories/visual-changesets.repository");
class VcsGet extends core_1.Command {
async run() {
const { args: { id, }, flags: { profile, apiBaseUrl, includeExperiment, }, } = await this.parse(VcsGet);
const profileUsed = profile || constants_1.DEFAULT_GROWTHBOOK_PROFILE;
const { apiKey, apiBaseUrl: configApiBaseUrl } = (0, config_1.getGrowthBookProfileConfigAndThrowForCommand)(profileUsed, this);
const baseUrlUsed = apiBaseUrl || configApiBaseUrl || constants_1.DEFAULT_GROWTHBOOK_BASE_URL;
const repo = new visual_changesets_repository_1.VisualChangesetsRepository({
apiKey,
apiBaseUrl: baseUrlUsed,
});
const visualChangeset = await repo.getVisualChangeset(id, includeExperiment);
this.logJson(visualChangeset);
}
}
exports.default = VcsGet;
VcsGet.description = 'Get a Visual Changeset created in the visual editor';
VcsGet.examples = [
'<%= config.bin %> <%= command.id %>',
];
VcsGet.flags = {
...cli_1.baseGrowthBookCliFlags,
includeExperiment: core_1.Flags.integer({
char: 'e',
description: 'Include the associated experiment in payload',
options: ['0', '1'],
default: 0,
required: false,
}),
};
VcsGet.args = {
id: core_1.Args.string({
description: 'Visual Changeset ID',
required: true,
}),
};