UNPKG

@ribajs/luxon

Version:

Luxon (time library) module for Riba.js

32 lines 2.88 kB
import { DateTime } from "luxon"; export const LuxonToMomentCalendarFormatter = { name: "lx-to-moment-calendar", read(target, options) { options = options || {}; options.unit = options.unit || "days"; options.base = options.base || DateTime.now(); const b = options.base.startOf("day"); const t = target.startOf("day"); const daysDiff = t.diff(b).milliseconds / (3600 * 24 * 1000); if (Math.abs(daysDiff) >= 7) { return target.toLocaleString({ year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit", }); } else { const hourMinute = target.toLocaleString({ hour: "2-digit", minute: "2-digit", }); if (Math.abs(daysDiff) <= 2) { return target.toRelativeCalendar(options) + " " + hourMinute; } return (target.toLocaleString({ weekday: "long" }) + ", " + hourMinute); } }, }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibHgtdG8tbW9tZW50LWNhbGVuZGFyLmZvcm1hdHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mb3JtYXR0ZXJzL2x4LXRvLW1vbWVudC1jYWxlbmRhci5mb3JtYXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFFBQVEsRUFBNkIsTUFBTSxPQUFPLENBQUM7QUFLNUQsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQWM7SUFDdkQsSUFBSSxFQUFFLHVCQUF1QjtJQU83QixJQUFJLENBQUMsTUFBZ0IsRUFBRSxPQUFtQztRQUN4RCxPQUFPLEdBQUcsT0FBTyxJQUFJLEVBQUUsQ0FBQztRQUN4QixPQUFPLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLElBQUksTUFBTSxDQUFDO1FBQ3RDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksSUFBSSxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDOUMsTUFBTSxDQUFDLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdEMsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVoQyxNQUFNLFFBQVEsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksR0FBRyxDQUFDLElBQUksR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFFN0QsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQzVCLE9BQU8sTUFBTSxDQUFDLGNBQWMsQ0FBQztnQkFDM0IsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsS0FBSyxFQUFFLFNBQVM7Z0JBQ2hCLEdBQUcsRUFBRSxTQUFTO2dCQUNkLElBQUksRUFBRSxTQUFTO2dCQUNmLE1BQU0sRUFBRSxTQUFTO2FBQ2xCLENBQUMsQ0FBQztRQUNMLENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQztnQkFDdkMsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsTUFBTSxFQUFFLFNBQVM7YUFDbEIsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUM1QixPQUFPLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUUsR0FBRyxHQUFHLEdBQUcsVUFBVSxDQUFDO1lBQ2hFLENBQUM7WUFDRCxPQUFPLENBRUwsTUFBTSxDQUFDLGNBQWMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQyxHQUFHLElBQUksR0FBRyxVQUFVLENBQy9ELENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQztDQUNGLENBQUMifQ==