diff --git a/angular/src/pipes/ellipsis.pipe.ts b/angular/src/pipes/ellipsis.pipe.ts new file mode 100644 index 0000000000..081dba11ab --- /dev/null +++ b/angular/src/pipes/ellipsis.pipe.ts @@ -0,0 +1,17 @@ +import { Pipe, PipeTransform } from "@angular/core"; + +@Pipe({ + name: "ellipsis", +}) +export class EllipsisPipe implements PipeTransform { + transform(value: string, limit = 25, completeWords = false, ellipsis = "...") { + if (value.length <= limit) { + return value; + } + limit -= ellipsis.length; + if (completeWords && value.length > limit && value.indexOf(" ") > 0) { + limit = value.substring(0, limit).lastIndexOf(" "); + } + return value.substring(0, limit) + ellipsis; + } +}