@microsoft/windows-admin-center-sdk
Version:
Microsoft - Windows Admin Center Shell
71 lines • 7.93 kB
JavaScript
import { Pipe } from '@angular/core';
import { Globalization } from '@microsoft/windows-admin-center-sdk/core/data/globalization';
import * as i0 from "@angular/core";
export class DateConverterPipe {
transform(date, format) {
if (!date) {
return null;
}
let checkDate;
try {
// input date may be just string or number, make sure it converted to Date object
checkDate = new Date(date);
}
catch {
return null;
}
return getFormatDate(format, checkDate);
}
}
/** @nocollapse */ DateConverterPipe.ɵfac = function DateConverterPipe_Factory(t) { return new (t || DateConverterPipe)(); };
/** @nocollapse */ DateConverterPipe.ɵpipe = /** @pureOrBreakMyCode */ i0.ɵɵdefinePipe({ name: "smeDate", type: DateConverterPipe, pure: true });
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DateConverterPipe, [{
type: Pipe,
args: [{ name: 'smeDate' }]
}], null, null); })();
/**
* Convert UTC time to local time
* Input date is UTC time
*/
export class LocalDateConverterPipe {
transform(utcDate, format) {
if (!utcDate) {
return null;
}
let checkDate;
let localDate;
try {
// input utcDate may be just string or number, make sure it converted to Date object
checkDate = new Date(utcDate);
localDate = new Date(checkDate.getTime() - checkDate.getTimezoneOffset() * 60 * 1000);
}
catch {
return null;
}
return getFormatDate(format, localDate);
}
}
/** @nocollapse */ LocalDateConverterPipe.ɵfac = function LocalDateConverterPipe_Factory(t) { return new (t || LocalDateConverterPipe)(); };
/** @nocollapse */ LocalDateConverterPipe.ɵpipe = /** @pureOrBreakMyCode */ i0.ɵɵdefinePipe({ name: "smeLocalDate", type: LocalDateConverterPipe, pure: true });
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LocalDateConverterPipe, [{
type: Pipe,
args: [{ name: 'smeLocalDate' }]
}], null, null); })();
function getFormatDate(format, date) {
const formatLCase = format ? format.toLowerCase() : '';
switch (formatLCase) {
case 'full':
return Globalization.fullTime(date);
case 'medium':
return Globalization.dateTimeOnly(date);
case 'short':
return Globalization.dateTimeOnlyShort(date);
case 'date':
return Globalization.dateOnly(date);
case 'time':
return Globalization.timeOnly(date);
default:
return Globalization.fullTime(date);
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1jb252ZXJ0ZXItcGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2FuZ3VsYXIvc3JjL3BpcGVzL2RhdGUtY29udmVydGVyLXBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDZEQUE2RCxDQUFDOztBQUc1RixNQUFNLE9BQU8saUJBQWlCO0lBQ25CLFNBQVMsQ0FBQyxJQUFVLEVBQUUsTUFBZTtRQUN4QyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1AsT0FBTyxJQUFJLENBQUM7U0FDZjtRQUVELElBQUksU0FBZSxDQUFDO1FBQ3BCLElBQUk7WUFDQSxpRkFBaUY7WUFDakYsU0FBUyxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzlCO1FBQUMsTUFBTTtZQUNKLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFFRCxPQUFPLGFBQWEsQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDNUMsQ0FBQzs7cUdBZlEsaUJBQWlCO2dIQUFqQixpQkFBaUI7dUZBQWpCLGlCQUFpQjtjQUQ3QixJQUFJO2VBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFOztBQW9CekI7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLHNCQUFzQjtJQUN4QixTQUFTLENBQUMsT0FBYSxFQUFFLE1BQWU7UUFDM0MsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNWLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFFRCxJQUFJLFNBQWUsQ0FBQztRQUNwQixJQUFJLFNBQWUsQ0FBQztRQUNwQixJQUFJO1lBQ0Esb0ZBQW9GO1lBQ3BGLFNBQVMsR0FBRyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM5QixTQUFTLEdBQUcsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxHQUFHLFNBQVMsQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztTQUN6RjtRQUFDLE1BQU07WUFDSixPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsT0FBTyxhQUFhLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7OytHQWpCUSxzQkFBc0I7MEhBQXRCLHNCQUFzQjt1RkFBdEIsc0JBQXNCO2NBTGxDLElBQUk7ZUFBQyxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUU7O0FBeUI5QixTQUFTLGFBQWEsQ0FBQyxNQUFjLEVBQUUsSUFBVTtJQUM3QyxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3ZELFFBQVEsV0FBVyxFQUFFO1FBQ2pCLEtBQUssTUFBTTtZQUNQLE9BQU8sYUFBYSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QyxLQUFLLFFBQVE7WUFDVCxPQUFPLGFBQWEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUMsS0FBSyxPQUFPO1lBQ1IsT0FBTyxhQUFhLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakQsS0FBSyxNQUFNO1lBQ1AsT0FBTyxhQUFhLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hDLEtBQUssTUFBTTtZQUNQLE9BQU8sYUFBYSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QztZQUNJLE9BQU8sYUFBYSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztLQUMzQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEdsb2JhbGl6YXRpb24gfSBmcm9tICdAbWljcm9zb2Z0L3dpbmRvd3MtYWRtaW4tY2VudGVyLXNkay9jb3JlL2RhdGEvZ2xvYmFsaXphdGlvbic7XHJcblxyXG5AUGlwZSh7IG5hbWU6ICdzbWVEYXRlJyB9KVxyXG5leHBvcnQgY2xhc3MgRGF0ZUNvbnZlcnRlclBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICAgIHB1YmxpYyB0cmFuc2Zvcm0oZGF0ZTogRGF0ZSwgZm9ybWF0Pzogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICBpZiAoIWRhdGUpIHtcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsZXQgY2hlY2tEYXRlOiBEYXRlO1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIC8vIGlucHV0IGRhdGUgbWF5IGJlIGp1c3Qgc3RyaW5nIG9yIG51bWJlciwgbWFrZSBzdXJlIGl0IGNvbnZlcnRlZCB0byBEYXRlIG9iamVjdFxyXG4gICAgICAgICAgICBjaGVja0RhdGUgPSBuZXcgRGF0ZShkYXRlKTtcclxuICAgICAgICB9IGNhdGNoIHtcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gZ2V0Rm9ybWF0RGF0ZShmb3JtYXQsIGNoZWNrRGF0ZSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBQaXBlKHsgbmFtZTogJ3NtZUxvY2FsRGF0ZScgfSlcclxuLyoqXHJcbiAqIENvbnZlcnQgVVRDIHRpbWUgdG8gbG9jYWwgdGltZVxyXG4gKiBJbnB1dCBkYXRlIGlzIFVUQyB0aW1lXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgTG9jYWxEYXRlQ29udmVydGVyUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gICAgcHVibGljIHRyYW5zZm9ybSh1dGNEYXRlOiBEYXRlLCBmb3JtYXQ/OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICghdXRjRGF0ZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxldCBjaGVja0RhdGU6IERhdGU7XHJcbiAgICAgICAgbGV0IGxvY2FsRGF0ZTogRGF0ZTtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICAvLyBpbnB1dCB1dGNEYXRlIG1heSBiZSBqdXN0IHN0cmluZyBvciBudW1iZXIsIG1ha2Ugc3VyZSBpdCBjb252ZXJ0ZWQgdG8gRGF0ZSBvYmplY3RcclxuICAgICAgICAgICAgY2hlY2tEYXRlID0gbmV3IERhdGUodXRjRGF0ZSk7XHJcbiAgICAgICAgICAgIGxvY2FsRGF0ZSA9IG5ldyBEYXRlKGNoZWNrRGF0ZS5nZXRUaW1lKCkgLSBjaGVja0RhdGUuZ2V0VGltZXpvbmVPZmZzZXQoKSAqIDYwICogMTAwMCk7XHJcbiAgICAgICAgfSBjYXRjaCB7XHJcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGdldEZvcm1hdERhdGUoZm9ybWF0LCBsb2NhbERhdGUpO1xyXG4gICAgfVxyXG59XHJcblxyXG5mdW5jdGlvbiBnZXRGb3JtYXREYXRlKGZvcm1hdDogc3RyaW5nLCBkYXRlOiBEYXRlKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGZvcm1hdExDYXNlID0gZm9ybWF0ID8gZm9ybWF0LnRvTG93ZXJDYXNlKCkgOiAnJztcclxuICAgIHN3aXRjaCAoZm9ybWF0TENhc2UpIHtcclxuICAgICAgICBjYXNlICdmdWxsJzpcclxuICAgICAgICAgICAgcmV0dXJuIEdsb2JhbGl6YXRpb24uZnVsbFRpbWUoZGF0ZSk7XHJcbiAgICAgICAgY2FzZSAnbWVkaXVtJzpcclxuICAgICAgICAgICAgcmV0dXJuIEdsb2JhbGl6YXRpb24uZGF0ZVRpbWVPbmx5KGRhdGUpO1xyXG4gICAgICAgIGNhc2UgJ3Nob3J0JzpcclxuICAgICAgICAgICAgcmV0dXJuIEdsb2JhbGl6YXRpb24uZGF0ZVRpbWVPbmx5U2hvcnQoZGF0ZSk7XHJcbiAgICAgICAgY2FzZSAnZGF0ZSc6XHJcbiAgICAgICAgICAgIHJldHVybiBHbG9iYWxpemF0aW9uLmRhdGVPbmx5KGRhdGUpO1xyXG4gICAgICAgIGNhc2UgJ3RpbWUnOlxyXG4gICAgICAgICAgICByZXR1cm4gR2xvYmFsaXphdGlvbi50aW1lT25seShkYXRlKTtcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICByZXR1cm4gR2xvYmFsaXphdGlvbi5mdWxsVGltZShkYXRlKTtcclxuICAgIH1cclxufVxyXG4iXX0=