@phensley/cldr-core
Version:
Core library for @phensley/cldr
82 lines (52 loc) • 2.04 kB
text/typescript
import { getCLDR } from './__tests__/helpers';
import { Part, UnixEpochTime } from '@phensley/cldr-core';
const epoch = 1520751625000;
const day = 86400 * 1000;
const zoneId = 'America/Los_Angeles';
const mar11 = { epoch, zoneId };
const mar14 = { epoch: epoch + (3 * day), zoneId };
const cldr = getCLDR();
const en = cldr.get('en');
let s: string;
s = en.Calendars.formatDateInterval(mar11, mar14, { skeleton: 'yMMd' });
console.log(s);
s = en.Calendars.formatDateInterval(mar11, mar14, { skeleton: 'yMMMd' });
console.log(s);
s = en.Calendars.formatDateInterval(mar11, mar14, { skeleton: 'yEEEEMMMMd' });
console.log(s);
let p: Part[];
const march5: UnixEpochTime = { epoch: 1520282108000, zoneId: 'America/New_York' };
p = en.Calendars.formatDateToParts(march5, { date: 'full' });
console.log(p);
console.log('-----------');
p = en.Calendars.formatDateIntervalToParts(mar11, mar14, { skeleton: 'yMMMd' });
console.log(p);
const date = en.Calendars.newGregorianDate(1109916428000, 'America/New_York');
console.log(date.year());
// > 2005
console.log(date.month()); // zero-based month, 0 = January
// > 2
console.log(date.dayOfMonth()); // one-based day of month
// > 4
console.log(date.dayOfWeek()); // 1 = sunday, 2 = monday, ... 7 = saturday
// > 6
const gregorian = en.Calendars.newGregorianDate(1109916428000, 'America/New_York');
const d = en.Calendars.toPersianDate(gregorian);
console.log(d.year());
console.log(d.month());
console.log(d.dayOfMonth());
console.log(d.dayOfWeek());
const fa = cldr.get('fa-IR');
s = fa.Calendars.formatDate(march5, { date: 'full' });
console.log(s);
s = en.Calendars.formatDate(march5, { date: 'full', ca: 'persian' });
console.log(s);
const es = cldr.get('es-419');
s = es.Calendars.formatDate(march5, { date: 'full' });
console.log(s);
const y = cldr.get('en-US-u-ca-japanese');
s = y.Calendars.formatDate(march5, { date: 'full' });
console.log(s);
const x = cldr.get('en-US-u-ca-persian');
s = x.Calendars.formatDate(march5, { date: 'full' });
console.log(s);