@universis/common
Version:
Universis - common directives and services
42 lines • 4.55 kB
JavaScript
import { Pipe } from '@angular/core';
import { TranslateService } from '@ngx-translate/core';
import { DatePipe } from '@angular/common';
import * as i0 from "@angular/core";
import * as i1 from "@ngx-translate/core";
/**
*
* Custom DatePipe representation
* @export
* @class LocalizedDatePipe
* @implements {PipeTransform}
*/
export class LocalizedDatePipe {
constructor(translateService) {
this.translateService = translateService;
}
/**
*
* Converts Date value that been passed
* @param {*} value The Date that needs to be converted
* @param {string} [pattern='mediumDate'] Pattern of Date
* @returns {*} Converted Date
* @memberof LocalizedDatePipe
*/
transform(value, pattern = 'mediumDate') {
const datePipe = new DatePipe(this.translateService.currentLang);
if (typeof value === 'string' && /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\+\d{2}$/.test(value)) {
return datePipe.transform(new Date(value + ':00'), pattern);
}
return datePipe.transform(value, pattern);
}
}
LocalizedDatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LocalizedDatePipe, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Pipe });
LocalizedDatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: LocalizedDatePipe, name: "localizedDate", pure: false });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LocalizedDatePipe, decorators: [{
type: Pipe,
args: [{
name: 'localizedDate',
pure: false
}]
}], ctorParameters: function () { return [{ type: i1.TranslateService }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemVkLWRhdGUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zaGFyZWQvcGlwZXMvbG9jYWxpemVkLWRhdGUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsSUFBSSxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7OztBQUV6Qzs7Ozs7O0dBTUc7QUFLSCxNQUFNLE9BQU8saUJBQWlCO0lBRTFCLFlBQW9CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBQ3RELENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0gsU0FBUyxDQUFDLEtBQVUsRUFBRSxVQUFrQixZQUFZO1FBQ2hELE1BQU0sUUFBUSxHQUFhLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMzRSxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSw4Q0FBOEMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDekYsT0FBTyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQztTQUMvRDtRQUNELE9BQU8sUUFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDOUMsQ0FBQzs7K0dBbkJRLGlCQUFpQjs2R0FBakIsaUJBQWlCOzRGQUFqQixpQkFBaUI7a0JBSjdCLElBQUk7bUJBQUM7b0JBQ0YsSUFBSSxFQUFFLGVBQWU7b0JBQ3JCLElBQUksRUFBRSxLQUFLO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge0RhdGVQaXBlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG4vKipcbiAqXG4gKiBDdXN0b20gRGF0ZVBpcGUgcmVwcmVzZW50YXRpb25cbiAqIEBleHBvcnRcbiAqIEBjbGFzcyBMb2NhbGl6ZWREYXRlUGlwZVxuICogQGltcGxlbWVudHMge1BpcGVUcmFuc2Zvcm19XG4gKi9cbkBQaXBlKHtcbiAgICBuYW1lOiAnbG9jYWxpemVkRGF0ZScsXG4gICAgcHVyZTogZmFsc2Vcbn0pXG5leHBvcnQgY2xhc3MgTG9jYWxpemVkRGF0ZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSkge1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqXG4gICAgICogQ29udmVydHMgRGF0ZSB2YWx1ZSB0aGF0IGJlZW4gcGFzc2VkXG4gICAgICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgRGF0ZSB0aGF0IG5lZWRzIHRvIGJlIGNvbnZlcnRlZFxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBbcGF0dGVybj0nbWVkaXVtRGF0ZSddIFBhdHRlcm4gb2YgRGF0ZVxuICAgICAqIEByZXR1cm5zIHsqfSBDb252ZXJ0ZWQgRGF0ZVxuICAgICAqIEBtZW1iZXJvZiBMb2NhbGl6ZWREYXRlUGlwZVxuICAgICAqL1xuICAgIHRyYW5zZm9ybSh2YWx1ZTogYW55LCBwYXR0ZXJuOiBzdHJpbmcgPSAnbWVkaXVtRGF0ZScpOiBhbnkge1xuICAgICAgICBjb25zdCBkYXRlUGlwZTogRGF0ZVBpcGUgPSBuZXcgRGF0ZVBpcGUodGhpcy50cmFuc2xhdGVTZXJ2aWNlLmN1cnJlbnRMYW5nKTtcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgJiYgL15cXGR7NH0tXFxkezJ9LVxcZHsyfVRcXGR7Mn06XFxkezJ9OlxcZHsyfVxcK1xcZHsyfSQvLnRlc3QodmFsdWUpKSB7XG4gICAgICAgICAgICByZXR1cm4gZGF0ZVBpcGUudHJhbnNmb3JtKG5ldyBEYXRlKHZhbHVlICsgJzowMCcpLCBwYXR0ZXJuKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZGF0ZVBpcGUudHJhbnNmb3JtKHZhbHVlLCBwYXR0ZXJuKTtcbiAgICB9XG59XG4iXX0=