in packages/selector/src/text/describe-text-quote.ts [273:297]
function readUntilWhitespace(
seeker: RelativeSeeker,
limit = Infinity,
reverse = false,
): string {
let result = '';
while (result.length < limit) {
let nextCharacter: string;
try {
nextCharacter = seeker.read(reverse ? -1 : 1);
} catch (err) {
if (!(err instanceof RangeError)) throw err;
break; // End/start of text reached.
}
// Stop if we reached whitespace.
if (isWhitespace(nextCharacter)) {
seeker.seekBy(reverse ? 1 : -1); // ‘undo’ the last read.
break;
}
result = reverse ? nextCharacter + result : result + nextCharacter;
}
return result;
}