This commit is contained in:
2025-11-11 00:04:55 -06:00
parent a76ad41fde
commit 40538eddfd
6405 changed files with 1289756 additions and 0 deletions

732
node_modules/date-and-time/plugin/timezone.js generated vendored Normal file
View File

@ -0,0 +1,732 @@
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.date = global.date || {}, global.date.plugin = global.date.plugin || {}, global.date.plugin.timezone = factory()));
})(this, (function () { 'use strict';
/**
* @preserve date-and-time.js plugin
* @preserve timezone
*/
var plugin = function (proto, date) {
var timeZones = {
africa: {
abidjan: [0, -968],
accra: [0, -968],
addis_ababa: [10800, 9900, 9000, 8836],
algiers: [7200, 3600, 732, 561, 0],
asmara: [10800, 9900, 9000, 8836],
bamako: [0, -968],
bangui: [3600, 1800, 815, 0],
banjul: [0, -968],
bissau: [0, -3600, -3740],
blantyre: [7820, 7200],
brazzaville: [3600, 1800, 815, 0],
bujumbura: [7820, 7200],
cairo: [10800, 7509, 7200],
casablanca: [3600, 0, -1820],
ceuta: [7200, 3600, 0, -1276],
conakry: [0, -968],
dakar: [0, -968],
dar_es_salaam: [10800, 9900, 9000, 8836],
djibouti: [10800, 9900, 9000, 8836],
douala: [3600, 1800, 815, 0],
el_aaiun: [3600, 0, -3168, -3600],
freetown: [0, -968],
gaborone: [7820, 7200],
harare: [7820, 7200],
johannesburg: [10800, 7200, 6720, 5400],
juba: [10800, 7588, 7200],
kampala: [10800, 9900, 9000, 8836],
khartoum: [10800, 7808, 7200],
kigali: [7820, 7200],
kinshasa: [3600, 1800, 815, 0],
lagos: [3600, 1800, 815, 0],
libreville: [3600, 1800, 815, 0],
lome: [0, -968],
luanda: [3600, 1800, 815, 0],
lubumbashi: [7820, 7200],
lusaka: [7820, 7200],
malabo: [3600, 1800, 815, 0],
maputo: [7820, 7200],
maseru: [10800, 7200, 6720, 5400],
mbabane: [10800, 7200, 6720, 5400],
mogadishu: [10800, 9900, 9000, 8836],
monrovia: [0, -2588, -2670],
nairobi: [10800, 9900, 9000, 8836],
ndjamena: [7200, 3612, 3600],
niamey: [3600, 1800, 815, 0],
nouakchott: [0, -968],
ouagadougou: [0, -968],
'porto-novo': [3600, 1800, 815, 0],
sao_tome: [3600, 1616, 0, -2205],
tripoli: [7200, 3600, 3164],
tunis: [7200, 3600, 2444, 561],
windhoek: [10800, 7200, 5400, 4104, 3600]
},
america: {
adak: [44002, -32400, -36000, -39600, -42398],
anchorage: [50424, -28800, -32400, -35976, -36000],
anguilla: [-10800, -14400, -15865],
antigua: [-10800, -14400, -15865],
araguaina: [-7200, -10800, -11568],
argentina: {
buenos_aires: [-7200, -10800, -14028, -14400, -15408],
catamarca: [-7200, -10800, -14400, -15408, -15788],
cordoba: [-7200, -10800, -14400, -15408],
jujuy: [-7200, -10800, -14400, -15408, -15672],
la_rioja: [-7200, -10800, -14400, -15408, -16044],
mendoza: [-7200, -10800, -14400, -15408, -16516],
rio_gallegos: [-7200, -10800, -14400, -15408, -16612],
salta: [-7200, -10800, -14400, -15408, -15700],
san_juan: [-7200, -10800, -14400, -15408, -16444],
san_luis: [-7200, -10800, -14400, -15408, -15924],
tucuman: [-7200, -10800, -14400, -15408, -15652],
ushuaia: [-7200, -10800, -14400, -15408, -16392]
},
aruba: [-10800, -14400, -15865],
asuncion: [-10800, -13840, -14400],
atikokan: [-18000, -19088, -19176],
bahia_banderas: [-18000, -21600, -25200, -25260, -28800],
bahia: [-7200, -9244, -10800],
barbados: [-10800, -12600, -14309, -14400],
belem: [-7200, -10800, -11636],
belize: [-18000, -19800, -21168, -21600],
'blanc-sablon': [-10800, -14400, -15865],
boa_vista: [-10800, -14400, -14560],
bogota: [-14400, -17776, -18000],
boise: [-21600, -25200, -27889, -28800],
cambridge_bay: [0, -18000, -21600, -25200],
campo_grande: [-10800, -13108, -14400],
cancun: [-14400, -18000, -20824, -21600],
caracas: [-14400, -16060, -16064, -16200],
cayenne: [-10800, -12560, -14400],
cayman: [-18000, -19088, -19176],
chicago: [-18000, -21036, -21600],
chihuahua: [-18000, -21600, -25200, -25460],
ciudad_juarez: [-18000, -21600, -25200, -25556],
costa_rica: [-18000, -20173, -21600],
creston: [-21600, -25200, -26898],
cuiaba: [-10800, -13460, -14400],
curacao: [-10800, -14400, -15865],
danmarkshavn: [0, -4480, -7200, -10800],
dawson: [-25200, -28800, -32400, -33460],
dawson_creek: [-25200, -28800, -28856],
denver: [-21600, -25196, -25200],
detroit: [-14400, -18000, -19931, -21600],
dominica: [-10800, -14400, -15865],
edmonton: [-21600, -25200, -27232],
eirunepe: [-14400, -16768, -18000],
el_salvador: [-18000, -21408, -21600],
fortaleza: [-7200, -9240, -10800],
fort_nelson: [-25200, -28800, -29447],
glace_bay: [-10800, -14388, -14400],
goose_bay: [-7200, -9000, -9052, -10800, -12600, -12652, -14400, -14500],
grand_turk: [-14400, -17072, -18000, -18430],
grenada: [-10800, -14400, -15865],
guadeloupe: [-10800, -14400, -15865],
guatemala: [-18000, -21600, -21724],
guayaquil: [-14400, -18000, -18840, -19160],
guyana: [-10800, -13500, -13959, -14400],
halifax: [-10800, -14400, -15264],
havana: [-14400, -18000, -19768, -19776],
hermosillo: [-21600, -25200, -26632, -28800],
indiana: {
indianapolis: [-14400, -18000, -20678, -21600],
knox: [-18000, -20790, -21600],
marengo: [-14400, -18000, -20723, -21600],
petersburg: [-14400, -18000, -20947, -21600],
tell_city: [-14400, -18000, -20823, -21600],
vevay: [-14400, -18000, -20416, -21600],
vincennes: [-14400, -18000, -21007, -21600],
winamac: [-14400, -18000, -20785, -21600]
},
inuvik: [0, -21600, -25200, -28800],
iqaluit: [0, -14400, -18000, -21600],
jamaica: [-14400, -18000, -18430],
juneau: [54139, -25200, -28800, -32261, -32400],
kentucky: {
louisville: [-14400, -18000, -20582, -21600],
monticello: [-14400, -18000, -20364, -21600]
},
kralendijk: [-10800, -14400, -15865],
la_paz: [-12756, -14400, -16356],
lima: [-14400, -18000, -18492, -18516],
los_angeles: [-25200, -28378, -28800],
lower_princes: [-10800, -14400, -15865],
maceio: [-7200, -8572, -10800],
managua: [-18000, -20708, -20712, -21600],
manaus: [-10800, -14400, -14404],
marigot: [-10800, -14400, -15865],
martinique: [-10800, -14400, -14660],
matamoros: [-18000, -21600, -23400],
mazatlan: [-21600, -25200, -25540, -28800],
menominee: [-18000, -21027, -21600],
merida: [-18000, -21508, -21600],
metlakatla: [54822, -25200, -28800, -31578, -32400],
mexico_city: [-18000, -21600, -23796, -25200],
miquelon: [-7200, -10800, -13480, -14400],
moncton: [-10800, -14400, -15548, -18000],
monterrey: [-18000, -21600, -24076],
montevideo: [-5400, -7200, -9000, -10800, -12600, -13491, -14400],
montserrat: [-10800, -14400, -15865],
nassau: [-14400, -18000, -19052],
new_york: [-14400, -17762, -18000],
nome: [46702, -28800, -32400, -36000, -39600, -39698],
noronha: [-3600, -7200, -7780],
north_dakota: {
beulah: [-18000, -21600, -24427, -25200],
center: [-18000, -21600, -24312, -25200],
new_salem: [-18000, -21600, -24339, -25200]
},
nuuk: [-3600, -7200, -10800, -12416],
ojinaga: [-18000, -21600, -25060, -25200],
panama: [-18000, -19088, -19176],
paramaribo: [-10800, -12600, -13236, -13240, -13252],
phoenix: [-21600, -25200, -26898],
'port-au-prince': [-14400, -17340, -17360, -18000],
port_of_spain: [-10800, -14400, -15865],
porto_velho: [-10800, -14400, -15336],
puerto_rico: [-10800, -14400, -15865],
punta_arenas: [-10800, -14400, -16965, -17020, -18000],
rankin_inlet: [0, -18000, -21600],
recife: [-7200, -8376, -10800],
regina: [-21600, -25116, -25200],
resolute: [0, -18000, -21600],
rio_branco: [-14400, -16272, -18000],
santarem: [-10800, -13128, -14400],
santiago: [-10800, -14400, -16965, -18000],
santo_domingo: [-14400, -16200, -16776, -16800, -18000],
sao_paulo: [-7200, -10800, -11188],
scoresbysund: [0, -3600, -5272, -7200],
sitka: [53927, -25200, -28800, -32400, -32473],
st_barthelemy: [-10800, -14400, -15865],
st_johns: [-5400, -9000, -9052, -12600, -12652],
st_kitts: [-10800, -14400, -15865],
st_lucia: [-10800, -14400, -15865],
st_thomas: [-10800, -14400, -15865],
st_vincent: [-10800, -14400, -15865],
swift_current: [-21600, -25200, -25880],
tegucigalpa: [-18000, -20932, -21600],
thule: [-10800, -14400, -16508],
tijuana: [-25200, -28084, -28800],
toronto: [-14400, -18000, -19052],
tortola: [-10800, -14400, -15865],
vancouver: [-25200, -28800, -29548],
whitehorse: [-25200, -28800, -32400, -32412],
winnipeg: [-18000, -21600, -23316],
yakutat: [52865, -28800, -32400, -33535]
},
antarctica: {
casey: [39600, 28800, 0],
davis: [25200, 18000, 0],
dumontdurville: [36000, 35320, 35312],
macquarie: [39600, 36000, 0],
mawson: [21600, 18000, 0],
mcmurdo: [46800, 45000, 43200, 41944, 41400],
palmer: [0, -7200, -10800, -14400],
rothera: [0, -10800],
syowa: [11212, 10800],
troll: [7200, 0],
vostok: [25200, 18000, 0]
},
arctic: { longyearbyen: [10800, 7200, 3600, 3208] },
asia: {
aden: [11212, 10800],
almaty: [25200, 21600, 18468, 18000],
amman: [10800, 8624, 7200],
anadyr: [50400, 46800, 43200, 42596, 39600],
aqtau: [21600, 18000, 14400, 12064],
aqtobe: [21600, 18000, 14400, 13720],
ashgabat: [21600, 18000, 14400, 14012],
atyrau: [21600, 18000, 14400, 12464, 10800],
baghdad: [14400, 10800, 10660, 10656],
bahrain: [14400, 12368, 10800],
baku: [18000, 14400, 11964, 10800],
bangkok: [25200, 24124],
barnaul: [28800, 25200, 21600, 20100],
beirut: [10800, 8520, 7200],
bishkek: [25200, 21600, 18000, 17904],
brunei: [32400, 30000, 28800, 27000, 26480],
chita: [36000, 32400, 28800, 27232],
choibalsan: [36000, 32400, 28800, 27480, 25200],
colombo: [23400, 21600, 19800, 19172, 19164],
damascus: [10800, 8712, 7200],
dhaka: [25200, 23400, 21700, 21600, 21200, 19800],
dili: [32400, 30140, 28800],
dubai: [14400, 13272],
dushanbe: [25200, 21600, 18000, 16512],
famagusta: [10800, 8148, 7200],
gaza: [10800, 8272, 7200],
hebron: [10800, 8423, 7200],
ho_chi_minh: [32400, 28800, 25590, 25200],
hong_kong: [32400, 30600, 28800, 27402],
hovd: [28800, 25200, 21996, 21600],
irkutsk: [32400, 28800, 25200, 25025],
jakarta: [32400, 28800, 27000, 26400, 25632, 25200],
jayapura: [34200, 33768, 32400],
jerusalem: [14400, 10800, 8454, 8440, 7200],
kabul: [16608, 16200, 14400],
kamchatka: [46800, 43200, 39600, 38076],
karachi: [23400, 21600, 19800, 18000, 16092],
kathmandu: [20700, 20476, 19800],
khandyga: [39600, 36000, 32533, 32400, 28800],
kolkata: [23400, 21208, 21200, 19800, 19270],
krasnoyarsk: [28800, 25200, 22286, 21600],
kuala_lumpur: [32400, 28800, 27000, 26400, 25200, 24925],
kuching: [32400, 30000, 28800, 27000, 26480],
kuwait: [11212, 10800],
macau: [36000, 32400, 28800, 27250],
magadan: [43200, 39600, 36192, 36000],
makassar: [32400, 28800, 28656],
manila: [32400, 29040, 28800, -57360],
muscat: [14400, 13272],
nicosia: [10800, 8008, 7200],
novokuznetsk: [28800, 25200, 21600, 20928],
novosibirsk: [28800, 25200, 21600, 19900],
omsk: [25200, 21600, 18000, 17610],
oral: [21600, 18000, 14400, 12324, 10800],
phnom_penh: [25200, 24124],
pontianak: [32400, 28800, 27000, 26240, 25200],
pyongyang: [32400, 30600, 30180],
qatar: [14400, 12368, 10800],
qostanay: [21600, 18000, 15268, 14400],
qyzylorda: [21600, 18000, 15712, 14400],
riyadh: [11212, 10800],
sakhalin: [43200, 39600, 36000, 34248, 32400],
samarkand: [21600, 18000, 16073, 14400],
seoul: [36000, 34200, 32400, 30600, 30472],
shanghai: [32400, 29143, 28800],
singapore: [32400, 28800, 27000, 26400, 25200, 24925],
srednekolymsk: [43200, 39600, 36892, 36000],
taipei: [32400, 29160, 28800],
tashkent: [25200, 21600, 18000, 16631],
tbilisi: [18000, 14400, 10800, 10751],
tehran: [18000, 16200, 14400, 12600, 12344],
thimphu: [21600, 21516, 19800],
tokyo: [36000, 33539, 32400],
tomsk: [28800, 25200, 21600, 20391],
ulaanbaatar: [32400, 28800, 25652, 25200],
urumqi: [21600, 21020],
'ust-nera': [43200, 39600, 36000, 34374, 32400, 28800],
vientiane: [25200, 24124],
vladivostok: [39600, 36000, 32400, 31651],
yakutsk: [36000, 32400, 31138, 28800],
yangon: [32400, 23400, 23087],
yekaterinburg: [21600, 18000, 14553, 14400, 13505],
yerevan: [18000, 14400, 10800, 10680]
},
atlantic: {
azores: [0, -3600, -6160, -6872, -7200],
bermuda: [-10800, -11958, -14400, -15558],
canary: [3600, 0, -3600, -3696],
cape_verde: [-3600, -5644, -7200],
faroe: [3600, 0, -1624],
madeira: [3600, 0, -3600, -4056],
reykjavik: [0, -968],
south_georgia: [-7200, -8768],
stanley: [-7200, -10800, -13884, -14400],
st_helena: [0, -968]
},
australia: {
adelaide: [37800, 34200, 33260, 32400],
brisbane: [39600, 36728, 36000],
broken_hill: [37800, 36000, 34200, 33948, 32400],
darwin: [37800, 34200, 32400, 31400],
eucla: [35100, 31500, 30928],
hobart: [39600, 36000, 35356],
lindeman: [39600, 36000, 35756],
lord_howe: [41400, 39600, 38180, 37800, 36000],
melbourne: [39600, 36000, 34792],
perth: [32400, 28800, 27804],
sydney: [39600, 36292, 36000]
},
europe: {
amsterdam: [7200, 3600, 1050, 0],
andorra: [7200, 3600, 364, 0],
astrakhan: [18000, 14400, 11532, 10800],
athens: [10800, 7200, 5692, 3600],
belgrade: [7200, 4920, 3600],
berlin: [10800, 7200, 3600, 3208],
bratislava: [7200, 3600, 3464, 0],
brussels: [7200, 3600, 1050, 0],
bucharest: [10800, 7200, 6264],
budapest: [7200, 4580, 3600],
busingen: [7200, 3600, 2048, 1786],
chisinau: [14400, 10800, 7200, 6920, 6900, 6264, 3600],
copenhagen: [10800, 7200, 3600, 3208],
dublin: [3600, 2079, 0, -1521],
gibraltar: [7200, 3600, 0, -1284],
guernsey: [7200, 3600, 0, -75],
helsinki: [10800, 7200, 5989],
isle_of_man: [7200, 3600, 0, -75],
istanbul: [14400, 10800, 7200, 7016, 6952],
jersey: [7200, 3600, 0, -75],
kaliningrad: [14400, 10800, 7200, 4920, 3600],
kirov: [18000, 14400, 11928, 10800],
kyiv: [14400, 10800, 7324, 7200, 3600],
lisbon: [7200, 3600, 0, -2205],
ljubljana: [7200, 4920, 3600],
london: [7200, 3600, 0, -75],
luxembourg: [7200, 3600, 1050, 0],
madrid: [7200, 3600, 0, -884],
malta: [7200, 3600, 3484],
mariehamn: [10800, 7200, 5989],
minsk: [14400, 10800, 7200, 6616, 6600, 3600],
monaco: [7200, 3600, 561, 0],
moscow: [18000, 16279, 14400, 12679, 10800, 9079, 9017, 7200],
oslo: [10800, 7200, 3600, 3208],
paris: [7200, 3600, 561, 0],
podgorica: [7200, 4920, 3600],
prague: [7200, 3600, 3464, 0],
riga: [14400, 10800, 9394, 7200, 5794, 3600],
rome: [7200, 3600, 2996],
samara: [18000, 14400, 12020, 10800],
san_marino: [7200, 3600, 2996],
sarajevo: [7200, 4920, 3600],
saratov: [18000, 14400, 11058, 10800],
simferopol: [14400, 10800, 8184, 8160, 7200, 3600],
skopje: [7200, 4920, 3600],
sofia: [10800, 7200, 7016, 5596, 3600],
stockholm: [10800, 7200, 3600, 3208],
tallinn: [14400, 10800, 7200, 5940, 3600],
tirane: [7200, 4760, 3600],
ulyanovsk: [18000, 14400, 11616, 10800, 7200],
vaduz: [7200, 3600, 2048, 1786],
vatican: [7200, 3600, 2996],
vienna: [7200, 3921, 3600],
vilnius: [14400, 10800, 7200, 6076, 5736, 5040, 3600],
volgograd: [18000, 14400, 10800, 10660],
warsaw: [10800, 7200, 5040, 3600],
zagreb: [7200, 4920, 3600],
zurich: [7200, 3600, 2048, 1786]
},
indian: {
antananarivo: [10800, 9900, 9000, 8836],
chagos: [21600, 18000, 17380],
christmas: [25200, 24124],
cocos: [32400, 23400, 23087],
comoro: [10800, 9900, 9000, 8836],
kerguelen: [18000, 17640],
mahe: [14400, 13272],
maldives: [18000, 17640],
mauritius: [18000, 14400, 13800],
mayotte: [10800, 9900, 9000, 8836],
reunion: [14400, 13272]
},
pacific: {
apia: [50400, 46800, 45184, -36000, -39600, -41216, -41400],
auckland: [46800, 45000, 43200, 41944, 41400],
bougainville: [39600, 37336, 36000, 35312, 32400],
chatham: [49500, 45900, 44100, 44028],
chuuk: [36000, 35320, 35312],
easter: [-18000, -21600, -25200, -26248],
efate: [43200, 40396, 39600],
fakaofo: [46800, -39600, -41096],
fiji: [46800, 43200, 42944],
funafuti: [43200, 41524],
galapagos: [-18000, -21504, -21600],
gambier: [-32388, -32400],
guadalcanal: [39600, 38388],
guam: [39600, 36000, 34740, 32400, -51660],
honolulu: [-34200, -36000, -37800, -37886],
kanton: [46800, 0, -39600, -43200],
kiritimati: [50400, -36000, -37760, -38400],
kosrae: [43200, 39600, 39116, 36000, 32400, -47284],
kwajalein: [43200, 40160, 39600, 36000, 32400, -43200],
majuro: [43200, 41524],
marquesas: [-33480, -34200],
midway: [45432, -39600, -40968],
nauru: [43200, 41400, 40060, 32400],
niue: [-39600, -40780, -40800],
norfolk: [45000, 43200, 41400, 40320, 40312, 39600],
noumea: [43200, 39948, 39600],
pago_pago: [45432, -39600, -40968],
palau: [32400, 32276, -54124],
pitcairn: [-28800, -30600, -31220],
pohnpei: [39600, 38388],
port_moresby: [36000, 35320, 35312],
rarotonga: [48056, -34200, -36000, -37800, -38344],
saipan: [39600, 36000, 34740, 32400, -51660],
tahiti: [-35896, -36000],
tarawa: [43200, 41524],
tongatapu: [50400, 46800, 44400, 44352],
wake: [43200, 41524],
wallis: [43200, 41524]
}
};
var timeZoneNames = {
'Acre Standard Time': 'ACT', 'Acre Summer Time': 'ACST', 'Afghanistan Time': 'AFT',
'Alaska Daylight Time': 'AKDT', 'Alaska Standard Time': 'AKST', 'Almaty Standard Time': 'ALMT',
'Almaty Summer Time': 'ALMST', 'Amazon Standard Time': 'AMT', 'Amazon Summer Time': 'AMST',
'Anadyr Standard Time': 'ANAT', 'Anadyr Summer Time': 'ANAST', 'Apia Daylight Time': 'WSDT',
'Apia Standard Time': 'WSST', 'Aqtau Standard Time': 'AQTT', 'Aqtau Summer Time': 'AQTST',
'Aqtobe Standard Time': 'AQTT', 'Aqtobe Summer Time': 'AQST', 'Arabian Daylight Time': 'ADT',
'Arabian Standard Time': 'AST', 'Argentina Standard Time': 'ART', 'Argentina Summer Time': 'ARST',
'Armenia Standard Time': 'AMT', 'Armenia Summer Time': 'AMST', 'Atlantic Daylight Time': 'ADT',
'Atlantic Standard Time': 'AST', 'Australian Central Daylight Time': 'ACDT', 'Australian Central Standard Time': 'ACST',
'Australian Central Western Daylight Time': 'ACWDT', 'Australian Central Western Standard Time': 'ACWST', 'Australian Eastern Daylight Time': 'AEDT',
'Australian Eastern Standard Time': 'AEST', 'Australian Western Daylight Time': 'AWDT', 'Australian Western Standard Time': 'AWST',
'Azerbaijan Standard Time': 'AZT', 'Azerbaijan Summer Time': 'AZST', 'Azores Standard Time': 'AZOT',
'Azores Summer Time': 'AZOST', 'Bangladesh Standard Time': 'BST', 'Bangladesh Summer Time': 'BDST',
'Bhutan Time': 'BTT', 'Bolivia Time': 'BOT', 'Brasilia Standard Time': 'BRT',
'Brasilia Summer Time': 'BRST', 'British Summer Time': 'BST', 'Brunei Darussalam Time': 'BNT',
'Cape Verde Standard Time': 'CVT', 'Casey Time': 'CAST', 'Central Africa Time': 'CAT',
'Central Daylight Time': 'CDT', 'Central European Standard Time': 'CET', 'Central European Summer Time': 'CEST',
'Central Indonesia Time': 'WITA', 'Central Standard Time': 'CST', 'Chamorro Standard Time': 'ChST',
'Chatham Daylight Time': 'CHADT', 'Chatham Standard Time': 'CHAST', 'Chile Standard Time': 'CLT',
'Chile Summer Time': 'CLST', 'China Daylight Time': 'CDT', 'China Standard Time': 'CST',
'Christmas Island Time': 'CXT', 'Chuuk Time': 'CHUT', 'Cocos Islands Time': 'CCT',
'Colombia Standard Time': 'COT', 'Colombia Summer Time': 'COST', 'Cook Islands Half Summer Time': 'CKHST',
'Cook Islands Standard Time': 'CKT', 'Coordinated Universal Time': 'UTC', 'Cuba Daylight Time': 'CDT',
'Cuba Standard Time': 'CST', 'Davis Time': 'DAVT', 'Dumont-dUrville Time': 'DDUT',
'East Africa Time': 'EAT', 'East Greenland Standard Time': 'EGT', 'East Greenland Summer Time': 'EGST',
'East Kazakhstan Time': 'ALMT', 'East Timor Time': 'TLT', 'Easter Island Standard Time': 'EAST',
'Easter Island Summer Time': 'EASST', 'Eastern Daylight Time': 'EDT', 'Eastern European Standard Time': 'EET',
'Eastern European Summer Time': 'EEST', 'Eastern Indonesia Time': 'WIT', 'Eastern Standard Time': 'EST',
'Ecuador Time': 'ECT', 'Falkland Islands Standard Time': 'FKST', 'Falkland Islands Summer Time': 'FKDT',
'Fernando de Noronha Standard Time': 'FNT', 'Fernando de Noronha Summer Time': 'FNST', 'Fiji Standard Time': 'FJT',
'Fiji Summer Time': 'FJST', 'French Guiana Time': 'GFT', 'French Southern & Antarctic Time': 'TFT',
'Further-eastern European Time': 'FET', 'Galapagos Time': 'GALT', 'Gambier Time': 'GAMT',
'Georgia Standard Time': 'GET', 'Georgia Summer Time': 'GEST', 'Gilbert Islands Time': 'GILT',
'Greenwich Mean Time': 'GMT', 'Guam Standard Time': 'ChST', 'Gulf Standard Time': 'GST',
'Guyana Time': 'GYT', 'Hawaii-Aleutian Daylight Time': 'HADT', 'Hawaii-Aleutian Standard Time': 'HAST',
'Hong Kong Standard Time': 'HKT', 'Hong Kong Summer Time': 'HKST', 'Hovd Standard Time': 'HOVT',
'Hovd Summer Time': 'HOVST', 'India Standard Time': 'IST', 'Indian Ocean Time': 'IOT',
'Indochina Time': 'ICT', 'Iran Daylight Time': 'IRDT', 'Iran Standard Time': 'IRST',
'Irish Standard Time': 'IST', 'Irkutsk Standard Time': 'IRKT', 'Irkutsk Summer Time': 'IRKST',
'Israel Daylight Time': 'IDT', 'Israel Standard Time': 'IST', 'Japan Standard Time': 'JST',
'Korean Daylight Time': 'KDT', 'Korean Standard Time': 'KST', 'Kosrae Time': 'KOST',
'Krasnoyarsk Standard Time': 'KRAT', 'Krasnoyarsk Summer Time': 'KRAST', 'Kyrgyzstan Time': 'KGT',
'Lanka Time': 'LKT', 'Line Islands Time': 'LINT', 'Lord Howe Daylight Time': 'LHDT',
'Lord Howe Standard Time': 'LHST', 'Macao Standard Time': 'CST', 'Macao Summer Time': 'CDT',
'Magadan Standard Time': 'MAGT', 'Magadan Summer Time': 'MAGST', 'Malaysia Time': 'MYT',
'Maldives Time': 'MVT', 'Marquesas Time': 'MART', 'Marshall Islands Time': 'MHT',
'Mauritius Standard Time': 'MUT', 'Mauritius Summer Time': 'MUST', 'Mawson Time': 'MAWT',
'Mexican Pacific Daylight Time': 'PDT', 'Mexican Pacific Standard Time': 'PST', 'Moscow Standard Time': 'MSK',
'Moscow Summer Time': 'MSD', 'Mountain Daylight Time': 'MDT', 'Mountain Standard Time': 'MST',
'Myanmar Time': 'MMT', 'Nauru Time': 'NRT', 'Nepal Time': 'NPT',
'New Caledonia Standard Time': 'NCT', 'New Caledonia Summer Time': 'NCST', 'New Zealand Daylight Time': 'NZDT',
'New Zealand Standard Time': 'NZST', 'Newfoundland Daylight Time': 'NDT', 'Newfoundland Standard Time': 'NST',
'Niue Time': 'NUT', 'Norfolk Island Daylight Time': 'NFDT', 'Norfolk Island Standard Time': 'NFT',
'North Mariana Islands Time': 'ChST', 'Novosibirsk Standard Time': 'NOVT', 'Novosibirsk Summer Time': 'NOVST',
'Omsk Standard Time': 'OMST', 'Omsk Summer Time': 'OMSST', 'Pacific Daylight Time': 'PDT',
'Pacific Standard Time': 'PST', 'Pakistan Standard Time': 'PKT', 'Pakistan Summer Time': 'PKST',
'Palau Time': 'PWT', 'Papua New Guinea Time': 'PGT', 'Paraguay Standard Time': 'PYT',
'Paraguay Summer Time': 'PYST', 'Peru Standard Time': 'PET', 'Peru Summer Time': 'PEST',
'Petropavlovsk-Kamchatski Standard Time': 'PETT', 'Petropavlovsk-Kamchatski Summer Time': 'PETST', 'Philippine Standard Time': 'PST',
'Philippine Summer Time': 'PHST', 'Phoenix Islands Time': 'PHOT', 'Pitcairn Time': 'PIT',
'Ponape Time': 'PONT', 'Pyongyang Time': 'KST', 'Qyzylorda Standard Time': 'QYZT',
'Qyzylorda Summer Time': 'QYZST', 'Rothera Time': 'ROOTT', 'Réunion Time': 'RET',
'Sakhalin Standard Time': 'SAKT', 'Sakhalin Summer Time': 'SAKST', 'Samara Standard Time': 'SAMT',
'Samara Summer Time': 'SAMST', 'Samoa Standard Time': 'SST', 'Seychelles Time': 'SCT',
'Singapore Standard Time': 'SGT', 'Solomon Islands Time': 'SBT', 'South Africa Standard Time': 'SAST',
'South Georgia Time': 'GST', 'St. Pierre & Miquelon Daylight Time': 'PMDT', 'St. Pierre & Miquelon Standard Time': 'PMST',
'Suriname Time': 'SRT', 'Syowa Time': 'SYOT', 'Tahiti Time': 'TAHT',
'Taipei Daylight Time': 'CDT', 'Taipei Standard Time': 'CST', 'Tajikistan Time': 'TJT',
'Tokelau Time': 'TKT', 'Tonga Standard Time': 'TOT', 'Tonga Summer Time': 'TOST',
'Turkmenistan Standard Time': 'TMT', 'Tuvalu Time': 'TVT', 'Ulaanbaatar Standard Time': 'ULAT',
'Ulaanbaatar Summer Time': 'ULAST', 'Uruguay Standard Time': 'UYT', 'Uruguay Summer Time': 'UYST',
'Uzbekistan Standard Time': 'UZT', 'Uzbekistan Summer Time': 'UZST', 'Vanuatu Standard Time': 'VUT',
'Vanuatu Summer Time': 'VUST', 'Venezuela Time': 'VET', 'Vladivostok Standard Time': 'VLAT',
'Vladivostok Summer Time': 'VLAST', 'Volgograd Standard Time': 'VOLT', 'Volgograd Summer Time': 'VOLST',
'Vostok Time': 'VOST', 'Wake Island Time': 'WAKT', 'Wallis & Futuna Time': 'WFT',
'West Africa Standard Time': 'WAT', 'West Africa Summer Time': 'WAST', 'West Greenland Standard Time': 'WGST',
'West Greenland Summer Time': 'WGST', 'West Kazakhstan Time': 'AQTT', 'Western Argentina Standard Time': 'ART',
'Western Argentina Summer Time': 'ARST', 'Western European Standard Time': 'WET', 'Western European Summer Time': 'WEST',
'Western Indonesia Time': 'WIB', 'Yakutsk Standard Time': 'YAKT', 'Yakutsk Summer Time': 'YAKST',
'Yekaterinburg Standard Time': 'YEKT', 'Yekaterinburg Summer Time': 'YEKST', 'Yukon Time': 'YT'
};
var options = {
hour12: false, weekday: 'short', year: 'numeric', month: 'numeric', day: 'numeric',
hour: 'numeric', minute: 'numeric', second: 'numeric', fractionalSecondDigits: 3,
timeZone: 'UTC'
};
var cache = {
utc: new Intl.DateTimeFormat('en-US', options)
};
var getDateTimeFormat = function (timeZone) {
if (timeZone) {
var tz = timeZone.toLowerCase();
if (!cache[tz]) {
options.timeZone = timeZone;
cache[tz] = new Intl.DateTimeFormat('en-US', options);
}
return cache[tz];
}
options.timeZone = undefined;
return new Intl.DateTimeFormat('en-US', options);
};
var formatToParts = function (dateTimeFormat, dateObjOrTime) {
var array = dateTimeFormat.formatToParts(dateObjOrTime),
values = {};
for (var i = 0, len = array.length; i < len; i++) {
var type = array[i].type,
value = array[i].value;
switch (type) {
case 'weekday':
values[type] = 'SunMonTueWedThuFriSat'.indexOf(value) / 3;
break;
case 'hour':
values[type] = value % 24;
break;
case 'year':
case 'month':
case 'day':
case 'minute':
case 'second':
case 'fractionalSecond':
values[type] = value | 0;
}
}
return values;
};
var getTimeFromParts = function (parts) {
return Date.UTC(
parts.year, parts.month - (parts.year < 100 ? 1900 * 12 + 1 : 1), parts.day,
parts.hour, parts.minute, parts.second, parts.fractionalSecond
);
};
var formatTZ = function (dateObj, arg, timeZone) {
var parts = formatToParts(getDateTimeFormat(timeZone), dateObj);
return date.format({
getFullYear: function () { return parts.year; },
getMonth: function () { return parts.month - 1; },
getDate: function () { return parts.day; },
getHours: function () { return parts.hour; },
getMinutes: function () { return parts.minute; },
getSeconds: function () { return parts.second; },
getMilliseconds: function () { return parts.fractionalSecond; },
getDay: function () { return parts.weekday; },
getTime: function () { return dateObj.getTime(); },
getTimezoneOffset: function () {
return (dateObj.getTime() - getTimeFromParts(parts)) / 60000 | 0;
},
getTimezoneName: function () { return timeZone || undefined; }
}, arg);
};
var parseTZ = function (arg1, arg2, timeZone) {
var pattern = typeof arg2 === 'string' ? date.compile(arg2) : arg2;
var time = typeof arg1 === 'string' ? date.parse(arg1, pattern, !!timeZone).getTime() : arg1;
var hasZ = function (array) {
for (var i = 1, len = array.length; i < len; i++) {
if (!array[i].indexOf('Z')) {
return true;
}
}
return false;
};
if (!timeZone || hasZ(pattern) || timeZone.toUpperCase() === 'UTC' || isNaN(time)) {
return new Date(time);
}
var getOffset = function (timeZoneName) {
var keys = (timeZoneName || '').toLowerCase().split('/');
var value = timeZones[keys[0]] || {};
for (var i = 1, len = keys.length; i < len; i++) {
value = value[keys[i]] || {};
}
return Array.isArray(value) ? value : [];
};
var utc = getDateTimeFormat('UTC');
var tz = getDateTimeFormat(timeZone);
var offset = getOffset(timeZone);
for (var i = 0; i < 2; i++) {
var targetString = utc.format(time - i * 24 * 60 * 60 * 1000);
for (var j = 0, len = offset.length; j < len; j++) {
if (tz.format(time - (offset[j] + i * 24 * 60 * 60) * 1000) === targetString) {
return new Date(time - offset[j] * 1000);
}
}
}
return new Date(NaN);
};
var transformTZ = function (dateString, arg1, arg2, timeZone) {
return formatTZ(date.parse(dateString, arg1), arg2, timeZone);
};
var normalizeDateParts = function (parts, adjustEOM) {
var d = new Date(Date.UTC(
parts.year, parts.month - (parts.year < 100 ? 1900 * 12 + 1 : 1), parts.day
));
if (adjustEOM && d.getUTCDate() < parts.day) {
d.setUTCDate(0);
}
parts.year = d.getUTCFullYear();
parts.month = d.getUTCMonth() + 1;
parts.day = d.getUTCDate();
return parts;
};
var addYearsTZ = function (dateObj, years, timeZone) {
return addMonthsTZ(dateObj, years * 12, timeZone);
};
var addMonthsTZ = function (dateObj, months, timeZone) {
var parts = formatToParts(getDateTimeFormat(timeZone), dateObj);
parts.month += months;
var dateObj2 = parseTZ(getTimeFromParts(normalizeDateParts(parts, true)), [], timeZone);
return isNaN(dateObj2.getTime()) ? date.addMonths(dateObj, months, true) : dateObj2;
};
var addDaysTZ = function (dateObj, days, timeZone) {
var parts = formatToParts(getDateTimeFormat(timeZone), dateObj);
parts.day += days;
var dateObj2 = parseTZ(getTimeFromParts(normalizeDateParts(parts, false)), [], timeZone);
return isNaN(dateObj2.getTime()) ? date.addDays(dateObj, days, true) : dateObj2;
};
var name = 'timezone';
var getName = function (d) {
var parts = new Intl.DateTimeFormat('en-US', {
timeZone: typeof d.getTimezoneName === 'function' ? d.getTimezoneName() : undefined,
timeZoneName: 'long'
}).formatToParts(d.getTime());
for (var i = 0, len = parts.length; i < len; i++) {
if (parts[i].type === 'timeZoneName') {
return parts[i].value;
}
}
return '';
};
proto.plugin(name, {
formatter: {
z: function (d) {
var name = getName(d);
return timeZoneNames[name] || '';
},
zz: function (d) {
var name = getName(d);
return /^GMT[+-].+$/.test(name) ? '' : name;
}
},
extender: {
formatTZ: formatTZ,
parseTZ: parseTZ,
transformTZ: transformTZ,
addYearsTZ: addYearsTZ,
addMonthsTZ: addMonthsTZ,
addDaysTZ: addDaysTZ
}
});
return name;
};
return plugin;
}));