mirror of
https://github.com/usebruno/bruno.git
synced 2025-06-22 13:01:44 +02:00
feat: integrate new env model of bru lang
This commit is contained in:
parent
33f8900705
commit
963b0c257f
@ -6,8 +6,6 @@ const { hasJsonExtension, hasBruExtension, writeFile } = require('../utils/files
|
|||||||
const {
|
const {
|
||||||
bruToEnvJson,
|
bruToEnvJson,
|
||||||
envJsonToBru,
|
envJsonToBru,
|
||||||
} = require('@usebruno/lang');
|
|
||||||
const {
|
|
||||||
bruToJson,
|
bruToJson,
|
||||||
jsonToBru
|
jsonToBru
|
||||||
} = require('../bru');
|
} = require('../bru');
|
||||||
|
@ -1,9 +1,41 @@
|
|||||||
const _ = require('lodash');
|
const _ = require('lodash');
|
||||||
const {
|
const {
|
||||||
|
bruToEnvJson: bruToEnvJsonV1,
|
||||||
|
envJsonToBru: envJsonToBruV1,
|
||||||
bruToJson: bruToJsonV1,
|
bruToJson: bruToJsonV1,
|
||||||
|
|
||||||
bruToJsonV2,
|
bruToJsonV2,
|
||||||
jsonToBruV2
|
jsonToBruV2,
|
||||||
|
bruToEnvJsonV2,
|
||||||
|
envJsonToBruV2
|
||||||
} = require('@usebruno/lang');
|
} = require('@usebruno/lang');
|
||||||
|
const { each } = require('lodash');
|
||||||
|
|
||||||
|
const bruToEnvJson = (bru) => {
|
||||||
|
try {
|
||||||
|
const json = bruToEnvJsonV2(bru);
|
||||||
|
|
||||||
|
// the app env format requires each variable to have a type
|
||||||
|
// this need to be evaulated and safely removed
|
||||||
|
// i don't see it being used in schema validation
|
||||||
|
if(json && json.variables && json.variables.length) {
|
||||||
|
each(json.variables, (v) => v.type = "text");
|
||||||
|
}
|
||||||
|
|
||||||
|
return json;
|
||||||
|
} catch (error) {
|
||||||
|
return Promise.reject(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const envJsonToBru = (json) => {
|
||||||
|
try {
|
||||||
|
const bru = envJsonToBruV2(json);
|
||||||
|
return bru;
|
||||||
|
} catch (error) {
|
||||||
|
return Promise.reject(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The transformer function for converting a BRU file to JSON.
|
* The transformer function for converting a BRU file to JSON.
|
||||||
@ -48,7 +80,7 @@ const bruToJson = (bru) => {
|
|||||||
|
|
||||||
return transformedJson;
|
return transformedJson;
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
return bruToJsonV1(bru);
|
return Promise.reject(e);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
/**
|
/**
|
||||||
@ -93,5 +125,7 @@ const jsonToBru = (json) => {
|
|||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
bruToJson,
|
bruToJson,
|
||||||
jsonToBru
|
jsonToBru,
|
||||||
|
bruToEnvJson,
|
||||||
|
envJsonToBru,
|
||||||
};
|
};
|
||||||
|
@ -4,8 +4,6 @@ const path = require('path');
|
|||||||
const { ipcMain } = require('electron');
|
const { ipcMain } = require('electron');
|
||||||
const {
|
const {
|
||||||
envJsonToBru,
|
envJsonToBru,
|
||||||
} = require('@usebruno/lang');
|
|
||||||
const {
|
|
||||||
bruToJson,
|
bruToJson,
|
||||||
jsonToBru
|
jsonToBru
|
||||||
} = require('../bru');
|
} = require('../bru');
|
||||||
|
@ -7,6 +7,8 @@ const {
|
|||||||
|
|
||||||
const bruToJsonV2 = require('../v2/src/bruToJson');
|
const bruToJsonV2 = require('../v2/src/bruToJson');
|
||||||
const jsonToBruV2 = require('../v2/src/jsonToBru');
|
const jsonToBruV2 = require('../v2/src/jsonToBru');
|
||||||
|
const bruToEnvJsonV2 = require('../v2/src/envToJson');
|
||||||
|
const envJsonToBruV2 = require('../v2/src/jsonToEnv');
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
bruToJson,
|
bruToJson,
|
||||||
@ -15,5 +17,7 @@ module.exports = {
|
|||||||
envJsonToBru,
|
envJsonToBru,
|
||||||
|
|
||||||
bruToJsonV2,
|
bruToJsonV2,
|
||||||
jsonToBruV2
|
jsonToBruV2,
|
||||||
|
bruToEnvJsonV2,
|
||||||
|
envJsonToBruV2
|
||||||
};
|
};
|
@ -51,7 +51,9 @@ const concatArrays = (objValue, srcValue) => {
|
|||||||
const sem = grammar.createSemantics().addAttribute('ast', {
|
const sem = grammar.createSemantics().addAttribute('ast', {
|
||||||
BruEnvFile(tags) {
|
BruEnvFile(tags) {
|
||||||
if(!tags || !tags.ast || !tags.ast.length) {
|
if(!tags || !tags.ast || !tags.ast.length) {
|
||||||
return {};
|
return {
|
||||||
|
variables: []
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
return _.reduce(tags.ast, (result, item) => {
|
return _.reduce(tags.ast, (result, item) => {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user