Realm InsertOne Promise Rejection with no error argument

I’m writing an incoming webhook for an HTTP Post in Realm. The code inserts a new player object using insertOne. According to the documentation, this returns a Promise. I follow the function call with a .then(results) and a .catch(err). I have a unique index on firstName & lastName so if the same player name is entered twice, it should be rejected. Everything works except the err object in .catch() has no value so I can get no error message. If I change the code to not use the Promise functions (then and catch) and simply examine the return value, it contains error information when duplicates are entered but the message says “uncaught Promise rejection”. So, when I catch promise rejection, I get no data. If I don’t catch the promise rejection, I get data but it complains I didn’t catch the promise rejection.

let p = players.insertOne(newPlayer)
				.then((resolve) => {
					return resolve;
				}).catch((err) => {
					return err;
				});

If I insert a non-duplicate, everything works as expected. If I insert a duplicate, it does not get inserted and it jumps to the .catch block however err is a null object.

Any suggestions on how to catch a runtime error with some information about the error?