@hmcts/media-viewer
Version:
26 lines • 3.38 kB
JavaScript
import { Pipe } from '@angular/core';
import { DatePipe } from '@angular/common';
import moment from 'moment-timezone';
import * as i0 from "@angular/core";
/**
* A moment timezone pipe to support parsing based on time zone abbreviations
* covers all cases of offset variation due to daylight saving.
*
* Same API as DatePipe with additional timezone abbreviation support
* Official date pipe dropped support for abbreviations names from Angular V5
*/
export class MomentDatePipe extends DatePipe {
transform(value, format = 'mediumDate', timezone = 'Europe/London') {
const timezoneOffset = moment(value).tz(timezone).format('Z');
return super.transform(value, format, timezoneOffset);
}
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MomentDatePipe, deps: null, target: i0.ɵɵFactoryTarget.Pipe }); }
/** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: MomentDatePipe, name: "momentDate" }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MomentDatePipe, decorators: [{
type: Pipe,
args: [{
name: 'momentDate'
}]
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWVkaWEtdmlld2VyL3NyYy9saWIvYW5ub3RhdGlvbnMvcGlwZXMvZGF0ZS9kYXRlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sTUFBTSxNQUFNLGlCQUFpQixDQUFDOztBQUNyQzs7Ozs7O0dBTUc7QUFJSCxNQUFNLE9BQU8sY0FBZSxTQUFRLFFBQVE7SUFFMUMsU0FBUyxDQUNQLEtBQW9CLEVBQ3BCLFNBQWlCLFlBQVksRUFDN0IsV0FBbUIsZUFBZTtRQUVsQyxNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM5RCxPQUFPLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxjQUFjLENBQUMsQ0FBQztJQUN4RCxDQUFDO2tJQVRVLGNBQWM7Z0lBQWQsY0FBYzs7NEZBQWQsY0FBYztrQkFIMUIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsWUFBWTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudC10aW1lem9uZSc7XG4vKipcbiAqIEEgbW9tZW50IHRpbWV6b25lIHBpcGUgdG8gc3VwcG9ydCBwYXJzaW5nIGJhc2VkIG9uIHRpbWUgem9uZSBhYmJyZXZpYXRpb25zXG4gKiBjb3ZlcnMgYWxsIGNhc2VzIG9mIG9mZnNldCB2YXJpYXRpb24gZHVlIHRvIGRheWxpZ2h0IHNhdmluZy5cbiAqXG4gKiBTYW1lIEFQSSBhcyBEYXRlUGlwZSB3aXRoIGFkZGl0aW9uYWwgdGltZXpvbmUgYWJicmV2aWF0aW9uIHN1cHBvcnRcbiAqIE9mZmljaWFsIGRhdGUgcGlwZSBkcm9wcGVkIHN1cHBvcnQgZm9yIGFiYnJldmlhdGlvbnMgbmFtZXMgZnJvbSBBbmd1bGFyIFY1XG4gKi9cbkBQaXBlKHtcbiAgbmFtZTogJ21vbWVudERhdGUnXG59KVxuZXhwb3J0IGNsYXNzIE1vbWVudERhdGVQaXBlIGV4dGVuZHMgRGF0ZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICB0cmFuc2Zvcm0oXG4gICAgdmFsdWU6IHN0cmluZyB8IERhdGUsXG4gICAgZm9ybWF0OiBzdHJpbmcgPSAnbWVkaXVtRGF0ZScsXG4gICAgdGltZXpvbmU6IHN0cmluZyA9ICdFdXJvcGUvTG9uZG9uJ1xuICApOiBhbnkge1xuICAgIGNvbnN0IHRpbWV6b25lT2Zmc2V0ID0gbW9tZW50KHZhbHVlKS50eih0aW1lem9uZSkuZm9ybWF0KCdaJyk7XG4gICAgcmV0dXJuIHN1cGVyLnRyYW5zZm9ybSh2YWx1ZSwgZm9ybWF0LCB0aW1lem9uZU9mZnNldCk7XG4gIH1cbn1cbiJdfQ==