iptdevs-design-system
Version:
Library common elements into IPT Plattform.
34 lines • 4.95 kB
JavaScript
import { Pipe } from '@angular/core';
import * as i0 from "@angular/core";
export class ScheduleTimeFormatPipe {
transform(schedule) {
if (!schedule || !Array.isArray(schedule) || schedule.length === 0) {
return 'Sin horario';
}
const firstItem = schedule[0];
const match = firstItem.match(/(\d{2}:\d{2}:\d{2}) to (\d{2}:\d{2}:\d{2})/);
if (match && match.length === 3) {
const [startTime, endTime] = match.slice(1);
return `${this.formatTo12Hours(startTime)} to ${this.formatTo12Hours(endTime)}`;
}
return 'Sin horario';
}
formatTo12Hours(time) {
const [hours, minutes, seconds] = time.split(':').map(Number);
const period = hours >= 12 ? 'PM' : 'AM';
const formattedHours = hours % 12 || 12; // Handle noon as 12 PM
return `${formattedHours}:${this.padWithZero(minutes)} ${period}`;
}
padWithZero(value) {
return value < 10 ? `0${value}` : `${value}`;
}
}
ScheduleTimeFormatPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ScheduleTimeFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
ScheduleTimeFormatPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.7", ngImport: i0, type: ScheduleTimeFormatPipe, name: "scheduleTimeFormat" });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: ScheduleTimeFormatPipe, decorators: [{
type: Pipe,
args: [{
name: 'scheduleTimeFormat'
}]
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1mb3JtLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29yZS9waXBlcy9jb3Vyc2UtcGlwZXMvdGltZS1mb3JtLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBS3BELE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsU0FBUyxDQUFDLFFBQThCO1FBQ3RDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ2xFLE9BQU8sYUFBYSxDQUFDO1NBQ3RCO1FBRUQsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzlCLE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsNENBQTRDLENBQUMsQ0FBQztRQUU1RSxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUMvQixNQUFNLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDNUMsT0FBTyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1NBQ2pGO1FBRUQsT0FBTyxhQUFhLENBQUM7SUFDdkIsQ0FBQztJQUVPLGVBQWUsQ0FBQyxJQUFZO1FBQ2xDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzlELE1BQU0sTUFBTSxHQUFHLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ3pDLE1BQU0sY0FBYyxHQUFHLEtBQUssR0FBRyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsdUJBQXVCO1FBQ2hFLE9BQU8sR0FBRyxjQUFjLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxNQUFNLEVBQUUsQ0FBQztJQUNwRSxDQUFDO0lBRU8sV0FBVyxDQUFDLEtBQWE7UUFDL0IsT0FBTyxLQUFLLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDO0lBQy9DLENBQUM7O21IQTFCVSxzQkFBc0I7aUhBQXRCLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQUhsQyxJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxvQkFBb0I7aUJBQzNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdzY2hlZHVsZVRpbWVGb3JtYXQnXG59KVxuZXhwb3J0IGNsYXNzIFNjaGVkdWxlVGltZUZvcm1hdFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtKHNjaGVkdWxlOiBzdHJpbmdbXSB8IHVuZGVmaW5lZCk6IHN0cmluZyB7XG4gICAgaWYgKCFzY2hlZHVsZSB8fCAhQXJyYXkuaXNBcnJheShzY2hlZHVsZSkgfHwgc2NoZWR1bGUubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gJ1NpbiBob3JhcmlvJztcbiAgICB9XG5cbiAgICBjb25zdCBmaXJzdEl0ZW0gPSBzY2hlZHVsZVswXTtcbiAgICBjb25zdCBtYXRjaCA9IGZpcnN0SXRlbS5tYXRjaCgvKFxcZHsyfTpcXGR7Mn06XFxkezJ9KSB0byAoXFxkezJ9OlxcZHsyfTpcXGR7Mn0pLyk7XG5cbiAgICBpZiAobWF0Y2ggJiYgbWF0Y2gubGVuZ3RoID09PSAzKSB7XG4gICAgICBjb25zdCBbc3RhcnRUaW1lLCBlbmRUaW1lXSA9IG1hdGNoLnNsaWNlKDEpO1xuICAgICAgcmV0dXJuIGAke3RoaXMuZm9ybWF0VG8xMkhvdXJzKHN0YXJ0VGltZSl9IHRvICR7dGhpcy5mb3JtYXRUbzEySG91cnMoZW5kVGltZSl9YDtcbiAgICB9XG5cbiAgICByZXR1cm4gJ1NpbiBob3JhcmlvJztcbiAgfVxuXG4gIHByaXZhdGUgZm9ybWF0VG8xMkhvdXJzKHRpbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3QgW2hvdXJzLCBtaW51dGVzLCBzZWNvbmRzXSA9IHRpbWUuc3BsaXQoJzonKS5tYXAoTnVtYmVyKTtcbiAgICBjb25zdCBwZXJpb2QgPSBob3VycyA+PSAxMiA/ICdQTScgOiAnQU0nO1xuICAgIGNvbnN0IGZvcm1hdHRlZEhvdXJzID0gaG91cnMgJSAxMiB8fCAxMjsgLy8gSGFuZGxlIG5vb24gYXMgMTIgUE1cbiAgICByZXR1cm4gYCR7Zm9ybWF0dGVkSG91cnN9OiR7dGhpcy5wYWRXaXRoWmVybyhtaW51dGVzKX0gJHtwZXJpb2R9YDtcbiAgfVxuXG4gIHByaXZhdGUgcGFkV2l0aFplcm8odmFsdWU6IG51bWJlcik6IHN0cmluZyB7XG4gICAgcmV0dXJuIHZhbHVlIDwgMTAgPyBgMCR7dmFsdWV9YCA6IGAke3ZhbHVlfWA7XG4gIH1cbn1cbiJdfQ==