preLoad Methods for deployment

This commit is contained in:
HaveAGitGat 2021-12-12 10:53:11 +00:00
parent 210b155041
commit f7eb5db9df

View file

@ -0,0 +1,36 @@
/* eslint no-param-reassign: 0 */ // --> OFF
const loadDefaultValues = (inputs, details) => {
if (!inputs) {
inputs = {};
}
const defaultInputs = details().Inputs;
for (let i = 0; i < defaultInputs.length; i += 1) {
if (typeof inputs[defaultInputs[i].name] === 'string') {
inputs[defaultInputs[i].name] = typeof inputs[defaultInputs[i].name].trim();
}
if (inputs[defaultInputs[i].name] === undefined
|| inputs[defaultInputs[i].name] === ''
) {
inputs[defaultInputs[i].name] = defaultInputs[i].defaultValue;
}
// convert string to bolean esle false
if (defaultInputs[i].type === 'boolean') {
inputs[defaultInputs[i].name] = inputs[defaultInputs[i].name] === 'true';
}
// convert string to number else 0
if (defaultInputs[i].type === 'number') {
inputs[defaultInputs[i].name] = Number(inputs[defaultInputs[i].name]);
// eslint-disable-next-line no-restricted-globals
if (!isNaN(inputs[defaultInputs[i].name])) {
inputs[defaultInputs[i].name] = 0;
}
}
}
return inputs;
};
module.exports = loadDefaultValues;