parse-zonetab
v1.0.0
Published
Parse zone.tab file
Downloads
31
Maintainers
Readme
parse-zonetab
A Node module to parse zone.tab file
const parseZonetab = require('parse-zonetab');
const source = `
#
# tz zone descriptions
#
AD +4230+00131 Europe/Andorra
AE +2518+05518 Asia/Dubai
AF +3431+06912 Asia/Kabul
AG +1703-06148 America/Antigua
AI +1812-06304 America/Anguilla`;
parseZonetab(source).then(rows => {
rows; /* => [
{
countryCode: 'AD',
coordinate: {
latitude: {sign: '+', degree: 42, minute: 30},
longitude: {sign: '+', degree: 1, minute: 31}
},
id: 'Europe/Andorra'
},
{
countryCode: 'AE',
coordinate: {
latitude: {sign: '+', degree: 25, minute: 18},
longitude: {sign: '+', degree: 55, minute: 18}
}
id: 'Asia/Dubai'
},
...
] */
});
Installation
npm install parse-zonetab
API
const parseZonetab = require('parse-zonetab');
parseZonetab(source)
source: Buffer
, String
or Stream
Return: Promise
It takes zone.tab
file data and returns a promise for an array of parsed rows each of whom is in the form:
{
countryCode: <string>,
coordinate: {
latitude: {
sign: <string> ('+' or '-'),
degree: <int>,
minute: <int>,
[second: <int>] (if available)
},
longitude: {
sign: <string> ('+' or '-'),
degree: <int>,
minute: <int>,
[second: <int>] (if available)
}
},
id: <string>,
[comment: <string>] (if available)
}
Related project
- get-zonetab - get the latest
zone.tab
file form IANA Time Zone Database
License
Copyright (c) 2016 Shinnosuke Watanabe
Licensed under the MIT License.