@chasemoskal/magical
Version:
web toolkit for lit apps
17 lines • 488 B
JavaScript
export function updateCursor(part, cursor, newIndex) {
const linebreaks = (/\n/g.exec(part) ?? []).length;
const line = cursor.line + linebreaks;
let column = 0;
if (linebreaks > 0) {
const [, lastLine] = /\n(.*)$/.exec(part) ?? [];
column = 1 + lastLine.length;
}
else
column = cursor.column + (newIndex - cursor.index);
return {
line,
column,
index: newIndex,
};
}
//# sourceMappingURL=update-cursor.js.map