Skip to content

Commit 51ec075

Browse files
committed
Condensed isUserMsgAncestor() in chatgpt.getChatData()
1 parent 935d145 commit 51ec075

File tree

1 file changed

+12
-19
lines changed

1 file changed

+12
-19
lines changed

chatgpt.js

Lines changed: 12 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -934,30 +934,12 @@ const chatgpt = {
934934
return reject(`🤖 chatgpt.js >> Message/response with index ${ msgToGet +1 }`
935935
+ ` is out of bounds. Only ${userMessages.length} messages/responses exist!`)
936936

937-
const isUserMessageAncestor = (messageId, targetUserId) => {
938-
let currentId = messageId;
939-
const maxDepth = 10; // Protection against infinite loops
940-
let depth = 0;
941-
while (currentId && depth < maxDepth) {
942-
const currentMessage = data[currentId];
943-
if (!currentMessage?.message) {
944-
return false;
945-
}
946-
if (currentMessage.id === targetUserId) {
947-
return true;
948-
}
949-
currentId = currentMessage.parent;
950-
depth++;
951-
}
952-
return false;
953-
};
954-
955937
// Fill [chatGPTMessages]
956938
for (const userMessage of userMessages) {
957939
let sub = []
958940
for (const key in data) {
959941
if (data[key].message != null && data[key].message.author.role == 'assistant'
960-
&& isUserMessageAncestor(key, userMessage.id)) {
942+
&& isUserMsgAncestor(key, userMessage.id)) {
961943
sub.push(data[key].message)
962944
}
963945
}
@@ -992,6 +974,17 @@ const chatgpt = {
992974
return resolve(msgToGet == 'all' ? msgsToReturn // if 'all' passed, return array
993975
: msgToGet == 'latest' ? msgsToReturn[msgsToReturn.length - 1] // else if 'latest' passed, return latest
994976
: msgsToReturn[msgToGet] ) // else return element of array
977+
978+
function isUserMsgAncestor(messageId, targetUserId) {
979+
let currentId = messageId ; const maxDepth = 10 ; let depth = 0
980+
while (currentId && depth < maxDepth) {
981+
const currentMsg = data[currentId]
982+
if (!currentMsg?.message) return false
983+
if (currentMsg.id == targetUserId) return true
984+
currentId = currentMsg.parent ; depth++
985+
}
986+
return false
987+
}
995988
}
996989
xhr.send()
997990
})})}

0 commit comments

Comments
 (0)