@pepperi/core
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 10.0.5.
142 lines (114 loc) • 4.15 kB
text/typescript
import {Pipe, PipeTransform} from "@angular/core";
import { DomSanitizer, SafeHtml, SafeStyle, SafeScript, SafeUrl, SafeResourceUrl } from '@angular/platform-browser';
({ name: 'capitalize' })
export class CapitalizePipe implements PipeTransform {
transform(value: any) {
if (value) {
return value.charAt(0).toUpperCase() + value.slice(1);
}
return value;
}
}
({ name: 'encodePipe' })
export class EncodePipe implements PipeTransform {
transform(value: any) {
if (value) {
var v = btoa(value);
return v;
}
return value;
}
}
declare function escape(s: string): string;
({ name: 'escapePipe' })
export class EscapePipe implements PipeTransform {
transform(value: any) {
if (value) {
var v = escape(value);
return v;
}
return value;
}
}
({ name: 'replaceLineBreaks' })
export class ReplaceLineBreaks implements PipeTransform {
transform(value: string): string {
let newValue = value.replace(/(<br\ ?\/?>)/g, ' ');
return newValue;
}
}
// @Pipe({ name: 'quantitySelectorNumber' })
// export class QuantitySelectorNumber implements PipeTransform {
// transform(value: string, allowDecimal: boolean): string {
// let tmpValue = parseFloat(value);
// if (tmpValue == 0) {
// return "0";
// }
// else if (allowDecimal) {
// return tmpValue.toString();
// }
// else {
// return parseInt(value).toString();
// }
// }
// }
({ name: 'dateFormatter' })
export class DateFormatter implements PipeTransform {
transform(value: Date, culture: any, showTime: boolean = false): string {
var res = "";
value = new Date(value);
if (value) {
res = value.toLocaleDateString(culture || 'en-US');
if (showTime) {
res += " " + value.toLocaleTimeString((culture || 'en-US'), { hour: '2-digit', minute: '2-digit' });
}
}
return res;
}
}
({ name: 'dateStringFormatter' })
export class DateStringFormatter implements PipeTransform {
transform(value: string, culture: any, showTime: boolean = false): string {
var res = "";
let tmpDate = new Date(value);
if (value) {
res = tmpDate.toLocaleDateString(culture || 'en-US');
if (showTime) {
res += " " + tmpDate.toLocaleTimeString(culture || 'en-US');
}
}
return res;
}
}
({ name: 'safeHtml' })
export class safeHtml implements PipeTransform {
constructor(private sanitizer: DomSanitizer) { }
transform(style) {
return this.sanitizer.bypassSecurityTrustHtml(style);
//return this.sanitizer.bypassSecurityTrustStyle(style);
// return this.sanitizer.bypassSecurityTrustXxx(style); - see docs
}
}
({
name: 'safe'
})
export class SafePipe implements PipeTransform {
constructor(protected sanitizer: DomSanitizer) { }
public transform(value: any, type: string): SafeHtml | SafeStyle | SafeScript | SafeUrl | SafeResourceUrl {
switch (type) {
case 'html': return this.sanitizer.bypassSecurityTrustHtml(value);
case 'style': return this.sanitizer.bypassSecurityTrustStyle(value);
case 'script': return this.sanitizer.bypassSecurityTrustScript(value);
case 'url': return this.sanitizer.bypassSecurityTrustUrl(value);
case 'resourceUrl': return this.sanitizer.bypassSecurityTrustResourceUrl(value);
default: throw new Error(`Invalid safe type specified: ${type}`);
}
}
}
({ name: 'splitUppercase' })
export class SplitUppercase implements PipeTransform {
transform(value: string): string {
let newValue = value.replace(/([a-z])([A-Z])/g, "$1 $2");
return newValue;
}
}