irclib/src/utility/truncate.ts

18 lines
492 B
TypeScript

// Chop message into pieces recursively, splitting them at lenoffset
export function truncate(msg: string, lenoffset: number): string[] {
let pieces: string[] = [];
if (msg.length <= lenoffset) {
pieces.push(msg);
} else {
const m1 = msg.substring(0, lenoffset);
const m2 = msg.substring(lenoffset);
pieces.push(m1);
if (m2.length > lenoffset) {
pieces = pieces.concat(truncate(m2, lenoffset));
} else {
pieces.push(m2);
}
}
return pieces;
}