mirror of
https://github.com/kotaindah55/extended-markdown-syntax.git
synced 2026-07-22 05:38:06 +00:00
14 lines
No EOL
596 B
TypeScript
14 lines
No EOL
596 B
TypeScript
import { Line, Text } from "@codemirror/state";
|
|
import { isBlankLine } from "src/editor-mode/doc-utils";
|
|
|
|
export function getBlockStartAt(doc: Text, offsetOrLine: number | Line) {
|
|
let curLine = offsetOrLine instanceof Line ? offsetOrLine : doc.lineAt(offsetOrLine),
|
|
prevLine = curLine.number > 1 ? doc.line(curLine.number - 1) : null;
|
|
if (isBlankLine(curLine)) { return curLine }
|
|
while (prevLine) {
|
|
if (isBlankLine(prevLine)) { break }
|
|
curLine = prevLine;
|
|
prevLine = curLine.number > 1 ? doc.line(curLine.number - 1) : null;
|
|
}
|
|
return curLine;
|
|
} |