mirror of
https://github.com/usebruno/bruno.git
synced 2026-06-25 21:55:49 +00:00
55 lines
1.1 KiB
JavaScript
55 lines
1.1 KiB
JavaScript
const _ = require('lodash');
|
|
const { getValueString, indentString } = require('./utils');
|
|
|
|
const envToJson = (json) => {
|
|
const variables = _.get(json, 'variables', []);
|
|
const color = _.get(json, 'color', null);
|
|
|
|
const vars = variables
|
|
.filter((variable) => !variable.secret)
|
|
.map((variable) => {
|
|
const { name, value, enabled } = variable;
|
|
const prefix = enabled ? '' : '~';
|
|
|
|
return indentString(`${prefix}${name}: ${getValueString(value)}`);
|
|
});
|
|
|
|
const secretVars = variables
|
|
.filter((variable) => variable.secret)
|
|
.map((variable) => {
|
|
const { name, enabled } = variable;
|
|
const prefix = enabled ? '' : '~';
|
|
return indentString(`${prefix}${name}`);
|
|
});
|
|
|
|
let output = '';
|
|
|
|
if (!variables || !variables.length) {
|
|
output += `vars {
|
|
}
|
|
`;
|
|
}
|
|
|
|
if (vars.length) {
|
|
output += `vars {
|
|
${vars.join('\n')}
|
|
}
|
|
`;
|
|
}
|
|
|
|
if (secretVars.length) {
|
|
output += `vars:secret [
|
|
${secretVars.join(',\n')}
|
|
]
|
|
`;
|
|
}
|
|
if (color) {
|
|
output += `color: ${color}
|
|
`;
|
|
}
|
|
|
|
return output;
|
|
};
|
|
|
|
module.exports = envToJson;
|