chore: migrate to oxlint and oxfmt
Co-authored-by: Christoph Nakazawa <christoph.pojer@gmail.com>
This commit is contained in:
@@ -16,10 +16,7 @@ export async function applyUpdateHunk(
|
||||
});
|
||||
|
||||
const originalLines = originalContents.split("\n");
|
||||
if (
|
||||
originalLines.length > 0 &&
|
||||
originalLines[originalLines.length - 1] === ""
|
||||
) {
|
||||
if (originalLines.length > 0 && originalLines[originalLines.length - 1] === "") {
|
||||
originalLines.pop();
|
||||
}
|
||||
|
||||
@@ -41,24 +38,16 @@ function computeReplacements(
|
||||
|
||||
for (const chunk of chunks) {
|
||||
if (chunk.changeContext) {
|
||||
const ctxIndex = seekSequence(
|
||||
originalLines,
|
||||
[chunk.changeContext],
|
||||
lineIndex,
|
||||
false,
|
||||
);
|
||||
const ctxIndex = seekSequence(originalLines, [chunk.changeContext], lineIndex, false);
|
||||
if (ctxIndex === null) {
|
||||
throw new Error(
|
||||
`Failed to find context '${chunk.changeContext}' in ${filePath}`,
|
||||
);
|
||||
throw new Error(`Failed to find context '${chunk.changeContext}' in ${filePath}`);
|
||||
}
|
||||
lineIndex = ctxIndex + 1;
|
||||
}
|
||||
|
||||
if (chunk.oldLines.length === 0) {
|
||||
const insertionIndex =
|
||||
originalLines.length > 0 &&
|
||||
originalLines[originalLines.length - 1] === ""
|
||||
originalLines.length > 0 && originalLines[originalLines.length - 1] === ""
|
||||
? originalLines.length - 1
|
||||
: originalLines.length;
|
||||
replacements.push([insertionIndex, 0, chunk.newLines]);
|
||||
@@ -67,24 +56,14 @@ function computeReplacements(
|
||||
|
||||
let pattern = chunk.oldLines;
|
||||
let newSlice = chunk.newLines;
|
||||
let found = seekSequence(
|
||||
originalLines,
|
||||
pattern,
|
||||
lineIndex,
|
||||
chunk.isEndOfFile,
|
||||
);
|
||||
let found = seekSequence(originalLines, pattern, lineIndex, chunk.isEndOfFile);
|
||||
|
||||
if (found === null && pattern[pattern.length - 1] === "") {
|
||||
pattern = pattern.slice(0, -1);
|
||||
if (newSlice.length > 0 && newSlice[newSlice.length - 1] === "") {
|
||||
newSlice = newSlice.slice(0, -1);
|
||||
}
|
||||
found = seekSequence(
|
||||
originalLines,
|
||||
pattern,
|
||||
lineIndex,
|
||||
chunk.isEndOfFile,
|
||||
);
|
||||
found = seekSequence(originalLines, pattern, lineIndex, chunk.isEndOfFile);
|
||||
}
|
||||
|
||||
if (found === null) {
|
||||
@@ -142,11 +121,7 @@ function seekSequence(
|
||||
if (linesMatch(lines, pattern, i, (value) => value.trim())) return i;
|
||||
}
|
||||
for (let i = searchStart; i <= maxStart; i += 1) {
|
||||
if (
|
||||
linesMatch(lines, pattern, i, (value) =>
|
||||
normalizePunctuation(value.trim()),
|
||||
)
|
||||
) {
|
||||
if (linesMatch(lines, pattern, i, (value) => normalizePunctuation(value.trim()))) {
|
||||
return i;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user