Ensure global creds object is initialised when adding first cred

This commit is contained in:
Nick O'Leary
2024-02-07 10:02:22 +00:00
parent 1f412f3d78
commit 109fa5f04e

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]