mirror of
https://github.com/n8n-io/n8n.git
synced 2025-03-05 20:50:17 -08:00
🐛 Fix issue that it sets default values correctly for multipleValues
and makes previous change backward compatible
This commit is contained in:
parent
e18370cb10
commit
e21382baee
|
@ -177,7 +177,11 @@ export default mixins(genericHelpers)
|
||||||
} else if (optionParameter.typeOptions !== undefined && optionParameter.typeOptions.multipleValues === true) {
|
} else if (optionParameter.typeOptions !== undefined && optionParameter.typeOptions.multipleValues === true) {
|
||||||
// Multiple values are allowed so append option to array
|
// Multiple values are allowed so append option to array
|
||||||
newParameterValue[optionParameter.name] = get(this.nodeValues, `${this.path}.${optionParameter.name}`, []);
|
newParameterValue[optionParameter.name] = get(this.nodeValues, `${this.path}.${optionParameter.name}`, []);
|
||||||
(newParameterValue[optionParameter.name] as INodeParameters[]).push(JSON.parse(JSON.stringify(optionParameter.default)));
|
if (Array.isArray(optionParameter.default)) {
|
||||||
|
(newParameterValue[optionParameter.name] as INodeParameters[]).push(...JSON.parse(JSON.stringify(optionParameter.default)));
|
||||||
|
} else if (optionParameter.default !== '' && typeof optionParameter.default !== 'object') {
|
||||||
|
(newParameterValue[optionParameter.name] as INodeParameters[]).push(JSON.parse(JSON.stringify(optionParameter.default)));
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
// Add a new option
|
// Add a new option
|
||||||
newParameterValue[optionParameter.name] = JSON.parse(JSON.stringify(optionParameter.default));
|
newParameterValue[optionParameter.name] = JSON.parse(JSON.stringify(optionParameter.default));
|
||||||
|
|
|
@ -613,7 +613,13 @@ export function getNodeParameters(nodePropertiesArray: INodeProperties[], nodeVa
|
||||||
nodeParameters[nodeProperties.name] = nodeValues[nodeProperties.name];
|
nodeParameters[nodeProperties.name] = nodeValues[nodeProperties.name];
|
||||||
} else if (returnDefaults === true) {
|
} else if (returnDefaults === true) {
|
||||||
// Does not have values defined but defaults should be returned
|
// Does not have values defined but defaults should be returned
|
||||||
nodeParameters[nodeProperties.name] = JSON.parse(JSON.stringify(nodeProperties.default));
|
if (Array.isArray(nodeProperties.default)) {
|
||||||
|
nodeParameters[nodeProperties.name] = JSON.parse(JSON.stringify(nodeProperties.default));
|
||||||
|
} else {
|
||||||
|
// As it is probably wrong for many nodes, do we keep on returning an empty array if
|
||||||
|
// anything else than an array is set as default
|
||||||
|
nodeParameters[nodeProperties.name] = [];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
nodeParametersFull[nodeProperties.name] = nodeParameters[nodeProperties.name];
|
nodeParametersFull[nodeProperties.name] = nodeParameters[nodeProperties.name];
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in a new issue