tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

ZonedDateTimeFormatter.mjs (1738B)


      1 import { DateTimeFormatter } from "icu4x"
      2 import { IsoDate } from "icu4x"
      3 import { Locale } from "icu4x"
      4 import { Time } from "icu4x"
      5 import { TimeZone } from "icu4x"
      6 import { TimeZoneInfo } from "icu4x"
      7 import { UtcOffset } from "icu4x"
      8 import { ZonedDateTimeFormatter } from "icu4x"
      9 export function formatIso(zonedDateTimeFormatterLocaleName, zonedDateTimeFormatterFormatterLocaleName, zonedDateTimeFormatterFormatterLength, zonedDateTimeFormatterFormatterTimePrecision, zonedDateTimeFormatterFormatterAlignment, zonedDateTimeFormatterFormatterYearStyle, dateYear, dateMonth, dateDay, timeHour, timeMinute, timeSecond, timeSubsecond, zoneIdId, zoneOffsetOffset, zoneVariant) {
     10    
     11    let zonedDateTimeFormatterLocale = Locale.fromString(zonedDateTimeFormatterLocaleName);
     12    
     13    let zonedDateTimeFormatterFormatterLocale = Locale.fromString(zonedDateTimeFormatterFormatterLocaleName);
     14    
     15    let zonedDateTimeFormatterFormatter = DateTimeFormatter.createYmdt(zonedDateTimeFormatterFormatterLocale,zonedDateTimeFormatterFormatterLength,zonedDateTimeFormatterFormatterTimePrecision,zonedDateTimeFormatterFormatterAlignment,zonedDateTimeFormatterFormatterYearStyle);
     16    
     17    let zonedDateTimeFormatter = ZonedDateTimeFormatter.createGenericShort(zonedDateTimeFormatterLocale,zonedDateTimeFormatterFormatter);
     18    
     19    let date = new IsoDate(dateYear,dateMonth,dateDay);
     20    
     21    let time = new Time(timeHour,timeMinute,timeSecond,timeSubsecond);
     22    
     23    let zoneId = TimeZone.createFromBcp47(zoneIdId);
     24    
     25    let zoneOffset = UtcOffset.fromString(zoneOffsetOffset);
     26    
     27    let zone = new TimeZoneInfo(zoneId,zoneOffset,zoneVariant);
     28    
     29    let out = zonedDateTimeFormatter.formatIso(date,time,zone);
     30    
     31 
     32    return out;
     33 }