feat: add components

This commit is contained in:
2025-04-04 17:19:07 +08:00
parent 6f494ec9ca
commit c37b9f0ab2
40 changed files with 2088 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
requireJAR('diffutils-1.3.0.jar');
var DiffUtils = Packages.difflib.DiffUtils;
var DeleteDelta = Packages.difflib.DeleteDelta;
var ChangeDelta = Packages.difflib.ChangeDelta;
var InsertDelta = Packages.difflib.InsertDelta;
exports.diff2List = (left, right) => {
var patch = DiffUtils.diff(left, right);
var result = [];
$EACH(patch.getDeltas(), (delta) => {
if (delta instanceof DeleteDelta) {
result.push("@@deleted @" + delta.getOriginal().getPosition()
+ " #" + delta.getOriginal().getLines().size());
$EACH(delta.getOriginal().getLines(), (line) => {
result.push("-- " + line);
})
}
if (delta instanceof ChangeDelta) {
result.push("@@modified @" + delta.getOriginal().getPosition()
+ " #" + delta.getOriginal().getLines().size() + '-' + delta.getRevised().getLines().size());
$EACH(delta.getOriginal().getLines(), (line) => {
result.push("-- " + line);
});
$EACH(delta.getRevised().getLines(), (line) => {
result.push("++ " + line);
});
}
if (delta instanceof InsertDelta) {
result.push("@@inserted @" + delta.getOriginal().getPosition()
+ " #" + delta.getRevised().getLines().size());
$EACH(delta.getRevised().getLines(), (line) => {
result.push("++ " + line);
});
}
});
return result;
};