(diff, maxDiffLength, fullGitMojiSpec, context)
| 85606 | currentDiff += "\n" + line; |
| 85607 | } |
| 85608 | } |
| 85609 | if (currentDiff) { |
| 85610 | splitDiffs.push(currentDiff); |
| 85611 | } |
| 85612 | return splitDiffs; |
| 85613 | } |
| 85614 | var getCommitMsgsPromisesFromFileDiffs = async (diff, maxDiffLength, fullGitMojiSpec, context) => { |
| 85615 | const separator = "diff --git "; |
| 85616 | const diffByFiles = diff.split(separator).slice(1); |
| 85617 | const mergedFilesDiffs = mergeDiffs(diffByFiles, maxDiffLength); |
| 85618 | const commitMessagePromises = []; |
| 85619 | for (const fileDiff of mergedFilesDiffs) { |
| 85620 | if (tokenCount(fileDiff) >= maxDiffLength) { |
| 85621 | const messagesPromises = getMessagesPromisesByChangesInFile( |
| 85622 | fileDiff, |
| 85623 | separator, |
| 85624 | maxDiffLength, |
| 85625 | fullGitMojiSpec, |
| 85626 | context |
| 85627 | ); |
| 85628 | commitMessagePromises.push(...messagesPromises); |
| 85629 | } else { |
| 85630 | const messages = await generateCommitMessageChatCompletionPrompt( |
| 85631 | separator + fileDiff, |
| 85632 | fullGitMojiSpec, |
| 85633 | context |
| 85634 | ); |
| 85635 | const engine = getEngine(); |
| 85636 | commitMessagePromises.push(engine.generateCommitMessage(messages)); |
| 85637 | } |
no test coverage detected
searching dependent graphs…