@kadena/kadena-cli
Version:
Kadena CLI tool to interact with the Kadena blockchain (manage keys, transactions, etc.)
66 lines • 3.48 kB
JavaScript
import { defaultDevnetsPath, devnetDefaults, } from '../../../constants/devnets.js';
import { getExistingDevnets } from '../../../utils/helpers.js';
import yaml from 'js-yaml';
import path from 'path';
import { services } from '../../../services/index.js';
import { log } from '../../../utils/logger.js';
/**
* Displays the devnet configuration in a formatted manner.
*
* @param {IDevnetsCreateOptions} devnetConfig - The devnet configuration to display.
*/
export function displayDevnetConfig(devnetConfig) {
var _a, _b;
const formatLength = 80; // Maximum width for the display
const displaySeparator = () => {
log.info(log.color.green('-'.padEnd(formatLength, '-')));
};
const formatConfig = (key, value) => {
const valueDisplay = value !== undefined && value.trim() !== ''
? log.color.green(value)
: log.color.red('Not Set');
const keyValue = `${key}: ${valueDisplay}`;
const remainingWidth = formatLength - keyValue.length > 0 ? formatLength - keyValue.length : 0;
return ` ${keyValue}${' '.repeat(remainingWidth)} `;
};
displaySeparator();
log.info(formatConfig('Name', devnetConfig.name));
log.info(formatConfig('Port', (_a = devnetConfig.port) === null || _a === void 0 ? void 0 : _a.toString()));
log.info(formatConfig('Volume', devnetConfig.useVolume ? `kadena_${devnetConfig.name}` : 'N/A'));
log.info(formatConfig('Pact folder mount', (_b = devnetConfig.mountPactFolder) !== null && _b !== void 0 ? _b : 'N/A'));
log.info(formatConfig('kadena/devnet version', devnetConfig.version));
displaySeparator();
}
export async function displayDevnetsConfig() {
var _a, _b;
const formatLength = 80; // Maximum width for the display
const displaySeparator = () => {
log.info(log.color.green('-'.padEnd(formatLength, '-')));
};
const formatConfig = (key, value, isDefault) => {
var _a;
const valueDisplay = ((_a = value === null || value === void 0 ? void 0 : value.trim()) !== null && _a !== void 0 ? _a : '') !== ''
? log.color.green(value)
: log.color.red('Not Set');
const defaultIndicator = isDefault === true ? log.color.yellow(' (Using defaults)') : '';
const keyValue = `${key}: ${valueDisplay}${defaultIndicator}`;
const remainingWidth = formatLength - keyValue.length > 0 ? formatLength - keyValue.length : 0;
return ` ${keyValue}${' '.repeat(remainingWidth)} `;
};
const existingDevnets = await getExistingDevnets();
for (const { value } of existingDevnets) {
const devnetFilePath = path.join(defaultDevnetsPath, `${value}.yaml`);
const fileContent = await services.filesystem.readFile(devnetFilePath);
const devnetConfig = fileContent !== null
? yaml.load(fileContent)
: devnetDefaults[value];
displaySeparator();
log.info(formatConfig('Name', devnetConfig.name));
log.info(formatConfig('Port', (_a = devnetConfig.port) === null || _a === void 0 ? void 0 : _a.toString()));
log.info(formatConfig('Volume', devnetConfig.useVolume ? `kadena_${devnetConfig.name}` : 'N/A'));
log.info(formatConfig('Pact folder mount', (_b = devnetConfig.mountPactFolder) !== null && _b !== void 0 ? _b : 'N/A'));
log.info(formatConfig('kadena/devnet version', devnetConfig.version));
}
displaySeparator();
}
//# sourceMappingURL=devnetDisplay.js.map