Process user credentials for banner ID

by Jake

JavaScript

let bannerId;
let person = message?.payload?.Person;

// If Ethos failed to return a person, exit safely instead of crashing
if (!person) {
	return { header: {}, payload: { error: "User lookup failed or Ethos is unavailable" } };
}
// grab the person object
person = Array.isArray(person) ? person[0] : person;

if (person && person.credentials && Array.isArray(person.credentials)) {
	bannerId = person.credentials.find( el => el.type === 'bannerId' )?.value;
}

if (context.overrideBannerId) {
	context.set("adminBannerId", bannerId);
	context.set("bannerId", context.overrideBannerId);
} else {
	context.set("bannerId", bannerId);
}

//we don't need to push the person data any further
return {
	header:{},
	payload:{}
};