UNPKG

@pierre/diffs

Version:

34 lines (32 loc) 907 B
import "diff"; //#region src/utils/parseDiffDecorations.ts function createDiffSpanDecoration({ line, spanStart, spanLength }) { return { start: { line, character: spanStart }, end: { line, character: spanStart + spanLength }, properties: { "data-diff-span": "" }, alwaysWrap: true }; } function pushOrJoinSpan({ item, arr, enableJoin, isNeutral = false, isLastItem = false }) { const lastItem = arr[arr.length - 1]; if (lastItem == null || isLastItem || !enableJoin) { arr.push([isNeutral ? 0 : 1, item.value]); return; } const isLastItemNeutral = lastItem[0] === 0; if (isNeutral === isLastItemNeutral || isNeutral && item.value.length === 1 && !isLastItemNeutral) { lastItem[1] += item.value; return; } arr.push([isNeutral ? 0 : 1, item.value]); } //#endregion export { createDiffSpanDecoration, pushOrJoinSpan }; //# sourceMappingURL=parseDiffDecorations.js.map