Merge pull request #4561 from node-red/4560-fix-global-env-cred

Ensure global creds object is initialised when adding first cred
This commit is contained in:
Nick O'Leary 2024-02-07 14:52:17 +00:00 committed by GitHub
commit fc67a2efc2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -384,7 +384,8 @@ var api = module.exports = {
}
}
} else if (nodeType === "global-config") {
const existingCredentialKeys = Object.keys(savedCredentials?.map || [])
savedCredentials.map = savedCredentials.map || {}
const existingCredentialKeys = Object.keys(savedCredentials.map)
const newCredentialKeys = Object.keys(newCreds?.map || [])
existingCredentialKeys.forEach(key => {
if (!newCreds.map?.[key]) {
@ -396,7 +397,7 @@ var api = module.exports = {
})
newCredentialKeys.forEach(key => {
if (!/^has_/.test(key)) {
if (!savedCredentials.map?.[key] || newCreds.map[key] !== '__PWRD__') {
if (!savedCredentials.map[key] || newCreds.map[key] !== '__PWRD__') {
// This key either doesn't exist in current saved, or the
// value has been changed
savedCredentials.map[key] = newCreds.map[key]