Neoteric Plumbing Mishap

    This package has been deprecated

    Author message:

    This package is deprecated, please check/use @js-joda/timezone instead

    js-joda-timezone
    TypeScript icon, indicating that this package has built-in type declarations

    2.1.1 • Public • Published

    js-joda-timezone

    npm version Build Status Sauce Test Status Coverage Status Tested node version

    Sauce Test Status

    Motivation

    Implementation of the js-joda ZoneRulesProvider, providing the bindings to the iana tzdb, using latest zone file generated by moment-timezone

    Usage

    Node

    Install joda using npm

    npm install js-joda
    npm install js-joda-timezone
    

    es5

    var jsJoda = require('js-joda')
    require('js-joda-timezone')
    
    var { LocalDateTime, ZoneId, ZonedDateTime } = jsJoda;
         
    LocalDateTime
        .parse('2016-06-30T11:30')
        .atZone(ZoneId.of('Europe/Berlin'))
        .toString()  // 2016-06-30T11:30+02:00[Europe/Berlin]
         
    ZonedDateTime
        .parse('2016-06-30T11:30+02:00[Europe/Berlin]') 
        .withZoneSameInstant(ZoneId.of('America/New_York'))
        .toString() // 2016-06-30T05:30-04:00[America/New_York]
    
    ZonedDateTime
        .parse('2016-06-30T11:30+02:00[Europe/Berlin]')
        .withZoneSameLocal(ZoneId.of('America/New_York'))
        .toString() // 2016-06-30T11:30-04:00[America/New_York]
    

    es6 / typescript

    import { ZonedDateTime, ZoneId } from 'js-joda'
    import 'js-joda-timezone'
    
    const zdt = ZonedDateTime.now(ZoneId.of('America/New_York'))
    

    Browser

    <script src="../dist/js-joda.js"></script>
    <script src="../dist/js-joda-timezone.js"></script>
    <script>
        // copy all js-joda classes to the global scope
        for(let key in JSJoda) { this[key] = JSJoda[key]; }
            
        LocalDateTime
            .parse('2016-06-30T11:30')
            .atZone(ZoneId.of('Europe/Berlin'))
            .toString()  // 2016-06-30T11:30+02:00[Europe/Berlin]
             
        ZonedDateTime
            .parse('2016-06-30T11:30+02:00[Europe/Berlin]') 
            .withZoneSameInstant(ZoneId.of('America/New_York'))
            .toString() // 2016-06-30T05:30-04:00[America/New_York]
    
        ZonedDateTime
            .parse('2016-06-30T11:30+02:00[Europe/Berlin]')
            .withZoneSameLocal(ZoneId.of('America/New_York'))
            .toString() // 2016-06-30T11:30-04:00[America/New_York]
    </script>
    

    Reducing js-joda-timezone file size

    If you don't need all the historical data that js-joda-timezone provides, you can instead use one of the reduced files ize builds:

    • js-joda-timezone-10-year-range.js covers +- five years from the current version's release
    • js-joda-timezone-1970-2030.js covers from 1970 to 2030
    • js-joda-timezone-2012-2022.js covers from 2012 to 2022

    To use one of these, just change your import path to the following format:

    import 'js-joda-timezone/dist/js-joda-timezone-1970-2030'
    

    Implementation details

    • This ZoneRulesProvider implemantion supplies all functionality that is required by the js-joda package.
    • Additional ZoneRules functionality like transitions(), etc. is not implemented.

    License

    • js-joda-timezone is released under the BSD 3-clause license:

    • The author of joda time and the lead architect of the JSR-310 is Stephen Colebourne.

    • The json versions of the iana tzdb are imported from and generated with moment-timezone.

    Install

    npm i js-joda-timezone

    DownloadsWeekly Downloads

    3,865

    Version

    2.1.1

    License

    BSD-3-Clause

    Unpacked Size

    2.64 MB

    Total Files

    35

    Last publish

    Collaborators

    • phueper
    • pithu