Newer
Older
import { Pipe } from '@angular/core';
import { LatinisePipe } from 'ngx-pipes';
import { FunctionsService } from '@service/functions.service';
@Pipe({ name: 'highlight' })
export class HighlightPipe {
constructor(
private latinisePipe: LatinisePipe,
public functions: FunctionsService
) { }
transform(text: string, args: string = '') {
let formatedText = '';
if (typeof text === 'string' && typeof args === 'string') {
const index = this.latinisePipe.transform(text.toLowerCase()).indexOf(this.latinisePipe.transform(args.toLowerCase()));
if (index >= 0) {
formatedText = text.substring(0, index) + '<span class=\'highlightResult\'>' + text.substring(index, index + args.length) + '</span>' + text.substring(index + args.length);
}
return !this.functions.empty(formatedText) ? formatedText : text;